@finos/legend-extension-dsl-persistence 1.0.3 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/lib/DSLPersistence_Extension.d.ts +0 -2
  2. package/lib/DSLPersistence_Extension.d.ts.map +1 -1
  3. package/lib/DSLPersistence_Extension.js +8 -9
  4. package/lib/DSLPersistence_Extension.js.map +1 -1
  5. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.d.ts +4 -14
  6. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.d.ts.map +1 -1
  7. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.js +8 -6
  8. package/lib/components/studio/DSLPersistence_LegendStudioDocumentation.js.map +1 -1
  9. package/lib/components/studio/DSLPersistence_LegendStudioPlugin.d.ts.map +1 -1
  10. package/lib/components/studio/DSLPersistence_LegendStudioPlugin.js +7 -7
  11. package/lib/components/studio/DSLPersistence_LegendStudioPlugin.js.map +1 -1
  12. package/lib/graph/DSLPersistence_PureGraphPlugin.js +1 -1
  13. package/lib/graph/DSLPersistence_PureGraphPlugin.js.map +1 -1
  14. package/lib/graphManager/DSLPersistence_GraphManagerHelper.d.ts +1 -1
  15. package/lib/graphManager/DSLPersistence_GraphManagerHelper.d.ts.map +1 -1
  16. package/lib/graphManager/DSLPersistence_GraphManagerHelper.js +1 -1
  17. package/lib/graphManager/DSLPersistence_GraphManagerHelper.js.map +1 -1
  18. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.js +2 -2
  19. package/lib/graphManager/DSLPersistence_PureGraphManagerPlugin.js.map +1 -1
  20. package/lib/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.d.ts +1 -1
  21. package/lib/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.d.ts.map +1 -1
  22. package/lib/index.css +1 -1
  23. package/lib/index.d.ts +6 -4
  24. package/lib/index.d.ts.map +1 -1
  25. package/lib/index.js +10 -4
  26. package/lib/index.js.map +1 -1
  27. package/lib/models/DSLPersistence_ModelUtils.d.ts +2 -0
  28. package/lib/models/DSLPersistence_ModelUtils.d.ts.map +1 -1
  29. package/lib/models/DSLPersistence_ModelUtils.js +4 -1
  30. package/lib/models/DSLPersistence_ModelUtils.js.map +1 -1
  31. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Auditing.js +1 -1
  32. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Auditing.js.map +1 -1
  33. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.js +1 -1
  34. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.js.map +1 -1
  35. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.d.ts +3 -3
  36. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.d.ts.map +1 -1
  37. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.js +1 -1
  38. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.js.map +1 -1
  39. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.js +1 -1
  40. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.js.map +1 -1
  41. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.d.ts +14 -0
  42. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.d.ts.map +1 -1
  43. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.js +28 -1
  44. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.js.map +1 -1
  45. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Notifier.js +1 -1
  46. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Notifier.js.map +1 -1
  47. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.d.ts +3 -3
  48. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.d.ts.map +1 -1
  49. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js +1 -1
  50. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js.map +1 -1
  51. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.d.ts +3 -3
  52. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.d.ts.map +1 -1
  53. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.js +1 -1
  54. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.js.map +1 -1
  55. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Sink.js +1 -1
  56. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Sink.js.map +1 -1
  57. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.d.ts +1 -1
  58. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.d.ts.map +1 -1
  59. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.js +2 -2
  60. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.js.map +1 -1
  61. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Trigger.js +1 -1
  62. package/lib/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Trigger.js.map +1 -1
  63. package/lib/models/protocols/pure/DSLPersistence_PureProtocolProcessorPlugin.js +5 -5
  64. package/lib/models/protocols/pure/DSLPersistence_PureProtocolProcessorPlugin.js.map +1 -1
  65. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.js +1 -1
  66. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.js.map +1 -1
  67. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.js +1 -1
  68. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.js.map +1 -1
  69. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.d.ts +3 -3
  70. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.d.ts.map +1 -1
  71. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.js +1 -1
  72. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.js.map +1 -1
  73. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.js +1 -1
  74. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.js.map +1 -1
  75. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.d.ts +14 -0
  76. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.d.ts.map +1 -1
  77. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.js +28 -1
  78. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.js.map +1 -1
  79. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.js +1 -1
  80. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.js.map +1 -1
  81. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.d.ts +3 -3
  82. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.d.ts.map +1 -1
  83. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js +1 -1
  84. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js.map +1 -1
  85. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.d.ts +3 -3
  86. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.d.ts.map +1 -1
  87. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.js +1 -1
  88. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.js.map +1 -1
  89. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.js +1 -1
  90. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.js.map +1 -1
  91. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.d.ts +1 -1
  92. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.d.ts.map +1 -1
  93. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.js +2 -2
  94. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.js.map +1 -1
  95. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.js +1 -1
  96. package/lib/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.js.map +1 -1
  97. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.d.ts +19 -0
  98. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.d.ts.map +1 -0
  99. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.js +18 -0
  100. package/lib/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.js.map +1 -0
  101. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.d.ts +26 -22
  102. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.d.ts.map +1 -1
  103. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js +44 -21
  104. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js.map +1 -1
  105. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.d.ts +25 -21
  106. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.d.ts.map +1 -1
  107. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js +44 -21
  108. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js.map +1 -1
  109. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.d.ts +38 -1
  110. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.d.ts.map +1 -1
  111. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js +73 -35
  112. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js.map +1 -1
  113. package/lib/package.json +9 -8
  114. package/package.json +16 -15
  115. package/src/DSLPersistence_Extension.ts +8 -13
  116. package/src/components/studio/DSLPersistence_LegendStudioDocumentation.ts +13 -6
  117. package/src/components/studio/DSLPersistence_LegendStudioPlugin.tsx +11 -10
  118. package/src/graph/DSLPersistence_PureGraphPlugin.ts +1 -1
  119. package/src/graphManager/DSLPersistence_GraphManagerHelper.ts +1 -1
  120. package/src/graphManager/DSLPersistence_PureGraphManagerPlugin.ts +2 -2
  121. package/src/graphManager/action/changeDetection/DSLPersistence_ObserverHelper.ts +1 -1
  122. package/src/index.ts +15 -4
  123. package/src/models/DSLPersistence_ModelUtils.ts +4 -0
  124. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Auditing.ts +1 -1
  125. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_DeduplicationStrategy.ts +1 -1
  126. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_IngestMode.ts +4 -4
  127. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_MergeStrategy.ts +1 -1
  128. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Milestoning.ts +41 -1
  129. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Notifier.ts +1 -1
  130. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.ts +4 -4
  131. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persister.ts +4 -4
  132. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Sink.ts +1 -1
  133. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_TargetShape.ts +2 -2
  134. package/src/models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Trigger.ts +1 -1
  135. package/src/models/protocols/pure/DSLPersistence_PureProtocolProcessorPlugin.ts +5 -5
  136. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Auditing.ts +1 -1
  137. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_DeduplicationStrategy.ts +1 -1
  138. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_IngestMode.ts +4 -4
  139. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_MergeStrategy.ts +1 -1
  140. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Milestoning.ts +41 -1
  141. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Notifier.ts +1 -1
  142. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.ts +4 -4
  143. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persister.ts +4 -4
  144. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Sink.ts +1 -1
  145. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_TargetShape.ts +2 -2
  146. package/src/models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Trigger.ts +1 -1
  147. package/src/models/protocols/pure/v1/transformation/pureGraph/V1_DSLPersistence_GraphBuilderHelper.ts +30 -0
  148. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.ts +63 -22
  149. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.ts +64 -22
  150. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.ts +111 -35
  151. package/tsconfig.json +4 -8
  152. package/tsconfig.package.json +1 -4
