@_linked/core 2.18.0-next.20260908080821 → 2.18.0-next.20260910084541

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/lib/esm/ontologies/linked-core.d.ts +2 -0
  3. package/lib/esm/ontologies/linked-core.js +14 -0
  4. package/lib/esm/ontologies/linked-core.js.map +1 -1
  5. package/lib/esm/queries/FieldSet.js +11 -5
  6. package/lib/esm/queries/FieldSet.js.map +1 -1
  7. package/lib/esm/queries/lowerMutationJSON.js +5 -3
  8. package/lib/esm/queries/lowerMutationJSON.js.map +1 -1
  9. package/lib/esm/queries/reservedQueryNames.d.ts +49 -0
  10. package/lib/esm/queries/reservedQueryNames.js +126 -0
  11. package/lib/esm/queries/reservedQueryNames.js.map +1 -0
  12. package/lib/esm/queries/resolveShape.js +5 -2
  13. package/lib/esm/queries/resolveShape.js.map +1 -1
  14. package/lib/esm/shapes/SHACL.d.ts +7 -0
  15. package/lib/esm/shapes/SHACL.js +15 -0
  16. package/lib/esm/shapes/SHACL.js.map +1 -1
  17. package/lib/esm/shapes/nodeShapeData.d.ts +18 -3
  18. package/lib/esm/shapes/nodeShapeData.js +28 -34
  19. package/lib/esm/shapes/nodeShapeData.js.map +1 -1
  20. package/lib/esm/shapes/nodeShapeWire.d.ts +43 -0
  21. package/lib/esm/shapes/nodeShapeWire.js +65 -0
  22. package/lib/esm/shapes/nodeShapeWire.js.map +1 -0
  23. package/lib/esm/shapes/propertyShapeTerms.d.ts +4 -16
  24. package/lib/esm/shapes/propertyShapeTerms.js +17 -1
  25. package/lib/esm/shapes/propertyShapeTerms.js.map +1 -1
  26. package/lib/esm/shapes/registerRuntimeShape.d.ts +22 -0
  27. package/lib/esm/shapes/registerRuntimeShape.js +87 -0
  28. package/lib/esm/shapes/registerRuntimeShape.js.map +1 -0
  29. package/lib/esm/shapes/syncShapes.js +5 -1
  30. package/lib/esm/shapes/syncShapes.js.map +1 -1
  31. package/lib/esm/shapes/validation.js +7 -2
  32. package/lib/esm/shapes/validation.js.map +1 -1
  33. package/lib/esm/sparql/irToAlgebra.js +36 -24
  34. package/lib/esm/sparql/irToAlgebra.js.map +1 -1
  35. package/lib/esm/sparql/resultMapping.js +9 -1
  36. package/lib/esm/sparql/resultMapping.js.map +1 -1
  37. package/lib/esm/utils/Package.js +8 -1
  38. package/lib/esm/utils/Package.js.map +1 -1
  39. package/lib/esm/utils/ShapeClass.d.ts +69 -2
  40. package/lib/esm/utils/ShapeClass.js +285 -12
  41. package/lib/esm/utils/ShapeClass.js.map +1 -1
  42. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -88,6 +88,80 @@
88
88
  - A shape declaring a `linked://tmp/` path gets its declared path as the predicate instead of the
89
89
  shadow IRI. No released code minted such IRIs, so this is expected to affect nobody.
90
90
 
