@undefineds.co/drizzle-solid 0.2.6
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-DRAFT.md +444 -0
- package/LICENSE +21 -0
- package/README.md +563 -0
- package/dist/core/aggregates.d.ts +19 -0
- package/dist/core/aggregates.d.ts.map +1 -0
- package/dist/core/aggregates.js +51 -0
- package/dist/core/aggregates.js.map +1 -0
- package/dist/core/ast-to-sparql.d.ts +62 -0
- package/dist/core/ast-to-sparql.d.ts.map +1 -0
- package/dist/core/ast-to-sparql.js +107 -0
- package/dist/core/ast-to-sparql.js.map +1 -0
- package/dist/core/compile-time-types.d.ts +37 -0
- package/dist/core/compile-time-types.d.ts.map +1 -0
- package/dist/core/compile-time-types.js +71 -0
- package/dist/core/compile-time-types.js.map +1 -0
- package/dist/core/comunica-patch.d.ts +7 -0
- package/dist/core/comunica-patch.d.ts.map +1 -0
- package/dist/core/comunica-patch.js +76 -0
- package/dist/core/comunica-patch.js.map +1 -0
- package/dist/core/conflict-resolution.d.ts +110 -0
- package/dist/core/conflict-resolution.d.ts.map +1 -0
- package/dist/core/conflict-resolution.js +251 -0
- package/dist/core/conflict-resolution.js.map +1 -0
- package/dist/core/discovery/composite-discovery.d.ts +18 -0
- package/dist/core/discovery/composite-discovery.d.ts.map +1 -0
- package/dist/core/discovery/composite-discovery.js +118 -0
- package/dist/core/discovery/composite-discovery.js.map +1 -0
- package/dist/core/discovery/index.d.ts +7 -0
- package/dist/core/discovery/index.d.ts.map +1 -0
- package/dist/core/discovery/index.js +23 -0
- package/dist/core/discovery/index.js.map +1 -0
- package/dist/core/discovery/interop-discovery.d.ts +36 -0
- package/dist/core/discovery/interop-discovery.d.ts.map +1 -0
- package/dist/core/discovery/interop-discovery.js +646 -0
- package/dist/core/discovery/interop-discovery.js.map +1 -0
- package/dist/core/discovery/interop-tables.d.ts +37 -0
- package/dist/core/discovery/interop-tables.d.ts.map +1 -0
- package/dist/core/discovery/interop-tables.js +68 -0
- package/dist/core/discovery/interop-tables.js.map +1 -0
- package/dist/core/discovery/interop-types.d.ts +36 -0
- package/dist/core/discovery/interop-types.d.ts.map +1 -0
- package/dist/core/discovery/interop-types.js +42 -0
- package/dist/core/discovery/interop-types.js.map +1 -0
- package/dist/core/discovery/provider-cache.d.ts +99 -0
- package/dist/core/discovery/provider-cache.d.ts.map +1 -0
- package/dist/core/discovery/provider-cache.js +296 -0
- package/dist/core/discovery/provider-cache.js.map +1 -0
- package/dist/core/discovery/typeindex-discovery.d.ts +30 -0
- package/dist/core/discovery/typeindex-discovery.d.ts.map +1 -0
- package/dist/core/discovery/typeindex-discovery.js +136 -0
- package/dist/core/discovery/typeindex-discovery.js.map +1 -0
- package/dist/core/discovery/types.d.ts +128 -0
- package/dist/core/discovery/types.d.ts.map +1 -0
- package/dist/core/discovery/types.js +3 -0
- package/dist/core/discovery/types.js.map +1 -0
- package/dist/core/execution/index.d.ts +14 -0
- package/dist/core/execution/index.d.ts.map +1 -0
- package/dist/core/execution/index.js +20 -0
- package/dist/core/execution/index.js.map +1 -0
- package/dist/core/execution/ldp-executor.d.ts +66 -0
- package/dist/core/execution/ldp-executor.d.ts.map +1 -0
- package/dist/core/execution/ldp-executor.js +584 -0
- package/dist/core/execution/ldp-executor.js.map +1 -0
- package/dist/core/execution/ldp-strategy.d.ts +53 -0
- package/dist/core/execution/ldp-strategy.d.ts.map +1 -0
- package/dist/core/execution/ldp-strategy.js +104 -0
- package/dist/core/execution/ldp-strategy.js.map +1 -0
- package/dist/core/execution/pod-executor-types.d.ts +9 -0
- package/dist/core/execution/pod-executor-types.d.ts.map +1 -0
- package/dist/core/execution/pod-executor-types.js +3 -0
- package/dist/core/execution/pod-executor-types.js.map +1 -0
- package/dist/core/execution/pod-executor.d.ts +59 -0
- package/dist/core/execution/pod-executor.d.ts.map +1 -0
- package/dist/core/execution/pod-executor.js +221 -0
- package/dist/core/execution/pod-executor.js.map +1 -0
- package/dist/core/execution/sparql-strategy.d.ts +80 -0
- package/dist/core/execution/sparql-strategy.d.ts.map +1 -0
- package/dist/core/execution/sparql-strategy.js +306 -0
- package/dist/core/execution/sparql-strategy.js.map +1 -0
- package/dist/core/execution/strategy-factory.d.ts +54 -0
- package/dist/core/execution/strategy-factory.d.ts.map +1 -0
- package/dist/core/execution/strategy-factory.js +78 -0
- package/dist/core/execution/strategy-factory.js.map +1 -0
- package/dist/core/execution/types.d.ts +80 -0
- package/dist/core/execution/types.d.ts.map +1 -0
- package/dist/core/execution/types.js +8 -0
- package/dist/core/execution/types.js.map +1 -0
- package/dist/core/expressions.d.ts +35 -0
- package/dist/core/expressions.d.ts.map +1 -0
- package/dist/core/expressions.js +53 -0
- package/dist/core/expressions.js.map +1 -0
- package/dist/core/federated/executor.d.ts +95 -0
- package/dist/core/federated/executor.d.ts.map +1 -0
- package/dist/core/federated/executor.js +425 -0
- package/dist/core/federated/executor.js.map +1 -0
- package/dist/core/federated/index.d.ts +3 -0
- package/dist/core/federated/index.d.ts.map +1 -0
- package/dist/core/federated/index.js +19 -0
- package/dist/core/federated/index.js.map +1 -0
- package/dist/core/federated/types.d.ts +69 -0
- package/dist/core/federated/types.d.ts.map +1 -0
- package/dist/core/federated/types.js +8 -0
- package/dist/core/federated/types.js.map +1 -0
- package/dist/core/notifications/channels/base-channel.d.ts +29 -0
- package/dist/core/notifications/channels/base-channel.d.ts.map +1 -0
- package/dist/core/notifications/channels/base-channel.js +63 -0
- package/dist/core/notifications/channels/base-channel.js.map +1 -0
- package/dist/core/notifications/channels/index.d.ts +4 -0
- package/dist/core/notifications/channels/index.d.ts.map +1 -0
- package/dist/core/notifications/channels/index.js +11 -0
- package/dist/core/notifications/channels/index.js.map +1 -0
- package/dist/core/notifications/channels/sse-channel.d.ts +50 -0
- package/dist/core/notifications/channels/sse-channel.d.ts.map +1 -0
- package/dist/core/notifications/channels/sse-channel.js +210 -0
- package/dist/core/notifications/channels/sse-channel.js.map +1 -0
- package/dist/core/notifications/channels/websocket-channel.d.ts +16 -0
- package/dist/core/notifications/channels/websocket-channel.d.ts.map +1 -0
- package/dist/core/notifications/channels/websocket-channel.js +87 -0
- package/dist/core/notifications/channels/websocket-channel.js.map +1 -0
- package/dist/core/notifications/index.d.ts +3 -0
- package/dist/core/notifications/index.d.ts.map +1 -0
- package/dist/core/notifications/index.js +6 -0
- package/dist/core/notifications/index.js.map +1 -0
- package/dist/core/notifications/notifications-client.d.ts +87 -0
- package/dist/core/notifications/notifications-client.d.ts.map +1 -0
- package/dist/core/notifications/notifications-client.js +460 -0
- package/dist/core/notifications/notifications-client.js.map +1 -0
- package/dist/core/notifications/types.d.ts +228 -0
- package/dist/core/notifications/types.d.ts.map +1 -0
- package/dist/core/notifications/types.js +7 -0
- package/dist/core/notifications/types.js.map +1 -0
- package/dist/core/pod-database.d.ts +383 -0
- package/dist/core/pod-database.d.ts.map +1 -0
- package/dist/core/pod-database.js +1212 -0
- package/dist/core/pod-database.js.map +1 -0
- package/dist/core/pod-dialect.d.ts +294 -0
- package/dist/core/pod-dialect.d.ts.map +1 -0
- package/dist/core/pod-dialect.js +1300 -0
- package/dist/core/pod-dialect.js.map +1 -0
- package/dist/core/pod-discovery.d.ts +20 -0
- package/dist/core/pod-discovery.d.ts.map +1 -0
- package/dist/core/pod-discovery.js +115 -0
- package/dist/core/pod-discovery.js.map +1 -0
- package/dist/core/pod-session.d.ts +44 -0
- package/dist/core/pod-session.d.ts.map +1 -0
- package/dist/core/pod-session.js +116 -0
- package/dist/core/pod-session.js.map +1 -0
- package/dist/core/pod-table.d.ts +710 -0
- package/dist/core/pod-table.d.ts.map +1 -0
- package/dist/core/pod-table.js +1300 -0
- package/dist/core/pod-table.js.map +1 -0
- package/dist/core/profile-manager.d.ts +90 -0
- package/dist/core/profile-manager.d.ts.map +1 -0
- package/dist/core/profile-manager.js +168 -0
- package/dist/core/profile-manager.js.map +1 -0
- package/dist/core/publish-manager.d.ts +90 -0
- package/dist/core/publish-manager.d.ts.map +1 -0
- package/dist/core/publish-manager.js +147 -0
- package/dist/core/publish-manager.js.map +1 -0
- package/dist/core/query-builders/delete-query-builder.d.ts +36 -0
- package/dist/core/query-builders/delete-query-builder.d.ts.map +1 -0
- package/dist/core/query-builders/delete-query-builder.js +144 -0
- package/dist/core/query-builders/delete-query-builder.js.map +1 -0
- package/dist/core/query-builders/helpers.d.ts +4 -0
- package/dist/core/query-builders/helpers.d.ts.map +1 -0
- package/dist/core/query-builders/helpers.js +30 -0
- package/dist/core/query-builders/helpers.js.map +1 -0
- package/dist/core/query-builders/index.d.ts +6 -0
- package/dist/core/query-builders/index.d.ts.map +1 -0
- package/dist/core/query-builders/index.js +12 -0
- package/dist/core/query-builders/index.js.map +1 -0
- package/dist/core/query-builders/insert-query-builder.d.ts +27 -0
- package/dist/core/query-builders/insert-query-builder.d.ts.map +1 -0
- package/dist/core/query-builders/insert-query-builder.js +128 -0
- package/dist/core/query-builders/insert-query-builder.js.map +1 -0
- package/dist/core/query-builders/select-query-builder.d.ts +106 -0
- package/dist/core/query-builders/select-query-builder.d.ts.map +1 -0
- package/dist/core/query-builders/select-query-builder.js +1264 -0
- package/dist/core/query-builders/select-query-builder.js.map +1 -0
- package/dist/core/query-builders/types.d.ts +37 -0
- package/dist/core/query-builders/types.d.ts.map +1 -0
- package/dist/core/query-builders/types.js +3 -0
- package/dist/core/query-builders/types.js.map +1 -0
- package/dist/core/query-builders/update-query-builder.d.ts +38 -0
- package/dist/core/query-builders/update-query-builder.d.ts.map +1 -0
- package/dist/core/query-builders/update-query-builder.js +168 -0
- package/dist/core/query-builders/update-query-builder.js.map +1 -0
- package/dist/core/query-conditions.d.ts +52 -0
- package/dist/core/query-conditions.d.ts.map +1 -0
- package/dist/core/query-conditions.js +134 -0
- package/dist/core/query-conditions.js.map +1 -0
- package/dist/core/rdf-constants.d.ts +16 -0
- package/dist/core/rdf-constants.d.ts.map +1 -0
- package/dist/core/rdf-constants.js +38 -0
- package/dist/core/rdf-constants.js.map +1 -0
- package/dist/core/rdf-schema-parser.d.ts +34 -0
- package/dist/core/rdf-schema-parser.d.ts.map +1 -0
- package/dist/core/rdf-schema-parser.js +143 -0
- package/dist/core/rdf-schema-parser.js.map +1 -0
- package/dist/core/resource-resolver/base-resolver.d.ts +29 -0
- package/dist/core/resource-resolver/base-resolver.d.ts.map +1 -0
- package/dist/core/resource-resolver/base-resolver.js +82 -0
- package/dist/core/resource-resolver/base-resolver.js.map +1 -0
- package/dist/core/resource-resolver/document-resolver.d.ts +20 -0
- package/dist/core/resource-resolver/document-resolver.d.ts.map +1 -0
- package/dist/core/resource-resolver/document-resolver.js +105 -0
- package/dist/core/resource-resolver/document-resolver.js.map +1 -0
- package/dist/core/resource-resolver/factory.d.ts +27 -0
- package/dist/core/resource-resolver/factory.d.ts.map +1 -0
- package/dist/core/resource-resolver/factory.js +58 -0
- package/dist/core/resource-resolver/factory.js.map +1 -0
- package/dist/core/resource-resolver/fragment-resolver.d.ts +20 -0
- package/dist/core/resource-resolver/fragment-resolver.d.ts.map +1 -0
- package/dist/core/resource-resolver/fragment-resolver.js +60 -0
- package/dist/core/resource-resolver/fragment-resolver.js.map +1 -0
- package/dist/core/resource-resolver/index.d.ts +11 -0
- package/dist/core/resource-resolver/index.d.ts.map +1 -0
- package/dist/core/resource-resolver/index.js +18 -0
- package/dist/core/resource-resolver/index.js.map +1 -0
- package/dist/core/resource-resolver/types.d.ts +57 -0
- package/dist/core/resource-resolver/types.d.ts.map +1 -0
- package/dist/core/resource-resolver/types.js +9 -0
- package/dist/core/resource-resolver/types.js.map +1 -0
- package/dist/core/runtime/pod-runtime.d.ts +34 -0
- package/dist/core/runtime/pod-runtime.d.ts.map +1 -0
- package/dist/core/runtime/pod-runtime.js +125 -0
- package/dist/core/runtime/pod-runtime.js.map +1 -0
- package/dist/core/schema/columns.d.ts +74 -0
- package/dist/core/schema/columns.d.ts.map +1 -0
- package/dist/core/schema/columns.js +295 -0
- package/dist/core/schema/columns.js.map +1 -0
- package/dist/core/schema/defs.d.ts +92 -0
- package/dist/core/schema/defs.d.ts.map +1 -0
- package/dist/core/schema/defs.js +43 -0
- package/dist/core/schema/defs.js.map +1 -0
- package/dist/core/schema/factories.d.ts +29 -0
- package/dist/core/schema/factories.d.ts.map +1 -0
- package/dist/core/schema/factories.js +117 -0
- package/dist/core/schema/factories.js.map +1 -0
- package/dist/core/schema/index.d.ts +9 -0
- package/dist/core/schema/index.d.ts.map +1 -0
- package/dist/core/schema/index.js +25 -0
- package/dist/core/schema/index.js.map +1 -0
- package/dist/core/schema/pod-table.d.ts +93 -0
- package/dist/core/schema/pod-table.d.ts.map +1 -0
- package/dist/core/schema/pod-table.js +294 -0
- package/dist/core/schema/pod-table.js.map +1 -0
- package/dist/core/schema/relations.d.ts +26 -0
- package/dist/core/schema/relations.d.ts.map +1 -0
- package/dist/core/schema/relations.js +36 -0
- package/dist/core/schema/relations.js.map +1 -0
- package/dist/core/schema/solid-schema.d.ts +19 -0
- package/dist/core/schema/solid-schema.d.ts.map +1 -0
- package/dist/core/schema/solid-schema.js +93 -0
- package/dist/core/schema/solid-schema.js.map +1 -0
- package/dist/core/schema/types.d.ts +45 -0
- package/dist/core/schema/types.d.ts.map +1 -0
- package/dist/core/schema/types.js +3 -0
- package/dist/core/schema/types.js.map +1 -0
- package/dist/core/schema/utils.d.ts +15 -0
- package/dist/core/schema/utils.d.ts.map +1 -0
- package/dist/core/schema/utils.js +44 -0
- package/dist/core/schema/utils.js.map +1 -0
- package/dist/core/select-plan.d.ts +45 -0
- package/dist/core/select-plan.d.ts.map +1 -0
- package/dist/core/select-plan.js +3 -0
- package/dist/core/select-plan.js.map +1 -0
- package/dist/core/services/pod-services.d.ts +41 -0
- package/dist/core/services/pod-services.d.ts.map +1 -0
- package/dist/core/services/pod-services.js +79 -0
- package/dist/core/services/pod-services.js.map +1 -0
- package/dist/core/shape/generator.d.ts +12 -0
- package/dist/core/shape/generator.d.ts.map +1 -0
- package/dist/core/shape/generator.js +109 -0
- package/dist/core/shape/generator.js.map +1 -0
- package/dist/core/shape/index.d.ts +4 -0
- package/dist/core/shape/index.d.ts.map +1 -0
- package/dist/core/shape/index.js +20 -0
- package/dist/core/shape/index.js.map +1 -0
- package/dist/core/shape/manager.d.ts +45 -0
- package/dist/core/shape/manager.d.ts.map +1 -0
- package/dist/core/shape/manager.js +393 -0
- package/dist/core/shape/manager.js.map +1 -0
- package/dist/core/shape/shacl-parser.d.ts +19 -0
- package/dist/core/shape/shacl-parser.d.ts.map +1 -0
- package/dist/core/shape/shacl-parser.js +215 -0
- package/dist/core/shape/shacl-parser.js.map +1 -0
- package/dist/core/shape/shacl.d.ts +11 -0
- package/dist/core/shape/shacl.d.ts.map +1 -0
- package/dist/core/shape/shacl.js +130 -0
- package/dist/core/shape/shacl.js.map +1 -0
- package/dist/core/shape/types.d.ts +149 -0
- package/dist/core/shape/types.d.ts.map +1 -0
- package/dist/core/shape/types.js +45 -0
- package/dist/core/shape/types.js.map +1 -0
- package/dist/core/shape/validator.d.ts +11 -0
- package/dist/core/shape/validator.d.ts.map +1 -0
- package/dist/core/shape/validator.js +232 -0
- package/dist/core/shape/validator.js.map +1 -0
- package/dist/core/solid-n3-client.d.ts +86 -0
- package/dist/core/solid-n3-client.d.ts.map +1 -0
- package/dist/core/solid-n3-client.js +279 -0
- package/dist/core/solid-n3-client.js.map +1 -0
- package/dist/core/sparql/builder/expression-builder.d.ts +42 -0
- package/dist/core/sparql/builder/expression-builder.d.ts.map +1 -0
- package/dist/core/sparql/builder/expression-builder.js +259 -0
- package/dist/core/sparql/builder/expression-builder.js.map +1 -0
- package/dist/core/sparql/builder/select-builder.d.ts +35 -0
- package/dist/core/sparql/builder/select-builder.d.ts.map +1 -0
- package/dist/core/sparql/builder/select-builder.js +446 -0
- package/dist/core/sparql/builder/select-builder.js.map +1 -0
- package/dist/core/sparql/builder/update-builder.d.ts +33 -0
- package/dist/core/sparql/builder/update-builder.d.ts.map +1 -0
- package/dist/core/sparql/builder/update-builder.js +523 -0
- package/dist/core/sparql/builder/update-builder.js.map +1 -0
- package/dist/core/sparql/helpers.d.ts +19 -0
- package/dist/core/sparql/helpers.d.ts.map +1 -0
- package/dist/core/sparql/helpers.js +172 -0
- package/dist/core/sparql/helpers.js.map +1 -0
- package/dist/core/sparql/types.d.ts +10 -0
- package/dist/core/sparql/types.d.ts.map +1 -0
- package/dist/core/sparql/types.js +3 -0
- package/dist/core/sparql/types.js.map +1 -0
- package/dist/core/sparql-executor.d.ts +34 -0
- package/dist/core/sparql-executor.d.ts.map +1 -0
- package/dist/core/sparql-executor.js +712 -0
- package/dist/core/sparql-executor.js.map +1 -0
- package/dist/core/subject/index.d.ts +29 -0
- package/dist/core/subject/index.d.ts.map +1 -0
- package/dist/core/subject/index.js +51 -0
- package/dist/core/subject/index.js.map +1 -0
- package/dist/core/subject/resolver.d.ts +92 -0
- package/dist/core/subject/resolver.d.ts.map +1 -0
- package/dist/core/subject/resolver.js +359 -0
- package/dist/core/subject/resolver.js.map +1 -0
- package/dist/core/subject/types.d.ts +90 -0
- package/dist/core/subject/types.d.ts.map +1 -0
- package/dist/core/subject/types.js +8 -0
- package/dist/core/subject/types.js.map +1 -0
- package/dist/core/triple/builder.d.ts +86 -0
- package/dist/core/triple/builder.d.ts.map +1 -0
- package/dist/core/triple/builder.js +304 -0
- package/dist/core/triple/builder.js.map +1 -0
- package/dist/core/triple/handlers/array.d.ts +23 -0
- package/dist/core/triple/handlers/array.d.ts.map +1 -0
- package/dist/core/triple/handlers/array.js +119 -0
- package/dist/core/triple/handlers/array.js.map +1 -0
- package/dist/core/triple/handlers/default.d.ts +20 -0
- package/dist/core/triple/handlers/default.d.ts.map +1 -0
- package/dist/core/triple/handlers/default.js +96 -0
- package/dist/core/triple/handlers/default.js.map +1 -0
- package/dist/core/triple/handlers/index.d.ts +35 -0
- package/dist/core/triple/handlers/index.d.ts.map +1 -0
- package/dist/core/triple/handlers/index.js +67 -0
- package/dist/core/triple/handlers/index.js.map +1 -0
- package/dist/core/triple/handlers/inline.d.ts +35 -0
- package/dist/core/triple/handlers/inline.d.ts.map +1 -0
- package/dist/core/triple/handlers/inline.js +190 -0
- package/dist/core/triple/handlers/inline.js.map +1 -0
- package/dist/core/triple/handlers/inverse.d.ts +22 -0
- package/dist/core/triple/handlers/inverse.d.ts.map +1 -0
- package/dist/core/triple/handlers/inverse.js +68 -0
- package/dist/core/triple/handlers/inverse.js.map +1 -0
- package/dist/core/triple/handlers/uri.d.ts +28 -0
- package/dist/core/triple/handlers/uri.d.ts.map +1 -0
- package/dist/core/triple/handlers/uri.js +66 -0
- package/dist/core/triple/handlers/uri.js.map +1 -0
- package/dist/core/triple/index.d.ts +9 -0
- package/dist/core/triple/index.d.ts.map +1 -0
- package/dist/core/triple/index.js +21 -0
- package/dist/core/triple/index.js.map +1 -0
- package/dist/core/triple/types.d.ts +152 -0
- package/dist/core/triple/types.d.ts.map +1 -0
- package/dist/core/triple/types.js +8 -0
- package/dist/core/triple/types.js.map +1 -0
- package/dist/core/typeindex-manager.d.ts +124 -0
- package/dist/core/typeindex-manager.d.ts.map +1 -0
- package/dist/core/typeindex-manager.js +662 -0
- package/dist/core/typeindex-manager.js.map +1 -0
- package/dist/core/types.d.ts +57 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +4 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/uri/index.d.ts +8 -0
- package/dist/core/uri/index.d.ts.map +1 -0
- package/dist/core/uri/index.js +12 -0
- package/dist/core/uri/index.js.map +1 -0
- package/dist/core/uri/resolver.d.ts +79 -0
- package/dist/core/uri/resolver.d.ts.map +1 -0
- package/dist/core/uri/resolver.js +458 -0
- package/dist/core/uri/resolver.js.map +1 -0
- package/dist/core/uri/types.d.ts +143 -0
- package/dist/core/uri/types.d.ts.map +1 -0
- package/dist/core/uri/types.js +8 -0
- package/dist/core/uri/types.js.map +1 -0
- package/dist/core/utils/origin-auth.d.ts +28 -0
- package/dist/core/utils/origin-auth.d.ts.map +1 -0
- package/dist/core/utils/origin-auth.js +46 -0
- package/dist/core/utils/origin-auth.js.map +1 -0
- package/dist/core/utils/pod-root.d.ts +15 -0
- package/dist/core/utils/pod-root.d.ts.map +1 -0
- package/dist/core/utils/pod-root.js +72 -0
- package/dist/core/utils/pod-root.js.map +1 -0
- package/dist/core/zod-integration.d.ts +95 -0
- package/dist/core/zod-integration.d.ts.map +1 -0
- package/dist/core/zod-integration.js +236 -0
- package/dist/core/zod-integration.js.map +1 -0
- package/dist/driver.d.ts +23 -0
- package/dist/driver.d.ts.map +1 -0
- package/dist/driver.js +34 -0
- package/dist/driver.js.map +1 -0
- package/dist/esm/core/aggregates.d.ts +19 -0
- package/dist/esm/core/aggregates.d.ts.map +1 -0
- package/dist/esm/core/aggregates.js +43 -0
- package/dist/esm/core/aggregates.js.map +1 -0
- package/dist/esm/core/ast-to-sparql.d.ts +62 -0
- package/dist/esm/core/ast-to-sparql.d.ts.map +1 -0
- package/dist/esm/core/ast-to-sparql.js +103 -0
- package/dist/esm/core/ast-to-sparql.js.map +1 -0
- package/dist/esm/core/compile-time-types.d.ts +37 -0
- package/dist/esm/core/compile-time-types.d.ts.map +1 -0
- package/dist/esm/core/compile-time-types.js +64 -0
- package/dist/esm/core/compile-time-types.js.map +1 -0
- package/dist/esm/core/comunica-patch.d.ts +7 -0
- package/dist/esm/core/comunica-patch.d.ts.map +1 -0
- package/dist/esm/core/comunica-patch.js +76 -0
- package/dist/esm/core/comunica-patch.js.map +1 -0
- package/dist/esm/core/conflict-resolution.d.ts +110 -0
- package/dist/esm/core/conflict-resolution.d.ts.map +1 -0
- package/dist/esm/core/conflict-resolution.js +245 -0
- package/dist/esm/core/conflict-resolution.js.map +1 -0
- package/dist/esm/core/discovery/composite-discovery.d.ts +18 -0
- package/dist/esm/core/discovery/composite-discovery.d.ts.map +1 -0
- package/dist/esm/core/discovery/composite-discovery.js +114 -0
- package/dist/esm/core/discovery/composite-discovery.js.map +1 -0
- package/dist/esm/core/discovery/index.d.ts +7 -0
- package/dist/esm/core/discovery/index.d.ts.map +1 -0
- package/dist/esm/core/discovery/index.js +7 -0
- package/dist/esm/core/discovery/index.js.map +1 -0
- package/dist/esm/core/discovery/interop-discovery.d.ts +36 -0
- package/dist/esm/core/discovery/interop-discovery.d.ts.map +1 -0
- package/dist/esm/core/discovery/interop-discovery.js +642 -0
- package/dist/esm/core/discovery/interop-discovery.js.map +1 -0
- package/dist/esm/core/discovery/interop-tables.d.ts +37 -0
- package/dist/esm/core/discovery/interop-tables.d.ts.map +1 -0
- package/dist/esm/core/discovery/interop-tables.js +65 -0
- package/dist/esm/core/discovery/interop-tables.js.map +1 -0
- package/dist/esm/core/discovery/interop-types.d.ts +36 -0
- package/dist/esm/core/discovery/interop-types.d.ts.map +1 -0
- package/dist/esm/core/discovery/interop-types.js +39 -0
- package/dist/esm/core/discovery/interop-types.js.map +1 -0
- package/dist/esm/core/discovery/provider-cache.d.ts +99 -0
- package/dist/esm/core/discovery/provider-cache.d.ts.map +1 -0
- package/dist/esm/core/discovery/provider-cache.js +292 -0
- package/dist/esm/core/discovery/provider-cache.js.map +1 -0
- package/dist/esm/core/discovery/typeindex-discovery.d.ts +30 -0
- package/dist/esm/core/discovery/typeindex-discovery.d.ts.map +1 -0
- package/dist/esm/core/discovery/typeindex-discovery.js +132 -0
- package/dist/esm/core/discovery/typeindex-discovery.js.map +1 -0
- package/dist/esm/core/discovery/types.d.ts +128 -0
- package/dist/esm/core/discovery/types.d.ts.map +1 -0
- package/dist/esm/core/discovery/types.js +2 -0
- package/dist/esm/core/discovery/types.js.map +1 -0
- package/dist/esm/core/execution/index.d.ts +14 -0
- package/dist/esm/core/execution/index.d.ts.map +1 -0
- package/dist/esm/core/execution/index.js +13 -0
- package/dist/esm/core/execution/index.js.map +1 -0
- package/dist/esm/core/execution/ldp-executor.d.ts +66 -0
- package/dist/esm/core/execution/ldp-executor.d.ts.map +1 -0
- package/dist/esm/core/execution/ldp-executor.js +580 -0
- package/dist/esm/core/execution/ldp-executor.js.map +1 -0
- package/dist/esm/core/execution/ldp-strategy.d.ts +53 -0
- package/dist/esm/core/execution/ldp-strategy.d.ts.map +1 -0
- package/dist/esm/core/execution/ldp-strategy.js +100 -0
- package/dist/esm/core/execution/ldp-strategy.js.map +1 -0
- package/dist/esm/core/execution/pod-executor-types.d.ts +9 -0
- package/dist/esm/core/execution/pod-executor-types.d.ts.map +1 -0
- package/dist/esm/core/execution/pod-executor-types.js +2 -0
- package/dist/esm/core/execution/pod-executor-types.js.map +1 -0
- package/dist/esm/core/execution/pod-executor.d.ts +59 -0
- package/dist/esm/core/execution/pod-executor.d.ts.map +1 -0
- package/dist/esm/core/execution/pod-executor.js +217 -0
- package/dist/esm/core/execution/pod-executor.js.map +1 -0
- package/dist/esm/core/execution/sparql-strategy.d.ts +80 -0
- package/dist/esm/core/execution/sparql-strategy.d.ts.map +1 -0
- package/dist/esm/core/execution/sparql-strategy.js +269 -0
- package/dist/esm/core/execution/sparql-strategy.js.map +1 -0
- package/dist/esm/core/execution/strategy-factory.d.ts +54 -0
- package/dist/esm/core/execution/strategy-factory.d.ts.map +1 -0
- package/dist/esm/core/execution/strategy-factory.js +74 -0
- package/dist/esm/core/execution/strategy-factory.js.map +1 -0
- package/dist/esm/core/execution/types.d.ts +80 -0
- package/dist/esm/core/execution/types.d.ts.map +1 -0
- package/dist/esm/core/execution/types.js +7 -0
- package/dist/esm/core/execution/types.js.map +1 -0
- package/dist/esm/core/expressions.d.ts +35 -0
- package/dist/esm/core/expressions.d.ts.map +1 -0
- package/dist/esm/core/expressions.js +45 -0
- package/dist/esm/core/expressions.js.map +1 -0
- package/dist/esm/core/federated/executor.d.ts +95 -0
- package/dist/esm/core/federated/executor.d.ts.map +1 -0
- package/dist/esm/core/federated/executor.js +421 -0
- package/dist/esm/core/federated/executor.js.map +1 -0
- package/dist/esm/core/federated/index.d.ts +3 -0
- package/dist/esm/core/federated/index.d.ts.map +1 -0
- package/dist/esm/core/federated/index.js +3 -0
- package/dist/esm/core/federated/index.js.map +1 -0
- package/dist/esm/core/federated/types.d.ts +69 -0
- package/dist/esm/core/federated/types.d.ts.map +1 -0
- package/dist/esm/core/federated/types.js +7 -0
- package/dist/esm/core/federated/types.js.map +1 -0
- package/dist/esm/core/notifications/channels/base-channel.d.ts +29 -0
- package/dist/esm/core/notifications/channels/base-channel.d.ts.map +1 -0
- package/dist/esm/core/notifications/channels/base-channel.js +58 -0
- package/dist/esm/core/notifications/channels/base-channel.js.map +1 -0
- package/dist/esm/core/notifications/channels/index.d.ts +4 -0
- package/dist/esm/core/notifications/channels/index.d.ts.map +1 -0
- package/dist/esm/core/notifications/channels/index.js +4 -0
- package/dist/esm/core/notifications/channels/index.js.map +1 -0
- package/dist/esm/core/notifications/channels/sse-channel.d.ts +50 -0
- package/dist/esm/core/notifications/channels/sse-channel.d.ts.map +1 -0
- package/dist/esm/core/notifications/channels/sse-channel.js +206 -0
- package/dist/esm/core/notifications/channels/sse-channel.js.map +1 -0
- package/dist/esm/core/notifications/channels/websocket-channel.d.ts +16 -0
- package/dist/esm/core/notifications/channels/websocket-channel.d.ts.map +1 -0
- package/dist/esm/core/notifications/channels/websocket-channel.js +83 -0
- package/dist/esm/core/notifications/channels/websocket-channel.js.map +1 -0
- package/dist/esm/core/notifications/index.d.ts +3 -0
- package/dist/esm/core/notifications/index.d.ts.map +1 -0
- package/dist/esm/core/notifications/index.js +2 -0
- package/dist/esm/core/notifications/index.js.map +1 -0
- package/dist/esm/core/notifications/notifications-client.d.ts +87 -0
- package/dist/esm/core/notifications/notifications-client.d.ts.map +1 -0
- package/dist/esm/core/notifications/notifications-client.js +456 -0
- package/dist/esm/core/notifications/notifications-client.js.map +1 -0
- package/dist/esm/core/notifications/types.d.ts +228 -0
- package/dist/esm/core/notifications/types.d.ts.map +1 -0
- package/dist/esm/core/notifications/types.js +6 -0
- package/dist/esm/core/notifications/types.js.map +1 -0
- package/dist/esm/core/pod-database.d.ts +383 -0
- package/dist/esm/core/pod-database.d.ts.map +1 -0
- package/dist/esm/core/pod-database.js +1175 -0
- package/dist/esm/core/pod-database.js.map +1 -0
- package/dist/esm/core/pod-dialect.d.ts +294 -0
- package/dist/esm/core/pod-dialect.d.ts.map +1 -0
- package/dist/esm/core/pod-dialect.js +1296 -0
- package/dist/esm/core/pod-dialect.js.map +1 -0
- package/dist/esm/core/pod-discovery.d.ts +20 -0
- package/dist/esm/core/pod-discovery.d.ts.map +1 -0
- package/dist/esm/core/pod-discovery.js +109 -0
- package/dist/esm/core/pod-discovery.js.map +1 -0
- package/dist/esm/core/pod-session.d.ts +44 -0
- package/dist/esm/core/pod-session.d.ts.map +1 -0
- package/dist/esm/core/pod-session.js +109 -0
- package/dist/esm/core/pod-session.js.map +1 -0
- package/dist/esm/core/pod-table.d.ts +710 -0
- package/dist/esm/core/pod-table.d.ts.map +1 -0
- package/dist/esm/core/pod-table.js +1249 -0
- package/dist/esm/core/pod-table.js.map +1 -0
- package/dist/esm/core/profile-manager.d.ts +90 -0
- package/dist/esm/core/profile-manager.d.ts.map +1 -0
- package/dist/esm/core/profile-manager.js +164 -0
- package/dist/esm/core/profile-manager.js.map +1 -0
- package/dist/esm/core/publish-manager.d.ts +90 -0
- package/dist/esm/core/publish-manager.d.ts.map +1 -0
- package/dist/esm/core/publish-manager.js +143 -0
- package/dist/esm/core/publish-manager.js.map +1 -0
- package/dist/esm/core/query-builders/delete-query-builder.d.ts +36 -0
- package/dist/esm/core/query-builders/delete-query-builder.d.ts.map +1 -0
- package/dist/esm/core/query-builders/delete-query-builder.js +140 -0
- package/dist/esm/core/query-builders/delete-query-builder.js.map +1 -0
- package/dist/esm/core/query-builders/helpers.d.ts +4 -0
- package/dist/esm/core/query-builders/helpers.d.ts.map +1 -0
- package/dist/esm/core/query-builders/helpers.js +26 -0
- package/dist/esm/core/query-builders/helpers.js.map +1 -0
- package/dist/esm/core/query-builders/index.d.ts +6 -0
- package/dist/esm/core/query-builders/index.d.ts.map +1 -0
- package/dist/esm/core/query-builders/index.js +5 -0
- package/dist/esm/core/query-builders/index.js.map +1 -0
- package/dist/esm/core/query-builders/insert-query-builder.d.ts +27 -0
- package/dist/esm/core/query-builders/insert-query-builder.d.ts.map +1 -0
- package/dist/esm/core/query-builders/insert-query-builder.js +124 -0
- package/dist/esm/core/query-builders/insert-query-builder.js.map +1 -0
- package/dist/esm/core/query-builders/select-query-builder.d.ts +106 -0
- package/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -0
- package/dist/esm/core/query-builders/select-query-builder.js +1260 -0
- package/dist/esm/core/query-builders/select-query-builder.js.map +1 -0
- package/dist/esm/core/query-builders/types.d.ts +37 -0
- package/dist/esm/core/query-builders/types.d.ts.map +1 -0
- package/dist/esm/core/query-builders/types.js +2 -0
- package/dist/esm/core/query-builders/types.js.map +1 -0
- package/dist/esm/core/query-builders/update-query-builder.d.ts +38 -0
- package/dist/esm/core/query-builders/update-query-builder.d.ts.map +1 -0
- package/dist/esm/core/query-builders/update-query-builder.js +164 -0
- package/dist/esm/core/query-builders/update-query-builder.js.map +1 -0
- package/dist/esm/core/query-conditions.d.ts +52 -0
- package/dist/esm/core/query-conditions.d.ts.map +1 -0
- package/dist/esm/core/query-conditions.js +111 -0
- package/dist/esm/core/query-conditions.js.map +1 -0
- package/dist/esm/core/rdf-constants.d.ts +16 -0
- package/dist/esm/core/rdf-constants.d.ts.map +1 -0
- package/dist/esm/core/rdf-constants.js +32 -0
- package/dist/esm/core/rdf-constants.js.map +1 -0
- package/dist/esm/core/rdf-schema-parser.d.ts +34 -0
- package/dist/esm/core/rdf-schema-parser.d.ts.map +1 -0
- package/dist/esm/core/rdf-schema-parser.js +136 -0
- package/dist/esm/core/rdf-schema-parser.js.map +1 -0
- package/dist/esm/core/resource-resolver/base-resolver.d.ts +29 -0
- package/dist/esm/core/resource-resolver/base-resolver.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/base-resolver.js +78 -0
- package/dist/esm/core/resource-resolver/base-resolver.js.map +1 -0
- package/dist/esm/core/resource-resolver/document-resolver.d.ts +20 -0
- package/dist/esm/core/resource-resolver/document-resolver.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/document-resolver.js +101 -0
- package/dist/esm/core/resource-resolver/document-resolver.js.map +1 -0
- package/dist/esm/core/resource-resolver/factory.d.ts +27 -0
- package/dist/esm/core/resource-resolver/factory.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/factory.js +53 -0
- package/dist/esm/core/resource-resolver/factory.js.map +1 -0
- package/dist/esm/core/resource-resolver/fragment-resolver.d.ts +20 -0
- package/dist/esm/core/resource-resolver/fragment-resolver.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/fragment-resolver.js +56 -0
- package/dist/esm/core/resource-resolver/fragment-resolver.js.map +1 -0
- package/dist/esm/core/resource-resolver/index.d.ts +11 -0
- package/dist/esm/core/resource-resolver/index.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/index.js +10 -0
- package/dist/esm/core/resource-resolver/index.js.map +1 -0
- package/dist/esm/core/resource-resolver/types.d.ts +57 -0
- package/dist/esm/core/resource-resolver/types.d.ts.map +1 -0
- package/dist/esm/core/resource-resolver/types.js +8 -0
- package/dist/esm/core/resource-resolver/types.js.map +1 -0
- package/dist/esm/core/runtime/pod-runtime.d.ts +34 -0
- package/dist/esm/core/runtime/pod-runtime.d.ts.map +1 -0
- package/dist/esm/core/runtime/pod-runtime.js +121 -0
- package/dist/esm/core/runtime/pod-runtime.js.map +1 -0
- package/dist/esm/core/schema/columns.d.ts +74 -0
- package/dist/esm/core/schema/columns.d.ts.map +1 -0
- package/dist/esm/core/schema/columns.js +282 -0
- package/dist/esm/core/schema/columns.js.map +1 -0
- package/dist/esm/core/schema/defs.d.ts +92 -0
- package/dist/esm/core/schema/defs.d.ts.map +1 -0
- package/dist/esm/core/schema/defs.js +36 -0
- package/dist/esm/core/schema/defs.js.map +1 -0
- package/dist/esm/core/schema/factories.d.ts +29 -0
- package/dist/esm/core/schema/factories.d.ts.map +1 -0
- package/dist/esm/core/schema/factories.js +89 -0
- package/dist/esm/core/schema/factories.js.map +1 -0
- package/dist/esm/core/schema/index.d.ts +9 -0
- package/dist/esm/core/schema/index.d.ts.map +1 -0
- package/dist/esm/core/schema/index.js +9 -0
- package/dist/esm/core/schema/index.js.map +1 -0
- package/dist/esm/core/schema/pod-table.d.ts +93 -0
- package/dist/esm/core/schema/pod-table.d.ts.map +1 -0
- package/dist/esm/core/schema/pod-table.js +289 -0
- package/dist/esm/core/schema/pod-table.js.map +1 -0
- package/dist/esm/core/schema/relations.d.ts +26 -0
- package/dist/esm/core/schema/relations.d.ts.map +1 -0
- package/dist/esm/core/schema/relations.js +33 -0
- package/dist/esm/core/schema/relations.js.map +1 -0
- package/dist/esm/core/schema/solid-schema.d.ts +19 -0
- package/dist/esm/core/schema/solid-schema.d.ts.map +1 -0
- package/dist/esm/core/schema/solid-schema.js +87 -0
- package/dist/esm/core/schema/solid-schema.js.map +1 -0
- package/dist/esm/core/schema/types.d.ts +45 -0
- package/dist/esm/core/schema/types.d.ts.map +1 -0
- package/dist/esm/core/schema/types.js +2 -0
- package/dist/esm/core/schema/types.js.map +1 -0
- package/dist/esm/core/schema/utils.d.ts +15 -0
- package/dist/esm/core/schema/utils.d.ts.map +1 -0
- package/dist/esm/core/schema/utils.js +40 -0
- package/dist/esm/core/schema/utils.js.map +1 -0
- package/dist/esm/core/select-plan.d.ts +45 -0
- package/dist/esm/core/select-plan.d.ts.map +1 -0
- package/dist/esm/core/select-plan.js +2 -0
- package/dist/esm/core/select-plan.js.map +1 -0
- package/dist/esm/core/services/pod-services.d.ts +41 -0
- package/dist/esm/core/services/pod-services.d.ts.map +1 -0
- package/dist/esm/core/services/pod-services.js +75 -0
- package/dist/esm/core/services/pod-services.js.map +1 -0
- package/dist/esm/core/shape/generator.d.ts +12 -0
- package/dist/esm/core/shape/generator.d.ts.map +1 -0
- package/dist/esm/core/shape/generator.js +106 -0
- package/dist/esm/core/shape/generator.js.map +1 -0
- package/dist/esm/core/shape/index.d.ts +4 -0
- package/dist/esm/core/shape/index.d.ts.map +1 -0
- package/dist/esm/core/shape/index.js +4 -0
- package/dist/esm/core/shape/index.js.map +1 -0
- package/dist/esm/core/shape/manager.d.ts +45 -0
- package/dist/esm/core/shape/manager.d.ts.map +1 -0
- package/dist/esm/core/shape/manager.js +389 -0
- package/dist/esm/core/shape/manager.js.map +1 -0
- package/dist/esm/core/shape/shacl-parser.d.ts +19 -0
- package/dist/esm/core/shape/shacl-parser.d.ts.map +1 -0
- package/dist/esm/core/shape/shacl-parser.js +210 -0
- package/dist/esm/core/shape/shacl-parser.js.map +1 -0
- package/dist/esm/core/shape/shacl.d.ts +11 -0
- package/dist/esm/core/shape/shacl.d.ts.map +1 -0
- package/dist/esm/core/shape/shacl.js +127 -0
- package/dist/esm/core/shape/shacl.js.map +1 -0
- package/dist/esm/core/shape/types.d.ts +149 -0
- package/dist/esm/core/shape/types.d.ts.map +1 -0
- package/dist/esm/core/shape/types.js +42 -0
- package/dist/esm/core/shape/types.js.map +1 -0
- package/dist/esm/core/shape/validator.d.ts +11 -0
- package/dist/esm/core/shape/validator.d.ts.map +1 -0
- package/dist/esm/core/shape/validator.js +229 -0
- package/dist/esm/core/shape/validator.js.map +1 -0
- package/dist/esm/core/solid-n3-client.d.ts +86 -0
- package/dist/esm/core/solid-n3-client.d.ts.map +1 -0
- package/dist/esm/core/solid-n3-client.js +275 -0
- package/dist/esm/core/solid-n3-client.js.map +1 -0
- package/dist/esm/core/sparql/builder/expression-builder.d.ts +42 -0
- package/dist/esm/core/sparql/builder/expression-builder.d.ts.map +1 -0
- package/dist/esm/core/sparql/builder/expression-builder.js +255 -0
- package/dist/esm/core/sparql/builder/expression-builder.js.map +1 -0
- package/dist/esm/core/sparql/builder/select-builder.d.ts +35 -0
- package/dist/esm/core/sparql/builder/select-builder.d.ts.map +1 -0
- package/dist/esm/core/sparql/builder/select-builder.js +409 -0
- package/dist/esm/core/sparql/builder/select-builder.js.map +1 -0
- package/dist/esm/core/sparql/builder/update-builder.d.ts +33 -0
- package/dist/esm/core/sparql/builder/update-builder.d.ts.map +1 -0
- package/dist/esm/core/sparql/builder/update-builder.js +486 -0
- package/dist/esm/core/sparql/builder/update-builder.js.map +1 -0
- package/dist/esm/core/sparql/helpers.d.ts +19 -0
- package/dist/esm/core/sparql/helpers.d.ts.map +1 -0
- package/dist/esm/core/sparql/helpers.js +165 -0
- package/dist/esm/core/sparql/helpers.js.map +1 -0
- package/dist/esm/core/sparql/types.d.ts +10 -0
- package/dist/esm/core/sparql/types.d.ts.map +1 -0
- package/dist/esm/core/sparql/types.js +2 -0
- package/dist/esm/core/sparql/types.js.map +1 -0
- package/dist/esm/core/sparql-executor.d.ts +34 -0
- package/dist/esm/core/sparql-executor.d.ts.map +1 -0
- package/dist/esm/core/sparql-executor.js +708 -0
- package/dist/esm/core/sparql-executor.js.map +1 -0
- package/dist/esm/core/subject/index.d.ts +29 -0
- package/dist/esm/core/subject/index.d.ts.map +1 -0
- package/dist/esm/core/subject/index.js +49 -0
- package/dist/esm/core/subject/index.js.map +1 -0
- package/dist/esm/core/subject/resolver.d.ts +92 -0
- package/dist/esm/core/subject/resolver.d.ts.map +1 -0
- package/dist/esm/core/subject/resolver.js +355 -0
- package/dist/esm/core/subject/resolver.js.map +1 -0
- package/dist/esm/core/subject/types.d.ts +90 -0
- package/dist/esm/core/subject/types.d.ts.map +1 -0
- package/dist/esm/core/subject/types.js +7 -0
- package/dist/esm/core/subject/types.js.map +1 -0
- package/dist/esm/core/triple/builder.d.ts +86 -0
- package/dist/esm/core/triple/builder.d.ts.map +1 -0
- package/dist/esm/core/triple/builder.js +300 -0
- package/dist/esm/core/triple/builder.js.map +1 -0
- package/dist/esm/core/triple/handlers/array.d.ts +23 -0
- package/dist/esm/core/triple/handlers/array.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/array.js +115 -0
- package/dist/esm/core/triple/handlers/array.js.map +1 -0
- package/dist/esm/core/triple/handlers/default.d.ts +20 -0
- package/dist/esm/core/triple/handlers/default.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/default.js +92 -0
- package/dist/esm/core/triple/handlers/default.js.map +1 -0
- package/dist/esm/core/triple/handlers/index.d.ts +35 -0
- package/dist/esm/core/triple/handlers/index.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/index.js +59 -0
- package/dist/esm/core/triple/handlers/index.js.map +1 -0
- package/dist/esm/core/triple/handlers/inline.d.ts +35 -0
- package/dist/esm/core/triple/handlers/inline.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/inline.js +186 -0
- package/dist/esm/core/triple/handlers/inline.js.map +1 -0
- package/dist/esm/core/triple/handlers/inverse.d.ts +22 -0
- package/dist/esm/core/triple/handlers/inverse.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/inverse.js +64 -0
- package/dist/esm/core/triple/handlers/inverse.js.map +1 -0
- package/dist/esm/core/triple/handlers/uri.d.ts +28 -0
- package/dist/esm/core/triple/handlers/uri.d.ts.map +1 -0
- package/dist/esm/core/triple/handlers/uri.js +62 -0
- package/dist/esm/core/triple/handlers/uri.js.map +1 -0
- package/dist/esm/core/triple/index.d.ts +9 -0
- package/dist/esm/core/triple/index.d.ts.map +1 -0
- package/dist/esm/core/triple/index.js +10 -0
- package/dist/esm/core/triple/index.js.map +1 -0
- package/dist/esm/core/triple/types.d.ts +152 -0
- package/dist/esm/core/triple/types.d.ts.map +1 -0
- package/dist/esm/core/triple/types.js +7 -0
- package/dist/esm/core/triple/types.js.map +1 -0
- package/dist/esm/core/typeindex-manager.d.ts +124 -0
- package/dist/esm/core/typeindex-manager.d.ts.map +1 -0
- package/dist/esm/core/typeindex-manager.js +658 -0
- package/dist/esm/core/typeindex-manager.js.map +1 -0
- package/dist/esm/core/types.d.ts +57 -0
- package/dist/esm/core/types.d.ts.map +1 -0
- package/dist/esm/core/types.js +3 -0
- package/dist/esm/core/types.js.map +1 -0
- package/dist/esm/core/uri/index.d.ts +8 -0
- package/dist/esm/core/uri/index.d.ts.map +1 -0
- package/dist/esm/core/uri/index.js +8 -0
- package/dist/esm/core/uri/index.js.map +1 -0
- package/dist/esm/core/uri/resolver.d.ts +79 -0
- package/dist/esm/core/uri/resolver.d.ts.map +1 -0
- package/dist/esm/core/uri/resolver.js +454 -0
- package/dist/esm/core/uri/resolver.js.map +1 -0
- package/dist/esm/core/uri/types.d.ts +143 -0
- package/dist/esm/core/uri/types.d.ts.map +1 -0
- package/dist/esm/core/uri/types.js +7 -0
- package/dist/esm/core/uri/types.js.map +1 -0
- package/dist/esm/core/utils/origin-auth.d.ts +28 -0
- package/dist/esm/core/utils/origin-auth.d.ts.map +1 -0
- package/dist/esm/core/utils/origin-auth.js +42 -0
- package/dist/esm/core/utils/origin-auth.js.map +1 -0
- package/dist/esm/core/utils/pod-root.d.ts +15 -0
- package/dist/esm/core/utils/pod-root.d.ts.map +1 -0
- package/dist/esm/core/utils/pod-root.js +69 -0
- package/dist/esm/core/utils/pod-root.js.map +1 -0
- package/dist/esm/core/zod-integration.d.ts +95 -0
- package/dist/esm/core/zod-integration.d.ts.map +1 -0
- package/dist/esm/core/zod-integration.js +227 -0
- package/dist/esm/core/zod-integration.js.map +1 -0
- package/dist/esm/driver.d.ts +23 -0
- package/dist/esm/driver.d.ts.map +1 -0
- package/dist/esm/driver.js +30 -0
- package/dist/esm/driver.js.map +1 -0
- package/dist/esm/index.d.ts +23 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +44 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/solid.d.ts +21 -0
- package/dist/esm/solid.d.ts.map +1 -0
- package/dist/esm/solid.js +30 -0
- package/dist/esm/solid.js.map +1 -0
- package/dist/esm/test-utils/real-test-helpers.d.ts +5 -0
- package/dist/esm/test-utils/real-test-helpers.d.ts.map +1 -0
- package/dist/esm/test-utils/real-test-helpers.js +17 -0
- package/dist/esm/test-utils/real-test-helpers.js.map +1 -0
- package/dist/esm/types/sparql-types.d.ts +27 -0
- package/dist/esm/types/sparql-types.d.ts.map +1 -0
- package/dist/esm/types/sparql-types.js +3 -0
- package/dist/esm/types/sparql-types.js.map +1 -0
- package/dist/esm/utils/find-by-iri.d.ts +9 -0
- package/dist/esm/utils/find-by-iri.d.ts.map +1 -0
- package/dist/esm/utils/find-by-iri.js +22 -0
- package/dist/esm/utils/find-by-iri.js.map +1 -0
- package/dist/esm/utils/helpers.d.ts +17 -0
- package/dist/esm/utils/helpers.d.ts.map +1 -0
- package/dist/esm/utils/helpers.js +59 -0
- package/dist/esm/utils/helpers.js.map +1 -0
- package/dist/esm/utils/namespace.d.ts +4 -0
- package/dist/esm/utils/namespace.d.ts.map +1 -0
- package/dist/esm/utils/namespace.js +30 -0
- package/dist/esm/utils/namespace.js.map +1 -0
- package/dist/esm/utils/rdf-helpers.d.ts +17 -0
- package/dist/esm/utils/rdf-helpers.d.ts.map +1 -0
- package/dist/esm/utils/rdf-helpers.js +47 -0
- package/dist/esm/utils/rdf-helpers.js.map +1 -0
- package/dist/esm/utils/rdf-validation.d.ts +25 -0
- package/dist/esm/utils/rdf-validation.d.ts.map +1 -0
- package/dist/esm/utils/rdf-validation.js +288 -0
- package/dist/esm/utils/rdf-validation.js.map +1 -0
- package/dist/esm/utils/thing-operations.d.ts +28 -0
- package/dist/esm/utils/thing-operations.d.ts.map +1 -0
- package/dist/esm/utils/thing-operations.js +249 -0
- package/dist/esm/utils/thing-operations.js.map +1 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +156 -0
- package/dist/index.js.map +1 -0
- package/dist/solid.d.ts +21 -0
- package/dist/solid.d.ts.map +1 -0
- package/dist/solid.js +35 -0
- package/dist/solid.js.map +1 -0
- package/dist/test-utils/real-test-helpers.d.ts +5 -0
- package/dist/test-utils/real-test-helpers.d.ts.map +1 -0
- package/dist/test-utils/real-test-helpers.js +22 -0
- package/dist/test-utils/real-test-helpers.js.map +1 -0
- package/dist/types/sparql-types.d.ts +27 -0
- package/dist/types/sparql-types.d.ts.map +1 -0
- package/dist/types/sparql-types.js +4 -0
- package/dist/types/sparql-types.js.map +1 -0
- package/dist/utils/find-by-iri.d.ts +9 -0
- package/dist/utils/find-by-iri.d.ts.map +1 -0
- package/dist/utils/find-by-iri.js +25 -0
- package/dist/utils/find-by-iri.js.map +1 -0
- package/dist/utils/helpers.d.ts +17 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +65 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/utils/namespace.d.ts +4 -0
- package/dist/utils/namespace.d.ts.map +1 -0
- package/dist/utils/namespace.js +33 -0
- package/dist/utils/namespace.js.map +1 -0
- package/dist/utils/rdf-helpers.d.ts +17 -0
- package/dist/utils/rdf-helpers.d.ts.map +1 -0
- package/dist/utils/rdf-helpers.js +53 -0
- package/dist/utils/rdf-helpers.js.map +1 -0
- package/dist/utils/rdf-validation.d.ts +25 -0
- package/dist/utils/rdf-validation.d.ts.map +1 -0
- package/dist/utils/rdf-validation.js +292 -0
- package/dist/utils/rdf-validation.js.map +1 -0
- package/dist/utils/thing-operations.d.ts +28 -0
- package/dist/utils/thing-operations.d.ts.map +1 -0
- package/dist/utils/thing-operations.js +256 -0
- package/dist/utils/thing-operations.js.map +1 -0
- package/package.json +98 -0
|
@@ -0,0 +1,306 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.SparqlStrategy = void 0;
|
|
37
|
+
const origin_auth_1 = require("../utils/origin-auth");
|
|
38
|
+
class SparqlStrategy {
|
|
39
|
+
constructor(deps) {
|
|
40
|
+
this.mode = 'sparql';
|
|
41
|
+
this.sparqlExecutor = deps.sparqlExecutor;
|
|
42
|
+
this.sparqlConverter = deps.sparqlConverter;
|
|
43
|
+
this.sessionFetch = deps.sessionFetch;
|
|
44
|
+
this.podUrl = deps.podUrl;
|
|
45
|
+
this.uriResolver = deps.uriResolver;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Resolve target graph based on resource mode
|
|
49
|
+
* - Document Mode SELECT: undefined (let CSS auto-query container and all sub-graphs)
|
|
50
|
+
* - Document Mode INSERT/UPDATE/DELETE: container path as graph
|
|
51
|
+
* - Fragment Mode: base file path
|
|
52
|
+
*/
|
|
53
|
+
resolveTargetGraph(table, forSelect = false) {
|
|
54
|
+
if (!table)
|
|
55
|
+
return undefined;
|
|
56
|
+
// Determine resource mode to choose correct graph
|
|
57
|
+
const isDocumentMode = this.uriResolver.getResourceMode(table) === 'document';
|
|
58
|
+
if (isDocumentMode) {
|
|
59
|
+
// Document Mode:
|
|
60
|
+
// - For SELECT: no graph specified (CSS will auto-query container and all sub-graphs)
|
|
61
|
+
// - For INSERT/UPDATE/DELETE: use container path as graph
|
|
62
|
+
if (forSelect) {
|
|
63
|
+
return undefined; // Let CSS use default behavior
|
|
64
|
+
}
|
|
65
|
+
return table.config?.containerPath ?? table.getContainerPath?.();
|
|
66
|
+
}
|
|
67
|
+
// Fragment Mode: graph = base file
|
|
68
|
+
// e.g., /data/tags.ttl (all fragments in this file share the same graph)
|
|
69
|
+
return table.config?.base;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get the appropriate fetch function for a SPARQL endpoint
|
|
73
|
+
*/
|
|
74
|
+
getFetchForEndpoint(endpoint) {
|
|
75
|
+
return (0, origin_auth_1.getFetchForOrigin)(endpoint, this.podUrl, this.sessionFetch);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Execute SELECT query via SPARQL endpoint
|
|
79
|
+
*/
|
|
80
|
+
async executeSelect(plan, _containerUrl, resourceUrl // In SPARQL mode, this is the endpoint URL
|
|
81
|
+
) {
|
|
82
|
+
const table = plan.baseTable;
|
|
83
|
+
// Determine target graph based on resource mode
|
|
84
|
+
// - Document Mode: no graph (CSS will auto-query container and all sub-graphs)
|
|
85
|
+
// - Fragment Mode: graph = base file
|
|
86
|
+
const targetGraph = this.resolveTargetGraph(table, true /* forSelect */);
|
|
87
|
+
// Convert plan to SPARQL - check for simple select options or SQL
|
|
88
|
+
let sparqlQuery;
|
|
89
|
+
const extendedPlan = plan;
|
|
90
|
+
// Pass `true` for `includeGraph` to ensure the graph is included if targetGraph is defined.
|
|
91
|
+
// The SparqlConverter will handle the specific syntax (FROM/GRAPH).
|
|
92
|
+
if (extendedPlan._simpleSelectOptions) {
|
|
93
|
+
sparqlQuery = this.sparqlConverter.convertSimpleSelect(extendedPlan._simpleSelectOptions, targetGraph, undefined, true);
|
|
94
|
+
}
|
|
95
|
+
else if (extendedPlan._sql && plan.baseTable) {
|
|
96
|
+
const ast = this.sparqlConverter.parseDrizzleAST(extendedPlan._sql, plan.baseTable);
|
|
97
|
+
sparqlQuery = this.sparqlConverter.convertSelect(ast, plan.baseTable, targetGraph, undefined, true);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
sparqlQuery = this.sparqlConverter.convertSelectPlan(plan, targetGraph, undefined, true);
|
|
101
|
+
}
|
|
102
|
+
console.log('DEBUG: Generated SPARQL Query for SELECT:', sparqlQuery.query);
|
|
103
|
+
console.log('DEBUG: resourceUrl =', resourceUrl);
|
|
104
|
+
// Fast path: Direct fetch to SPARQL endpoint (bypass Comunica for speed)
|
|
105
|
+
// This is much faster than Comunica which does extra processing
|
|
106
|
+
if (resourceUrl.includes('/-/sparql')) {
|
|
107
|
+
return await this.executeDirectSparqlSelect(resourceUrl, sparqlQuery, plan);
|
|
108
|
+
}
|
|
109
|
+
// Fallback to Comunica for non-endpoint sources
|
|
110
|
+
if ((0, origin_auth_1.isSameOrigin)(resourceUrl, this.podUrl)) {
|
|
111
|
+
return await this.sparqlExecutor.executeQueryWithSource(sparqlQuery, resourceUrl);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
const { ComunicaSPARQLExecutor } = await Promise.resolve().then(() => __importStar(require('../sparql-executor')));
|
|
115
|
+
const unauthExecutor = new ComunicaSPARQLExecutor({
|
|
116
|
+
sources: [resourceUrl],
|
|
117
|
+
fetch: fetch,
|
|
118
|
+
logging: false
|
|
119
|
+
});
|
|
120
|
+
return await unauthExecutor.executeQueryWithSource(sparqlQuery, resourceUrl);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Execute SPARQL SELECT directly via fetch (fast path, bypasses Comunica)
|
|
125
|
+
*/
|
|
126
|
+
async executeDirectSparqlSelect(endpoint, sparqlQuery, plan) {
|
|
127
|
+
const fetchFn = this.getFetchForEndpoint(endpoint);
|
|
128
|
+
console.log('[SparqlStrategy] Direct fetch to SPARQL endpoint:', endpoint);
|
|
129
|
+
const response = await fetchFn(endpoint, {
|
|
130
|
+
method: 'POST',
|
|
131
|
+
headers: {
|
|
132
|
+
'Content-Type': 'application/sparql-query',
|
|
133
|
+
'Accept': 'application/sparql-results+json'
|
|
134
|
+
},
|
|
135
|
+
body: sparqlQuery.query
|
|
136
|
+
});
|
|
137
|
+
if (!response.ok) {
|
|
138
|
+
const text = await response.text().catch(() => '');
|
|
139
|
+
throw new Error(`SPARQL SELECT failed: ${response.status} ${response.statusText} - ${text}`);
|
|
140
|
+
}
|
|
141
|
+
const json = await response.json();
|
|
142
|
+
return this.parseSparqlResultsJson(json, plan);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Parse SPARQL Results JSON format into row objects
|
|
146
|
+
*/
|
|
147
|
+
parseSparqlResultsJson(json, plan) {
|
|
148
|
+
const bindings = json?.results?.bindings || [];
|
|
149
|
+
return bindings.map((binding) => {
|
|
150
|
+
const row = {};
|
|
151
|
+
for (const [varName, termObj] of Object.entries(binding)) {
|
|
152
|
+
if (!termObj)
|
|
153
|
+
continue;
|
|
154
|
+
// Convert SPARQL result term to JS value
|
|
155
|
+
row[varName] = this.convertSparqlTerm(termObj);
|
|
156
|
+
}
|
|
157
|
+
// Extract ID from subject URI if present
|
|
158
|
+
if (row.subject && plan.baseTable) {
|
|
159
|
+
const subjectUri = row.subject;
|
|
160
|
+
// Extract ID from URI like "http://pod/path/file.ttl#id" -> "id"
|
|
161
|
+
const hashIndex = subjectUri.lastIndexOf('#');
|
|
162
|
+
if (hashIndex !== -1) {
|
|
163
|
+
row.id = subjectUri.substring(hashIndex + 1);
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
// Or from "http://pod/path/id.ttl" -> "id"
|
|
167
|
+
const lastSlash = subjectUri.lastIndexOf('/');
|
|
168
|
+
const filename = subjectUri.substring(lastSlash + 1);
|
|
169
|
+
if (filename.endsWith('.ttl')) {
|
|
170
|
+
row.id = filename.slice(0, -4);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
delete row.subject;
|
|
174
|
+
}
|
|
175
|
+
return row;
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Convert a SPARQL result term to a JavaScript value
|
|
180
|
+
*/
|
|
181
|
+
convertSparqlTerm(term) {
|
|
182
|
+
if (!term || !term.type)
|
|
183
|
+
return null;
|
|
184
|
+
const { type, value, datatype } = term;
|
|
185
|
+
if (type === 'uri') {
|
|
186
|
+
return value;
|
|
187
|
+
}
|
|
188
|
+
if (type === 'bnode') {
|
|
189
|
+
return `_:${value}`;
|
|
190
|
+
}
|
|
191
|
+
if (type === 'literal') {
|
|
192
|
+
// Handle typed literals
|
|
193
|
+
if (datatype) {
|
|
194
|
+
if (datatype === 'http://www.w3.org/2001/XMLSchema#integer' ||
|
|
195
|
+
datatype === 'http://www.w3.org/2001/XMLSchema#int') {
|
|
196
|
+
return parseInt(value, 10);
|
|
197
|
+
}
|
|
198
|
+
if (datatype === 'http://www.w3.org/2001/XMLSchema#decimal' ||
|
|
199
|
+
datatype === 'http://www.w3.org/2001/XMLSchema#float' ||
|
|
200
|
+
datatype === 'http://www.w3.org/2001/XMLSchema#double') {
|
|
201
|
+
return parseFloat(value);
|
|
202
|
+
}
|
|
203
|
+
if (datatype === 'http://www.w3.org/2001/XMLSchema#boolean') {
|
|
204
|
+
return value === 'true' || value === '1';
|
|
205
|
+
}
|
|
206
|
+
if (datatype === 'http://www.w3.org/2001/XMLSchema#dateTime' ||
|
|
207
|
+
datatype === 'http://www.w3.org/2001/XMLSchema#date') {
|
|
208
|
+
return new Date(value);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return value;
|
|
212
|
+
}
|
|
213
|
+
return value;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Execute INSERT operation via SPARQL UPDATE
|
|
217
|
+
*
|
|
218
|
+
* @deprecated This method is not called in SPARQL-as-LDP-enhancement mode.
|
|
219
|
+
* All write operations are routed to LdpStrategy for Solid Notifications compatibility.
|
|
220
|
+
* Kept for potential future use (e.g., pure SPARQL mode).
|
|
221
|
+
* @see LdpStrategy.executeInsert for the active implementation
|
|
222
|
+
*/
|
|
223
|
+
async executeInsert(plan, _containerUrl, resourceUrl) {
|
|
224
|
+
const table = plan.table;
|
|
225
|
+
const targetGraph = this.resolveTargetGraph(table);
|
|
226
|
+
// targetGraph is now resolved for both Document Mode (base container) and Fragment Mode (base file)
|
|
227
|
+
// Safety check: ensure targetGraph is resolved
|
|
228
|
+
if (!targetGraph) {
|
|
229
|
+
throw new Error('INSERT operation in SPARQL mode requires a target graph. Ensure table.config.base is set.');
|
|
230
|
+
}
|
|
231
|
+
const sparqlQuery = this.sparqlConverter.convertInsert(plan, table, targetGraph);
|
|
232
|
+
return await this.executeSparqlUpdate(resourceUrl, sparqlQuery, table.config.containerPath);
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Execute UPDATE operation via SPARQL UPDATE
|
|
236
|
+
*
|
|
237
|
+
* @deprecated This method is not called in SPARQL-as-LDP-enhancement mode.
|
|
238
|
+
* All write operations are routed to LdpStrategy for Solid Notifications compatibility.
|
|
239
|
+
* Kept for potential future use (e.g., pure SPARQL mode).
|
|
240
|
+
* @see LdpStrategy.executeUpdate for the active implementation
|
|
241
|
+
*/
|
|
242
|
+
async executeUpdate(plan, _containerUrl, resourceUrl) {
|
|
243
|
+
const table = plan.table;
|
|
244
|
+
const targetGraph = this.resolveTargetGraph(table);
|
|
245
|
+
if (!targetGraph) {
|
|
246
|
+
throw new Error('UPDATE operation in SPARQL mode requires a target graph. Ensure table.config.base is set.');
|
|
247
|
+
}
|
|
248
|
+
const sparqlQuery = this.sparqlConverter.convertUpdate(plan.data, plan.where, table, targetGraph);
|
|
249
|
+
return await this.executeSparqlUpdate(resourceUrl, sparqlQuery, table.config.containerPath);
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Execute DELETE operation via SPARQL UPDATE
|
|
253
|
+
*
|
|
254
|
+
* @deprecated This method is not called in SPARQL-as-LDP-enhancement mode.
|
|
255
|
+
* All write operations are routed to LdpStrategy for Solid Notifications compatibility.
|
|
256
|
+
* Kept for potential future use (e.g., pure SPARQL mode).
|
|
257
|
+
* @see LdpStrategy.executeDelete for the active implementation
|
|
258
|
+
*/
|
|
259
|
+
async executeDelete(plan, _containerUrl, resourceUrl) {
|
|
260
|
+
const table = plan.table;
|
|
261
|
+
const targetGraph = this.resolveTargetGraph(table);
|
|
262
|
+
if (!targetGraph) {
|
|
263
|
+
throw new Error('DELETE operation in SPARQL mode requires a target graph. Ensure table.config.base is set.');
|
|
264
|
+
}
|
|
265
|
+
const sparqlQuery = this.sparqlConverter.convertDelete(plan.where, table, targetGraph);
|
|
266
|
+
return await this.executeSparqlUpdate(resourceUrl, sparqlQuery, table.config.containerPath);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Execute a SPARQL UPDATE query against an endpoint
|
|
270
|
+
*/
|
|
271
|
+
async executeSparqlUpdate(endpoint, sparqlQuery, containerUri) {
|
|
272
|
+
const fetchFn = this.getFetchForEndpoint(endpoint);
|
|
273
|
+
// DEBUG: 打印生成的 SPARQL
|
|
274
|
+
console.log('[SparqlStrategy] Executing Update:', sparqlQuery.query);
|
|
275
|
+
const response = await fetchFn(endpoint, {
|
|
276
|
+
method: 'POST',
|
|
277
|
+
headers: { 'Content-Type': 'application/sparql-update' },
|
|
278
|
+
body: sparqlQuery.query
|
|
279
|
+
});
|
|
280
|
+
if (!response.ok) {
|
|
281
|
+
const text = await response.text().catch(() => '');
|
|
282
|
+
return [{
|
|
283
|
+
success: false,
|
|
284
|
+
source: endpoint,
|
|
285
|
+
status: response.status,
|
|
286
|
+
via: 'sparql-endpoint',
|
|
287
|
+
error: `${response.status} ${response.statusText}${text ? ` - ${text}` : ''}`
|
|
288
|
+
}];
|
|
289
|
+
}
|
|
290
|
+
// 更新成功后使缓存失效,避免后续查询命中旧数据
|
|
291
|
+
await this.sparqlExecutor.invalidateHttpCache(endpoint).catch(() => undefined);
|
|
292
|
+
if (containerUri) {
|
|
293
|
+
console.log('DEBUG: Invalidating container cache for:', containerUri);
|
|
294
|
+
await this.sparqlExecutor.invalidateHttpCache(containerUri).catch(() => undefined);
|
|
295
|
+
}
|
|
296
|
+
await this.sparqlExecutor.invalidateHttpCache(undefined).catch(() => undefined); // Invalidate all caches as a fallback
|
|
297
|
+
return [{
|
|
298
|
+
success: true,
|
|
299
|
+
source: endpoint,
|
|
300
|
+
status: response.status,
|
|
301
|
+
via: 'sparql-endpoint'
|
|
302
|
+
}];
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
exports.SparqlStrategy = SparqlStrategy;
|
|
306
|
+
//# sourceMappingURL=sparql-strategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sparql-strategy.js","sourceRoot":"","sources":["../../../src/core/execution/sparql-strategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ExecutionStrategy Factory
|
|
3
|
+
*
|
|
4
|
+
* Creates the appropriate execution strategy based on table configuration.
|
|
5
|
+
* - Tables with sparqlEndpoint -> SparqlStrategy
|
|
6
|
+
* - Tables without sparqlEndpoint -> LdpStrategy
|
|
7
|
+
*/
|
|
8
|
+
import type { PodTable } from '../schema';
|
|
9
|
+
import type { ComunicaSPARQLExecutor } from '../sparql-executor';
|
|
10
|
+
import type { ASTToSPARQLConverter } from '../ast-to-sparql';
|
|
11
|
+
import type { ResourceResolver } from '../resource-resolver';
|
|
12
|
+
import type { QueryCondition } from '../query-conditions';
|
|
13
|
+
import type { ExecutionStrategy, ExecutionStrategyFactory } from './types';
|
|
14
|
+
import { LdpStrategy } from './ldp-strategy';
|
|
15
|
+
import type { LdpExecutor } from './ldp-executor';
|
|
16
|
+
import type { UriResolver } from '../uri';
|
|
17
|
+
export interface StrategyFactoryDependencies {
|
|
18
|
+
sparqlExecutor: ComunicaSPARQLExecutor;
|
|
19
|
+
sparqlConverter: ASTToSPARQLConverter;
|
|
20
|
+
sessionFetch: typeof fetch;
|
|
21
|
+
podUrl: string;
|
|
22
|
+
ldpExecutor: LdpExecutor;
|
|
23
|
+
uriResolver: UriResolver;
|
|
24
|
+
getResolver: (table: PodTable) => ResourceResolver;
|
|
25
|
+
listContainerResources: (containerUrl: string) => Promise<string[]>;
|
|
26
|
+
findSubjectsForCondition: (condition: QueryCondition, table: PodTable, resourceUrl: string) => Promise<string[]>;
|
|
27
|
+
}
|
|
28
|
+
export declare class ExecutionStrategyFactoryImpl implements ExecutionStrategyFactory {
|
|
29
|
+
private deps;
|
|
30
|
+
private ldpStrategy;
|
|
31
|
+
private sparqlStrategy;
|
|
32
|
+
constructor(deps: StrategyFactoryDependencies);
|
|
33
|
+
/**
|
|
34
|
+
* Get the appropriate execution strategy for a table
|
|
35
|
+
*/
|
|
36
|
+
getStrategy(table: PodTable): ExecutionStrategy;
|
|
37
|
+
/**
|
|
38
|
+
* Get LDP strategy explicitly (used for write operations in SPARQL mode)
|
|
39
|
+
*/
|
|
40
|
+
getLdpStrategy(): LdpStrategy;
|
|
41
|
+
/**
|
|
42
|
+
* Get or create LDP strategy (singleton)
|
|
43
|
+
*/
|
|
44
|
+
private getLdpStrategyInternal;
|
|
45
|
+
/**
|
|
46
|
+
* Get or create SPARQL strategy (singleton)
|
|
47
|
+
*/
|
|
48
|
+
private getSparqlStrategy;
|
|
49
|
+
/**
|
|
50
|
+
* Determine execution mode for a table
|
|
51
|
+
*/
|
|
52
|
+
static getMode(table: PodTable): 'ldp' | 'sparql';
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=strategy-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy-factory.d.ts","sourceRoot":"","sources":["../../../src/core/execution/strategy-factory.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAgC,MAAM,gBAAgB,CAAC;AAE3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,MAAM,WAAW,2BAA2B;IAC1C,cAAc,EAAE,sBAAsB,CAAC;IACvC,eAAe,EAAE,oBAAoB,CAAC;IACtC,YAAY,EAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,gBAAgB,CAAC;IACnD,sBAAsB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACpE,wBAAwB,EAAE,CACxB,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACxB;AAED,qBAAa,4BAA6B,YAAW,wBAAwB;IAC3E,OAAO,CAAC,IAAI,CAA8B;IAG1C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,cAAc,CAA+B;gBAEzC,IAAI,EAAE,2BAA2B;IAI7C;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,iBAAiB;IAU/C;;OAEG;IACH,cAAc,IAAI,WAAW;IAI7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,QAAQ;CAGlD"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ExecutionStrategy Factory
|
|
4
|
+
*
|
|
5
|
+
* Creates the appropriate execution strategy based on table configuration.
|
|
6
|
+
* - Tables with sparqlEndpoint -> SparqlStrategy
|
|
7
|
+
* - Tables without sparqlEndpoint -> LdpStrategy
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.ExecutionStrategyFactoryImpl = void 0;
|
|
11
|
+
const ldp_strategy_1 = require("./ldp-strategy");
|
|
12
|
+
const sparql_strategy_1 = require("./sparql-strategy");
|
|
13
|
+
class ExecutionStrategyFactoryImpl {
|
|
14
|
+
constructor(deps) {
|
|
15
|
+
// Cache strategies by mode to avoid recreating them
|
|
16
|
+
this.ldpStrategy = null;
|
|
17
|
+
this.sparqlStrategy = null;
|
|
18
|
+
this.deps = deps;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Get the appropriate execution strategy for a table
|
|
22
|
+
*/
|
|
23
|
+
getStrategy(table) {
|
|
24
|
+
const endpoint = table.getSparqlEndpoint?.();
|
|
25
|
+
if (endpoint) {
|
|
26
|
+
return this.getSparqlStrategy();
|
|
27
|
+
}
|
|
28
|
+
return this.getLdpStrategy();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Get LDP strategy explicitly (used for write operations in SPARQL mode)
|
|
32
|
+
*/
|
|
33
|
+
getLdpStrategy() {
|
|
34
|
+
return this.getLdpStrategyInternal();
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get or create LDP strategy (singleton)
|
|
38
|
+
*/
|
|
39
|
+
getLdpStrategyInternal() {
|
|
40
|
+
if (!this.ldpStrategy) {
|
|
41
|
+
const ldpDeps = {
|
|
42
|
+
sparqlExecutor: this.deps.sparqlExecutor,
|
|
43
|
+
sparqlConverter: this.deps.sparqlConverter,
|
|
44
|
+
fetchFn: this.deps.sessionFetch,
|
|
45
|
+
ldpExecutor: this.deps.ldpExecutor,
|
|
46
|
+
getResolver: this.deps.getResolver,
|
|
47
|
+
listContainerResources: this.deps.listContainerResources,
|
|
48
|
+
findSubjectsForCondition: this.deps.findSubjectsForCondition
|
|
49
|
+
};
|
|
50
|
+
this.ldpStrategy = new ldp_strategy_1.LdpStrategy(ldpDeps);
|
|
51
|
+
}
|
|
52
|
+
return this.ldpStrategy;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Get or create SPARQL strategy (singleton)
|
|
56
|
+
*/
|
|
57
|
+
getSparqlStrategy() {
|
|
58
|
+
if (!this.sparqlStrategy) {
|
|
59
|
+
const sparqlDeps = {
|
|
60
|
+
sparqlExecutor: this.deps.sparqlExecutor,
|
|
61
|
+
sparqlConverter: this.deps.sparqlConverter,
|
|
62
|
+
sessionFetch: this.deps.sessionFetch,
|
|
63
|
+
podUrl: this.deps.podUrl,
|
|
64
|
+
uriResolver: this.deps.uriResolver
|
|
65
|
+
};
|
|
66
|
+
this.sparqlStrategy = new sparql_strategy_1.SparqlStrategy(sparqlDeps);
|
|
67
|
+
}
|
|
68
|
+
return this.sparqlStrategy;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Determine execution mode for a table
|
|
72
|
+
*/
|
|
73
|
+
static getMode(table) {
|
|
74
|
+
return table.getSparqlEndpoint?.() ? 'sparql' : 'ldp';
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.ExecutionStrategyFactoryImpl = ExecutionStrategyFactoryImpl;
|
|
78
|
+
//# sourceMappingURL=strategy-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy-factory.js","sourceRoot":"","sources":["../../../src/core/execution/strategy-factory.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAQH,iDAA2E;AAC3E,uDAAoF;AAoBpF,MAAa,4BAA4B;IAOvC,YAAY,IAAiC;QAJ7C,oDAAoD;QAC5C,gBAAW,GAAuB,IAAI,CAAC;QACvC,mBAAc,GAA0B,IAAI,CAAC;QAGnD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAe;QACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAE7C,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACK,sBAAsB;QAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,OAAO,GAA4B;gBACvC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;gBACxC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;gBAC1C,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAClC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAClC,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,sBAAsB;gBACxD,wBAAwB,EAAE,IAAI,CAAC,IAAI,CAAC,wBAAwB;aAC7D,CAAC;YACF,IAAI,CAAC,WAAW,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,UAAU,GAA+B;gBAC7C,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;gBACxC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;gBAC1C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;gBACpC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;gBACxB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;aACnC,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAc,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,KAAe;QAC5B,OAAO,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IACxD,CAAC;CACF;AAzED,oEAyEC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ExecutionStrategy Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the interface for different execution modes (LDP, SPARQL)
|
|
5
|
+
*/
|
|
6
|
+
import type { PodTable } from '../schema';
|
|
7
|
+
import type { QueryCondition } from '../query-conditions';
|
|
8
|
+
import type { SelectQueryPlan } from '../select-plan';
|
|
9
|
+
export interface InsertQueryPlan {
|
|
10
|
+
table: PodTable;
|
|
11
|
+
rows: any[];
|
|
12
|
+
}
|
|
13
|
+
export interface UpdateQueryPlan {
|
|
14
|
+
table: PodTable;
|
|
15
|
+
data: Record<string, any>;
|
|
16
|
+
where: QueryCondition;
|
|
17
|
+
}
|
|
18
|
+
export interface DeleteQueryPlan {
|
|
19
|
+
table: PodTable;
|
|
20
|
+
where?: QueryCondition;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Result of an execution operation
|
|
24
|
+
*/
|
|
25
|
+
export interface ExecutionResult {
|
|
26
|
+
success: boolean;
|
|
27
|
+
source: string;
|
|
28
|
+
status: number;
|
|
29
|
+
via?: string;
|
|
30
|
+
error?: string;
|
|
31
|
+
retried?: boolean;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Context passed to execution strategies
|
|
35
|
+
*/
|
|
36
|
+
export interface ExecutionContext {
|
|
37
|
+
/** Pod base URL */
|
|
38
|
+
podUrl: string;
|
|
39
|
+
/** Authenticated fetch function */
|
|
40
|
+
fetch: typeof fetch;
|
|
41
|
+
/** WebID of the current user */
|
|
42
|
+
webId: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* ExecutionStrategy interface
|
|
46
|
+
*
|
|
47
|
+
* Abstracts the difference between LDP and SPARQL execution modes.
|
|
48
|
+
* Each strategy handles SELECT, INSERT, UPDATE, DELETE operations
|
|
49
|
+
* in its own way.
|
|
50
|
+
*/
|
|
51
|
+
export interface ExecutionStrategy {
|
|
52
|
+
/** Mode identifier */
|
|
53
|
+
readonly mode: 'ldp' | 'sparql';
|
|
54
|
+
/**
|
|
55
|
+
* Execute a SELECT query
|
|
56
|
+
*/
|
|
57
|
+
executeSelect(plan: SelectQueryPlan, containerUrl: string, resourceUrl: string): Promise<any[]>;
|
|
58
|
+
/**
|
|
59
|
+
* Execute an INSERT operation
|
|
60
|
+
*/
|
|
61
|
+
executeInsert(plan: InsertQueryPlan, containerUrl: string, resourceUrl: string): Promise<ExecutionResult[]>;
|
|
62
|
+
/**
|
|
63
|
+
* Execute an UPDATE operation
|
|
64
|
+
*/
|
|
65
|
+
executeUpdate(plan: UpdateQueryPlan, containerUrl: string, resourceUrl: string): Promise<ExecutionResult[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Execute a DELETE operation
|
|
68
|
+
*/
|
|
69
|
+
executeDelete(plan: DeleteQueryPlan, containerUrl: string, resourceUrl: string): Promise<ExecutionResult[]>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Factory interface for creating execution strategies
|
|
73
|
+
*/
|
|
74
|
+
export interface ExecutionStrategyFactory {
|
|
75
|
+
/**
|
|
76
|
+
* Get the appropriate execution strategy for a table
|
|
77
|
+
*/
|
|
78
|
+
getStrategy(table: PodTable): ExecutionStrategy;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/execution/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,KAAK,EAAE,cAAc,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IAEhC;;OAEG;IACH,aAAa,CACX,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAElB;;OAEG;IACH,aAAa,CACX,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE9B;;OAEG;IACH,aAAa,CACX,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE9B;;OAEG;IACH,aAAa,CACX,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,iBAAiB,CAAC;CACjD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/execution/types.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PodColumnBase } from './schema';
|
|
2
|
+
type AnyColumn = PodColumnBase<any, any, any, any>;
|
|
3
|
+
/**
|
|
4
|
+
* SPARQL 表达式基类
|
|
5
|
+
* 不再实现 drizzle-orm 的 SQLWrapper 接口,避免假 SQL 对象导致的问题
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class SPARQLExpression {
|
|
8
|
+
readonly [Symbol.toStringTag] = "SPARQLExpression";
|
|
9
|
+
}
|
|
10
|
+
export declare class BinaryExpression extends SPARQLExpression {
|
|
11
|
+
left: AnyColumn | SPARQLExpression | string;
|
|
12
|
+
operator: string;
|
|
13
|
+
right: any;
|
|
14
|
+
readonly type = "binary_expr";
|
|
15
|
+
constructor(left: AnyColumn | SPARQLExpression | string, operator: string, right: any);
|
|
16
|
+
}
|
|
17
|
+
export declare class LogicalExpression extends SPARQLExpression {
|
|
18
|
+
operator: 'AND' | 'OR';
|
|
19
|
+
expressions: (SPARQLExpression | any)[];
|
|
20
|
+
readonly type = "logical_expr";
|
|
21
|
+
constructor(operator: 'AND' | 'OR', expressions: (SPARQLExpression | any)[]);
|
|
22
|
+
}
|
|
23
|
+
export declare class UnaryExpression extends SPARQLExpression {
|
|
24
|
+
operator: string;
|
|
25
|
+
value: any;
|
|
26
|
+
readonly type = "unary_expr";
|
|
27
|
+
constructor(operator: string, value: any);
|
|
28
|
+
}
|
|
29
|
+
export declare class FunctionExpression extends SPARQLExpression {
|
|
30
|
+
functionName: string;
|
|
31
|
+
args: any[];
|
|
32
|
+
constructor(functionName: string, args: any[]);
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=expressions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../../src/core/expressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,KAAK,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnD;;;GAGG;AACH,8BAAsB,gBAAgB;IAEpC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,sBAAsB;CACpD;AAED,qBAAa,gBAAiB,SAAQ,gBAAgB;IAG3C,IAAI,EAAE,SAAS,GAAG,gBAAgB,GAAG,MAAM;IAC3C,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,GAAG;IAJnB,SAAgB,IAAI,iBAAiB;gBAE5B,IAAI,EAAE,SAAS,GAAG,gBAAgB,GAAG,MAAM,EAC3C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,GAAG;CAIpB;AAED,qBAAa,iBAAkB,SAAQ,gBAAgB;IAG5C,QAAQ,EAAE,KAAK,GAAG,IAAI;IACtB,WAAW,EAAE,CAAC,gBAAgB,GAAG,GAAG,CAAC,EAAE;IAHhD,SAAgB,IAAI,kBAAkB;gBAE7B,QAAQ,EAAE,KAAK,GAAG,IAAI,EACtB,WAAW,EAAE,CAAC,gBAAgB,GAAG,GAAG,CAAC,EAAE;CAIjD;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IAG1C,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,GAAG;IAHnB,SAAgB,IAAI,gBAAgB;gBAE3B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,GAAG;CAIpB;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;IAE7C,YAAY,EAAE,MAAM;IACpB,IAAI,EAAE,GAAG,EAAE;gBADX,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,GAAG,EAAE;CAIrB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.FunctionExpression = exports.UnaryExpression = exports.LogicalExpression = exports.BinaryExpression = exports.SPARQLExpression = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* SPARQL 表达式基类
|
|
7
|
+
* 不再实现 drizzle-orm 的 SQLWrapper 接口,避免假 SQL 对象导致的问题
|
|
8
|
+
*/
|
|
9
|
+
class SPARQLExpression {
|
|
10
|
+
constructor() {
|
|
11
|
+
// 表达式标识符,用于类型检查
|
|
12
|
+
this[_a] = 'SPARQLExpression';
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.SPARQLExpression = SPARQLExpression;
|
|
16
|
+
_a = Symbol.toStringTag;
|
|
17
|
+
class BinaryExpression extends SPARQLExpression {
|
|
18
|
+
constructor(left, operator, right) {
|
|
19
|
+
super();
|
|
20
|
+
this.left = left;
|
|
21
|
+
this.operator = operator;
|
|
22
|
+
this.right = right;
|
|
23
|
+
this.type = 'binary_expr';
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.BinaryExpression = BinaryExpression;
|
|
27
|
+
class LogicalExpression extends SPARQLExpression {
|
|
28
|
+
constructor(operator, expressions) {
|
|
29
|
+
super();
|
|
30
|
+
this.operator = operator;
|
|
31
|
+
this.expressions = expressions;
|
|
32
|
+
this.type = 'logical_expr';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.LogicalExpression = LogicalExpression;
|
|
36
|
+
class UnaryExpression extends SPARQLExpression {
|
|
37
|
+
constructor(operator, value) {
|
|
38
|
+
super();
|
|
39
|
+
this.operator = operator;
|
|
40
|
+
this.value = value;
|
|
41
|
+
this.type = 'unary_expr';
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.UnaryExpression = UnaryExpression;
|
|
45
|
+
class FunctionExpression extends SPARQLExpression {
|
|
46
|
+
constructor(functionName, args) {
|
|
47
|
+
super();
|
|
48
|
+
this.functionName = functionName;
|
|
49
|
+
this.args = args;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.FunctionExpression = FunctionExpression;
|
|
53
|
+
//# sourceMappingURL=expressions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../src/core/expressions.ts"],"names":[],"mappings":";;;;AAKA;;;GAGG;AACH,MAAsB,gBAAgB;IAAtC;QACE,gBAAgB;QACP,QAAoB,GAAG,kBAAkB,CAAC;IACrD,CAAC;CAAA;AAHD,4CAGC;KADW,MAAM,CAAC,WAAW;AAG9B,MAAa,gBAAiB,SAAQ,gBAAgB;IAEpD,YACS,IAA2C,EAC3C,QAAgB,EAChB,KAAU;QAEjB,KAAK,EAAE,CAAC;QAJD,SAAI,GAAJ,IAAI,CAAuC;QAC3C,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAK;QAJH,SAAI,GAAG,aAAa,CAAC;IAOrC,CAAC;CACF;AATD,4CASC;AAED,MAAa,iBAAkB,SAAQ,gBAAgB;IAErD,YACS,QAAsB,EACtB,WAAuC;QAE9C,KAAK,EAAE,CAAC;QAHD,aAAQ,GAAR,QAAQ,CAAc;QACtB,gBAAW,GAAX,WAAW,CAA4B;QAHhC,SAAI,GAAG,cAAc,CAAC;IAMtC,CAAC;CACF;AARD,8CAQC;AAED,MAAa,eAAgB,SAAQ,gBAAgB;IAEnD,YACS,QAAgB,EAChB,KAAU;QAEjB,KAAK,EAAE,CAAC;QAHD,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAK;QAHH,SAAI,GAAG,YAAY,CAAC;IAMpC,CAAC;CACF;AARD,0CAQC;AAED,MAAa,kBAAmB,SAAQ,gBAAgB;IACtD,YACS,YAAoB,EACpB,IAAW;QAElB,KAAK,EAAE,CAAC;QAHD,iBAAY,GAAZ,YAAY,CAAQ;QACpB,SAAI,GAAJ,IAAI,CAAO;IAGpB,CAAC;CACF;AAPD,gDAOC"}
|