@party-stack/ontology 0.13.0 → 0.13.2
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/lib/generate/live.d.ts.map +1 -1
- package/lib/generate/live.js +11 -6
- package/lib/generate/live.js.map +1 -1
- package/lib/generate/live.test.d.ts +2 -0
- package/lib/generate/live.test.d.ts.map +1 -0
- package/lib/generate/live.test.js +22 -0
- package/lib/generate/live.test.js.map +1 -0
- package/lib/lenses.d.ts.map +1 -1
- package/lib/lenses.js +13 -1
- package/lib/lenses.js.map +1 -1
- package/lib/lenses.test.js +18 -0
- package/lib/lenses.test.js.map +1 -1
- package/lib/live/expression.d.ts.map +1 -1
- package/lib/live/expression.js +6 -0
- package/lib/live/expression.js.map +1 -1
- package/lib/live/expression.test.js +18 -0
- package/lib/live/expression.test.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/generate/live.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;IAChC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/generate/live.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,MAAM,CAAC;IAChC,yBAAyB,EAAE,MAAM,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,CA8C3E"}
|
package/lib/generate/live.js
CHANGED
|
@@ -5,7 +5,17 @@ export function generateLive(ir, opts) {
|
|
|
5
5
|
const sourceFile = project.createSourceFile("live.ts", "");
|
|
6
6
|
sourceFile.addImportDeclaration({
|
|
7
7
|
moduleSpecifier: opts.ontologyRuntimeImportPath,
|
|
8
|
-
namedImports: [
|
|
8
|
+
namedImports: [
|
|
9
|
+
{ name: "createLiveOntology" },
|
|
10
|
+
{
|
|
11
|
+
name: "CreateLiveOntologyOpts",
|
|
12
|
+
isTypeOnly: true,
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: "LiveOntology",
|
|
16
|
+
isTypeOnly: true,
|
|
17
|
+
},
|
|
18
|
+
],
|
|
9
19
|
});
|
|
10
20
|
sourceFile.addImportDeclaration({
|
|
11
21
|
moduleSpecifier: opts.ontologyImportPath,
|
|
@@ -16,11 +26,6 @@ export function generateLive(ir, opts) {
|
|
|
16
26
|
namedImports: [opts.ontologyTypeName, `${opts.ontologyTypeName}Context`],
|
|
17
27
|
isTypeOnly: true,
|
|
18
28
|
});
|
|
19
|
-
sourceFile.addImportDeclaration({
|
|
20
|
-
moduleSpecifier: opts.ontologyRuntimeImportPath,
|
|
21
|
-
namedImports: ["CreateLiveOntologyOpts"],
|
|
22
|
-
isTypeOnly: true,
|
|
23
|
-
});
|
|
24
29
|
sourceFile.addFunction({
|
|
25
30
|
name: opts.outputFactoryName,
|
|
26
31
|
isExported: true,
|
package/lib/generate/live.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live.js","sourceRoot":"","sources":["../../src/generate/live.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAWnC,MAAM,UAAU,YAAY,CAAC,EAAc,EAAE,IAAsB;IAC/D,MAAM,kBAAkB,GAAG,UAAU,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAE3D,UAAU,CAAC,oBAAoB,CAAC;QAC5B,eAAe,EAAE,IAAI,CAAC,yBAAyB;QAC/C,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"live.js","sourceRoot":"","sources":["../../src/generate/live.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAWnC,MAAM,UAAU,YAAY,CAAC,EAAc,EAAE,IAAsB;IAC/D,MAAM,kBAAkB,GAAG,UAAU,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAE3D,UAAU,CAAC,oBAAoB,CAAC;QAC5B,eAAe,EAAE,IAAI,CAAC,yBAAyB;QAC/C,YAAY,EAAE;YACV,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B;gBACI,IAAI,EAAE,wBAAwB;gBAC9B,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,IAAI,EAAE,cAAc;gBACpB,UAAU,EAAE,IAAI;aACnB;SACJ;KACJ,CAAC,CAAC;IACH,UAAU,CAAC,oBAAoB,CAAC;QAC5B,eAAe,EAAE,IAAI,CAAC,kBAAkB;QACxC,aAAa,EAAE,kBAAkB;KACpC,CAAC,CAAC;IACH,UAAU,CAAC,oBAAoB,CAAC;QAC5B,eAAe,EAAE,IAAI,CAAC,uBAAuB;QAC7C,YAAY,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,gBAAgB,SAAS,CAAC;QACxE,UAAU,EAAE,IAAI;KACnB,CAAC,CAAC;IACH,UAAU,CAAC,WAAW,CAAC;QACnB,IAAI,EAAE,IAAI,CAAC,iBAAiB;QAC5B,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE;YACR;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,+BAA+B,IAAI,CAAC,gBAAgB,iBAAiB;aAC9E;SACJ;QACD,UAAU,EAAE,wBAAwB,IAAI,CAAC,gBAAgB,IAAI;QAC7D,UAAU,EAAE,6BAA6B,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,gBAAgB;;kBAE9E,kBAAkB;YACxB;KACP,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live.test.d.ts","sourceRoot":"","sources":["../../src/generate/live.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { generateLive } from "./live.js";
|
|
3
|
+
describe("generateLive", () => {
|
|
4
|
+
it("combines runtime value and type imports", () => {
|
|
5
|
+
const output = generateLive({
|
|
6
|
+
types: [],
|
|
7
|
+
objectTypes: [],
|
|
8
|
+
linkTypes: [],
|
|
9
|
+
actionTypes: [],
|
|
10
|
+
queryFunctionTypes: [],
|
|
11
|
+
}, {
|
|
12
|
+
ontologyImportPath: "../ontology.js",
|
|
13
|
+
ontologyTypesImportPath: "./types.js",
|
|
14
|
+
ontologyRuntimeImportPath: "@party-stack/ontology",
|
|
15
|
+
ontologyTypeName: "ExampleOntology",
|
|
16
|
+
outputFactoryName: "createExampleLiveOntology",
|
|
17
|
+
});
|
|
18
|
+
expect(output).toContain('import { createLiveOntology, type CreateLiveOntologyOpts, type LiveOntology } from "@party-stack/ontology";');
|
|
19
|
+
expect(output.match(/from "@party-stack\/ontology";/g)).toHaveLength(1);
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=live.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live.test.js","sourceRoot":"","sources":["../../src/generate/live.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAC/C,MAAM,MAAM,GAAG,YAAY,CACvB;YACI,KAAK,EAAE,EAAE;YACT,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,EAAE;YACf,kBAAkB,EAAE,EAAE;SACzB,EACD;YACI,kBAAkB,EACd,gBAAgB;YACpB,uBAAuB,EACnB,YAAY;YAChB,yBAAyB,EACrB,uBAAuB;YAC3B,gBAAgB,EAAE,iBAAiB;YACnC,iBAAiB,EACb,2BAA2B;SAClC,CACJ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CACpB,6GAA6G,CAChH,CAAC;QACF,MAAM,CACF,MAAM,CAAC,KAAK,CACR,iCAAiC,CACpC,CACJ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/lib/lenses.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lenses.d.ts","sourceRoot":"","sources":["../src/lenses.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAY,IAAI,EAAE,aAAa,EAAwB,MAAM,eAAe,CAAC;AAEzF,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAgDD,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,0BAA0B,GACpC,aAAa,CAsCf;
|
|
1
|
+
{"version":3,"file":"lenses.d.ts","sourceRoot":"","sources":["../src/lenses.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAY,IAAI,EAAE,aAAa,EAAwB,MAAM,eAAe,CAAC;AAEzF,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAgDD,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,0BAA0B,GACpC,aAAa,CAsCf;AAmBD,wBAAgB,iBAAiB,CAC7B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAoBpC;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,CAsB3F"}
|
package/lib/lenses.js
CHANGED
|
@@ -81,8 +81,20 @@ export function applyLensToObjectType(source, lens, options) {
|
|
|
81
81
|
}
|
|
82
82
|
return target;
|
|
83
83
|
}
|
|
84
|
+
function cloneLensValue(value) {
|
|
85
|
+
if (Array.isArray(value)) {
|
|
86
|
+
return value.map(cloneLensValue);
|
|
87
|
+
}
|
|
88
|
+
if (value && typeof value === "object") {
|
|
89
|
+
const prototype = Object.getPrototypeOf(value);
|
|
90
|
+
if (prototype === Object.prototype || prototype === null) {
|
|
91
|
+
return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, cloneLensValue(entry)]));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return value;
|
|
95
|
+
}
|
|
84
96
|
export function applyLensToObject(source, lens) {
|
|
85
|
-
const target =
|
|
97
|
+
const target = cloneLensValue(source);
|
|
86
98
|
for (const operation of lens.operations) {
|
|
87
99
|
switch (operation.kind) {
|
|
88
100
|
case "move": {
|
package/lib/lenses.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lenses.js","sourceRoot":"","sources":["../src/lenses.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lenses.js","sourceRoot":"","sources":["../src/lenses.ts"],"names":[],"mappings":"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"}
|
package/lib/lenses.test.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Temporal } from "temporal-polyfill";
|
|
1
2
|
import { describe, expect, it } from "vitest";
|
|
2
3
|
import { o } from "./ir/index.js";
|
|
3
4
|
import { applyLensToObject, applyLensToObjectType, mapTargetPathToSourceWithLens } from "./lenses.js";
|
|
@@ -58,5 +59,22 @@ describe("ontology lenses", () => {
|
|
|
58
59
|
expect(mapTargetPathToSourceWithLens(["avatar", "id"], lens)).toEqual(["profilePicture", "id"]);
|
|
59
60
|
expect(mapTargetPathToSourceWithLens(["familyName"], lens)).toEqual(["familyName"]);
|
|
60
61
|
});
|
|
62
|
+
it("preserves Temporal values while projecting plain object fields", () => {
|
|
63
|
+
const updatedAt = Temporal.Instant.from("2026-08-28T00:00:00Z");
|
|
64
|
+
const projected = applyLensToObject({
|
|
65
|
+
id: "user-1",
|
|
66
|
+
givenName: "Ada",
|
|
67
|
+
updatedAt,
|
|
68
|
+
profilePicture: undefined,
|
|
69
|
+
admin: false,
|
|
70
|
+
}, {
|
|
71
|
+
operations: [
|
|
72
|
+
o.LensOp.select({
|
|
73
|
+
properties: ["id", "updatedAt"],
|
|
74
|
+
}),
|
|
75
|
+
],
|
|
76
|
+
});
|
|
77
|
+
expect(projected.updatedAt).toBe(updatedAt);
|
|
78
|
+
});
|
|
61
79
|
});
|
|
62
80
|
//# sourceMappingURL=lenses.test.js.map
|
package/lib/lenses.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lenses.test.js","sourceRoot":"","sources":["../src/lenses.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lenses.test.js","sourceRoot":"","sources":["../src/lenses.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../src/live/expression.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EACR,UAAU,EACV,aAAa,EACb,UAAU,EAEV,wBAAwB,EAC3B,MAAM,gBAAgB,CAAC;AAWxB,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAC9C,EAAE,EAAE,UAAU,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,gBAAgB,EAAE,CACd,aAAa,EAAE,MAAM,KACpB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,EAAE,EAAE,cAAc,CAAC;CACtB,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../src/live/expression.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EACR,UAAU,EACV,aAAa,EACb,UAAU,EAEV,wBAAwB,EAC3B,MAAM,gBAAgB,CAAC;AAWxB,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAC9C,EAAE,EAAE,UAAU,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,gBAAgB,EAAE,CACd,aAAa,EAAE,MAAM,KACpB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,EAAE,EAAE,cAAc,CAAC;CACtB,GAAG,OAAO,CAAC,OAAO,CAAC,CAgFnB;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IACnD,EAAE,EAAE,UAAU,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,EAAE,EAAE,cAAc,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmDnC;AAED,wBAAgB,4BAA4B,CACxC,EAAE,EAAE,UAAU,EACd,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,wBAAwB,GACpC,aAAa,CAaf"}
|
package/lib/live/expression.js
CHANGED
|
@@ -21,6 +21,12 @@ export async function evaluateExpression(options) {
|
|
|
21
21
|
}
|
|
22
22
|
const referencedType = ir.objectTypes.find((candidate) => candidate.name ===
|
|
23
23
|
parameterType.value.objectType);
|
|
24
|
+
// Object-reference values are represented by their primary key.
|
|
25
|
+
// Avoid an on-demand subset load just to read that same key.
|
|
26
|
+
if (path.length === 1 &&
|
|
27
|
+
path[0] === referencedType.primaryKey) {
|
|
28
|
+
return parameterValue;
|
|
29
|
+
}
|
|
24
30
|
const referencedObject = await tx.query((query, objects) => query
|
|
25
31
|
.from({
|
|
26
32
|
object: objects[referencedType.name],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../src/live/expression.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expression.js","sourceRoot":"","sources":["../../src/live/expression.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,5 +72,23 @@ describe("evaluateExpression", () => {
|
|
|
72
72
|
})).resolves.toBe("Ada");
|
|
73
73
|
await users.cleanup();
|
|
74
74
|
});
|
|
75
|
+
it("returns an object-reference primary key without querying its collection", async () => {
|
|
76
|
+
const query = () => {
|
|
77
|
+
throw new Error("The object collection should not be queried.");
|
|
78
|
+
};
|
|
79
|
+
await expect(evaluateExpression({
|
|
80
|
+
ir,
|
|
81
|
+
actionTypeName: "assign",
|
|
82
|
+
expression: {
|
|
83
|
+
kind: "valueReference",
|
|
84
|
+
value: {
|
|
85
|
+
path: ["user", "id"],
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
resolveParameter: () => Promise.resolve("user-1"),
|
|
89
|
+
context: {},
|
|
90
|
+
tx: { query },
|
|
91
|
+
})).resolves.toBe("user-1");
|
|
92
|
+
});
|
|
75
93
|
});
|
|
76
94
|
//# sourceMappingURL=expression.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression.test.js","sourceRoot":"","sources":["../../src/live/expression.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,0BAA0B,GAC7B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,MAAM,EAAE,GAAe;IACnB,KAAK,EAAE,EAAE;IACT,SAAS,EAAE,EAAE;IACb,kBAAkB,EAAE,EAAE;IACtB,WAAW,EAAE;QACT;YACI,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,MAAM;YACnB,iBAAiB,EAAE,OAAO;YAC1B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACR;oBACI,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,IAAI;oBACjB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;iBACrB;gBACD;oBACI,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,MAAM;oBACnB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;iBACrB;aACJ;SACJ;KACJ;IACD,WAAW,EAAE;QACT;YACI,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE;gBACR;oBACI,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,MAAM;oBACnB,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC;wBACpB,UAAU,EAAE,MAAM;qBACrB,CAAC;iBACL;aACJ;YACD,KAAK,EAAE,EAAE;SACZ;KACJ;CACJ,CAAC;AAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,KAAK,GAAG,gBAAgB,CAC1B,0BAA0B,CAGxB;YACE,EAAE,EAAE,kBAAkB;YACtB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACb,IAAI,CAAC,EAAqB;YAC9B,WAAW,EAAE;gBACT;oBACI,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,KAAK;iBACd;aACJ;SACJ,CAAC,CACL,CAAC;QACF,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,MAAM,MAAM,CACR,kBAAkB,CAAC;YACf,EAAE;YACF,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE;gBACR,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACH,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;iBACzB;aACU;YACf,gBAAgB,EAAE,GAAG,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,EAAE;YACX,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;SACpC,CAAC,CACL,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEvB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"expression.test.js","sourceRoot":"","sources":["../../src/live/expression.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,0BAA0B,GAC7B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,MAAM,EAAE,GAAe;IACnB,KAAK,EAAE,EAAE;IACT,SAAS,EAAE,EAAE;IACb,kBAAkB,EAAE,EAAE;IACtB,WAAW,EAAE;QACT;YACI,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,MAAM;YACnB,iBAAiB,EAAE,OAAO;YAC1B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACR;oBACI,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,IAAI;oBACjB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;iBACrB;gBACD;oBACI,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,MAAM;oBACnB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;iBACrB;aACJ;SACJ;KACJ;IACD,WAAW,EAAE;QACT;YACI,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE;gBACR;oBACI,IAAI,EAAE,MAAM;oBACZ,WAAW,EAAE,MAAM;oBACnB,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC;wBACpB,UAAU,EAAE,MAAM;qBACrB,CAAC;iBACL;aACJ;YACD,KAAK,EAAE,EAAE;SACZ;KACJ;CACJ,CAAC;AAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,KAAK,GAAG,gBAAgB,CAC1B,0BAA0B,CAGxB;YACE,EAAE,EAAE,kBAAkB;YACtB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACb,IAAI,CAAC,EAAqB;YAC9B,WAAW,EAAE;gBACT;oBACI,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,KAAK;iBACd;aACJ;SACJ,CAAC,CACL,CAAC;QACF,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAEtB,MAAM,MAAM,CACR,kBAAkB,CAAC;YACf,EAAE;YACF,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE;gBACR,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACH,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;iBACzB;aACU;YACf,gBAAgB,EAAE,GAAG,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,EAAE;YACX,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;SACpC,CAAC,CACL,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEvB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,KAAK,GAAG,GAAG,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC,CAAC;QAEF,MAAM,MAAM,CACR,kBAAkB,CAAC;YACf,EAAE;YACF,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE;gBACR,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACH,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;iBACvB;aACU;YACf,gBAAgB,EAAE,GAAG,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,EAAE;YACX,EAAE,EAAE,EAAE,KAAK,EAAW;SACzB,CAAC,CACL,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@party-stack/ontology",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -38,11 +38,11 @@
|
|
|
38
38
|
"temporal-polyfill": "^0.3.0",
|
|
39
39
|
"ts-morph": "^27.0.2",
|
|
40
40
|
"zod": "^4.4.3",
|
|
41
|
-
"@party-stack/
|
|
42
|
-
"@party-stack/connections": "0.2.1",
|
|
41
|
+
"@party-stack/connections": "0.2.2",
|
|
43
42
|
"@party-stack/errors": "0.2.0",
|
|
44
|
-
"@party-stack/
|
|
45
|
-
"@party-stack/runtime": "0.
|
|
43
|
+
"@party-stack/blobs": "0.5.2",
|
|
44
|
+
"@party-stack/node-runtime": "^0.2.2",
|
|
45
|
+
"@party-stack/runtime": "0.3.2"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@bobbyfidz/universal-build-config": "^0.1.1",
|