@dialecte/core 0.1.3 → 0.1.5

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 (118) hide show
  1. package/dist/dialecte/main.d.ts +4 -3
  2. package/dist/dialecte/main.d.ts.map +1 -1
  3. package/dist/document/bind-extensions.d.ts +10 -0
  4. package/dist/document/bind-extensions.d.ts.map +1 -0
  5. package/dist/document/document.d.ts +10 -6
  6. package/dist/document/document.d.ts.map +1 -1
  7. package/dist/document/query/find/ancestor/find-ancestor.d.ts +17 -0
  8. package/dist/document/query/find/ancestor/find-ancestor.d.ts.map +1 -0
  9. package/dist/document/query/find/ancestor/find-ancestor.types.d.ts +6 -0
  10. package/dist/document/query/find/ancestor/find-ancestor.types.d.ts.map +1 -0
  11. package/dist/document/query/find/ancestor/index.d.ts +3 -0
  12. package/dist/document/query/find/ancestor/index.d.ts.map +1 -0
  13. package/dist/document/query/find/index.d.ts +1 -0
  14. package/dist/document/query/find/index.d.ts.map +1 -1
  15. package/dist/document/query/get/record/get-child.d.ts +13 -0
  16. package/dist/document/query/get/record/get-child.d.ts.map +1 -0
  17. package/dist/document/query/get/record/get-children.d.ts +13 -0
  18. package/dist/document/query/get/record/get-children.d.ts.map +1 -0
  19. package/dist/document/query/get/record/get-record.d.ts +2 -2
  20. package/dist/document/query/get/record/get-record.d.ts.map +1 -1
  21. package/dist/document/query/get/record/get-records.d.ts +2 -2
  22. package/dist/document/query/get/record/get-records.d.ts.map +1 -1
  23. package/dist/document/query/get/record/index.d.ts +2 -0
  24. package/dist/document/query/get/record/index.d.ts.map +1 -1
  25. package/dist/document/query/main.d.ts +56 -16
  26. package/dist/document/query/main.d.ts.map +1 -1
  27. package/dist/document/transaction/clone/clone.d.ts.map +1 -1
  28. package/dist/document/transaction/clone/clone.types.d.ts +2 -2
  29. package/dist/document/transaction/clone/clone.types.d.ts.map +1 -1
  30. package/dist/document/transaction/create/create.d.ts +2 -2
  31. package/dist/document/transaction/create/create.d.ts.map +1 -1
  32. package/dist/document/transaction/delete/delete.d.ts +2 -2
  33. package/dist/document/transaction/delete/delete.d.ts.map +1 -1
  34. package/dist/document/transaction/ensure/ensure.d.ts +24 -0
  35. package/dist/document/transaction/ensure/ensure.d.ts.map +1 -0
  36. package/dist/document/transaction/ensure/index.d.ts +2 -0
  37. package/dist/document/transaction/ensure/index.d.ts.map +1 -0
  38. package/dist/document/transaction/main.d.ts +39 -17
  39. package/dist/document/transaction/main.d.ts.map +1 -1
  40. package/dist/document/transaction/update/update.d.ts +2 -2
  41. package/dist/document/transaction/update/update.d.ts.map +1 -1
  42. package/dist/document/types.d.ts +3 -7
  43. package/dist/document/types.d.ts.map +1 -1
  44. package/dist/helpers/guard.d.ts +20 -1
  45. package/dist/helpers/guard.d.ts.map +1 -1
  46. package/dist/helpers/index.d.ts +1 -0
  47. package/dist/helpers/index.d.ts.map +1 -1
  48. package/dist/helpers/merge-extensions.d.ts +13 -0
  49. package/dist/helpers/merge-extensions.d.ts.map +1 -0
  50. package/dist/helpers.js +22 -124
  51. package/dist/{index-ni-jr0mc.js → index-Cl4q6wr5.js} +2384 -2233
  52. package/dist/index.js +26 -23
  53. package/dist/standardizing-27Zk5ECm.js +136 -0
  54. package/dist/{test-fixtures → test}/assert-xml/assert-xml.d.ts +1 -1
  55. package/dist/test/assert-xml/assert-xml.d.ts.map +1 -0
  56. package/dist/test/assert-xml/index.d.ts.map +1 -0
  57. package/dist/test/assert-xml/types.d.ts.map +1 -0
  58. package/dist/test/assert-xml/xpath-parser.d.ts.map +1 -0
  59. package/dist/test/config.d.ts +2109 -0
  60. package/dist/{test-fixtures/test-record.d.ts.map → test/config.d.ts.map} +1 -1
  61. package/dist/test/constant.d.ts.map +1 -0
  62. package/dist/{test-fixtures → test}/create-test-dialecte.d.ts +0 -3
  63. package/dist/test/create-test-dialecte.d.ts.map +1 -0
  64. package/dist/{test-fixtures → test}/generated/constants.generated.d.ts +105 -121
  65. package/dist/test/generated/constants.generated.d.ts.map +1 -0
  66. package/dist/test/generated/definition.generated.d.ts +1901 -0
  67. package/dist/test/generated/definition.generated.d.ts.map +1 -0
  68. package/dist/test/generated/index.d.ts +4 -0
  69. package/dist/test/generated/index.d.ts.map +1 -0
  70. package/dist/{test-fixtures → test}/generated/types.generated.d.ts +52 -53
  71. package/dist/test/generated/types.generated.d.ts.map +1 -0
  72. package/dist/{test-fixtures → test}/index.d.ts +2 -0
  73. package/dist/test/index.d.ts.map +1 -0
  74. package/dist/test/run-test-cases.d.ts +12 -0
  75. package/dist/test/run-test-cases.d.ts.map +1 -0
  76. package/dist/test/run-test-cases.type.d.ts +24 -0
  77. package/dist/test/run-test-cases.type.d.ts.map +1 -0
  78. package/dist/test/test-record.d.ts +16804 -0
  79. package/dist/test/test-record.d.ts.map +1 -0
  80. package/dist/test/test-record.types.d.ts.map +1 -0
  81. package/dist/test.d.ts +1 -1
  82. package/dist/test.js +1494 -12226
  83. package/dist/types/definition.d.ts +67 -50
  84. package/dist/types/definition.d.ts.map +1 -1
  85. package/dist/types/extensions.d.ts +73 -0
  86. package/dist/types/extensions.d.ts.map +1 -0
  87. package/dist/types/index.d.ts +1 -0
  88. package/dist/types/index.d.ts.map +1 -1
  89. package/dist/types/ref.d.ts +0 -1
  90. package/dist/types/ref.d.ts.map +1 -1
  91. package/package.json +2 -1
  92. package/dist/document/query/main.types.d.ts +0 -22
  93. package/dist/document/query/main.types.d.ts.map +0 -1
  94. package/dist/magic-string.es-uPKorP4O.js +0 -663
  95. package/dist/script/generate-test-fixtures.d.ts +0 -16
  96. package/dist/script/generate-test-fixtures.d.ts.map +0 -1
  97. package/dist/test-fixtures/assert-xml/assert-xml.d.ts.map +0 -1
  98. package/dist/test-fixtures/assert-xml/index.d.ts.map +0 -1
  99. package/dist/test-fixtures/assert-xml/types.d.ts.map +0 -1
  100. package/dist/test-fixtures/assert-xml/xpath-parser.d.ts.map +0 -1
  101. package/dist/test-fixtures/config.d.ts +0 -210
  102. package/dist/test-fixtures/config.d.ts.map +0 -1
  103. package/dist/test-fixtures/constant.d.ts.map +0 -1
  104. package/dist/test-fixtures/create-test-dialecte.d.ts.map +0 -1
  105. package/dist/test-fixtures/generated/constants.generated.d.ts.map +0 -1
  106. package/dist/test-fixtures/generated/definition.d.ts +0 -3
  107. package/dist/test-fixtures/generated/definition.d.ts.map +0 -1
  108. package/dist/test-fixtures/generated/index.d.ts +0 -4
  109. package/dist/test-fixtures/generated/index.d.ts.map +0 -1
  110. package/dist/test-fixtures/generated/types.generated.d.ts.map +0 -1
  111. package/dist/test-fixtures/index.d.ts.map +0 -1
  112. package/dist/test-fixtures/test-record.d.ts +0 -1612
  113. package/dist/test-fixtures/test-record.types.d.ts.map +0 -1
  114. /package/dist/{test-fixtures → test}/assert-xml/index.d.ts +0 -0
  115. /package/dist/{test-fixtures → test}/assert-xml/types.d.ts +0 -0
  116. /package/dist/{test-fixtures → test}/assert-xml/xpath-parser.d.ts +0 -0
  117. /package/dist/{test-fixtures → test}/constant.d.ts +0 -0
  118. /package/dist/{test-fixtures → test}/test-record.types.d.ts +0 -0
