@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.
- package/dist/command-handler.d.ts +2 -0
- package/dist/command-handler.js +26 -2
- package/dist/command-handler.js.map +1 -1
- package/dist/command-manager.d.ts +2 -0
- package/dist/command-manager.js +3 -0
- package/dist/command-manager.js.map +1 -1
- package/dist/commands/create.d.ts +3 -1
- package/dist/commands/create.js +10 -1
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/migrate.d.ts +33 -0
- package/dist/commands/migrate.js +66 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/containers/project/card-cache.js +13 -1
- package/dist/containers/project/card-cache.js.map +1 -1
- package/dist/containers/project/project-paths.d.ts +1 -0
- package/dist/containers/project/project-paths.js +5 -2
- package/dist/containers/project/project-paths.js.map +1 -1
- package/dist/containers/project.d.ts +10 -0
- package/dist/containers/project.js +39 -2
- package/dist/containers/project.js.map +1 -1
- package/dist/containers/template.js +2 -0
- package/dist/containers/template.js.map +1 -1
- package/dist/interfaces/command-options.d.ts +6 -1
- package/dist/interfaces/project-interfaces.d.ts +4 -0
- package/dist/interfaces/project-interfaces.js.map +1 -1
- package/dist/migrations/index.d.ts +14 -0
- package/dist/migrations/index.js +14 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/migration-executor.d.ts +79 -0
- package/dist/migrations/migration-executor.js +312 -0
- package/dist/migrations/migration-executor.js.map +1 -0
- package/dist/migrations/migration-worker.d.ts +13 -0
- package/dist/migrations/migration-worker.js +156 -0
- package/dist/migrations/migration-worker.js.map +1 -0
- package/dist/migrations/worker-executor.d.ts +24 -0
- package/dist/migrations/worker-executor.js +157 -0
- package/dist/migrations/worker-executor.js.map +1 -0
- package/dist/project-settings.d.ts +2 -0
- package/dist/project-settings.js +7 -0
- package/dist/project-settings.js.map +1 -1
- package/dist/resources/calculation-resource.d.ts +9 -0
- package/dist/resources/calculation-resource.js +13 -2
- package/dist/resources/calculation-resource.js.map +1 -1
- package/dist/resources/card-type-resource.d.ts +12 -3
- package/dist/resources/card-type-resource.js +73 -91
- package/dist/resources/card-type-resource.js.map +1 -1
- package/dist/resources/field-type-resource.d.ts +10 -1
- package/dist/resources/field-type-resource.js +62 -61
- package/dist/resources/field-type-resource.js.map +1 -1
- package/dist/resources/file-resource.d.ts +27 -2
- package/dist/resources/file-resource.js +46 -8
- package/dist/resources/file-resource.js.map +1 -1
- package/dist/resources/graph-model-resource.d.ts +5 -0
- package/dist/resources/graph-model-resource.js +6 -0
- package/dist/resources/graph-model-resource.js.map +1 -1
- package/dist/resources/graph-view-resource.d.ts +5 -0
- package/dist/resources/graph-view-resource.js +6 -0
- package/dist/resources/graph-view-resource.js.map +1 -1
- package/dist/resources/link-type-resource.d.ts +11 -1
- package/dist/resources/link-type-resource.js +54 -30
- package/dist/resources/link-type-resource.js.map +1 -1
- package/dist/resources/report-resource.d.ts +6 -1
- package/dist/resources/report-resource.js +7 -1
- package/dist/resources/report-resource.js.map +1 -1
- package/dist/resources/resource-object.d.ts +22 -7
- package/dist/resources/resource-object.js +44 -15
- package/dist/resources/resource-object.js.map +1 -1
- package/dist/resources/template-resource.d.ts +5 -1
- package/dist/resources/template-resource.js +11 -27
- package/dist/resources/template-resource.js.map +1 -1
- package/dist/resources/workflow-resource.d.ts +7 -3
- package/dist/resources/workflow-resource.js +90 -82
- package/dist/resources/workflow-resource.js.map +1 -1
- package/dist/utils/card-utils.d.ts +1 -1
- package/dist/utils/common-utils.d.ts +8 -0
- package/dist/utils/common-utils.js +14 -0
- package/dist/utils/common-utils.js.map +1 -1
- package/dist/utils/file-utils.d.ts +15 -3
- package/dist/utils/file-utils.js +48 -9
- package/dist/utils/file-utils.js.map +1 -1
- package/dist/utils/json.js +2 -2
- package/dist/utils/json.js.map +1 -1
- package/package.json +5 -3
- package/src/command-handler.ts +38 -1
- package/src/command-manager.ts +3 -0
- package/src/commands/create.ts +11 -0
- package/src/commands/migrate.ts +88 -0
- package/src/containers/project/card-cache.ts +18 -1
- package/src/containers/project/project-paths.ts +6 -2
- package/src/containers/project.ts +66 -1
- package/src/containers/template.ts +5 -0
- package/src/interfaces/command-options.ts +8 -0
- package/src/interfaces/project-interfaces.ts +4 -0
- package/src/migrations/index.ts +20 -0
- package/src/migrations/migration-executor.ts +478 -0
- package/src/migrations/migration-worker.ts +190 -0
- package/src/migrations/worker-executor.ts +185 -0
- package/src/project-settings.ts +7 -0
- package/src/resources/calculation-resource.ts +13 -2
- package/src/resources/card-type-resource.ts +101 -114
- package/src/resources/field-type-resource.ts +78 -71
- package/src/resources/file-resource.ts +68 -9
- package/src/resources/graph-model-resource.ts +6 -0
- package/src/resources/graph-view-resource.ts +6 -0
- package/src/resources/link-type-resource.ts +66 -36
- package/src/resources/report-resource.ts +7 -1
- package/src/resources/resource-object.ts +57 -18
- package/src/resources/template-resource.ts +12 -27
- package/src/resources/workflow-resource.ts +119 -100
- package/src/utils/common-utils.ts +15 -0
- package/src/utils/file-utils.ts +56 -12
- 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.
|
|
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
|
-
|
|
308
|
-
|
|
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
|
|
318
|
-
const
|
|
319
|
-
|
|
320
|
-
|
|
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 (
|
|
323
|
-
|
|
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
|
-
|
|
326
|
-
throw new Error(`
|
|
348
|
+
else {
|
|
349
|
+
throw new Error(`Unknown property '${key}' for FieldType`);
|
|
327
350
|
}
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
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
|
-
|
|
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
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
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),
|
|
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(),
|
|
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
|
-
|
|
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;
|
|
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;
|
|
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":"AAAA;;;;;;;;;;;;EAYE;AAEF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAYnD;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,cAGtC;IACC,YAAY,OAAgB,EAAE,IAAkB;QAC9C,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAEnC,IAAI,CAAC,eAAe,GAAG,iBAAiB,CAAC;QACzC,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,MAAM,IAAI,CAAC,aAAa,EAAE;aAC3B,CAAC;YACF,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;
|
|
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
|
|
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
|
-
//
|
|
26
|
-
async
|
|
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.
|
|
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
|
-
|
|
72
|
-
|
|
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
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
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
|
/**
|