@stndrds/schema 1.0.0-alpha.203 → 1.0.0-alpha.205
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/{attributes-Cy9o_xM1.d.ts → attributes-BpvQ7YKV.d.ts} +28 -7
- package/dist/{attributes-Cn0v3e37.d.mts → attributes-BykLtzP-.d.mts} +28 -7
- package/dist/{chunk-PMKCDRRO.mjs → chunk-7SSN7BXS.mjs} +49 -10
- package/dist/{chunk-MZOEL7FN.js → chunk-SJCEXYFG.js} +49 -10
- package/dist/{helpers-LCnn6DG3.d.ts → helpers-Bd-m3ygv.d.ts} +2 -2
- package/dist/{helpers-CED0HyXm.d.mts → helpers-xalb2T4E.d.mts} +2 -2
- package/dist/index.d.mts +362 -337
- package/dist/index.d.ts +362 -337
- package/dist/index.js +199 -95
- package/dist/index.mjs +129 -37
- package/dist/{types-CORdDGpb.d.mts → types-BmgBJGpl.d.mts} +1 -1
- package/dist/{types-B12E9LFe.d.ts → types-DeFxYTDc.d.ts} +1 -1
- package/dist/validation/all.d.mts +3 -3
- package/dist/validation/all.d.ts +3 -3
- package/dist/validation/all.js +10 -10
- package/dist/validation/all.mjs +3 -3
- package/dist/validation/complex/currency.d.mts +2 -2
- package/dist/validation/complex/currency.d.ts +2 -2
- package/dist/validation/complex/file.d.mts +2 -2
- package/dist/validation/complex/file.d.ts +2 -2
- package/dist/validation/complex/location.d.mts +2 -2
- package/dist/validation/complex/location.d.ts +2 -2
- package/dist/validation/complex/phone.d.mts +2 -2
- package/dist/validation/complex/phone.d.ts +2 -2
- package/dist/validation/complex/relation.d.mts +2 -2
- package/dist/validation/complex/relation.d.ts +2 -2
- package/dist/validation/complex/richtext.d.mts +2 -2
- package/dist/validation/complex/richtext.d.ts +2 -2
- package/dist/validation/complex/select.d.mts +2 -2
- package/dist/validation/complex/select.d.ts +2 -2
- package/dist/validation/complex/user.d.mts +2 -2
- package/dist/validation/complex/user.d.ts +2 -2
- package/dist/validation/computed/formula.d.mts +2 -2
- package/dist/validation/computed/formula.d.ts +2 -2
- package/dist/validation/computed/rollup.d.mts +2 -2
- package/dist/validation/computed/rollup.d.ts +2 -2
- package/dist/validation/config/index.d.mts +1 -1
- package/dist/validation/config/index.d.ts +1 -1
- package/dist/validation/core/index.d.mts +3 -3
- package/dist/validation/core/index.d.ts +3 -3
- package/dist/validation/object/index.d.mts +3 -3
- package/dist/validation/object/index.d.ts +3 -3
- package/dist/validation/object/index.js +16 -16
- package/dist/validation/object/index.mjs +3 -3
- package/dist/validation/primitives/checkbox.d.mts +2 -2
- package/dist/validation/primitives/checkbox.d.ts +2 -2
- package/dist/validation/primitives/date.d.mts +2 -2
- package/dist/validation/primitives/date.d.ts +2 -2
- package/dist/validation/primitives/number.d.mts +2 -2
- package/dist/validation/primitives/number.d.ts +2 -2
- package/dist/validation/primitives/text.d.mts +2 -2
- package/dist/validation/primitives/text.d.ts +2 -2
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
var chunkFRCDMQER_js = require('./chunk-FRCDMQER.js');
|
|
4
4
|
require('./chunk-PGERPYDR.js');
|
|
5
5
|
var chunkNSM2JPC3_js = require('./chunk-NSM2JPC3.js');
|
|
6
|
-
var
|
|
6
|
+
var chunkSJCEXYFG_js = require('./chunk-SJCEXYFG.js');
|
|
7
7
|
require('./chunk-5WATIVCA.js');
|
|
8
8
|
require('./chunk-O44XVGHE.js');
|
|
9
9
|
require('./chunk-YIP5FJ5H.js');
|
|
10
10
|
require('./chunk-SGSGREPG.js');
|
|
11
|
+
var chunkEBGRZUIH_js = require('./chunk-EBGRZUIH.js');
|
|
12
|
+
require('./chunk-BV3IUMMW.js');
|
|
11
13
|
require('./chunk-EW5XR2X3.js');
|
|
12
14
|
require('./chunk-QWKLQRBX.js');
|
|
13
15
|
require('./chunk-T6L2MUG2.js');
|
|
@@ -16,8 +18,6 @@ require('./chunk-V2UA2D4E.js');
|
|
|
16
18
|
require('./chunk-ACKMC6FL.js');
|
|
17
19
|
require('./chunk-ROLWVTU3.js');
|
|
18
20
|
require('./chunk-E6JUYGJX.js');
|
|
19
|
-
var chunkEBGRZUIH_js = require('./chunk-EBGRZUIH.js');
|
|
20
|
-
require('./chunk-BV3IUMMW.js');
|
|
21
21
|
var chunkYKWSHBT5_js = require('./chunk-YKWSHBT5.js');
|
|
22
22
|
var constants = require('@stndrds/constants');
|
|
23
23
|
var z3 = require('zod');
|
|
@@ -26,6 +26,35 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
26
26
|
|
|
27
27
|
var z3__default = /*#__PURE__*/_interopDefault(z3);
|
|
28
28
|
|
|
29
|
+
// src/types/notifications.ts
|
|
30
|
+
var NOTIFICATION_KINDS = ["fyi", "task", "question", "handoff", "system"];
|
|
31
|
+
var NOTIFICATION_PRIORITIES = ["low", "normal", "high", "urgent"];
|
|
32
|
+
var NOTIFICATION_SENSITIVITIES = ["public", "internal", "sensitive"];
|
|
33
|
+
var NOTIFICATION_INBOX_STATES = ["unread", "read", "archived", "snoozed"];
|
|
34
|
+
var NOTIFICATION_WORK_STATES = [
|
|
35
|
+
"none",
|
|
36
|
+
"pending",
|
|
37
|
+
"processing",
|
|
38
|
+
"completed",
|
|
39
|
+
"dismissed",
|
|
40
|
+
"expired",
|
|
41
|
+
"failed"
|
|
42
|
+
];
|
|
43
|
+
var NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED = "agent.session.completed";
|
|
44
|
+
var NOTIFICATION_TYPE_AGENT_SESSION_FAILED = "agent.session.failed";
|
|
45
|
+
var NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN = "agent.session.waiting_human";
|
|
46
|
+
var NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT = "agent.session.timeout";
|
|
47
|
+
var NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED = "agent.task.assigned";
|
|
48
|
+
var NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED = "agent.question.requested";
|
|
49
|
+
var NOTIFICATION_TYPES_V1 = [
|
|
50
|
+
NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED,
|
|
51
|
+
NOTIFICATION_TYPE_AGENT_SESSION_FAILED,
|
|
52
|
+
NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN,
|
|
53
|
+
NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT,
|
|
54
|
+
NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED,
|
|
55
|
+
NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED
|
|
56
|
+
];
|
|
57
|
+
|
|
29
58
|
// src/types/attribute-protection.ts
|
|
30
59
|
var IDENTITY_PROPERTIES = ["name", "type"];
|
|
31
60
|
var BEHAVIOR_PROPERTIES = [
|
|
@@ -1239,7 +1268,7 @@ var BaseAttributeBuilder = class {
|
|
|
1239
1268
|
* @see https://standardschema.dev/
|
|
1240
1269
|
*/
|
|
1241
1270
|
get "~standard"() {
|
|
1242
|
-
const zodSchema =
|
|
1271
|
+
const zodSchema = chunkSJCEXYFG_js.createAttributeValidator(this.build());
|
|
1243
1272
|
return createStandardSchemaProps(zodSchema);
|
|
1244
1273
|
}
|
|
1245
1274
|
constructor(type, name, label) {
|
|
@@ -2003,9 +2032,9 @@ var RollupAttributeBuilder = class extends BaseAttributeBuilder {
|
|
|
2003
2032
|
if (fn === "original" && targetType !== void 0 && targetType !== "select" && targetType !== "status" && targetType !== "multiselect") {
|
|
2004
2033
|
const relation2 = this.attr.relationAttribute ?? "relation";
|
|
2005
2034
|
const target = this.attr.targetAttribute ?? "field";
|
|
2006
|
-
throw new
|
|
2035
|
+
throw new chunkSJCEXYFG_js.SchemaError(
|
|
2007
2036
|
`Rollup "${this.attr.name}": .using("original") only supports a "select", "status", or "multiselect" target, but .targetType("${targetType}") was given. To surface a plain ${targetType} value from a related record, use a formula instead \u2014 e.g. formula({ name: "${this.attr.name}", label: "\u2026" }).expression("${relation2}.${target}").`,
|
|
2008
|
-
|
|
2037
|
+
chunkSJCEXYFG_js.SchemaErrorCode.VALIDATION_FAILED
|
|
2009
2038
|
);
|
|
2010
2039
|
}
|
|
2011
2040
|
return super.build();
|
|
@@ -2501,7 +2530,7 @@ var ObjectBuilder = class {
|
|
|
2501
2530
|
* @see https://standardschema.dev/
|
|
2502
2531
|
*/
|
|
2503
2532
|
get "~standard"() {
|
|
2504
|
-
const zodSchema =
|
|
2533
|
+
const zodSchema = chunkSJCEXYFG_js.createObjectValidator(this.build());
|
|
2505
2534
|
return createStandardSchemaProps(zodSchema);
|
|
2506
2535
|
}
|
|
2507
2536
|
/**
|
|
@@ -2705,17 +2734,17 @@ var ObjectBuilder = class {
|
|
|
2705
2734
|
throw new Error("[ObjectBuilder] Missing required field: label");
|
|
2706
2735
|
}
|
|
2707
2736
|
if (!this._labelExpression) {
|
|
2708
|
-
throw new
|
|
2737
|
+
throw new chunkSJCEXYFG_js.SchemaError(
|
|
2709
2738
|
`Object "${this.obj.name}" must have a labelExpression. The labelExpression defines how records are displayed in lists and relations (e.g. "{{ name }}").`,
|
|
2710
|
-
|
|
2739
|
+
chunkSJCEXYFG_js.SchemaErrorCode.VALIDATION_FAILED
|
|
2711
2740
|
);
|
|
2712
2741
|
}
|
|
2713
2742
|
const labelResult = labelExpressionSchema.safeParse(this._labelExpression);
|
|
2714
2743
|
if (!labelResult.success) {
|
|
2715
2744
|
const errorMsg = labelResult.error.issues[0]?.message ?? "Invalid labelExpression";
|
|
2716
|
-
throw new
|
|
2745
|
+
throw new chunkSJCEXYFG_js.SchemaError(
|
|
2717
2746
|
`Invalid labelExpression for "${this.obj.name}": ${errorMsg}`,
|
|
2718
|
-
|
|
2747
|
+
chunkSJCEXYFG_js.SchemaErrorCode.VALIDATION_FAILED
|
|
2719
2748
|
);
|
|
2720
2749
|
}
|
|
2721
2750
|
const sortedVersions = [...this._migrations].sort((a, b) => a.version - b.version);
|
|
@@ -2754,7 +2783,7 @@ var ObjectBuilder = class {
|
|
|
2754
2783
|
objectNameSchema.parse(name);
|
|
2755
2784
|
} catch (error) {
|
|
2756
2785
|
if (error instanceof z3__default.default.ZodError) {
|
|
2757
|
-
throw new
|
|
2786
|
+
throw new chunkSJCEXYFG_js.SchemaError(error.issues[0].message, chunkSJCEXYFG_js.SchemaErrorCode.INVALID_OBJECT_NAME);
|
|
2758
2787
|
}
|
|
2759
2788
|
throw error;
|
|
2760
2789
|
}
|
|
@@ -4989,6 +5018,9 @@ var LIVE_EVENT_TYPE_REGISTRY = {
|
|
|
4989
5018
|
"view.projection.stale": true,
|
|
4990
5019
|
"agent.session.patch": true,
|
|
4991
5020
|
"agent.unread.patch": true,
|
|
5021
|
+
"notification.created": true,
|
|
5022
|
+
"notification.recipient.patch": true,
|
|
5023
|
+
"notification.count.patch": true,
|
|
4992
5024
|
"conversation.renamed": true,
|
|
4993
5025
|
"channel.revoked": true
|
|
4994
5026
|
};
|
|
@@ -5004,6 +5036,18 @@ var CHANNEL_REVOKED_REASONS = [
|
|
|
5004
5036
|
"workspace-left",
|
|
5005
5037
|
"object-deleted"
|
|
5006
5038
|
];
|
|
5039
|
+
var NOTIFICATION_RECIPIENT_PATCH_KEYS = [
|
|
5040
|
+
"inboxState",
|
|
5041
|
+
"workState",
|
|
5042
|
+
"lockedAt",
|
|
5043
|
+
"lockedByActorId",
|
|
5044
|
+
"readAt",
|
|
5045
|
+
"archivedAt",
|
|
5046
|
+
"snoozedUntil",
|
|
5047
|
+
"completedAt",
|
|
5048
|
+
"dismissedAt",
|
|
5049
|
+
"updatedAt"
|
|
5050
|
+
];
|
|
5007
5051
|
function isLiveEventType(value) {
|
|
5008
5052
|
return typeof value === "string" && LIVE_EVENT_TYPES.includes(value);
|
|
5009
5053
|
}
|
|
@@ -5028,6 +5072,12 @@ function isLiveEventPayloadForType(type, payload) {
|
|
|
5028
5072
|
return isAgentSessionPatchPayload(payload);
|
|
5029
5073
|
case "agent.unread.patch":
|
|
5030
5074
|
return isAgentUnreadPatchPayload(payload);
|
|
5075
|
+
case "notification.created":
|
|
5076
|
+
return isNotificationCreatedPayload(payload);
|
|
5077
|
+
case "notification.recipient.patch":
|
|
5078
|
+
return isNotificationRecipientPatchPayload(payload);
|
|
5079
|
+
case "notification.count.patch":
|
|
5080
|
+
return isNotificationCountPatchPayload(payload);
|
|
5031
5081
|
case "conversation.renamed":
|
|
5032
5082
|
return isConversationRenamedPayload(payload);
|
|
5033
5083
|
case "channel.revoked":
|
|
@@ -5042,15 +5092,31 @@ function isRecord(value) {
|
|
|
5042
5092
|
function isString(value) {
|
|
5043
5093
|
return typeof value === "string";
|
|
5044
5094
|
}
|
|
5095
|
+
function isNullableString(value) {
|
|
5096
|
+
return value === null || isString(value);
|
|
5097
|
+
}
|
|
5045
5098
|
function isVersion(value) {
|
|
5046
5099
|
return typeof value === "number" && Number.isSafeInteger(value) && value >= 0;
|
|
5047
5100
|
}
|
|
5101
|
+
function isIsoDateString(value) {
|
|
5102
|
+
if (!isString(value)) {
|
|
5103
|
+
return false;
|
|
5104
|
+
}
|
|
5105
|
+
const timestamp = Date.parse(value);
|
|
5106
|
+
return Number.isFinite(timestamp) && new Date(timestamp).toISOString() === value;
|
|
5107
|
+
}
|
|
5108
|
+
function isNullableIsoDateString(value) {
|
|
5109
|
+
return value === null || isIsoDateString(value);
|
|
5110
|
+
}
|
|
5048
5111
|
function hasString(value, key) {
|
|
5049
5112
|
return isString(value[key]);
|
|
5050
5113
|
}
|
|
5051
5114
|
function hasVersion(value, key) {
|
|
5052
5115
|
return isVersion(value[key]);
|
|
5053
5116
|
}
|
|
5117
|
+
function hasIsoDateString(value, key) {
|
|
5118
|
+
return isIsoDateString(value[key]);
|
|
5119
|
+
}
|
|
5054
5120
|
function hasOptional(value, key, predicate) {
|
|
5055
5121
|
return !Object.hasOwn(value, key) || predicate(value[key]);
|
|
5056
5122
|
}
|
|
@@ -5060,6 +5126,24 @@ function isOneOf(value, values) {
|
|
|
5060
5126
|
function isCompletionStatus(value) {
|
|
5061
5127
|
return isOneOf(value, COMPLETION_STATUSES);
|
|
5062
5128
|
}
|
|
5129
|
+
function isNotificationKind(value) {
|
|
5130
|
+
return isOneOf(value, NOTIFICATION_KINDS);
|
|
5131
|
+
}
|
|
5132
|
+
function isNotificationPriority(value) {
|
|
5133
|
+
return isOneOf(value, NOTIFICATION_PRIORITIES);
|
|
5134
|
+
}
|
|
5135
|
+
function isNotificationSensitivity(value) {
|
|
5136
|
+
return isOneOf(value, NOTIFICATION_SENSITIVITIES);
|
|
5137
|
+
}
|
|
5138
|
+
function isNotificationInboxState(value) {
|
|
5139
|
+
return isOneOf(value, NOTIFICATION_INBOX_STATES);
|
|
5140
|
+
}
|
|
5141
|
+
function isNotificationWorkState(value) {
|
|
5142
|
+
return isOneOf(value, NOTIFICATION_WORK_STATES);
|
|
5143
|
+
}
|
|
5144
|
+
function isNotificationSubject(value) {
|
|
5145
|
+
return isRecord(value) && hasString(value, "type") && hasString(value, "id");
|
|
5146
|
+
}
|
|
5063
5147
|
function isRecordFieldPatch(value) {
|
|
5064
5148
|
return isRecord(value) && hasString(value, "fieldKey") && Object.hasOwn(value, "value") && hasVersion(value, "version");
|
|
5065
5149
|
}
|
|
@@ -5078,6 +5162,32 @@ function isAgentSessionPatchPayload(payload) {
|
|
|
5078
5162
|
function isAgentUnreadPatchPayload(payload) {
|
|
5079
5163
|
return payload.type === "agent.unread.patch" && hasString(payload, "workspaceId") && hasString(payload, "targetActorId") && hasString(payload, "sessionId") && hasVersion(payload, "unreadCount") && hasVersion(payload, "version") && hasString(payload, "updatedAt") && (!Object.hasOwn(payload, "session") || isRecord(payload.session) && payload.session.id === payload.sessionId);
|
|
5080
5164
|
}
|
|
5165
|
+
function isLiveNotification(value) {
|
|
5166
|
+
return isRecord(value) && hasString(value, "id") && hasString(value, "tenantId") && hasOptional(value, "senderActorId", isString) && hasOptional(value, "rootActorId", isString) && hasOptional(value, "triggeredByActorId", isString) && isNotificationKind(value.kind) && hasString(value, "type") && hasOptional(value, "subject", isNotificationSubject) && hasString(value, "title") && hasOptional(value, "summary", isString) && isRecord(value.payload) && isNotificationPriority(value.priority) && isNotificationSensitivity(value.sensitivity) && hasOptional(value, "threadKey", isString) && hasOptional(value, "idempotencyKey", isString) && hasOptional(value, "expiresAt", isIsoDateString) && hasIsoDateString(value, "createdAt") && hasIsoDateString(value, "updatedAt");
|
|
5167
|
+
}
|
|
5168
|
+
function isLiveNotificationRecipient(value) {
|
|
5169
|
+
return isRecord(value) && hasString(value, "id") && hasString(value, "tenantId") && hasString(value, "notificationId") && hasString(value, "recipientActorId") && isNotificationInboxState(value.inboxState) && isNotificationWorkState(value.workState) && hasOptional(value, "lockedAt", isIsoDateString) && hasOptional(value, "lockedByActorId", isString) && hasOptional(value, "readAt", isIsoDateString) && hasOptional(value, "archivedAt", isIsoDateString) && hasOptional(value, "snoozedUntil", isIsoDateString) && hasOptional(value, "completedAt", isIsoDateString) && hasOptional(value, "dismissedAt", isIsoDateString) && hasIsoDateString(value, "createdAt") && hasIsoDateString(value, "updatedAt");
|
|
5170
|
+
}
|
|
5171
|
+
function isNotificationRecipientPatch(value) {
|
|
5172
|
+
if (!isRecord(value)) {
|
|
5173
|
+
return false;
|
|
5174
|
+
}
|
|
5175
|
+
return Object.keys(value).every(
|
|
5176
|
+
(key) => NOTIFICATION_RECIPIENT_PATCH_KEYS.includes(key)
|
|
5177
|
+
) && hasOptional(value, "inboxState", isNotificationInboxState) && hasOptional(value, "workState", isNotificationWorkState) && hasOptional(value, "lockedAt", isNullableIsoDateString) && hasOptional(value, "lockedByActorId", isNullableString) && hasOptional(value, "readAt", isNullableIsoDateString) && hasOptional(value, "archivedAt", isNullableIsoDateString) && hasOptional(value, "snoozedUntil", isNullableIsoDateString) && hasOptional(value, "completedAt", isNullableIsoDateString) && hasOptional(value, "dismissedAt", isNullableIsoDateString) && hasOptional(value, "updatedAt", isIsoDateString);
|
|
5178
|
+
}
|
|
5179
|
+
function isNotificationCreatedPayload(payload) {
|
|
5180
|
+
const notification = isLiveNotification(payload.notification) ? payload.notification : null;
|
|
5181
|
+
return payload.type === "notification.created" && hasString(payload, "workspaceId") && notification !== null && Array.isArray(payload.recipients) && payload.recipients.length > 0 && payload.recipients.every(
|
|
5182
|
+
(recipient) => isLiveNotificationRecipient(recipient) && recipient.notificationId === notification.id
|
|
5183
|
+
) && hasVersion(payload, "version") && hasIsoDateString(payload, "updatedAt");
|
|
5184
|
+
}
|
|
5185
|
+
function isNotificationRecipientPatchPayload(payload) {
|
|
5186
|
+
return payload.type === "notification.recipient.patch" && hasString(payload, "workspaceId") && hasString(payload, "recipientId") && hasString(payload, "recipientActorId") && isNotificationRecipientPatch(payload.patch) && hasVersion(payload, "version") && hasIsoDateString(payload, "updatedAt");
|
|
5187
|
+
}
|
|
5188
|
+
function isNotificationCountPatchPayload(payload) {
|
|
5189
|
+
return payload.type === "notification.count.patch" && hasString(payload, "workspaceId") && hasString(payload, "targetActorId") && hasVersion(payload, "unread") && hasVersion(payload, "pendingWork") && hasVersion(payload, "version") && hasIsoDateString(payload, "updatedAt");
|
|
5190
|
+
}
|
|
5081
5191
|
function isConversationRenamedPayload(payload) {
|
|
5082
5192
|
return payload.type === "conversation.renamed" && hasString(payload, "workspaceId") && hasString(payload, "sessionId") && hasString(payload, "title") && hasVersion(payload, "version") && hasString(payload, "updatedAt");
|
|
5083
5193
|
}
|
|
@@ -5237,6 +5347,7 @@ function compileComputedFormula(input) {
|
|
|
5237
5347
|
returnType: input.returnType,
|
|
5238
5348
|
valueType: inferred.valueType,
|
|
5239
5349
|
dependencies,
|
|
5350
|
+
ast,
|
|
5240
5351
|
...inferred.optionsSource ? { optionsSource: inferred.optionsSource } : {},
|
|
5241
5352
|
...inferred.targetAttributeType ? { targetAttributeType: inferred.targetAttributeType } : {},
|
|
5242
5353
|
dependenciesHash: createDependenciesHash({
|
|
@@ -5513,7 +5624,7 @@ function inferFunctionReturn(functionName, args) {
|
|
|
5513
5624
|
return { valueType: { kind: "scalar", type: "text" }, dependencies };
|
|
5514
5625
|
case "sum":
|
|
5515
5626
|
case "avg":
|
|
5516
|
-
|
|
5627
|
+
ensureCollectionOrScalarType(functionName, args[0], "number");
|
|
5517
5628
|
return { valueType: { kind: "scalar", type: "number" }, dependencies };
|
|
5518
5629
|
case "count":
|
|
5519
5630
|
case "count_empty":
|
|
@@ -5521,11 +5632,7 @@ function inferFunctionReturn(functionName, args) {
|
|
|
5521
5632
|
case "count_unique":
|
|
5522
5633
|
case "percent_empty":
|
|
5523
5634
|
case "percent_not_empty":
|
|
5524
|
-
|
|
5525
|
-
ensureUniqueCountSource(args[0]);
|
|
5526
|
-
} else {
|
|
5527
|
-
ensureCollectionSource(functionName, args[0]);
|
|
5528
|
-
}
|
|
5635
|
+
ensureCollectionSource(functionName, args[0]);
|
|
5529
5636
|
return { valueType: { kind: "scalar", type: "number" }, dependencies };
|
|
5530
5637
|
case "min":
|
|
5531
5638
|
case "max":
|
|
@@ -5538,7 +5645,7 @@ function inferFunctionReturn(functionName, args) {
|
|
|
5538
5645
|
};
|
|
5539
5646
|
case "earliest":
|
|
5540
5647
|
case "latest":
|
|
5541
|
-
|
|
5648
|
+
ensureCollectionOrScalarType(functionName, args[0], "date");
|
|
5542
5649
|
return {
|
|
5543
5650
|
valueType: { kind: "scalar", type: "date" },
|
|
5544
5651
|
dependencies,
|
|
@@ -5594,12 +5701,13 @@ function inferFirstFunction(source, dependencies) {
|
|
|
5594
5701
|
}
|
|
5595
5702
|
function inferBinary(operator, left, right) {
|
|
5596
5703
|
const dependencies = uniqueDependencies([...left.dependencies, ...right.dependencies]);
|
|
5597
|
-
|
|
5598
|
-
|
|
5599
|
-
|
|
5600
|
-
|
|
5601
|
-
|
|
5602
|
-
|
|
5704
|
+
const isArithmetic = operator === "+" || operator === "-" || operator === "*" || operator === "/";
|
|
5705
|
+
if (left.valueType.kind === "collection" || right.valueType.kind === "collection") {
|
|
5706
|
+
throw new ComputedFormulaCompileError(
|
|
5707
|
+
`Cannot use collection values with ${isArithmetic ? "arithmetic" : "comparison"} operator "${operator}"`
|
|
5708
|
+
);
|
|
5709
|
+
}
|
|
5710
|
+
if (isArithmetic) {
|
|
5603
5711
|
if (operator === "+" && (left.valueType.type === "text" || right.valueType.type === "text")) {
|
|
5604
5712
|
return { valueType: { kind: "scalar", type: "text" }, dependencies };
|
|
5605
5713
|
}
|
|
@@ -5607,11 +5715,6 @@ function inferBinary(operator, left, right) {
|
|
|
5607
5715
|
ensureScalarType(right.valueType, "number", `Operator "${operator}" expects number operands`);
|
|
5608
5716
|
return { valueType: { kind: "scalar", type: "number" }, dependencies };
|
|
5609
5717
|
}
|
|
5610
|
-
if (left.valueType.kind === "collection" || right.valueType.kind === "collection") {
|
|
5611
|
-
throw new ComputedFormulaCompileError(
|
|
5612
|
-
`Cannot use collection values with comparison operator "${operator}"`
|
|
5613
|
-
);
|
|
5614
|
-
}
|
|
5615
5718
|
if (operator === "==" || operator === "!=") {
|
|
5616
5719
|
if (left.valueType.type !== right.valueType.type) {
|
|
5617
5720
|
throw new ComputedFormulaCompileError(
|
|
@@ -5634,16 +5737,10 @@ function ensureNoCollections(args, message) {
|
|
|
5634
5737
|
}
|
|
5635
5738
|
}
|
|
5636
5739
|
}
|
|
5637
|
-
function
|
|
5740
|
+
function ensureCollectionOrScalarType(functionName, expression, expected) {
|
|
5638
5741
|
const type = expression.valueType.kind === "collection" ? expression.valueType.itemType : expression.valueType.type;
|
|
5639
|
-
if (type !==
|
|
5640
|
-
throw new ComputedFormulaCompileError(`Function "${functionName}" expects
|
|
5641
|
-
}
|
|
5642
|
-
}
|
|
5643
|
-
function ensureDateCollectionOrScalar(functionName, expression) {
|
|
5644
|
-
const type = expression.valueType.kind === "collection" ? expression.valueType.itemType : expression.valueType.type;
|
|
5645
|
-
if (type !== "date") {
|
|
5646
|
-
throw new ComputedFormulaCompileError(`Function "${functionName}" expects date values`);
|
|
5742
|
+
if (type !== expected) {
|
|
5743
|
+
throw new ComputedFormulaCompileError(`Function "${functionName}" expects ${expected} values`);
|
|
5647
5744
|
}
|
|
5648
5745
|
}
|
|
5649
5746
|
function ensureMinMaxSource(functionName, expression) {
|
|
@@ -5662,11 +5759,6 @@ function ensureCollectionSource(functionName, expression) {
|
|
|
5662
5759
|
throw new ComputedFormulaCompileError(`Function "${functionName}" expects a collection`);
|
|
5663
5760
|
}
|
|
5664
5761
|
}
|
|
5665
|
-
function ensureUniqueCountSource(expression) {
|
|
5666
|
-
if (expression.valueType.kind !== "collection") {
|
|
5667
|
-
throw new ComputedFormulaCompileError('Function "count_unique" expects a collection');
|
|
5668
|
-
}
|
|
5669
|
-
}
|
|
5670
5762
|
function ensureScalarType(valueType, expectedType, message) {
|
|
5671
5763
|
if (valueType.kind !== "scalar" || valueType.type !== expectedType) {
|
|
5672
5764
|
throw new ComputedFormulaCompileError(message);
|
|
@@ -6625,7 +6717,7 @@ function assertOperatorForType(operator, type, context) {
|
|
|
6625
6717
|
if (!ops?.includes(operator)) {
|
|
6626
6718
|
const validList = ops?.length ? ops.join(", ") : "(no operators registered for this type)";
|
|
6627
6719
|
const summary = `Operator "${operator}" is not valid for ${context} type "${type}". Valid operators: ${validList}.`;
|
|
6628
|
-
throw new
|
|
6720
|
+
throw new chunkSJCEXYFG_js.ValidationError(summary, [
|
|
6629
6721
|
{
|
|
6630
6722
|
path: ["operator"],
|
|
6631
6723
|
message: summary
|
|
@@ -6637,19 +6729,19 @@ function validateQualifiedRule(rule, context) {
|
|
|
6637
6729
|
const rootAttr = context.attributes.find((a) => a.name === rule.attribute);
|
|
6638
6730
|
const systemOps = SYSTEM_FILTER_OPERATORS[rule.attribute];
|
|
6639
6731
|
if (!(rootAttr || systemOps)) {
|
|
6640
|
-
throw new
|
|
6732
|
+
throw new chunkSJCEXYFG_js.ValidationError(`Unknown attribute: ${rule.attribute}`, [
|
|
6641
6733
|
{ path: ["attribute"], message: `Unknown attribute: ${rule.attribute}` }
|
|
6642
6734
|
]);
|
|
6643
6735
|
}
|
|
6644
6736
|
if (!rootAttr) {
|
|
6645
6737
|
if (rule.property) {
|
|
6646
|
-
throw new
|
|
6738
|
+
throw new chunkSJCEXYFG_js.ValidationError(`Cannot qualify system attribute "${rule.attribute}"`, [
|
|
6647
6739
|
{ path: ["property"], message: `"${rule.attribute}" is a system column, not a reference` }
|
|
6648
6740
|
]);
|
|
6649
6741
|
}
|
|
6650
6742
|
if (!systemOps.includes(rule.operator)) {
|
|
6651
6743
|
const summary = `Operator "${rule.operator}" is not valid for system attribute "${rule.attribute}". Valid operators: ${systemOps.join(", ")}.`;
|
|
6652
|
-
throw new
|
|
6744
|
+
throw new chunkSJCEXYFG_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
|
|
6653
6745
|
}
|
|
6654
6746
|
return;
|
|
6655
6747
|
}
|
|
@@ -6658,24 +6750,24 @@ function validateQualifiedRule(rule, context) {
|
|
|
6658
6750
|
if (!ops.includes(rule.operator)) {
|
|
6659
6751
|
const validList = ops.length ? ops.join(", ") : "(not filterable)";
|
|
6660
6752
|
const summary = `Operator "${rule.operator}" is not valid for attribute "${rootAttr.name}". Valid operators: ${validList}.`;
|
|
6661
|
-
throw new
|
|
6753
|
+
throw new chunkSJCEXYFG_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
|
|
6662
6754
|
}
|
|
6663
6755
|
return;
|
|
6664
6756
|
}
|
|
6665
6757
|
if (!REFERENCE_TYPES.has(rootAttr.type)) {
|
|
6666
|
-
throw new
|
|
6758
|
+
throw new chunkSJCEXYFG_js.ValidationError(`Cannot qualify ${rootAttr.type} attribute "${rule.attribute}"`, [
|
|
6667
6759
|
{ path: ["property"], message: `Attribute "${rule.attribute}" is not a reference type` }
|
|
6668
6760
|
]);
|
|
6669
6761
|
}
|
|
6670
6762
|
const propSchema = rootAttr.properties;
|
|
6671
6763
|
if (!propSchema) {
|
|
6672
|
-
throw new
|
|
6764
|
+
throw new chunkSJCEXYFG_js.ValidationError(`Attribute "${rule.attribute}" has no qualifyWith schema`, [
|
|
6673
6765
|
{ path: ["property"], message: `"${rule.attribute}" has no qualifyWith` }
|
|
6674
6766
|
]);
|
|
6675
6767
|
}
|
|
6676
6768
|
const propDef = propSchema.definitions.find((p) => p.name === rule.property);
|
|
6677
6769
|
if (!propDef) {
|
|
6678
|
-
throw new
|
|
6770
|
+
throw new chunkSJCEXYFG_js.ValidationError(
|
|
6679
6771
|
`Property "${rule.property}" not defined on "${rule.attribute}".qualifyWith()`,
|
|
6680
6772
|
[{ path: ["property"], message: `Unknown property: ${rule.property}` }]
|
|
6681
6773
|
);
|
|
@@ -6717,175 +6809,175 @@ Object.defineProperty(exports, "parseComputedFormula", {
|
|
|
6717
6809
|
});
|
|
6718
6810
|
Object.defineProperty(exports, "AccessDeniedError", {
|
|
6719
6811
|
enumerable: true,
|
|
6720
|
-
get: function () { return
|
|
6812
|
+
get: function () { return chunkSJCEXYFG_js.AccessDeniedError; }
|
|
6721
6813
|
});
|
|
6722
6814
|
Object.defineProperty(exports, "AttributeInUseError", {
|
|
6723
6815
|
enumerable: true,
|
|
6724
|
-
get: function () { return
|
|
6816
|
+
get: function () { return chunkSJCEXYFG_js.AttributeInUseError; }
|
|
6725
6817
|
});
|
|
6726
6818
|
Object.defineProperty(exports, "AttributeNotFoundError", {
|
|
6727
6819
|
enumerable: true,
|
|
6728
|
-
get: function () { return
|
|
6820
|
+
get: function () { return chunkSJCEXYFG_js.AttributeNotFoundError; }
|
|
6729
6821
|
});
|
|
6730
6822
|
Object.defineProperty(exports, "ChangeTypeNotSupportedError", {
|
|
6731
6823
|
enumerable: true,
|
|
6732
|
-
get: function () { return
|
|
6824
|
+
get: function () { return chunkSJCEXYFG_js.ChangeTypeNotSupportedError; }
|
|
6733
6825
|
});
|
|
6734
6826
|
Object.defineProperty(exports, "ConcurrentModificationError", {
|
|
6735
6827
|
enumerable: true,
|
|
6736
|
-
get: function () { return
|
|
6828
|
+
get: function () { return chunkSJCEXYFG_js.ConcurrentModificationError; }
|
|
6737
6829
|
});
|
|
6738
6830
|
Object.defineProperty(exports, "DestructiveSyncNotAllowedError", {
|
|
6739
6831
|
enumerable: true,
|
|
6740
|
-
get: function () { return
|
|
6832
|
+
get: function () { return chunkSJCEXYFG_js.DestructiveSyncNotAllowedError; }
|
|
6741
6833
|
});
|
|
6742
6834
|
Object.defineProperty(exports, "DuplicateError", {
|
|
6743
6835
|
enumerable: true,
|
|
6744
|
-
get: function () { return
|
|
6836
|
+
get: function () { return chunkSJCEXYFG_js.DuplicateError; }
|
|
6745
6837
|
});
|
|
6746
6838
|
Object.defineProperty(exports, "ForbiddenError", {
|
|
6747
6839
|
enumerable: true,
|
|
6748
|
-
get: function () { return
|
|
6840
|
+
get: function () { return chunkSJCEXYFG_js.ForbiddenError; }
|
|
6749
6841
|
});
|
|
6750
6842
|
Object.defineProperty(exports, "MemoryNotFoundError", {
|
|
6751
6843
|
enumerable: true,
|
|
6752
|
-
get: function () { return
|
|
6844
|
+
get: function () { return chunkSJCEXYFG_js.MemoryNotFoundError; }
|
|
6753
6845
|
});
|
|
6754
6846
|
Object.defineProperty(exports, "MigrationTimeoutError", {
|
|
6755
6847
|
enumerable: true,
|
|
6756
|
-
get: function () { return
|
|
6848
|
+
get: function () { return chunkSJCEXYFG_js.MigrationTimeoutError; }
|
|
6757
6849
|
});
|
|
6758
6850
|
Object.defineProperty(exports, "NotFoundError", {
|
|
6759
6851
|
enumerable: true,
|
|
6760
|
-
get: function () { return
|
|
6852
|
+
get: function () { return chunkSJCEXYFG_js.NotFoundError; }
|
|
6761
6853
|
});
|
|
6762
6854
|
Object.defineProperty(exports, "NotImplementedError", {
|
|
6763
6855
|
enumerable: true,
|
|
6764
|
-
get: function () { return
|
|
6856
|
+
get: function () { return chunkSJCEXYFG_js.NotImplementedError; }
|
|
6765
6857
|
});
|
|
6766
6858
|
Object.defineProperty(exports, "ObjectNotFoundError", {
|
|
6767
6859
|
enumerable: true,
|
|
6768
|
-
get: function () { return
|
|
6860
|
+
get: function () { return chunkSJCEXYFG_js.ObjectNotFoundError; }
|
|
6769
6861
|
});
|
|
6770
6862
|
Object.defineProperty(exports, "ObjectReferencedError", {
|
|
6771
6863
|
enumerable: true,
|
|
6772
|
-
get: function () { return
|
|
6864
|
+
get: function () { return chunkSJCEXYFG_js.ObjectReferencedError; }
|
|
6773
6865
|
});
|
|
6774
6866
|
Object.defineProperty(exports, "OrphanSystemAttributeError", {
|
|
6775
6867
|
enumerable: true,
|
|
6776
|
-
get: function () { return
|
|
6868
|
+
get: function () { return chunkSJCEXYFG_js.OrphanSystemAttributeError; }
|
|
6777
6869
|
});
|
|
6778
6870
|
Object.defineProperty(exports, "ProtectedResourceError", {
|
|
6779
6871
|
enumerable: true,
|
|
6780
|
-
get: function () { return
|
|
6872
|
+
get: function () { return chunkSJCEXYFG_js.ProtectedResourceError; }
|
|
6781
6873
|
});
|
|
6782
6874
|
Object.defineProperty(exports, "ProtectedRoleError", {
|
|
6783
6875
|
enumerable: true,
|
|
6784
|
-
get: function () { return
|
|
6876
|
+
get: function () { return chunkSJCEXYFG_js.ProtectedRoleError; }
|
|
6785
6877
|
});
|
|
6786
6878
|
Object.defineProperty(exports, "RecordNotFoundError", {
|
|
6787
6879
|
enumerable: true,
|
|
6788
|
-
get: function () { return
|
|
6880
|
+
get: function () { return chunkSJCEXYFG_js.RecordNotFoundError; }
|
|
6789
6881
|
});
|
|
6790
6882
|
Object.defineProperty(exports, "RecordReferencedError", {
|
|
6791
6883
|
enumerable: true,
|
|
6792
|
-
get: function () { return
|
|
6884
|
+
get: function () { return chunkSJCEXYFG_js.RecordReferencedError; }
|
|
6793
6885
|
});
|
|
6794
6886
|
Object.defineProperty(exports, "RepositoryError", {
|
|
6795
6887
|
enumerable: true,
|
|
6796
|
-
get: function () { return
|
|
6888
|
+
get: function () { return chunkSJCEXYFG_js.RepositoryError; }
|
|
6797
6889
|
});
|
|
6798
6890
|
Object.defineProperty(exports, "RoleNotFoundError", {
|
|
6799
6891
|
enumerable: true,
|
|
6800
|
-
get: function () { return
|
|
6892
|
+
get: function () { return chunkSJCEXYFG_js.RoleNotFoundError; }
|
|
6801
6893
|
});
|
|
6802
6894
|
Object.defineProperty(exports, "SchemaError", {
|
|
6803
6895
|
enumerable: true,
|
|
6804
|
-
get: function () { return
|
|
6896
|
+
get: function () { return chunkSJCEXYFG_js.SchemaError; }
|
|
6805
6897
|
});
|
|
6806
6898
|
Object.defineProperty(exports, "SchemaErrorCode", {
|
|
6807
6899
|
enumerable: true,
|
|
6808
|
-
get: function () { return
|
|
6900
|
+
get: function () { return chunkSJCEXYFG_js.SchemaErrorCode; }
|
|
6809
6901
|
});
|
|
6810
6902
|
Object.defineProperty(exports, "StorageError", {
|
|
6811
6903
|
enumerable: true,
|
|
6812
|
-
get: function () { return
|
|
6904
|
+
get: function () { return chunkSJCEXYFG_js.StorageError; }
|
|
6813
6905
|
});
|
|
6814
6906
|
Object.defineProperty(exports, "SyncCascadeError", {
|
|
6815
6907
|
enumerable: true,
|
|
6816
|
-
get: function () { return
|
|
6908
|
+
get: function () { return chunkSJCEXYFG_js.SyncCascadeError; }
|
|
6817
6909
|
});
|
|
6818
6910
|
Object.defineProperty(exports, "SyncConflictError", {
|
|
6819
6911
|
enumerable: true,
|
|
6820
|
-
get: function () { return
|
|
6912
|
+
get: function () { return chunkSJCEXYFG_js.SyncConflictError; }
|
|
6821
6913
|
});
|
|
6822
6914
|
Object.defineProperty(exports, "SyncError", {
|
|
6823
6915
|
enumerable: true,
|
|
6824
|
-
get: function () { return
|
|
6916
|
+
get: function () { return chunkSJCEXYFG_js.SyncError; }
|
|
6825
6917
|
});
|
|
6826
6918
|
Object.defineProperty(exports, "SystemEntityImmutableError", {
|
|
6827
6919
|
enumerable: true,
|
|
6828
|
-
get: function () { return
|
|
6920
|
+
get: function () { return chunkSJCEXYFG_js.SystemEntityImmutableError; }
|
|
6829
6921
|
});
|
|
6830
6922
|
Object.defineProperty(exports, "ValidationError", {
|
|
6831
6923
|
enumerable: true,
|
|
6832
|
-
get: function () { return
|
|
6924
|
+
get: function () { return chunkSJCEXYFG_js.ValidationError; }
|
|
6833
6925
|
});
|
|
6834
6926
|
Object.defineProperty(exports, "computeRecordStatus", {
|
|
6835
6927
|
enumerable: true,
|
|
6836
|
-
get: function () { return
|
|
6928
|
+
get: function () { return chunkSJCEXYFG_js.computeRecordStatus; }
|
|
6837
6929
|
});
|
|
6838
6930
|
Object.defineProperty(exports, "createFormAttributeValidator", {
|
|
6839
6931
|
enumerable: true,
|
|
6840
|
-
get: function () { return
|
|
6932
|
+
get: function () { return chunkSJCEXYFG_js.createFormAttributeValidator; }
|
|
6841
6933
|
});
|
|
6842
6934
|
Object.defineProperty(exports, "isAttributeInUseError", {
|
|
6843
6935
|
enumerable: true,
|
|
6844
|
-
get: function () { return
|
|
6936
|
+
get: function () { return chunkSJCEXYFG_js.isAttributeInUseError; }
|
|
6845
6937
|
});
|
|
6846
6938
|
Object.defineProperty(exports, "isNotFoundError", {
|
|
6847
6939
|
enumerable: true,
|
|
6848
|
-
get: function () { return
|
|
6940
|
+
get: function () { return chunkSJCEXYFG_js.isNotFoundError; }
|
|
6849
6941
|
});
|
|
6850
6942
|
Object.defineProperty(exports, "isObjectReferencedError", {
|
|
6851
6943
|
enumerable: true,
|
|
6852
|
-
get: function () { return
|
|
6944
|
+
get: function () { return chunkSJCEXYFG_js.isObjectReferencedError; }
|
|
6853
6945
|
});
|
|
6854
6946
|
Object.defineProperty(exports, "isProtectedResourceError", {
|
|
6855
6947
|
enumerable: true,
|
|
6856
|
-
get: function () { return
|
|
6948
|
+
get: function () { return chunkSJCEXYFG_js.isProtectedResourceError; }
|
|
6857
6949
|
});
|
|
6858
6950
|
Object.defineProperty(exports, "isRecordReferencedError", {
|
|
6859
6951
|
enumerable: true,
|
|
6860
|
-
get: function () { return
|
|
6952
|
+
get: function () { return chunkSJCEXYFG_js.isRecordReferencedError; }
|
|
6861
6953
|
});
|
|
6862
6954
|
Object.defineProperty(exports, "isSchemaError", {
|
|
6863
6955
|
enumerable: true,
|
|
6864
|
-
get: function () { return
|
|
6956
|
+
get: function () { return chunkSJCEXYFG_js.isSchemaError; }
|
|
6865
6957
|
});
|
|
6866
6958
|
Object.defineProperty(exports, "isValidationError", {
|
|
6867
6959
|
enumerable: true,
|
|
6868
|
-
get: function () { return
|
|
6960
|
+
get: function () { return chunkSJCEXYFG_js.isValidationError; }
|
|
6869
6961
|
});
|
|
6870
6962
|
Object.defineProperty(exports, "rejectUnknownAttributesOrThrow", {
|
|
6871
6963
|
enumerable: true,
|
|
6872
|
-
get: function () { return
|
|
6964
|
+
get: function () { return chunkSJCEXYFG_js.rejectUnknownAttributesOrThrow; }
|
|
6873
6965
|
});
|
|
6874
6966
|
Object.defineProperty(exports, "validateDraft", {
|
|
6875
6967
|
enumerable: true,
|
|
6876
|
-
get: function () { return
|
|
6968
|
+
get: function () { return chunkSJCEXYFG_js.validateDraft; }
|
|
6877
6969
|
});
|
|
6878
6970
|
Object.defineProperty(exports, "validateDraftOrThrow", {
|
|
6879
6971
|
enumerable: true,
|
|
6880
|
-
get: function () { return
|
|
6972
|
+
get: function () { return chunkSJCEXYFG_js.validateDraftOrThrow; }
|
|
6881
6973
|
});
|
|
6882
6974
|
Object.defineProperty(exports, "validateObject", {
|
|
6883
6975
|
enumerable: true,
|
|
6884
|
-
get: function () { return
|
|
6976
|
+
get: function () { return chunkSJCEXYFG_js.validateObject; }
|
|
6885
6977
|
});
|
|
6886
6978
|
Object.defineProperty(exports, "validateObjectOrThrow", {
|
|
6887
6979
|
enumerable: true,
|
|
6888
|
-
get: function () { return
|
|
6980
|
+
get: function () { return chunkSJCEXYFG_js.validateObjectOrThrow; }
|
|
6889
6981
|
});
|
|
6890
6982
|
Object.defineProperty(exports, "DEFAULT_VALIDATION_MESSAGES", {
|
|
6891
6983
|
enumerable: true,
|
|
@@ -6931,6 +7023,18 @@ exports.LIVE_STREAM_START_CURSOR = LIVE_STREAM_START_CURSOR;
|
|
|
6931
7023
|
exports.ListViewBuilder = ListViewBuilder;
|
|
6932
7024
|
exports.ListViewTabConfigBuilder = ListViewTabConfigBuilder;
|
|
6933
7025
|
exports.MAX_PRESET_DEPTH = MAX_PRESET_DEPTH;
|
|
7026
|
+
exports.NOTIFICATION_INBOX_STATES = NOTIFICATION_INBOX_STATES;
|
|
7027
|
+
exports.NOTIFICATION_KINDS = NOTIFICATION_KINDS;
|
|
7028
|
+
exports.NOTIFICATION_PRIORITIES = NOTIFICATION_PRIORITIES;
|
|
7029
|
+
exports.NOTIFICATION_SENSITIVITIES = NOTIFICATION_SENSITIVITIES;
|
|
7030
|
+
exports.NOTIFICATION_TYPES_V1 = NOTIFICATION_TYPES_V1;
|
|
7031
|
+
exports.NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED = NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED;
|
|
7032
|
+
exports.NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED = NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED;
|
|
7033
|
+
exports.NOTIFICATION_TYPE_AGENT_SESSION_FAILED = NOTIFICATION_TYPE_AGENT_SESSION_FAILED;
|
|
7034
|
+
exports.NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT = NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT;
|
|
7035
|
+
exports.NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN = NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN;
|
|
7036
|
+
exports.NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED = NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED;
|
|
7037
|
+
exports.NOTIFICATION_WORK_STATES = NOTIFICATION_WORK_STATES;
|
|
6934
7038
|
exports.NO_VALUE_OPERATORS = NO_VALUE_OPERATORS;
|
|
6935
7039
|
exports.NoopGeocodingAdapter = NoopGeocodingAdapter;
|
|
6936
7040
|
exports.OPERATORS_BY_TYPE = OPERATORS_BY_TYPE;
|