@cyberismo/data-handler 0.0.17 → 0.0.19

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 (112) hide show
  1. package/dist/command-handler.d.ts +2 -0
  2. package/dist/command-handler.js +26 -2
  3. package/dist/command-handler.js.map +1 -1
  4. package/dist/command-manager.d.ts +2 -0
  5. package/dist/command-manager.js +3 -0
  6. package/dist/command-manager.js.map +1 -1
  7. package/dist/commands/create.d.ts +3 -1
  8. package/dist/commands/create.js +10 -1
  9. package/dist/commands/create.js.map +1 -1
  10. package/dist/commands/migrate.d.ts +33 -0
  11. package/dist/commands/migrate.js +66 -0
  12. package/dist/commands/migrate.js.map +1 -0
  13. package/dist/containers/project/card-cache.js +13 -1
  14. package/dist/containers/project/card-cache.js.map +1 -1
  15. package/dist/containers/project/project-paths.d.ts +1 -0
  16. package/dist/containers/project/project-paths.js +5 -2
  17. package/dist/containers/project/project-paths.js.map +1 -1
  18. package/dist/containers/project.d.ts +10 -0
  19. package/dist/containers/project.js +39 -2
  20. package/dist/containers/project.js.map +1 -1
  21. package/dist/containers/template.js +2 -0
  22. package/dist/containers/template.js.map +1 -1
  23. package/dist/interfaces/command-options.d.ts +6 -1
  24. package/dist/interfaces/project-interfaces.d.ts +4 -0
  25. package/dist/interfaces/project-interfaces.js.map +1 -1
  26. package/dist/migrations/index.d.ts +14 -0
  27. package/dist/migrations/index.js +14 -0
  28. package/dist/migrations/index.js.map +1 -0
  29. package/dist/migrations/migration-executor.d.ts +79 -0
  30. package/dist/migrations/migration-executor.js +312 -0
  31. package/dist/migrations/migration-executor.js.map +1 -0
  32. package/dist/migrations/migration-worker.d.ts +13 -0
  33. package/dist/migrations/migration-worker.js +156 -0
  34. package/dist/migrations/migration-worker.js.map +1 -0
  35. package/dist/migrations/worker-executor.d.ts +24 -0
  36. package/dist/migrations/worker-executor.js +157 -0
  37. package/dist/migrations/worker-executor.js.map +1 -0
  38. package/dist/project-settings.d.ts +2 -0
  39. package/dist/project-settings.js +7 -0
  40. package/dist/project-settings.js.map +1 -1
  41. package/dist/resources/calculation-resource.d.ts +9 -0
  42. package/dist/resources/calculation-resource.js +13 -2
  43. package/dist/resources/calculation-resource.js.map +1 -1
  44. package/dist/resources/card-type-resource.d.ts +12 -3
  45. package/dist/resources/card-type-resource.js +73 -91
  46. package/dist/resources/card-type-resource.js.map +1 -1
  47. package/dist/resources/field-type-resource.d.ts +10 -1
  48. package/dist/resources/field-type-resource.js +62 -61
  49. package/dist/resources/field-type-resource.js.map +1 -1
  50. package/dist/resources/file-resource.d.ts +27 -2
  51. package/dist/resources/file-resource.js +46 -8
  52. package/dist/resources/file-resource.js.map +1 -1
  53. package/dist/resources/graph-model-resource.d.ts +5 -0
  54. package/dist/resources/graph-model-resource.js +6 -0
  55. package/dist/resources/graph-model-resource.js.map +1 -1
  56. package/dist/resources/graph-view-resource.d.ts +5 -0
  57. package/dist/resources/graph-view-resource.js +6 -0
  58. package/dist/resources/graph-view-resource.js.map +1 -1
  59. package/dist/resources/link-type-resource.d.ts +11 -1
  60. package/dist/resources/link-type-resource.js +54 -30
  61. package/dist/resources/link-type-resource.js.map +1 -1
  62. package/dist/resources/report-resource.d.ts +6 -1
  63. package/dist/resources/report-resource.js +7 -1
  64. package/dist/resources/report-resource.js.map +1 -1
  65. package/dist/resources/resource-object.d.ts +22 -7
  66. package/dist/resources/resource-object.js +44 -15
  67. package/dist/resources/resource-object.js.map +1 -1
  68. package/dist/resources/template-resource.d.ts +5 -1
  69. package/dist/resources/template-resource.js +11 -27
  70. package/dist/resources/template-resource.js.map +1 -1
  71. package/dist/resources/workflow-resource.d.ts +7 -3
  72. package/dist/resources/workflow-resource.js +90 -82
  73. package/dist/resources/workflow-resource.js.map +1 -1
  74. package/dist/utils/card-utils.d.ts +1 -1
  75. package/dist/utils/common-utils.d.ts +8 -0
  76. package/dist/utils/common-utils.js +14 -0
  77. package/dist/utils/common-utils.js.map +1 -1
  78. package/dist/utils/file-utils.d.ts +15 -3
  79. package/dist/utils/file-utils.js +48 -9
  80. package/dist/utils/file-utils.js.map +1 -1
  81. package/dist/utils/json.js +2 -2
  82. package/dist/utils/json.js.map +1 -1
  83. package/package.json +5 -3
  84. package/src/command-handler.ts +38 -1
  85. package/src/command-manager.ts +3 -0
  86. package/src/commands/create.ts +11 -0
  87. package/src/commands/migrate.ts +88 -0
  88. package/src/containers/project/card-cache.ts +18 -1
  89. package/src/containers/project/project-paths.ts +6 -2
  90. package/src/containers/project.ts +66 -1
  91. package/src/containers/template.ts +5 -0
  92. package/src/interfaces/command-options.ts +8 -0
  93. package/src/interfaces/project-interfaces.ts +4 -0
  94. package/src/migrations/index.ts +20 -0
  95. package/src/migrations/migration-executor.ts +478 -0
  96. package/src/migrations/migration-worker.ts +190 -0
  97. package/src/migrations/worker-executor.ts +185 -0
  98. package/src/project-settings.ts +7 -0
  99. package/src/resources/calculation-resource.ts +13 -2
  100. package/src/resources/card-type-resource.ts +101 -114
  101. package/src/resources/field-type-resource.ts +78 -71
  102. package/src/resources/file-resource.ts +68 -9
  103. package/src/resources/graph-model-resource.ts +6 -0
  104. package/src/resources/graph-view-resource.ts +6 -0
  105. package/src/resources/link-type-resource.ts +66 -36
  106. package/src/resources/report-resource.ts +7 -1
  107. package/src/resources/resource-object.ts +57 -18
  108. package/src/resources/template-resource.ts +12 -27
  109. package/src/resources/workflow-resource.ts +119 -100
  110. package/src/utils/common-utils.ts +15 -0
  111. package/src/utils/file-utils.ts +56 -12
  112. package/src/utils/json.ts +2 -6