@@ -35,21 +35,21 @@ import {
35
35
  type PureGrammarParserElementDocumentationGetter,
36
36
  type PureGrammarParserDocumentationGetter,
37
37
  } from '@finos/legend-studio';
38
- import { Persistence } from '../../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
38
+ import { Persistence } from '../../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
39
39
  import {
40
40
  PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL,
41
41
  PURE_GRAMMAR_PERSISTENCE_PARSER_NAME,
42
- } from '../../graphManager/DSLPersistence_PureGraphManagerPlugin';
42
+ } from '../../graphManager/DSLPersistence_PureGraphManagerPlugin.js';
43
43
  import {
44
44
  DSL_PERSISTENCE_DOCUMENTATION_ENTRIES,
45
45
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY,
46
- } from './DSLPersistence_LegendStudioDocumentation';
46
+ } from './DSLPersistence_LegendStudioDocumentation.js';
47
47
  import {
48
48
  collectKeyedDocumnetationEntriesFromConfig,
49
49
  type LegendApplicationDocumentationEntry,
50
50
  type LegendApplicationKeyedDocumentationEntry,
51
51
  } from '@finos/legend-application';
52
- import { BLANK_PERSISTENCE_SNIPPET } from './DSLPersistence_CodeSnippets';
52
+ import { BLANK_PERSISTENCE_SNIPPET } from './DSLPersistence_CodeSnippets.js';
53
53
 