91
+ - [#214](https://github.com/linked-cm/core/pull/214) [`67e015b`](https://github.com/linked-cm/core/commit/67e015bf7f32dd9cda2a1ad9f5589ead0b8408d3) Thanks [@flyon](https://github.com/flyon)! - One shape metamodel, and inheritance that works for shapes known only as data.
92
+
93
+ `NodeShapeData` gains a JSON-safe transport form (`toWire` / `fromWire` in
94
+ `shapes/nodeShapeWire.ts`). It is defined by subtraction from the metamodel — drop the
95
+ circular `parentNodeShape` back-reference, carry `pattern` as its source string and flags
96
+ — so new metamodel fields are carried automatically instead of a hand-maintained subset
97
+ falling behind. `PathExpr` is already a plain discriminated union, so complex SHACL paths
98
+ (sequence, alternative, inverse, the cardinality operators, negated property sets) survive
99
+ a round trip intact rather than collapsing to a single IRI.
100
+
101
+ Display vocabulary: `linked_core:displayRank` (a single linear importance rank, lower =
102
+ more important) and `linked_core:displayHidden`, accepted by the property decorators,
103
+ carried on `PropertyShapeData`, registered as meta-shape properties and serialized by
104
+ `syncShapes`. They materialize onto the pure `sh:NodeShape`, so they travel with an
105
+ ejected app.
106
+
107
+ Fixes `order` and `group`, which were declared on `PropertyShapeConfig` but never copied
108
+ onto the property shape — a declared `sh:order` was silently dropped and renderers fell
109
+ back to array position.
110
+
111
+ `getSuperShapes` is now the single canonical inheritance walk, and `getPropertyShapes`,
112
+ `getPropertyShape` and the class-returning helpers all delegate to it: the prototype chain
113
+ for a class-backed shape (which includes the framework `Shape` root, whose `label` and
114
+ `type` really are inherited), `extends` through the shape registry for a shape with no
115
+ compiled class. Previously the latter case returned only own properties, so a
116
+ project-authored shape silently lost everything it inherited (backlog 040). Since
117
+ `getPropertyShapeByLabel` delegates to `getPropertyShape`, the query proxies are fixed
118
+ too.
119
+
120
+ Adds a primary IRI to `NodeShapeData` registry alongside the class registry, so query
121
+ lowering and predicate resolution work for both kinds of shape;
122
+ `registerNodeShape` / `getNodeShape` / `getAllNodeShapes` and the data-based
123
+ `getSuperShapes` / `getSubShapes` / `isSubShapeOf` are exported.
124
+ `SelectBuilder.from(iri)` now resolves a shape that exists only as data.
125
+
126
+ Cache invalidation moves from a `setTimeout` plus registry-size comparison to a monotonic
127
+ version counter — the old scheme silently reused a stale cache when a registration and a
128
+ removal coincided, or when a shape was re-registered in place.
129
+
130
+ Adds `registerRuntimeShape` / `registerRuntimeShapes`: register a shape that exists only
131
+ as data, taking metadata (`NodeShapeData` or its wire form) rather than a bespoke DTO.
132
+ `registerRuntimeShapes` orders a batch parents-first, because inheritance resolves
133
+ `extends` through the registry and a child registered ahead of its parent would resolve an
134
+ empty chain. Neither shadows a compiled class.
135
+
136
+ Query lowering, containment resolution, blank-node deletion and mutation lowering all read
137
+ the shape registry rather than the class registry, so a shape that exists only as data
138
+ lowers to the same SPARQL a compiled one does — with its declared `targetClass` (walking
139
+ `extends` where it is inherited) and its declared `sh:path` as the predicate. `validate()`
140
+ accepts such a shape as registered. The three lowering caches key on the registration
141
+ version instead of the class registry's size, which did not change when a shape was
142
+ re-registered in place.
143
+
144
+ The SHACL meta-model's `sh:equals` accessor is relabelled `equalsConstraint`, matching the
145
+ `PropertyShapeData` field (the predicate is unchanged). `equals` is a query-builder method,
146
+ and the query proxy answers a key from its own surface before it looks for a property with
147
+ that label — so a property labelled `equals` returned the DSL method and the field tracer
148
+ failed on a native function. The meta-shape could not read its own constraint. Anything
149
+ looking a constraint up in `getPropertyShapeTerms()` by the label `equals` must now ask for
150
+ `equalsConstraint`.
151
+
152
+ Registration now reports the general case: `registerPropertyShape` and
153
+ `registerRuntimeShape` check each label against the query DSL surface
154
+ (`RESERVED_QUERY_DSL_NAMES`) and warn once per shape+label, naming the shape, the property
155
+ and why selecting it will fail. It warns rather than throws — `size`, `id` and `some` are
156
+ legitimate domain property names, such a property still round-trips and is still reachable
157
+ by path through DSL-JSON, and throwing would break existing apps on upgrade.
158
+
159
+ The reserved-name warning distinguishes the two proxy surfaces. A name on `QueryShape` is
160
+ always shadowed; a name only on `QueryShapeSet` — `size`, `some`, `every`, `where`, `add`,
161
+ `concat`, `none` — is fine to read directly and only shadowed when the shape is reached
162
+ through a multi-valued property. Both messages now name the existing escape hatch,
163
+ `select(['size'])`, which takes the label as a string and never touches the proxy.
164
+
91
165
  - [#205](https://github.com/linked-cm/core/pull/205) [`48ecb4d`](https://github.com/linked-cm/core/commit/48ecb4dbdc20471bf19a4c4cc9d58ef90f5cd1b1) Thanks [@flyon](https://github.com/flyon)! - Expose the meta-model's SHACL constraint table via `getPropertyShapeTerms()` /
92
166
  `getPropertyShapeTerm(label)`, so an alternative serializer can look up each constraint's
93
167
  predicate, datatype and node kind rather than hard-coding its own copy.
@@ -188,6 +262,15 @@
188
262
  `<full-iri>` when it does not fit. `collectPrefixes` asks `toPrefixed` rather than
189
263
  re-implementing the rule, so the `PREFIX` block and the terms can never disagree.
190
264
 
265
+ - [#213](https://github.com/linked-cm/core/pull/213) [`46bc8de`](https://github.com/linked-cm/core/commit/46bc8def877ea741c62baa0e39bf49cec5855176) Thanks [@flyon](https://github.com/flyon)! - Read result bindings under the same sanitized variable name they were written with.
266
+
267
+ `algebraToString` sanitizes a projection into a legal SPARQL variable — only letters, digits
268
+ and underscore survive — while `resultMapping` derived the name it reads back without doing
269
+ the same. A property named by a person ("Volume share", "Avg. basket") was therefore emitted
270
+ as `?a0_Volume_share` and looked up as `a0_Volume share`, matching no binding: the value came
271
+ back `null` with no error, for every multi-word property, on every query. Single-word names
272
+ were unaffected, which made it look like missing data rather than a naming mismatch.
273
+
191
274
  - [#189](https://github.com/linked-cm/core/pull/189) [`70a6d33`](https://github.com/linked-cm/core/commit/70a6d33e01f7eaab0e01cc7b59b2bc4c54118655) Thanks [@carlenmy](https://github.com/carlenmy)! - Register `PropertyShape.defaultValue` as a queryable property.
192
275
 
193
276
  `sh:defaultValue` was read from config and emitted by `PropertyShape.getResult()`,
@@ -12,4 +12,6 @@ export declare const coreOntology: {
12
12
  contains: NodeReferenceValue;
13
13
  dependent: NodeReferenceValue;
14
14
  PathNode: NodeReferenceValue;
15
+ displayRank: NodeReferenceValue;
16
+ displayHidden: NodeReferenceValue;
15
17
  };
@@ -20,6 +20,18 @@ const isExtending = ns('isExtending');
20
20
  const contains = ns('contains');
21
21
  const dependent = ns('dependent');
22
22
  const PathNode = ns('PathNode');
23
+ // Display vocabulary. SHACL has `sh:order` and `sh:group`, which say how properties
24
+ // are arranged; it has no way to say how *important* a property is, which is what a
25
+ // renderer needs when it can only show one, three or six of them. `displayRank` is
26
+ // that: a single linear rank per property, lower = more important, from which every
27
+ // truncated context ("show the top 3") derives. `displayHidden` removes a property
28
+ // from generic rendering without changing its cardinality or its meaning.
29
+ //
30
+ // Placement is deliberate (backlog-029): this is an ecosystem SHACL extension that
31
+ // materializes onto the pure `sh:NodeShape` and therefore travels with an ejected
32
+ // app — NOT the CN-proprietary `code:` vocab, which describes source-code structure.
33
+ const displayRank = ns('displayRank');
34
+ const displayHidden = ns('displayHidden');
23
35
  export const coreOntology = {
24
36
  Package,
25
37
  ShapeClass,
@@ -31,5 +43,7 @@ export const coreOntology = {
31
43
  contains,
32
44
  dependent,
33
45
  PathNode,
46
+ displayRank,
47
+ displayHidden,
34
48
  };
35
49
  //# sourceMappingURL=linked-core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"linked-core.js","sourceRoot":"","sources":["../../../src/ontologies/linked-core.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAE1C,+EAA+E;AAC/E,sFAAsF;AACtF,qDAAqD;AACrD,MAAM,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,oCAAoC,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,KAAK,GAAuB,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAEpC,MAAM,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAC9B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;AACpC,MAAM,YAAY,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;AACxC,MAAM,cAAc,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;AACpC,MAAM,cAAc,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;AAC5C,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;AACpC,MAAM,WAAW,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;AAEtC,sCAAsC;AACtC,sFAAsF;AACtF,mGAAmG;AACnG,iGAAiG;AACjG,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;AAChC,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;AAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO;IACP,UAAU;IACV,YAAY;IACZ,MAAM,EAAE,cAAc;IACtB,cAAc;IACd,UAAU;IACV,WAAW;IACX,QAAQ;IACR,SAAS;IACT,QAAQ;CACT,CAAC"}
1
+ {"version":3,"file":"linked-core.js","sourceRoot":"","sources":["../../../src/ontologies/linked-core.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAE1C,+EAA+E;AAC/E,sFAAsF;AACtF,qDAAqD;AACrD,MAAM,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,oCAAoC,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,KAAK,GAAuB,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAEpC,MAAM,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAC9B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;AACpC,MAAM,YAAY,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;AACxC,MAAM,cAAc,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;AACpC,MAAM,cAAc,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;AAC5C,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;AACpC,MAAM,WAAW,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;AAEtC,sCAAsC;AACtC,sFAAsF;AACtF,mGAAmG;AACnG,iGAAiG;AACjG,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;AAChC,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;AAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhC,oFAAoF;AACpF,oFAAoF;AACpF,mFAAmF;AACnF,oFAAoF;AACpF,mFAAmF;AACnF,0EAA0E;AAC1E,EAAE;AACF,mFAAmF;AACnF,kFAAkF;AAClF,qFAAqF;AACrF,MAAM,WAAW,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;AACtC,MAAM,aAAa,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;AAE1C,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO;IACP,UAAU;IACV,YAAY;IACZ,MAAM,EAAE,cAAc;IACtB,cAAc;IACd,UAAU;IACV,WAAW;IACX,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,WAAW;IACX,aAAa;CACd,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { getUniquePropertyShapes, getPropertyShape } from '../shapes/nodeShapeData.js';
2
2
  import { PropertyPath, walkPropertyPath } from './PropertyPath.js';
3
- import { getShapeClass, getAllShapeClasses } from '../utils/ShapeClass.js';
3
+ import { getShapeClass, getAllShapeClasses, getNodeShape } from '../utils/ShapeClass.js';
4
4
  import { createProxiedPathBuilder } from './ProxiedPathBuilder.js';
5
5
  import { isExpressionNode, ExpressionNode } from '../expressions/ExpressionNode.js';
6
6
  import { encodeValueExpr, decodeValueExpr } from './DslJsonExpression.js';
@@ -435,10 +435,16 @@ export class FieldSet {
435
435
  static resolveShapeInput(shape) {
436
436
  if (typeof shape === 'string') {
437
437
  const shapeClass = getShapeClass(shape);
438
- if (!shapeClass || !shapeClass.shape) {
438
+ if (shapeClass === null || shapeClass === void 0 ? void 0 : shapeClass.shape) {
439
+ return { nodeShape: shapeClass.shape, shapeClass };
440
+ }
441
+ // No authored class: the metadata alone is enough here — the classless branch
442
+ // below is already supported, it just was not reachable from an IRI.
443
+ const nodeShape = getNodeShape(shape);
444
+ if (!nodeShape) {
439
445
  throw new Error(`Cannot resolve shape for '${shape}'`);
440
446
  }
441
- return { nodeShape: shapeClass.shape, shapeClass };
447
+ return { nodeShape };
442
448
  }
443
449
  // ShapeConstructor: has a static .shape property that is a NodeShapeData
444
450
  if ('shape' in shape && typeof shape.shape === 'object' && shape.shape !== null && 'id' in shape.shape) {
@@ -646,8 +652,8 @@ export class FieldSet {
646
652
  // an `as(<ShapeLabel>)` path segment (documentation/dsl-json.md, backlog 002 G5).
647
653
  // ---------------------------------------------------------------------------
648
654
  static shapeById(id) {
649
- var _a;
650
- return (_a = getShapeClass(id)) === null || _a === void 0 ? void 0 : _a.shape;
655
+ var _a, _b;
656
+ return (_b = (_a = getShapeClass(id)) === null || _a === void 0 ? void 0 : _a.shape) !== null && _b !== void 0 ? _b : getNodeShape(id);
651
657
  }
652
658
  static shapeByLabel(label) {
653
659
  for (const cls of getAllShapeClasses().values()) {
@@ -1 +1 @@
1
- {"version":3,"file":"FieldSet.js","sourceRoot":"","sources":["../../../src/queries/FieldSet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldSet.js","sourceRoot":"","sources":["../../../src/queries/FieldSet.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { getPropertyShape } from '../shapes/nodeShapeData.js';
7
7
  import { ExpressionNode } from '../expressions/ExpressionNode.js';
8
- import { getShapeClass } from '../utils/ShapeClass.js';
8
+ import { getNodeShape, getShapeClass } from '../utils/ShapeClass.js';
9
9
  import { deserializeWherePath, } from './QueryBuilderSerialization.js';
10
10
  import { toWhere } from './IRDesugar.js';
11
11
  import { lowerWhereToIR } from './IRLower.js';
@@ -16,8 +16,10 @@ import { decodeNodeDataToRaw, valueShapeOf, } from './MutationSerialization.js';
16
16
  import { assertValid } from '../shapes/validation.js';
17
17
  import { decodeValueExpr } from './DslJsonExpression.js';
18
18
  function requireShape(shapeId) {
19
- var _a;
20
- const shape = (_a = getShapeClass(shapeId)) === null || _a === void 0 ? void 0 : _a.shape;
19
+ var _a, _b;
20
+ // Either registry: a project-authored shape arrives as metadata with no class, and
21
+ // requiring a class here made every mutation against one fail at the boundary.
22
+ const shape = (_b = (_a = getShapeClass(shapeId)) === null || _a === void 0 ? void 0 : _a.shape) !== null && _b !== void 0 ? _b : getNodeShape(shapeId);
21
23
  if (!shape) {
22
24
  throw new Error(`Shape '${shapeId}' is not registered. The receiving side must have the shape registered to lower mutation DSL-JSON.`);
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lowerMutationJSON.js","sourceRoot":"","sources":["../../../src/queries/lowerMutationJSON.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lowerMutationJSON.js","sourceRoot":"","sources":["../../../src/queries/lowerMutationJSON.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * The names the query proxies answer themselves.
3
+ *
4
+ * `QueryShape`/`QueryShapeSet` resolve a key against their own surface (`key in
5
+ * queryShape`) before they look for a property shape with that label, so a property
6
+ * named after one of these is unreachable through the builder: the caller gets the DSL
7
+ * method, and the field tracer then fails on a native function. Registration warns about
8
+ * such a label (see `warnOnReservedPropertyLabel`).
9
+ *
10
+ * Deliberately a literal, not derived from the classes: the shape registry must not
11
+ * import the query builder (that edge would close an import cycle through `SHACL.ts`).
12
+ * `dsl-property-name-collisions.test.ts` compares this list against the live prototypes,
13
+ * so a DSL method added later cannot drift out of it unnoticed.
14
+ */
15
+ export declare const RESERVED_QUERY_DSL_NAMES: ReadonlySet<string>;
16
+ /**
17
+ * The subset that only bites through a MULTI-VALUED hop.
18
+ *
19
+ * These are on `QueryShapeSet` but not on `QueryShape`, so `widget.size` resolves to the
20
+ * property perfectly well — it is `article.widgets.size` that returns the set's size
21
+ * instead. Which matters because `size`, `some`, `every` and `where` are among the most
22
+ * ordinary names a domain model has, and warning about them as if they were always broken
23
+ * trains people to ignore the warning.
24
+ */
25
+ export declare const SET_CONTEXT_ONLY_NAMES: ReadonlySet<string>;
26
+ export declare function isReservedQueryDslName(label: string | undefined): boolean;
27
+ /** True when the name is only shadowed when the shape is reached as a set. */
28
+ export declare function isSetContextOnlyName(label: string | undefined): boolean;
29
+ /**
30
+ * Tell the model author about a colliding label while they can still rename it.
31
+ *
32
+ * A warning rather than a throw, on purpose. `size`, `id` and `some` are legitimate
33
+ * names for a domain property, and the property still works everywhere except the
34
+ * proxy-traced builder. Throwing here would break existing apps on upgrade over a property
35
+ * they may never select through the builder. (Contrast `RESERVED_PROPERTY_LABELS` in
36
+ * `SHACL.ts`, which does throw: a DSL-JSON combinator name has no escape hatch at all.)
37
+ *
38
+ * Two messages, because the two cases are genuinely different: a `QueryShape` member is
39
+ * always shadowed, while a set-only member is fine until the shape is reached through a
40
+ * multi-valued property. Saying "broken" about the second kind is how a warning gets
41
+ * ignored.
42
+ *
43
+ * Both name the way out. The escape hatch already exists and is easy to miss:
44
+ * `select(['size'])` takes the label as a string and never touches the proxy, so it
45
+ * resolves the property whatever it is called. It accepts dot-paths too.
46
+ */
47
+ export declare function warnOnReservedPropertyLabel(label: string | undefined, shapeLabel: string | undefined, shapeId?: string): void;
48
+ /** Test seam: forget which collisions were already reported. */
49
+ export declare function resetReservedPropertyLabelWarnings(): void;
@@ -0,0 +1,126 @@
1
+ /*
2
+ * This Source Code Form is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/.
5
+ */
6
+ /**
7
+ * The names the query proxies answer themselves.
8
+ *
9
+ * `QueryShape`/`QueryShapeSet` resolve a key against their own surface (`key in
10
+ * queryShape`) before they look for a property shape with that label, so a property
11
+ * named after one of these is unreachable through the builder: the caller gets the DSL
12
+ * method, and the field tracer then fails on a native function. Registration warns about
13
+ * such a label (see `warnOnReservedPropertyLabel`).
14
+ *
15
+ * Deliberately a literal, not derived from the classes: the shape registry must not
16
+ * import the query builder (that edge would close an import cycle through `SHACL.ts`).
17
+ * `dsl-property-name-collisions.test.ts` compares this list against the live prototypes,
18
+ * so a DSL method added later cannot drift out of it unnoticed.
19
+ */
20
+ export const RESERVED_QUERY_DSL_NAMES = new Set([
21
+ // prototype surface of QueryShape / QueryShapeSet (and their base)
22
+ 'add',
23
+ 'as',
24
+ 'buildPredicateExpression',
25
+ 'callPropertyShapeAccessor',
26
+ 'concat',
27
+ 'constructor',
28
+ 'equals',
29
+ 'every',
30
+ 'getOriginalValue',
31
+ 'getPropertyPath',
32
+ 'getPropertyStep',
33
+ 'id',
34
+ 'limit',
35
+ 'none',
36
+ 'notOneOf',
37
+ 'oneOf',
38
+ 'preloadFor',
39
+ 'select',
40
+ 'selectAll',
41
+ 'size',
42
+ 'some',
43
+ 'where',
44
+ // instance fields — `in` sees these as well
45
+ 'originalValue',
46
+ 'prop',
47
+ 'property',
48
+ 'proxy',
49
+ 'queryShapes',
50
+ 'source',
51
+ 'subject',
52
+ 'wherePath',
53
+ ]);
54
+ /**
55
+ * The subset that only bites through a MULTI-VALUED hop.
56
+ *
57
+ * These are on `QueryShapeSet` but not on `QueryShape`, so `widget.size` resolves to the
58
+ * property perfectly well — it is `article.widgets.size` that returns the set's size
59
+ * instead. Which matters because `size`, `some`, `every` and `where` are among the most
60
+ * ordinary names a domain model has, and warning about them as if they were always broken
61
+ * trains people to ignore the warning.
62
+ */
63
+ export const SET_CONTEXT_ONLY_NAMES = new Set([
64
+ 'add',
65
+ 'buildPredicateExpression',
66
+ 'callPropertyShapeAccessor',
67
+ 'concat',
68
+ 'every',
69
+ 'none',
70
+ 'size',
71
+ 'some',
72
+ 'where',
73
+ ]);
74
+ export function isReservedQueryDslName(label) {
75
+ return !!label && RESERVED_QUERY_DSL_NAMES.has(label);
76
+ }
77
+ /** True when the name is only shadowed when the shape is reached as a set. */
78
+ export function isSetContextOnlyName(label) {
79
+ return !!label && SET_CONTEXT_ONLY_NAMES.has(label);
80
+ }
81
+ /** One warning per shape + label; a shape re-registered on hot reload must not spam. */
82
+ const reported = new Set();
83
+ /**
84
+ * Tell the model author about a colliding label while they can still rename it.
85
+ *
86
+ * A warning rather than a throw, on purpose. `size`, `id` and `some` are legitimate
87
+ * names for a domain property, and the property still works everywhere except the
88
+ * proxy-traced builder. Throwing here would break existing apps on upgrade over a property
89
+ * they may never select through the builder. (Contrast `RESERVED_PROPERTY_LABELS` in
90
+ * `SHACL.ts`, which does throw: a DSL-JSON combinator name has no escape hatch at all.)
91
+ *
92
+ * Two messages, because the two cases are genuinely different: a `QueryShape` member is
93
+ * always shadowed, while a set-only member is fine until the shape is reached through a
94
+ * multi-valued property. Saying "broken" about the second kind is how a warning gets
95
+ * ignored.
96
+ *
97
+ * Both name the way out. The escape hatch already exists and is easy to miss:
98
+ * `select(['size'])` takes the label as a string and never touches the proxy, so it
99
+ * resolves the property whatever it is called. It accepts dot-paths too.
100
+ */
101
+ export function warnOnReservedPropertyLabel(label, shapeLabel, shapeId) {
102
+ var _a, _b;
103
+ if (!isReservedQueryDslName(label))
104
+ return;
105
+ const key = `${(_a = shapeId !== null && shapeId !== void 0 ? shapeId : shapeLabel) !== null && _a !== void 0 ? _a : ''}#${label}`;
106
+ if (reported.has(key))
107
+ return;
108
+ reported.add(key);
109
+ const owner = (_b = shapeLabel !== null && shapeLabel !== void 0 ? shapeLabel : shapeId) !== null && _b !== void 0 ? _b : 'shape';
110
+ const escape = `Use \`select(['${label}'])\`, which takes the label as a string and never touches the proxy. Renaming the property also works; the RDF predicate can stay the same.`;
111
+ if (isSetContextOnlyName(label)) {
112
+ console.warn(`[linked] ${owner}.${label} is shadowed when ${owner} is reached through a ` +
113
+ `multi-valued property: '${label}' is a method of the query builder's SET proxy, so ` +
114
+ `\`parent.${owner.toLowerCase()}s.${label}\` returns that method. Reading it directly ` +
115
+ `(\`select(s => s.${label})\`) is fine. ${escape}`);
116
+ return;
117
+ }
118
+ console.warn(`[linked] ${owner}.${label} shadows the query DSL: '${label}' is a method of the query ` +
119
+ `builder, so \`select(s => s.${label})\` returns that method instead of the property ` +
120
+ `and the query fails while tracing fields. ${escape}`);
121
+ }
122
+ /** Test seam: forget which collisions were already reported. */
123
+ export function resetReservedPropertyLabelWarnings() {
124
+ reported.clear();
125
+ }
126
+ //# sourceMappingURL=reservedQueryNames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reservedQueryNames.js","sourceRoot":"","sources":["../../../src/queries/reservedQueryNames.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC;IACnE,mEAAmE;IACnE,KAAK;IACL,IAAI;IACJ,0BAA0B;IAC1B,2BAA2B;IAC3B,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,OAAO;IACP,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,IAAI;IACJ,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,WAAW;IACX,MAAM;IACN,MAAM;IACN,OAAO;IACP,4CAA4C;IAC5C,eAAe;IACf,MAAM;IACN,UAAU;IACV,OAAO;IACP,aAAa;IACb,QAAQ;IACR,SAAS;IACT,WAAW;CACZ,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC;IACjE,KAAK;IACL,0BAA0B;IAC1B,2BAA2B;IAC3B,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,sBAAsB,CAAC,KAAyB;IAC9D,OAAO,CAAC,CAAC,KAAK,IAAI,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,oBAAoB,CAAC,KAAyB;IAC5D,OAAO,CAAC,CAAC,KAAK,IAAI,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC;AAED,wFAAwF;AACxF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AAEnC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAyB,EACzB,UAA8B,EAC9B,OAAgB;;IAEhB,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAAE,OAAO;IAC3C,MAAM,GAAG,GAAG,GAAG,MAAA,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,UAAU,mCAAI,EAAE,IAAI,KAAK,EAAE,CAAC;IACtD,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO;IAC9B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,OAAO,mCAAI,OAAO,CAAC;IAC/C,MAAM,MAAM,GAAG,kBAAkB,KAAK,8IAA8I,CAAC;IAErL,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,CACV,YAAY,KAAK,IAAI,KAAK,qBAAqB,KAAK,wBAAwB;YAC1E,2BAA2B,KAAK,qDAAqD;YACrF,YAAY,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,8CAA8C;YACvF,oBAAoB,KAAK,iBAAiB,MAAM,EAAE,CACrD,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,IAAI,CACV,YAAY,KAAK,IAAI,KAAK,4BAA4B,KAAK,6BAA6B;QACtF,+BAA+B,KAAK,kDAAkD;QACtF,6CAA6C,MAAM,EAAE,CACxD,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,kCAAkC;IAChD,QAAQ,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { getShapeClass } from '../utils/ShapeClass.js';
1
+ import { getOrCreateShapeAdapter, getShapeClass } from '../utils/ShapeClass.js';
2
2
  /**
3
3
  * Resolve a shape class or IRI string to a ShapeConstructor.
4
4
  *
@@ -8,8 +8,11 @@ import { getShapeClass } from '../utils/ShapeClass.js';
8
8
  * @throws If a string IRI cannot be resolved via the shape registry.
9
9
  */
10
10
  export function resolveShape(shape) {
11
+ var _a;
11
12
  if (typeof shape === 'string') {
12
- const shapeClass = getShapeClass(shape);
13
+ // An authored class first; otherwise a constructor derived from the registered
14
+ // metadata, so a project-authored shape that exists only as data resolves too.
15
+ const shapeClass = (_a = getShapeClass(shape)) !== null && _a !== void 0 ? _a : getOrCreateShapeAdapter(shape);
13
16
  if (!shapeClass) {
14
17
  throw new Error(`Cannot resolve shape for '${shape}'`);
15
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolveShape.js","sourceRoot":"","sources":["../../../src/queries/resolveShape.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAErD;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAmC;IAEnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,UAAiC,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"resolveShape.js","sourceRoot":"","sources":["../../../src/queries/resolveShape.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,uBAAuB,EAAE,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAmC;;IAEnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,+EAA+E;QAC/E,+EAA+E;QAC/E,MAAM,UAAU,GAAG,MAAA,aAAa,CAAC,KAAK,CAAC,mCAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,UAAiC,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -174,6 +174,13 @@ export interface PropertyShapeConfig {
174
174
  description?: string;
175
175
  order?: number;
176
176
  group?: string;
177
+ /**
178
+ * Display importance, lower = more important (`linked_core:displayRank`).
179
+ * A renderer that can show only N properties shows the N lowest ranks.
180
+ */
181
+ displayRank?: number;
182
+ /** Omit this property from generic rendering (`linked_core:displayHidden`). */
183
+ displayHidden?: boolean;
177
184
  /**
178
185
  * should correlate to the given datatype or class
179
186
  */