@@ -4,7 +4,7 @@ import { CloneResult } from './clone';
4
4
  import { AddChildParams } from './create';
5
5
  import { UpdateParams } from './update';
6
6
  import { Store } from '../../store';
7
- import { AnyDialecteConfig, AnyRawRecord, ChildrenOf, ElementsOf, Operation, ParentsOf, Ref, RefOrRecord, TreeRecord } from '../../types';
7
+ import { AnyDialecteConfig, AnyRawRecord, ChildrenOf, ElementsOf, Operation, ParentsOf, RawRecord, RefOrRecord, TreeRecord } from '../../types';
8
8
  /**
9
9
  * Transaction — a scoped unit of work against a document.
10
10
  *
@@ -12,7 +12,7 @@ import { AnyDialecteConfig, AnyRawRecord, ChildrenOf, ElementsOf, Operation, Par
12
12
  * via getOperations() override (the single override point).
13
13
  * Adds mutation methods (addChild, update, delete, deepClone).
14
14
  *
15
- * Mutates Document's state directly (activity, progress, history).
15
+ * Mutates Document's state directly (loading, progress, history).
16
16
  * No separate transaction state — the UI sees one unified state.
17
17
  *
18
18
  * Lifecycle: created by Document → used in callback → committed by Document → discarded.
@@ -39,54 +39,76 @@ export declare class Transaction<GenericConfig extends AnyDialecteConfig> extend
39
39
  *
40
40
  * @param parentRefOrRecord - The parent element (ref, record, or relationship). `undefined` for root.
41
41
  * @param params - Child tagName, attributes and optional namespace, value, id.
42
- * @returns Ref to the created child.
42
+ * @returns RawRecord of the created child.
43
43
  *
44
44
  * @example
45
45
  * ```ts
46
- * const bayRef = await tx.addChild(substation, {
47
- * tagName: 'VoltageLevel',
48
- * attributes: { name: 'VL1' },
46
+ * const aRecord = await tx.addChild(root, {
47
+ * tagName: 'A',
48
+ * attributes: { name: 'aA1' },
49
49
  * })
50
50
  * ```
51
51
  */
