@undefineds.co/drizzle-solid 0.3.3 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/esm/core/ast-to-sparql.js +5 -5
  2. package/dist/esm/core/compile-time-types.js +1 -1
  3. package/dist/esm/core/discovery/composite-discovery.js +1 -1
  4. package/dist/esm/core/discovery/index.js +6 -6
  5. package/dist/esm/core/discovery/interop-discovery.js +3 -3
  6. package/dist/esm/core/discovery/interop-tables.js +2 -2
  7. package/dist/esm/core/discovery/typeindex-discovery.js +1 -1
  8. package/dist/esm/core/execution/index.js +4 -4
  9. package/dist/esm/core/execution/ldp-executor.js +1 -1
  10. package/dist/esm/core/execution/sparql-strategy.js +2 -2
  11. package/dist/esm/core/execution/strategy-factory.js +2 -2
  12. package/dist/esm/core/federated/executor.js +1 -1
  13. package/dist/esm/core/federated/index.js +2 -2
  14. package/dist/esm/core/notifications/channels/index.js +3 -3
  15. package/dist/esm/core/notifications/channels/sse-channel.js +1 -1
  16. package/dist/esm/core/notifications/channels/websocket-channel.js +1 -1
  17. package/dist/esm/core/notifications/index.js +1 -1
  18. package/dist/esm/core/notifications/notifications-client.js +2 -2
  19. package/dist/esm/core/pod-database.js +6 -6
  20. package/dist/esm/core/pod-dialect.js +8 -8
  21. package/dist/esm/core/pod-session.js +4 -4
  22. package/dist/esm/core/query-builders/delete-query-builder.js +2 -2
  23. package/dist/esm/core/query-builders/helpers.js +2 -2
  24. package/dist/esm/core/query-builders/index.js +4 -4
  25. package/dist/esm/core/query-builders/insert-query-builder.js +2 -2
  26. package/dist/esm/core/query-builders/select-query-builder.js +8 -8
  27. package/dist/esm/core/query-builders/update-query-builder.js +2 -2
  28. package/dist/esm/core/query-conditions.js +1 -1
  29. package/dist/esm/core/query-where-policy.js +1 -1
  30. package/dist/esm/core/resource-resolver/document-resolver.js +2 -2
  31. package/dist/esm/core/resource-resolver/factory.js +3 -3
  32. package/dist/esm/core/resource-resolver/fragment-resolver.js +1 -1
  33. package/dist/esm/core/resource-resolver/index.js +4 -4
  34. package/dist/esm/core/runtime/pod-runtime.js +2 -2
  35. package/dist/esm/core/schema/columns.js +1 -1
  36. package/dist/esm/core/schema/factories.js +2 -2
  37. package/dist/esm/core/schema/index.js +8 -8
  38. package/dist/esm/core/schema/pod-table.js +4 -4
  39. package/dist/esm/core/schema/relations.js +1 -1
  40. package/dist/esm/core/schema/solid-schema.js +4 -4
  41. package/dist/esm/core/schema/utils.js +1 -1
  42. package/dist/esm/core/services/pod-services.js +9 -9
  43. package/dist/esm/core/shape/generator.js +1 -1
  44. package/dist/esm/core/shape/index.js +3 -3
  45. package/dist/esm/core/shape/manager.js +4 -4
  46. package/dist/esm/core/shape/shacl-parser.js +1 -1
  47. package/dist/esm/core/shape/validator.js +1 -1
  48. package/dist/esm/core/sparql/builder/expression-builder.js +3 -3
  49. package/dist/esm/core/sparql/builder/select-builder.js +6 -6
  50. package/dist/esm/core/sparql/builder/update-builder.js +3 -3
  51. package/dist/esm/core/sparql/helpers.js +1 -1
  52. package/dist/esm/core/sparql-engine.js +1 -1
  53. package/dist/esm/core/sparql-executor.js +1 -1
  54. package/dist/esm/core/subject/index.js +1 -1
  55. package/dist/esm/core/triple/builder.js +2 -2
  56. package/dist/esm/core/triple/handlers/index.js +10 -10
  57. package/dist/esm/core/triple/handlers/inverse.js +1 -1
  58. package/dist/esm/core/triple/handlers/uri.js +1 -1
  59. package/dist/esm/core/triple/index.js +2 -2
  60. package/dist/esm/core/typeindex-manager.js +1 -1
  61. package/dist/esm/core/uri/index.js +1 -1
  62. package/dist/esm/driver.js +3 -3
  63. package/dist/esm/index.js +22 -22
  64. package/dist/esm/package.json +3 -0
  65. package/dist/esm/pod.js +2 -2
  66. package/dist/esm/solid.js +1 -1
  67. package/dist/esm/utils/rdf-validation.js +1 -1
  68. package/package.json +2 -2
