snow-flow 8.41.19 → 8.41.22
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/CLAUDE.md +27 -20
- package/dist/agents/index.d.ts +6 -4
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +8 -11
- package/dist/agents/index.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +29 -3
- package/dist/cli.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script.js +20 -14
- package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/deployment/snow_create_artifact.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/deployment/snow_create_artifact.js +294 -21
- package/dist/mcp/servicenow-mcp-unified/tools/deployment/snow_create_artifact.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/integration/snow_detect_code_patterns.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/integration/snow_detect_code_patterns.js +13 -5
- package/dist/mcp/servicenow-mcp-unified/tools/integration/snow_detect_code_patterns.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/local-sync/snow_push_artifact.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/local-sync/snow_push_artifact.js +12 -5
- package/dist/mcp/servicenow-mcp-unified/tools/local-sync/snow_push_artifact.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_query_table.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_query_table.js +45 -3
- package/dist/mcp/servicenow-mcp-unified/tools/operations/snow_query_table.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_create_script_include.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_create_script_include.js +22 -13
- package/dist/mcp/servicenow-mcp-unified/tools/platform/snow_create_script_include.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/index.d.ts +1 -0
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/index.d.ts.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/index.js +4 -1
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/index.js.map +1 -1
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/snow_convert_es6_to_es5.d.ts +20 -0
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/snow_convert_es6_to_es5.d.ts.map +1 -0
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/snow_convert_es6_to_es5.js +283 -0
- package/dist/mcp/servicenow-mcp-unified/tools/utilities/snow_convert_es6_to_es5.js.map +1 -0
- package/dist/sdk/index.d.ts +4 -6
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +6 -8
- package/dist/sdk/index.js.map +1 -1
- package/dist/templates/claude-md-template.d.ts +2 -2
- package/dist/templates/claude-md-template.d.ts.map +1 -1
- package/dist/templates/claude-md-template.js +28 -25
- package/dist/templates/claude-md-template.js.map +1 -1
- package/package.json +1 -1
|
@@ -82,18 +82,13 @@ exports.toolDefinition = {
|
|
|
82
82
|
};
|
|
83
83
|
async function execute(args, context) {
|
|
84
84
|
const { script, description = 'Script execution via snow_execute_script', scope = 'global', timeout = 30000, validate_es5 = true, requireConfirmation = false, autoConfirm = false, allowDataModification = false, runAsUser } = args;
|
|
85
|
+
// ES5 validation (warning only, does not block execution)
|
|
86
|
+
const es5Warnings = [];
|
|
85
87
|
try {
|
|
86
|
-
// ES5 validation
|
|
87
88
|
if (validate_es5) {
|
|
88
89
|
const es5Validation = validateES5(script);
|
|
89
90
|
if (!es5Validation.valid) {
|
|
90
|
-
|
|
91
|
-
retryable: false,
|
|
92
|
-
details: {
|
|
93
|
-
violations: es5Validation.violations,
|
|
94
|
-
message: 'ServiceNow uses Rhino engine - ES6+ syntax will fail'
|
|
95
|
-
}
|
|
96
|
-
});
|
|
91
|
+
es5Warnings.push(`Script contains ES6+ syntax (${es5Validation.violations.map((v) => v.type).join(', ')}). This may cause runtime errors in ServiceNow's Rhino engine. Consider using ES5 syntax.`);
|
|
97
92
|
}
|
|
98
93
|
}
|
|
99
94
|
// Security analysis
|
|
@@ -128,7 +123,8 @@ async function execute(args, context) {
|
|
|
128
123
|
description,
|
|
129
124
|
timeout,
|
|
130
125
|
securityAnalysis,
|
|
131
|
-
autoConfirm
|
|
126
|
+
autoConfirm,
|
|
127
|
+
es5Warnings
|
|
132
128
|
}, context);
|
|
133
129
|
}
|
|
134
130
|
catch (error) {
|
|
@@ -138,7 +134,7 @@ async function execute(args, context) {
|
|
|
138
134
|
}
|
|
139
135
|
}
|
|
140
136
|
async function executeScript(params, context) {
|
|
141
|
-
const { script, description, timeout, securityAnalysis, autoConfirm } = params;
|
|
137
|
+
const { script, description, timeout, securityAnalysis, autoConfirm, es5Warnings } = params;
|
|
142
138
|
const client = await (0, auth_js_1.getAuthenticatedClient)(context);
|
|
143
139
|
// Create unique execution ID for tracking
|
|
144
140
|
const executionId = `exec_${Date.now()}_${Math.random().toString(36).substring(7)}`;
|
|
@@ -318,7 +314,7 @@ gs.info('${outputMarker}:DONE');
|
|
|
318
314
|
error: result.output.filter((o) => o.level === 'error').map((o) => o.message),
|
|
319
315
|
success: result.success
|
|
320
316
|
};
|
|
321
|
-
|
|
317
|
+
const successData = {
|
|
322
318
|
executed: true,
|
|
323
319
|
success: result.success,
|
|
324
320
|
result: result.result,
|
|
@@ -329,7 +325,12 @@ gs.info('${outputMarker}:DONE');
|
|
|
329
325
|
execution_id: executionId,
|
|
330
326
|
auto_confirmed: autoConfirm,
|
|
331
327
|
security_analysis: securityAnalysis
|
|
332
|
-
}
|
|
328
|
+
};
|
|
329
|
+
// Add ES5 warnings if any (non-blocking, informational only)
|
|
330
|
+
if (es5Warnings.length > 0) {
|
|
331
|
+
successData.warnings = es5Warnings;
|
|
332
|
+
}
|
|
333
|
+
return (0, error_handler_js_1.createSuccessResult)(successData, {
|
|
333
334
|
script_length: params.script.length,
|
|
334
335
|
method: 'sysauto_script_with_trigger',
|
|
335
336
|
description
|
|
@@ -337,7 +338,7 @@ gs.info('${outputMarker}:DONE');
|
|
|
337
338
|
}
|
|
338
339
|
else {
|
|
339
340
|
// Script was saved but execution couldn't be confirmed
|
|
340
|
-
|
|
341
|
+
const pendingData = {
|
|
341
342
|
executed: false,
|
|
342
343
|
execution_id: executionId,
|
|
343
344
|
scheduled_job_sys_id: jobSysId,
|
|
@@ -345,7 +346,12 @@ gs.info('${outputMarker}:DONE');
|
|
|
345
346
|
security_analysis: securityAnalysis,
|
|
346
347
|
message: 'Script was saved as scheduled job but automatic execution could not be confirmed. The sys_trigger may not have been created (permissions) or the scheduler has not yet picked it up.',
|
|
347
348
|
action_required: `Navigate to System Scheduler > Scheduled Jobs and run: ${jobName}`
|
|
348
|
-
}
|
|
349
|
+
};
|
|
350
|
+
// Add ES5 warnings if any (non-blocking, informational only)
|
|
351
|
+
if (es5Warnings.length > 0) {
|
|
352
|
+
pendingData.warnings = es5Warnings;
|
|
353
|
+
}
|
|
354
|
+
return (0, error_handler_js_1.createSuccessResult)(pendingData, {
|
|
349
355
|
script_length: params.script.length,
|
|
350
356
|
method: 'scheduled_job_pending',
|
|
351
357
|
description
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snow_execute_script.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snow_execute_script.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAsEH,0BAsEC;AAzID,kDAA8D;AAC9D,oEAAiH;AAEpG,QAAA,cAAc,GAAsB;IAC/C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,sLAAsL;IACnM,gDAAgD;IAChD,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,kBAAkB;IAC/B,SAAS,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,CAAC;IAC9E,UAAU,EAAE,UAAU;IACtB,SAAS,EAAE,MAAM;IAEjB,yBAAyB;IACzB,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;IACpC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wFAAwF;aACtG;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kFAAkF;aAChG;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,qBAAqB;gBAClC,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;aAC1B;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uDAAuD;gBACpE,OAAO,EAAE,KAAK;aACf;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,sCAAsC;gBACnD,OAAO,EAAE,IAAI;aACd;YACD,mBAAmB,EAAE;gBACnB,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,sEAAsE;gBACnF,OAAO,EAAE,KAAK;aACf;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,6FAA6F;gBAC1G,OAAO,EAAE,KAAK;aACf;YACD,qBAAqB,EAAE;gBACrB,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,kEAAkE;gBAC/E,OAAO,EAAE,KAAK;aACf;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gEAAgE;aAC9E;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACF,CAAC;AAEK,KAAK,UAAU,OAAO,CAAC,IAAS,EAAE,OAA0B;IACjE,MAAM,EACJ,MAAM,EACN,WAAW,GAAG,0CAA0C,EACxD,KAAK,GAAG,QAAQ,EAChB,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,IAAI,EACnB,mBAAmB,GAAG,KAAK,EAC3B,WAAW,GAAG,KAAK,EACnB,qBAAqB,GAAG,KAAK,EAC7B,SAAS,EACV,GAAG,IAAI,CAAC;IAET,0DAA0D;IAC1D,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,WAAW,CAAC,IAAI,CAAC,gCAAgC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;YAC3M,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAEvD,kCAAkC;QAClC,IAAI,mBAAmB,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,8BAA8B;YAC9B,MAAM,kBAAkB,GAAG,0BAA0B,CAAC;gBACpD,MAAM;gBACN,WAAW;gBACX,SAAS;gBACT,qBAAqB;gBACrB,gBAAgB;aACjB,CAAC,CAAC;YAEH,OAAO,IAAA,sCAAmB,EAAC;gBACzB,qBAAqB,EAAE,IAAI;gBAC3B,mBAAmB,EAAE,kBAAkB;gBACvC,iBAAiB,EAAE,MAAM;gBACzB,iBAAiB,EAAE;oBACjB,SAAS,EAAE,SAAS,IAAI,SAAS;oBACjC,qBAAqB;oBACrB,aAAa,EAAE,gBAAgB,CAAC,SAAS;iBAC1C;gBACD,SAAS,EAAE,uEAAuE;aACnF,EAAE;gBACD,eAAe,EAAE,sEAAsE;aACxF,CAAC,CAAC;QACL,CAAC;QAED,qBAAqB;QACrB,OAAO,MAAM,aAAa,CAAC;YACzB,MAAM;YACN,WAAW;YACX,OAAO;YACP,gBAAgB;YAChB,WAAW;YACX,WAAW;SACZ,EAAE,OAAO,CAAC,CAAC;IAEd,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,IAAA,oCAAiB,EACtB,KAAK,YAAY,gCAAa;YAC5B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,gCAAa,CAAC,4BAAS,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CACxF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,MAOC,EACD,OAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAE5F,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAsB,EAAC,OAAO,CAAC,CAAC;IAErD,0CAA0C;IAC1C,MAAM,WAAW,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACpF,MAAM,YAAY,GAAG,kBAAkB,WAAW,EAAE,CAAC;IAErD,gDAAgD;IAChD,MAAM,aAAa,GAAG;sCACc,WAAW;kBAC/B,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAwCxB,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;;;MAGpD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8BM,WAAW;;;;;;;;;;kBAUX,YAAY;WACnB,YAAY;CACtB,CAAC;IAEA,uDAAuD;IACvD,MAAM,OAAO,GAAG,oBAAoB,WAAW,EAAE,CAAC;IAElD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;QACxE,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,KAAK;KACnB,CAAC,CAAC;IAEH,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACzC,MAAM,IAAI,gCAAa,CACrB,4BAAS,CAAC,oBAAoB,EAC9B,uCAAuC,EACvC,EAAE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,CACjC,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAEnD,oDAAoD;IACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,qBAAqB;IACzE,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEpF,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;YAC9C,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,cAAc;YAC3B,YAAY,EAAE,CAAC,EAAG,WAAW;YAC7B,KAAK,EAAE,CAAC,EAAU,QAAQ;YAC1B,QAAQ,EAAE,gBAAgB;YAC1B,YAAY,EAAE,QAAQ;YACtB,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,oDAAoD;QACpD,wCAAwC;IAC1C,CAAC;IAED,qCAAqC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,MAAM,GAAQ,IAAI,CAAC;IACvB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE9C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;QAClE,QAAQ,EAAE,CAAC;QACX,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC;YACH,yCAAyC;YACzC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,+BAA+B,EAAE;gBACrE,MAAM,EAAE;oBACN,aAAa,EAAE,QAAQ,YAAY,EAAE;oBACrC,cAAc,EAAE,cAAc;oBAC9B,aAAa,EAAE,CAAC;iBACjB;aACF,CAAC,CAAC;YAEH,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;gBAC1C,IAAI,CAAC;oBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAEvD,oCAAoC;oBACpC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBACrD,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,MAAM,CAAC,MAAM,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACpF,CAAC;oBACD,MAAM;gBACR,CAAC;gBAAC,OAAO,QAAQ,EAAE,CAAC;oBAClB,mBAAmB;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,mBAAmB;QACrB,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACtB,wBAAwB;IAC1B,CAAC;IAED,oCAAoC;IACpC,IAAI,MAAM,EAAE,CAAC;QACX,2BAA2B;QAC3B,MAAM,SAAS,GAAG;YAChB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACvF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACrF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACrF,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACvF,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QAEF,MAAM,WAAW,GAAQ;YACvB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,iBAAiB,EAAE,MAAM,CAAC,eAAe;YACzC,YAAY,EAAE,WAAW;YACzB,cAAc,EAAE,WAAW;YAC3B,iBAAiB,EAAE,gBAAgB;SACpC,CAAC;QAEF,6DAA6D;QAC7D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC;QACrC,CAAC;QAED,OAAO,IAAA,sCAAmB,EAAC,WAAW,EAAE;YACtC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YACnC,MAAM,EAAE,6BAA6B;YACrC,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,uDAAuD;QACvD,MAAM,WAAW,GAAQ;YACvB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,WAAW;YACzB,oBAAoB,EAAE,QAAQ;YAC9B,cAAc,EAAE,WAAW;YAC3B,iBAAiB,EAAE,gBAAgB;YACnC,OAAO,EAAE,sLAAsL;YAC/L,eAAe,EAAE,0DAA0D,OAAO,EAAE;SACrF,CAAC;QAEF,6DAA6D;QAC7D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC;QACrC,CAAC;QAED,OAAO,IAAA,sCAAmB,EAAC,WAAW,EAAE;YACtC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YACnC,MAAM,EAAE,uBAAuB;YAC/B,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,UAAU,GAAU,EAAE,CAAC;IAE7B,MAAM,QAAQ,GAAG;QACf,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE;QACnE,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,EAAE;QAC9E,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,kBAAkB,EAAE,GAAG,EAAE,0BAA0B,EAAE;QAChF,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,yBAAyB,EAAE;QACrF,EAAE,KAAK,EAAE,wBAAwB,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,0BAA0B,EAAE;QACpF,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,0BAA0B,EAAE;KAC1E,CAAC;IAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;QACxC,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC3C,UAAU,CAAC,IAAI,CAAC;gBACd,IAAI;gBACJ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM;gBACvD,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;gBACd,GAAG;aACJ,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc;IAC3C,MAAM,QAAQ,GAAG;QACf,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,EAAc;QACxB,cAAc,EAAE,EAAc;QAC9B,YAAY,EAAE,EAAc;KAC7B,CAAC;IAEF,MAAM,wBAAwB,GAAG;QAC/B,gBAAgB;QAChB,gBAAgB;QAChB,sBAAsB;QACtB,gBAAgB;KACjB,CAAC;IAEF,MAAM,oBAAoB,GAAG;QAC3B,mBAAmB;QACnB,qBAAqB;QACrB,iBAAiB;QACjB,oBAAoB;KACrB,CAAC;IAEF,MAAM,iBAAiB,GAAG;QACxB,UAAU;QACV,kBAAkB;QAClB,mBAAmB;KACpB,CAAC;IAEF,wBAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;YACzC,IAAI,QAAQ,CAAC,SAAS,KAAK,KAAK;gBAAE,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;QAClE,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAClC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,6CAA6C,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClF,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC9F,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QAC9E,IAAI,QAAQ,CAAC,SAAS,KAAK,KAAK;YAAE,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC;IAClE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAY;IAC9C,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IAE5F,MAAM,SAAS,GAAG;QAChB,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACb,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;IAErC,OAAO;;;sBAGa,WAAW;;EAE/B,SAAS,6BAA6B,gBAAgB,CAAC,SAAS;;sBAE5C,SAAS,IAAI,cAAc;4BACrB,qBAAqB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa;;;EAG7E,gBAAgB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,gCAAgC,gBAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;EACjF,gBAAgB,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1C,qBAAqB,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;EACpE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtC,gBAAgB,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;;;;EAI3D,MAAM;;;;;;;;;;;;;CAaP,CAAC,IAAI,EAAE,CAAC;AACT,CAAC;AAEY,QAAA,OAAO,GAAG,OAAO,CAAC;AAClB,QAAA,MAAM,GAAG,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snow_create_artifact.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/deployment/snow_create_artifact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"snow_create_artifact.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/deployment/snow_create_artifact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,iBA+J5B,CAAC;AAEF,wBAAsB,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA6XxF;AA+iBD,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,MAAM,mBAAmB,CAAC"}
|
|
@@ -12,7 +12,17 @@ const auth_js_1 = require("../../shared/auth.js");
|
|
|
12
12
|
const error_handler_js_1 = require("../../shared/error-handler.js");
|
|
13
13
|
exports.toolDefinition = {
|
|
14
14
|
name: 'snow_create_artifact',
|
|
15
|
-
description: `Create ServiceNow artifacts (Service Portal widgets, UI pages, scripts, etc.) with a unified interface.
|
|
15
|
+
description: `Create ServiceNow artifacts (Service Portal widgets, UI pages, scripts, tables, fields, etc.) with a unified interface.
|
|
16
|
+
|
|
17
|
+
🗃️ TABLE & FIELD CREATION:
|
|
18
|
+
- type='table': Create custom tables (sys_db_object)
|
|
19
|
+
- extends_table: Extend from task, cmdb_ci, core_company, etc.
|
|
20
|
+
- create_module: Auto-create navigation module (default: true)
|
|
21
|
+
- create_access_controls: Auto-create read/write/create/delete ACLs
|
|
22
|
+
- type='field': Add fields to existing tables (sys_dictionary)
|
|
23
|
+
- internal_type: string, integer, boolean, reference, choice, etc.
|
|
24
|
+
- choice_options: For choice fields, provide [{label, value}] array
|
|
25
|
+
- reference_table: Required for reference type fields
|
|
16
26
|
|
|
17
27
|
📦 APPLICATION SCOPE:
|
|
18
28
|
- By default, artifacts are created in the CURRENT application scope
|
|
@@ -22,7 +32,7 @@ exports.toolDefinition = {
|
|
|
22
32
|
// Metadata for tool discovery (not sent to LLM)
|
|
23
33
|
category: 'development',
|
|
24
34
|
subcategory: 'deployment',
|
|
25
|
-
use_cases: ['deployment', 'creation', 'artifacts', 'widgets'],
|
|
35
|
+
use_cases: ['deployment', 'creation', 'artifacts', 'widgets', 'tables', 'fields', 'schema'],
|
|
26
36
|
complexity: 'intermediate',
|
|
27
37
|
frequency: 'high',
|
|
28
38
|
// Permission enforcement
|
|
@@ -61,6 +71,7 @@ exports.toolDefinition = {
|
|
|
61
71
|
client_script: { type: 'string', description: 'Client-side script' },
|
|
62
72
|
css: { type: 'string', description: 'CSS stylesheet (for widgets)' },
|
|
63
73
|
option_schema: { type: 'string', description: 'Option schema JSON (for widgets)' },
|
|
74
|
+
data_table_enabled: { type: 'boolean', description: 'Enable widget preview/data table mode (for widgets). Default: true', default: true },
|
|
64
75
|
// Script Include fields
|
|
65
76
|
script: { type: 'string', description: 'Script content (for script includes, business rules, etc.)' },
|
|
66
77
|
api_name: { type: 'string', description: 'API name (for script includes)' },
|
|
@@ -100,6 +111,37 @@ exports.toolDefinition = {
|
|
|
100
111
|
// UI Policy fields
|
|
101
112
|
on_load: { type: 'boolean', description: 'Run on form load (UI policies)' },
|
|
102
113
|
reverse_if_false: { type: 'boolean', description: 'Reverse actions if condition false (UI policies)' },
|
|
114
|
+
// Table creation fields
|
|
115
|
+
label: { type: 'string', description: 'Table label (for tables) or field label (for fields)' },
|
|
116
|
+
extends_table: { type: 'string', description: 'Parent table to extend (for tables). Common options: task, cmdb_ci, core_company' },
|
|
117
|
+
is_extendable: { type: 'boolean', description: 'Whether the table can be extended (for tables)', default: true },
|
|
118
|
+
create_module: { type: 'boolean', description: 'Create navigation module for the table', default: true },
|
|
119
|
+
create_access_controls: { type: 'boolean', description: 'Create default ACLs for the table', default: false },
|
|
120
|
+
// Field creation fields (when type='field')
|
|
121
|
+
column_name: { type: 'string', description: 'Column/field name (for fields)' },
|
|
122
|
+
column_label: { type: 'string', description: 'Column/field display label (for fields)' },
|
|
123
|
+
internal_type: {
|
|
124
|
+
type: 'string',
|
|
125
|
+
description: 'Field type (for fields)',
|
|
126
|
+
enum: ['string', 'integer', 'boolean', 'reference', 'glide_date', 'glide_date_time',
|
|
127
|
+
'decimal', 'float', 'choice', 'journal', 'journal_input', 'html', 'url',
|
|
128
|
+
'email', 'phone_number_e164', 'currency', 'price', 'sys_class_name', 'document_id']
|
|
129
|
+
},
|
|
130
|
+
reference_table: { type: 'string', description: 'Reference table name (required for reference fields)' },
|
|
131
|
+
max_length: { type: 'number', description: 'Maximum length for string fields', default: 255 },
|
|
132
|
+
mandatory: { type: 'boolean', description: 'Whether the field is mandatory', default: false },
|
|
133
|
+
default_value: { type: 'string', description: 'Default value for the field' },
|
|
134
|
+
choice_options: {
|
|
135
|
+
type: 'array',
|
|
136
|
+
items: {
|
|
137
|
+
type: 'object',
|
|
138
|
+
properties: {
|
|
139
|
+
label: { type: 'string' },
|
|
140
|
+
value: { type: 'string' }
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
description: 'Choice options for choice fields (array of {label, value} objects)'
|
|
144
|
+
},
|
|
103
145
|
// Validation options
|
|
104
146
|
validate_es5: {
|
|
105
147
|
type: 'boolean',
|
|
@@ -116,7 +158,7 @@ exports.toolDefinition = {
|
|
|
116
158
|
}
|
|
117
159
|
};
|
|
118
160
|
async function execute(args, context) {
|
|
119
|
-
const { type, name, title, description = '', template, server_script, client_script, css, option_schema, script, api_name, table, when, insert, update, delete: deleteOp, query: queryOp, active = true, validate_es5 = true, application_scope,
|
|
161
|
+
const { type, name, title, description = '', template, server_script, client_script, css, option_schema, data_table_enabled = true, script, api_name, table, when, insert, update, delete: deleteOp, query: queryOp, active = true, validate_es5 = true, application_scope,
|
|
120
162
|
// REST Message fields
|
|
121
163
|
rest_endpoint, authentication_type, http_method,
|
|
122
164
|
// Scheduled Job fields
|
|
@@ -126,7 +168,11 @@ async function execute(args, context) {
|
|
|
126
168
|
// UI Action fields
|
|
127
169
|
form_action, form_style, list_action, order, condition,
|
|
128
170
|
// UI Policy fields
|
|
129
|
-
on_load, reverse_if_false
|
|
171
|
+
on_load, reverse_if_false,
|
|
172
|
+
// Table creation fields
|
|
173
|
+
label, extends_table, is_extendable = true, create_module = true, create_access_controls = false,
|
|
174
|
+
// Field creation fields
|
|
175
|
+
column_name, column_label, internal_type, reference_table, max_length = 255, mandatory = false, default_value, choice_options } = args;
|
|
130
176
|
try {
|
|
131
177
|
const client = await (0, auth_js_1.getAuthenticatedClient)(context);
|
|
132
178
|
// Resolve application scope
|
|
@@ -179,28 +225,19 @@ async function execute(args, context) {
|
|
|
179
225
|
}
|
|
180
226
|
}
|
|
181
227
|
}
|
|
182
|
-
// ES5 validation for server scripts
|
|
228
|
+
// ES5 validation for server scripts (warning only, does not block creation)
|
|
229
|
+
const es5Warnings = [];
|
|
183
230
|
if (validate_es5 && server_script) {
|
|
184
231
|
const es5Validation = validateES5Syntax(server_script);
|
|
185
232
|
if (!es5Validation.valid) {
|
|
186
|
-
|
|
187
|
-
retryable: false,
|
|
188
|
-
details: {
|
|
189
|
-
violations: es5Validation.violations
|
|
190
|
-
}
|
|
191
|
-
});
|
|
233
|
+
es5Warnings.push(`Server script contains ES6+ syntax (${es5Validation.violations.map((v) => v.type).join(', ')}). This may cause issues in some ServiceNow widgets. Consider using ES5 syntax for maximum compatibility.`);
|
|
192
234
|
}
|
|
193
235
|
}
|
|
194
|
-
// ES5 validation for regular scripts
|
|
236
|
+
// ES5 validation for regular scripts (warning only, does not block creation)
|
|
195
237
|
if (validate_es5 && script) {
|
|
196
238
|
const es5Validation = validateES5Syntax(script);
|
|
197
239
|
if (!es5Validation.valid) {
|
|
198
|
-
|
|
199
|
-
retryable: false,
|
|
200
|
-
details: {
|
|
201
|
-
violations: es5Validation.violations
|
|
202
|
-
}
|
|
203
|
-
});
|
|
240
|
+
es5Warnings.push(`Script contains ES6+ syntax (${es5Validation.violations.map((v) => v.type).join(', ')}). This may cause issues in some ServiceNow contexts. Consider using ES5 syntax for maximum compatibility.`);
|
|
204
241
|
}
|
|
205
242
|
}
|
|
206
243
|
let result;
|
|
@@ -217,6 +254,7 @@ async function execute(args, context) {
|
|
|
217
254
|
client_script: client_script || '',
|
|
218
255
|
css: css || '',
|
|
219
256
|
option_schema: option_schema || '',
|
|
257
|
+
data_table_enabled,
|
|
220
258
|
sys_scope: resolvedScopeId
|
|
221
259
|
});
|
|
222
260
|
tableName = 'sp_widget';
|
|
@@ -367,10 +405,46 @@ async function execute(args, context) {
|
|
|
367
405
|
});
|
|
368
406
|
tableName = 'sys_script_fix';
|
|
369
407
|
break;
|
|
408
|
+
case 'table':
|
|
409
|
+
if (!label) {
|
|
410
|
+
throw new Error('label parameter required for table creation');
|
|
411
|
+
}
|
|
412
|
+
result = await createTable(client, {
|
|
413
|
+
name,
|
|
414
|
+
label,
|
|
415
|
+
extends_table,
|
|
416
|
+
is_extendable,
|
|
417
|
+
create_module,
|
|
418
|
+
create_access_controls,
|
|
419
|
+
sys_scope: resolvedScopeId
|
|
420
|
+
}, context);
|
|
421
|
+
tableName = 'sys_db_object';
|
|
422
|
+
break;
|
|
423
|
+
case 'field':
|
|
424
|
+
if (!table) {
|
|
425
|
+
throw new Error('table parameter required for field creation');
|
|
426
|
+
}
|
|
427
|
+
if (!internal_type) {
|
|
428
|
+
throw new Error('internal_type parameter required for field creation');
|
|
429
|
+
}
|
|
430
|
+
result = await createField(client, {
|
|
431
|
+
table,
|
|
432
|
+
column_name: column_name || name,
|
|
433
|
+
column_label: column_label || label || name,
|
|
434
|
+
internal_type,
|
|
435
|
+
reference_table,
|
|
436
|
+
max_length,
|
|
437
|
+
mandatory,
|
|
438
|
+
default_value,
|
|
439
|
+
choice_options,
|
|
440
|
+
sys_scope: resolvedScopeId
|
|
441
|
+
}, context);
|
|
442
|
+
tableName = 'sys_dictionary';
|
|
443
|
+
break;
|
|
370
444
|
default:
|
|
371
445
|
throw new Error(`Unsupported artifact type: ${type}`);
|
|
372
446
|
}
|
|
373
|
-
|
|
447
|
+
const successData = {
|
|
374
448
|
created: true,
|
|
375
449
|
sys_id: result.sys_id,
|
|
376
450
|
name: result.name || name,
|
|
@@ -382,7 +456,12 @@ async function execute(args, context) {
|
|
|
382
456
|
scope: resolvedScopePrefix
|
|
383
457
|
} : null,
|
|
384
458
|
url: `${context.instanceUrl}/nav_to.do?uri=${tableName}.do?sys_id=${result.sys_id}`
|
|
385
|
-
}
|
|
459
|
+
};
|
|
460
|
+
// Add ES5 warnings if any (non-blocking, informational only)
|
|
461
|
+
if (es5Warnings.length > 0) {
|
|
462
|
+
successData.warnings = es5Warnings;
|
|
463
|
+
}
|
|
464
|
+
return (0, error_handler_js_1.createSuccessResult)(successData);
|
|
386
465
|
}
|
|
387
466
|
catch (error) {
|
|
388
467
|
return (0, error_handler_js_1.createErrorResult)(error instanceof error_handler_js_1.SnowFlowError
|
|
@@ -402,7 +481,8 @@ async function createServicePortalWidget(client, config) {
|
|
|
402
481
|
script: config.script || '',
|
|
403
482
|
client_script: config.client_script || '',
|
|
404
483
|
css: config.css || '',
|
|
405
|
-
option_schema: config.option_schema || ''
|
|
484
|
+
option_schema: config.option_schema || '',
|
|
485
|
+
data_table: config.data_table_enabled !== false // Default to true - ServiceNow field is 'data_table'
|
|
406
486
|
};
|
|
407
487
|
// Add scope if specified
|
|
408
488
|
if (config.sys_scope) {
|
|
@@ -639,6 +719,199 @@ async function createFixScript(client, config) {
|
|
|
639
719
|
const response = await client.post('/api/now/table/sys_script_fix', scriptData);
|
|
640
720
|
return response.data.result;
|
|
641
721
|
}
|
|
722
|
+
/**
|
|
723
|
+
* Create Table (sys_db_object)
|
|
724
|
+
*/
|
|
725
|
+
async function createTable(client, config, context) {
|
|
726
|
+
// Build table data
|
|
727
|
+
const tableData = {
|
|
728
|
+
name: config.name,
|
|
729
|
+
label: config.label,
|
|
730
|
+
is_extendable: config.is_extendable !== false
|
|
731
|
+
};
|
|
732
|
+
// Set parent table if extending
|
|
733
|
+
if (config.extends_table) {
|
|
734
|
+
// Look up the parent table sys_id
|
|
735
|
+
const parentResponse = await client.get('/api/now/table/sys_db_object', {
|
|
736
|
+
params: {
|
|
737
|
+
sysparm_query: `name=${config.extends_table}`,
|
|
738
|
+
sysparm_fields: 'sys_id,name,label',
|
|
739
|
+
sysparm_limit: 1
|
|
740
|
+
}
|
|
741
|
+
});
|
|
742
|
+
if (parentResponse.data.result && parentResponse.data.result.length > 0) {
|
|
743
|
+
tableData.super_class = parentResponse.data.result[0].sys_id;
|
|
744
|
+
}
|
|
745
|
+
else {
|
|
746
|
+
throw new Error(`Parent table '${config.extends_table}' not found. Cannot extend a non-existent table.`);
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
// Add scope if specified
|
|
750
|
+
if (config.sys_scope && config.sys_scope !== 'global') {
|
|
751
|
+
tableData.sys_scope = config.sys_scope;
|
|
752
|
+
}
|
|
753
|
+
// Check if table already exists
|
|
754
|
+
const existingResponse = await client.get('/api/now/table/sys_db_object', {
|
|
755
|
+
params: {
|
|
756
|
+
sysparm_query: `name=${config.name}`,
|
|
757
|
+
sysparm_limit: 1
|
|
758
|
+
}
|
|
759
|
+
});
|
|
760
|
+
if (existingResponse.data.result && existingResponse.data.result.length > 0) {
|
|
761
|
+
throw new Error(`Table '${config.name}' already exists. Use snow_update to modify it.`);
|
|
762
|
+
}
|
|
763
|
+
// Create the table
|
|
764
|
+
const createResponse = await client.post('/api/now/table/sys_db_object', tableData);
|
|
765
|
+
const createdTable = createResponse.data.result;
|
|
766
|
+
const additionalInfo = {};
|
|
767
|
+
// Create navigation module if requested
|
|
768
|
+
if (config.create_module) {
|
|
769
|
+
try {
|
|
770
|
+
const moduleData = {
|
|
771
|
+
title: config.label,
|
|
772
|
+
name: config.name,
|
|
773
|
+
table_name: config.name,
|
|
774
|
+
view_name: 'default',
|
|
775
|
+
order: 100,
|
|
776
|
+
active: true
|
|
777
|
+
};
|
|
778
|
+
const moduleResponse = await client.post('/api/now/table/sys_app_module', moduleData);
|
|
779
|
+
additionalInfo.module = {
|
|
780
|
+
sys_id: moduleResponse.data.result.sys_id,
|
|
781
|
+
title: config.label
|
|
782
|
+
};
|
|
783
|
+
}
|
|
784
|
+
catch (moduleError) {
|
|
785
|
+
additionalInfo.module_error = `Could not create module: ${moduleError.message}`;
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
// Create default ACLs if requested
|
|
789
|
+
if (config.create_access_controls) {
|
|
790
|
+
try {
|
|
791
|
+
const acls = [];
|
|
792
|
+
// Read ACL
|
|
793
|
+
const readAcl = await client.post('/api/now/table/sys_security_acl', {
|
|
794
|
+
name: config.name,
|
|
795
|
+
operation: 'read',
|
|
796
|
+
type: 'record',
|
|
797
|
+
admin_overrides: true,
|
|
798
|
+
active: true
|
|
799
|
+
});
|
|
800
|
+
acls.push({ type: 'read', sys_id: readAcl.data.result.sys_id });
|
|
801
|
+
// Write ACL
|
|
802
|
+
const writeAcl = await client.post('/api/now/table/sys_security_acl', {
|
|
803
|
+
name: config.name,
|
|
804
|
+
operation: 'write',
|
|
805
|
+
type: 'record',
|
|
806
|
+
admin_overrides: true,
|
|
807
|
+
active: true
|
|
808
|
+
});
|
|
809
|
+
acls.push({ type: 'write', sys_id: writeAcl.data.result.sys_id });
|
|
810
|
+
// Create ACL
|
|
811
|
+
const createAcl = await client.post('/api/now/table/sys_security_acl', {
|
|
812
|
+
name: config.name,
|
|
813
|
+
operation: 'create',
|
|
814
|
+
type: 'record',
|
|
815
|
+
admin_overrides: true,
|
|
816
|
+
active: true
|
|
817
|
+
});
|
|
818
|
+
acls.push({ type: 'create', sys_id: createAcl.data.result.sys_id });
|
|
819
|
+
// Delete ACL
|
|
820
|
+
const deleteAcl = await client.post('/api/now/table/sys_security_acl', {
|
|
821
|
+
name: config.name,
|
|
822
|
+
operation: 'delete',
|
|
823
|
+
type: 'record',
|
|
824
|
+
admin_overrides: true,
|
|
825
|
+
active: true
|
|
826
|
+
});
|
|
827
|
+
acls.push({ type: 'delete', sys_id: deleteAcl.data.result.sys_id });
|
|
828
|
+
additionalInfo.access_controls = acls;
|
|
829
|
+
}
|
|
830
|
+
catch (aclError) {
|
|
831
|
+
additionalInfo.acl_error = `Could not create ACLs: ${aclError.message}`;
|
|
832
|
+
}
|
|
833
|
+
}
|
|
834
|
+
return {
|
|
835
|
+
...createdTable,
|
|
836
|
+
...additionalInfo
|
|
837
|
+
};
|
|
838
|
+
}
|
|
839
|
+
/**
|
|
840
|
+
* Create Field (sys_dictionary)
|
|
841
|
+
*/
|
|
842
|
+
async function createField(client, config, context) {
|
|
843
|
+
// Build field data
|
|
844
|
+
const fieldData = {
|
|
845
|
+
name: config.table,
|
|
846
|
+
element: config.column_name,
|
|
847
|
+
column_label: config.column_label || config.column_name,
|
|
848
|
+
internal_type: config.internal_type,
|
|
849
|
+
mandatory: config.mandatory || false
|
|
850
|
+
};
|
|
851
|
+
// Add reference table for reference fields
|
|
852
|
+
if (config.internal_type === 'reference' && config.reference_table) {
|
|
853
|
+
fieldData.reference = config.reference_table;
|
|
854
|
+
}
|
|
855
|
+
// Add max_length for string fields
|
|
856
|
+
if (['string', 'url', 'email', 'phone_number_e164'].includes(config.internal_type)) {
|
|
857
|
+
fieldData.max_length = config.max_length || 255;
|
|
858
|
+
}
|
|
859
|
+
// Add default value if specified
|
|
860
|
+
if (config.default_value !== undefined) {
|
|
861
|
+
fieldData.default_value = config.default_value;
|
|
862
|
+
}
|
|
863
|
+
// Add scope if specified
|
|
864
|
+
if (config.sys_scope && config.sys_scope !== 'global') {
|
|
865
|
+
fieldData.sys_scope = config.sys_scope;
|
|
866
|
+
}
|
|
867
|
+
// Check if field already exists
|
|
868
|
+
const existingResponse = await client.get('/api/now/table/sys_dictionary', {
|
|
869
|
+
params: {
|
|
870
|
+
sysparm_query: `name=${config.table}^element=${config.column_name}`,
|
|
871
|
+
sysparm_limit: 1
|
|
872
|
+
}
|
|
873
|
+
});
|
|
874
|
+
if (existingResponse.data.result && existingResponse.data.result.length > 0) {
|
|
875
|
+
throw new Error(`Field '${config.column_name}' already exists on table '${config.table}'. Use snow_update to modify it.`);
|
|
876
|
+
}
|
|
877
|
+
// Create the field
|
|
878
|
+
const createResponse = await client.post('/api/now/table/sys_dictionary', fieldData);
|
|
879
|
+
const createdField = createResponse.data.result;
|
|
880
|
+
// Create choice options if specified for choice fields
|
|
881
|
+
if (config.internal_type === 'choice' && config.choice_options && config.choice_options.length > 0) {
|
|
882
|
+
const choices = [];
|
|
883
|
+
for (let i = 0; i < config.choice_options.length; i++) {
|
|
884
|
+
const option = config.choice_options[i];
|
|
885
|
+
try {
|
|
886
|
+
const choiceData = {
|
|
887
|
+
name: config.table,
|
|
888
|
+
element: config.column_name,
|
|
889
|
+
label: option.label,
|
|
890
|
+
value: option.value,
|
|
891
|
+
sequence: (i + 1) * 10, // 10, 20, 30...
|
|
892
|
+
inactive: false
|
|
893
|
+
};
|
|
894
|
+
if (config.sys_scope && config.sys_scope !== 'global') {
|
|
895
|
+
choiceData.sys_scope = config.sys_scope;
|
|
896
|
+
}
|
|
897
|
+
const choiceResponse = await client.post('/api/now/table/sys_choice', choiceData);
|
|
898
|
+
choices.push({
|
|
899
|
+
sys_id: choiceResponse.data.result.sys_id,
|
|
900
|
+
label: option.label,
|
|
901
|
+
value: option.value
|
|
902
|
+
});
|
|
903
|
+
}
|
|
904
|
+
catch (choiceError) {
|
|
905
|
+
// Continue with other choices even if one fails
|
|
906
|
+
choices.push({
|
|
907
|
+
error: `Failed to create choice '${option.label}': ${choiceError.message}`
|
|
908
|
+
});
|
|
909
|
+
}
|
|
910
|
+
}
|
|
911
|
+
createdField.choices = choices;
|
|
912
|
+
}
|
|
913
|
+
return createdField;
|
|
914
|
+
}
|
|
642
915
|
/**
|
|
643
916
|
* Validate ES5 syntax
|
|
644
917
|
*/
|