@servicenow/sdk-build-core 4.2.0 → 4.3.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/dist/compiler.d.ts +5 -1
- package/dist/compiler.js +104 -7
- package/dist/compiler.js.map +1 -1
- package/dist/now-config-dependencies.d.ts +2 -1
- package/dist/now-config.d.ts +5 -0
- package/dist/now-config.js +2 -4
- package/dist/now-config.js.map +1 -1
- package/dist/plugins/cache.d.ts +8 -13
- package/dist/plugins/cache.js +2 -26
- package/dist/plugins/cache.js.map +1 -1
- package/dist/plugins/data-shape.d.ts +24 -33
- package/dist/plugins/data-shape.js +83 -73
- package/dist/plugins/data-shape.js.map +1 -1
- package/dist/plugins/plugin.d.ts +43 -1
- package/dist/plugins/plugin.js +49 -5
- package/dist/plugins/plugin.js.map +1 -1
- package/dist/plugins/shape.d.ts +19 -11
- package/dist/plugins/shape.js +61 -23
- package/dist/plugins/shape.js.map +1 -1
- package/dist/taxonomy.js +53 -1
- package/dist/taxonomy.js.map +1 -1
- package/dist/telemetry/clients/abstract-client.d.ts +25 -0
- package/dist/telemetry/clients/abstract-client.js +55 -0
- package/dist/telemetry/clients/abstract-client.js.map +1 -0
- package/dist/telemetry/clients/browser-client.d.ts +20 -0
- package/dist/telemetry/clients/browser-client.js +136 -0
- package/dist/telemetry/clients/browser-client.js.map +1 -0
- package/dist/telemetry/clients/node-client.d.ts +15 -0
- package/dist/telemetry/clients/node-client.js +159 -0
- package/dist/telemetry/clients/node-client.js.map +1 -0
- package/dist/telemetry/clients/noop-client.d.ts +10 -0
- package/dist/telemetry/clients/noop-client.js +18 -0
- package/dist/telemetry/clients/noop-client.js.map +1 -0
- package/dist/telemetry/clients/util.d.ts +11 -0
- package/dist/telemetry/clients/util.js +34 -0
- package/dist/telemetry/clients/util.js.map +1 -0
- package/dist/telemetry/config.d.ts +2 -0
- package/dist/telemetry/config.js +28 -0
- package/dist/telemetry/config.js.map +1 -0
- package/dist/telemetry/factory.d.ts +13 -0
- package/dist/telemetry/factory.js +29 -0
- package/dist/telemetry/factory.js.map +1 -0
- package/dist/telemetry/index.d.ts +2 -25
- package/dist/telemetry/index.js +3 -15
- package/dist/telemetry/index.js.map +1 -1
- package/dist/telemetry/types.d.ts +55 -0
- package/dist/telemetry/types.js +12 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/typescript.d.ts +10 -0
- package/dist/typescript.js +18 -0
- package/dist/typescript.js.map +1 -1
- package/dist/util/delete-multiple.d.ts +5 -0
- package/dist/util/delete-multiple.js +30 -0
- package/dist/util/delete-multiple.js.map +1 -0
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +1 -0
- package/dist/util/index.js.map +1 -1
- package/now.config.schema.json +38 -0
- package/package.json +13 -9
- package/src/compiler.ts +121 -7
- package/src/now-config-dependencies.ts +2 -1
- package/src/now-config.ts +3 -4
- package/src/plugins/cache.ts +5 -27
- package/src/plugins/data-shape.ts +95 -84
- package/src/plugins/plugin.ts +116 -9
- package/src/plugins/shape.ts +64 -30
- package/src/taxonomy.ts +53 -1
- package/src/telemetry/clients/abstract-client.ts +63 -0
- package/src/telemetry/clients/browser-client.ts +160 -0
- package/src/telemetry/clients/node-client.ts +151 -0
- package/src/telemetry/clients/noop-client.ts +15 -0
- package/src/telemetry/clients/util.ts +33 -0
- package/src/telemetry/config.ts +12 -0
- package/src/telemetry/factory.ts +34 -0
- package/src/telemetry/index.ts +2 -27
- package/src/telemetry/types.ts +61 -0
- package/src/typescript.ts +17 -0
- package/src/util/delete-multiple.ts +35 -0
- package/src/util/index.ts +1 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export declare const NETWORK_TIMEOUT_MS = 2000;
|
|
2
|
+
export type InstanceSettings = {
|
|
3
|
+
APIKey: string;
|
|
4
|
+
APIAuth: string;
|
|
5
|
+
BaseUrl: string;
|
|
6
|
+
};
|
|
7
|
+
export type Session = {
|
|
8
|
+
SessionId: string;
|
|
9
|
+
ClientId: string;
|
|
10
|
+
TabId: string;
|
|
11
|
+
};
|
|
12
|
+
export declare enum DatapointType {
|
|
13
|
+
Page = 0,
|
|
14
|
+
Event = 1,
|
|
15
|
+
User = 2,
|
|
16
|
+
PerformanceTrace = 3
|
|
17
|
+
}
|
|
18
|
+
export type Datapoint = {
|
|
19
|
+
t: DatapointType;
|
|
20
|
+
/**
|
|
21
|
+
* Epoch time in milliseconds
|
|
22
|
+
*/
|
|
23
|
+
d: number;
|
|
24
|
+
/**
|
|
25
|
+
* Event name
|
|
26
|
+
*/
|
|
27
|
+
n: string;
|
|
28
|
+
/**
|
|
29
|
+
* Event properties
|
|
30
|
+
*/
|
|
31
|
+
p?: Record<string, unknown>;
|
|
32
|
+
};
|
|
33
|
+
export type HeartbeatBody = {
|
|
34
|
+
SessionId: string;
|
|
35
|
+
DataPoints: Datapoint[];
|
|
36
|
+
TabId: string;
|
|
37
|
+
ClientTime: string;
|
|
38
|
+
ConfigReceivedTime: string;
|
|
39
|
+
};
|
|
40
|
+
export interface Telemetry {
|
|
41
|
+
sendEvent(eventData: TelemetryEvent | TelemetryEvent[]): void;
|
|
42
|
+
error(event: string, error: unknown, data?: TelemetryEventData): void;
|
|
43
|
+
startTimerEvent(name: TelemetryEvent['name']): TimerMetric;
|
|
44
|
+
}
|
|
45
|
+
export interface TimerMetric {
|
|
46
|
+
end(eventData?: Pick<TelemetryEvent, 'appInfo' | 'data'>): TelemetryEvent;
|
|
47
|
+
}
|
|
48
|
+
export type TelemetryEventData = Record<string, unknown>;
|
|
49
|
+
export type TelemetryEvent = {
|
|
50
|
+
name: string;
|
|
51
|
+
appInfo?: {
|
|
52
|
+
scopeId?: string;
|
|
53
|
+
};
|
|
54
|
+
data?: TelemetryEventData;
|
|
55
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DatapointType = exports.NETWORK_TIMEOUT_MS = void 0;
|
|
4
|
+
exports.NETWORK_TIMEOUT_MS = 2000;
|
|
5
|
+
var DatapointType;
|
|
6
|
+
(function (DatapointType) {
|
|
7
|
+
DatapointType[DatapointType["Page"] = 0] = "Page";
|
|
8
|
+
DatapointType[DatapointType["Event"] = 1] = "Event";
|
|
9
|
+
DatapointType[DatapointType["User"] = 2] = "User";
|
|
10
|
+
DatapointType[DatapointType["PerformanceTrace"] = 3] = "PerformanceTrace";
|
|
11
|
+
})(DatapointType || (exports.DatapointType = DatapointType = {}));
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/telemetry/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,IAAI,CAAA;AActC,IAAY,aAKX;AALD,WAAY,aAAa;IACrB,iDAAQ,CAAA;IACR,mDAAS,CAAA;IACT,iDAAQ,CAAA;IACR,yEAAoB,CAAA;AACxB,CAAC,EALW,aAAa,6BAAb,aAAa,QAKxB"}
|
package/dist/typescript.d.ts
CHANGED
|
@@ -23,6 +23,16 @@ declare module 'ts-morph' {
|
|
|
23
23
|
import * as ts from 'ts-morph';
|
|
24
24
|
import { ts as tsc } from 'ts-morph';
|
|
25
25
|
export { ts, tsc };
|
|
26
|
+
/**
|
|
27
|
+
* Checks if a value is a valid ts-morph Node that can be operated on.
|
|
28
|
+
*
|
|
29
|
+
* Unlike `ts.Node.isNode()`, this function safely handles nodes that have been
|
|
30
|
+
* removed or forgotten from the AST, returning `false` instead of throwing.
|
|
31
|
+
*
|
|
32
|
+
* @param value - The value to check
|
|
33
|
+
* @returns `true` if the value is a valid, usable Node; `false` otherwise
|
|
34
|
+
*/
|
|
35
|
+
export declare function isValidNode(value: unknown): value is ts.Node;
|
|
26
36
|
export declare function getValueDeclaration(node: ts.Node): ts.Node<ts.ts.Node> | undefined;
|
|
27
37
|
export declare function parseType(type: ts.Type, location: ts.Node, unparsableTypeHandler?: (unparsableType: ts.Type) => unknown): unknown;
|
|
28
38
|
/**
|
package/dist/typescript.js
CHANGED
|
@@ -24,6 +24,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.SupportedKinds = exports.tsc = exports.ts = void 0;
|
|
27
|
+
exports.isValidNode = isValidNode;
|
|
27
28
|
exports.getValueDeclaration = getValueDeclaration;
|
|
28
29
|
exports.parseType = parseType;
|
|
29
30
|
exports.isSupportedKind = isSupportedKind;
|
|
@@ -42,6 +43,23 @@ exports.ts = ts;
|
|
|
42
43
|
// biome-ignore lint/style/noRestrictedImports: This is where our re-export comes from
|
|
43
44
|
const ts_morph_1 = require("ts-morph");
|
|
44
45
|
Object.defineProperty(exports, "tsc", { enumerable: true, get: function () { return ts_morph_1.ts; } });
|
|
46
|
+
/**
|
|
47
|
+
* Checks if a value is a valid ts-morph Node that can be operated on.
|
|
48
|
+
*
|
|
49
|
+
* Unlike `ts.Node.isNode()`, this function safely handles nodes that have been
|
|
50
|
+
* removed or forgotten from the AST, returning `false` instead of throwing.
|
|
51
|
+
*
|
|
52
|
+
* @param value - The value to check
|
|
53
|
+
* @returns `true` if the value is a valid, usable Node; `false` otherwise
|
|
54
|
+
*/
|
|
55
|
+
function isValidNode(value) {
|
|
56
|
+
try {
|
|
57
|
+
return ts.Node.isNode(value);
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
45
63
|
function getValueDeclaration(node) {
|
|
46
64
|
const symbol = node.getSymbol();
|
|
47
65
|
if (!symbol) {
|
package/dist/typescript.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../src/typescript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../src/typescript.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteMultipleDiff = deleteMultipleDiff;
|
|
4
|
+
const plugins_1 = require("../plugins");
|
|
5
|
+
async function deleteMultipleDiff(existing, incoming, descendants, { factory }) {
|
|
6
|
+
if (incoming.query().length === 0) {
|
|
7
|
+
// No changes for this record so we don't search descendents for absent deletes.
|
|
8
|
+
return {
|
|
9
|
+
success: true,
|
|
10
|
+
value: new plugins_1.Database(),
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
const changeDatabase = existing.compare(incoming);
|
|
14
|
+
const markForRemoval = descendants.query().filter((descendent) => !incoming.resolve(descendent.getId()));
|
|
15
|
+
for (const record of markForRemoval) {
|
|
16
|
+
const deleteRecord = await factory.createRecord({
|
|
17
|
+
source: record.getSource(),
|
|
18
|
+
table: record.getTable(),
|
|
19
|
+
explicitId: record.getId(),
|
|
20
|
+
properties: record.properties(),
|
|
21
|
+
action: 'DELETE',
|
|
22
|
+
});
|
|
23
|
+
changeDatabase.insert(deleteRecord);
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
success: true,
|
|
27
|
+
value: changeDatabase.hasChanges() ? new plugins_1.Database(changeDatabase.query()) : new plugins_1.Database(),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=delete-multiple.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-multiple.js","sourceRoot":"","sources":["../../src/util/delete-multiple.ts"],"names":[],"mappings":";;AAEA,gDAgCC;AAlCD,wCAAmD;AAE5C,KAAK,UAAU,kBAAkB,CACpC,QAAkB,EAClB,QAAkB,EAClB,WAAqB,EACrB,EAAE,OAAO,EAA4B;IAErC,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,gFAAgF;QAChF,OAAO;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI,kBAAQ,EAAE;SACxB,CAAA;IACL,CAAC;IAED,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACjD,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;IACxG,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;YAC5C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE;YAC1B,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;YACxB,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE;YAC1B,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;YAC/B,MAAM,EAAE,QAAQ;SACnB,CAAC,CAAA;QAEF,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACvC,CAAC;IAED,OAAO;QACH,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,kBAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,kBAAQ,EAAE;KAC7F,CAAA;AACL,CAAC"}
|
package/dist/util/index.d.ts
CHANGED
package/dist/util/index.js
CHANGED
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./is-sn-scope"), exports);
|
|
18
18
|
__exportStar(require("./get-file-type"), exports);
|
|
19
|
+
__exportStar(require("./delete-multiple"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
package/dist/util/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,kDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,kDAA+B;AAC/B,oDAAiC"}
|
package/now.config.schema.json
CHANGED
|
@@ -156,6 +156,21 @@
|
|
|
156
156
|
"pattern": "^[a-z_\\d]+$"
|
|
157
157
|
}
|
|
158
158
|
},
|
|
159
|
+
"trustedModules": {
|
|
160
|
+
"type": "array",
|
|
161
|
+
"description": "List of npm module patterns to mark as trusted. Trusted modules will have external_source set to false. Valid patterns: fully qualified package names (e.g., 'lodash', '@servicenow/sdk') or organization prefixes with wildcard (e.g., '@servicenow/*'). Blanket wildcards like '*' are not allowed.",
|
|
162
|
+
"items": {
|
|
163
|
+
"type": "string",
|
|
164
|
+
"minLength": 1
|
|
165
|
+
},
|
|
166
|
+
"default": [],
|
|
167
|
+
"examples": [
|
|
168
|
+
[
|
|
169
|
+
"@servicenow/*",
|
|
170
|
+
"lodash"
|
|
171
|
+
]
|
|
172
|
+
]
|
|
173
|
+
},
|
|
159
174
|
"dependencies": {
|
|
160
175
|
"type": "object",
|
|
161
176
|
"description": "Reference dependencies on other ServiceNow application tables and entities, organized by scope",
|
|
@@ -406,6 +421,29 @@
|
|
|
406
421
|
"default": "bootstrap",
|
|
407
422
|
"description": "Artifact type built for table definitions. Traditional bootstrap or separate component records."
|
|
408
423
|
},
|
|
424
|
+
"packageResolverVersion": {
|
|
425
|
+
"type": "string",
|
|
426
|
+
"enum": [
|
|
427
|
+
"1.0.0",
|
|
428
|
+
"2.0.0"
|
|
429
|
+
],
|
|
430
|
+
"default": "1.0.0",
|
|
431
|
+
"description": "Rhino module resolver version. Must be 2.0.0+ for Global apps"
|
|
432
|
+
},
|
|
433
|
+
"hoistDependencies": {
|
|
434
|
+
"type": "boolean",
|
|
435
|
+
"default": "true",
|
|
436
|
+
"description": "Hoist all dependencies to root node_modules instead of preserving module paths. Set to 'false' to preserve conflicting dependency versions"
|
|
437
|
+
},
|
|
438
|
+
"type": {
|
|
439
|
+
"type": "string",
|
|
440
|
+
"enum": [
|
|
441
|
+
"package",
|
|
442
|
+
"configuration"
|
|
443
|
+
],
|
|
444
|
+
"default": "package",
|
|
445
|
+
"description": "Whether this project represents a scoped/global app package or a set of a record changes"
|
|
446
|
+
},
|
|
409
447
|
"taxonomy": {
|
|
410
448
|
"type": "object",
|
|
411
449
|
"description": "Configuration for taxonomy-based file organization",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@servicenow/sdk-build-core",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.3.0",
|
|
4
4
|
"description": "ServiceNow SDK Build System Core Libraries",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -13,26 +13,27 @@
|
|
|
13
13
|
".": "./dist/index.js"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"
|
|
16
|
+
"ci-info": "4.4.0",
|
|
17
|
+
"fast-glob": "3.3.3",
|
|
18
|
+
"fflate": "0.8.2",
|
|
17
19
|
"json5": "2.2.3",
|
|
18
|
-
"jsonschema": "1.
|
|
19
|
-
"lodash": "4.17.
|
|
20
|
+
"jsonschema": "1.5.0",
|
|
21
|
+
"lodash": "4.17.23",
|
|
20
22
|
"pathe": "1.1.2",
|
|
21
23
|
"prettier": "3.6.1",
|
|
22
24
|
"readable-stream": "4.5.2",
|
|
23
25
|
"ts-morph": "23.0.0",
|
|
24
26
|
"vscode-languageserver": "9.0.1",
|
|
25
|
-
"xmlbuilder2": "3.1.1",
|
|
26
27
|
"xml-js": "1.6.11",
|
|
28
|
+
"xmlbuilder2": "3.1.1",
|
|
27
29
|
"zod": "3.22.4",
|
|
28
|
-
"
|
|
29
|
-
"@servicenow/sdk-core": "4.2.0"
|
|
30
|
+
"@servicenow/sdk-core": "4.3.0"
|
|
30
31
|
},
|
|
31
32
|
"overrides": {
|
|
32
33
|
"micromatch": "4.0.7"
|
|
33
34
|
},
|
|
34
35
|
"devDependencies": {
|
|
35
|
-
"@types/lodash": "4.17.
|
|
36
|
+
"@types/lodash": "4.17.23",
|
|
36
37
|
"@types/readable-stream": "4.0.15",
|
|
37
38
|
"type-fest": "4.26.1"
|
|
38
39
|
},
|
|
@@ -41,7 +42,10 @@
|
|
|
41
42
|
"pnpm": ">=10.8.0"
|
|
42
43
|
},
|
|
43
44
|
"scripts": {
|
|
44
|
-
"build": "tsc -b",
|
|
45
|
+
"build": "tsc -b && tsx esbuild.config.ts",
|
|
46
|
+
"build:production": "tsc -b && tsx esbuild.config.ts",
|
|
47
|
+
"bundle": "tsc -b && tsx esbuild.config.ts",
|
|
48
|
+
"bundle:production": "tsc -b && tsx esbuild.config.ts",
|
|
45
49
|
"clean": "tsc -b --clean",
|
|
46
50
|
"watch": "tsc -b -w",
|
|
47
51
|
"test": "export NODE_OPTIONS=\"--max-old-space-size=8192 --experimental-vm-modules\" && jest --colors --reporters=default --no-cache --logHeapUsage"
|
package/src/compiler.ts
CHANGED
|
@@ -65,6 +65,22 @@ export class Compiler extends ts.Project {
|
|
|
65
65
|
// TODO: move this somewhere better, it doesn't work when I put the file contents in packages/core/src/global
|
|
66
66
|
this.addGlobalModuleExtensions()
|
|
67
67
|
this.addFluentSourceFilesAtPaths(sourceFilePaths)
|
|
68
|
+
// FIXME: we need to find a better way to make the compiler aware of available modules
|
|
69
|
+
// FIXME: change how imports are generated without relying on fixMissingImports
|
|
70
|
+
this.addAvailableModules()
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
addAvailableModules() {
|
|
74
|
+
const moduleContent = `
|
|
75
|
+
import '@servicenow/sdk/global'
|
|
76
|
+
import '@servicenow/sdk/core'
|
|
77
|
+
import '@servicenow/sdk/automation'
|
|
78
|
+
`
|
|
79
|
+
const generatedAvailableModulesFilePath = path.join(this.rootDir, '$$GENERATED$$_available_modules.ts')
|
|
80
|
+
this.createSourceFile(generatedAvailableModulesFilePath, moduleContent, {
|
|
81
|
+
overwrite: true,
|
|
82
|
+
scriptKind: ts.ScriptKind.TS,
|
|
83
|
+
})
|
|
68
84
|
}
|
|
69
85
|
|
|
70
86
|
addGlobalTableDefinitionFile() {
|
|
@@ -156,7 +172,7 @@ declare module '*.html' {
|
|
|
156
172
|
.getPreEmitDiagnostics()
|
|
157
173
|
.map((diagnostic) => {
|
|
158
174
|
try {
|
|
159
|
-
return new TypeScriptDiagnostic(diagnostic)
|
|
175
|
+
return new TypeScriptDiagnostic(diagnostic, this.improveMissingPropertiesDiagnostic(diagnostic))
|
|
160
176
|
} catch (e) {
|
|
161
177
|
return undefined
|
|
162
178
|
}
|
|
@@ -164,6 +180,28 @@ declare module '*.html' {
|
|
|
164
180
|
.filter((d) => d) as TypeScriptDiagnostic[]
|
|
165
181
|
}
|
|
166
182
|
|
|
183
|
+
private improveMissingPropertiesDiagnostic(diagnostic: ts.Diagnostic): string | undefined {
|
|
184
|
+
const messageText = flattenDiagnosticMessage(diagnostic)
|
|
185
|
+
|
|
186
|
+
const missingSinglePropertyPattern =
|
|
187
|
+
/Property '([a-z_]+)' is missing in type '{.*}' but required in type 'Data<"([a-z_]+)">'./
|
|
188
|
+
const missingSingleMatch = messageText.match(missingSinglePropertyPattern)
|
|
189
|
+
if (missingSingleMatch) {
|
|
190
|
+
const [_, propertyName, tableName] = missingSingleMatch
|
|
191
|
+
return `Missing mandatory ${tableName} field: ${propertyName}`
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
const missingMultiplePropertiesPattern =
|
|
195
|
+
/Type '{.*}' is missing the following properties from type 'Data<"([a-z_]+)">': (.*)\s*$/
|
|
196
|
+
const missingMultiplesMatch = messageText.match(missingMultiplePropertiesPattern)
|
|
197
|
+
if (missingMultiplesMatch) {
|
|
198
|
+
const [_, tableName, properties] = missingMultiplesMatch
|
|
199
|
+
return `Missing mandatory ${tableName} fields: ${properties}`
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
return undefined
|
|
203
|
+
}
|
|
204
|
+
|
|
167
205
|
getOrCreateSourceFile(path: string, options?: ts.SourceFileCreateOptions): ts.SourceFile {
|
|
168
206
|
return (
|
|
169
207
|
this.getSourceFile(path) ??
|
|
@@ -279,6 +317,56 @@ declare module '*.html' {
|
|
|
279
317
|
return this.generatedTableFilePath === sourcePath
|
|
280
318
|
}
|
|
281
319
|
|
|
320
|
+
// Cache for table column types that need coercion (boolean/number only)
|
|
321
|
+
private tableColumnTypesCache = new Map<string, Map<string, 'boolean' | 'number' | 'array' | 'array-optional'>>()
|
|
322
|
+
|
|
323
|
+
getTableColumnTypes(tableName: string): Map<string, 'boolean' | 'number' | 'array' | 'array-optional'> | undefined {
|
|
324
|
+
// Return cached value if available
|
|
325
|
+
if (this.tableColumnTypesCache.has(tableName)) {
|
|
326
|
+
return this.tableColumnTypesCache.get(tableName)
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
// Lazily resolve and cache on first access
|
|
330
|
+
const tempFilePath = path.join(this.rootDir, 'src', '$$TEMP_DATA_RESOLVER$$.ts')
|
|
331
|
+
const typeDeclaration = `type T = import('@servicenow/sdk/core').Data<'${tableName}'>`
|
|
332
|
+
|
|
333
|
+
const tempSource = this.createSourceFile(tempFilePath, typeDeclaration, {
|
|
334
|
+
overwrite: true,
|
|
335
|
+
scriptKind: ts.ScriptKind.TS,
|
|
336
|
+
})
|
|
337
|
+
|
|
338
|
+
try {
|
|
339
|
+
const typeAlias = tempSource.getTypeAlias('T')
|
|
340
|
+
if (!typeAlias) {
|
|
341
|
+
return undefined
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
const resolvedType = typeAlias.getType()
|
|
345
|
+
const properties = resolvedType.getProperties()
|
|
346
|
+
const columnTypes = new Map<string, 'boolean' | 'number' | 'array' | 'array-optional'>()
|
|
347
|
+
|
|
348
|
+
properties.forEach((property) => {
|
|
349
|
+
const propType = property.getTypeAtLocation(typeAlias)
|
|
350
|
+
const typeText = propType.getText()
|
|
351
|
+
|
|
352
|
+
if (typeText === 'boolean' || typeText === 'number') {
|
|
353
|
+
columnTypes.set(property.getName(), typeText)
|
|
354
|
+
} else if (typeText.match(/^\(.*\)\[\]$/)) {
|
|
355
|
+
// Matches `(...)[]` -> this field should always be an array
|
|
356
|
+
columnTypes.set(property.getName(), 'array')
|
|
357
|
+
} else if (typeText.match(/^.*\[\]$/)) {
|
|
358
|
+
// Matches `[]` -> this field may be an array or a single value
|
|
359
|
+
columnTypes.set(property.getName(), 'array-optional')
|
|
360
|
+
}
|
|
361
|
+
})
|
|
362
|
+
|
|
363
|
+
this.tableColumnTypesCache.set(tableName, columnTypes)
|
|
364
|
+
return columnTypes
|
|
365
|
+
} finally {
|
|
366
|
+
this.removeSourceFile(tempSource)
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
|
|
282
370
|
private createModuleProject(fs: FileSystem, tsConfigPath?: string) {
|
|
283
371
|
return new ts.Project({
|
|
284
372
|
fileSystem: new TsMorphFileSystemWrapper(fs),
|
|
@@ -360,20 +448,42 @@ declare module '*.html' {
|
|
|
360
448
|
}
|
|
361
449
|
}
|
|
362
450
|
|
|
451
|
+
function flattenDiagnosticMessage(diagnostic: ts.Diagnostic) {
|
|
452
|
+
const message = diagnostic.getMessageText()
|
|
453
|
+
|
|
454
|
+
if (typeof message === 'string') {
|
|
455
|
+
return message
|
|
456
|
+
} else {
|
|
457
|
+
const flattenMessage = (msg: ts.DiagnosticMessageChain): string => {
|
|
458
|
+
let result = msg.getMessageText()
|
|
459
|
+
if (msg.getNext()) {
|
|
460
|
+
const next = msg.getNext()
|
|
461
|
+
if (Array.isArray(next)) {
|
|
462
|
+
result += `\n ${next.map(flattenMessage).join(' ')}`
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
return result
|
|
466
|
+
}
|
|
467
|
+
return flattenMessage(message)
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
363
471
|
export class TypeScriptDiagnostic extends Diagnostic {
|
|
364
|
-
constructor(
|
|
365
|
-
|
|
366
|
-
|
|
472
|
+
constructor(
|
|
473
|
+
private readonly diagnostic: ts.Diagnostic,
|
|
474
|
+
customMessage?: string
|
|
475
|
+
) {
|
|
367
476
|
const start = diagnostic.getStart() ?? 0
|
|
368
477
|
const end = start + (diagnostic.getLength() ?? 0)
|
|
369
478
|
const file = diagnostic.getSourceFile()
|
|
479
|
+
const finalMessage = customMessage ?? flattenDiagnosticMessage(diagnostic)
|
|
370
480
|
|
|
371
481
|
if (!file) {
|
|
372
|
-
throw new Error(`TypeScript diagnostic does not have a source file (Message: ${
|
|
482
|
+
throw new Error(`TypeScript diagnostic does not have a source file (Message: ${finalMessage})`)
|
|
373
483
|
}
|
|
374
484
|
|
|
375
485
|
super(
|
|
376
|
-
|
|
486
|
+
finalMessage,
|
|
377
487
|
file,
|
|
378
488
|
{ start, end },
|
|
379
489
|
diagnostic.getCode(),
|
|
@@ -383,6 +493,10 @@ export class TypeScriptDiagnostic extends Diagnostic {
|
|
|
383
493
|
}
|
|
384
494
|
|
|
385
495
|
public override asTypeScriptDiagnostic(): ts.ts.Diagnostic {
|
|
386
|
-
|
|
496
|
+
const { relatedInformation, ...diagnosticWithoutRelated } = this.diagnostic.compilerObject
|
|
497
|
+
return {
|
|
498
|
+
...diagnosticWithoutRelated,
|
|
499
|
+
messageText: this.message,
|
|
500
|
+
}
|
|
387
501
|
}
|
|
388
502
|
}
|
|
@@ -39,7 +39,8 @@ export const dependenciesSchema = z.union([oldDependenciesSchema, flatDependenci
|
|
|
39
39
|
* "tables": ["sn_ace_app_config"]
|
|
40
40
|
* },
|
|
41
41
|
* "x_example_app": {
|
|
42
|
-
* "roles": ["x_example_app.cool"]
|
|
42
|
+
* "roles": ["x_example_app.cool"],
|
|
43
|
+
* "automation.actions": "*"
|
|
43
44
|
* }
|
|
44
45
|
* }
|
|
45
46
|
* ```
|
package/src/now-config.ts
CHANGED
|
@@ -58,11 +58,9 @@ const NowConfigSchema = z
|
|
|
58
58
|
npmUpdateCheck: z.literal(false).or(z.number()).default(10),
|
|
59
59
|
dependencies: dependenciesSchema,
|
|
60
60
|
ignoreTransformTableList: z.array(z.string()).default([]),
|
|
61
|
+
trustedModules: z.array(z.string()).default([]),
|
|
61
62
|
tsconfigPath: z.string().optional(),
|
|
62
|
-
scripts: z.record(z.string(), z.string()).default({
|
|
63
|
-
prebuild: 'now.prebuild.mjs',
|
|
64
|
-
postbuild: 'now.postbuild.mjs',
|
|
65
|
-
}),
|
|
63
|
+
scripts: z.record(z.string(), z.string()).default({}),
|
|
66
64
|
tableOutputFormat: z.enum(['bootstrap', 'component']).default('bootstrap'),
|
|
67
65
|
|
|
68
66
|
moduleDir: z.string().optional(), // Deprecated
|
|
@@ -118,6 +116,7 @@ const NowConfigSchema = z
|
|
|
118
116
|
| 'npmUpdateCheck'
|
|
119
117
|
| 'dependencies'
|
|
120
118
|
| 'ignoreTransformTableList'
|
|
119
|
+
| 'trustedModules'
|
|
121
120
|
| 'modulePaths'
|
|
122
121
|
| 'serverModulesIncludePatterns'
|
|
123
122
|
| 'serverModulesExcludePatterns'
|
package/src/plugins/cache.ts
CHANGED
|
@@ -1,41 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
constructor(private readonly value: T) {}
|
|
3
|
-
|
|
4
|
-
unwrap(): T {
|
|
5
|
-
return this.value
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
isError(): this is ErrorEntry {
|
|
9
|
-
return false
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
class ErrorEntry {
|
|
14
|
-
constructor(private readonly error: unknown) {}
|
|
15
|
-
|
|
16
|
-
unwrap(): unknown {
|
|
17
|
-
return this.error
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
isError(): this is ErrorEntry {
|
|
21
|
-
return true
|
|
22
|
-
}
|
|
23
|
-
}
|
|
1
|
+
type CacheEntry<V> = { success: true; value: V } | { success: false; error: unknown }
|
|
24
2
|
|
|
25
3
|
export class Cache<K extends object, V> {
|
|
26
|
-
private cache = new WeakMap()
|
|
4
|
+
private cache = new WeakMap<K, CacheEntry<V>>()
|
|
27
5
|
|
|
28
|
-
get(key: K):
|
|
6
|
+
get(key: K): CacheEntry<V> | undefined {
|
|
29
7
|
return this.cache.get(key)
|
|
30
8
|
}
|
|
31
9
|
|
|
32
10
|
put<const T extends V>(key: K, value: T): T {
|
|
33
|
-
this.cache.set(key,
|
|
11
|
+
this.cache.set(key, { success: true, value })
|
|
34
12
|
return value
|
|
35
13
|
}
|
|
36
14
|
|
|
37
15
|
error<const T>(key: K, error: T): T {
|
|
38
|
-
this.cache.set(key,
|
|
16
|
+
this.cache.set(key, { success: false, error })
|
|
39
17
|
return error
|
|
40
18
|
}
|
|
41
19
|
|