52
- addChild<GenericElement extends ElementsOf<GenericConfig>, GenericChildElement extends ChildrenOf<GenericConfig, GenericElement>>(parentRefOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined, params: AddChildParams<GenericConfig, GenericElement, GenericChildElement>): Promise<Ref<GenericConfig, GenericChildElement>>;
52
+ addChild<GenericElement extends ElementsOf<GenericConfig>, GenericChildElement extends ChildrenOf<GenericConfig, GenericElement>>(parentRefOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined, params: AddChildParams<GenericConfig, GenericElement, GenericChildElement>): Promise<RawRecord<GenericConfig, GenericChildElement>>;
53
+ /**
54
+ * Get an existing child record or create it under the given parent.
55
+ *
56
+ * Lookup strategy:
57
+ * - Singleton child (id absent in params): resolves by tagName.
58
+ * - Non-singleton child (id present in params): resolves by tagName + id.
59
+ * - Non-singleton child without id: no lookup, always creates.
60
+ *
61
+ * @param parentRefOrRecord - The parent element (ref, record, or relationship). `undefined` for root.
62
+ * @param params - Child tagName, attributes and optional namespace, value, id.
63
+ * @returns Ref to the existing or created child.
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * const aRef = await tx.ensureChild(root, {
68
+ * tagName: 'A',
69
+ * attributes: {},
70
+ * })
71
+ * ```
72
+ * If A already exists under root, returns its ref. Otherwise, creates it and returns the new ref.
73
+ */
74
+ ensureChild<GenericElement extends ElementsOf<GenericConfig>, GenericChildElement extends ChildrenOf<GenericConfig, GenericElement>>(parentRefOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined, params: AddChildParams<GenericConfig, GenericElement, GenericChildElement>): Promise<RawRecord<GenericConfig, GenericChildElement>>;
53
75
  /**
54
76
  * Update attributes of an existing element.
55
77
  *
56
78
  * @param refOrRecord - The element to update (ref, record, or relationship).
57
79
  * @param params - New attribute values.
58
- * @returns Ref to the updated element.
80
+ * @returns RawRecord of the updated element.
59
81
  *
60
82
  * @example
61
83
  * ```ts
62
- * await tx.update(bay, {
63
- * attributes: { name: 'Q02', desc: 'Feeder bay' },
84
+ * await tx.update(root, {
85
+ * attributes: { name: 'aA1', desc: 'new element' },
64
86
  * })
65
87
  * ```
66
88
  */
