@spotto/semantic-query 1.0.70-alpha.18 → 1.0.70-alpha.20

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/evaluate.js CHANGED
@@ -35,19 +35,88 @@ function cmp(actual, op, target) {
35
35
  }
36
36
  }
37
37
  function evaluateSemanticQuery(query, docs, schema, opts = {}) {
38
- var _a, _b;
38
+ var _a, _b, _c;
39
39
  const ctx = {
40
40
  schema,
41
41
  now: (_a = opts.now) !== null && _a !== void 0 ? _a : new Date(),
42
42
  tz: (_b = opts.timeZone) !== null && _b !== void 0 ? _b : 'UTC',
43
43
  fieldByName: new Map(schema.fields.map((f) => [f.name.toLowerCase(), f])),
44
44
  typeById: new Map(schema.types.map((t) => [t.id, t])),
45
+ entityType: (_c = opts.entityType) !== null && _c !== void 0 ? _c : 'asset',
45
46
  };
46
47
  return docs.filter((d) => query.conditions.every((c) => match(d, c, ctx)));
47
48
  }
48
49
  exports.evaluateSemanticQuery = evaluateSemanticQuery;
50
+ /**
51
+ * Grouping is shared — it is structure, not subject matter — and everything
52
+ * else dispatches to the entity's own matcher, mirroring the Mongo compiler so
53
+ * the two engines are organised the same way and can be read side by side.
54
+ */
49
55
  function match(doc, cond, ctx) {
50
- var _a, _b, _c, _d, _e, _f;
56
+ if (cond.type === 'and')
57
+ return cond.conditions.every((c) => match(doc, c, ctx));
58
+ if (cond.type === 'or')
59
+ return cond.conditions.some((c) => match(doc, c, ctx));
60
+ return ctx.entityType === 'location'
61
+ ? matchLocation(doc, cond, ctx)
62
+ : matchAsset(doc, cond, ctx);
63
+ }
64
+ /**
65
+ * Reads the SERVER document shape, as the asset matcher does — a client
66
+ * caching parsed responses maps into it first (`evaluable-*`).
67
+ *
68
+ * Two words differ from their asset namesakes and both would fail silently:
69
+ * the pipe path lives in `name` (a location document has no `path` field), and
70
+ * `geolocation` is the CONFIGURED position at the top level, not the observed
71
+ * `state.geolocation` an asset's condition reads.
72
+ */
73
+ function matchLocation(doc, cond, ctx) {
74
+ var _a, _b;
75
+ switch (cond.type) {
76
+ case 'path':
77
+ return prefixMatch(String((_a = get(doc, 'name')) !== null && _a !== void 0 ? _a : ''), cond.path, cond.includeSublocations !== false);
78
+ case 'locationType':
79
+ return ((_b = cond.values) !== null && _b !== void 0 ? _b : []).includes(get(doc, 'type'));
80
+ case 'hasReaders': {
81
+ const readers = get(doc, 'readers');
82
+ return (Array.isArray(readers) && readers.length > 0) === cond.value;
83
+ }
84
+ case 'geofence': {
85
+ // `!= null` is deliberate (missing OR explicit null), matching the
86
+ // compiler's `{geofence: null}` partition exactly. `!== undefined` alone
87
+ // would put a null geofence on the opposite side from Mongo.
88
+ const v = get(doc, 'geofence');
89
+ return cond.exists ? v != null : v == null;
90
+ }
91
+ case 'manifest': {
92
+ const ids = get(doc, 'manifestIds');
93
+ return Array.isArray(ids) && ids.some((id) => String(id) === cond.manifestId);
94
+ }
95
+ case 'geolocation': {
96
+ const v = get(doc, 'geolocation');
97
+ return cond.exists !== false ? v !== undefined : v === undefined;
98
+ }
99
+ case 'tags':
100
+ return matchTags(doc, cond);
101
+ // No lastSeen / firstSeen / telemetry — see the vocabulary in the contract.
102
+ case 'createdDate':
103
+ case 'lastUpdated':
104
+ case 'lastChanged':
105
+ return matchTimestamp(doc, cond, ctx);
106
+ default:
107
+ return false;
108
+ }
109
+ }
110
+ function matchTags(doc, cond) {
111
+ var _a, _b;
112
+ const tags = ((_a = doc.tagIds) !== null && _a !== void 0 ? _a : []).map(String);
113
+ const want = ((_b = cond.values) !== null && _b !== void 0 ? _b : []).map(String);
114
+ return cond.operator === 'all'
115
+ ? want.every((t) => tags.includes(t))
116
+ : want.some((t) => tags.includes(t));
117
+ }
118
+ function matchAsset(doc, cond, ctx) {
119
+ var _a, _b, _c, _d;
51
120
  switch (cond.type) {
52
121
  case 'and':
53
122
  return cond.conditions.every((c) => match(doc, c, ctx));
@@ -69,17 +138,12 @@ function match(doc, cond, ctx) {
69
138
  const v = get(doc, 'state.geolocation');
70
139
  return cond.exists !== false ? v !== undefined : v === undefined;
71
140
  }
72
- case 'tags': {
73
- const tags = ((_d = doc.tagIds) !== null && _d !== void 0 ? _d : []).map(String);
74
- const want = ((_e = cond.values) !== null && _e !== void 0 ? _e : []).map(String);
75
- return cond.operator === 'all'
76
- ? want.every((t) => tags.includes(t))
77
- : want.some((t) => tags.includes(t));
78
- }
141
+ case 'tags':
142
+ return matchTags(doc, cond);
79
143
  case 'telemetry':
80
144
  return cmp(get(doc, `telemetry.${cond.field}`), cond.operator, cond.value);
81
145
  case 'readiness': {
82
- const levels = (_f = cond.levels) !== null && _f !== void 0 ? _f : (cond.level === undefined ? [] : [cond.level]);
146
+ const levels = (_d = cond.levels) !== null && _d !== void 0 ? _d : (cond.level === undefined ? [] : [cond.level]);
83
147
  // Missing readiness ≡ green (0).
84
148
  const actual = get(doc, 'readiness.ready');
85
149
  const effective = typeof actual === 'number' ? actual : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../src/evaluate.ts"],"names":[],"mappings":";;;AAQA,uBAAuB;AACvB,mCAAgD;AAChD,yCAAgD;AAmChD,MAAM,IAAI,GAA2B;IACnC,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,WAAW;CAClB,CAAA;AAED,SAAS,GAAG,CAAC,GAAQ,EAAE,IAAY;IACjC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AACnF,CAAC;AAED,SAAS,GAAG,CAAC,MAAe,EAAE,EAAU,EAAE,MAAe;IACvD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IACzD,QAAQ,EAAE,EAAE;QACV,KAAK,IAAI;YACP,OAAO,MAAM,KAAK,MAAM,CAAA;QAC1B,KAAK,IAAI;YACP,OAAO,MAAM,KAAK,MAAM,CAAA;QAC1B,KAAK,IAAI;YACP,OAAQ,MAAiB,GAAI,MAAiB,CAAA;QAChD,KAAK,KAAK;YACR,OAAQ,MAAiB,IAAK,MAAiB,CAAA;QACjD,KAAK,IAAI;YACP,OAAQ,MAAiB,GAAI,MAAiB,CAAA;QAChD,KAAK,KAAK;YACR,OAAQ,MAAiB,IAAK,MAAiB,CAAA;QACjD;YACE,OAAO,KAAK,CAAA;KACf;AACH,CAAC;AAWD,SAAgB,qBAAqB,CACnC,KAAoB,EACpB,IAAW,EACX,MAA6B,EAC7B,OAA+B,EAAE;;IAEjC,MAAM,GAAG,GAAQ;QACf,MAAM;QACN,GAAG,EAAE,MAAA,IAAI,CAAC,GAAG,mCAAI,IAAI,IAAI,EAAE;QAC3B,EAAE,EAAE,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK;QAC1B,WAAW,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACzE,QAAQ,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;KACtD,CAAA;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;AAC5E,CAAC;AAdD,sDAcC;AAED,SAAS,KAAK,CAAC,GAAQ,EAAE,IAA4B,EAAE,GAAQ;;IAC7D,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,KAAK;YACR,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QACzD,KAAK,IAAI;YACP,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QAExD,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,MAAM,CAAC,MAAA,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,mCAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,KAAK,KAAK,CAAC,CAAA;QACnG,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,MAAM,CAAC,MAAA,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,mCAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,KAAK,KAAK,CAAC,CAAA;QACjH,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,MAAM,CAAC,MAAA,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,mCAAI,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,KAAK,KAAK,CAAC,CAAA;QAE/G,KAAK,WAAW,CAAC,CAAC;YAChB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAA;YAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAA;YACrF,OAAO,CAAC,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,CAAA;SAC/C;QAED,KAAK,aAAa,CAAC,CAAC;YAClB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAA;YACvC,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAA;SACjE;QAED,KAAK,MAAM,CAAC,CAAC;YACX,MAAM,IAAI,GAAa,CAAC,MAAA,GAAG,CAAC,MAAM,mCAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,IAAI,GAAG,CAAC,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC5C,OAAO,IAAI,CAAC,QAAQ,KAAK,KAAK;gBAC5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;SACvC;QAED,KAAK,WAAW;YACd,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAE5E,KAAK,WAAW,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;YAC5E,iCAAiC;YACjC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;YAC1C,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YACzD,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAsB,CAAC,CAAA;SAC/C;QAED,KAAK,KAAK,CAAC,CAAC;YACV,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;gBACpC,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;gBACnC,OAAO,CAAC,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAA;aACrD;YACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAA;YAC1E,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAA;YACpF,wEAAwE;YACxE,yEAAyE;YACzE,0EAA0E;YAC1E,+DAA+D;YAC/D,2DAA2D;YAC3D,OAAO,GAAG,CAAC,iBAAiB,KAAK,IAAI,CAAC,SAAS,CAAA;SAChD;QAED,KAAK,gBAAgB,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAA;YAC/C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAK,IAAI,CAAC,MAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAA;YACzF,0CAA0C;YAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,SAAS,CAAA;SAC5E;QAED,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;QAEvC,KAAK,aAAa;YAChB,OAAO,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;QAEzC;YACE,OAAO,KAAK,CAAA;KACf;AACH,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,IAAY,EAAE,kBAA2B;IAC5E,OAAO,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAA;AACvE,CAAC;AAED,MAAM,eAAe,GAA2B;IAC9C,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,gBAAgB;IAC1B,SAAS,EAAE,iBAAiB;CAC7B,CAAA;AAED,SAAS,cAAc,CAAC,GAAQ,EAAE,IAAgC,EAAE,GAAQ;IAC1E,MAAM,EAAE,GAAG,IAAA,8BAAsB,EAC/B,IAAI,CAAC,KAAM,EACX,IAAI,CAAC,QAAQ,EACb,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,EAAE,CACP,CAAA;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;QAC/B,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,wEAAwE;QACxE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;QACpC,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACrB,KAAK,KAAK;gBACR,OAAO,OAAO,IAAI,MAAM,CAAA;YAC1B,KAAK,IAAI;gBACP,OAAO,OAAO,GAAG,MAAM,CAAA;YACzB,KAAK,KAAK;gBACR,OAAO,OAAO,GAAG,MAAM,GAAG,CAAC,CAAA;YAC7B,SAAS,KAAK;gBACZ,OAAO,OAAO,IAAI,MAAM,GAAG,CAAC,CAAA;SAC/B;KACF;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,CAAA;IACxD,IAAI,QAAQ,EAAE;QACZ,OAAO,CACL,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC;YACnD,IAAI,CAAC,eAAe,KAAK,KAAK,CAC/B,CAAA;KACF;IACD,OAAO,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;AACvC,CAAC;AAED,8EAA8E;AAC9E,kEAAkE;AAClE,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,SAAS,SAAS,CAChB,OAA6C,EAC7C,IAAsB,EACtB,IAAY;IAEZ,OAAO,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,GAAG,MAAK,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;SAChE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,SAAS,CAAC,CAAU;IAC3B,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAA;AAClD,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAQ,EAAE,IAAkC,EAAE,GAAQ;;IAC9E,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAEvB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAChC,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG;QACb,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC;QACzC,GAAG,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,CAAC;KACnD,CAAA;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAEzC,QAAQ,IAAI,CAAC,QAAQ,EAAE;QACrB,KAAK,QAAQ;YACX,OAAO,UAAU,CAAA;QACnB,KAAK,WAAW;YACd,OAAO,CAAC,UAAU,CAAA;QACpB,KAAK,UAAU,CAAC,CAAC;YACf,MAAM,IAAI,GAAG,MAAM,CAAC,MAAA,IAAI,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;YACnD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;SAClF;QACD;YACE,MAAK;KACR;IAED,uEAAuE;IACvE,2EAA2E;IAC3E,2EAA2E;IAC3E,iCAAiC;IACjC,MAAM,MAAM,GAAY,IAAA,8BAAmB,EACzC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IAE7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;QAC1B,0EAA0E;QAC1E,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,CAAA;QAC/D,OAAO,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAA;KACpE;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AAC1D,CAAC"}
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../src/evaluate.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { FieldDataType } from '@spotto/contract';
1
+ import { FieldDataType, SemanticQueryEntityType } from '@spotto/contract';
2
2
  /**
3
3
  * What an organisation's catalogue looks like to this package.
4
4
  *
@@ -73,4 +73,9 @@ export interface SemanticCompileOptions {
73
73
  now?: Date;
74
74
  /** IANA zone for resolving relative dates. */
75
75
  timeZone?: string;
76
+ /**
77
+ * Which entity's vocabulary applies. Defaults to `asset` — the only entity
78
+ * that executes today, and what every existing caller means.
79
+ */
80
+ entityType?: SemanticQueryEntityType;
76
81
  }
package/dist/validate.js CHANGED
@@ -66,6 +66,13 @@ const ALLOWED_KEYS = {
66
66
  readiness: ['type', 'level', 'levels'],
67
67
  kit: ['type', 'isKit', 'isMember', 'satisfied', 'parentAssetId'],
68
68
  locationStatus: ['type', 'values'],
69
+ // Location vocabulary. `tags`, `geolocation`, the timestamps and `telemetry`
70
+ // are shared with assets above — same word, same fact, one entry.
71
+ path: ['type', 'path', 'includeSublocations'],
72
+ locationType: ['type', 'values'],
73
+ hasReaders: ['type', 'value'],
74
+ geofence: ['type', 'exists'],
75
+ manifest: ['type', 'manifestId'],
69
76
  };
70
77
  const HEX24 = /^[0-9a-fA-F]{24}$/;
71
78
  function checkProperties(cond, path) {
@@ -136,10 +143,44 @@ exports.findSemanticField = findSemanticField;
136
143
  // ---------------------------------------------------------------------------
137
144
  // Leaves
138
145
  // ---------------------------------------------------------------------------
146
+ /**
147
+ * Is this word in the queried entity's vocabulary?
148
+ *
149
+ * A condition can be perfectly well-formed and still be nonsense for the thing
150
+ * being queried — `readiness` on a location, `snapshotType` on an asset. Left
151
+ * unchecked that is not a syntax error, it is a query that runs and answers
152
+ * the wrong question, so it is refused here with the entity named.
153
+ *
154
+ * When the word belongs to a DIFFERENT entity, say which. That is the
155
+ * generator's likeliest mistake — it has seen the whole language somewhere —
156
+ * and "'readiness' is an asset condition" sends it to the right place, where
157
+ * "not a location condition" only says no.
158
+ */
159
+ function checkEntityVocabulary(type, ctx, path) {
160
+ var _a;
161
+ const allowed = (_a = contract_1.semanticConditionTypesByEntity[ctx.entityType]) !== null && _a !== void 0 ? _a : [];
162
+ if (allowed.includes(type))
163
+ return;
164
+ // An entity with no vocabulary is one the language does not speak yet, and
165
+ // that is the real reason nothing will work — a per-condition complaint here
166
+ // would send the caller looking for a word that does not exist.
167
+ if (!allowed.length) {
168
+ (0, types_1.failSemanticValidation)(path, 'UNSUPPORTED_ENTITY', `'${ctx.entityType}' queries are not supported yet`);
169
+ }
170
+ const owner = Object.keys(contract_1.semanticConditionTypesByEntity).find((e) => e !== ctx.entityType && contract_1.semanticConditionTypesByEntity[e].includes(type));
171
+ if (owner) {
172
+ (0, types_1.failSemanticValidation)(path, 'WRONG_ENTITY', `'${type}' is a ${owner} condition — this is a ${ctx.entityType} query`);
173
+ }
174
+ // Reuses the language's existing "that is not a condition type" code — this
175
+ // gate now reaches that case before the leaf switch does, and one meaning
176
+ // should not have two codes.
177
+ (0, types_1.failSemanticValidation)(path, 'UNKNOWN_TYPE', `'${type}' is not a ${ctx.entityType} condition`, (0, suggest_1.nearest)([...allowed], type));
178
+ }
139
179
  function checkLeaf(cond, ctx, path) {
140
180
  // Also checked here, not only in the tree walk: leaves nested inside an
141
181
  // `or` reach this function directly.
142
182
  checkProperties(cond, path);
183
+ checkEntityVocabulary(cond.type, ctx, path);
143
184
  switch (cond.type) {
144
185
  case 'assetType':
145
186
  requireString(cond.path, path, 'path');
@@ -221,6 +262,40 @@ function checkLeaf(cond, ctx, path) {
221
262
  case 'customField':
222
263
  checkCustomField(cond, ctx, path);
223
264
  return;
265
+ // --- Location vocabulary ---------------------------------------------
266
+ case 'path':
267
+ requireString(cond.path, path, 'path');
268
+ requireBooleansIfSet(cond, ['includeSublocations'], path);
269
+ return;
270
+ case 'locationType': {
271
+ if (!Array.isArray(cond.values) || cond.values.length === 0) {
272
+ (0, types_1.failSemanticValidation)(path, 'BAD_SHAPE', 'locationType needs a non-empty values array');
273
+ }
274
+ const unknown = cond.values.filter((v) => !contract_1.LOCATION_TYPES.includes(v));
275
+ if (unknown.length) {
276
+ (0, types_1.failSemanticValidation)(path, 'BAD_VALUE', `Unknown location type ${unknown.map((v) => `'${v}'`).join(', ')}`, (0, suggest_1.nearest)(contract_1.LOCATION_TYPES, String(unknown[0])));
277
+ }
278
+ return;
279
+ }
280
+ case 'hasReaders':
281
+ requireBooleansIfSet(cond, ['value'], path);
282
+ if (cond.value === undefined) {
283
+ (0, types_1.failSemanticValidation)(path, 'BAD_SHAPE', "hasReaders needs 'value' (true or false)");
284
+ }
285
+ return;
286
+ case 'geofence':
287
+ requireBooleansIfSet(cond, ['exists'], path);
288
+ if (cond.exists === undefined) {
289
+ (0, types_1.failSemanticValidation)(path, 'BAD_SHAPE', "geofence needs 'exists' (true or false)");
290
+ }
291
+ return;
292
+ case 'manifest':
293
+ // Ids point. A name would have to be resolved, and a resolution that
294
+ // missed would run and match nothing.
295
+ if (!HEX24.test(String(cond.manifestId))) {
296
+ (0, types_1.failSemanticValidation)(path, 'BAD_MANIFEST_ID', 'manifest.manifestId must be a 24-hex manifest id');
297
+ }
298
+ return;
224
299
  default:
225
300
  (0, types_1.failSemanticValidation)(path, 'UNKNOWN_TYPE', `Unknown condition type '${cond.type}'`);
226
301
  }
@@ -434,11 +509,12 @@ function checkConditions(conds, ctx, depth, budget, path) {
434
509
  * through it is safe to execute.
435
510
  */
436
511
  function assertSemanticQuery(semanticQuery, catalogue, opts = {}) {
437
- var _a, _b;
512
+ var _a, _b, _c;
438
513
  const ctx = {
439
514
  catalogue,
440
515
  now: (_a = opts.now) !== null && _a !== void 0 ? _a : new Date(),
441
516
  tz: (_b = opts.timeZone) !== null && _b !== void 0 ? _b : 'UTC',
517
+ entityType: (_c = opts.entityType) !== null && _c !== void 0 ? _c : 'asset',
442
518
  };
443
519
  if (!semanticQuery || !Array.isArray(semanticQuery.conditions)) {
444
520
  (0, types_1.failSemanticValidation)('conditions', 'BAD_SHAPE', 'semanticQuery.conditions must be an array');
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":";;;AAAA,+CAayB;AAEzB,uCAAmC;AACnC,mCAIgB;AAChB,mCAOgB;AAEhB;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,GAAG,gCAAqB,CAAA;AAEpC,0FAA0F;AAC7E,QAAA,mBAAmB,GAA2B;IACzD,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,WAAW;CAClB,CAAA;AAED,wFAAwF;AAC3E,QAAA,wBAAwB,GAA2B;IAC9D,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,gBAAgB;IAC1B,SAAS,EAAE,iBAAiB;CAC7B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;AACvE,MAAM,YAAY,GAA4C;IAC5D,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC3B,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IACjD,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IACrD,SAAS,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC;IACxC,WAAW,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,CAAC;IACnF,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,cAAc;IAC3B,QAAQ,EAAE,cAAc;IACxB,SAAS,EAAE,cAAc;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC/B,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC;IACpC,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;IACjD,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IACtC,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC;IAChE,cAAc,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;CACnC,CAAA;AAED,MAAM,KAAK,GAAG,mBAAmB,CAAA;AAQjC,SAAS,eAAe,CAAC,IAA6B,EAAE,IAAY;IAClE,6EAA6E;IAC7E,2EAA2E;IAC3E,wCAAwC;IACxC,MAAM,OAAO,GAAI,YAAqD,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACzF,IAAI,CAAC,OAAO;QAAE,OAAM,CAAC,4CAA4C;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,IAAA,8BAAI,EACF,IAAI,EACJ,kBAAkB,EAClB,IAAI,IAAI,CAAC,IAAI,sBAAsB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxE,cAAc,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,EAC3E,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,CAAC,CAAC,qEAAqE;gBACnE,sCAAsC;YAC1C,CAAC,CAAC,SAAS,CACd,CAAA;KACF;AACH,CAAC;AAED,SAAS,aAAa,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAC5D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,EAAE;QACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,KAAK,8BAA8B,CAAC,CAAA;KACjE;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,iBAAiB,CACxB,IAA6B,EAC7B,IAAc,EACd,IAAY,EACZ,KAAa;IAEb,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAA;IACrD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,GAAG,CAAC,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,GAAG,KAAK,yBAAyB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpD,CAAC,CAAC,GAAG,KAAK,yBAAyB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;KACrF;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,oBAAoB,CAC3B,IAA6B,EAC7B,IAAc,EACd,IAAY;IAEZ,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;YAC7C,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,IAAI,CAAC,iCAAiC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;SAC7D;KACF;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAC/B,SAAiC,EACjC,SAAkB;IAElB,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAChE,CAAA;AACH,CAAC;AAPD,8CAOC;AAED,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,SAAS,SAAS,CAAC,IAA4B,EAAE,GAAQ,EAAE,IAAY;IACrE,wEAAwE;IACxE,qCAAqC;IACrC,eAAe,CAAC,IAA0C,EAAE,IAAI,CAAC,CAAA;IACjE,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,WAAW;YACd,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,oBAAoB,CAAC,IAA0C,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAA;YAC3F,OAAM;QACR,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc;YACjB,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,oBAAoB,CAAC,IAA0C,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC,CAAA;YAC/F,OAAM;QAER,KAAK,WAAW,CAAC,CAAC;YAChB,iBAAiB,CACf,IAA0C,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,CACrF,CAAA;YACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;YAClF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAM;YACrC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC9C,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,oDAAoD,CAAC,CAAA;aACjF;YACD,OAAM;SACP;QAED,KAAK,aAAa;YAChB,oBAAoB,CAAC,IAA0C,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;YAClF,OAAM;QAER,KAAK,MAAM;YACT,iEAAiE;YACjE,oEAAoE;YACpE,iEAAiE;YACjE,IACE,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAC3B,CAAE,+BAA4C,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EACtE;gBACA,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,gCAAgC,+BAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,GAAG,EAC5F,IAAA,iBAAO,EAAC,+BAA6C,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;aACjF;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3D,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,+CAA+C,CAAC,CAAA;aACxE;YACD,OAAM;QAER,KAAK,WAAW,CAAC,CAAC;YAChB,0EAA0E;YAC1E,0EAA0E;YAC1E,+BAA+B;YAC/B,IAAI,CAAE,kCAA+C,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAC1E,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,4BAA4B,IAAI,CAAC,KAAK,eAAe,kCAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAC5F,IAAA,iBAAO,EAAC,kCAAgD,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;aACjF;YACD,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACnE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,+BAA+B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;aAC5E;YACD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;gBAClC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,cAAc,IAAI,CAAC,KAAK,yBAAyB,CAAC,CAAA;aAC3E;YACD,OAAM;SACP;QAED,KAAK,WAAW;YACd,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC1B,OAAM;QAER,KAAK,KAAK,CAAC,CAAC;YACV,iBAAiB,CACf,IAA0C,EAC1C,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,EACnD,IAAI,EACJ,KAAK,CACN,CAAA;YACD,oBAAoB,CAClB,IAA0C,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,CACrF,CAAA;YACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBACvE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,6CAA6C,CAAC,CAAA;aAC1E;YACD,OAAM;SACP;QAED,KAAK,gBAAgB,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3D,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,+CAA+C,CAAC,CAAA;aACzE;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,0BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACrF,IAAI,OAAO,CAAC,MAAM,EAAE;gBAClB,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,2BAA2B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC1F,IAAA,iBAAO,EAAC,0BAAsC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aACvE;YACD,OAAM;SACP;QAED,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW;YACd,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC/B,OAAM;QAER,KAAK,aAAa;YAChB,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACjC,OAAM;QAER;YACE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,2BAA4B,IAA0B,CAAC,IAAI,GAAG,CAAC,CAAA;KACpE;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgC,EAAE,IAAY;;IACpE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;QACzD,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,+CAA+C,CAAC,CAAA;KACzE;IACD,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACnF,IAAI,CAAC,MAAM;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,qCAAqC,CAAC,CAAA;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,2BAA2B,CAAC,CAAA;IAChF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,4BAA4B,CAAC,CAAA;IAC9E,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACjC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,6EAA6E,CAAC,EAAE,CAAC,CAAA;SACpF;KACF;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgC,EAAE,GAAQ,EAAE,IAAY;IAC9E,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;IAExB,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC5C,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,sCAAsC,EAAE,GAAG,CAAC,CAAA;KACrF;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;QAC5B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,gBAAgB,CAAC,CAAA;KAC9D;IACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,KAAK,EAAE;QACrE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,kFAAkF,EAAE,EAAE,CAAC,CAAA;KAC1F;IACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAA;IAE3F,IAAI,EAAU,CAAA;IACd,IAAI;QACF,EAAE,GAAG,IAAA,8BAAsB,EAAC,IAAI,CAAC,KAAK,EAAE,EAAiC,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;KAC5F;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAG,CAAW,CAAC,OAAO,CAAC,CAAA;KACpD;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;QAC/B,sEAAsE;QACtE,0EAA0E;QAC1E,2EAA2E;QAC3E,2EAA2E;QAC3E,oCAAoC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,UAAU,EAAE;YACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EACnB,IAAI,IAAI,CAAC,IAAI,wDAAwD,CAAC,CAAA;SACzE;KACF;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAkC,EAClC,GAAQ,EACR,IAAY;;IAEZ,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7D,IAAI,CAAC,IAAI,EAAE;QACT,IAAA,8BAAI,EAAC,IAAI,EAAE,eAAe,EAAE,0BAA0B,IAAI,CAAC,SAAS,GAAG,EACrE,IAAA,iBAAO,EAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;KAC5E;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;QAC/D,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YAC5B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAA;SAC/E;KACF;SAAM,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;QACnC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,gBAAgB,CAAC,CAAA;KAC9E;IACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;QAC7D,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,sEAAsE;YACpE,8CAA8C,CAAC,CAAA;KACpD;IACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,CAAA;IAExF,6EAA6E;IAC7E,8CAA8C;IAC9C,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;QAChC,IAAA,8BAAI,EAAC,IAAI,EAAE,sBAAsB,EAC/B,IAAI,IAAI,CAAC,IAAI,uEAAuE,CAAC,CAAA;KACxF;IAED,uEAAuE;IACvE,2DAA2D;IAC3D,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,KAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;QACpF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACtC,IAAA,8BAAI,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,KAAK,2BAA2B,IAAI,CAAC,IAAI,GAAG,EAC5E,IAAA,iBAAO,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;SACrC;KACF;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;QAChC,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAC9B,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,8CAA8C,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;SACnF;QACD,OAAM;KACP;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAM;IAEvE,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACnE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,qBAAqB,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;KACpF;IAED,yEAAyE;IACzE,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB,CACjC,KAAc,EACd,QAAuB,EACvB,GAAS,EACT,EAAU;IAEV,QAAQ,QAAQ,EAAE;QAChB,KAAK,MAAM;YACT,uDAAuD;YACvD,OAAO,IAAA,+BAAuB,EAAC,IAAA,2BAAmB,EAAC,KAAc,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;QAC9E,KAAK,SAAS,CAAC;QACf,KAAK,SAAS,CAAC,CAAC;YACd,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,MAAM,QAAQ,aAAa,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aAC7D;YACD,OAAO,CAAC,CAAA;SACT;QACD,KAAK,SAAS,CAAC,CAAC;YACd,IAAI,OAAO,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAC5C,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO;gBAAE,OAAO,KAAK,KAAK,MAAM,CAAA;YAClE,MAAM,IAAI,KAAK,CAAC,uBAAuB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;SACzD;QACD;YACE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAA;KACjE;AACH,CAAC;AA1BD,kDA0BC;AAED,SAAS,UAAU,CACjB,IAAkC,EAClC,IAAsB,EACtB,GAAQ,EACR,IAAY;IAEZ,IAAI;QACF,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;KAChE;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,OAAO,GAAI,CAAW,CAAC,OAAO,CAAA;QACpC,IAAI,CAAC,QAAQ,KAAK,MAAM;YACtB,CAAC,CAAC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC;YACtD,CAAC,CAAC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,CAAA;KACzD;AACH,CAAC;AAED,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,SAAS,eAAe,CACtB,KAA+B,EAC/B,GAAQ,EACR,KAAa,EACb,MAAqB,EACrB,IAAY;IAEZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;IACjF,IAAI,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAC3B,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,iCAAiC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;KAC3E;IAED,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,EAAE;YACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,4BAA4B,MAAM,CAAC,aAAa,aAAa,CAAC,CAAA;SACtF;QACD,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;QACzB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,IAAA,8BAAI,EAAC,CAAC,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;QAE1F,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YAC7C,uEAAuE;YACvE,wDAAwD;YACxD,eAAe,CAAC,IAA0C,EAAE,CAAC,CAAC,CAAA;YAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnE,qEAAqE;gBACrE,cAAc;gBACd,IAAA,8BAAI,EAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,sCAAsC,CAAC,CAAA;aAC1E;SACF;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE;YACvB,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;SAC5D;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC/B,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAA;gBACvB,oEAAoE;gBACpE,sEAAsE;gBACtE,6BAA6B;gBAC7B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;oBAAE,IAAA,8BAAI,EAAC,EAAE,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;gBACrF,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;oBACvC,kEAAkE;oBAClE,8DAA8D;oBAC9D,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;iBACjD;qBAAM;oBACL,gEAAgE;oBAChE,kEAAkE;oBAClE,iEAAiE;oBACjE,cAAc;oBACd,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,EAAE;wBACrC,IAAA,8BAAI,EAAC,CAAC,EAAE,UAAU,EAAE,4BAA4B,MAAM,CAAC,aAAa,aAAa,CAAC,CAAA;qBACnF;oBACD,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;iBACtB;YACH,CAAC,CAAC,CAAA;SACH;aAAM;YACL,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;SACxB;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,aAA4B,EAC5B,SAAiC,EACjC,OAA+B,EAAE;;IAEjC,MAAM,GAAG,GAAQ;QACf,SAAS;QACT,GAAG,EAAE,MAAA,IAAI,CAAC,GAAG,mCAAI,IAAI,IAAI,EAAE;QAC3B,EAAE,EAAE,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK;KAC3B,CAAA;IACD,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;QAC9D,IAAA,8BAAI,EAAC,YAAY,EAAE,WAAW,EAAE,2CAA2C,CAAC,CAAA;KAC7E;IAED,8EAA8E;IAC9E,gEAAgE;IAChE,yEAAyE;IACzE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,YAAY,CAC7C,CAAA;IACD,IAAI,aAAa,CAAC,MAAM,EAAE;QACxB,IAAA,8BAAI,EAAC,EAAE,EAAE,kBAAkB,EACzB,8DAA8D,aAAa;aACxE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACnB;IACD,IACE,aAAa,CAAC,OAAO,KAAK,SAAS;QACnC,aAAa,CAAC,OAAO,KAAK,iCAAsB,EAChD;QACA,IAAA,8BAAI,EAAC,SAAS,EAAE,aAAa,EAC3B,sCAAsC,aAAa,CAAC,OAAO,GAAG;YAC5D,mCAAmC,iCAAsB,GAAG,CAAC,CAAA;KAClE;IAED,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;AAC3E,CAAC;AApCD,kDAoCC;AAED,sDAAsD;AACtD,SAAgB,qBAAqB,CACnC,aAA4B,EAC5B,SAAiC,EACjC,OAA+B,EAAE;IAEjC,IAAI;QACF,mBAAmB,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;QACnD,OAAO,EAAE,CAAA;KACV;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,oCAA4B;YAAE,OAAO,CAAC,CAAC,MAAM,CAAA;QAC9D,MAAM,CAAC,CAAA;KACR;AACH,CAAC;AAZD,sDAYC;AAED,oFAAoF;AACpF,SAAgB,qBAAqB,CAAC,aAA4B;;IAChE,MAAM,IAAI,GAAG,CAAC,KAA+B,EAAW,EAAE,CACxD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;;QACf,OAAA,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,aAAa;YACzB,CAAC,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,KAAK,IAAI,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,IAAI,CAAC,IAAI,IAAI,CAAC,MAAA,CAAC,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC,CAAA;KAAA,CAAC,CAAA;IAC1E,OAAO,IAAI,CAAC,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,mCAAI,EAAE,CAAC,CAAA;AAC9C,CAAC;AAND,sDAMC"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":";;;AAAA,+CAgByB;AAEzB,uCAAmC;AACnC,mCAIgB;AAChB,mCAOgB;AAEhB;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,GAAG,gCAAqB,CAAA;AAEpC,0FAA0F;AAC7E,QAAA,mBAAmB,GAA2B;IACzD,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,WAAW;CAClB,CAAA;AAED,wFAAwF;AAC3E,QAAA,wBAAwB,GAA2B;IAC9D,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,gBAAgB;IAC1B,SAAS,EAAE,iBAAiB;CAC7B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;AACvE,MAAM,YAAY,GAA4C;IAC5D,GAAG,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC3B,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IACjD,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IACrD,SAAS,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC;IACxC,WAAW,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,CAAC;IACnF,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,cAAc;IAC3B,QAAQ,EAAE,cAAc;IACxB,SAAS,EAAE,cAAc;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC/B,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC;IACpC,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;IACjD,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;IACtC,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC;IAChE,cAAc,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClC,6EAA6E;IAC7E,kEAAkE;IAClE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IAC7C,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAChC,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC5B,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;CACjC,CAAA;AAED,MAAM,KAAK,GAAG,mBAAmB,CAAA;AAUjC,SAAS,eAAe,CAAC,IAA6B,EAAE,IAAY;IAClE,6EAA6E;IAC7E,2EAA2E;IAC3E,wCAAwC;IACxC,MAAM,OAAO,GAAI,YAAqD,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACzF,IAAI,CAAC,OAAO;QAAE,OAAM,CAAC,4CAA4C;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,IAAI,KAAK,CAAC,MAAM,EAAE;QAChB,IAAA,8BAAI,EACF,IAAI,EACJ,kBAAkB,EAClB,IAAI,IAAI,CAAC,IAAI,sBAAsB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxE,cAAc,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,EAC3E,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,CAAC,CAAC,qEAAqE;gBACnE,sCAAsC;YAC1C,CAAC,CAAC,SAAS,CACd,CAAA;KACF;AACH,CAAC;AAED,SAAS,aAAa,CAAC,CAAU,EAAE,IAAY,EAAE,KAAa;IAC5D,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,EAAE;QACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,KAAK,8BAA8B,CAAC,CAAA;KACjE;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,iBAAiB,CACxB,IAA6B,EAC7B,IAAc,EACd,IAAY,EACZ,KAAa;IAEb,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAA;IACrD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,GAAG,CAAC,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,GAAG,KAAK,yBAAyB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpD,CAAC,CAAC,GAAG,KAAK,yBAAyB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;KACrF;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,oBAAoB,CAC3B,IAA6B,EAC7B,IAAc,EACd,IAAY;IAEZ,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;YAC7C,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,IAAI,CAAC,iCAAiC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;SAC7D;KACF;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAC/B,SAAiC,EACjC,SAAkB;IAElB,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAChE,CAAA;AACH,CAAC;AAPD,8CAOC;AAED,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E;;;;;;;;;;;;GAYG;AACH,SAAS,qBAAqB,CAAC,IAAY,EAAE,GAAQ,EAAE,IAAY;;IACjE,MAAM,OAAO,GAAG,MAAA,yCAA8B,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,EAAE,CAAA;IACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAM;IAElC,2EAA2E;IAC3E,6EAA6E;IAC7E,gEAAgE;IAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QACnB,IAAA,8BAAI,EAAC,IAAI,EAAE,oBAAoB,EAC7B,IAAI,GAAG,CAAC,UAAU,iCAAiC,CAAC,CAAA;KACvD;IAED,MAAM,KAAK,GACT,MAAM,CAAC,IAAI,CAAC,yCAA8B,CAC3C,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,UAAU,IAAI,yCAA8B,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACvF,IAAI,KAAK,EAAE;QACT,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,IAAI,IAAI,UAAU,KAAK,0BAA0B,GAAG,CAAC,UAAU,QAAQ,CAAC,CAAA;KAC3E;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,6BAA6B;IAC7B,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,IAAI,IAAI,cAAc,GAAG,CAAC,UAAU,YAAY,EAChD,IAAA,iBAAO,EAAC,CAAC,GAAG,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,SAAS,CAAC,IAA4B,EAAE,GAAQ,EAAE,IAAY;IACrE,wEAAwE;IACxE,qCAAqC;IACrC,eAAe,CAAC,IAA0C,EAAE,IAAI,CAAC,CAAA;IACjE,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC3C,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,WAAW;YACd,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,oBAAoB,CAAC,IAA0C,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAA;YAC3F,OAAM;QACR,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc;YACjB,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,oBAAoB,CAAC,IAA0C,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAAC,CAAA;YAC/F,OAAM;QAER,KAAK,WAAW,CAAC,CAAC;YAChB,iBAAiB,CACf,IAA0C,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,CACrF,CAAA;YACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;YAClF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAM;YACrC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC9C,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,oDAAoD,CAAC,CAAA;aACjF;YACD,OAAM;SACP;QAED,KAAK,aAAa;YAChB,oBAAoB,CAAC,IAA0C,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;YAClF,OAAM;QAER,KAAK,MAAM;YACT,iEAAiE;YACjE,oEAAoE;YACpE,iEAAiE;YACjE,IACE,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAC3B,CAAE,+BAA4C,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EACtE;gBACA,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,gCAAgC,+BAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,GAAG,EAC5F,IAAA,iBAAO,EAAC,+BAA6C,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;aACjF;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3D,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,+CAA+C,CAAC,CAAA;aACxE;YACD,OAAM;QAER,KAAK,WAAW,CAAC,CAAC;YAChB,0EAA0E;YAC1E,0EAA0E;YAC1E,+BAA+B;YAC/B,IAAI,CAAE,kCAA+C,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBAC1E,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,4BAA4B,IAAI,CAAC,KAAK,eAAe,kCAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAC5F,IAAA,iBAAO,EAAC,kCAAgD,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;aACjF;YACD,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBACnE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,+BAA+B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;aAC5E;YACD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;gBAClC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,cAAc,IAAI,CAAC,KAAK,yBAAyB,CAAC,CAAA;aAC3E;YACD,OAAM;SACP;QAED,KAAK,WAAW;YACd,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC1B,OAAM;QAER,KAAK,KAAK,CAAC,CAAC;YACV,iBAAiB,CACf,IAA0C,EAC1C,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,EACnD,IAAI,EACJ,KAAK,CACN,CAAA;YACD,oBAAoB,CAClB,IAA0C,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,CACrF,CAAA;YACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBACvE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,6CAA6C,CAAC,CAAA;aAC1E;YACD,OAAM;SACP;QAED,KAAK,gBAAgB,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3D,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,+CAA+C,CAAC,CAAA;aACzE;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,0BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACrF,IAAI,OAAO,CAAC,MAAM,EAAE;gBAClB,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,2BAA2B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC1F,IAAA,iBAAO,EAAC,0BAAsC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aACvE;YACD,OAAM;SACP;QAED,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,aAAa,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW;YACd,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC/B,OAAM;QAER,KAAK,aAAa;YAChB,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACjC,OAAM;QAER,wEAAwE;QAExE,KAAK,MAAM;YACT,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YACtC,oBAAoB,CAClB,IAA0C,EAAE,CAAC,qBAAqB,CAAC,EAAE,IAAI,CAC1E,CAAA;YACD,OAAM;QAER,KAAK,cAAc,CAAC,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3D,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,6CAA6C,CAAC,CAAA;aACvE;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,yBAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YACpF,IAAI,OAAO,CAAC,MAAM,EAAE;gBAClB,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,yBAAyB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAClE,IAAA,iBAAO,EAAC,yBAAqC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aACtE;YACD,OAAM;SACP;QAED,KAAK,YAAY;YACf,oBAAoB,CAAC,IAA0C,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;YACjF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC5B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,0CAA0C,CAAC,CAAA;aACpE;YACD,OAAM;QAER,KAAK,UAAU;YACb,oBAAoB,CAAC,IAA0C,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;YAClF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;gBAC7B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,yCAAyC,CAAC,CAAA;aACnE;YACD,OAAM;QAER,KAAK,UAAU;YACb,qEAAqE;YACrE,sCAAsC;YACtC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE;gBACxC,IAAA,8BAAI,EAAC,IAAI,EAAE,iBAAiB,EAAE,kDAAkD,CAAC,CAAA;aAClF;YACD,OAAM;QAER;YACE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,2BAA4B,IAA0B,CAAC,IAAI,GAAG,CAAC,CAAA;KACpE;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgC,EAAE,IAAY;;IACpE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;QACzD,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,+CAA+C,CAAC,CAAA;KACzE;IACD,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACnF,IAAI,CAAC,MAAM;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,qCAAqC,CAAC,CAAA;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,2BAA2B,CAAC,CAAA;IAChF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,4BAA4B,CAAC,CAAA;IAC9E,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACjC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,6EAA6E,CAAC,EAAE,CAAC,CAAA;SACpF;KACF;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgC,EAAE,GAAQ,EAAE,IAAY;IAC9E,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;IAExB,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC5C,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,IAAI,CAAC,IAAI,sCAAsC,EAAE,GAAG,CAAC,CAAA;KACrF;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;QAC5B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,gBAAgB,CAAC,CAAA;KAC9D;IACD,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,KAAK,EAAE;QACrE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,kFAAkF,EAAE,EAAE,CAAC,CAAA;KAC1F;IACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAA;IAE3F,IAAI,EAAU,CAAA;IACd,IAAI;QACF,EAAE,GAAG,IAAA,8BAAsB,EAAC,IAAI,CAAC,KAAK,EAAE,EAAiC,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;KAC5F;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAG,CAAW,CAAC,OAAO,CAAC,CAAA;KACpD;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;QAC/B,sEAAsE;QACtE,0EAA0E;QAC1E,2EAA2E;QAC3E,2EAA2E;QAC3E,oCAAoC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,UAAU,EAAE;YACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EACnB,IAAI,IAAI,CAAC,IAAI,wDAAwD,CAAC,CAAA;SACzE;KACF;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAkC,EAClC,GAAQ,EACR,IAAY;;IAEZ,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC7D,IAAI,CAAC,IAAI,EAAE;QACT,IAAA,8BAAI,EAAC,IAAI,EAAE,eAAe,EAAE,0BAA0B,IAAI,CAAC,SAAS,GAAG,EACrE,IAAA,iBAAO,EAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;KAC5E;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;QAC/D,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YAC5B,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,iBAAiB,CAAC,CAAA;SAC/E;KACF;SAAM,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;QACnC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,gBAAgB,CAAC,CAAA;KAC9E;IACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;QAC7D,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EACpB,sEAAsE;YACpE,8CAA8C,CAAC,CAAA;KACpD;IACD,oBAAoB,CAAC,IAA0C,EAAE,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,CAAA;IAExF,6EAA6E;IAC7E,8CAA8C;IAC9C,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;QAChC,IAAA,8BAAI,EAAC,IAAI,EAAE,sBAAsB,EAC/B,IAAI,IAAI,CAAC,IAAI,uEAAuE,CAAC,CAAA;KACxF;IAED,uEAAuE;IACvE,2DAA2D;IAC3D,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM,KAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;QACpF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACtC,IAAA,8BAAI,EAAC,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,KAAK,2BAA2B,IAAI,CAAC,IAAI,GAAG,EAC5E,IAAA,iBAAO,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;SACrC;KACF;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE;QAChC,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAC9B,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EACvB,8CAA8C,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;SACnF;QACD,OAAM;KACP;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAM;IAEvE,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACnE,IAAA,8BAAI,EAAC,IAAI,EAAE,cAAc,EAAE,qBAAqB,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;KACpF;IAED,yEAAyE;IACzE,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;AACnC,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,mBAAmB,CACjC,KAAc,EACd,QAAuB,EACvB,GAAS,EACT,EAAU;IAEV,QAAQ,QAAQ,EAAE;QAChB,KAAK,MAAM;YACT,uDAAuD;YACvD,OAAO,IAAA,+BAAuB,EAAC,IAAA,2BAAmB,EAAC,KAAc,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;QAC9E,KAAK,SAAS,CAAC;QACf,KAAK,SAAS,CAAC,CAAC;YACd,MAAM,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,MAAM,QAAQ,aAAa,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aAC7D;YACD,OAAO,CAAC,CAAA;SACT;QACD,KAAK,SAAS,CAAC,CAAC;YACd,IAAI,OAAO,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAC5C,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO;gBAAE,OAAO,KAAK,KAAK,MAAM,CAAA;YAClE,MAAM,IAAI,KAAK,CAAC,uBAAuB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;SACzD;QACD;YACE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAA;KACjE;AACH,CAAC;AA1BD,kDA0BC;AAED,SAAS,UAAU,CACjB,IAAkC,EAClC,IAAsB,EACtB,GAAQ,EACR,IAAY;IAEZ,IAAI;QACF,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;KAChE;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,OAAO,GAAI,CAAW,CAAC,OAAO,CAAA;QACpC,IAAI,CAAC,QAAQ,KAAK,MAAM;YACtB,CAAC,CAAC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC;YACtD,CAAC,CAAC,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,CAAA;KACzD;AACH,CAAC;AAED,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,SAAS,eAAe,CACtB,KAA+B,EAC/B,GAAQ,EACR,KAAa,EACb,MAAqB,EACrB,IAAY;IAEZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,IAAA,8BAAI,EAAC,IAAI,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;IACjF,IAAI,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE;QAC3B,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,iCAAiC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;KAC3E;IAED,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,EAAE;YACrC,IAAA,8BAAI,EAAC,IAAI,EAAE,UAAU,EAAE,4BAA4B,MAAM,CAAC,aAAa,aAAa,CAAC,CAAA;SACtF;QACD,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;QACzB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,IAAA,8BAAI,EAAC,CAAC,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;QAE1F,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YAC7C,uEAAuE;YACvE,wDAAwD;YACxD,eAAe,CAAC,IAA0C,EAAE,CAAC,CAAC,CAAA;YAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnE,qEAAqE;gBACrE,cAAc;gBACd,IAAA,8BAAI,EAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,sCAAsC,CAAC,CAAA;aAC1E;SACF;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE;YACvB,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;SAC5D;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC/B,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAA;gBACvB,oEAAoE;gBACpE,sEAAsE;gBACtE,6BAA6B;gBAC7B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;oBAAE,IAAA,8BAAI,EAAC,EAAE,EAAE,WAAW,EAAE,6BAA6B,CAAC,CAAA;gBACrF,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;oBACvC,kEAAkE;oBAClE,8DAA8D;oBAC9D,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;iBACjD;qBAAM;oBACL,gEAAgE;oBAChE,kEAAkE;oBAClE,iEAAiE;oBACjE,cAAc;oBACd,IAAI,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,EAAE;wBACrC,IAAA,8BAAI,EAAC,CAAC,EAAE,UAAU,EAAE,4BAA4B,MAAM,CAAC,aAAa,aAAa,CAAC,CAAA;qBACnF;oBACD,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;iBACtB;YACH,CAAC,CAAC,CAAA;SACH;aAAM;YACL,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;SACxB;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,aAA4B,EAC5B,SAAiC,EACjC,OAA+B,EAAE;;IAEjC,MAAM,GAAG,GAAQ;QACf,SAAS;QACT,GAAG,EAAE,MAAA,IAAI,CAAC,GAAG,mCAAI,IAAI,IAAI,EAAE;QAC3B,EAAE,EAAE,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK;QAC1B,UAAU,EAAE,MAAA,IAAI,CAAC,UAAU,mCAAI,OAAO;KACvC,CAAA;IACD,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;QAC9D,IAAA,8BAAI,EAAC,YAAY,EAAE,WAAW,EAAE,2CAA2C,CAAC,CAAA;KAC7E;IAED,8EAA8E;IAC9E,gEAAgE;IAChE,yEAAyE;IACzE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,YAAY,CAC7C,CAAA;IACD,IAAI,aAAa,CAAC,MAAM,EAAE;QACxB,IAAA,8BAAI,EAAC,EAAE,EAAE,kBAAkB,EACzB,8DAA8D,aAAa;aACxE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACnB;IACD,IACE,aAAa,CAAC,OAAO,KAAK,SAAS;QACnC,aAAa,CAAC,OAAO,KAAK,iCAAsB,EAChD;QACA,IAAA,8BAAI,EAAC,SAAS,EAAE,aAAa,EAC3B,sCAAsC,aAAa,CAAC,OAAO,GAAG;YAC5D,mCAAmC,iCAAsB,GAAG,CAAC,CAAA;KAClE;IAED,eAAe,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;AAC3E,CAAC;AArCD,kDAqCC;AAED,sDAAsD;AACtD,SAAgB,qBAAqB,CACnC,aAA4B,EAC5B,SAAiC,EACjC,OAA+B,EAAE;IAEjC,IAAI;QACF,mBAAmB,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;QACnD,OAAO,EAAE,CAAA;KACV;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,oCAA4B;YAAE,OAAO,CAAC,CAAC,MAAM,CAAA;QAC9D,MAAM,CAAC,CAAA;KACR;AACH,CAAC;AAZD,sDAYC;AAED,oFAAoF;AACpF,SAAgB,qBAAqB,CAAC,aAA4B;;IAChE,MAAM,IAAI,GAAG,CAAC,KAA+B,EAAW,EAAE,CACxD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;;QACf,OAAA,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,aAAa;YACzB,CAAC,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,KAAK,IAAI,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,MAAK,IAAI,CAAC,IAAI,IAAI,CAAC,MAAA,CAAC,CAAC,UAAU,mCAAI,EAAE,CAAC,CAAC,CAAA;KAAA,CAAC,CAAA;IAC1E,OAAO,IAAI,CAAC,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,mCAAI,EAAE,CAAC,CAAA;AAC9C,CAAC;AAND,sDAMC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spotto/semantic-query",
3
- "version": "1.0.70-alpha.18",
3
+ "version": "1.0.70-alpha.20",
4
4
  "description": "The Spotto semantic query language — one shared statement of what a query MEANS (validation, resolution, evaluation, dates), consumed by both the API and the client. Mongo emission deliberately stays server-side.",
5
5
  "main": "./dist/index.js",
6
6
  "license": "MIT",
@@ -16,7 +16,7 @@
16
16
  "access": "public"
17
17
  },
18
18
  "dependencies": {
19
- "@spotto/contract": "^1.0.70-alpha.18",
19
+ "@spotto/contract": "^1.0.70-alpha.20",
20
20
  "dayjs": "^1.11.1"
21
21
  },
22
22
  "devDependencies": {
@@ -25,5 +25,5 @@
25
25
  "shx": "^0.3.4",
26
26
  "ts-jest": "^28.0.1"
27
27
  },
28
- "gitHead": "efd838e345380e064fc8963773d2a72e4fc0f293"
28
+ "gitHead": "76c7272f0c6ec68cc60a268988d86064851b652b"
29
29
  }