sfdx-hardis 5.14.3 → 5.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/lib/commands/hardis/doc/flow2markdown.js +6 -2
- package/lib/commands/hardis/doc/flow2markdown.js.map +1 -1
- package/lib/commands/hardis/doc/mkdocs-to-salesforce.js +11 -3
- package/lib/commands/hardis/doc/mkdocs-to-salesforce.js.map +1 -1
- package/lib/commands/hardis/doc/project2markdown.js +7 -13
- package/lib/commands/hardis/doc/project2markdown.js.map +1 -1
- package/lib/common/aiProvider/aiProviderRoot.d.ts +2 -1
- package/lib/common/aiProvider/aiProviderRoot.js +2 -2
- package/lib/common/aiProvider/aiProviderRoot.js.map +1 -1
- package/lib/common/aiProvider/index.d.ts +4 -1
- package/lib/common/aiProvider/index.js +30 -2
- package/lib/common/aiProvider/index.js.map +1 -1
- package/lib/common/aiProvider/openaiProvider.d.ts +2 -1
- package/lib/common/aiProvider/openaiProvider.js +15 -4
- package/lib/common/aiProvider/openaiProvider.js.map +1 -1
- package/lib/common/aiProvider/promptTemplates.d.ts +26 -0
- package/lib/common/aiProvider/promptTemplates.js +108 -0
- package/lib/common/aiProvider/promptTemplates.js.map +1 -0
- package/lib/common/utils/deployTipJson.js +4 -0
- package/lib/common/utils/deployTipJson.js.map +1 -1
- package/lib/common/utils/deployTips.js +6 -9
- package/lib/common/utils/deployTips.js.map +1 -1
- package/lib/common/utils/flowVisualiser/flowParser.js +1 -1
- package/lib/common/utils/flowVisualiser/flowParser.js.map +1 -1
- package/lib/common/utils/mermaidUtils.d.ts +1 -0
- package/lib/common/utils/mermaidUtils.js +58 -18
- package/lib/common/utils/mermaidUtils.js.map +1 -1
- package/lib/config/index.d.ts +2 -0
- package/lib/config/index.js +2 -0
- package/lib/config/index.js.map +1 -1
- package/lib/hooks/init/log.js +6 -2
- package/lib/hooks/init/log.js.map +1 -1
- package/oclif.lock +26 -21
- package/oclif.manifest.json +1820 -1820
- package/package.json +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,17 @@
|
|
|
4
4
|
|
|
5
5
|
Note: Can be used with `sfdx plugins:install sfdx-hardis@beta` and docker image `hardisgroupcom/sfdx-hardis@beta`
|
|
6
6
|
|
|
7
|
+
## [5.15.0] 2025-01-12
|
|
8
|
+
|
|
9
|
+
- Allow to call AI to describe flows in documentation
|
|
10
|
+
- Allow to call AI to describe differences between 2 flow versions in a pull request comment
|
|
11
|
+
- [Ai Provider](https://sfdx-hardis.cloudity.com/salesforce-ai-setup/) enhancements
|
|
12
|
+
- Change default model from gpt-4o to gpt-4o-mini
|
|
13
|
+
- Prompt templates factory, with capability to override default prompt with ENV variable
|
|
14
|
+
- Translate prompts in french
|
|
15
|
+
- Add dotenv to allow to define secrets variables in a local `.env` file (never commit it !)
|
|
16
|
+
- Add more ways to call python depending on the installation
|
|
17
|
+
|
|
7
18
|
## [5.14.3] 2025-01-10
|
|
8
19
|
|
|
9
20
|
- [hardis:project:deploy:smart](https://sfdx-hardis.cloudity.com/hardis/project/deploy/smart/) Fix crash when deployment is ok
|
|
@@ -8,11 +8,15 @@ import { WebSocketClient } from '../../../common/websocketClient.js';
|
|
|
8
8
|
import { isCI, uxLog } from '../../../common/utils/index.js';
|
|
9
9
|
import { MetadataUtils } from '../../../common/metadata-utils/index.js';
|
|
10
10
|
import { generateFlowMarkdownFile, generateHistoryDiffMarkdown, generateMarkdownFileWithMermaid } from '../../../common/utils/mermaidUtils.js';
|
|
11
|
+
import { CONSTANTS } from '../../../config/index.js';
|
|
11
12
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
12
13
|
const messages = Messages.loadMessages('sfdx-hardis', 'org');
|
|
13
14
|
export default class Flow2Markdown extends SfCommand {
|
|
14
15
|
static title = 'Flow to Markdown';
|
|
15
|
-
static description = `Generates a markdown documentation from a Flow file
|
|
16
|
+
static description = `Generates a markdown documentation from a Flow file
|
|
17
|
+
|
|
18
|
+
If [AI integration](${CONSTANTS.DOC_URL_ROOT}/salesforce-ai-setup/) is configured, documentation will contain a summary of the Flow.
|
|
19
|
+
`;
|
|
16
20
|
static examples = [
|
|
17
21
|
'$ sf hardis:doc:flow2markdown',
|
|
18
22
|
'$ sf hardis:doc:flow2markdown --inputfile force-app/main/default/flows/MyFlow.flow-meta.xml'
|
|
@@ -64,7 +68,7 @@ export default class Flow2Markdown extends SfCommand {
|
|
|
64
68
|
}
|
|
65
69
|
uxLog(this, c.grey(`Generating markdown for Flow ${this.inputFile}...`));
|
|
66
70
|
const flowXml = (await fs.readFile(this.inputFile, "utf8")).toString();
|
|
67
|
-
const genRes = await generateFlowMarkdownFile(this.inputFile, flowXml, this.outputFile, { collapsedDetails: false });
|
|
71
|
+
const genRes = await generateFlowMarkdownFile(this.inputFile, flowXml, this.outputFile, { collapsedDetails: false, describeWithAi: true });
|
|
68
72
|
if (!genRes) {
|
|
69
73
|
throw new Error("Error generating markdown file");
|
|
70
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow2markdown.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/flow2markdown.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"flow2markdown.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/flow2markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,7 +110,7 @@ More info on [Documentation section](${CONSTANTS.DOC_URL_ROOT}/salesforce-projec
|
|
|
110
110
|
async installMkDocs() {
|
|
111
111
|
uxLog(this, c.cyan("Managing mkdocs-material local installation..."));
|
|
112
112
|
let mkdocsLocalOk = false;
|
|
113
|
-
const installMkDocsRes = await execCommand("pip install mkdocs-material mdx_truly_sane_lists", this, { fail: false, output: true, debug: this.debugMode });
|
|
113
|
+
const installMkDocsRes = await execCommand("pip install mkdocs-material mdx_truly_sane_lists || python -m install mkdocs-material mdx_truly_sane_lists || py -m install mkdocs-material mdx_truly_sane_lists", this, { fail: false, output: true, debug: this.debugMode });
|
|
114
114
|
if (installMkDocsRes.status === 0) {
|
|
115
115
|
mkdocsLocalOk = true;
|
|
116
116
|
}
|
|
@@ -121,7 +121,7 @@ More info on [Documentation section](${CONSTANTS.DOC_URL_ROOT}/salesforce-projec
|
|
|
121
121
|
if (mkdocsLocalOk) {
|
|
122
122
|
// Generate MkDocs HTML pages with local MkDocs
|
|
123
123
|
uxLog(this, c.cyan("Generating HTML pages with mkdocs..."));
|
|
124
|
-
const mkdocsBuildRes = await execCommand("mkdocs build", this, { fail: false, output: true, debug: this.debugMode });
|
|
124
|
+
const mkdocsBuildRes = await execCommand("mkdocs build || python -m mkdocs build || py -m mkdocs build", this, { fail: false, output: true, debug: this.debugMode });
|
|
125
125
|
if (mkdocsBuildRes.status !== 0) {
|
|
126
126
|
throw new SfError('MkDocs build failed:\n' + mkdocsBuildRes.stderr + "\n" + mkdocsBuildRes.stdout);
|
|
127
127
|
}
|
|
@@ -223,12 +223,20 @@ More info on [Documentation section](${CONSTANTS.DOC_URL_ROOT}/salesforce-projec
|
|
|
223
223
|
}
|
|
224
224
|
if (deployRes.status !== 0) {
|
|
225
225
|
uxLog(this, c.red(`Deployment failed:\n${deployRes.stderr + "\n" + deployRes.stdout}`));
|
|
226
|
-
|
|
226
|
+
if ((deployRes.stderr + deployRes.stdout).includes("static resource cannot exceed")) {
|
|
227
|
+
uxLog(this, c.red(`Documentation is too big to be hosted in a Static Resource.`));
|
|
228
|
+
uxLog(this, c.yellow(`Cloudity can help you to host it somewhere else :)`));
|
|
229
|
+
uxLog(this, c.yellow(`If you are interested, contact us on ${c.green(c.bold(CONSTANTS.CONTACT_URL))}`));
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
uxLog(this, c.yellow(`You can manually deploy the Static Resource ${resName},the VisualForce page ${resName} and the custom tab ${resName} to your org
|
|
227
233
|
- Static Resource: ${mkDocsResourcePath} (If you upload using UI, zip the folder and make sure to have index.html at the zip root)
|
|
228
234
|
- VisualForce page: ${vfPageMetaFile}
|
|
229
235
|
- Custom tab: ${tabMetaFile}
|
|
230
236
|
- Permission Set: ${permissionSetFile}
|
|
237
|
+
You can also run the documentation locally using "mkdocs serve || python -m mkdocs serve || py -m mkdocs serve"
|
|
231
238
|
`));
|
|
239
|
+
}
|
|
232
240
|
}
|
|
233
241
|
else {
|
|
234
242
|
uxLog(this, c.green(`SFDX Project documentation uploaded to salesforce and available in Custom Tab ${resName}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mkdocs-to-salesforce.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/mkdocs-to-salesforce.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"mkdocs-to-salesforce.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/mkdocs-to-salesforce.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,11 +26,11 @@ export default class Project2Markdown extends SfCommand {
|
|
|
26
26
|
To read the documentation as HTML pages, run the following code (you need [**Python**](https://www.python.org/downloads/) on your computer)
|
|
27
27
|
|
|
28
28
|
\`\`\`python
|
|
29
|
-
pip install mkdocs-material mdx_truly_sane_lists
|
|
30
|
-
mkdocs serve
|
|
29
|
+
pip install mkdocs-material mdx_truly_sane_lists || python -m pip install mkdocs-material mdx_truly_sane_lists || py -m pip install mkdocs-material mdx_truly_sane_lists
|
|
30
|
+
mkdocs serve || python -m mkdocs serve || py -m mkdocs serve
|
|
31
31
|
\`\`\`
|
|
32
32
|
|
|
33
|
-
To just generate HTML pages that you can host anywhere, run \`mkdocs build\`
|
|
33
|
+
To just generate HTML pages that you can host anywhere, run \`mkdocs build || python -m mkdocs build || py -m mkdocs build\`
|
|
34
34
|
`;
|
|
35
35
|
static description = `Generates a markdown documentation from a SFDX project
|
|
36
36
|
|
|
@@ -69,6 +69,8 @@ If it is a sfdx-hardis CI/CD project, a diagram of the branches and orgs strateg
|
|
|
69
69
|
|
|
70
70
|

|
|
71
71
|
|
|
72
|
+
If [AI integration](${CONSTANTS.DOC_URL_ROOT}/salesforce-ai-setup/) is configured, documentation will contain a summary of the Flow.
|
|
73
|
+
|
|
72
74
|
If you have a complex strategy, you might need to input property **mergeTargets** in branch-scoped sfdx-hardis.yml file to have a correct diagram.
|
|
73
75
|
|
|
74
76
|
${this.htmlInstructions}
|
|
@@ -120,7 +122,7 @@ ${this.htmlInstructions}
|
|
|
120
122
|
this.debugMode = flags.debug || false;
|
|
121
123
|
await fs.ensureDir(this.outputMarkdownRoot);
|
|
122
124
|
const currentBranch = await getCurrentGitBranch();
|
|
123
|
-
this.footer = `_Documentation generated from branch ${currentBranch} with [sfdx-hardis](${CONSTANTS.DOC_URL_ROOT}) command [\`sf hardis:doc:project2markdown\`](https://sfdx-hardis.cloudity.com/hardis/doc/project2markdown/)_`;
|
|
125
|
+
this.footer = `_Documentation generated from branch ${currentBranch} with [sfdx-hardis](${CONSTANTS.DOC_URL_ROOT}) by [Cloudity](${CONSTANTS.WEBSITE_URL}) command [\`sf hardis:doc:project2markdown\`](https://sfdx-hardis.cloudity.com/hardis/doc/project2markdown/)_`;
|
|
124
126
|
if (fs.existsSync("config/.sfdx-hardis.yml")) {
|
|
125
127
|
this.sfdxHardisConfig = await getConfig("project");
|
|
126
128
|
// General sfdx-hardis config
|
|
@@ -247,7 +249,7 @@ ${Project2Markdown.htmlInstructions}
|
|
|
247
249
|
flowSkips.push(flowFile);
|
|
248
250
|
continue;
|
|
249
251
|
}
|
|
250
|
-
const genRes = await generateFlowMarkdownFile(flowFile, flowXml, outputFlowMdFile, { collapsedDetails: false });
|
|
252
|
+
const genRes = await generateFlowMarkdownFile(flowFile, flowXml, outputFlowMdFile, { collapsedDetails: false, describeWithAi: true });
|
|
251
253
|
if (!genRes) {
|
|
252
254
|
flowErrors.push(flowFile);
|
|
253
255
|
continue;
|
|
@@ -294,14 +296,6 @@ ${Project2Markdown.htmlInstructions}
|
|
|
294
296
|
await fs.writeFile(flowIndexFile, flowTableLinesForIndex.join("\n") + `\n${this.footer}\n`);
|
|
295
297
|
this.mkDocsNavNodes["Flows"] = flowsForMenu;
|
|
296
298
|
uxLog(this, c.green(`Successfully generated doc index for Flows at ${flowIndexFile}`));
|
|
297
|
-
const mkdocsNavHistoryNodes = {};
|
|
298
|
-
for (const flowName of Object.keys(flowsForMenu)) {
|
|
299
|
-
const flowHistoryFile = path.join(this.outputMarkdownRoot, flowsForMenu[flowName].replace(".md", "-history.md"));
|
|
300
|
-
if (fs.existsSync(flowHistoryFile)) {
|
|
301
|
-
mkdocsNavHistoryNodes[flowName] = flowsForMenu[flowName].replace(".md", "-history.md");
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
this.mkDocsNavNodes["Flows History"] = mkdocsNavHistoryNodes;
|
|
305
299
|
}
|
|
306
300
|
humanDisplay(flows) {
|
|
307
301
|
return flows.map(flow => path.basename(flow, ".flow-meta.xml")).join(", ");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project2markdown.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/project2markdown.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project2markdown.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/project2markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AiResponse } from "./index.js";
|
|
2
|
+
import { PromptTemplate } from "./promptTemplates.js";
|
|
2
3
|
export declare abstract class AiProviderRoot {
|
|
3
4
|
protected token: string;
|
|
4
5
|
getLabel(): string;
|
|
5
|
-
promptAi(prompt: string): Promise<AiResponse | null>;
|
|
6
|
+
promptAi(prompt: string, template?: PromptTemplate | null): Promise<AiResponse | null>;
|
|
6
7
|
getAiMaxCallsNumber(): number;
|
|
7
8
|
incrementAiCallsNumber(): void;
|
|
8
9
|
checkMaxAiCallsNumber(): boolean;
|
|
@@ -6,12 +6,12 @@ export class AiProviderRoot {
|
|
|
6
6
|
throw new SfError("getLabel should be implemented on this call");
|
|
7
7
|
}
|
|
8
8
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
9
|
-
async promptAi(prompt) {
|
|
9
|
+
async promptAi(prompt, template = null) {
|
|
10
10
|
throw new SfError("promptAi should be implemented on this call");
|
|
11
11
|
}
|
|
12
12
|
// Get user defined maximum number of calls during an sfdx-hardis command
|
|
13
13
|
getAiMaxCallsNumber() {
|
|
14
|
-
return parseInt(getEnvVar("AI_MAXIMUM_CALL_NUMBER") || "
|
|
14
|
+
return parseInt(getEnvVar("AI_MAXIMUM_CALL_NUMBER") || "10000");
|
|
15
15
|
}
|
|
16
16
|
// Increment number of api calls performed
|
|
17
17
|
incrementAiCallsNumber() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiProviderRoot.js","sourceRoot":"","sources":["../../../src/common/aiProvider/aiProviderRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"aiProviderRoot.js","sourceRoot":"","sources":["../../../src/common/aiProvider/aiProviderRoot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,MAAM,OAAgB,cAAc;IACxB,KAAK,CAAS;IAEjB,QAAQ;QACb,MAAM,IAAI,OAAO,CAAC,6CAA6C,CAAC,CAAC;IACnE,CAAC;IAED,6DAA6D;IACtD,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,WAAkC,IAAI;QAC1E,MAAM,IAAI,OAAO,CAAC,6CAA6C,CAAC,CAAC;IACnE,CAAC;IAED,yEAAyE;IACzE,mBAAmB;QACjB,OAAO,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC,IAAI,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,0CAA0C;IAC1C,sBAAsB;QACpB,UAAU,CAAC,aAAa,GAAG,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACjE,CAAC;IAED,6EAA6E;IAC7E,qBAAqB;QACnB,MAAM,QAAQ,GAAG,UAAU,CAAC,aAAa,IAAI,CAAC,CAAC;QAC/C,OAAO,QAAQ,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { AiProviderRoot } from "./aiProviderRoot.js";
|
|
2
|
+
import { PromptTemplate } from "./promptTemplates.js";
|
|
2
3
|
export declare abstract class AiProvider {
|
|
3
4
|
static isAiAvailable(): boolean;
|
|
5
|
+
static isAiAvailableWithUserPrompt(): Promise<boolean>;
|
|
4
6
|
static getInstance(): AiProviderRoot | null;
|
|
5
|
-
static promptAi(prompt: string): Promise<AiResponse | null>;
|
|
7
|
+
static promptAi(prompt: string, template?: PromptTemplate | null): Promise<AiResponse | null>;
|
|
8
|
+
static buildPrompt(template: PromptTemplate, variables: object): string;
|
|
6
9
|
}
|
|
7
10
|
export interface AiResponse {
|
|
8
11
|
success: boolean;
|
|
@@ -1,10 +1,35 @@
|
|
|
1
1
|
import { UtilsAi } from "./utils.js";
|
|
2
2
|
import { OpenAiProvider } from "./openaiProvider.js";
|
|
3
3
|
import { SfError } from "@salesforce/core";
|
|
4
|
+
import { buildPromptFromTemplate } from "./promptTemplates.js";
|
|
5
|
+
import { isCI } from "../utils/index.js";
|
|
6
|
+
import { prompts } from "../utils/prompts.js";
|
|
7
|
+
let IS_AI_AVAILABLE = null;
|
|
4
8
|
export class AiProvider {
|
|
5
9
|
static isAiAvailable() {
|
|
6
10
|
return this.getInstance() != null;
|
|
7
11
|
}
|
|
12
|
+
static async isAiAvailableWithUserPrompt() {
|
|
13
|
+
if (IS_AI_AVAILABLE !== null) {
|
|
14
|
+
return IS_AI_AVAILABLE;
|
|
15
|
+
}
|
|
16
|
+
if (this.isAiAvailable()) {
|
|
17
|
+
IS_AI_AVAILABLE = true;
|
|
18
|
+
return IS_AI_AVAILABLE;
|
|
19
|
+
}
|
|
20
|
+
if (!isCI) {
|
|
21
|
+
const promptRes = await prompts({
|
|
22
|
+
type: 'text',
|
|
23
|
+
name: 'token',
|
|
24
|
+
message: 'Input your OpenAi API token if you want to use it. Leave empty to skip.',
|
|
25
|
+
});
|
|
26
|
+
if (promptRes.token) {
|
|
27
|
+
process.env.OPENAI_API_KEY = promptRes.token;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
IS_AI_AVAILABLE = this.isAiAvailable();
|
|
31
|
+
return IS_AI_AVAILABLE;
|
|
32
|
+
}
|
|
8
33
|
static getInstance() {
|
|
9
34
|
// OpenAi
|
|
10
35
|
if (UtilsAi.isOpenAiAvailable()) {
|
|
@@ -12,12 +37,15 @@ export class AiProvider {
|
|
|
12
37
|
}
|
|
13
38
|
return null;
|
|
14
39
|
}
|
|
15
|
-
static async promptAi(prompt) {
|
|
40
|
+
static async promptAi(prompt, template = null) {
|
|
16
41
|
const aiInstance = this.getInstance();
|
|
17
42
|
if (!aiInstance) {
|
|
18
43
|
throw new SfError("aiInstance should be set");
|
|
19
44
|
}
|
|
20
|
-
return await aiInstance.promptAi(prompt);
|
|
45
|
+
return await aiInstance.promptAi(prompt, template);
|
|
46
|
+
}
|
|
47
|
+
static buildPrompt(template, variables) {
|
|
48
|
+
return buildPromptFromTemplate(template, variables);
|
|
21
49
|
}
|
|
22
50
|
}
|
|
23
51
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/aiProvider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,OAAgB,UAAU;IAC9B,MAAM,CAAC,aAAa;QAClB,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,SAAS;QACT,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,IAAI,cAAc,EAAE,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAc;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/aiProvider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAkB,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,IAAI,eAAe,GAAmB,IAAI,CAAC;AAE3C,MAAM,OAAgB,UAAU;IAC9B,MAAM,CAAC,aAAa;QAClB,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,2BAA2B;QACtC,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACzB,eAAe,GAAG,IAAI,CAAC;YACvB,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;gBAC9B,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,yEAAyE;aACnF,CAAC,CAAC;YACH,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,SAAS;QACT,IAAI,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAChC,OAAO,IAAI,cAAc,EAAE,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,WAAkC,IAAI;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,MAAM,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,QAAwB,EAAE,SAAiB;QAC5D,OAAO,uBAAuB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;CAEF"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { OpenAI } from "openai";
|
|
2
2
|
import { AiResponse } from "./index.js";
|
|
3
3
|
import { AiProviderRoot } from "./aiProviderRoot.js";
|
|
4
|
+
import { PromptTemplate } from "./promptTemplates.js";
|
|
4
5
|
export declare class OpenAiProvider extends AiProviderRoot {
|
|
5
6
|
protected openai: OpenAI;
|
|
6
7
|
constructor();
|
|
7
8
|
getLabel(): string;
|
|
8
|
-
promptAi(promptText: string): Promise<AiResponse | null>;
|
|
9
|
+
promptAi(promptText: string, template?: PromptTemplate | null): Promise<AiResponse | null>;
|
|
9
10
|
}
|
|
@@ -11,19 +11,30 @@ export class OpenAiProvider extends AiProviderRoot {
|
|
|
11
11
|
getLabel() {
|
|
12
12
|
return "OpenAi connector";
|
|
13
13
|
}
|
|
14
|
-
async promptAi(promptText) {
|
|
14
|
+
async promptAi(promptText, template = null) {
|
|
15
15
|
if (!this.checkMaxAiCallsNumber()) {
|
|
16
16
|
const maxCalls = this.getAiMaxCallsNumber();
|
|
17
|
-
uxLog(this, c.
|
|
17
|
+
uxLog(this, c.yellow(`[OpenAi] Already performed maximum ${maxCalls} calls. Increase it by defining AI_MAXIMUM_CALL_NUMBER env variable`));
|
|
18
18
|
return null;
|
|
19
19
|
}
|
|
20
|
-
const gptModel = process.env.OPENAI_MODEL || "gpt-4o";
|
|
21
|
-
|
|
20
|
+
const gptModel = process.env.OPENAI_MODEL || "gpt-4o-mini";
|
|
21
|
+
if (process.env?.DEBUG_PROMPTS === "true") {
|
|
22
|
+
uxLog(this, c.grey(`[OpenAi] Requesting the following prompt to ${gptModel}${template ? ' using template ' + template : ''}:\n${promptText}`));
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
uxLog(this, c.grey(`[OpenAi] Requesting prompt to ${gptModel}${template ? ' using template ' + template : ''} (define DEBUG_PROMPTS=true to see details)`));
|
|
26
|
+
}
|
|
22
27
|
this.incrementAiCallsNumber();
|
|
23
28
|
const completion = await this.openai.chat.completions.create({
|
|
24
29
|
messages: [{ role: "system", content: promptText }],
|
|
25
30
|
model: gptModel,
|
|
26
31
|
});
|
|
32
|
+
if (process.env?.DEBUG_PROMPTS === "true") {
|
|
33
|
+
uxLog(this, c.grey("[OpenAi] Received prompt response from " + gptModel + "\n" + JSON.stringify(completion, null, 2)));
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
uxLog(this, c.grey("[OpenAi] Received prompt response from " + gptModel));
|
|
37
|
+
}
|
|
27
38
|
const aiResponse = {
|
|
28
39
|
success: false,
|
|
29
40
|
model: completion.model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openaiProvider.js","sourceRoot":"","sources":["../../../src/common/aiProvider/openaiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"openaiProvider.js","sourceRoot":"","sources":["../../../src/common/aiProvider/openaiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,MAAM,OAAO,cAAe,SAAQ,cAAc;IACtC,MAAM,CAAS;IAEzB;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;IAC7B,CAAC;IAEM,QAAQ;QACb,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,UAAkB,EAAE,WAAkC,IAAI;QAC9E,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,sCAAsC,QAAQ,qEAAqE,CAAC,CAAC,CAAC;YAC3I,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,aAAa,CAAC;QAC3D,IAAI,OAAO,CAAC,GAAG,EAAE,aAAa,KAAK,MAAM,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,+CAA+C,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC,CAAC,CAAC;QACjJ,CAAC;aACI,CAAC;YACJ,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,iCAAiC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC,CAAC;QAC9J,CAAC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAC3D,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;YACnD,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,GAAG,EAAE,aAAa,KAAK,MAAM,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,yCAAyC,GAAG,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzH,CAAC;aACI,CAAC;YACJ,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,yCAAyC,GAAG,QAAQ,CAAC,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,UAAU,GAAe;YAC7B,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,UAAU,CAAC,KAAK;SACxB,CAAC;QACF,IAAI,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,UAAU,CAAC,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC;QACjF,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type PromptTemplate = "PROMPT_SOLVE_DEPLOYMENT_ERROR" | "PROMPT_DESCRIBE_FLOW" | "PROMPT_DESCRIBE_FLOW_DIFF";
|
|
2
|
+
export type PromptLanguage = "en" | "fr";
|
|
3
|
+
export declare function buildPromptFromTemplate(template: PromptTemplate, variables: object): string;
|
|
4
|
+
export declare const PROMPT_TEMPLATES: {
|
|
5
|
+
PROMPT_SOLVE_DEPLOYMENT_ERROR: {
|
|
6
|
+
variables: string[];
|
|
7
|
+
text: {
|
|
8
|
+
en: string;
|
|
9
|
+
fr: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
PROMPT_DESCRIBE_FLOW: {
|
|
13
|
+
variables: string[];
|
|
14
|
+
text: {
|
|
15
|
+
en: string;
|
|
16
|
+
fr: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
PROMPT_DESCRIBE_FLOW_DIFF: {
|
|
20
|
+
variables: string[];
|
|
21
|
+
text: {
|
|
22
|
+
en: string;
|
|
23
|
+
fr: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { uxLog } from "../utils/index.js";
|
|
2
|
+
import c from "chalk";
|
|
3
|
+
export function buildPromptFromTemplate(template, variables) {
|
|
4
|
+
// Get matching prompt
|
|
5
|
+
const templateData = getPromptTemplate(template);
|
|
6
|
+
// Check for missing input variables
|
|
7
|
+
const missingVariables = templateData.variables.filter((variable) => !variables[variable]);
|
|
8
|
+
if (missingVariables.length > 0) {
|
|
9
|
+
throw new Error(`Missing variables for prompt template ${template}: ${missingVariables.join(", ")}`);
|
|
10
|
+
}
|
|
11
|
+
// Get prompt language and check if it is an allowed one
|
|
12
|
+
let promptsLanguage = process.env.PROMPTS_LANGUAGE || "en";
|
|
13
|
+
if (!["en", "fr"].includes(promptsLanguage)) {
|
|
14
|
+
uxLog(this, c.yellow(`Unknown prompt language ${promptsLanguage}: Switch back to en`));
|
|
15
|
+
promptsLanguage = "en";
|
|
16
|
+
}
|
|
17
|
+
// Build prompt
|
|
18
|
+
let prompt = process.env?.[template] || templateData.text[promptsLanguage];
|
|
19
|
+
for (const variable in variables) {
|
|
20
|
+
prompt = prompt.replace(`{{${variable}}}`, variables[variable]);
|
|
21
|
+
}
|
|
22
|
+
return prompt;
|
|
23
|
+
}
|
|
24
|
+
function getPromptTemplate(template) {
|
|
25
|
+
const templateData = PROMPT_TEMPLATES[template];
|
|
26
|
+
if (!templateData) {
|
|
27
|
+
throw new Error(`Unknown prompt template: ${template}`);
|
|
28
|
+
}
|
|
29
|
+
return templateData;
|
|
30
|
+
}
|
|
31
|
+
export const PROMPT_TEMPLATES = {
|
|
32
|
+
"PROMPT_SOLVE_DEPLOYMENT_ERROR": {
|
|
33
|
+
variables: ["ERROR"],
|
|
34
|
+
text: {
|
|
35
|
+
"en": `You are a Salesforce release manager using Salesforce CLI commands to perform deployments
|
|
36
|
+
How to solve the following Salesforce deployment error ?
|
|
37
|
+
- Please answer using sfdx source format, not metadata format.
|
|
38
|
+
- Please provide XML example if applicable.
|
|
39
|
+
- Please skip the part of the response about how to retrieve or deploy the changes with Salesforce CLI
|
|
40
|
+
The error is:
|
|
41
|
+
{{ERROR}}
|
|
42
|
+
`,
|
|
43
|
+
"fr": `Vous êtes un release manager Salesforce qui utilise les commands Salesforce CLI pour effectuer des déploiements
|
|
44
|
+
Comment résoudre l'erreur de déploiement Salesforce suivante ?
|
|
45
|
+
- Veuillez répondre en utilisant le format source de sfdx, pas le format metadata.
|
|
46
|
+
- Veuillez fournir un exemple XML si applicable.
|
|
47
|
+
- Veuillez sauter la partie de la réponse sur comment récupérer ou déployer les changements avec Salesforce CLI
|
|
48
|
+
L'erreur est :
|
|
49
|
+
{{ERROR}}
|
|
50
|
+
`
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
"PROMPT_DESCRIBE_FLOW": {
|
|
54
|
+
variables: ["FLOW_XML"],
|
|
55
|
+
text: {
|
|
56
|
+
"en": `You are a business analyst working on a Salesforce project.
|
|
57
|
+
Please describe the following flow using plain English that can be understood by a business user.
|
|
58
|
+
Please respond with markdown format, that can be embedded in a level 2 header (##).
|
|
59
|
+
Add a new line before starting a bullet list so mkdocs-material displays it correctly, including for sub-bullets.
|
|
60
|
+
Caution: If the XML contains secret tokens or password, please replace them with a placeholder.
|
|
61
|
+
The flow XML is:
|
|
62
|
+
{{FLOW_XML}}`,
|
|
63
|
+
"fr": `Vous êtes un analyste métier travaillant sur un projet Salesforce.
|
|
64
|
+
Veuillez décrire le flux suivant en utilisant un langage simple qui peut être compris par un utilisateur métier.
|
|
65
|
+
Veuillez répondre avec le format markdown, qui peut être intégré dans un en-tête de niveau 2 (##)
|
|
66
|
+
Ajoutez une nouvelle ligne avant de commencer une liste à puces pour que mkdocs-material l'affiche correctement, y compris pour les sous-puces.
|
|
67
|
+
Attention : Si le XML contient des jetons secrets ou des mots de passe, veuillez les remplacer par un espace réservé.
|
|
68
|
+
Le XML du flux est :
|
|
69
|
+
{{FLOW_XML}}`
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"PROMPT_DESCRIBE_FLOW_DIFF": {
|
|
73
|
+
variables: ["FLOW_XML_NEW", "FLOW_XML_PREVIOUS"],
|
|
74
|
+
text: {
|
|
75
|
+
"en": `You are a business analyst working on a Salesforce project.
|
|
76
|
+
Please describe the differences between new version of the flow and previous version of the flow, using plain English that can be understood by a business user.
|
|
77
|
+
Do NOT include in the response:
|
|
78
|
+
- Elements related to location attributes (locationX and locationY) or positions.
|
|
79
|
+
- Elements that have not changed
|
|
80
|
+
Please respond with markdown format, that can be embedded in a level 2 header (##).
|
|
81
|
+
Add a new line before starting a bullet list so mkdocs-material displays it correctly, including for sub-bullets.
|
|
82
|
+
Caution: If the XML contains secret tokens or password, please replace them with a placeholder.
|
|
83
|
+
Please DO NOT refer to locationX, locationY or positions of the XML nodes.
|
|
84
|
+
The new version flow XML is:
|
|
85
|
+
{{FLOW_XML_NEW}}
|
|
86
|
+
|
|
87
|
+
The previous version flow XML is:
|
|
88
|
+
{{FLOW_XML_PREVIOUS}}
|
|
89
|
+
`,
|
|
90
|
+
"fr": `Vous êtes un analyste métier travaillant sur un projet Salesforce.
|
|
91
|
+
Veuillez décrire les différences entre la nouvelle version du Flow et la version précédente du Flow, en utilisant un langage simple qui peut être compris par un utilisateur métier.
|
|
92
|
+
Ne PAS inclure dans la réponse :
|
|
93
|
+
- Les éléments liés aux attributs de localisation (locationX et locationY).
|
|
94
|
+
- Les éléments qui n'ont pas changé
|
|
95
|
+
Veuillez répondre avec le format markdown, qui peut être intégré dans un en-tête de niveau 2 (##)
|
|
96
|
+
Ajoutez une nouvelle ligne avant de commencer une liste à puces pour que mkdocs-material l'affiche correctement, y compris pour les sous-puces.
|
|
97
|
+
Attention : Si le XML contient des jetons secrets ou des mots de passe, veuillez les remplacer par un espace réservé.
|
|
98
|
+
Veuillez NE PAS faire référence aux localisations (locationX, locationY or positions) des nœuds XML.
|
|
99
|
+
Le XML de la nouvelle version du Flow est:
|
|
100
|
+
{{FLOW_XML_CURRENT}}
|
|
101
|
+
|
|
102
|
+
Le XML de la précédente version du Flow est:
|
|
103
|
+
{{FLOW_XML_PREVIOUS}}
|
|
104
|
+
`
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
//# sourceMappingURL=promptTemplates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promptTemplates.js","sourceRoot":"","sources":["../../../src/common/aiProvider/promptTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,CAAC,MAAM,OAAO,CAAC;AAUtB,MAAM,UAAU,uBAAuB,CAAC,QAAwB,EAAE,SAAiB;IACjF,sBAAsB;IACtB,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACjD,oCAAoC;IACpC,MAAM,gBAAgB,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3F,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,yCAAyC,QAAQ,KAAK,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,wDAAwD;IACxD,IAAI,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC;IAC3D,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,2BAA2B,eAAe,qBAAqB,CAAC,CAAC,CAAC;QACvF,eAAe,GAAG,IAAI,CAAC;IACzB,CAAC;IACD,eAAe;IACf,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3E,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAwB;IACjD,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,+BAA+B,EAAE;QAC/B,SAAS,EAAE,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE;YACJ,IAAI,EAAE;;;;;;;CAOX;YACK,IAAI,EAAE;;;;;;;CAOX;SACI;KACF;IACD,sBAAsB,EAAE;QACtB,SAAS,EAAE,CAAC,UAAU,CAAC;QACvB,IAAI,EAAE;YACJ,IAAI,EAAE;;;;;;aAMC;YACP,IAAI,EAAE;;;;;;aAMC;SACR;KACF;IACD,2BAA2B,EAAE;QAC3B,SAAS,EAAE,CAAC,cAAc,EAAE,mBAAmB,CAAC;QAChD,IAAI,EAAE;YACJ,IAAI,EAAE;;;;;;;;;;;;;;CAcX;YACK,IAAI,EAAE;;;;;;;;;;;;;;CAcX;SACI;KACF;CACF,CAAA"}
|