67
- update<GenericElement extends ElementsOf<GenericConfig>>(refOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined, params: UpdateParams<GenericConfig, GenericElement>): Promise<Ref<GenericConfig, GenericElement>>;
89
+ update<GenericElement extends ElementsOf<GenericConfig>>(refOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined, params: UpdateParams<GenericConfig, GenericElement>): Promise<RawRecord<GenericConfig, GenericElement>>;
68
90
  /**
69
91
  * Delete an element and its entire subtree.
70
92
  *
71
93
  * @param refOrRecord - The element to delete (ref, record, or relationship).
72
- * @returns Ref to the deleted element's parent.
94
+ * @returns RawRecord of the deleted element's parent.
73
95
  *
74
96
  * @example
75
97
  * ```ts
76
- * const parentRef = await tx.delete(bay)
98
+ * const parentRecord = await tx.delete(aRecord)
77
99
  * ```
78
100
  */
79
- delete<GenericElement extends ElementsOf<GenericConfig>>(refOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined): Promise<Ref<GenericConfig, ParentsOf<GenericConfig, GenericElement>>>;
101
+ delete<GenericElement extends ElementsOf<GenericConfig>>(refOrRecord: RefOrRecord<GenericConfig, GenericElement> | undefined): Promise<RawRecord<GenericConfig, ParentsOf<GenericConfig, GenericElement>>>;
80
102
  /**
81
103
  * Deep-clone a subtree under a new parent.
82
104
  *
83
105
  * @param parentRefOrRecord - The target parent for the clone.
84
106
  * @param record - The tree record to clone (from `getTree`).
85
- * @returns The cloned root ref and an ID mapping from old to new.
107
+ * @returns The cloned root raw record and an ID mapping from old to new.
86
108
  *
87
109
  * @example
88
110
  * ```ts
89
- * const tree = await tx.getTree(bay)
111
+ * const tree = await tx.getTree(aRecord)
90
112
  * const { ref, idMap } = await tx.deepClone(substation, tree)
91
113
  * ```
92
114
  */
@@ -101,7 +123,7 @@ export declare class Transaction<GenericConfig extends AnyDialecteConfig> extend
101
123
  * Commit all staged operations to the store atomically.
102
124
  * Called by Document.transaction() after user callback completes.