@@ -1,8 +1,8 @@
1
- import { SelectBuilder } from './sparql/builder/select-builder';
2
- import { UpdateBuilder } from './sparql/builder/update-builder';
3
- import { getPredicateForColumn, formatValue, generateSubjectUri } from './sparql/helpers';
4
- import { ExpressionBuilder } from './sparql/builder/expression-builder';
5
- import { UriResolverImpl } from './uri';
1
+ import { SelectBuilder } from './sparql/builder/select-builder.js';
2
+ import { UpdateBuilder } from './sparql/builder/update-builder.js';
3
+ import { getPredicateForColumn, formatValue, generateSubjectUri } from './sparql/helpers.js';
4
+ import { ExpressionBuilder } from './sparql/builder/expression-builder.js';
5
+ import { UriResolverImpl } from './uri/index.js';
6
6
  export class ASTToSPARQLConverter {
7
7
  constructor(podUrl, webId, uriResolver) {
8
8
  this.podUrl = podUrl;
@@ -1,6 +1,6 @@
1
1
  // 编译时类型推断系统
2
2
  // 使用 TypeScript 的编译时类型检查,而不是运行时推断
3
- import { podTable, string, int, boolean, date } from './schema';
3
+ import { podTable, string, int, boolean, date } from './schema/index.js';
4
4
  // 从类型定义创建实际的表
5
5
  export function createTypedTable(name, definition, options) {
6
6
  const columns = {};
@@ -1,4 +1,4 @@
1
- import { InteropDiscovery } from './interop-discovery';
1
+ import { InteropDiscovery } from './interop-discovery.js';
2
2
  /**
3
3
  * 按 container 合并多个 DataLocation
4
4
  * 同一个 container 的多个结果会被合并,shapes 数组会被合并
@@ -1,7 +1,7 @@
1
- export * from './types';
2
- export * from './typeindex-discovery';
3
- export * from './interop-discovery';
4
- export * from './interop-types';
5
- export * from './composite-discovery';
6
- export * from './provider-cache';
1
+ export * from './types.js';
2
+ export * from './typeindex-discovery.js';
3
+ export * from './interop-discovery.js';
4
+ export * from './interop-types.js';
5
+ export * from './composite-discovery.js';
6
+ export * from './provider-cache.js';
7
7
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
- import { INTEROP, SHAPETREES, UDFS } from './interop-types';
2
- import { registrySetSchema, dataRegistrySchema, dataRegistrationSchema, accessGrantSchema, dataGrantSchema, applicationRegistrationSchema } from './interop-tables';
3
- import { getPredicateForColumn } from '../sparql/helpers';
1
+ import { INTEROP, SHAPETREES, UDFS } from './interop-types.js';
2
+ import { registrySetSchema, dataRegistrySchema, dataRegistrationSchema, accessGrantSchema, dataGrantSchema, applicationRegistrationSchema } from './interop-tables.js';
3
+ import { getPredicateForColumn } from '../sparql/helpers.js';
4
4
  import { getSolidDataset, getThing, getUrl, getUrlAll, getThingAll, createThing, setThing, addUrl, saveSolidDatasetAt, createContainerAt, setUrl, setDatetime, createSolidDataset, setStringNoLocale, getStringNoLocale } from '@inrupt/solid-client';
5
5
  const normalizeRdfClass = (value) => {
6
6
  if (!value)
@@ -1,5 +1,5 @@
1
- import { solidSchema, string, uri, id } from '../schema';
2
- import { INTEROP, UDFS } from './interop-types';
1
+ import { solidSchema, string, uri, id } from '../schema/index.js';
2
+ import { INTEROP, UDFS } from './interop-types.js';
3
3
  const ns = { prefix: 'interop', uri: INTEROP.NS };
4
4
  // Registry Set (Entry point from Profile)
5
5
  export const registrySetSchema = solidSchema({
@@ -1,4 +1,4 @@
1
- import { UriResolverImpl } from '../uri';
1
+ import { UriResolverImpl } from '../uri/index.js';
2
2
  /**
3
3
  * 基于 TypeIndex 的数据发现实现
4
4
  */
@@ -4,10 +4,10 @@
4
4
  * Provides execution strategies for different modes (LDP, SPARQL)
5
5
  */
6
6
  // Strategies
7
- export { LdpStrategy } from './ldp-strategy';
8
- export { SparqlStrategy } from './sparql-strategy';
7
+ export { LdpStrategy } from './ldp-strategy.js';
8
+ export { SparqlStrategy } from './sparql-strategy.js';
9
9
  // Factory
10
- export { ExecutionStrategyFactoryImpl } from './strategy-factory';
10
+ export { ExecutionStrategyFactoryImpl } from './strategy-factory.js';
11
11
  // Legacy executor (used internally by LdpStrategy)
12
- export { LdpExecutor } from './ldp-executor';
12
+ export { LdpExecutor } from './ldp-executor.js';
13
13
  //# sourceMappingURL=index.js.map
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 负责 LDP 模式下的写操作 (N3 Patch),剥离自 PodDialect
5
5
  */
6
- import { TripleBuilderImpl } from '../triple/builder';
6
+ import { TripleBuilderImpl } from '../triple/builder.js';
7
7
  export class LdpExecutor {
8
8
  constructor(sparqlExecutor, fetchFn, uriResolver) {
9
9
  this.sparqlExecutor = sparqlExecutor;
@@ -1,4 +1,4 @@
1
- import { isSameOrigin } from '../utils/origin-auth';
1
+ import { isSameOrigin } from '../utils/origin-auth.js';
2
2
  export class SparqlStrategy {
3
3
  constructor(deps) {
4
4
  this.mode = 'sparql';
@@ -39,7 +39,7 @@ export class SparqlStrategy {
39
39
  if (isSameOrigin(resourceUrl, this.podUrl)) {
40
40
  return await this.sparqlExecutor.executeQueryWithSource(sparqlQuery, resourceUrl, resourceUrl.includes('/sparql') ? 'sparql' : 'auto');
41
41
  }
42
- const { ComunicaSPARQLExecutor } = await import('../sparql-executor');
42
+ const { ComunicaSPARQLExecutor } = await import('../sparql-executor.js');
43
43
  const unauthExecutor = new ComunicaSPARQLExecutor({
44
44
  sources: [resourceUrl],
45
45
  fetch: fetch,
@@ -5,8 +5,8 @@
5
5
  * - Tables with sparqlEndpoint -> SparqlStrategy
6
6
  * - Tables without sparqlEndpoint -> LdpStrategy
7
7
  */
8
- import { LdpStrategy } from './ldp-strategy';
9
- import { SparqlStrategy } from './sparql-strategy';
8
+ import { LdpStrategy } from './ldp-strategy.js';
9
+ import { SparqlStrategy } from './sparql-strategy.js';
10
10
  export class ExecutionStrategyFactoryImpl {
11
11
  constructor(deps) {
12
12
  this.ldpStrategy = null;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 执行跨 Pod 的联邦查询
5
5
  */
6
- import { ProviderCache } from '../discovery/provider-cache';
6
+ import { ProviderCache } from '../discovery/provider-cache.js';
7
7
  /**
8
8
  * 联邦查询执行器
9
9
  */
@@ -1,3 +1,3 @@
1
- export * from './types';
2
- export * from './executor';
1
+ export * from './types.js';
2
+ export * from './executor.js';
3
3
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- export { BaseChannel, parseActivityStreamsMessage } from './base-channel';
2
- export { SSEChannel } from './sse-channel';
3
- export { WebSocketChannel } from './websocket-channel';
1
+ export { BaseChannel, parseActivityStreamsMessage } from './base-channel.js';
2
+ export { SSEChannel } from './sse-channel.js';
3
+ export { WebSocketChannel } from './websocket-channel.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { BaseChannel } from './base-channel';
1
+ import { BaseChannel } from './base-channel.js';
2
2
  /**
3
3
  * SSE (Server-Sent Events) 通道实现
4
4
  * 对应 Solid Notifications Protocol 的 StreamingHTTPChannel2023
@@ -1,4 +1,4 @@
1
- import { BaseChannel } from './base-channel';
1
+ import { BaseChannel } from './base-channel.js';
2
2
  // 兼容 Node.js 和浏览器环境
3
3
  const getWebSocket = () => {
4
4
  if (typeof WebSocket !== 'undefined') {
@@ -1,2 +1,2 @@
1
- export { NotificationsClient } from './notifications-client';
1
+ export { NotificationsClient } from './notifications-client.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import { SSEChannel } from './channels/sse-channel';
2
- import { WebSocketChannel } from './channels/websocket-channel';
1
+ import { SSEChannel } from './channels/sse-channel.js';
2
+ import { WebSocketChannel } from './channels/websocket-channel.js';
3
3
  /**
4
4
  * Solid Notifications Protocol 通道类型 URI 映射
5
5
  */
@@ -1,9 +1,9 @@
1
1
  var _a;
2
2
  import { entityKind } from 'drizzle-orm';
3
- import { isSolidSchema, PodColumnBase } from './schema';
4
- import { inArray } from './query-conditions';
5
- import { NotificationsClient } from './notifications';
6
- import { FederatedQueryExecutor } from './federated';
3
+ import { isSolidSchema, PodColumnBase } from './schema/index.js';
4
+ import { inArray } from './query-conditions.js';
5
+ import { NotificationsClient } from './notifications/index.js';
6
+ import { FederatedQueryExecutor } from './federated/index.js';
7
7
  function isRecord(value) {
8
8
  return typeof value === 'object' && value !== null;
9
9
  }
@@ -566,7 +566,7 @@ export class PodDatabase {
566
566
  }
567
567
  // 3. 没有 Shape,使用基础表定义(仅 id 列)
568
568
  console.log(`[discoverTable] No shape available, creating basic table`);
569
- const { podTable, string } = await import('./schema');
569
+ const { podTable, string } = await import('./schema/index.js');
570
570
  const tableName = this.extractClassName(rdfClass);
571
571
  const table = podTable(tableName, {
572
572
  id: string('id').primaryKey()
@@ -716,7 +716,7 @@ export class PodDatabase {
716
716
  }
717
717
  // 3. 没有 Shape,返回仅含 id 的基础表
718
718
  console.log(`[locationToTable] No shape available, creating basic table for container: ${location.container}`);
719
- const { podTable, string } = await import('./schema');
719
+ const { podTable, string } = await import('./schema/index.js');
720
720
  const tableName = this.extractContainerName(location.container);
721
721
  const table = podTable(tableName, {
722
722
  id: string('id').primaryKey()
@@ -1,13 +1,13 @@
1
1
  var _a;
2
2
  import { entityKind } from 'drizzle-orm';
3
- import { PodColumnBase } from './schema';
4
- import { BinaryExpression, LogicalExpression, UnaryExpression } from './expressions';
5
- import { ComunicaSPARQLExecutor } from './sparql-executor';
6
- import { PodExecutor } from './execution/pod-executor';
7
- import { isSameOrigin, getFetchForOrigin } from './utils/origin-auth';
8
- import { PodRuntime } from './runtime/pod-runtime';
9
- import { PodServices } from './services/pod-services';
10
- import { DebugLogger, setGlobalDebugLogger } from './utils/debug-logger';
3
+ import { PodColumnBase } from './schema/index.js';
4
+ import { BinaryExpression, LogicalExpression, UnaryExpression } from './expressions.js';
5
+ import { ComunicaSPARQLExecutor } from './sparql-executor.js';
6
+ import { PodExecutor } from './execution/pod-executor.js';
7
+ import { isSameOrigin, getFetchForOrigin } from './utils/origin-auth.js';
8
+ import { PodRuntime } from './runtime/pod-runtime.js';
9
+ import { PodServices } from './services/pod-services.js';
10
+ import { DebugLogger, setGlobalDebugLogger } from './utils/debug-logger.js';
11
11
  function isRecord(value) {
12
12
  return typeof value === 'object' && value !== null;
13
13
  }
@@ -1,10 +1,10 @@
1
1
  var _a;
2
2
  import { entityKind } from 'drizzle-orm';
3
3
  // Import the new Query Builders and types
4
- import { SelectQueryBuilder } from './query-builders/select-query-builder';
5
- import { InsertQueryBuilder } from './query-builders/insert-query-builder';
6
- import { UpdateQueryBuilder } from './query-builders/update-query-builder';
7
- import { DeleteQueryBuilder } from './query-builders/delete-query-builder';
4
+ import { SelectQueryBuilder } from './query-builders/select-query-builder.js';
5
+ import { InsertQueryBuilder } from './query-builders/insert-query-builder.js';
6
+ import { UpdateQueryBuilder } from './query-builders/update-query-builder.js';
7
+ import { DeleteQueryBuilder } from './query-builders/delete-query-builder.js';
8
8
  export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder };
9
9
  export class PodAsyncSession {
10
10
  constructor(dialect, _schema, options = {}) {
@@ -1,7 +1,7 @@
1
1
  var _a;
2
2
  import { entityKind, SQL } from 'drizzle-orm';
3
- import { buildConditionTreeFromObject, inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows, resolveRowSubject, } from './helpers';
4
- import { assertPublicWhereCondition, assertPublicWhereObject } from '../query-where-policy';
3
+ import { buildConditionTreeFromObject, inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows, resolveRowSubject, } from './helpers.js';
4
+ import { assertPublicWhereCondition, assertPublicWhereObject } from '../query-where-policy.js';
5
5
  export class DeleteQueryBuilder {
6
6
  constructor(session, table) {
7
7
  this.session = session;
@@ -1,5 +1,5 @@
1
- import { BinaryExpression, LogicalExpression, UnaryExpression } from '../expressions';
2
- import { PodColumnBase, PodTable } from '../schema';
1
+ import { BinaryExpression, LogicalExpression, UnaryExpression } from '../expressions.js';
2
+ import { PodColumnBase, PodTable } from '../schema/index.js';
3
3
  export function inferSPARQLQueryType(query) {
4
4
  const withoutComments = query
5
5
  .replace(/^\s*#.*$/gm, '')
@@ -1,5 +1,5 @@
1
- export { SelectQueryBuilder } from './select-query-builder';
2
- export { InsertQueryBuilder } from './insert-query-builder';
3
- export { UpdateQueryBuilder } from './update-query-builder';
4
- export { DeleteQueryBuilder } from './delete-query-builder';
1
+ export { SelectQueryBuilder } from './select-query-builder.js';
2
+ export { InsertQueryBuilder } from './insert-query-builder.js';
3
+ export { UpdateQueryBuilder } from './update-query-builder.js';
4
+ export { DeleteQueryBuilder } from './delete-query-builder.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  var _a;
2
2
  import { entityKind, SQL } from 'drizzle-orm';
3
- import { generateSubjectUri } from '../sparql/helpers';
4
- import { inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows } from './helpers';
3
+ import { generateSubjectUri } from '../sparql/helpers.js';
4
+ import { inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows } from './helpers.js';
5
5
  export class InsertQueryBuilder {
6
6
  constructor(session, table) {
7
7
  this.session = session;
@@ -1,13 +1,13 @@
1
1
  var _a;
2
2
  import { entityKind, SQL } from 'drizzle-orm';
3
- import { PodTable, PodColumnBase } from '../schema';
4
- import { and, eq, inArray } from '../query-conditions';
5
- import { isAggregateExpression } from '../aggregates';
6
- import { createLiteralCondition, buildConditionTreeFromObject, inferSPARQLQueryType } from './helpers';
7
- import { UriResolverImpl } from '../uri';
8
- import { isOrderByExpression } from '../order-by';
9
- import { SelectionAliasExpression } from '../expressions';
10
- import { assertPublicWhereCondition, assertPublicWhereObject, conditionTargetsReservedIdentifier } from '../query-where-policy';
3
+ import { PodTable, PodColumnBase } from '../schema/index.js';
4
+ import { and, eq, inArray } from '../query-conditions.js';
5
+ import { isAggregateExpression } from '../aggregates.js';
6
+ import { createLiteralCondition, buildConditionTreeFromObject, inferSPARQLQueryType } from './helpers.js';
7
+ import { UriResolverImpl } from '../uri/index.js';
8
+ import { isOrderByExpression } from '../order-by.js';
9
+ import { SelectionAliasExpression } from '../expressions.js';
10
+ import { assertPublicWhereCondition, assertPublicWhereObject, conditionTargetsReservedIdentifier } from '../query-where-policy.js';
11
11
  export class SelectQueryBuilder {
12
12
  constructor(session, fields) {
13
13
  this.session = session;
@@ -1,7 +1,7 @@
1
1
  var _a;
2
2
  import { entityKind, SQL } from 'drizzle-orm';
3
- import { buildConditionTreeFromObject, inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows, resolveRowSubject, } from './helpers';
4
- import { assertPublicWhereCondition, assertPublicWhereObject } from '../query-where-policy';
3
+ import { buildConditionTreeFromObject, inferSPARQLQueryType, orderRowsBySubjects, projectReturningRows, resolveRowSubject, } from './helpers.js';
4
+ import { assertPublicWhereCondition, assertPublicWhereObject } from '../query-where-policy.js';
5
5
  export class UpdateQueryBuilder {
6
6
  constructor(session, table) {
7
7
  this.session = session;
@@ -2,7 +2,7 @@
2
2
  * 查询条件构建器
3
3
  * 提供类似 Drizzle 的查询条件函数
4
4
  */
5
- import { BinaryExpression, LogicalExpression, UnaryExpression } from './expressions';
5
+ import { BinaryExpression, LogicalExpression, UnaryExpression } from './expressions.js';
6
6
  // 等于条件
7
7
  export function eq(column, value) {
8
8
  return new BinaryExpression(column, '=', value);
@@ -1,4 +1,4 @@
1
- import { PodColumnBase } from './schema';
1
+ import { PodColumnBase } from './schema/index.js';
2
2
  function isReservedIdentifierKey(key) {
3
3
  return key === 'id'
4
4
  || key === '@id'
@@ -10,8 +10,8 @@
10
10
  * - 写入: id = "alice" → relativePath = "alice.ttl#it" → uri = base + relativePath
11
11
  * - 读取: uri - base = "alice.ttl#it" → 反向解析模板 → id = "alice"
12
12
  */
13
- import { BaseResourceResolver } from './base-resolver';
14
- import { getGlobalDebugLogger } from '../utils/debug-logger';
13
+ import { BaseResourceResolver } from './base-resolver.js';
14
+ import { getGlobalDebugLogger } from '../utils/debug-logger.js';
15
15
  /**
16
16
  * 默认的 document 模板
17
17
  */
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Creates the appropriate resolver based on table configuration
5
5
  */
6
- import { FragmentResourceResolver } from './fragment-resolver';
7
- import { DocumentResourceResolver } from './document-resolver';
8
- import { UriResolverImpl } from '../uri';
6
+ import { FragmentResourceResolver } from './fragment-resolver.js';
7
+ import { DocumentResourceResolver } from './document-resolver.js';
8
+ import { UriResolverImpl } from '../uri/index.js';
9
9
  export class ResourceResolverFactoryImpl {
10
10
  constructor(podBaseUrl, uriResolver) {
11
11
  this.resolverCache = new WeakMap();
@@ -10,7 +10,7 @@
10
10
  * - 写入: id = "tag-1" → relativePath = "#tag-1" → uri = base + relativePath
11
11
  * - 读取: uri - base = "#tag-1" → 反向解析模板 → id = "tag-1"
12
12
  */
13
- import { BaseResourceResolver } from './base-resolver';
13
+ import { BaseResourceResolver } from './base-resolver.js';
14
14
  /**
15
15
  * 默认的 fragment 模板
16
16
  */
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * Provides abstraction for fragment vs document mode resource resolution
5
5
  */
6
- export { BaseResourceResolver } from './base-resolver';
7
- export { FragmentResourceResolver } from './fragment-resolver';
8
- export { DocumentResourceResolver } from './document-resolver';
9
- export { ResourceResolverFactoryImpl, getResourceMode } from './factory';
6
+ export { BaseResourceResolver } from './base-resolver.js';
7
+ export { FragmentResourceResolver } from './fragment-resolver.js';
8
+ export { DocumentResourceResolver } from './document-resolver.js';
9
+ export { ResourceResolverFactoryImpl, getResourceMode } from './factory.js';
10
10
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
- import { resolvePodBase } from '../utils/pod-root';
2
- import { webIdResolver } from '../../utils/webid-resolver';
1
+ import { resolvePodBase } from '../utils/pod-root.js';
2
+ import { webIdResolver } from '../../utils/webid-resolver.js';
3
3
  // 生成唯一请求 ID
4
4
  function generateRequestId() {
5
5
  const timestamp = Date.now().toString(36);
@@ -1,6 +1,6 @@
1
1
  var _a;
2
2
  import { entityKind } from 'drizzle-orm';
3
- import { resolveTermIri } from './defs';
3
+ import { resolveTermIri } from './defs.js';
4
4
  export class ColumnBuilder {
5
5
  constructor(name, dataType, options = {}, predicate, elementType) {
6
6
  this.name = name;
@@ -1,5 +1,5 @@
1
- import { generateNanoId } from './defs';
2
- import { ColumnBuilder, PodStringColumn } from './columns';
1
+ import { generateNanoId } from './defs.js';
2
+ import { ColumnBuilder, PodStringColumn } from './columns.js';
3
3
  export function boolean(name, options = {}) {
4
4
  return new ColumnBuilder(name, 'boolean', options);
5
5
  }
@@ -1,9 +1,9 @@
1
- export * from './defs';
2
- export * from './columns';
3
- export * from './types';
4
- export * from './factories';
5
- export * from './solid-schema';
6
- export * from './pod-table';
7
- export * from './relations';
8
- export * from './utils';
1
+ export * from './defs.js';
2
+ export * from './columns.js';
3
+ export * from './types.js';
4
+ export * from './factories.js';
5
+ export * from './solid-schema.js';
6
+ export * from './pod-table.js';
7
+ export * from './relations.js';
8
+ export * from './utils.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -1,9 +1,9 @@
1
1
  var _a;
2
2
  import { entityKind } from 'drizzle-orm';
3
- import { resolveTermIri } from './defs';
4
- import { PodColumnBase, PodIntegerColumn, PodDateTimeColumn, PodBooleanColumn, PodJsonColumn, PodObjectColumn, PodArrayColumn, PodUriColumn, PodStringColumn } from './columns';
5
- import { SolidSchema } from './solid-schema';
6
- import { deepClone } from '../../utils/helpers';
3
+ import { resolveTermIri } from './defs.js';
4
+ import { PodColumnBase, PodIntegerColumn, PodDateTimeColumn, PodBooleanColumn, PodJsonColumn, PodObjectColumn, PodArrayColumn, PodUriColumn, PodStringColumn } from './columns.js';
5
+ import { SolidSchema } from './solid-schema.js';
6
+ import { deepClone } from '../../utils/helpers.js';
7
7
  export class PodTable {
8
8
  constructor(name, columns, options) {
9
9
  this.initialized = false;
@@ -1,4 +1,4 @@
1
- import { isSolidSchema } from './solid-schema';
1
+ import { isSolidSchema } from './solid-schema.js';
2
2
  export function relations(table, builder) {
3
3
  const helpers = {
4
4
  one: (target, options = {}) => {
@@ -1,7 +1,7 @@
1
- import { resolveTermIri } from './defs';
2
- import { PodColumnBase, PodIntegerColumn, PodDateTimeColumn, PodBooleanColumn, PodJsonColumn, PodObjectColumn, PodArrayColumn, PodUriColumn, PodStringColumn } from './columns';
3
- import { mergeSchemaColumns } from './utils';
4
- import { PodTable } from './pod-table';
1
+ import { resolveTermIri } from './defs.js';
2
+ import { PodColumnBase, PodIntegerColumn, PodDateTimeColumn, PodBooleanColumn, PodJsonColumn, PodObjectColumn, PodArrayColumn, PodUriColumn, PodStringColumn } from './columns.js';
3
+ import { mergeSchemaColumns } from './utils.js';
4
+ import { PodTable } from './pod-table.js';
5
5
  export class SolidSchema {
6
6
  constructor(columns, options) {
7
7
  this.columns = columns;
@@ -1,4 +1,4 @@
1
- import { PodColumnBase } from './columns';
1
+ import { PodColumnBase } from './columns.js';
2
2
  /**
3
3
  * 验证子类列不能修改父类的 predicate
4
4
  * @internal
@@ -1,12 +1,12 @@
1
- import { ASTToSPARQLConverter } from '../ast-to-sparql';
2
- import { CompositeDiscovery, InteropDiscovery, TypeIndexDiscovery } from '../discovery';
3
- import { LdpExecutor } from '../execution/ldp-executor';
4
- import { ExecutionStrategyFactoryImpl } from '../execution';
5
- import { ResourceResolverFactoryImpl } from '../resource-resolver';
6
- import { DrizzleShapeManager } from '../shape';
7
- import { SolidSPARQLExecutor } from '../sparql-executor';
8
- import { TypeIndexManager } from '../typeindex-manager';
9
- import { UriResolverImpl } from '../uri';
1
+ import { ASTToSPARQLConverter } from '../ast-to-sparql.js';
2
+ import { CompositeDiscovery, InteropDiscovery, TypeIndexDiscovery } from '../discovery/index.js';
3
+ import { LdpExecutor } from '../execution/ldp-executor.js';
4
+ import { ExecutionStrategyFactoryImpl } from '../execution/index.js';
5
+ import { ResourceResolverFactoryImpl } from '../resource-resolver/index.js';
6
+ import { DrizzleShapeManager } from '../shape/index.js';
7
+ import { SolidSPARQLExecutor } from '../sparql-executor.js';
8
+ import { TypeIndexManager } from '../typeindex-manager.js';
9
+ import { UriResolverImpl } from '../uri/index.js';
10
10
  export class PodServices {
11
11
  constructor(options) {
12
12
  const runtime = options.runtime;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 从 PodTable 生成 Shape 定义
5
5
  */
6
- import { XSD } from './types';
6
+ import { XSD } from './types.js';
7
7
  /**
8
8
  * 从 PodTable 生成 Shape
9
9
  */
@@ -1,4 +1,4 @@
1
- export * from './types';
2
- export * from './manager';
3
- export * from './shacl-parser';
1
+ export * from './types.js';
2
+ export * from './manager.js';
3
+ export * from './shacl-parser.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1,8 +1,8 @@
1
- import { podTable, string, integer, boolean, date, uri, object } from '../schema';
2
- import { XSD, SHACL } from './types';
3
- import { getPredicateForColumn } from '../sparql/helpers';
1
+ import { podTable, string, integer, boolean, date, uri, object } from '../schema/index.js';
2
+ import { XSD, SHACL } from './types.js';
3
+ import { getPredicateForColumn } from '../sparql/helpers.js';
4
4
  import { z } from 'zod';
5
- import { parseSHACL, xsdToDrizzleType, nodeKindToDrizzleType } from './shacl-parser';
5
+ import { parseSHACL, xsdToDrizzleType, nodeKindToDrizzleType } from './shacl-parser.js';
6
6
  export class DrizzleShapeManager {
7
7
  constructor(podUrl, authenticatedFetch) {
8
8
  this.podUrl = podUrl.endsWith('/') ? podUrl : `${podUrl}/`;
@@ -4,7 +4,7 @@
4
4
  * 从 Turtle 格式的 SHACL 定义解析出 Shape 对象
5
5
  */
6
6
  import { Parser, Store, NamedNode } from 'n3';
7
- import { SHACL, XSD } from './types';
7
+ import { SHACL, XSD } from './types.js';
8
8
  /**
9
9
  * 从 Turtle 内容解析 SHACL Shape
10
10
  */
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 验证数据是否符合 Shape 定义
5
5
  */
6
- import { XSD } from './types';
6
+ import { XSD } from './types.js';
7
7
  /**
8
8
  * 验证数据是否符合 Shape
9
9
  */
@@ -1,6 +1,6 @@
1
- import { LogicalExpression } from '../../expressions';
2
- import { formatValue, getPredicateForColumn } from '../helpers';
3
- import { UriResolverImpl } from '../../uri';
1
+ import { LogicalExpression } from '../../expressions.js';
2
+ import { formatValue, getPredicateForColumn } from '../helpers.js';
3
+ import { UriResolverImpl } from '../../uri/index.js';
4
4
  export class ExpressionBuilder {
5
5
  constructor(uriResolver = new UriResolverImpl()) {
6
6
  this.uriResolver = uriResolver;
@@ -1,10 +1,10 @@
1
1
  import * as sparqljs from 'sparqljs';
2
- import { PodColumnBase } from '../../schema';
3
- import { getPredicateForColumn, resolveColumn, formatValue } from '../helpers';
4
- import { isAggregateExpression } from '../../aggregates';
5
- import { SelectionAliasExpression } from '../../expressions';
6
- import { UriResolverImpl } from '../../uri';
7
- import { ExpressionBuilder } from './expression-builder';
2
+ import { PodColumnBase } from '../../schema/index.js';
3
+ import { getPredicateForColumn, resolveColumn, formatValue } from '../helpers.js';
4
+ import { isAggregateExpression } from '../../aggregates.js';
5
+ import { SelectionAliasExpression } from '../../expressions.js';
6
+ import { UriResolverImpl } from '../../uri/index.js';
7
+ import { ExpressionBuilder } from './expression-builder.js';
8
8
  export class SelectBuilder {
9
9
  constructor(prefixes, uriResolver = new UriResolverImpl()) {
10
10
  this.generator = new sparqljs.Generator();
@@ -1,7 +1,7 @@
1
1
  import * as sparqljs from 'sparqljs';
2
- import { getPredicateForColumn, formatValue, generateSubjectUri } from '../helpers';
3
- import { TripleBuilderImpl } from '../../triple/builder';
4
- import { UriResolverImpl } from '../../uri';
2
+ import { getPredicateForColumn, formatValue, generateSubjectUri } from '../helpers.js';
3
+ import { TripleBuilderImpl } from '../../triple/builder.js';
4
+ import { UriResolverImpl } from '../../uri/index.js';
5
5
  // Helper to extract the base document URI from a resource URI
6
6
  // e.g., 'http://example.com/pod/data/alice.ttl#me' -> 'http://example.com/pod/data/alice.ttl'
7
7
  function getDocumentUriFromSubjectUri(subjectUri) {
@@ -1,4 +1,4 @@
1
- import { PodColumnBase, SolidSchema } from '../schema';
1
+ import { PodColumnBase, SolidSchema } from '../schema/index.js';
2
2
  const XSD = 'http://www.w3.org/2001/XMLSchema#';
3
3
  /**
4
4
  * 获取列的谓词 URI
@@ -1,4 +1,4 @@
1
- import { applyComunicaPatches } from './comunica-patch';
1
+ import { applyComunicaPatches } from './comunica-patch.js';
2
2
  let configuredQueryEngineFactory = null;
3
3
  const resolveCreateRequire = async () => {
4
4
  if (typeof window !== 'undefined') {
@@ -1,4 +1,4 @@
1
- import { getConfiguredSparqlEngineFactory, } from './sparql-engine';
1
+ import { getConfiguredSparqlEngineFactory, } from './sparql-engine.js';
2
2
  export class ComunicaSPARQLExecutor {
3
3
  constructor(config) {
4
4
  this.engine = null;
@@ -6,7 +6,7 @@
6
6
  * @deprecated 此模块已被 ../uri 模块取代,保留此导出仅为向后兼容
7
7
  */
8
8
  // 创建向后兼容的包装对象
9
- import { UriResolverImpl } from '../uri/resolver';
9
+ import { UriResolverImpl } from '../uri/resolver.js';
10
10
  /**
11
11
  * 向后兼容的 SubjectResolver 包装器
12
12
  *
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * 统一的三元组构建器,处理所有列类型
5
5
  */
6
- import { UriResolverImpl } from '../uri';
7
- import { handlerRegistry } from './handlers';
6
+ import { UriResolverImpl } from '../uri/index.js';
7
+ import { handlerRegistry } from './handlers/index.js';
8
8
  const RDF_TYPE = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';
9
9
  const XSD = 'http://www.w3.org/2001/XMLSchema#';
10
10
  /**
@@ -3,11 +3,11 @@
3
3
  *
4
4
  * 注册和管理所有列类型处理器
5
5
  */
6
- import { DefaultHandler } from './default';
7
- import { UriHandler } from './uri';
8
- import { ArrayHandler } from './array';
9
- import { InverseHandler } from './inverse';
10
- import { InlineObjectHandler } from './inline';
6
+ import { DefaultHandler } from './default.js';
7
+ import { UriHandler } from './uri.js';
8
+ import { ArrayHandler } from './array.js';
9
+ import { InverseHandler } from './inverse.js';
10
+ import { InlineObjectHandler } from './inline.js';
11
11
  /**
12
12
  * 处理器注册表
13
13
  *
@@ -51,9 +51,9 @@ class HandlerRegistry {
51
51
  // 单例导出
52
52
  export const handlerRegistry = new HandlerRegistry();
53
53
  // 导出处理器类
54
- export { DefaultHandler } from './default';
55
- export { UriHandler } from './uri';
56
- export { ArrayHandler } from './array';
57
- export { InverseHandler } from './inverse';
58
- export { InlineObjectHandler } from './inline';
54
+ export { DefaultHandler } from './default.js';
55
+ export { UriHandler } from './uri.js';
56
+ export { ArrayHandler } from './array.js';
57
+ export { InverseHandler } from './inverse.js';
58
+ export { InlineObjectHandler } from './inline.js';
59
59
  //# sourceMappingURL=index.js.map
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 处理逆向谓词列,交换 subject 和 object 位置
5
5
  */
6
- import { UriResolverImpl } from '../../uri';
6
+ import { UriResolverImpl } from '../../uri/index.js';
7
7
  const XSD = 'http://www.w3.org/2001/XMLSchema#';
8
8
  /**
9
9
  * 逆向谓词处理器
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * 使用统一的 UriResolver 进行 URI 解析
8
8
  */
9
- import { UriResolverImpl } from '../../uri';
9
+ import { UriResolverImpl } from '../../uri/index.js';
10
10
  /**
11
11
  * URI 列处理器
12
12
  *
@@ -4,7 +4,7 @@
4
4
  * 统一的三元组构建模块
5
5
  */
6
6
  // 构建器导出
7
- export { TripleBuilderImpl, tripleBuilder } from './builder';
7
+ export { TripleBuilderImpl, tripleBuilder } from './builder.js';
8
8
  // 处理器导出
9
- export { handlerRegistry, DefaultHandler, UriHandler, ArrayHandler, InverseHandler, InlineObjectHandler, } from './handlers';
9
+ export { handlerRegistry, DefaultHandler, UriHandler, ArrayHandler, InverseHandler, InlineObjectHandler, } from './handlers/index.js';
10
10
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  import { getSolidDataset, getThing, getUrl, getUrlAll, getStringNoLocale, saveSolidDatasetAt, createThing, buildThing, setThing, createSolidDataset, getThingAll } from '@inrupt/solid-client';
2
- import { resolvePodBase } from './utils/pod-root';
2
+ import { resolvePodBase } from './utils/pod-root.js';
3
3
  const CACHE_TTL = 5 * 60 * 1000; // 5分钟缓存
4
4
  export class TypeIndexManager {
5
5
  constructor(webId, podUrl, fetchFn = globalThis.fetch) {
@@ -4,5 +4,5 @@
4
4
  * 统一的 URI 解析模块
5
5
  */
6
6
  // 实现导出
7
- export { UriResolverImpl } from './resolver';
7
+ export { UriResolverImpl } from './resolver.js';
8
8
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
- import { PodDatabase } from './core/pod-database';
2
- import { PodAsyncSession } from './core/pod-session';
3
- import { PodDialect } from './core/pod-dialect';
1
+ import { PodDatabase } from './core/pod-database.js';
2
+ import { PodAsyncSession } from './core/pod-session.js';
3
+ import { PodDialect } from './core/pod-dialect.js';
4
4
  // 主要的 drizzle 函数 - 接受 Inrupt Session
5
5
  export function drizzle(session, config) {
6
6
  if (!session || !session.info.isLoggedIn) {
package/dist/esm/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  // 主要公开入口
2
- export { pod, PodClient, PodCollection, PodEntity } from './pod';
3
- export { drizzle } from './driver';
4
- export * from './solid';
2
+ export { pod, PodClient, PodCollection, PodEntity } from './pod.js';
3
+ export { drizzle } from './driver.js';
4
+ export * from './solid.js';
5
5
  // 公共工具
6
- export { findByIRI } from './utils/find-by-iri';
6
+ export { findByIRI } from './utils/find-by-iri.js';
7
7
  // 表和列构建器
8
8
  export { podTable, alias,
9
9
  // 标准 Drizzle 风格的列定义
@@ -13,36 +13,36 @@ text, varchar, char, timestamp, datetime, bigint, smallint, tinyint, mediumint,
13
13
  // 命名空间和常量
14
14
  relations,
15
15
  // Schema(不绑定位置)
16
- solidSchema, SolidSchema, isSolidSchema, } from './core/schema';
16
+ solidSchema, SolidSchema, isSolidSchema, } from './core/schema/index.js';
17
17
  // Profile 管理(工具类,可在 hooks 中使用)
18
- export { ProfileManager } from './core/profile-manager';
19
- export { configureSparqlEngine, createNodeModuleSparqlEngineFactory, } from './core/sparql-engine';
18
+ export { ProfileManager } from './core/profile-manager.js';
19
+ export { configureSparqlEngine, createNodeModuleSparqlEngineFactory, } from './core/sparql-engine.js';
20
20
  // 查询构建器
21
- export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder, } from './core/query-builders';
21
+ export { SelectQueryBuilder, InsertQueryBuilder, UpdateQueryBuilder, DeleteQueryBuilder, } from './core/query-builders/index.js';
22
22
  // Shape 管理
23
- export { DrizzleShapeManager, XSD, SHACL, } from './core/shape';
23
+ export { DrizzleShapeManager, XSD, SHACL, } from './core/shape/index.js';
24
24
  // DataDiscovery 数据发现
25
- export { ProviderCache, INTEROP, SHAPETREES, } from './core/discovery';
25
+ export { ProviderCache, INTEROP, SHAPETREES, } from './core/discovery/index.js';
26
26
  // 工具函数
27
- export { createThing, readThing, updateThing, deleteThing, batchThingOperations } from './utils/thing-operations';
28
- export { validateRDFData, parseRDFResponse, } from './utils/rdf-validation';
29
- export { extendNamespace } from './utils/namespace';
27
+ export { createThing, readThing, updateThing, deleteThing, batchThingOperations } from './utils/thing-operations.js';
28
+ export { validateRDFData, parseRDFResponse, } from './utils/rdf-validation.js';
29
+ export { extendNamespace } from './utils/namespace.js';
30
30
  // RDF Schema 解析
31
- export { parseRDFSchema, getPredicateTypeScriptType, validatePredicateType, findPredicateType, rdfTypeToTypeScript } from './core/rdf-schema-parser';
31
+ export { parseRDFSchema, getPredicateTypeScriptType, validatePredicateType, findPredicateType, rdfTypeToTypeScript } from './core/rdf-schema-parser.js';
32
32
  // 类型安全的表定义(推荐)
33
- export { createTypedTable, field, CommonFields, typedTable } from './core/compile-time-types';
33
+ export { createTypedTable, field, CommonFields, typedTable } from './core/compile-time-types.js';
34
34
  // Zod 集成支持
35
- export { createTableSchema, createInsertSchema, createUpdateSchema, TableSchemaBuilder, getTableSchema } from './core/zod-integration';
35
+ export { createTableSchema, createInsertSchema, createUpdateSchema, TableSchemaBuilder, getTableSchema } from './core/zod-integration.js';
36
36
  // 查询条件函数
37
- export { eq, ne, gt, gte, lt, lte, like, ilike, between, notBetween, regex, inArray, notInArray, isNull, isNotNull, and, or, not, exists, notExists, conditions, } from './core/query-conditions';
37
+ export { eq, ne, gt, gte, lt, lte, like, ilike, between, notBetween, regex, inArray, notInArray, isNull, isNotNull, and, or, not, exists, notExists, conditions, } from './core/query-conditions.js';
38
38
  // 排序表达式
39
- export { asc, desc } from './core/order-by';
39
+ export { asc, desc } from './core/order-by.js';
40
40
  // 聚合函数
41
- export { count, sum, avg, min, max } from './core/aggregates';
41
+ export { count, sum, avg, min, max } from './core/aggregates.js';
42
42
  // 并发冲突解析
43
- export { ConflictResolver, createConflictResolver, saveWithConflictResolution } from './core/conflict-resolution';
43
+ export { ConflictResolver, createConflictResolver, saveWithConflictResolution } from './core/conflict-resolution.js';
44
44
  // Solid Notifications (实时订阅)
45
- export { NotificationsClient } from './core/notifications';
45
+ export { NotificationsClient } from './core/notifications/index.js';
46
46
  // 联邦查询 (Federated Queries)
47
- export { FederatedQueryExecutor, federatedQueryExecutor } from './core/federated';
47
+ export { FederatedQueryExecutor, federatedQueryExecutor } from './core/federated/index.js';
48
48
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }
package/dist/esm/pod.js CHANGED
@@ -1,5 +1,5 @@
1
- import { generateSubjectUri } from './core/sparql/helpers';
2
- import { drizzle, } from './driver';
1
+ import { generateSubjectUri } from './core/sparql/helpers.js';
2
+ import { drizzle, } from './driver.js';
3
3
  const parseIri = (iri) => {
4
4
  const hashIndex = iri.indexOf('#');
5
5
  if (hashIndex >= 0) {
package/dist/esm/solid.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // 重新导出主要的drizzle函数和类型
2
- export { drizzle } from './driver';
2
+ export { drizzle } from './driver.js';
3
3
  const createInlineSession = (options) => {
4
4
  const { webId, fetch: boundFetch } = options;
5
5
  if (typeof webId !== 'string' || webId.trim().length === 0) {
@@ -1,4 +1,4 @@
1
- import { RDF_NAMESPACES } from '../core/rdf-constants';
1
+ import { RDF_NAMESPACES } from '../core/rdf-constants.js';
2
2
  /**
3
3
  * 验证 RDF 数据的有效性
4
4
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@undefineds.co/drizzle-solid",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Drizzle ORM adapter for Solid Pods",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "LICENSE"
19
19
  ],
20
20
  "scripts": {
21
- "build": "tsc && tsc -p tsconfig.esm.json",
21
+ "build": "tsc && tsc -p tsconfig.esm.json && node scripts/fix-esm-imports.cjs",
22
22
  "parity:generate": "ts-node scripts/generate-drizzle-parity.ts",
23
23
  "test": "yarn build && vitest --run",
24
24
  "test:integration": "SOLID_ENABLE_REAL_TESTS=true SOLID_SERIAL_TESTS=true vitest --run tests/integration/css",