54
54
  const PERSISTENCE_ELEMENT_TYPE = 'PERSISTENCE';
55
55
  const PERSISTENCE_ELEMENT_PROJECT_EXPLORER_DND_TYPE =
@@ -152,8 +152,8 @@ export class DSLPersistence_LegendStudioPlugin
152
152
  ): LegendApplicationDocumentationEntry | undefined => {
153
153
  if (parserKeyword === PURE_GRAMMAR_PERSISTENCE_PARSER_NAME) {
154
154
  if (elementKeyword === PURE_GRAMMAR_PERSISTENCE_ELEMENT_TYPE_LABEL) {
155
- return editorStore.applicationStore.docRegistry.getEntry(
156
- DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PERSISTENCE_ELEMENT,
155
+ return editorStore.applicationStore.documentationService.getDocEntry(
156
+ DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_ELEMENT_PERSISTENCE,
157
157
  );
158
158
  }
159
159
  }
@@ -169,7 +169,7 @@ export class DSLPersistence_LegendStudioPlugin
169
169
  parserKeyword: string,
170
170
  ): LegendApplicationDocumentationEntry | undefined => {
171
171
  if (parserKeyword === PURE_GRAMMAR_PERSISTENCE_PARSER_NAME) {
172
- return editorStore.applicationStore.docRegistry.getEntry(
172
+ return editorStore.applicationStore.documentationService.getDocEntry(
173
173
  DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PARSER,
174
174
  );
175
175
  }
@@ -184,9 +184,10 @@ export class DSLPersistence_LegendStudioPlugin
184
184
  {
185
185
  text: PURE_GRAMMAR_PERSISTENCE_PARSER_NAME,
186
186
  description: `(dsl)`,
187
- documentation: editorStore.applicationStore.docRegistry.getEntry(
188
- DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PARSER,
189
- ),
187
+ documentation:
188
+ editorStore.applicationStore.documentationService.getDocEntry(
189
+ DSL_PERSISTENCE_LEGEND_STUDIO_DOCUMENTATION_KEY.GRAMMAR_PARSER,
190
+ ),
190
191
  insertText: PURE_GRAMMAR_PERSISTENCE_PARSER_NAME,
191
192
  },
192
193
  ],
@@ -15,7 +15,7 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../package.json';
18
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
18
+ import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
19
19
  import type { Clazz } from '@finos/legend-shared';
20
20
  import { type PackageableElement, PureGraphPlugin } from '@finos/legend-graph';
21
21
 
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
17
+ import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
18
  import type { BasicModel, PureModel } from '@finos/legend-graph';
19
19
  import { guaranteeNonNullable } from '@finos/legend-shared';
20
20
 
@@ -15,8 +15,8 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../package.json';
18
- import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
19
- import { observe_Persistence } from './action/changeDetection/DSLPersistence_ObserverHelper';
18
+ import { Persistence } from '../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
19
+ import { observe_Persistence } from './action/changeDetection/DSLPersistence_ObserverHelper.js';
20
20
  import {
21
21
  PureGraphManagerPlugin,
22
22
  type PackageableElement,
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { Persistence } from '../../../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
17
+ import type { Persistence } from '../../../models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
18
  import {
19
19
  observe_Abstract_PackageableElement,
20
20
  skipObserved,
package/src/index.ts CHANGED
@@ -14,7 +14,18 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- export * from './DSLPersistence_Extension';
18
- export { DSLPersistence_LegendStudioPlugin } from './components/studio/DSLPersistence_LegendStudioPlugin';
19
- export { Persistence } from './models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
20
- export { V1_Persistence } from './models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence';
17
+ export * from './DSLPersistence_Extension.js';
18
+ export { DSLPersistence_LegendStudioPlugin } from './components/studio/DSLPersistence_LegendStudioPlugin.js';
19
+
20
+ // ---------- PACKAGEABLE ELEMENT ----------
21
+
22
+ // metamodels
23
+ export { Persistence } from './models/metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
24
+
25
+ // v1 protocols
26
+ export { V1_Persistence } from './models/protocols/pure/v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js';
27
+
28
+ // ---------- TRANSFORMATION ----------
29
+
30
+ export { V1_transformPersistence } from './models/protocols/pure/v1/transformation/pureGraph/from/V1_PersistenceTransformer.js';
31
+ export { V1_buildPersistence } from './models/protocols/pure/v1/transformation/pureGraph/to/V1_PersistenceBuilder.js';
@@ -67,6 +67,10 @@ export enum PERSISTENCE_HASH_STRUCTURE {
67
67
  DATE_TIME_TRANSACTION_MILESTONING = 'DATE_TIME_TRANSACTION_MILESTONING',
68
68
  BATCH_ID_AND_DATE_TIME_TRANSACTION_MILESTONING = 'BATCH_ID_AND_DATE_TIME_TRANSACTION_MILESTONING',
69
69
 
70
+ // transaction derivation
71
+ SOURCE_SPECIFIES_IN_DATE_TIME = 'SOURCE_SPECIFIES_IN_DATE_TIME',
72
+ SOURCE_SPECIFIES_IN_AND_OUT_DATE_TIME = 'SOURCE_SPECIFIES_IN_AND_OUT_DATE_TIME',
73
+
70
74
  // validity milestoning
71
75
  DATE_TIME_VALIDITY_MILESTONING = 'DATE_TIME_VALIDITY_MILESTONING',
72
76
 
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class Auditing implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class DeduplicationStrategy implements Hashable {
@@ -14,13 +14,13 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { Auditing } from './DSLPersistence_Auditing';
18
- import type { MergeStrategy } from './DSLPersistence_MergeStrategy';
17
+ import type { Auditing } from './DSLPersistence_Auditing.js';
18
+ import type { MergeStrategy } from './DSLPersistence_MergeStrategy.js';
19
19
  import type {
20
20
  TransactionMilestoning,
21
21
  ValidityMilestoning,
22
- } from './DSLPersistence_Milestoning';
23
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
22
+ } from './DSLPersistence_Milestoning.js';
23
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
24
24
  import { type Hashable, hashArray } from '@finos/legend-shared';
25
25
 
26
26
  export abstract class IngestMode implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class MergeStrategy implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  // transaction milestoning
@@ -45,12 +45,14 @@ export class DateTimeTransactionMilestoning
45
45
  {
46
46
  dateTimeInName!: string;
47
47
  dateTimeOutName!: string;
48
+ derivation?: TransactionDerivation;
48
49
 
49
50
  override get hashCode(): string {
50
51
  return hashArray([
51
52
  PERSISTENCE_HASH_STRUCTURE.DATE_TIME_TRANSACTION_MILESTONING,
52
53
  this.dateTimeInName,
53
54
  this.dateTimeOutName,
55
+ this.derivation ?? '',
54
56
  ]);
55
57
  }
56
58
  }
@@ -63,6 +65,7 @@ export class BatchIdAndDateTimeTransactionMilestoning
63
65
  batchIdOutName!: string;
64
66
  dateTimeInName!: string;
65
67
  dateTimeOutName!: string;
68
+ derivation?: TransactionDerivation;
66
69
 
67
70
  override get hashCode(): string {
68
71
  return hashArray([
@@ -71,6 +74,43 @@ export class BatchIdAndDateTimeTransactionMilestoning
71
74
  this.batchIdOutName,
72
75
  this.dateTimeInName,
73
76
  this.dateTimeOutName,
77
+ this.derivation ?? '',
78
+ ]);
79
+ }
80
+ }
81
+
82
+ // transaction derivation
83
+
84
+ export abstract class TransactionDerivation implements Hashable {
85
+ abstract get hashCode(): string;
86
+ }
87
+
88
+ export class SourceSpecifiesInDateTime
89
+ extends TransactionDerivation
90
+ implements Hashable
91
+ {
92
+ sourceDateTimeInField!: string;
93
+
94
+ override get hashCode(): string {
95
+ return hashArray([
96
+ PERSISTENCE_HASH_STRUCTURE.SOURCE_SPECIFIES_IN_DATE_TIME,
97
+ this.sourceDateTimeInField,
98
+ ]);
99
+ }
100
+ }
101
+
102
+ export class SourceSpecifiesInAndOutDateTime
103
+ extends TransactionDerivation
104
+ implements Hashable
105
+ {
106
+ sourceDateTimeInField!: string;
107
+ sourceDateTimeOutField!: string;
108
+
109
+ override get hashCode(): string {
110
+ return hashArray([
111
+ PERSISTENCE_HASH_STRUCTURE.SOURCE_SPECIFIES_IN_AND_OUT_DATE_TIME,
112
+ this.sourceDateTimeInField,
113
+ this.sourceDateTimeOutField,
74
114
  ]);
75
115
  }
76
116
  }
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export class Notifier implements Hashable {
@@ -14,10 +14,10 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { Notifier } from './DSLPersistence_Notifier';
18
- import type { Persister } from './DSLPersistence_Persister';
19
- import type { Trigger } from './DSLPersistence_Trigger';
20
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import type { Notifier } from './DSLPersistence_Notifier.js';
18
+ import type { Persister } from './DSLPersistence_Persister.js';
19
+ import type { Trigger } from './DSLPersistence_Trigger.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
21
21
  import {
22
22
  PackageableElement,
23
23
  type PackageableElementReference,
@@ -14,10 +14,10 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { IngestMode } from './DSLPersistence_IngestMode';
18
- import type { Sink } from './DSLPersistence_Sink';
19
- import type { TargetShape } from './DSLPersistence_TargetShape';
20
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import type { IngestMode } from './DSLPersistence_IngestMode.js';
18
+ import type { Sink } from './DSLPersistence_Sink.js';
19
+ import type { TargetShape } from './DSLPersistence_TargetShape.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
21
21
  import { type Hashable, hashArray } from '@finos/legend-shared';
22
22
 
23
23
  export abstract class Persister implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import type {
19
19
  Binding,
20
20
  Connection,
@@ -14,8 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { DeduplicationStrategy } from './DSLPersistence_DeduplicationStrategy';
18
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import type { DeduplicationStrategy } from './DSLPersistence_DeduplicationStrategy.js';
18
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
19
19
  import { type Hashable, hashArray } from '@finos/legend-shared';
20
20
  import type { Class, PackageableElementReference } from '@finos/legend-graph';
21
21
 
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class Trigger implements Hashable {
@@ -15,14 +15,14 @@
15
15
  */
16
16
 
17
17
  import packageJson from '../../../../package.json';
18
- import { Persistence } from '../../metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence';
19
- import { V1_Persistence } from './v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence';
18
+ import { Persistence } from '../../metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
19
+ import { V1_Persistence } from './v1/model/packageableElements/persistence/V1_DSLPersistence_Persistence.js';
20
20
  import {
21
21
  V1_PERSISTENCE_ELEMENT_PROTOCOL_TYPE,
22
22
  V1_persistenceModelSchema,
23
- } from './v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper';
24
- import { V1_buildPersistence } from './v1/transformation/pureGraph/to/V1_PersistenceBuilder';
25
- import { V1_transformPersistence } from './v1/transformation/pureGraph/from/V1_PersistenceTransformer';
23
+ } from './v1/transformation/pureProtocol/V1_DSLPersistence_ProtocolHelper.js';
24
+ import { V1_buildPersistence } from './v1/transformation/pureGraph/to/V1_PersistenceBuilder.js';
25
+ import { V1_transformPersistence } from './v1/transformation/pureGraph/from/V1_PersistenceTransformer.js';
26
26
  import {
27
27
  type PackageableElement,
28
28
  PureProtocolProcessorPlugin,
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class V1_Auditing implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class V1_DeduplicationStrategy implements Hashable {
@@ -14,13 +14,13 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { V1_Auditing } from './V1_DSLPersistence_Auditing';
18
- import type { V1_MergeStrategy } from './V1_DSLPersistence_MergeStrategy';
17
+ import type { V1_Auditing } from './V1_DSLPersistence_Auditing.js';
18
+ import type { V1_MergeStrategy } from './V1_DSLPersistence_MergeStrategy.js';
19
19
  import type {
20
20
  V1_TransactionMilestoning,
21
21
  V1_ValidityMilestoning,
22
- } from './V1_DSLPersistence_Milestoning';
23
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
22
+ } from './V1_DSLPersistence_Milestoning.js';
23
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
24
24
  import { type Hashable, hashArray } from '@finos/legend-shared';
25
25
 
26
26
  export abstract class V1_IngestMode implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class V1_MergeStrategy implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  // transaction milestoning
@@ -45,12 +45,14 @@ export class V1_DateTimeTransactionMilestoning
45
45
  {
46
46
  dateTimeInName!: string;
47
47
  dateTimeOutName!: string;
48
+ derivation?: V1_TransactionDerivation;
48
49
 
49
50
  override get hashCode(): string {
50
51
  return hashArray([
51
52
  PERSISTENCE_HASH_STRUCTURE.DATE_TIME_TRANSACTION_MILESTONING,
52
53
  this.dateTimeInName,
53
54
  this.dateTimeOutName,
55
+ this.derivation ?? '',
54
56
  ]);
55
57
  }
56
58
  }
@@ -63,6 +65,7 @@ export class V1_BatchIdAndDateTimeTransactionMilestoning
63
65
  batchIdOutName!: string;
64
66
  dateTimeInName!: string;
65
67
  dateTimeOutName!: string;
68
+ derivation?: V1_TransactionDerivation;
66
69
 
67
70
  override get hashCode(): string {
68
71
  return hashArray([
@@ -71,6 +74,43 @@ export class V1_BatchIdAndDateTimeTransactionMilestoning
71
74
  this.batchIdOutName,
72
75
  this.dateTimeInName,
73
76
  this.dateTimeOutName,
77
+ this.derivation ?? '',
78
+ ]);
79
+ }
80
+ }
81
+
82
+ // transaction derivation
83
+
84
+ export abstract class V1_TransactionDerivation implements Hashable {
85
+ abstract get hashCode(): string;
86
+ }
87
+
88
+ export class V1_SourceSpecifiesInDateTime
89
+ extends V1_TransactionDerivation
90
+ implements Hashable
91
+ {
92
+ sourceDateTimeInField!: string;
93
+
94
+ override get hashCode(): string {
95
+ return hashArray([
96
+ PERSISTENCE_HASH_STRUCTURE.SOURCE_SPECIFIES_IN_DATE_TIME,
97
+ this.sourceDateTimeInField,
98
+ ]);
99
+ }
100
+ }
101
+
102
+ export class V1_SourceSpecifiesInAndOutDateTime
103
+ extends V1_TransactionDerivation
104
+ implements Hashable
105
+ {
106
+ sourceDateTimeInField!: string;
107
+ sourceDateTimeOutField!: string;
108
+
109
+ override get hashCode(): string {
110
+ return hashArray([
111
+ PERSISTENCE_HASH_STRUCTURE.SOURCE_SPECIFIES_IN_AND_OUT_DATE_TIME,
112
+ this.sourceDateTimeInField,
113
+ this.sourceDateTimeOutField,
74
114
  ]);
75
115
  }
76
116
  }
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export class V1_Notifier implements Hashable {
@@ -14,15 +14,15 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { V1_Notifier } from './V1_DSLPersistence_Notifier';
18
- import type { V1_Persister } from './V1_DSLPersistence_Persister';
19
- import type { V1_Trigger } from './V1_DSLPersistence_Trigger';
17
+ import type { V1_Notifier } from './V1_DSLPersistence_Notifier.js';
18
+ import type { V1_Persister } from './V1_DSLPersistence_Persister.js';
19
+ import type { V1_Trigger } from './V1_DSLPersistence_Trigger.js';
20
20
  import {
21
21
  V1_PackageableElement,
22
22
  type V1_PackageableElementVisitor,
23
23
  } from '@finos/legend-graph';
24
24
  import { type Hashable, hashArray } from '@finos/legend-shared';
25
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
25
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
26
26
 
27
27
  export class V1_Persistence extends V1_PackageableElement implements Hashable {
28
28
  documentation!: string;
@@ -14,10 +14,10 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { V1_IngestMode } from './V1_DSLPersistence_IngestMode';
18
- import type { V1_Sink } from './V1_DSLPersistence_Sink';
19
- import type { V1_TargetShape } from './V1_DSLPersistence_TargetShape';
20
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import type { V1_IngestMode } from './V1_DSLPersistence_IngestMode.js';
18
+ import type { V1_Sink } from './V1_DSLPersistence_Sink.js';
19
+ import type { V1_TargetShape } from './V1_DSLPersistence_TargetShape.js';
20
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
21
21
  import { type Hashable, hashArray } from '@finos/legend-shared';
22
22
 
23
23
  export abstract class V1_Persister implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import type { V1_Connection } from '@finos/legend-graph';
19
19
  import { type Hashable, hashArray } from '@finos/legend-shared';
20
20
 
@@ -14,8 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { V1_DeduplicationStrategy } from './V1_DSLPersistence_DeduplicationStrategy';
18
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import type { V1_DeduplicationStrategy } from './V1_DSLPersistence_DeduplicationStrategy.js';
18
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
19
19
  import { type Hashable, hashArray } from '@finos/legend-shared';
20
20
 
21
21
  export abstract class V1_TargetShape implements Hashable {
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils';
17
+ import { PERSISTENCE_HASH_STRUCTURE } from '../../../../../../DSLPersistence_ModelUtils.js';
18
18
  import { type Hashable, hashArray } from '@finos/legend-shared';
19
19
 
20
20
  export abstract class V1_Trigger implements Hashable {
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import type { Persistence } from '../../../../../metamodels/pure/model/packageableElements/persistence/DSLPersistence_Persistence.js';
18
+ import { getPersistence } from '../../../../../../graphManager/DSLPersistence_GraphManagerHelper.js';
19
+ import type {
20
+ PackageableElementImplicitReference,
21
+ V1_GraphBuilderContext,
22
+ } from '@finos/legend-graph';
23
+
24
+ export const V1_resolvePersistence = (
25
+ path: string,
26
+ context: V1_GraphBuilderContext,
27
+ ): PackageableElementImplicitReference<Persistence> =>
28
+ context.createImplicitPackageableElementReference(path, (_path: string) =>
29
+ getPersistence(_path, context.graph),
30
+ );