103
125
  *
104
- * Updates documentState (activity, progress, lastCommit).
126
+ * Updates documentState (loading, progress, lastCommit).
105
127
  * Merges operations by ID to optimize database writes.
106
128
  */
107
129
  commit(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/document/transaction/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/document/transaction/main.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { UpdateParams } from './update.types';
2
2
  import { Context } from '../..';
3
- import { AnyDialecteConfig, ElementsOf, Ref } from '../../../types';
3
+ import { AnyDialecteConfig, ElementsOf, RawRecord, Ref } from '../../../types';
4
4
  /**
5
5
  * Merges attribute/value changes onto an existing record.
6
6
  * Undefined/null attribute values are stripped (treated as removals).
@@ -11,5 +11,5 @@ export declare function stageUpdate<GenericConfig extends AnyDialecteConfig, Gen
11
11
  context: Context<GenericConfig>;
12
12
  ref: Ref<GenericConfig, GenericElement>;
13
13
  params: UpdateParams<GenericConfig, GenericElement>;
14
- }): Promise<Ref<GenericConfig, GenericElement>>;
14
+ }): Promise<RawRecord<GenericConfig, GenericElement>>;
15
15
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/document/transaction/update/update.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAEjE;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAC/C,MAAM,EAAE;IACT,cAAc,EAAE,aAAa,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IAC/B,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;IACvC,MAAM,EAAE,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;CACnD,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAqC9C"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../src/document/transaction/update/update.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAE5E;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAC/C,MAAM,EAAE;IACT,cAAc,EAAE,aAAa,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;IAC/B,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;IACvC,MAAM,EAAE,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;CACnD,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAqCpD"}
@@ -43,18 +43,14 @@ export type TransactionEntry = {
43
43
  * Single observable state for a Document.
44
44
  * In Vue: reactive(doc.state) makes all fields trigger re-renders.
45
45
  *
46
- * Usage: const { loading, error, activity, progress } = doc.state
46
+ * Usage: const { loading, error, progress } = doc.state
47
47
  */
48
48
  export type DocumentState = {
49
49
  loading: boolean;
50
50
  error: DialecteError | null;
51
- /** What's happening right now drives spinners, toasts */
52
- activity: {
53
- method: string;
54
- message: string;
55
- } | null;
56
- /** Measurable progress — drives progress bars (deepClone, commit, bulk ops) */
51
+ /** Drives progress bars and status messages (commit, deepClone, bulk ops) */
57
52
  progress: {
53
+ message: string;
58
54
  current: number;
59
55
  total: number;
60
56
  } | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/document/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,CAAC,aAAa,SAAS,iBAAiB,IAAI;IAC9D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IAC3D,gBAAgB,EAAE,SAAS,CAAC,aAAa,CAAC,EAAE,CAAA;CAC5C,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,aAAa,SAAS,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,GAAG;IAC7F,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAC/C,CAAA;AAID,MAAM,MAAM,mBAAmB,CAAC,aAAa,SAAS,iBAAiB,IAAI;IAC1E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,OAAO,IAAI,IAAI,CAAA;CACf,CAAA;AAID,MAAM,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;CACrC,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,aAAa,GAAG,IAAI,CAAA;IAE3B,2DAA2D;IAC3D,QAAQ,EAAE;QACT,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KACf,GAAG,IAAI,CAAA;IAER,+EAA+E;IAC/E,QAAQ,EAAE;QACT,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;KACb,GAAG,IAAI,CAAA;IAER,4DAA4D;IAC5D,OAAO,EAAE,gBAAgB,EAAE,CAAA;IAE3B;;;;OAIG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/document/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,CAAC,aAAa,SAAS,iBAAiB,IAAI;IAC9D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAAA;IAC3D,gBAAgB,EAAE,SAAS,CAAC,aAAa,CAAC,EAAE,CAAA;CAC5C,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,aAAa,SAAS,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,GAAG;IAC7F,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAC/C,CAAA;AAID,MAAM,MAAM,mBAAmB,CAAC,aAAa,SAAS,iBAAiB,IAAI;IAC1E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,OAAO,IAAI,IAAI,CAAA;CACf,CAAA;AAID,MAAM,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;CACrC,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,aAAa,GAAG,IAAI,CAAA;IAE3B,6EAA6E;IAC7E,QAAQ,EAAE;QACT,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;KACb,GAAG,IAAI,CAAA;IAER,4DAA4D;IAC5D,OAAO,EAAE,gBAAgB,EAAE,CAAA;IAE3B;;;;OAIG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { RawRecord, TrackedRecord, AnyDialecteConfig, ElementsOf, FullAttributeObjectOf, AttributesValueObjectOf, TreeRecord } from '../types';
1
+ import { RawRecord, TrackedRecord, AnyDialecteConfig, ElementsOf, FullAttributeObjectOf, AttributesValueObjectOf, TreeRecord, AnyRelationship } from '../types';
2
2
  /**
3
3
  * Type guard to check if attributes are in array format (FullAttributeObject[])
4
4
  */
@@ -18,4 +18,23 @@ export declare function isTreeRecord<GenericConfig extends AnyDialecteConfig, Ge
18
18
  export declare function isRecordOf<GenericConfig extends AnyDialecteConfig, GenericTagName extends ElementsOf<GenericConfig>>(record: TreeRecord<GenericConfig, ElementsOf<GenericConfig>>, tagName: GenericTagName): record is TreeRecord<GenericConfig, GenericTagName>;
19
19
  export declare function isRecordOf<GenericConfig extends AnyDialecteConfig, GenericTagName extends ElementsOf<GenericConfig>>(record: TrackedRecord<GenericConfig, ElementsOf<GenericConfig>>, tagName: GenericTagName): record is TrackedRecord<GenericConfig, GenericTagName>;
20
20
  export declare function isRecordOf<GenericConfig extends AnyDialecteConfig, GenericTagName extends ElementsOf<GenericConfig>>(record: RawRecord<GenericConfig, ElementsOf<GenericConfig>>, tagName: GenericTagName): record is RawRecord<GenericConfig, GenericTagName>;
21
+ /**
22
+ * Type predicate narrowing a relationship to a specific tag name.
23
+ *
24
+ * @example
25
+ * const aa1Refs = recordA.children.filter((child) => isChildOf(child, 'AA_1'))
26
+ * const aa1Elements = await query.getRecords(aa1Refs) // TrackedRecord<Config, 'AA_1'>[]
27
+ */
28
+ export declare function isChildOf<T extends string>(child: AnyRelationship, tagName: T): child is AnyRelationship & {
29
+ tagName: T;
30
+ };
31
+ /**
32
+ * Type predicate narrowing a parent relationship to a specific tag name.
33
+ *
34
+ * @example
35
+ * if (record.parent && isParentOf(record.parent, 'Root')) { ... }
36
+ */
37
+ export declare function isParentOf<T extends string>(parent: AnyRelationship, tagName: T): parent is AnyRelationship & {
38
+ tagName: T;
39
+ };
21
40
  //# sourceMappingURL=guard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/helpers/guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EAIV,MAAM,SAAS,CAAA;AAkChB;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,UAAU,EACP,uBAAuB,CAAC,aAAa,EAAE,cAAc,CAAC,GACtD,qBAAqB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,GACvD,UAAU,IAAI,qBAAqB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAEtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAC1B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAC/C,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAErE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EACH,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,GACxC,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,GAC5C,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,GAC1C,MAAM,IAAI,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,CAExD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC3B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EACH,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,GACxC,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,GAC5C,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,GAC1C,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,CAErD;AAED,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;AACtD,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC/D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;AACzD,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC3D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../src/helpers/guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EAIV,eAAe,EACf,MAAM,SAAS,CAAA;AAkChB;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,UAAU,EACP,uBAAuB,CAAC,aAAa,EAAE,cAAc,CAAC,GACtD,qBAAqB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,GACvD,UAAU,IAAI,qBAAqB,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAEtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAC1B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAC/C,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAErE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EACH,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,GACxC,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,GAC5C,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,GAC1C,MAAM,IAAI,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,CAExD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC3B,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EACH,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,GACxC,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,GAC5C,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,GAC1C,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,CAErD;AAED,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;AACtD,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,aAAa,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC/D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,aAAa,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;AACzD,wBAAgB,UAAU,CACzB,aAAa,SAAS,iBAAiB,EACvC,cAAc,SAAS,UAAU,CAAC,aAAa,CAAC,EAEhD,MAAM,EAAE,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,EAC3D,OAAO,EAAE,cAAc,GACrB,MAAM,IAAI,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;AAQrD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,CAAC,GACR,KAAK,IAAI,eAAe,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAE3C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAC1C,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,CAAC,GACR,MAAM,IAAI,eAAe,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAE5C"}
@@ -2,4 +2,5 @@ export * from './constant';
2
2
  export * from './guard';
3
3
  export * from './converter';
4
4
  export * from './standardizing';
5
+ export * from './merge-extensions';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { ExtensionModules, MergedExtensions } from '../types/extensions';
2
+ /**
3
+ * Merges named extension modules into the flat { query, transaction } registry
4
+ * expected by openDialecteDocument.
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * export const EXTENSIONS = mergeExtensions({ History, IED })
9
+ * // → { query: { History: ..., IED: ... }, transaction: { History: ..., IED: ... } }
10
+ * ```
11
+ */
12
+ export declare function mergeExtensions<Modules extends ExtensionModules>(modules: Modules): MergedExtensions<Modules>;
13
+ //# sourceMappingURL=merge-extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-extensions.d.ts","sourceRoot":"","sources":["../../src/helpers/merge-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE5E;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS,gBAAgB,EAC/D,OAAO,EAAE,OAAO,GACd,gBAAgB,CAAC,OAAO,CAAC,CAU3B"}
package/dist/helpers.js CHANGED
@@ -1,128 +1,26 @@
1
- import { a as g } from "./index-CqwLClK7.js";
2
- const h = "db-id", C = {
3
- uri: "http://dialecte.dev/XML/DEV",
4
- prefix: "dev"
5
- }, z = `${C.prefix}:${h}`, R = [
6
- "id",
7
- "tagName",
8
- "namespace",
9
- "attributes",
10
- "children",
11
- "parent",
12
- "value"
13
- ], m = [...R, "status"], S = [...m, "tree"];
14
- function u(e, t) {
15
- if (typeof e != "object" || e === null)
16
- return !1;
17
- const a = Object.keys(e);
18
- return t.every((n) => n in e) && a.every((n) => t.includes(n)) && a.length === t.length;
19
- }
20
- function y(e) {
21
- return Array.isArray(e);
22
- }
23
- function F(e) {
24
- return u(e, R);
25
- }
26
- function K(e) {
27
- return u(e, m);
28
- }
29
- function j(e) {
30
- return u(e, S);
31
- }
32
- function V(e, t) {
33
- return e.tagName === t;
34
- }
35
- function O(e) {
36
- return {
37
- id: e.id,
38
- tagName: e.tagName,
39
- namespace: e.namespace,
40
- attributes: e.attributes,
41
- value: e.value,
42
- parent: e.parent,
43
- children: e.children
44
- };
45
- }
46
- function I(e) {
47
- const { record: t, status: a } = e, n = a ?? ("status" in t ? t.status : "unchanged");
48
- return {
49
- ...O(t),
50
- status: n
51
- };
52
- }
53
- function Y(e) {
54
- const { record: t, status: a, tree: n } = e, r = n ?? ("tree" in t ? t.tree : []);
55
- return {
56
- ...I({ record: t, status: a }),
57
- tree: r
58
- };
59
- }
60
- function x(e) {
61
- const { dialecteConfig: t, tagName: a, attributes: n } = e;
62
- return y(n) ? n : Object.entries(n).map(
63
- ([r, s]) => ({
64
- name: r,
65
- value: s,
66
- namespace: t.definition[a]?.attributes.details[r]?.namespace || void 0
67
- })
68
- );
69
- }
70
- function w(e) {
71
- return g(e, {
72
- detail: "The record or ref is undefined"
73
- }), {
74
- id: e.id,
75
- tagName: e.tagName
76
- };
77
- }
78
- function B(e) {
79
- const { dialecteConfig: t, record: a } = e, { id: n, tagName: r, attributes: s, namespace: E, value: A } = a, b = n ?? crypto.randomUUID(), c = s ? x({ tagName: r, attributes: s, dialecteConfig: t }) : [], l = {
80
- id: b,
81
- tagName: r,
82
- attributes: c,
83
- namespace: E ?? {
84
- prefix: "prefixNeededForNotSupportedNamespace",
85
- uri: "uriNeededForNotSupportedNamespace"
86
- },
87
- value: A ?? "",
88
- parent: a.parent ?? null,
89
- children: a.children ?? []
90
- };
91
- if (!t.elements.includes(r)) return l;
92
- const f = t.definition[r].attributes.sequence, o = t.definition[r].attributes.details, T = f.flatMap((i) => {
93
- const _ = o[i].required, D = o[i]?.namespace || void 0, p = c.find((N) => N.name === i)?.value || (_ ? o[i]?.default || "" : void 0);
94
- return p === void 0 ? [] : [
95
- {
96
- name: i,
97
- value: p,
98
- namespace: D
99
- }
100
- ];
101
- }), v = c.filter(
102
- (i) => "namespace" in i && i.namespace != null && !f.includes(i.name)
103
- );
104
- let d = {
105
- ...l,
106
- namespace: t.definition[r].namespace,
107
- attributes: [...T, ...v]
108
- };
109
- return t.hooks?.afterStandardizedRecord && (d = t.hooks.afterStandardizedRecord({
110
- record: d
111
- })), d;
1
+ import { C as n, a as R, D as d, i as T, b as f, c as E, d as A, e as u, f as _, g as C, s as O, t as D, h as l, j as y, k as I, l as b } from "./standardizing-27Zk5ECm.js";
2
+ function o(t) {
3
+ const s = {}, e = {};
4
+ for (const [a, r] of Object.entries(t))
5
+ r.query && (s[a] = r.query), r.transaction && (e[a] = r.transaction);
6
+ return { query: s, transaction: e };
112
7
  }
113
8
  export {
114
- z as CUSTOM_RECORD_ID_ATTRIBUTE,
115
- h as CUSTOM_RECORD_ID_ATTRIBUTE_NAME,
116
- C as DIALECTE_DEV_NAMESPACE,
117
- y as isFullAttributeArray,
118
- F as isRawRecord,
119
- V as isRecordOf,
120
- K as isTrackedRecord,
121
- j as isTreeRecord,
122
- B as standardizeRecord,
123
- x as toFullAttributeArray,
124
- O as toRawRecord,
125
- w as toRef,
9
+ n as CUSTOM_RECORD_ID_ATTRIBUTE,
10
+ R as CUSTOM_RECORD_ID_ATTRIBUTE_NAME,
11
+ d as DIALECTE_DEV_NAMESPACE,
12
+ T as isChildOf,
13
+ f as isFullAttributeArray,
14
+ E as isParentOf,
15
+ A as isRawRecord,
16
+ u as isRecordOf,
17
+ _ as isTrackedRecord,
18
+ C as isTreeRecord,
19
+ o as mergeExtensions,
20
+ O as standardizeRecord,
21
+ D as toFullAttributeArray,
22
+ l as toRawRecord,
23
+ y as toRef,
126
24
  I as toTrackedRecord,
127
- Y as toTreeRecord
25
+ b as toTreeRecord
128
26
  };