Skip to content

import tags and functions from lucee #1700

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions data/en/aigetmetadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/AIGetMetaData.html",
"minimum_version": ""
}},
"name": "AIGetMetaData",
"description": "Retrieves metadata about a configured AI endpoint. \nReturns information about the endpoint's configuration, \nand optionally detailed information about available models and associated files.",
"syntax": "AIGetMetaData( name )",
"returns": "struct",
"type": "function",
"params": [
{
"name": "name",
"description": "The name of the AI endpoint to get metadata for. Can be either:\n\n1. A direct endpoint name as configured in the Lucee Administrator\n2. A default reference (e.g., \"default:exception\") which will resolve to the configured default endpoint for that category\n3. A AI session object from which to retrieve and analyze AI endpoint metadata",
"aliases": "aiName,nameAI,session",
"type": "any",
"required": true
},
{
"name": "detailed",
"description": "When true, includes additional detailed information:\n\n- Models: List of available models with their names, labels, descriptions, and custom settings\n- Files: For file-capable engines, lists associated files with their IDs, purposes, sizes, creation dates, and status information",
"default": "false",
"type": "boolean",
"required": false
}
]
}
18 changes: 18 additions & 0 deletions data/en/aihas.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/AIHas.html",
"minimum_version": ""
}},
"name": "AIHas",
"description": "Checks whether a specific AI endpoint is configured and available for use.",
"syntax": "AIHas( name )",
"returns": "boolean",
"type": "function",
"params": [{
"name": "name",
"description": "The name of the AI endpoint to check. Can be either:\n\n1. A direct endpoint name as configured in the Lucee Administrator\n2. A default reference (e.g., \"default:exception\") which will check if a default endpoint is configured for that category",
"aliases": "aiName,nameAI",
"type": "string",
"required": true
}]
}
12 changes: 12 additions & 0 deletions data/en/applicationpathcacheclear.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/ApplicationPathCacheClear.html",
"minimum_version": "5.3"
}},
"name": "ApplicationPathCacheClear",
"description": "flush the application.[cfc|cfm] path cache",
"syntax": "ApplicationPathCacheClear()",
"returns": "void",
"type": "function",
"params": []
}
25 changes: 25 additions & 0 deletions data/en/arrayremoveduplicates.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/ArrayRemoveDuplicates.html",
"minimum_version": "6.0"
}},
"name": "ArrayRemoveDuplicates",
"description": "Removes duplicate values from array.",
"syntax": "ArrayRemoveDuplicates( array )",
"returns": "array",
"type": "function",
"params": [
{
"name": "array",
"description": "A array to Removes duplicate",
"type": "array",
"required": true
},
{
"name": "ignoreCase",
"description": "if set to true, the duplicate value will not be case sensitive",
"type": "boolean",
"required": false
}
]
}
18 changes: 18 additions & 0 deletions data/en/componentlistpackage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/ComponentListPackage.html",
"minimum_version": ""
}},
"name": "ComponentListPackage",
"description": "List all components in a certain package, throws an application exception if package does not exist.",
"syntax": "ComponentListPackage( package )",
"returns": "array",
"type": "function",
"params": [{
"name": "package",
"description": "name of the package to list",
"aliases": "packageName,name",
"type": "string",
"required": true
}]
}
46 changes: 46 additions & 0 deletions data/en/configtranslate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/ConfigTranslate.html",
"minimum_version": "6.0"
}},
"name": "ConfigTranslate",
"description": "translate an old Lucee XML configuration to the new CFConfig.json configuration",
"syntax": "ConfigTranslate( source )",
"returns": "struct",
"type": "function",
"params": [
{
"name": "source",
"description": "Path to the Lucee XML file (lucee-server.xml or lucee-web.xml.cfm) file or the data itself as a String.",
"aliases": "data,input",
"type": "string",
"required": true
},
{
"name": "target",
"description": "Path to the Lucee XML file (lucee-server.xml or lucee-web.xml.cfm) file or the data itself as a String.",
"aliases": "output",
"type": "string",
"required": false
},
{
"name": "type",
"description": "Config Context to manipulate, server or web context.",
"default": "server",
"type": "string",
"required": false
},
{
"name": "mode",
"description": "Only used when type is set to [server], should be the resulting json set for single or multi mode.",
"type": "string",
"required": false
},
{
"name": "charset",
"description": "charset to use to read the XML file, if not defined, Lucee will use the default resource charset.",
"type": "string",
"required": false
}
]
}
42 changes: 42 additions & 0 deletions data/en/createaisession.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/CreateAISession.html",
"minimum_version": ""
}},
"name": "CreateAISession",
"description": "Creates a new AI session for interaction with Large Language Models (LLMs). \nThe session maintains conversation history and context between interactions. \nEach session can be configured with different parameters to optimize for specific use cases like code analysis, content generation, or data processing.\nCommon usage patterns:\n- Exception analysis and debugging assistance\n- Code documentation generation\n- Query optimization suggestions\n- Security review assistance\n- Performance optimization recommendations\nThe session persists until explicitly terminated or the application restarts.",
"syntax": "CreateAISession( name )",
"returns": "object",
"type": "function",
"params": [
{
"name": "name",
"description": "Specifies which AI endpoint configuration to use. Can be provided in two formats:\n\n1. Direct endpoint name:\n\nThe name of an endpoint as defined in the Lucee Administrator (similar to how datasource names work)\n\n2. Default reference:\n\nUsing the format \"default:category\" to use the endpoint configured as the default for that specific category in the Lucee Administrator.\n\nCurrently supported default categories:\n\n- exception: For exception analysis\n- documentation: For documentation tasks\n\nThe endpoint configurations and their default category assignments are managed in the Lucee Administrator.",
"aliases": "aiName,nameAI",
"type": "string",
"required": true
},
{
"name": "systemMessage",
"description": "Initial instruction set that defines the AI's behavior and expertise for this session. This message sets the context and rules for all subsequent interactions.\n\nBest practices:\n\n- Be specific about the AI's role and expertise\n- Define output format requirements clearly\n- Include any necessary constraints or rules\n- Specify error handling preferences\n- Define response structure expectations\n\nThe system message persists throughout the session and influences all responses.",
"aliases": "initalMesssage,message",
"type": "string",
"required": false
},
{
"name": "limit",
"description": "Maximum number of question-answer pairs to keep in the conversation history. Once reached, older messages will be removed.\n\nConsider:\n\n- Higher limits provide more context but consume more memory\n- Lower limits are more memory efficient but may lose important context\n- For complex analysis tasks, consider limits of 10-20\n- For simple Q&A, limits of 5-10 may suffice",
"default": "50",
"aliases": "conversationHistoryLimit",
"type": "numeric",
"required": false
},
{
"name": "temperature",
"description": "Controls response randomness (0.0 to 1.0). Lower values make responses more focused and deterministic, higher values make them more creative and varied.\n\nRecommended settings:\n\n- 0.0-0.3: Technical analysis, debugging, code review\n- 0.3-0.5: Documentation generation, error explanations\n- 0.5-0.7: General purpose interactions\n- 0.7-1.0: Creative content generation\n\nFor exception analysis and debugging, lower temperatures (0.2-0.3) are recommended for more consistent and precise responses.",
"default": "0.7",
"type": "numeric",
"required": false
}
]
}
34 changes: 34 additions & 0 deletions data/en/createulid.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/createULID.html",
"minimum_version": "6.0"
}},
"name": "createULID",
"description": "Generates a ULID (Universally Unique Lexicographically Sortable Identifier)",
"syntax": "createULID()",
"returns": "string",
"type": "function",
"params": [
{
"name": "type",
"description": "Specifies the generation mode of the ULID. If not defined, a standard ULID is generated.\n\n- `monotonic` ensures ULIDs increase monotonically, suitable for ensuring order in rapid generation scenarios. \n- `hash` mode generates a ULID based on hashing the provided inputs, useful for creating deterministic identifiers.",
"default": "",
"type": "string",
"required": false
},
{
"name": "input1",
"description": "Used in conjunction with the `hash` type, this numeric input contributes to the generation of a deterministic ULID by influencing its random component.\n\nonly used for hash",
"default": "",
"type": "number",
"required": false
},
{
"name": "input2",
"description": "Similar to `input1`, this string input is utilized only in the `hash` mode to further seed the ULID's random component, enabling the creation of a deterministic ULID based on the hash of the inputs.",
"default": "",
"type": "string",
"required": false
}
]
}
25 changes: 25 additions & 0 deletions data/en/debugadd.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/debugAdd.html",
"minimum_version": ""
}},
"name": "debugAdd",
"description": "Adding data to debug output.",
"syntax": "debugAdd( category, data )",
"returns": "void",
"type": "function",
"params": [
{
"name": "category",
"description": "category name for the data passed in.",
"type": "string",
"required": true
},
{
"name": "data",
"description": "struct containing data to add to debug output.",
"type": "struct",
"required": true
}
]
}
18 changes: 18 additions & 0 deletions data/en/directoryinfo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/DirectoryInfo.html",
"minimum_version": "6.0"
}},
"name": "DirectoryInfo",
"description": "returns detailed info about the given directory.",
"syntax": "DirectoryInfo( source )",
"returns": "struct",
"type": "function",
"params": [{
"name": "source",
"description": "directory path",
"aliases": "Directory",
"type": "string",
"required": true
}]
}
91 changes: 91 additions & 0 deletions data/en/dump.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
{
"engines": {"lucee": {
"docs": "https://docs.lucee.org/reference/functions/dump.html",
"minimum_version": ""
}},
"name": "dump",
"description": "Outputs the elements, variables and values of most kinds of CFML objects. Useful for debugging. You can display the contents of simple and complex variables, objects, components, user-defined functions, and other elements.",
"syntax": "dump()",
"returns": "void",
"type": "function",
"params": [
{
"name": "var",
"description": "Variable to display.",
"type": "object",
"required": false
},
{
"name": "expand",
"description": "expands views",
"type": "boolean",
"required": false
},
{
"name": "format",
"description": "specify the output format of the dump, the following formats are supported:\n\n- simple: - a simple HTML output (no JavaScript or CSS)\n- text (default output=\"console\"): plain text output (no HTML)\n- html (default output=\"browser\"): regular output with HTML/CSS/JavaScript\n- classic: classic view with HTML/CSS/JavaScript",
"type": "string",
"required": false
},
{
"name": "hide",
"description": "hide column or keys.",
"type": "string",
"required": false
},
{
"name": "keys",
"description": "For a structure, number of keys to display.",
"type": "numeric",
"required": false
},
{
"name": "label",
"description": "header for the dump output.",
"type": "string",
"required": false
},
{
"name": "metainfo",
"description": "Includes information about the query in the cfdump results.",
"type": "boolean",
"required": false
},
{
"name": "output",
"description": "Where to send the results:\n\n- console: the result is written to the console (System.out).\n- browser (default): the result is written to the browser response stream.",
"type": "string",
"required": false
},
{
"name": "show",
"description": "show column or keys.",
"type": "string",
"required": false
},
{
"name": "showUDFs",
"description": "show UDFs in cfdump output.",
"type": "boolean",
"required": false
},
{
"name": "top",
"description": "The number of rows to display.",
"type": "numeric",
"required": false
},
{
"name": "abort",
"description": "stops further processing of the request.",
"type": "boolean",
"required": false
},
{
"name": "eval",
"description": "name of the variable to display, also used as label, when no label defined.",
"type": "string",
"required": false
}
]
}
Loading
Loading