@@ -22,6 +22,11 @@ import type { ResourceName } from '../utils/resource-utils.js';
22
22
  export declare class FieldTypeResource extends FileResource<FieldType> {
23
23
  private fromType;
24
24
  private toType;
25
+ /**
26
+ * Creates an instance of FieldTypeResource
27
+ * @param project Project to use
28
+ * @param name Resource name
29
+ */
25
30
  constructor(project: Project, name: ResourceName);
26
31
  private cardsWithFieldType;
27
32
  private doConvertValue;
@@ -29,11 +34,15 @@ export declare class FieldTypeResource extends FileResource<FieldType> {
29
34
  private dataTypeChanged;
30
35
  private enumValueExists;
31
36
  private handleEnumValueReplacements;
32
- private handleNameChange;
33
37
  private isConversionValid;
34
38
  private static parseClingoArray;
35
39
  private relevantCardTypes;
36
40
  private updateCardTypes;
41
+ /**
42
+ * When resource name changes.
43
+ * @param existingName Current resource name.
44
+ */
45
+ protected onNameChange(existingName: string): Promise<void>;
37
46
  /**
38
47
  * Creates a new field type object. Base class writes the object to disk automatically.
39
48
  * @param dataType Type for the new field type.
@@ -25,6 +25,11 @@ export class FieldTypeResource extends FileResource {
25
25
  // The actual types are set, if this Field Type's dataType is changed.
26
26
  fromType = 'integer';
27
27
  toType = 'integer';
28
+ /**
29
+ * Creates an instance of FieldTypeResource
30
+ * @param project Project to use
31
+ * @param name Resource name
32
+ */
28
33
  constructor(project, name) {
29
34
  super(project, name, 'fieldTypes');
30
35
  this.contentSchemaId = 'fieldTypeSchema';
@@ -152,20 +157,12 @@ export class FieldTypeResource extends FileResource {
152
157
  return;
153
158
  const removedValue = op.target.enumValue;
154
159
  const cardTypes = this.relevantCardTypes();
155
- const allCards = await Promise.all(cardTypes.map((cardType) => this.collectCards(cardType)));
160
+ const allCards = await Promise.all(cardTypes.map((cardType) => this.collectCards(cardType, (card, cardTypeName) => card.metadata?.cardType === cardTypeName)));
156
161
  const cardsToUpdate = allCards
157
162
  .flat()
158
163
  .filter((card) => card.metadata?.[this.content.name] === removedValue);
159
164
  await Promise.all(cardsToUpdate.map((card) => this.project.updateCardMetadataKey(card.key, this.content.name, newValue.enumValue)));
160
165
  }
161
- // When resource name changes.
162
- async handleNameChange(existingName) {
163
- await Promise.all([
164
- super.updateHandleBars(existingName, this.content.name),
165
- super.updateCalculations(existingName, this.content.name),
166
- ]);
167
- await this.write();
168
- }
169
166
  // Checks if value 'from' can be converted 'to' value.
170
167
  isConversionValid(from, to) {
171
168
  // Set helpers to avoid dragging 'Operation' object everywhere.
@@ -212,6 +209,19 @@ export class FieldTypeResource extends FileResource {
212
209
  }
213
210
  }
214
211
  }
212
+ /**
213
+ * When resource name changes.
214
+ * @param existingName Current resource name.
215
+ */
216
+ async onNameChange(existingName) {
217
+ await Promise.all([
218
+ super.updateHandleBars(existingName, this.content.name),
219
+ super.updateCalculations(existingName, this.content.name),
220
+ super.updateCardContentReferences(existingName, this.content.name),
221
+ this.updateCardTypes(existingName),
222
+ ]);
223
+ await this.write();
224
+ }
215
225
  /**
216
226
  * Creates a new field type object. Base class writes the object to disk automatically.
217
227
  * @param dataType Type for the new field type.
@@ -231,16 +241,16 @@ export class FieldTypeResource extends FileResource {
231
241
  */
232
242
  static fieldDataTypes() {
233
243
  return [
234
- 'shortText',
235
- 'longText',
236
- 'number',
237
- 'integer',
238
244
  'boolean',
239
- 'enum',
240
- 'list',
241
245
  'date',
242
246
  'dateTime',
247
+ 'enum',
248
+ 'integer',
249
+ 'list',
250
+ 'longText',
251
+ 'number',
243
252
  'person',
253
+ 'shortText',
244
254
  ];
245
255
  }
246
256
  /**
@@ -291,7 +301,7 @@ export class FieldTypeResource extends FileResource {
291
301
  async rename(newName) {
292
302
  const existingName = this.content.name;
293
303
  await super.rename(newName);
294
- return this.handleNameChange(existingName);
304
+ return this.onNameChange(existingName);
295
305
  }
296
306
  /**
297
307
  * Updates field type resource.
@@ -304,56 +314,47 @@ export class FieldTypeResource extends FileResource {
304
314
  */
305
315
  async update(updateKey, op) {
306
316
  const { key } = updateKey;
307
- const nameChange = key === 'name';
308
- const typeChange = key === 'dataType';
309
- const enumChange = key === 'enumValues';
310
- const existingName = this.content.name;
311
- const existingType = this.content.dataType;
312
- await super.update(updateKey, op);
313
- const content = structuredClone(this.content);
314
- if (key === 'name') {
315
- content.name = super.handleScalar(op);
317
+ if (key === 'name' || key === 'description' || key === 'displayName') {
318
+ await super.update(updateKey, op);
316
319
  }
317
- else if (key === 'dataType') {
318
- const toType = op;
319
- if (!FieldTypeResource.fieldDataTypes().includes(toType.to)) {
320
- throw new Error(`Cannot change '${key}' to unknown type '${toType.to}'`);
320
+ else {
321
+ const content = structuredClone(this.content);
322
+ const typeChange = key === 'dataType';
323
+ const enumChange = key === 'enumValues';
324
+ const existingType = this.content.dataType;
325
+ if (key === 'name') {
326
+ content.name = super.handleScalar(op);
327
+ }
328
+ else if (key === 'dataType') {
329
+ const toType = op;
330
+ if (!FieldTypeResource.fieldDataTypes().includes(toType.to)) {
331
+ throw new Error(`Cannot change '${key}' to unknown type '${toType.to}'`);
332
+ }
333
+ if (existingType === toType.to) {
334
+ throw new Error(`'${key}' is already '${toType.to}'`);
335
+ }
336
+ if (!this.isConversionValid(content.dataType, toType.to)) {
337
+ throw new Error(`Cannot change data type from '${content.dataType}' to '${toType.to}'`);
338
+ }
339
+ content.dataType = super.handleScalar(op);
321
340
  }
322
- if (existingType === toType.to) {
323
- throw new Error(`'${key}' is already '${toType.to}'`);
341
+ else if (key === 'enumValues') {
342
+ if (op.name === 'add' || op.name === 'change' || op.name === 'remove') {
343
+ const existingValue = this.enumValueExists(op, content.enumValues);
344
+ op.target = existingValue ?? op.target;
345
+ }
346
+ content.enumValues = super.handleArray(op, key, content.enumValues);
324
347
  }
325
- if (!this.isConversionValid(content.dataType, toType.to)) {
326
- throw new Error(`Cannot change data type from '${content.dataType}' to '${toType.to}'`);
348
+ else {
349
+ throw new Error(`Unknown property '${key}' for FieldType`);
327
350
  }
328
- content.dataType = super.handleScalar(op);
329
- }
330
- else if (key === 'displayName') {
331
- content.displayName = super.handleScalar(op);
332
- }
333
- else if (key === 'enumValues') {
334
- if (op.name === 'add' || op.name === 'change' || op.name === 'remove') {
335
- const existingValue = this.enumValueExists(op, content.enumValues);
336
- op.target = existingValue ?? op.target;
351
+ await super.postUpdate(content, updateKey, op);
352
+ if (typeChange) {
353
+ await this.dataTypeChanged();
354
+ }
355
+ else if (enumChange && op.name === 'remove') {
356
+ await this.handleEnumValueReplacements(op);
337
357
  }
338
- content.enumValues = super.handleArray(op, key, content.enumValues);
339
- }
340
- else if (key === 'description') {
341
- content.description = super.handleScalar(op);
342
- }
343
- else {
344
- throw new Error(`Unknown property '${key}' for FieldType`);
345
- }
346
- await super.postUpdate(content, updateKey, op);
347
- if (nameChange) {
348
- // Renaming this field type causes that references to its name must be updated.
349
- await this.handleNameChange(existingName);
350
- await this.updateCardTypes(existingName);
351
- }
352
- else if (typeChange) {
353
- await this.dataTypeChanged();
354
- }
355
- else if (enumChange && op.name === 'remove') {
356
- await this.handleEnumValueReplacements(op);
357
358
  }
358
359
  }
359
360
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"field-type-resource.js","sourceRoot":"","sources":["../../src/resources/field-type-resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-type-resource.js","sourceRoot":"","sources":["../../src/resources/field-type-resource.ts"],"names":[],"mappings":"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"}
@@ -15,14 +15,39 @@ import type { Card, ResourceFolderType } from '../interfaces/project-interfaces.
15
15
  import type { Project } from '../containers/project.js';
16
16
  import type { ResourceBaseMetadata } from '../interfaces/resource-interfaces.js';
17
17
  import type { ResourceName } from '../utils/resource-utils.js';
18
- import type { ShowReturnType } from './resource-object.js';
18
+ import type { Operation, ShowReturnType } from './resource-object.js';
19
+ import type { UpdateKey } from '../interfaces/resource-interfaces.js';
19
20
  /**
20
21
  * Base class for file based resources (card types, field types, link types, workflows, ...)
21
22
  */
22
23
  export declare abstract class FileResource<T extends ResourceBaseMetadata> extends ResourceObject<T, never> {
23
24
  constructor(project: Project, name: ResourceName, type: ResourceFolderType);
24
- protected collectCards(cardTypeName: string): Promise<Card[]>;
25
+ /**
26
+ * Collects cards that match the given filter function.
27
+ * @param resourceName The resource name to filter by
28
+ * @param filterFn Function that returns true for cards to include
29
+ * @returns Array of cards that match the filter
30
+ */
31
+ protected collectCards(resourceName: string, filterFn: (card: Card, resourceName: string) => boolean): Promise<Card[]>;
32
+ /**
33
+ * For handling name changes.
34
+ * @param previousName The previous name before the change
35
+ */
36
+ protected abstract onNameChange?(previousName: string): Promise<void>;
37
+ /**
38
+ * Updates resource key to a new prefix
39
+ * @param name Resource name
40
+ * @param prefixes list of prefixes in the project
41
+ * @returns updated resource name
42
+ */
25
43
  protected updatePrefixInResourceName(name: string, prefixes: string[]): string;
44
+ /**
45
+ * Updates resource.
46
+ * @param updateKey Key to modify
47
+ * @param op Operation to perform on 'key'
48
+ * @throws if key is unknown.
49
+ */
50
+ update<Type, K extends string>(updateKey: UpdateKey<K>, op: Operation<Type>): Promise<void>;
26
51
  /**
27
52
  * Returns the resource metadata content.
28
53
  * @returns metadata content
@@ -21,25 +21,34 @@ export class FileResource extends ResourceObject {
21
21
  super(project, name, type);
22
22
  this.initialize();
23
23
  }
24
- // Collects cards that are using the 'cardTypeName'.
25
- async collectCards(cardTypeName) {
26
- function filteredCards(cardSource, cardTypeName) {
27
- const cards = cardSource;
28
- return cards.filter((card) => card.metadata?.cardType === cardTypeName);
24
+ /**
25
+ * Collects cards that match the given filter function.
26
+ * @param resourceName The resource name to filter by
27
+ * @param filterFn Function that returns true for cards to include
28
+ * @returns Array of cards that match the filter
29
+ */
30
+ async collectCards(resourceName, filterFn) {
31
+ function filteredCards(cardSource, resourceName, filterFn) {
32
+ return cardSource.filter((card) => filterFn(card, resourceName));
29
33
  }
30
34
  // Collect both project cards ...
31
- const projectCards = filteredCards(this.project.cards(this.project.paths.cardRootFolder), cardTypeName);
35
+ const projectCards = filteredCards(this.project.cards(this.project.paths.cardRootFolder), resourceName, filterFn);
32
36
  // ... and cards from each template that would be affected.
33
37
  const templates = this.project.resources.templates(ResourcesFrom.localOnly);
34
38
  const templateCards = templates.map((template) => {
35
39
  const templateObject = template.templateObject();
36
- return filteredCards(templateObject.cards(), cardTypeName);
40
+ return filteredCards(templateObject.cards(), resourceName, filterFn);
37
41
  });
38
42
  // Return all affected cards
39
43
  const cards = [projectCards, ...templateCards].reduce((accumulator, value) => accumulator.concat(value), []);
40
44
  return cards;
41
45
  }
42
- // Updates resource key to a new prefix
46
+ /**
47
+ * Updates resource key to a new prefix
48
+ * @param name Resource name
49
+ * @param prefixes list of prefixes in the project
50
+ * @returns updated resource name
51
+ */
43
52
  updatePrefixInResourceName(name, prefixes) {
44
53
  const { identifier, prefix, type } = resourceName(name);
45
54
  if (this.moduleResource) {
@@ -49,6 +58,35 @@ export class FileResource extends ResourceObject {
49
58
  ? `${this.project.configuration.cardKeyPrefix}/${type}/${identifier}`
50
59
  : name;
51
60
  }
61
+ /**
62
+ * Updates resource.
63
+ * @param updateKey Key to modify
64
+ * @param op Operation to perform on 'key'
65
+ * @throws if key is unknown.
66
+ */
67
+ async update(updateKey, op) {
68
+ const { key } = updateKey;
69
+ const nameChange = key === 'name';
70
+ const existingName = this.content.name;
71
+ await super.update(updateKey, op);
72
+ const content = structuredClone(this.content);
73
+ if (key === 'name') {
74
+ content.name = super.handleScalar(op);
75
+ }
76
+ else if (key === 'displayName') {
77
+ content.displayName = super.handleScalar(op);
78
+ }
79
+ else if (key === 'description') {
80
+ content.description = super.handleScalar(op);
81
+ }
82
+ else {
83
+ throw new Error(`Unknown property '${key}' for folder resource`);
84
+ }
85
+ await super.postUpdate(content, updateKey, op);
86
+ if (nameChange) {
87
+ await this.onNameChange?.(existingName);
88
+ }
89
+ }
52
90
  /**
53
91
  * Returns the resource metadata content.
54
92
  * @returns metadata content
@@ -1 +1 @@
1
- {"version":3,"file":"file-resource.js","sourceRoot":"","sources":["../../src/resources/file-resource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAWzD;;GAEG;AACH,MAAM,OAAgB,YAEpB,SAAQ,cAAwB;IAChC,YAAY,OAAgB,EAAE,IAAkB,EAAE,IAAwB;QACxE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IACD,oDAAoD;IAC1C,KAAK,CAAC,YAAY,CAAC,YAAoB;QAC/C,SAAS,aAAa,CAAC,UAAkB,EAAE,YAAoB;YAC7D,MAAM,KAAK,GAAG,UAAU,CAAC;YACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,KAAK,YAAY,CAAC,CAAC;QAC1E,CAAC;QAED,iCAAiC;QACjC,MAAM,YAAY,GAAG,aAAa,CAChC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,EACrD,YAAY,CACb,CAAC;QACF,2DAA2D;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC/C,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;YACjD,OAAO,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,YAAY,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QACH,4BAA4B;QAC5B,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,GAAG,aAAa,CAAC,CAAC,MAAM,CACnD,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EACjD,EAAE,CACH,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,uCAAuC;IAC7B,0BAA0B,CAAC,IAAY,EAAE,QAAkB;QACnE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC/B,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,IAAI,IAAI,IAAI,UAAU,EAAE;YACrE,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED;;;OAGG;IACI,IAAI;QACT,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"file-resource.js","sourceRoot":"","sources":["../../src/resources/file-resource.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,11 @@ import type { ResourceName } from '../utils/resource-utils.js';
22
22
  * Graph model resource class.
23
23
  */
24
24
  export declare class GraphModelResource extends FolderResource<GraphModelMetadata, GraphModelContent> {
25
+ /**
26
+ * Creates an instance of GraphModelResource
27
+ * @param project Project to use
28
+ * @param name Resource name
29
+ */
25
30
  constructor(project: Project, name: ResourceName);
26
31
  /**
27
32
  * Handle name changes for graph models
@@ -22,6 +22,11 @@ import { CONTENT_FILES } from '../interfaces/folder-content-interfaces.js';
22
22
  * Graph model resource class.
23
23
  */
24
24
  export class GraphModelResource extends FolderResource {
25
+ /**
26
+ * Creates an instance of GraphModelResource
27
+ * @param project Project to use
28
+ * @param name Resource name
29
+ */
25
30
  constructor(project, name) {
26
31
  super(project, name, 'graphModels');
27
32
  this.contentSchemaId = 'graphModelSchema';
@@ -37,6 +42,7 @@ export class GraphModelResource extends FolderResource {
37
42
  join(this.internalFolder, CONTENT_FILES.model),
38
43
  ]),
39
44
  super.updateCalculations(existingName, this.content.name),
45
+ super.updateCardContentReferences(existingName, this.content.name),
40
46
  ]);
41
47
  // Finally, write updated content.
42
48
  await this.write();
@@ -1 +1 @@
1
- {"version":3,"file":"graph-model-resource.js","sourceRoot":"","sources":["../../src/resources/graph-model-resource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;EAYE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAY3E;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,cAGvC;IACC,YAAY,OAAgB,EAAE,IAAkB;QAC9C,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAEpC,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACxE,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,YAAY,CAAC,YAAoB;QAC/C,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gBACtD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,KAAK,CAAC;aAC/C,CAAC;YACF,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1D,CAAC,CAAC;QACH,kCAAkC;QAClC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CAAC,UAA+B;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,UAAU,GAAG,cAAc,CAAC,UAAU,CACpC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CACxC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE/B,8DAA8D;QAC9D,MAAM,YAAY,GAAG,qCAAqC,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,CAAC;QAC1F,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC;QACtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC9D,MAAM,aAAa,CAAC,gBAAgB,EAAE,YAAY,EAAE;YAClD,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAChC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CAAC,OAAqB;QACvC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACvC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CACjB,SAAuB,EACvB,EAAmB;QAEnB,IAAI,SAAS,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9C,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,EAAE,CAAW,CAAC;YAEpD,MAAM,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAK,CAAC,KAAc;QAC/B,MAAM,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACxC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtD,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrB,KAAK,CAAC,YAAY,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"graph-model-resource.js","sourceRoot":"","sources":["../../src/resources/graph-model-resource.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,11 @@ import type { ResourceName } from '../utils/resource-utils.js';
22
22
  * Graph view resource class.
23
23
  */
24
24
  export declare class GraphViewResource extends FolderResource<GraphViewMetadata, GraphViewContent> {
25
+ /**
26
+ * Creates instance of GraphViewResource
27
+ * @param project Project to use
28
+ * @param name Resource name
29
+ */
25
30
  constructor(project: Project, name: ResourceName);
26
31
  /**
27
32
  * Handle name changes for graph views
@@ -23,6 +23,11 @@ import { sortCards } from '../utils/card-utils.js';
23
23
  * Graph view resource class.
24
24
  */
25
25
  export class GraphViewResource extends FolderResource {
26
+ /**
27
+ * Creates instance of GraphViewResource
28
+ * @param project Project to use
29
+ * @param name Resource name
30
+ */
26
31
  constructor(project, name) {
27
32
  super(project, name, 'graphViews');
28
33
  this.contentSchemaId = 'graphViewSchema';
@@ -38,6 +43,7 @@ export class GraphViewResource extends FolderResource {
38
43
  await this.handleBarFile(),
39
44
  ]),
40
45
  super.updateCalculations(existingName, this.content.name),
46
+ super.updateCardContentReferences(existingName, this.content.name),
41
47
  ]);
42
48
  await this.write();
43
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"graph-view-resource.js","sourceRoot":"","sources":["../../src/resources/graph-view-resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph-view-resource.js","sourceRoot":"","sources":["../../src/resources/graph-view-resource.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,18 @@ import type { ResourceName } from '../utils/resource-utils.js';
19
19
  * Link Type resource class.
20
20
  */
21
21
  export declare class LinkTypeResource extends FileResource<LinkType> {
22
+ /**
23
+ * Creates instance of LinkTypeResource
24
+ * @param project Project to use
25
+ * @param name Resource name
26
+ */
22
27
  constructor(project: Project, name: ResourceName);
23
- private handleNameChange;
28
+ private updateCardLinks;
29
+ /**
30
+ * When resource name changes.
31
+ * @param existingName Current resource name.
32
+ */
33
+ protected onNameChange(existingName: string): Promise<void>;
24
34
  /**
25
35
  * Creates a new link type object. Base class writes the object to disk automatically.
26
36
  * @param newContent Content for the link type.
@@ -17,13 +17,40 @@ import { sortCards } from '../utils/card-utils.js';
17
17
  * Link Type resource class.
18
18
  */
19
19
  export class LinkTypeResource extends FileResource {
20
+ /**
21
+ * Creates instance of LinkTypeResource
22
+ * @param project Project to use
23
+ * @param name Resource name
24
+ */
20
25
  constructor(project, name) {
21
26
  super(project, name, 'linkTypes');
22
27
  this.contentSchemaId = 'linkTypeSchema';
23
28
  this.contentSchema = super.contentSchemaContent(this.contentSchemaId);
24
29
  }
25
- // When resource name changes.
26
- async handleNameChange(existingName) {
30
+ // Update card metadata links when link type is renamed
31
+ async updateCardLinks(from, to) {
32
+ const cards = await this.collectCards(from, (card, linkTypeName) => card.metadata?.links?.some((link) => link.linkType === linkTypeName) ??
33
+ false);
34
+ if (cards.length === 0) {
35
+ return;
36
+ }
37
+ await Promise.all(cards.map(async (card) => {
38
+ if (card.metadata?.links) {
39
+ card.metadata.links = card.metadata.links.map((link) => {
40
+ if (link.linkType === from) {
41
+ return { ...link, linkType: to };
42
+ }
43
+ return link;
44
+ });
45
+ await this.project.updateCardMetadata(card, card.metadata);
46
+ }
47
+ }));
48
+ }
49
+ /**
50
+ * When resource name changes.
51
+ * @param existingName Current resource name.
52
+ */
53
+ async onNameChange(existingName) {
27
54
  const current = this.content;
28
55
  const prefixes = this.project.projectPrefixes();
29
56
  if (current.sourceCardTypes) {
@@ -35,6 +62,8 @@ export class LinkTypeResource extends FileResource {
35
62
  await Promise.all([
36
63
  super.updateHandleBars(existingName, this.content.name),
37
64
  super.updateCalculations(existingName, this.content.name),
65
+ super.updateCardContentReferences(existingName, this.content.name),
66
+ this.updateCardLinks(existingName, this.content.name),
38
67
  ]);
39
68
  // Finally, write updated content.
40
69
  await this.write();
@@ -59,7 +88,7 @@ export class LinkTypeResource extends FileResource {
59
88
  async rename(newName) {
60
89
  const existingName = this.content.name;
61
90
  await super.rename(newName);
62
- return this.handleNameChange(existingName);
91
+ return this.onNameChange(existingName);
63
92
  }
64
93
  /**
65
94
  * Updates link type resource.
@@ -68,35 +97,30 @@ export class LinkTypeResource extends FileResource {
68
97
  */
69
98
  async update(updateKey, op) {
70
99
  const { key } = updateKey;
71
- const nameChange = key === 'name';
72
- const existingName = this.content.name;
73
- await super.update(updateKey, op);
74
- const content = structuredClone(this.content);
75
- if (key === 'name') {
76
- content.name = super.handleScalar(op);
77
- }
78
- else if (key === 'destinationCardTypes') {
79
- content.destinationCardTypes = super.handleArray(op, key, content.destinationCardTypes);
80
- }
81
- else if (key === 'enableLinkDescription') {
82
- content.enableLinkDescription = super.handleScalar(op);
83
- }
84
- else if (key === 'inboundDisplayName') {
85
- content.inboundDisplayName = super.handleScalar(op);
86
- }
87
- else if (key === 'outboundDisplayName') {
88
- content.outboundDisplayName = super.handleScalar(op);
89
- }
90
- else if (key === 'sourceCardTypes') {
91
- content.sourceCardTypes = super.handleArray(op, key, content.sourceCardTypes);
100
+ if (key === 'name' || key === 'displayName' || key === 'description') {
101
+ await super.update(updateKey, op);
92
102
  }
93
103
  else {
94
- throw new Error(`Unknown property '${key}' for FieldType`);
95
- }
96
- await super.postUpdate(content, updateKey, op);
97
- // Renaming this card type causes that references to its name must be updated.
98
- if (nameChange) {
99
- await this.handleNameChange(existingName);
104
+ const content = structuredClone(this.content);
105
+ if (key === 'destinationCardTypes') {
106
+ content.destinationCardTypes = super.handleArray(op, key, content.destinationCardTypes);
107
+ }
108
+ else if (key === 'enableLinkDescription') {
109
+ content.enableLinkDescription = super.handleScalar(op);
110
+ }
111
+ else if (key === 'inboundDisplayName') {
112
+ content.inboundDisplayName = super.handleScalar(op);
113
+ }
114
+ else if (key === 'outboundDisplayName') {
115
+ content.outboundDisplayName = super.handleScalar(op);
116
+ }
117
+ else if (key === 'sourceCardTypes') {
118
+ content.sourceCardTypes = super.handleArray(op, key, content.sourceCardTypes);
119
+ }
120
+ else {
121
+ throw new Error(`Unknown property '${key}' for LinkType`);
122
+ }
123
+ await super.postUpdate(content, updateKey, op);
100
124
  }
101
125
  }
102
126
  /**