@weave-kit/engine 0.11.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -0
- package/README.md +40 -20
- package/dist/adapters/auth/index.d.ts +1 -1
- package/dist/adapters/auth/index.d.ts.map +1 -1
- package/dist/adapters/auth/index.js +1 -1
- package/dist/adapters/auth/index.js.map +1 -1
- package/dist/adapters/auth/source.d.ts +3 -0
- package/dist/adapters/auth/source.d.ts.map +1 -1
- package/dist/adapters/auth/source.js.map +1 -1
- package/dist/adapters/auth/subject.d.ts +6 -0
- package/dist/adapters/auth/subject.d.ts.map +1 -1
- package/dist/adapters/auth/subject.js +15 -0
- package/dist/adapters/auth/subject.js.map +1 -1
- package/dist/adapters/auth/verify.d.ts +2 -0
- package/dist/adapters/auth/verify.d.ts.map +1 -1
- package/dist/adapters/events/index.d.ts.map +1 -1
- package/dist/adapters/events/index.js +6 -1
- package/dist/adapters/events/index.js.map +1 -1
- package/dist/adapters/graphql/http.d.ts.map +1 -1
- package/dist/adapters/graphql/http.js +4 -2
- package/dist/adapters/graphql/http.js.map +1 -1
- package/dist/adapters/graphql/resolvers.d.ts.map +1 -1
- package/dist/adapters/graphql/resolvers.js +1 -0
- package/dist/adapters/graphql/resolvers.js.map +1 -1
- package/dist/adapters/graphql/security.d.ts.map +1 -1
- package/dist/adapters/graphql/security.js +14 -4
- package/dist/adapters/graphql/security.js.map +1 -1
- package/dist/adapters/graphql/types.d.ts +2 -0
- package/dist/adapters/graphql/types.d.ts.map +1 -1
- package/dist/adapters/mcp/generate.d.ts.map +1 -1
- package/dist/adapters/mcp/generate.js +1 -0
- package/dist/adapters/mcp/generate.js.map +1 -1
- package/dist/adapters/mcp/http.d.ts.map +1 -1
- package/dist/adapters/mcp/http.js +21 -7
- package/dist/adapters/mcp/http.js.map +1 -1
- package/dist/adapters/mcp/tools.d.ts.map +1 -1
- package/dist/adapters/mcp/tools.js +4 -0
- package/dist/adapters/mcp/tools.js.map +1 -1
- package/dist/adapters/mcp/types.d.ts +2 -0
- package/dist/adapters/mcp/types.d.ts.map +1 -1
- package/dist/adapters/mcp/types.js.map +1 -1
- package/dist/adapters/openapi/document.d.ts.map +1 -1
- package/dist/adapters/openapi/document.js +2 -1
- package/dist/adapters/openapi/document.js.map +1 -1
- package/dist/adapters/openapi/types.d.ts +1 -0
- package/dist/adapters/openapi/types.d.ts.map +1 -1
- package/dist/adapters/ops/index.d.ts.map +1 -1
- package/dist/adapters/ops/index.js +2 -1
- package/dist/adapters/ops/index.js.map +1 -1
- package/dist/adapters/rest/audit.d.ts.map +1 -1
- package/dist/adapters/rest/audit.js +14 -2
- package/dist/adapters/rest/audit.js.map +1 -1
- package/dist/adapters/rest/ingress.d.ts.map +1 -1
- package/dist/adapters/rest/ingress.js +4 -1
- package/dist/adapters/rest/ingress.js.map +1 -1
- package/dist/adapters/rest/plugin.d.ts.map +1 -1
- package/dist/adapters/rest/plugin.js +14 -5
- package/dist/adapters/rest/plugin.js.map +1 -1
- package/dist/adapters/rest/proxy.d.ts.map +1 -1
- package/dist/adapters/rest/proxy.js +4 -1
- package/dist/adapters/rest/proxy.js.map +1 -1
- package/dist/cli/commands/deploy.d.ts.map +1 -1
- package/dist/cli/commands/deploy.js +60 -1
- package/dist/cli/commands/deploy.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +6 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +159 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/migrate.d.ts.map +1 -1
- package/dist/cli/commands/migrate.js +13 -0
- package/dist/cli/commands/migrate.js.map +1 -1
- package/dist/cli/index.js +9 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/types/commands.d.ts +18 -0
- package/dist/cli/types/commands.d.ts.map +1 -1
- package/dist/cli/types/index.d.ts +3 -3
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/types/index.js +1 -1
- package/dist/cli/types/index.js.map +1 -1
- package/dist/cli/types/values.d.ts +9 -0
- package/dist/cli/types/values.d.ts.map +1 -1
- package/dist/cli/types/values.js +8 -0
- package/dist/cli/types/values.js.map +1 -1
- package/dist/core/audit/types.d.ts +23 -3
- package/dist/core/audit/types.d.ts.map +1 -1
- package/dist/core/audit/types.js.map +1 -1
- package/dist/core/i18n/ar.d.ts.map +1 -1
- package/dist/core/i18n/ar.js +1 -0
- package/dist/core/i18n/ar.js.map +1 -1
- package/dist/core/i18n/de.d.ts.map +1 -1
- package/dist/core/i18n/de.js +1 -0
- package/dist/core/i18n/de.js.map +1 -1
- package/dist/core/i18n/en.d.ts +1 -0
- package/dist/core/i18n/en.d.ts.map +1 -1
- package/dist/core/i18n/en.js +1 -0
- package/dist/core/i18n/en.js.map +1 -1
- package/dist/core/i18n/es.d.ts.map +1 -1
- package/dist/core/i18n/es.js +1 -0
- package/dist/core/i18n/es.js.map +1 -1
- package/dist/core/i18n/fr.d.ts.map +1 -1
- package/dist/core/i18n/fr.js +1 -0
- package/dist/core/i18n/fr.js.map +1 -1
- package/dist/core/i18n/hi.d.ts.map +1 -1
- package/dist/core/i18n/hi.js +1 -0
- package/dist/core/i18n/hi.js.map +1 -1
- package/dist/core/i18n/id.d.ts.map +1 -1
- package/dist/core/i18n/id.js +1 -0
- package/dist/core/i18n/id.js.map +1 -1
- package/dist/core/i18n/ja.d.ts.map +1 -1
- package/dist/core/i18n/ja.js +1 -0
- package/dist/core/i18n/ja.js.map +1 -1
- package/dist/core/i18n/ko.d.ts.map +1 -1
- package/dist/core/i18n/ko.js +1 -0
- package/dist/core/i18n/ko.js.map +1 -1
- package/dist/core/i18n/pt.d.ts.map +1 -1
- package/dist/core/i18n/pt.js +1 -0
- package/dist/core/i18n/pt.js.map +1 -1
- package/dist/core/i18n/ru.d.ts.map +1 -1
- package/dist/core/i18n/ru.js +1 -0
- package/dist/core/i18n/ru.js.map +1 -1
- package/dist/core/i18n/vi.d.ts.map +1 -1
- package/dist/core/i18n/vi.js +1 -0
- package/dist/core/i18n/vi.js.map +1 -1
- package/dist/core/i18n/zh-hant.d.ts.map +1 -1
- package/dist/core/i18n/zh-hant.js +1 -0
- package/dist/core/i18n/zh-hant.js.map +1 -1
- package/dist/core/i18n/zh.d.ts.map +1 -1
- package/dist/core/i18n/zh.js +1 -0
- package/dist/core/i18n/zh.js.map +1 -1
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/limiter/index.d.ts +1 -1
- package/dist/core/limiter/index.d.ts.map +1 -1
- package/dist/core/limiter/index.js +1 -1
- package/dist/core/limiter/index.js.map +1 -1
- package/dist/core/limiter/quota.d.ts +5 -0
- package/dist/core/limiter/quota.d.ts.map +1 -1
- package/dist/core/limiter/quota.js +7 -0
- package/dist/core/limiter/quota.js.map +1 -1
- package/dist/core/object/system-objects.d.ts.map +1 -1
- package/dist/core/object/system-objects.js +2 -0
- package/dist/core/object/system-objects.js.map +1 -1
- package/dist/core/object/validate/field.d.ts.map +1 -1
- package/dist/core/object/validate/field.js +4 -2
- package/dist/core/object/validate/field.js.map +1 -1
- package/dist/core/observability/index.d.ts +64 -0
- package/dist/core/observability/index.d.ts.map +1 -0
- package/dist/core/observability/index.js +41 -0
- package/dist/core/observability/index.js.map +1 -0
- package/dist/core/provider/identity/directory.d.ts +3 -0
- package/dist/core/provider/identity/directory.d.ts.map +1 -1
- package/dist/core/provider/identity/types.d.ts +2 -0
- package/dist/core/provider/identity/types.d.ts.map +1 -1
- package/dist/core/proxy/types.d.ts +3 -0
- package/dist/core/proxy/types.d.ts.map +1 -1
- package/dist/core/proxy/types.js.map +1 -1
- package/dist/core/rbac/rls.d.ts +3 -1
- package/dist/core/rbac/rls.d.ts.map +1 -1
- package/dist/core/rbac/rls.js +12 -1
- package/dist/core/rbac/rls.js.map +1 -1
- package/dist/core/rbac/rowScope.d.ts.map +1 -1
- package/dist/core/rbac/rowScope.js +15 -0
- package/dist/core/rbac/rowScope.js.map +1 -1
- package/dist/core/script/types.d.ts +2 -0
- package/dist/core/script/types.d.ts.map +1 -1
- package/dist/core/script/types.js.map +1 -1
- package/dist/core/storage/impact.d.ts +49 -0
- package/dist/core/storage/impact.d.ts.map +1 -0
- package/dist/core/storage/impact.js +130 -0
- package/dist/core/storage/impact.js.map +1 -0
- package/dist/core/storage/index.d.ts +2 -0
- package/dist/core/storage/index.d.ts.map +1 -1
- package/dist/core/storage/index.js +1 -0
- package/dist/core/storage/index.js.map +1 -1
- package/dist/core/storage/system-tables.d.ts.map +1 -1
- package/dist/core/storage/system-tables.js +2 -0
- package/dist/core/storage/system-tables.js.map +1 -1
- package/dist/core/tools/pipeline.d.ts +25 -0
- package/dist/core/tools/pipeline.d.ts.map +1 -1
- package/dist/core/tools/types.d.ts +8 -0
- package/dist/core/tools/types.d.ts.map +1 -1
- package/dist/core/trace.d.ts +29 -0
- package/dist/core/trace.d.ts.map +1 -0
- package/dist/core/trace.js +41 -0
- package/dist/core/trace.js.map +1 -0
- package/dist/core/types/fields.d.ts +2 -0
- package/dist/core/types/fields.d.ts.map +1 -1
- package/dist/core/types/principal.d.ts +11 -3
- package/dist/core/types/principal.d.ts.map +1 -1
- package/dist/core/types/principal.js +19 -5
- package/dist/core/types/principal.js.map +1 -1
- package/dist/core/types/values.d.ts +3 -1
- package/dist/core/types/values.d.ts.map +1 -1
- package/dist/core/types/values.js +3 -1
- package/dist/core/types/values.js.map +1 -1
- package/dist/core/types/workflow.d.ts +7 -1
- package/dist/core/types/workflow.d.ts.map +1 -1
- package/dist/core/types/workflow.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/data-access/cursor.d.ts +2 -0
- package/dist/runtime/data-access/cursor.d.ts.map +1 -1
- package/dist/runtime/data-access/cursor.js +1 -1
- package/dist/runtime/data-access/cursor.js.map +1 -1
- package/dist/runtime/data-access/index.d.ts +2 -2
- package/dist/runtime/data-access/index.d.ts.map +1 -1
- package/dist/runtime/data-access/index.js +2 -2
- package/dist/runtime/data-access/index.js.map +1 -1
- package/dist/runtime/data-access/query-budget.d.ts.map +1 -1
- package/dist/runtime/data-access/query-budget.js +6 -3
- package/dist/runtime/data-access/query-budget.js.map +1 -1
- package/dist/runtime/data-access/query.d.ts +5 -0
- package/dist/runtime/data-access/query.d.ts.map +1 -1
- package/dist/runtime/data-access/query.js +43 -3
- package/dist/runtime/data-access/query.js.map +1 -1
- package/dist/runtime/data-access/rbac.d.ts +2 -0
- package/dist/runtime/data-access/rbac.d.ts.map +1 -1
- package/dist/runtime/data-access/rbac.js +29 -20
- package/dist/runtime/data-access/rbac.js.map +1 -1
- package/dist/runtime/data-access/sql-executor.d.ts +2 -0
- package/dist/runtime/data-access/sql-executor.d.ts.map +1 -1
- package/dist/runtime/data-access/sql-executor.js +3 -0
- package/dist/runtime/data-access/sql-executor.js.map +1 -1
- package/dist/runtime/data-access/types.d.ts +6 -0
- package/dist/runtime/data-access/types.d.ts.map +1 -1
- package/dist/runtime/data-access/types.js +5 -1
- package/dist/runtime/data-access/types.js.map +1 -1
- package/dist/runtime/engine.d.ts +34 -3
- package/dist/runtime/engine.d.ts.map +1 -1
- package/dist/runtime/engine.js +39 -6
- package/dist/runtime/engine.js.map +1 -1
- package/dist/runtime/tools/executor.d.ts +2 -0
- package/dist/runtime/tools/executor.d.ts.map +1 -1
- package/dist/runtime/tools/executor.js +9 -0
- package/dist/runtime/tools/executor.js.map +1 -1
- package/dist/subsystems/audit/index.d.ts +12 -1
- package/dist/subsystems/audit/index.d.ts.map +1 -1
- package/dist/subsystems/audit/index.js +16 -0
- package/dist/subsystems/audit/index.js.map +1 -1
- package/dist/subsystems/audit/store.d.ts.map +1 -1
- package/dist/subsystems/audit/store.js +32 -11
- package/dist/subsystems/audit/store.js.map +1 -1
- package/dist/subsystems/evidence/index.d.ts +2 -1
- package/dist/subsystems/evidence/index.d.ts.map +1 -1
- package/dist/subsystems/evidence/index.js +1 -1
- package/dist/subsystems/evidence/index.js.map +1 -1
- package/dist/subsystems/evidence/store.d.ts +7 -1
- package/dist/subsystems/evidence/store.d.ts.map +1 -1
- package/dist/subsystems/evidence/store.js +68 -0
- package/dist/subsystems/evidence/store.js.map +1 -1
- package/dist/subsystems/script/backend/types.d.ts +1 -0
- package/dist/subsystems/script/backend/types.d.ts.map +1 -1
- package/dist/subsystems/script/bridge.d.ts.map +1 -1
- package/dist/subsystems/script/bridge.js +7 -2
- package/dist/subsystems/script/bridge.js.map +1 -1
- package/dist/version.d.ts +8 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +8 -1
- package/dist/version.js.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/core/types/principal.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;CACxB,CAAC;AAOX,6BAA6B;AAC7B,MAAM,UAAU,aAAa,CAAC,OAAwB;IACpD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACnC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/core/types/principal.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;CACxB,CAAC;AAOX,6BAA6B;AAC7B,MAAM,UAAU,aAAa,CAAC,OAAwB;IACpD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AACnC,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,eAAe,CAAC,UAA4B,EAAE,MAAe,EAAE,QAAiB;IAC9F,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,UAAU;QACV,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,gBAAgB,CAAC,SAA0B;IACzD,OAAO,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,iBAAiB,CAAC,SAA0B;IAC1D,OAAO,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;AACrF,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,iBAAiB,CAC/B,SAA0B;IAE1B,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAA0B;IACzD,OAAO,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AACrE,CAAC"}
|
|
@@ -116,10 +116,12 @@ export declare const READ_SCOPES: {
|
|
|
116
116
|
readonly ALL: "all";
|
|
117
117
|
};
|
|
118
118
|
export type ReadScope = typeof READ_SCOPES[keyof typeof READ_SCOPES];
|
|
119
|
-
/** field markers that declare row-level scope columns (ownership/department) */
|
|
119
|
+
/** field markers that declare row-level scope columns (ownership/department/tenant) */
|
|
120
120
|
export declare const ROW_SCOPE_MARKERS: {
|
|
121
121
|
readonly OWNERSHIP: "ownership";
|
|
122
122
|
readonly DEPARTMENT: "department";
|
|
123
|
+
/** tenant column: every read/write is implicitly scoped to the subject's tenant */
|
|
124
|
+
readonly TENANT: "tenant";
|
|
123
125
|
};
|
|
124
126
|
export type RowScopeMarker = typeof ROW_SCOPE_MARKERS[keyof typeof ROW_SCOPE_MARKERS];
|
|
125
127
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;CAoBjB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;CAc7B,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGd,CAAC;AACX,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAC5E;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,gBAAgB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEzD,kFAAkF;AAClF,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,OAAO,qBAAqB,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAElG,kEAAkE;AAClE,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF,2CAA2C;AAC3C,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,
|
|
1
|
+
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;CAoBjB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;CAc7B,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGd,CAAC;AACX,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAC5E;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,gBAAgB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEzD,kFAAkF;AAClF,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,OAAO,qBAAqB,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAElG,kEAAkE;AAClE,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF,2CAA2C;AAC3C,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,uFAAuF;AACvF,eAAO,MAAM,iBAAiB;;;IAG5B,mFAAmF;;CAE3E,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE3E,mFAAmF;AACnF,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,0BAA0B;AAC1B,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB;;CAEnB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,gBAAgB,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAEpF,sCAAsC;AACtC,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,6DAA6D;AAC7D,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,iEAAiE;AACjE,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;;;CAKf,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAEzE,0DAA0D;AAC1D,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -75,10 +75,12 @@ export const READ_SCOPES = {
|
|
|
75
75
|
DEPARTMENT: 'department',
|
|
76
76
|
ALL: 'all',
|
|
77
77
|
};
|
|
78
|
-
/** field markers that declare row-level scope columns (ownership/department) */
|
|
78
|
+
/** field markers that declare row-level scope columns (ownership/department/tenant) */
|
|
79
79
|
export const ROW_SCOPE_MARKERS = {
|
|
80
80
|
OWNERSHIP: 'ownership',
|
|
81
81
|
DEPARTMENT: 'department',
|
|
82
|
+
/** tenant column: every read/write is implicitly scoped to the subject's tenant */
|
|
83
|
+
TENANT: 'tenant',
|
|
82
84
|
};
|
|
83
85
|
/**
|
|
84
86
|
* where a scope column's values come from:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACN,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,eAAe;IAC/B,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,WAAW;IACvB,SAAS,EAAE,UAAU;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;CAChB,CAAC;AAEX,wEAAwE;AACxE,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,cAAc;IACjB,GAAG,0BAA0B;CACrB,CAAC;AAUX,kFAAkF;AAClF,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,eAAe;IACrB,UAAU,EAAE,qBAAqB;CACzB,CAAC;AAGX,kEAAkE;AAClE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,2CAA2C;AAC3C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,YAAY;IACxB,GAAG,EAAE,KAAK;CACF,CAAC;AAGX,
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"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"}
|
|
@@ -109,6 +109,9 @@ export interface WorkflowTimer {
|
|
|
109
109
|
* (`weavekit_workflow_timers`, claimed with `FOR UPDATE SKIP LOCKED`). The
|
|
110
110
|
* seam lets an enterprise backend (e.g. Redis/HA coordination) plug in without
|
|
111
111
|
* forking core; the engine never imports a non-PG implementation.
|
|
112
|
+
*
|
|
113
|
+
* Stable seam (`@enterprise-reserved`): HA / multi-instance timer coordination
|
|
114
|
+
* is enterprise E3.
|
|
112
115
|
*/
|
|
113
116
|
export interface WorkflowTimerStore {
|
|
114
117
|
/** attach/refresh the single timer for a record (one per record) */
|
|
@@ -120,7 +123,10 @@ export interface WorkflowTimerStore {
|
|
|
120
123
|
/** finalize a claimed timer (idempotent) */
|
|
121
124
|
complete(timer: WorkflowTimer): Promise<void>;
|
|
122
125
|
}
|
|
123
|
-
/**
|
|
126
|
+
/**
|
|
127
|
+
* Umbrella seam: an alternative workflow backend (enterprise), default is the
|
|
128
|
+
* engine's PG store. Stable seam (`@enterprise-reserved`) — enterprise E3.
|
|
129
|
+
*/
|
|
124
130
|
export interface WorkflowBackend {
|
|
125
131
|
readonly timerStore: WorkflowTimerStore;
|
|
126
132
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/core/types/workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sEAAsE;AACtE,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAElD,yEAAyE;AACzE,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAE/C,0CAA0C;AAC1C,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAE9F,kEAAkE;AAClE,eAAO,MAAM,qBAAqB;IAChC,8CAA8C;;IAE9C,sCAAsC;;CAE9B,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAEpG,wEAAwE;AACxE,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AACX,MAAM,MAAM,qBAAqB,GAC/B,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,OAAO,wBAAwB,CAAC,CAAC;AAE3E,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,+EAA+E;IAC/E,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAED,oDAAoD;AACpD,MAAM,WAAW,cAAc;IAC7B,gFAAgF;IAChF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,kEAAkE;IAClE,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC3B;AAED,wCAAwC;AACxC,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,2EAA2E;IAC3E,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,MAAM,EAAE,cAAc,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qGAAqG;IACrG,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,0DAA0D;AAC1D,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,kDAAkD;AAClD,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kFAAkF;IAClF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;CAG1B,CAAC;AAEX,oDAAoD;AACpD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,IAAI,CAAC;IACZ,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/core/types/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/core/types/workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAU,CAAC;AAElD,yEAAyE;AACzE,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAE/C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC;AAGX,kEAAkE;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,8CAA8C;IAC9C,GAAG,EAAE,KAAK;IACV,sCAAsC;IACtC,GAAG,EAAE,KAAK;CACF,CAAC;AAGX,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC;AAmEX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,EAAE;CACL,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/core/types/workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAU,CAAC;AAElD,yEAAyE;AACzE,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAE/C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC;AAGX,kEAAkE;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,8CAA8C;IAC9C,GAAG,EAAE,KAAK;IACV,sCAAsC;IACtC,GAAG,EAAE,KAAK;CACF,CAAC;AAGX,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAC;AAmEX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,EAAE;CACL,CAAC;AAqDX,8DAA8D;AAC9D,MAAM,cAAc,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAW,CAAC;AAE3G,wFAAwF;AACxF,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,MAAM,KAAK,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACrC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAgC,CAAC;IAC/D,OAAO,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -25,7 +25,7 @@ export type { LoadedFieldType } from './runtime/fieldtypes/index.js';
|
|
|
25
25
|
export { PROJECT_TYPES } from './cli/types/values.js';
|
|
26
26
|
export { PROJECT_TYPE_DEFINITIONS, projectTypeDef, isBusinessUI } from './cli/project-types/manifest.js';
|
|
27
27
|
export type { ProjectType } from './cli/types/values.js';
|
|
28
|
-
export { version } from './version.js';
|
|
28
|
+
export { CONTRACT_VERSION, version } from './version.js';
|
|
29
29
|
/**
|
|
30
30
|
* Assemble an engine from a config: load the schema from `schemaDir`
|
|
31
31
|
* (default `.` — the project root's `objects/` directory), then build the
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKxE,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC3F,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC1G,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC5H,YAAY,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACzG,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKxE,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC3F,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC1G,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC5H,YAAY,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACzG,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEzD;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CA0DhF"}
|
package/dist/index.js
CHANGED
|
@@ -25,7 +25,7 @@ export { scaffoldProject } from './cli/scaffold.js';
|
|
|
25
25
|
export { loadFieldTypesDir, normalizeFieldTypeRegistration, resolveFieldTypeRegistry } from './runtime/fieldtypes/index.js';
|
|
26
26
|
export { PROJECT_TYPES } from './cli/types/values.js';
|
|
27
27
|
export { PROJECT_TYPE_DEFINITIONS, projectTypeDef, isBusinessUI } from './cli/project-types/manifest.js';
|
|
28
|
-
export { version } from './version.js';
|
|
28
|
+
export { CONTRACT_VERSION, version } from './version.js';
|
|
29
29
|
/**
|
|
30
30
|
* Assemble an engine from a config: load the schema from `schemaDir`
|
|
31
31
|
* (default `.` — the project root's `objects/` directory), then build the
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,gFAAgF;AAChF,6GAA6G;AAC7G,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAmB3F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE5H,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAGzG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/cursor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/cursor.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAC9D,eAAO,MAAM,cAAc,IAAI,CAAC;AAQhC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAG/D;AAED,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,EAAE,CAUtD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SchemaError } from '../../core/index.js';
|
|
2
2
|
/** cursor payload version (bumped if the encoding changes) */
|
|
3
|
-
const CURSOR_VERSION = 1;
|
|
3
|
+
export const CURSOR_VERSION = 1;
|
|
4
4
|
/**
|
|
5
5
|
* Opaque, URL-safe keyset cursor (base64url of `{ v, k }`). Callers treat it as
|
|
6
6
|
* a token; only this module knows the shape. Values are the raw primary key
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/runtime/data-access/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,8DAA8D;AAC9D,MAAM,cAAc,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/runtime/data-access/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAQhC;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,MAAM,OAAO,GAAkB,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;IACrE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC5E,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAkB,CAAC;QAC/F,IAAI,OAAO,CAAC,CAAC,KAAK,cAAc,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxF,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,OAAO,CAAC,CAAC,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,WAAW,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC"}
|
|
@@ -2,8 +2,8 @@ export { FILTER_OPS, SORT_DIRS, PAGINATION, WRITE_MODES } from "./values.js";
|
|
|
2
2
|
export type { FilterOp, SortDir, WriteMode } from "./values.js";
|
|
3
3
|
export type { Filter, FilterGroup, FilterValue, Sort, FindOptions, FindResult, DataAccessContext, ObjectDataAccess, Queryable, } from "./types.js";
|
|
4
4
|
export { buildWhere, buildOrderBy, buildColumns, resolvePagination, buildFindSql, buildCountSql, } from "./builder.js";
|
|
5
|
-
export { isSystemCtx, subjectOf } from "./types.js";
|
|
6
|
-
export { decodeCursor, encodeCursor } from "./cursor.js";
|
|
5
|
+
export { isSystemCtx, subjectOf, tenantOf } from "./types.js";
|
|
6
|
+
export { CURSOR_VERSION, decodeCursor, encodeCursor } from "./cursor.js";
|
|
7
7
|
export { QUERY_BUDGET_DEFAULTS, assertQueryBudget, countFilterConditions, resolveQueryBudget, } from "./query-budget.js";
|
|
8
8
|
export type { QueryBudget } from "./query-budget.js";
|
|
9
9
|
export type { BuiltQuery, BuildContext, RowScope } from "./builder.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7E,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAChE,YAAY,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,IAAI,EACJ,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7E,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAChE,YAAY,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,IAAI,EACJ,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EACL,SAAS,EACT,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,YAAY,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { FILTER_OPS, SORT_DIRS, PAGINATION, WRITE_MODES } from "./values.js";
|
|
2
2
|
export { buildWhere, buildOrderBy, buildColumns, resolvePagination, buildFindSql, buildCountSql, } from "./builder.js";
|
|
3
|
-
export { isSystemCtx, subjectOf } from "./types.js";
|
|
4
|
-
export { decodeCursor, encodeCursor } from "./cursor.js";
|
|
3
|
+
export { isSystemCtx, subjectOf, tenantOf } from "./types.js";
|
|
4
|
+
export { CURSOR_VERSION, decodeCursor, encodeCursor } from "./cursor.js";
|
|
5
5
|
export { QUERY_BUDGET_DEFAULTS, assertQueryBudget, countFilterConditions, resolveQueryBudget, } from "./query-budget.js";
|
|
6
6
|
export { validateRecord } from "./validate.js";
|
|
7
7
|
export { seqBucket, renderSeq, generateSeqNo, } from "./seqno.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/data-access/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAa7E,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/data-access/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAa7E,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EACL,SAAS,EACT,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-budget.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/query-budget.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB;;;;;;;;CAQF,CAAC;AAOjC,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAW9E;AAMD,mFAAmF;AACnF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"query-budget.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/query-budget.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGtD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB;;;;;;;;CAQF,CAAC;AAOjC,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAW9E;AAMD,mFAAmF;AACnF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAexE;AAED,8DAA8D;AAC9D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAK/F"}
|
|
@@ -33,13 +33,16 @@ function exceeded(limit, max, locale) {
|
|
|
33
33
|
}
|
|
34
34
|
/** count filter conditions, expanding `$or` groups into their member conditions */
|
|
35
35
|
export function countFilterConditions(filter) {
|
|
36
|
-
if (filter === undefined)
|
|
36
|
+
if (filter === undefined || filter === null || typeof filter !== 'object')
|
|
37
37
|
return 0;
|
|
38
38
|
let count = 0;
|
|
39
39
|
for (const [key, value] of Object.entries(filter)) {
|
|
40
40
|
if (key === '$or' && Array.isArray(value)) {
|
|
41
|
-
for (const group of value)
|
|
42
|
-
|
|
41
|
+
for (const group of value) {
|
|
42
|
+
if (group !== null && typeof group === 'object' && !Array.isArray(group)) {
|
|
43
|
+
count += Object.keys(group).length;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
43
46
|
}
|
|
44
47
|
else {
|
|
45
48
|
count += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-budget.js","sourceRoot":"","sources":["../../../src/runtime/data-access/query-budget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA0BzC,8CAA8C;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,OAAO,EAAE,UAAU,CAAC,SAAS;IAC7B,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,EAAE;IACd,QAAQ,EAAE,CAAC;IACX,YAAY,EAAE,MAAM;IACpB,kBAAkB,EAAE,KAAK;CACK,CAAC;AAEjC,uCAAuC;AACvC,SAAS,QAAQ,CAAC,KAAyB,EAAE,QAAgB;IAC3D,OAAO,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnG,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,OAA8B;IAC/D,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC/D,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC;QACjE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,CAAC;QACpE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,CAAC;QACpE,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,qBAAqB,CAAC,UAAU,CAAC;QAC1E,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,CAAC;QACpE,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,qBAAqB,CAAC,YAAY,CAAC;QAChF,kBAAkB,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,kBAAkB,CAAC;KACnG,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAE,MAAe;IAC3D,MAAM,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,MAA0B;IAC9D,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"query-budget.js","sourceRoot":"","sources":["../../../src/runtime/data-access/query-budget.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type MetricsSink } from '../../core/index.js';
|
|
1
2
|
import type { AuditSink } from '../../core/audit/index.js';
|
|
2
3
|
import type { EventPublisher } from '../../core/provider/event/index.js';
|
|
3
4
|
import { type GuardrailPolicy, type ScriptDispatcher, type WorkflowTimerSync } from '../../core/index.js';
|
|
@@ -28,6 +29,8 @@ export declare class DefaultObjectDataAccess implements ObjectDataAccess {
|
|
|
28
29
|
private readonly evidence?;
|
|
29
30
|
/** schema signature (registry-derived) recorded on evidence; `ctx.schemaRevision` overrides */
|
|
30
31
|
private readonly schemaRevision?;
|
|
32
|
+
/** optional metrics sink (query-budget rejections); absent = zero overhead */
|
|
33
|
+
private readonly metrics?;
|
|
31
34
|
constructor(options?: {
|
|
32
35
|
audit?: AuditSink;
|
|
33
36
|
script?: ScriptDispatcher;
|
|
@@ -39,6 +42,7 @@ export declare class DefaultObjectDataAccess implements ObjectDataAccess {
|
|
|
39
42
|
budget?: QueryBudget;
|
|
40
43
|
evidence?: EvidenceSink;
|
|
41
44
|
schemaRevision?: string;
|
|
45
|
+
metrics?: MetricsSink;
|
|
42
46
|
});
|
|
43
47
|
/**
|
|
44
48
|
* Run the read hook (`onLoad`) over a fetched batch. The hook receives the
|
|
@@ -116,5 +120,6 @@ export declare function createDataAccess(options?: {
|
|
|
116
120
|
budget?: QueryBudget;
|
|
117
121
|
evidence?: EvidenceSink;
|
|
118
122
|
schemaRevision?: string;
|
|
123
|
+
metrics?: MetricsSink;
|
|
119
124
|
}): ObjectDataAccess;
|
|
120
125
|
//# sourceMappingURL=query.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/query.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SchemaError, primaryFieldsOf, encodeRecordKey, decodeRecordKey, canonicalizePrimaryValue, principalActorId } from '../../core/index.js';
|
|
1
|
+
import { SchemaError, METRIC_NAMES, primaryFieldsOf, encodeRecordKey, decodeRecordKey, canonicalizePrimaryValue, principalActorId } from '../../core/index.js';
|
|
2
2
|
import { DETAILS_COLUMNS, FIELD_TYPES, isSideTableVirtualField, RECORD_META_ID_FIELD, recordKeySql, recordMetaTableName } from '../../core/index.js';
|
|
3
3
|
import { AUDIT_ACTOR_TYPES, DATA_ACTIONS } from '../../core/audit/index.js';
|
|
4
4
|
import { NOOP_SCRIPT_DISPATCHER, SCRIPT_HOOKS } from '../../core/index.js';
|
|
@@ -9,7 +9,7 @@ import { insertLinks, replaceLinks } from './link.js';
|
|
|
9
9
|
import { runWorkflowTransition, getWorkflowStatus, acquireWorkflowLock, releaseWorkflowLock, getWorkflowHistory, getWorkflowTodos, overrideWorkflow, } from './workflow.js';
|
|
10
10
|
import { computeFormulas } from './formula.js';
|
|
11
11
|
import { generateSeqNo } from './seqno.js';
|
|
12
|
-
import { subjectOf } from './types.js';
|
|
12
|
+
import { subjectOf, tenantOf } from './types.js';
|
|
13
13
|
import { validateRecord } from './validate.js';
|
|
14
14
|
import { FILTER_OPS, SORT_DIRS, WRITE_MODES } from './values.js';
|
|
15
15
|
import { decodeCursor, encodeCursor } from './cursor.js';
|
|
@@ -17,6 +17,10 @@ import { QUERY_BUDGET_DEFAULTS, assertQueryBudget } from './query-budget.js';
|
|
|
17
17
|
import { EXECUTION_OUTCOMES, EXECUTION_STAGES } from '../../core/index.js';
|
|
18
18
|
import { upsertRecordMeta, deleteRecordMeta } from '../record-meta/index.js';
|
|
19
19
|
const q = (id) => `"${id}"`;
|
|
20
|
+
/** the object's tenant column, when it declares a `tenant: true` field */
|
|
21
|
+
function tenantFieldName(def) {
|
|
22
|
+
return def.fields.find((f) => f.tenant === true)?.name;
|
|
23
|
+
}
|
|
20
24
|
/** cross-object formula authorization derived from the request context */
|
|
21
25
|
function formulaAuth(ctx) {
|
|
22
26
|
const subject = subjectOf(ctx);
|
|
@@ -74,6 +78,7 @@ async function auditWrite(sink, ctx, action, objectName, objectId, changes, erro
|
|
|
74
78
|
if (sink === undefined)
|
|
75
79
|
return;
|
|
76
80
|
const principal = ctx.principal;
|
|
81
|
+
const tenant = tenantOf(ctx);
|
|
77
82
|
const event = {
|
|
78
83
|
actorType: principal.kind === 'user' ? AUDIT_ACTOR_TYPES.USER : AUDIT_ACTOR_TYPES.SYSTEM,
|
|
79
84
|
actorId: principalActorId(principal),
|
|
@@ -83,7 +88,10 @@ async function auditWrite(sink, ctx, action, objectName, objectId, changes, erro
|
|
|
83
88
|
changes,
|
|
84
89
|
isError: error !== undefined,
|
|
85
90
|
errorCode: error instanceof SchemaError ? error.code : undefined,
|
|
91
|
+
...(principal.kind === 'system' ? { meta: { capability: principal.capability } } : {}),
|
|
86
92
|
...(ctx.requestId === undefined ? {} : { requestId: ctx.requestId }),
|
|
93
|
+
...(ctx.traceId === undefined ? {} : { traceId: ctx.traceId }),
|
|
94
|
+
...(tenant === undefined ? {} : { tenantId: tenant }),
|
|
87
95
|
timestamp: new Date(),
|
|
88
96
|
};
|
|
89
97
|
if (before !== undefined)
|
|
@@ -105,6 +113,7 @@ function scriptUserOf(ctx) {
|
|
|
105
113
|
id: subject?.id ?? 'system',
|
|
106
114
|
roles: subject?.roles ?? [],
|
|
107
115
|
departmentId: subject?.departmentId,
|
|
116
|
+
...(subject?.tenantId === undefined ? {} : { tenantId: subject.tenantId }),
|
|
108
117
|
};
|
|
109
118
|
}
|
|
110
119
|
const PARENT_COLUMNS = new Set([
|
|
@@ -256,6 +265,8 @@ export class DefaultObjectDataAccess {
|
|
|
256
265
|
evidence;
|
|
257
266
|
/** schema signature (registry-derived) recorded on evidence; `ctx.schemaRevision` overrides */
|
|
258
267
|
schemaRevision;
|
|
268
|
+
/** optional metrics sink (query-budget rejections); absent = zero overhead */
|
|
269
|
+
metrics;
|
|
259
270
|
constructor(options = {}) {
|
|
260
271
|
this.audit = options.audit;
|
|
261
272
|
this.script = options.script ?? NOOP_SCRIPT_DISPATCHER;
|
|
@@ -267,6 +278,7 @@ export class DefaultObjectDataAccess {
|
|
|
267
278
|
this.budget = options.budget ?? { ...QUERY_BUDGET_DEFAULTS };
|
|
268
279
|
this.evidence = options.evidence;
|
|
269
280
|
this.schemaRevision = options.schemaRevision;
|
|
281
|
+
this.metrics = options.metrics;
|
|
270
282
|
}
|
|
271
283
|
/**
|
|
272
284
|
* Run the read hook (`onLoad`) over a fetched batch. The hook receives the
|
|
@@ -347,7 +359,18 @@ export class DefaultObjectDataAccess {
|
|
|
347
359
|
const q = ctx.client ?? ctx.pool;
|
|
348
360
|
const pks = primaryFieldsOf(def);
|
|
349
361
|
const budget = ctx.budget ?? this.budget;
|
|
350
|
-
|
|
362
|
+
try {
|
|
363
|
+
assertQueryBudget(opts, budget, ctx.locale);
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
if (error instanceof SchemaError) {
|
|
367
|
+
this.metrics?.counter(METRIC_NAMES.QUERY_BUDGET_REJECT, 1, {
|
|
368
|
+
object: objectName,
|
|
369
|
+
limit: String(error.params.limit ?? ''),
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
throw error;
|
|
373
|
+
}
|
|
351
374
|
const { limit } = resolvePagination(opts, budget.maxRows);
|
|
352
375
|
// keyset cursor (single primary key): `pk > cursor` ordered by pk. A
|
|
353
376
|
// caller-provided sort is ignored in cursor mode (documented) so pages
|
|
@@ -450,6 +473,7 @@ export class DefaultObjectDataAccess {
|
|
|
450
473
|
void this.evidence
|
|
451
474
|
.record({
|
|
452
475
|
...(ctx.requestId === undefined ? {} : { requestId: ctx.requestId }),
|
|
476
|
+
...(ctx.traceId === undefined ? {} : { traceId: ctx.traceId }),
|
|
453
477
|
...(schemaRevision === undefined ? {} : { schemaRevision }),
|
|
454
478
|
actor: guardrailCtx.actor,
|
|
455
479
|
...(subject === undefined ? {} : { subjectId: subject.id }),
|
|
@@ -519,6 +543,12 @@ export class DefaultObjectDataAccess {
|
|
|
519
543
|
: raw.default;
|
|
520
544
|
}
|
|
521
545
|
Object.assign(record, payload);
|
|
546
|
+
// multi-tenancy: force the tenant column to the subject's tenant — a
|
|
547
|
+
// tenant-scoped subject must not create rows attributed to another tenant
|
|
548
|
+
const tenantField = tenantFieldName(def);
|
|
549
|
+
const tenant = tenantOf(ctx);
|
|
550
|
+
if (tenantField !== undefined && tenant !== undefined)
|
|
551
|
+
record[tenantField] = tenant;
|
|
522
552
|
const seqFields = def.fields.filter((f) => f.type === FIELD_TYPES.SEQ_NO);
|
|
523
553
|
if (seqFields.length > 0) {
|
|
524
554
|
for (const f of seqFields)
|
|
@@ -629,6 +659,16 @@ export class DefaultObjectDataAccess {
|
|
|
629
659
|
throw new SchemaError('object.primary.mutable', { object: objectName, field: name }, ctx.locale);
|
|
630
660
|
}
|
|
631
661
|
}
|
|
662
|
+
// multi-tenancy: the tenant column is immutable — a tenant-scoped subject
|
|
663
|
+
// must not move a row into another tenant
|
|
664
|
+
const tenantField = tenantFieldName(def);
|
|
665
|
+
const tenant = tenantOf(ctx);
|
|
666
|
+
if (tenantField !== undefined &&
|
|
667
|
+
tenant !== undefined &&
|
|
668
|
+
payload[tenantField] !== undefined &&
|
|
669
|
+
payload[tenantField] !== tenant) {
|
|
670
|
+
throw new SchemaError('object.tenant.immutable', { object: objectName, field: tenantField }, ctx.locale);
|
|
671
|
+
}
|
|
632
672
|
const now = new Date();
|
|
633
673
|
const record = { ...existing, ...payload };
|
|
634
674
|
record[RECORD_META_ID_FIELD] = metaKey;
|