@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
|
@@ -14,10 +14,11 @@ exports.DATA_HELPER_NAMES = {
|
|
|
14
14
|
TEMPLATE_VALUE: 'TemplateValue',
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
|
-
* Base class for
|
|
17
|
+
* Base class for data helper shapes that extend CallExpressionShape.
|
|
18
|
+
* These shapes represent call expressions like Duration(), Time(), etc.
|
|
18
19
|
* Provides common equals implementation that compares via toString().
|
|
19
20
|
*/
|
|
20
|
-
class
|
|
21
|
+
class DataHelperShape extends shape_1.CallExpressionShape {
|
|
21
22
|
equals(other) {
|
|
22
23
|
if (typeof other === 'string') {
|
|
23
24
|
return this.toString().getValue() === other;
|
|
@@ -31,44 +32,26 @@ class SerializableObjectShape extends shape_1.ObjectShape {
|
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
34
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
35
|
+
* Shape representing a duration value.
|
|
36
|
+
* Used with Duration() helper - represents Duration({ days, hours, minutes, seconds }) call expression.
|
|
36
37
|
*/
|
|
37
|
-
class
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
38
|
+
class DurationShape extends DataHelperShape {
|
|
39
|
+
constructor({ source, value }) {
|
|
40
|
+
let durationValue;
|
|
41
|
+
if (value instanceof shape_1.ObjectShape) {
|
|
42
|
+
const picked = value.pick(['days', 'hours', 'minutes', 'seconds']);
|
|
43
|
+
durationValue = Object.fromEntries(Object.entries(picked).map(([k, v]) => [
|
|
44
|
+
k,
|
|
45
|
+
shape_1.Shape.from(source, v).asNumber(`fields in Duration object can only contain numbers, got ${typeof v}`),
|
|
46
|
+
]));
|
|
44
47
|
}
|
|
45
48
|
else {
|
|
46
|
-
|
|
49
|
+
durationValue = value;
|
|
47
50
|
}
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Shape representing a duration value.
|
|
52
|
-
* Used with Duration() helper - stores object with days, hours, minutes, seconds.
|
|
53
|
-
*/
|
|
54
|
-
class DurationShape extends SerializableObjectShape {
|
|
55
|
-
constructor({ source, value }) {
|
|
56
|
-
super({ source, properties: value });
|
|
51
|
+
super({ source, callee: exports.DATA_HELPER_NAMES.DURATION, args: [durationValue] });
|
|
57
52
|
}
|
|
58
53
|
getDuration() {
|
|
59
|
-
return
|
|
60
|
-
}
|
|
61
|
-
getDays() {
|
|
62
|
-
return this.getDuration().days ?? 0;
|
|
63
|
-
}
|
|
64
|
-
getHours() {
|
|
65
|
-
return this.getDuration().hours ?? 0;
|
|
66
|
-
}
|
|
67
|
-
getMinutes() {
|
|
68
|
-
return this.getDuration().minutes ?? 0;
|
|
69
|
-
}
|
|
70
|
-
getSeconds() {
|
|
71
|
-
return this.getDuration().seconds ?? 0;
|
|
54
|
+
return this.getArgument(0).asObject().getValue();
|
|
72
55
|
}
|
|
73
56
|
/**
|
|
74
57
|
* Returns a StringShape with the ServiceNow serialized format.
|
|
@@ -79,43 +62,66 @@ class DurationShape extends SerializableObjectShape {
|
|
|
79
62
|
const formatted = (0, time_1.formatDateToPlatformFormat)(date);
|
|
80
63
|
return shape_1.Shape.from(this.getSource(), formatted).asString();
|
|
81
64
|
}
|
|
82
|
-
static from(source,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
65
|
+
static from(source, value) {
|
|
66
|
+
if (value instanceof shape_1.StringShape) {
|
|
67
|
+
const parsedValue = (0, time_1.parseGlideDuration)(value.getValue());
|
|
68
|
+
if (!parsedValue) {
|
|
69
|
+
throw new Error(`Invalid duration value: ${value.getValue()}`);
|
|
70
|
+
}
|
|
71
|
+
return new DurationShape({
|
|
72
|
+
source,
|
|
73
|
+
value: parsedValue,
|
|
74
|
+
});
|
|
86
75
|
}
|
|
87
76
|
return new DurationShape({
|
|
88
77
|
source,
|
|
89
|
-
value:
|
|
78
|
+
value: value,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Creates a DurationShape representing zero duration.
|
|
83
|
+
* Use this when the platform returns an empty or default duration value.
|
|
84
|
+
* @example DurationShape.zero(source) // Returns Duration({ seconds: 0 })
|
|
85
|
+
*/
|
|
86
|
+
static zero(source) {
|
|
87
|
+
return new DurationShape({
|
|
88
|
+
source,
|
|
89
|
+
value: { seconds: 0 },
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
exports.DurationShape = DurationShape;
|
|
94
94
|
/**
|
|
95
95
|
* Shape representing a time of day value.
|
|
96
|
-
* Used with Time() helper -
|
|
96
|
+
* Used with Time() helper - represents Time({ hours, minutes, seconds }, timezone?) call expression.
|
|
97
97
|
*/
|
|
98
|
-
class TimeShape extends
|
|
98
|
+
class TimeShape extends DataHelperShape {
|
|
99
99
|
timeZone;
|
|
100
|
-
constructor({ source, value, timeZone }) {
|
|
101
|
-
|
|
102
|
-
|
|
100
|
+
constructor({ source, value, timeZone, }) {
|
|
101
|
+
let timeValue;
|
|
102
|
+
if (value instanceof shape_1.ObjectShape) {
|
|
103
|
+
const picked = value.pick(['hours', 'minutes', 'seconds']);
|
|
104
|
+
timeValue = Object.fromEntries(Object.entries(picked).map(([k, v]) => [
|
|
105
|
+
k,
|
|
106
|
+
shape_1.Shape.from(source, v).asNumber(`fields in Time object can only contain numbers, got ${typeof v}`),
|
|
107
|
+
]));
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
timeValue = value;
|
|
111
|
+
}
|
|
112
|
+
const args = [timeValue];
|
|
113
|
+
if (timeZone) {
|
|
114
|
+
args.push(timeZone);
|
|
115
|
+
}
|
|
116
|
+
super({ source, callee: exports.DATA_HELPER_NAMES.TIME, args });
|
|
117
|
+
this.timeZone = timeZone;
|
|
103
118
|
}
|
|
104
119
|
getTimeData() {
|
|
105
|
-
return
|
|
120
|
+
return this.getArgument(0).asObject().getValue();
|
|
106
121
|
}
|
|
107
122
|
getTimeZone() {
|
|
108
123
|
return this.timeZone;
|
|
109
124
|
}
|
|
110
|
-
getHours() {
|
|
111
|
-
return this.getTimeData().hours ?? 0;
|
|
112
|
-
}
|
|
113
|
-
getMinutes() {
|
|
114
|
-
return this.getTimeData().minutes ?? 0;
|
|
115
|
-
}
|
|
116
|
-
getSeconds() {
|
|
117
|
-
return this.getTimeData().seconds ?? 0;
|
|
118
|
-
}
|
|
119
125
|
/**
|
|
120
126
|
* Returns a StringShape with the ServiceNow serialized format.
|
|
121
127
|
* @example '1970-01-01 14:30:00' for { hours: 14, minutes: 30 }
|
|
@@ -125,14 +131,21 @@ class TimeShape extends SerializableObjectShape {
|
|
|
125
131
|
const formatted = (0, time_1.formatDateToPlatformFormat)(date);
|
|
126
132
|
return shape_1.Shape.from(this.getSource(), formatted).toString();
|
|
127
133
|
}
|
|
128
|
-
static from(source,
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
134
|
+
static from(source, value, timeZone) {
|
|
135
|
+
if (value instanceof shape_1.StringShape) {
|
|
136
|
+
const parsedValue = (0, time_1.parseGlideTime)(value.getValue(), timeZone);
|
|
137
|
+
if (!parsedValue) {
|
|
138
|
+
throw new Error(`Invalid time value: ${value.getValue()}`);
|
|
139
|
+
}
|
|
140
|
+
return new TimeShape({
|
|
141
|
+
source,
|
|
142
|
+
value: parsedValue,
|
|
143
|
+
timeZone,
|
|
144
|
+
});
|
|
132
145
|
}
|
|
133
146
|
return new TimeShape({
|
|
134
147
|
source,
|
|
135
|
-
value:
|
|
148
|
+
value: value,
|
|
136
149
|
timeZone,
|
|
137
150
|
});
|
|
138
151
|
}
|
|
@@ -140,14 +153,14 @@ class TimeShape extends SerializableObjectShape {
|
|
|
140
153
|
exports.TimeShape = TimeShape;
|
|
141
154
|
/**
|
|
142
155
|
* Shape representing a field list.
|
|
143
|
-
* Used with FieldList() helper -
|
|
156
|
+
* Used with FieldList() helper - represents FieldList(["field1", "field2"]) call expression.
|
|
144
157
|
*/
|
|
145
|
-
class FieldListShape extends
|
|
158
|
+
class FieldListShape extends DataHelperShape {
|
|
146
159
|
constructor({ source, fields }) {
|
|
147
|
-
super({ source,
|
|
160
|
+
super({ source, callee: exports.DATA_HELPER_NAMES.FIELD_LIST, args: [fields] });
|
|
148
161
|
}
|
|
149
162
|
getFields() {
|
|
150
|
-
return
|
|
163
|
+
return this.getArgument(0).asArray().getElements();
|
|
151
164
|
}
|
|
152
165
|
/**
|
|
153
166
|
* Returns a StringShape with the ServiceNow serialized format.
|
|
@@ -171,17 +184,14 @@ class FieldListShape extends SerializableArrayShape {
|
|
|
171
184
|
exports.FieldListShape = FieldListShape;
|
|
172
185
|
/**
|
|
173
186
|
* Shape representing a template value (ServiceNow encoded query format).
|
|
174
|
-
* Used with TemplateValue() helper -
|
|
187
|
+
* Used with TemplateValue() helper - represents TemplateValue({ field: value }) call expression.
|
|
175
188
|
*/
|
|
176
|
-
class TemplateValueShape extends
|
|
189
|
+
class TemplateValueShape extends DataHelperShape {
|
|
177
190
|
constructor({ source, value }) {
|
|
178
|
-
super({ source,
|
|
179
|
-
}
|
|
180
|
-
getFields() {
|
|
181
|
-
return Object.keys(this.getValue());
|
|
191
|
+
super({ source, callee: exports.DATA_HELPER_NAMES.TEMPLATE_VALUE, args: [value] });
|
|
182
192
|
}
|
|
183
|
-
|
|
184
|
-
return this.
|
|
193
|
+
getTemplateValue() {
|
|
194
|
+
return this.getArgument(0).asObject();
|
|
185
195
|
}
|
|
186
196
|
/**
|
|
187
197
|
* Returns a StringShape with the ServiceNow serialized format.
|
|
@@ -190,8 +200,8 @@ class TemplateValueShape extends SerializableObjectShape {
|
|
|
190
200
|
* @example 'name=value^^with^^caret^EQ' for { name: 'value^with^caret' }
|
|
191
201
|
*/
|
|
192
202
|
toString() {
|
|
193
|
-
const
|
|
194
|
-
const encoded = entries
|
|
203
|
+
const templateValue = this.getTemplateValue().getValue();
|
|
204
|
+
const encoded = Object.entries(templateValue)
|
|
195
205
|
.map(([key, value]) => {
|
|
196
206
|
// Escape single ^ as ^^ in values
|
|
197
207
|
const escapedValue = String(value).replace(/\^/g, '^^');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-shape.js","sourceRoot":"","sources":["../../src/plugins/data-shape.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"data-shape.js","sourceRoot":"","sources":["../../src/plugins/data-shape.ts"],"names":[],"mappings":";;;AAyRA,oCAiBC;AA1SD,mCAA8E;AAE9E,iCAMe;AAGf;;GAEG;AACU,QAAA,iBAAiB,GAAG;IAC7B,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,WAAW;IACvB,cAAc,EAAE,eAAe;CACzB,CAAA;AAEV;;;;GAIG;AACH,MAAe,eAAgB,SAAQ,2BAAmB;IAG7C,MAAM,CAAC,KAAc;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAA;QAC/C,CAAC;aAAM,IAAI,KAAK,YAAY,aAAK,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACJ,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9B,CAAC;IACL,CAAC;CACJ;AAED;;;GAGG;AACH,MAAa,aAAc,SAAQ,eAAe;IAC9C,YAAY,EAAE,MAAM,EAAE,KAAK,EAAqD;QAC5E,IAAI,aAAuB,CAAA;QAC3B,IAAI,KAAK,YAAY,mBAAW,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;YAClE,aAAa,GAAG,MAAM,CAAC,WAAW,CAC9B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnC,CAAC;gBACD,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAC1B,2DAA2D,OAAO,CAAC,EAAE,CACxE;aACJ,CAAC,CACO,CAAA;QACjB,CAAC;aAAM,CAAC;YACJ,aAAa,GAAG,KAAK,CAAA;QACzB,CAAC;QACD,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IAChF,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAc,CAAA;IAChE,CAAC;IAED;;;OAGG;IACM,QAAQ;QACb,MAAM,IAAI,GAAG,IAAA,yBAAkB,EAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACnD,MAAM,SAAS,GAAG,IAAA,iCAA0B,EAAC,IAAI,CAAC,CAAA;QAClD,OAAO,aAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC7D,CAAC;IAED,MAAM,CAAU,IAAI,CAAC,MAAc,EAAE,KAAgC;QACjE,IAAI,KAAK,YAAY,mBAAW,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAA,yBAAkB,EAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;YACxD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YAClE,CAAC;YACD,OAAO,IAAI,aAAa,CAAC;gBACrB,MAAM;gBACN,KAAK,EAAE,WAAW;aACrB,CAAC,CAAA;QACN,CAAC;QAED,OAAO,IAAI,aAAa,CAAC;YACrB,MAAM;YACN,KAAK,EAAE,KAAK;SACf,CAAC,CAAA;IACN,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,CAAC,MAAc;QACtB,OAAO,IAAI,aAAa,CAAC;YACrB,MAAM;YACN,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;SACxB,CAAC,CAAA;IACN,CAAC;CACJ;AA9DD,sCA8DC;AAED;;;GAGG;AACH,MAAa,SAAU,SAAQ,eAAe;IACzB,QAAQ,CAAoB;IAE7C,YAAY,EACR,MAAM,EACN,KAAK,EACL,QAAQ,GACwE;QAChF,IAAI,SAAoB,CAAA;QACxB,IAAI,KAAK,YAAY,mBAAW,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;YAC1D,SAAS,GAAG,MAAM,CAAC,WAAW,CAC1B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;gBACnC,CAAC;gBACD,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,uDAAuD,OAAO,CAAC,EAAE,CAAC;aACpG,CAAC,CACQ,CAAA;QAClB,CAAC;aAAM,CAAC;YACJ,SAAS,GAAG,KAAK,CAAA;QACrB,CAAC;QACD,MAAM,IAAI,GAAc,CAAC,SAAS,CAAC,CAAA;QACnC,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACvB,CAAC;QACD,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACvD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAe,CAAA;IACjE,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,QAAQ,CAAA;IACxB,CAAC;IAED;;;OAGG;IACM,QAAQ;QACb,MAAM,IAAI,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC9D,MAAM,SAAS,GAAG,IAAA,iCAA0B,EAAC,IAAI,CAAC,CAAA;QAClD,OAAO,aAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC7D,CAAC;IAED,MAAM,CAAU,IAAI,CAAC,MAAc,EAAE,KAAgC,EAAE,QAAiB;QACpF,IAAI,KAAK,YAAY,mBAAW,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAA,qBAAc,EAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAA;YAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YAC9D,CAAC;YACD,OAAO,IAAI,SAAS,CAAC;gBACjB,MAAM;gBACN,KAAK,EAAE,WAAW;gBAClB,QAAQ;aACX,CAAC,CAAA;QACN,CAAC;QAED,OAAO,IAAI,SAAS,CAAC;YACjB,MAAM;YACN,KAAK,EAAE,KAAK;YACZ,QAAQ;SACX,CAAC,CAAA;IACN,CAAC;CACJ;AAjED,8BAiEC;AAED;;;GAGG;AACH,MAAa,cAAe,SAAQ,eAAe;IAC/C,YAAY,EAAE,MAAM,EAAE,MAAM,EAAuC;QAC/D,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAA;IACtD,CAAC;IAED;;;OAGG;IACM,QAAQ;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;QAChH,OAAO,aAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACpE,CAAC;IAED,MAAM,CAAU,IAAI,CAAC,MAAc,EAAE,MAAmB;QACpD,MAAM,UAAU,GAAG,MAAM;aACpB,QAAQ,EAAE;aACV,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QACrD,OAAO,IAAI,cAAc,CAAC;YACtB,MAAM;YACN,MAAM,EAAE,UAAU;SACrB,CAAC,CAAA;IACN,CAAC;CACJ;AA5BD,wCA4BC;AAED;;;GAGG;AACH,MAAa,kBAAmB,SAAQ,eAAe;IACnD,YAAY,EAAE,MAAM,EAAE,KAAK,EAAiE;QACxF,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAiB,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC9E,CAAC;IAED,gBAAgB;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACzC,CAAC;IAED;;;;;OAKG;IACM,QAAQ;QACb,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAA;QACxD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;aACxC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAClB,kCAAkC;YAClC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YACvD,OAAO,GAAG,GAAG,IAAI,YAAY,EAAE,CAAA;QACnC,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,CAAA;QACd,OAAO,aAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;IACnE,CAAC;IAED,MAAM,CAAU,IAAI,CAAC,MAAc,EAAE,IAAiB;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC7B,qDAAqD;QACrD,2EAA2E;QAC3E,MAAM,iBAAiB,GAAG,eAAe,CAAA;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;QAC5D,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACrC,MAAM,aAAa,GAAuC,EAAE,CAAA;QAE5D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAClC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjB,SAAQ;YACZ,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YACvC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;YAExC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACf,SAAQ;YACZ,CAAC;YACD,yBAAyB;YACzB,aAAa,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;QAC7E,CAAC;QACD,OAAO,IAAI,kBAAkB,CAAC;YAC1B,MAAM;YACN,KAAK,EAAE,aAAa;SACvB,CAAC,CAAA;IACN,CAAC;CACJ;AAvDD,gDAuDC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CACxB,UAAkB,EAClB,KAAkB,EAClB,QAAiB;IAEjB,QAAQ,UAAU,EAAE,CAAC;QACjB,KAAK,yBAAiB,CAAC,QAAQ;YAC3B,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAA;QACvD,KAAK,yBAAiB,CAAC,IAAI;YACvB,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC7D,KAAK,yBAAiB,CAAC,UAAU;YAC7B,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAA;QACxD,KAAK,yBAAiB,CAAC,cAAc;YACjC,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAA;QAC5D;YACI,OAAO,SAAS,CAAA;IACxB,CAAC;AACL,CAAC"}
|
package/dist/plugins/plugin.d.ts
CHANGED
|
@@ -9,6 +9,10 @@ export type Result<Value = unknown> = {
|
|
|
9
9
|
} | {
|
|
10
10
|
success: true;
|
|
11
11
|
value: Value;
|
|
12
|
+
} | {
|
|
13
|
+
success: 'partial';
|
|
14
|
+
value: Value;
|
|
15
|
+
unhandledRecords: Record[];
|
|
12
16
|
};
|
|
13
17
|
export type CommitResult = {
|
|
14
18
|
success: boolean;
|
|
@@ -66,12 +70,43 @@ export type Relationship = {
|
|
|
66
70
|
};
|
|
67
71
|
export type CoalesceStrategy = [string, ...string[]] | ((properties: ObjectShape) => globalThis.Record<string, string | StringShape> | ObjectShape);
|
|
68
72
|
export type FileType = 'fluent' | 'module' | 'json' | 'unknown';
|
|
73
|
+
export type PluginApiDoc = {
|
|
74
|
+
/**
|
|
75
|
+
* The name of the API (e.g., 'BusinessRule', 'Acl', 'Table')
|
|
76
|
+
* This is the callee name used in fluent code.
|
|
77
|
+
*/
|
|
78
|
+
apiName: string;
|
|
79
|
+
/**
|
|
80
|
+
* Uses module-specifier path to the markdown documentation file for this API relative to the SDK root.
|
|
81
|
+
* For example, @servicenow/sdk/docs/BusinessRule/BusinessRule.md
|
|
82
|
+
*/
|
|
83
|
+
docPath: string;
|
|
84
|
+
/**
|
|
85
|
+
* Tags for categorizing and organizing the API documentation
|
|
86
|
+
*/
|
|
87
|
+
tags: string[];
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Manifest structure for API documentation.
|
|
91
|
+
* This is the opinionated format returned by getDocsMetadata().
|
|
92
|
+
*/
|
|
93
|
+
export type DocsManifest = {
|
|
94
|
+
[apiName: string]: {
|
|
95
|
+
docPath: string;
|
|
96
|
+
tags: string[];
|
|
97
|
+
};
|
|
98
|
+
};
|
|
69
99
|
export type PluginConfig<Nodes extends SupportedKindName[] = SupportedKindName[], Shapes extends ShapeClass[] = ShapeClass[], Records extends string[] = string[]> = {
|
|
70
100
|
/**
|
|
71
101
|
* The name of the plugin. Must end with "Plugin" suffix. This name is used in metrics
|
|
72
102
|
* and error messages.
|
|
73
103
|
*/
|
|
74
104
|
name: `${string}Plugin`;
|
|
105
|
+
/**
|
|
106
|
+
* Documentation for the APIs provided by this plugin. This is used to automatically
|
|
107
|
+
* generate documentation that can be retrieved via the getDocsMetadata() method.
|
|
108
|
+
*/
|
|
109
|
+
docs?: PluginApiDoc[];
|
|
75
110
|
/**
|
|
76
111
|
* The TypeScript AST nodes this plugin handles. Plugins that do not introduce new
|
|
77
112
|
* syntax should not need to define any handlers here.
|
|
@@ -327,7 +362,7 @@ export type PluginConfig<Nodes extends SupportedKindName[] = SupportedKindName[]
|
|
|
327
362
|
* @returns A result indicating whether diffing was successful and, if so, a database
|
|
328
363
|
* containing only the changed records
|
|
329
364
|
*/
|
|
330
|
-
diff?: (existing: Database, incoming: Database, context: Context) => Promise<Result<Database>>;
|
|
365
|
+
diff?: (existing: Database, incoming: Database, descendants: Database, context: Context) => Promise<Result<Database>>;
|
|
331
366
|
};
|
|
332
367
|
};
|
|
333
368
|
/**
|
|
@@ -492,6 +527,12 @@ export declare class Plugin {
|
|
|
492
527
|
*/
|
|
493
528
|
static create<const N extends SupportedKindName[], const S extends ShapeClass[]>(config: PluginConfig<N, S>): Plugin;
|
|
494
529
|
getName(): string;
|
|
530
|
+
/**
|
|
531
|
+
* Get documentation metadata for APIs provided by this plugin.
|
|
532
|
+
* Returns a manifest object with raw (unresolved) documentation paths.
|
|
533
|
+
* Path resolution is handled by PluginRegistry.getDocsMetadata() using the isomorphic resolver.
|
|
534
|
+
*/
|
|
535
|
+
getDocsMetadata(): DocsManifest | undefined;
|
|
495
536
|
getDescendants(parent: Record, database: Database): Record[];
|
|
496
537
|
getCoalesceStrategy(table: string): CoalesceStrategy | undefined;
|
|
497
538
|
getCoalesceTables(): string[];
|
|
@@ -553,5 +594,6 @@ export declare class Plugins {
|
|
|
553
594
|
[column: string]: string;
|
|
554
595
|
};
|
|
555
596
|
isEntryPoint(pathOrNode: string | SupportedNode, context: Omit<Context, 'self'>): Promise<boolean>;
|
|
597
|
+
getDocsMetadata(): DocsManifest;
|
|
556
598
|
}
|
|
557
599
|
export {};
|
package/dist/plugins/plugin.js
CHANGED
|
@@ -174,6 +174,24 @@ class Plugin {
|
|
|
174
174
|
getName() {
|
|
175
175
|
return this.config.name;
|
|
176
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Get documentation metadata for APIs provided by this plugin.
|
|
179
|
+
* Returns a manifest object with raw (unresolved) documentation paths.
|
|
180
|
+
* Path resolution is handled by PluginRegistry.getDocsMetadata() using the isomorphic resolver.
|
|
181
|
+
*/
|
|
182
|
+
getDocsMetadata() {
|
|
183
|
+
if (!this.config.docs) {
|
|
184
|
+
return undefined;
|
|
185
|
+
}
|
|
186
|
+
const manifest = {};
|
|
187
|
+
for (const doc of this.config.docs) {
|
|
188
|
+
manifest[doc.apiName] = {
|
|
189
|
+
docPath: doc.docPath,
|
|
190
|
+
tags: doc.tags,
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
return manifest;
|
|
194
|
+
}
|
|
177
195
|
getDescendants(parent, database) {
|
|
178
196
|
const descendantRelationships = Object.entries(this.relationships[parent.getTable()] ?? {}).filter(([, { descendant }]) => descendant);
|
|
179
197
|
const descendants = [];
|
|
@@ -274,7 +292,7 @@ class Plugin {
|
|
|
274
292
|
async nodeToShape(node, context) {
|
|
275
293
|
const entry = this.nodeToShapeCache.get(node.compilerNode);
|
|
276
294
|
if (entry) {
|
|
277
|
-
return entry.
|
|
295
|
+
return entry.success ? entry.value : { success: false };
|
|
278
296
|
}
|
|
279
297
|
try {
|
|
280
298
|
for (const config of this.config.nodes ?? []) {
|
|
@@ -319,7 +337,7 @@ class Plugin {
|
|
|
319
337
|
async shapeToSubclass(shape, context) {
|
|
320
338
|
const entry = this.shapeToSubclassCache.get(shape);
|
|
321
339
|
if (entry) {
|
|
322
|
-
return entry.
|
|
340
|
+
return entry.success ? entry.value : { success: false };
|
|
323
341
|
}
|
|
324
342
|
try {
|
|
325
343
|
for (const config of this.config.shapes ?? []) {
|
|
@@ -348,7 +366,7 @@ class Plugin {
|
|
|
348
366
|
async shapeToRecord(shape, context) {
|
|
349
367
|
const entry = this.shapeToRecordCache.get(shape);
|
|
350
368
|
if (entry) {
|
|
351
|
-
return entry.
|
|
369
|
+
return entry.success ? entry.value : { success: false };
|
|
352
370
|
}
|
|
353
371
|
try {
|
|
354
372
|
for (const config of this.config.shapes ?? []) {
|
|
@@ -412,6 +430,7 @@ class Plugin {
|
|
|
412
430
|
if (creatorOnly && record.getCreator() !== this) {
|
|
413
431
|
continue;
|
|
414
432
|
}
|
|
433
|
+
context.logger.debug(`Database contains ${database.query().length} records for transformation.`);
|
|
415
434
|
context.logger.debug(`Transforming record into shape: ${record.getTable()}.${record.getId().getValue()}`);
|
|
416
435
|
const descendants = this.getDescendants(record, database);
|
|
417
436
|
if (changedOnly) {
|
|
@@ -437,12 +456,28 @@ class Plugin {
|
|
|
437
456
|
database,
|
|
438
457
|
descendants: nonDeletedDescendants,
|
|
439
458
|
});
|
|
459
|
+
// Track unhandled records to avoid marking them as handled
|
|
460
|
+
const unhandledRecords = [];
|
|
461
|
+
const unhandledRecordIds = [];
|
|
462
|
+
if (result.success === 'partial') {
|
|
463
|
+
for (const unhandledRecord of result.unhandledRecords) {
|
|
464
|
+
unhandledRecords.push(unhandledRecord);
|
|
465
|
+
unhandledRecordIds.push(unhandledRecord.getId().getValue());
|
|
466
|
+
}
|
|
467
|
+
}
|
|
440
468
|
if (result.success) {
|
|
441
469
|
success = true;
|
|
442
470
|
handledRecords.insert(record);
|
|
443
471
|
shapes.push(...[result.value].flat());
|
|
472
|
+
// Mark all descendants as handled
|
|
444
473
|
for (const descendant of [...deletedDescendants, ...nonDeletedDescendants]) {
|
|
445
|
-
|
|
474
|
+
if (!unhandledRecordIds.includes(descendant.getId().getValue())) {
|
|
475
|
+
handledRecords.insert(descendant);
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
context.logger.debug(`Plugin ${this.getName()} deferred handling of records: ${unhandledRecords.map((r) => r.getTable() + '_' + r.getId().getValue()).join(', ')}`);
|
|
479
|
+
if (unhandledRecords.length > 0) {
|
|
480
|
+
return { success: 'partial', value: shapes, unhandledRecords };
|
|
446
481
|
}
|
|
447
482
|
}
|
|
448
483
|
}
|
|
@@ -476,7 +511,7 @@ class Plugin {
|
|
|
476
511
|
...[incoming.resolve(record.getId())].filter((r) => r !== undefined),
|
|
477
512
|
...incoming.query().filter((r) => descendantsDatabase.resolve(r.getId()) !== undefined),
|
|
478
513
|
];
|
|
479
|
-
const result = await diff.bind(this)(new database_1.Database(existingTree), new database_1.Database(incomingTree), {
|
|
514
|
+
const result = await diff.bind(this)(new database_1.Database(existingTree), new database_1.Database(incomingTree), new database_1.Database(descendants), {
|
|
480
515
|
...context,
|
|
481
516
|
self: this,
|
|
482
517
|
});
|
|
@@ -676,6 +711,15 @@ class Plugins {
|
|
|
676
711
|
}
|
|
677
712
|
return false;
|
|
678
713
|
}
|
|
714
|
+
getDocsMetadata() {
|
|
715
|
+
return this.plugins.reduce((aggregated, plugin) => {
|
|
716
|
+
const pluginManifest = plugin.getDocsMetadata();
|
|
717
|
+
if (pluginManifest) {
|
|
718
|
+
Object.assign(aggregated, pluginManifest);
|
|
719
|
+
}
|
|
720
|
+
return aggregated;
|
|
721
|
+
}, {});
|
|
722
|
+
}
|
|
679
723
|
}
|
|
680
724
|
exports.Plugins = Plugins;
|
|
681
725
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugins/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugins/plugin.ts"],"names":[],"mappings":"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"}
|