@likec4/core 1.20.1 → 1.20.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 (79) hide show
  1. package/dist/builder/index.cjs +6 -6
  2. package/dist/builder/index.d.cts +3 -3
  3. package/dist/builder/index.d.mts +3 -3
  4. package/dist/builder/index.d.ts +3 -3
  5. package/dist/builder/index.mjs +6 -6
  6. package/dist/compute-view/index.cjs +5 -5
  7. package/dist/compute-view/index.d.cts +4 -4
  8. package/dist/compute-view/index.d.mts +4 -4
  9. package/dist/compute-view/index.d.ts +4 -4
  10. package/dist/compute-view/index.mjs +6 -6
  11. package/dist/index.cjs +71 -573
  12. package/dist/index.d.cts +9 -133
  13. package/dist/index.d.mts +9 -133
  14. package/dist/index.d.ts +9 -133
  15. package/dist/index.mjs +8 -512
  16. package/dist/model/index.cjs +1 -1
  17. package/dist/model/index.d.cts +5 -5
  18. package/dist/model/index.d.mts +5 -5
  19. package/dist/model/index.d.ts +5 -5
  20. package/dist/model/index.mjs +1 -1
  21. package/dist/shared/{core.DunIMHRf.mjs → core.0PxLtLpP.mjs} +1 -1
  22. package/dist/shared/{core.BvdNMbcA.d.cts → core.88YY6vtF.d.mts} +2 -2
  23. package/dist/shared/{core.ByNgh-mC.d.cts → core.BIZD3l1g.d.cts} +1 -1
  24. package/dist/shared/{core.D74xkKkG.d.ts → core.BJfn72tj.d.cts} +5 -0
  25. package/dist/shared/{core.D74xkKkG.d.cts → core.BJfn72tj.d.mts} +5 -0
  26. package/dist/shared/{core.D74xkKkG.d.mts → core.BJfn72tj.d.ts} +5 -0
  27. package/dist/shared/{core.M-JWF7SS.mjs → core.Bezy7K65.mjs} +1 -1
  28. package/dist/shared/{core.D_Gc58Gt.d.ts → core.Bs71hdR4.d.ts} +2 -1
  29. package/dist/shared/{core.D6-fWbM3.d.ts → core.BtISRjMA.d.ts} +1 -1
  30. package/dist/shared/{core.B72vUaNB.d.cts → core.C0ygs98j.d.cts} +2 -1
  31. package/dist/shared/core.CCyhaU-4.mjs +14819 -0
  32. package/dist/shared/{core.DsoCu540.cjs → core.CKYxnFEl.cjs} +1 -1
  33. package/dist/shared/{core.Damrzla-.d.ts → core.CNUzoKM7.d.ts} +2 -2
  34. package/dist/shared/{core.sLaWHBjR.d.mts → core.CajOK_t3.d.mts} +1 -1
  35. package/dist/shared/{core.BdbFkE_p.d.cts → core.Cmfo_N4F.d.mts} +3 -3
  36. package/dist/shared/{core.jy6z2iRn.d.mts → core.CwZmAghJ.d.cts} +3 -3
  37. package/dist/shared/{core.ZWiGANIJ.d.ts → core.D4wZW7zR.d.ts} +3 -3
  38. package/dist/shared/{core.gv1bMwCC.cjs → core.Db_OTRdC.cjs} +1 -1
  39. package/dist/shared/{core.Dfzrh1VA.d.mts → core.DjMYkPMQ.d.mts} +2 -1
  40. package/dist/shared/{core.BGus30EM.cjs → core.DxJ1KbOs.cjs} +48 -643
  41. package/dist/shared/{core.m3rCQAv6.mjs → core.El-gigOM.mjs} +1 -1
  42. package/dist/shared/core.FACQZmma.cjs +14874 -0
  43. package/dist/shared/{core.BRuJ3Wzf.d.mts → core.Lh2RFJf1.d.cts} +2 -2
  44. package/dist/shared/{core.CqCTxzMY.mjs → core.PYycpzvA.mjs} +28 -619
  45. package/dist/shared/{core.B2QYWlYe.cjs → core.uxHtIZaH.cjs} +1 -1
  46. package/dist/types/index.cjs +1 -1
  47. package/dist/types/index.d.cts +4 -4
  48. package/dist/types/index.d.mts +4 -4
  49. package/dist/types/index.d.ts +4 -4
  50. package/dist/types/index.mjs +1 -1
  51. package/dist/utils/index.cjs +6 -2
  52. package/dist/utils/index.d.cts +129 -145
  53. package/dist/utils/index.d.mts +129 -145
  54. package/dist/utils/index.d.ts +129 -145
  55. package/dist/utils/index.mjs +3 -3
  56. package/package.json +7 -6
  57. package/src/compute-view/deployment-view/clean-connections.ts +1 -1
  58. package/src/compute-view/deployment-view/stages/stage-final.ts +1 -1
  59. package/src/compute-view/element-view/__test__/fixture.ts +2 -0
  60. package/src/compute-view/element-view/compute.ts +1 -1
  61. package/src/compute-view/element-view/memory/memory.ts +2 -2
  62. package/src/compute-view/memory/ops.ts +1 -1
  63. package/src/compute-view/relationships-view/layout.ts +1 -1
  64. package/src/compute-view/relationships-view/utils.ts +1 -1
  65. package/src/compute-view/utils/applyCustomElementProperties.ts +9 -6
  66. package/src/compute-view/utils/applyViewRuleStyles.ts +7 -4
  67. package/src/index.ts +0 -8
  68. package/src/model/DeploymentModel.ts +1 -1
  69. package/src/model/LikeC4Model.ts +3 -3
  70. package/src/types/element.ts +7 -2
  71. package/src/types/expression.ts +1 -0
  72. package/src/utils/index.ts +2 -0
  73. package/src/utils/set.ts +5 -2
  74. package/dist/shared/core.BxvDITEI.mjs +0 -859
  75. package/dist/shared/core.C9DCnJh8.cjs +0 -908
  76. package/src/builder/Builder-style1.test-d.ts +0 -190
  77. package/src/builder/Builder-style2.test-d.ts +0 -175
  78. package/src/compute-view/utils/uniqueTags.test.ts +0 -42
  79. package/src/model/LikeC4Model.test-d.ts +0 -152
@@ -1,7 +1,133 @@
1
- export { I as IterableContainer, R as ReorderedArray, a as ancestorsFqn, c as commonAncestor, b as compareByFqnHierarchically, d as compareFqnHierarchically, h as hierarchyDistance, e as hierarchyLevel, i as isAncestor, f as isDescendantOf, g as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, j as sortNaturalByFqn, k as sortParentsFirst } from '../shared/core.sLaWHBjR.mjs';
2
- import { N as NonEmptyArray, a as IteratorLike } from '../shared/core.D74xkKkG.mjs';
1
+ export { I as IterableContainer, R as ReorderedArray, a as ancestorsFqn, c as commonAncestor, b as compareByFqnHierarchically, d as compareFqnHierarchically, h as hierarchyDistance, e as hierarchyLevel, i as isAncestor, f as isDescendantOf, g as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, j as sortNaturalByFqn, k as sortParentsFirst } from '../shared/core.CajOK_t3.mjs';
2
+ import { N as NonEmptyArray, a as IteratorLike } from '../shared/core.BJfn72tj.mjs';
3
+ export { default as objectHash } from '/home/runner/work/likec4/likec4/node_modules/@types/object-hash/index.d.ts';
3
4
  import { IsNumericLiteral } from 'type-fest';
4
5
 
6
+ /**
7
+ * Mnemonist DefaultMap Typings
8
+ * =============================
9
+ */
10
+ declare class DefaultMap<K, V> implements Iterable<[K, V]> {
11
+
12
+ // Members
13
+ size: number;
14
+
15
+ // Constructor
16
+ constructor(factory: (key: K, index: number) => V);
17
+
18
+ // Methods
19
+ clear(): void;
20
+ set(key: K, value: V): this;
21
+ delete(key: K): boolean;
22
+ has(key: K): boolean;
23
+ get(key: K): V;
24
+ peek(key: K): V | undefined;
25
+ forEach(callback: (value: V, key: K, map: this) => void, scope?: any): void;
26
+ keys(): IterableIterator<K>;
27
+ values(): IterableIterator<V>;
28
+ entries(): IterableIterator<[K, V]>;
29
+ [Symbol.iterator](): IterableIterator<[K, V]>;
30
+ inspect(): any;
31
+
32
+ // Statics
33
+ static autoIncrement(): number;
34
+ }
35
+
36
+ /**
37
+ * Mnemonist LinkedList Typings
38
+ * =============================
39
+ */
40
+ declare class LinkedList<T> implements Iterable<T> {
41
+
42
+ // Members
43
+ size: number;
44
+
45
+ // Constructor
46
+ constructor();
47
+
48
+ // Methods
49
+ clear(): void;
50
+ first(): T | undefined;
51
+ last(): T | undefined;
52
+ peek(): T | undefined;
53
+ push(value: T): number;
54
+ shift(): T | undefined;
55
+ unshift(value: T): number;
56
+ forEach(callback: (value: T, index: number, list: this) => void, scope?: any): void;
57
+ toArray(): Array<T>;
58
+ values(): IterableIterator<T>;
59
+ entries(): IterableIterator<[number, T]>;
60
+ [Symbol.iterator](): IterableIterator<T>;
61
+ toString(): string;
62
+ toJSON(): Array<T>;
63
+ inspect(): any;
64
+
65
+ // Statics
66
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): LinkedList<I>;
67
+ }
68
+
69
+ /**
70
+ * Mnemonist Queue Typings
71
+ * ========================
72
+ */
73
+ declare class Queue<T> implements Iterable<T> {
74
+
75
+ // Members
76
+ size: number;
77
+
78
+ // Constructor
79
+ constructor();
80
+
81
+ // Methods
82
+ clear(): void;
83
+ enqueue(item: T): number;
84
+ dequeue(): T | undefined;
85
+ peek(): T | undefined;
86
+ forEach(callback: (item: T, index: number, queue: this) => void, scope?: any): void;
87
+ toArray(): Array<T>;
88
+ values(): IterableIterator<T>;
89
+ entries(): IterableIterator<[number, T]>;
90
+ [Symbol.iterator](): IterableIterator<T>;
91
+ toString(): string;
92
+ toJSON(): Array<T>;
93
+ inspect(): any;
94
+
95
+ // Statics
96
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): Queue<I>;
97
+ static of<I>(...items: Array<I>): Queue<I>;
98
+ }
99
+
100
+ /**
101
+ * Mnemonist Stack Typings
102
+ * ========================
103
+ */
104
+ declare class Stack<T> implements Iterable<T> {
105
+
106
+ // Members
107
+ size: number;
108
+
109
+ // Constructor
110
+ constructor();
111
+
112
+ // Methods
113
+ clear(): void;
114
+ push(item: T): number;
115
+ pop(): T | undefined;
116
+ peek(): T | undefined;
117
+ forEach(callback: (item: T, index: number, stack: this) => void, scope?: any): void;
118
+ toArray(): Array<T>;
119
+ values(): IterableIterator<T>;
120
+ entries(): IterableIterator<[number, T]>;
121
+ [Symbol.iterator](): IterableIterator<T>;
122
+ toString(): string;
123
+ toJSON(): Array<T>;
124
+ inspect(): any;
125
+
126
+ // Statics
127
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): Stack<I>;
128
+ static of<I>(...items: Array<I>): Stack<I>;
129
+ }
130
+
5
131
  /**
6
132
  * Common head of two arrays
7
133
  *
@@ -211,146 +337,4 @@ declare function symmetricDifference<T>(a: ReadonlySet<T>, b: ReadonlySet<T>): S
211
337
  */
212
338
  declare function stringHash(str: string): string;
213
339
 
214
- declare namespace objectHash {
215
- type NotUndefined = object | string | number | boolean | null | NotUndefined[];
216
-
217
- /**
218
- * @see https://github.com/puleos/object-hash#hashsha1value
219
- */
220
- function sha1(object: NotUndefined): string;
221
- /**
222
- * @see https://github.com/puleos/object-hash#hashkeysvalue
223
- */
224
- function keys(object: NotUndefined): string;
225
- /**
226
- * @see https://github.com/puleos/object-hash#hashmd5value
227
- */
228
- function MD5(object: NotUndefined): string;
229
- /**
230
- * @see https://github.com/puleos/object-hash#hashkeysmd5value
231
- */
232
- function keysMD5(object: NotUndefined): string;
233
- /**
234
- * @see https://github.com/puleos/object-hash#hashwritetostreamvalue-options-stream
235
- */
236
- function writeToStream(value: any, stream: Stream): void;
237
- function writeToStream(value: any, options: Options, stream: Stream): void;
238
-
239
- type BufferEncoding =
240
- | "ascii"
241
- | "base64"
242
- | "binary"
243
- | "hex"
244
- | "latin1"
245
- | "ucs-2"
246
- | "ucs2"
247
- | "utf-8"
248
- | "utf16le"
249
- | "utf8";
250
-
251
- interface Stream {
252
- update?(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null) => void): void;
253
- write?(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null) => void): void;
254
- }
255
-
256
- type HashName =
257
- | "md4"
258
- | "md4WithRSAEncryption"
259
- | "md5"
260
- | "md5WithRSAEncryption"
261
- | "ripemd"
262
- | "ripemd160"
263
- | "ripemd160WithRSA"
264
- | "rmd160"
265
- | "rsa-md4"
266
- | "rsa-md5"
267
- | "rsa-ripemd160"
268
- | "rsa-sha1"
269
- | "rsa-sha1-2"
270
- | "rsa-sha224"
271
- | "rsa-sha256"
272
- | "rsa-sha3-224"
273
- | "rsa-sha3-256"
274
- | "rsa-sha3-384"
275
- | "rsa-sha3-512"
276
- | "rsa-sha384"
277
- | "rsa-sha512"
278
- | "sha1"
279
- | "sha1WithRSAEncryption"
280
- | "sha224"
281
- | "sha224WithRSAEncryption"
282
- | "sha256"
283
- | "sha256WithRSAEncryption"
284
- | "sha3-224"
285
- | "sha3-256"
286
- | "sha3-384"
287
- | "sha3-512"
288
- | "sha384"
289
- | "sha384WithRSAEncryption"
290
- | "sha512"
291
- | "sha512WithRSAEncryption";
292
-
293
- interface BaseOptions {
294
- /**
295
- * @default 'sha1'
296
- */
297
- algorithm?: HashName | "passthrough" | undefined;
298
-
299
- excludeKeys?: ((key: string) => boolean) | undefined;
300
- /**
301
- * @default false
302
- */
303
- excludeValues?: boolean | undefined;
304
- /**
305
- * @default false
306
- */
307
- ignoreUnknown?: boolean | undefined;
308
-
309
- replacer?: ((value: any) => any) | undefined;
310
- /**
311
- * @default true
312
- */
313
- respectFunctionNames?: boolean | undefined;
314
- /**
315
- * @default true
316
- */
317
- respectFunctionProperties?: boolean | undefined;
318
- /**
319
- * @default true
320
- */
321
- respectType?: boolean | undefined;
322
- /**
323
- * @default false
324
- */
325
- unorderedArrays?: boolean | undefined;
326
- /**
327
- * @default true
328
- */
329
- unorderedObjects?: boolean | undefined;
330
- /**
331
- * @default true
332
- */
333
- unorderedSets?: boolean | undefined;
334
- }
335
-
336
- interface NormalOption extends BaseOptions {
337
- /**
338
- * @default 'hex'
339
- */
340
- encoding?: "hex" | "binary" | "base64" | undefined;
341
- }
342
-
343
- interface WithBufferOption extends BaseOptions {
344
- encoding: "buffer";
345
- }
346
-
347
- type Options = NormalOption | WithBufferOption;
348
- }
349
-
350
- /**
351
- * @see https://github.com/puleos/object-hash#hashvalue-options
352
- */
353
- declare function objectHash(object: objectHash.NotUndefined, options?: objectHash.NormalOption): string;
354
- declare function objectHash(object: objectHash.NotUndefined, options?: objectHash.WithBufferOption): Buffer;
355
-
356
- export { commonHead, compareNatural, compareRelations, delay, difference, equals as equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, objectHash, stringHash, symmetricDifference, toArray, toSet, union };
340
+ export { DefaultMap, LinkedList, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equals as equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union };
@@ -1,7 +1,133 @@
1
- export { I as IterableContainer, R as ReorderedArray, a as ancestorsFqn, c as commonAncestor, b as compareByFqnHierarchically, d as compareFqnHierarchically, h as hierarchyDistance, e as hierarchyLevel, i as isAncestor, f as isDescendantOf, g as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, j as sortNaturalByFqn, k as sortParentsFirst } from '../shared/core.D6-fWbM3.js';
2
- import { N as NonEmptyArray, a as IteratorLike } from '../shared/core.D74xkKkG.js';
1
+ export { I as IterableContainer, R as ReorderedArray, a as ancestorsFqn, c as commonAncestor, b as compareByFqnHierarchically, d as compareFqnHierarchically, h as hierarchyDistance, e as hierarchyLevel, i as isAncestor, f as isDescendantOf, g as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, j as sortNaturalByFqn, k as sortParentsFirst } from '../shared/core.BtISRjMA.js';
2
+ import { N as NonEmptyArray, a as IteratorLike } from '../shared/core.BJfn72tj.js';
3
+ export { default as objectHash } from '/home/runner/work/likec4/likec4/node_modules/@types/object-hash/index.d.ts';
3
4
  import { IsNumericLiteral } from 'type-fest';
4
5
 
6
+ /**
7
+ * Mnemonist DefaultMap Typings
8
+ * =============================
9
+ */
10
+ declare class DefaultMap<K, V> implements Iterable<[K, V]> {
11
+
12
+ // Members
13
+ size: number;
14
+
15
+ // Constructor
16
+ constructor(factory: (key: K, index: number) => V);
17
+
18
+ // Methods
19
+ clear(): void;
20
+ set(key: K, value: V): this;
21
+ delete(key: K): boolean;
22
+ has(key: K): boolean;
23
+ get(key: K): V;
24
+ peek(key: K): V | undefined;
25
+ forEach(callback: (value: V, key: K, map: this) => void, scope?: any): void;
26
+ keys(): IterableIterator<K>;
27
+ values(): IterableIterator<V>;
28
+ entries(): IterableIterator<[K, V]>;
29
+ [Symbol.iterator](): IterableIterator<[K, V]>;
30
+ inspect(): any;
31
+
32
+ // Statics
33
+ static autoIncrement(): number;
34
+ }
35
+
36
+ /**
37
+ * Mnemonist LinkedList Typings
38
+ * =============================
39
+ */
40
+ declare class LinkedList<T> implements Iterable<T> {
41
+
42
+ // Members
43
+ size: number;
44
+
45
+ // Constructor
46
+ constructor();
47
+
48
+ // Methods
49
+ clear(): void;
50
+ first(): T | undefined;
51
+ last(): T | undefined;
52
+ peek(): T | undefined;
53
+ push(value: T): number;
54
+ shift(): T | undefined;
55
+ unshift(value: T): number;
56
+ forEach(callback: (value: T, index: number, list: this) => void, scope?: any): void;
57
+ toArray(): Array<T>;
58
+ values(): IterableIterator<T>;
59
+ entries(): IterableIterator<[number, T]>;
60
+ [Symbol.iterator](): IterableIterator<T>;
61
+ toString(): string;
62
+ toJSON(): Array<T>;
63
+ inspect(): any;
64
+
65
+ // Statics
66
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): LinkedList<I>;
67
+ }
68
+
69
+ /**
70
+ * Mnemonist Queue Typings
71
+ * ========================
72
+ */
73
+ declare class Queue<T> implements Iterable<T> {
74
+
75
+ // Members
76
+ size: number;
77
+
78
+ // Constructor
79
+ constructor();
80
+
81
+ // Methods
82
+ clear(): void;
83
+ enqueue(item: T): number;
84
+ dequeue(): T | undefined;
85
+ peek(): T | undefined;
86
+ forEach(callback: (item: T, index: number, queue: this) => void, scope?: any): void;
87
+ toArray(): Array<T>;
88
+ values(): IterableIterator<T>;
89
+ entries(): IterableIterator<[number, T]>;
90
+ [Symbol.iterator](): IterableIterator<T>;
91
+ toString(): string;
92
+ toJSON(): Array<T>;
93
+ inspect(): any;
94
+
95
+ // Statics
96
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): Queue<I>;
97
+ static of<I>(...items: Array<I>): Queue<I>;
98
+ }
99
+
100
+ /**
101
+ * Mnemonist Stack Typings
102
+ * ========================
103
+ */
104
+ declare class Stack<T> implements Iterable<T> {
105
+
106
+ // Members
107
+ size: number;
108
+
109
+ // Constructor
110
+ constructor();
111
+
112
+ // Methods
113
+ clear(): void;
114
+ push(item: T): number;
115
+ pop(): T | undefined;
116
+ peek(): T | undefined;
117
+ forEach(callback: (item: T, index: number, stack: this) => void, scope?: any): void;
118
+ toArray(): Array<T>;
119
+ values(): IterableIterator<T>;
120
+ entries(): IterableIterator<[number, T]>;
121
+ [Symbol.iterator](): IterableIterator<T>;
122
+ toString(): string;
123
+ toJSON(): Array<T>;
124
+ inspect(): any;
125
+
126
+ // Statics
127
+ static from<I>(iterable: Iterable<I> | {[key: string]: I}): Stack<I>;
128
+ static of<I>(...items: Array<I>): Stack<I>;
129
+ }
130
+
5
131
  /**
6
132
  * Common head of two arrays
7
133
  *
@@ -211,146 +337,4 @@ declare function symmetricDifference<T>(a: ReadonlySet<T>, b: ReadonlySet<T>): S
211
337
  */
212
338
  declare function stringHash(str: string): string;
213
339
 
214
- declare namespace objectHash {
215
- type NotUndefined = object | string | number | boolean | null | NotUndefined[];
216
-
217
- /**
218
- * @see https://github.com/puleos/object-hash#hashsha1value
219
- */
220
- function sha1(object: NotUndefined): string;
221
- /**
222
- * @see https://github.com/puleos/object-hash#hashkeysvalue
223
- */
224
- function keys(object: NotUndefined): string;
225
- /**
226
- * @see https://github.com/puleos/object-hash#hashmd5value
227
- */
228
- function MD5(object: NotUndefined): string;
229
- /**
230
- * @see https://github.com/puleos/object-hash#hashkeysmd5value
231
- */
232
- function keysMD5(object: NotUndefined): string;
233
- /**
234
- * @see https://github.com/puleos/object-hash#hashwritetostreamvalue-options-stream
235
- */
236
- function writeToStream(value: any, stream: Stream): void;
237
- function writeToStream(value: any, options: Options, stream: Stream): void;
238
-
239
- type BufferEncoding =
240
- | "ascii"
241
- | "base64"
242
- | "binary"
243
- | "hex"
244
- | "latin1"
245
- | "ucs-2"
246
- | "ucs2"
247
- | "utf-8"
248
- | "utf16le"
249
- | "utf8";
250
-
251
- interface Stream {
252
- update?(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null) => void): void;
253
- write?(chunk: any, encoding: BufferEncoding, callback: (error?: Error | null) => void): void;
254
- }
255
-
256
- type HashName =
257
- | "md4"
258
- | "md4WithRSAEncryption"
259
- | "md5"
260
- | "md5WithRSAEncryption"
261
- | "ripemd"
262
- | "ripemd160"
263
- | "ripemd160WithRSA"
264
- | "rmd160"
265
- | "rsa-md4"
266
- | "rsa-md5"
267
- | "rsa-ripemd160"
268
- | "rsa-sha1"
269
- | "rsa-sha1-2"
270
- | "rsa-sha224"
271
- | "rsa-sha256"
272
- | "rsa-sha3-224"
273
- | "rsa-sha3-256"
274
- | "rsa-sha3-384"
275
- | "rsa-sha3-512"
276
- | "rsa-sha384"
277
- | "rsa-sha512"
278
- | "sha1"
279
- | "sha1WithRSAEncryption"
280
- | "sha224"
281
- | "sha224WithRSAEncryption"
282
- | "sha256"
283
- | "sha256WithRSAEncryption"
284
- | "sha3-224"
285
- | "sha3-256"
286
- | "sha3-384"
287
- | "sha3-512"
288
- | "sha384"
289
- | "sha384WithRSAEncryption"
290
- | "sha512"
291
- | "sha512WithRSAEncryption";
292
-
293
- interface BaseOptions {
294
- /**
295
- * @default 'sha1'
296
- */
297
- algorithm?: HashName | "passthrough" | undefined;
298
-
299
- excludeKeys?: ((key: string) => boolean) | undefined;
300
- /**
301
- * @default false
302
- */
303
- excludeValues?: boolean | undefined;
304
- /**
305
- * @default false
306
- */
307
- ignoreUnknown?: boolean | undefined;
308
-
309
- replacer?: ((value: any) => any) | undefined;
310
- /**
311
- * @default true
312
- */
313
- respectFunctionNames?: boolean | undefined;
314
- /**
315
- * @default true
316
- */
317
- respectFunctionProperties?: boolean | undefined;
318
- /**
319
- * @default true
320
- */
321
- respectType?: boolean | undefined;
322
- /**
323
- * @default false
324
- */
325
- unorderedArrays?: boolean | undefined;
326
- /**
327
- * @default true
328
- */
329
- unorderedObjects?: boolean | undefined;
330
- /**
331
- * @default true
332
- */
333
- unorderedSets?: boolean | undefined;
334
- }
335
-
336
- interface NormalOption extends BaseOptions {
337
- /**
338
- * @default 'hex'
339
- */
340
- encoding?: "hex" | "binary" | "base64" | undefined;
341
- }
342
-
343
- interface WithBufferOption extends BaseOptions {
344
- encoding: "buffer";
345
- }
346
-
347
- type Options = NormalOption | WithBufferOption;
348
- }
349
-
350
- /**
351
- * @see https://github.com/puleos/object-hash#hashvalue-options
352
- */
353
- declare function objectHash(object: objectHash.NotUndefined, options?: objectHash.NormalOption): string;
354
- declare function objectHash(object: objectHash.NotUndefined, options?: objectHash.WithBufferOption): Buffer;
355
-
356
- export { commonHead, compareNatural, compareRelations, delay, difference, equals as equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, objectHash, stringHash, symmetricDifference, toArray, toSet, union };
340
+ export { DefaultMap, LinkedList, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equals as equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union };
@@ -1,6 +1,6 @@
1
- import { d as t, U as n, j as commonAncestor, o as compareFqnHierarchically } from '../shared/core.BxvDITEI.mjs';
2
- export { h as ancestorsFqn, e as commonHead, k as compareByFqnHierarchically, f as compareNatural, I as difference, J as equalsSet, y as getOrCreate, a as hasAtLeast, q as hierarchyDistance, r as hierarchyLevel, B as ifilter, i as ifind, C as iflat, D as imap, K as intersection, s as isAncestor, u as isDescendantOf, E as isIterable, z as isNonEmptyArray, c as isSameHierarchy, A as isString, F as isome, G as iunique, n as nameFromFqn, O as objectHash, p as parentFqn, v as sortByFqnHierarchically, w as sortNaturalByFqn, x as sortParentsFirst, N as stringHash, L as symmetricDifference, H as toArray, t as toSet, M as union } from '../shared/core.BxvDITEI.mjs';
3
- import { i as invariant } from '../shared/core.M-JWF7SS.mjs';
1
+ import { d as t, _ as n, j as commonAncestor, o as compareFqnHierarchically } from '../shared/core.CCyhaU-4.mjs';
2
+ export { D as DefaultMap, e as LinkedList, q as Queue, S as Stack, h as ancestorsFqn, f as commonHead, k as compareByFqnHierarchically, g as compareNatural, K as difference, L as equalsSet, z as getOrCreate, a as hasAtLeast, r as hierarchyDistance, s as hierarchyLevel, C as ifilter, i as ifind, E as iflat, F as imap, M as intersection, u as isAncestor, v as isDescendantOf, G as isIterable, A as isNonEmptyArray, c as isSameHierarchy, B as isString, H as isome, I as iunique, n as nameFromFqn, Q as objectHash, p as parentFqn, w as sortByFqnHierarchically, x as sortNaturalByFqn, y as sortParentsFirst, P as stringHash, N as symmetricDifference, J as toArray, t as toSet, O as union } from '../shared/core.CCyhaU-4.mjs';
3
+ import { i as invariant } from '../shared/core.Bezy7K65.mjs';
4
4
 
5
5
  function o(r,n){let e=Math.ceil(r),t=Math.floor(n);if(t<e)throw new RangeError(`randomInteger: The range [${r.toString()},${n.toString()}] contains no integer`);return Math.floor(Math.random()*(t-e+1)+e)}
6
6
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@likec4/core",
3
- "version": "1.20.1",
3
+ "version": "1.20.2",
4
4
  "license": "MIT",
5
5
  "homepage": "https://likec4.dev",
6
6
  "author": "Denis Davydkov <denis@davydkov.com>",
@@ -23,6 +23,7 @@
23
23
  "dist",
24
24
  "src",
25
25
  "!**/*.spec.ts",
26
+ "!**/*.test-d.ts",
26
27
  "!**/__tests__/*",
27
28
  "!**/*.map"
28
29
  ],
@@ -111,7 +112,7 @@
111
112
  },
112
113
  "devDependencies": {
113
114
  "@dagrejs/dagre": "1.1.4",
114
- "@likec4/tsconfig": "1.20.1",
115
+ "@likec4/tsconfig": "1.20.2",
115
116
  "@mantine/colors-generator": "7.15.2",
116
117
  "@types/natural-compare-lite": "^1.4.2",
117
118
  "@types/object-hash": "^3.0.6",
@@ -120,14 +121,14 @@
120
121
  "graphology": "^0.25.4",
121
122
  "graphology-dag": "^0.4.1",
122
123
  "graphology-types": "^0.24.8",
123
- "mnemonist": "^0.39.8",
124
+ "mnemonist": "^0.40.0",
124
125
  "natural-compare-lite": "^1.4.0",
125
126
  "object-hash": "^3.0.0",
126
- "obliterator": "^2.0.4",
127
+ "obliterator": "^2.0.5",
127
128
  "remeda": "^2.19.0",
128
- "turbo": "^2.3.3",
129
+ "turbo": "^2.3.4",
129
130
  "typescript": "^5.7.3",
130
- "unbuild": "^3.2.0",
131
+ "unbuild": "^3.3.1",
131
132
  "vitest": "^2.1.8"
132
133
  },
133
134
  "packageManager": "yarn@4.6.0"
@@ -1,4 +1,4 @@
1
- import DefaultMap from 'mnemonist/default-map'
1
+ import { DefaultMap } from 'mnemonist'
2
2
  import {
3
3
  dropWhile,
4
4
  filter,
@@ -1,4 +1,4 @@
1
- import DefaultMap from 'mnemonist/default-map'
1
+ import { DefaultMap } from 'mnemonist'
2
2
  import { forEach, only, pipe } from 'remeda'
3
3
  import { differenceConnections } from '../../../model/connection'
4
4
  import type { RelationshipModel } from '../../../model/RelationModel'
@@ -451,6 +451,7 @@ export function $custom(
451
451
  icon?: string
452
452
  opacity?: number
453
453
  navigateTo?: string
454
+ multiple?: boolean
454
455
  },
455
456
  ): C4CustomElementExpr {
456
457
  return {
@@ -588,6 +589,7 @@ type CustomProps = {
588
589
  icon?: string
589
590
  opacity?: number
590
591
  navigateTo?: string
592
+ multiple?: boolean
591
593
  } & Omit<C4CustomRelationExpr['customRelation'], 'relation' | 'navigateTo'>
592
594
  }
593
595
  export function $include(expr: Expression | C4Expression, props?: CustomProps): ViewRulePredicate {
@@ -1,4 +1,4 @@
1
- import DefaultMap from 'mnemonist/default-map'
1
+ import { DefaultMap } from 'mnemonist'
2
2
  import { filter, findLast, forEach, map, pipe } from 'remeda'
3
3
  import { invariant, nonexhaustive, nonNullable } from '../../errors'
4
4
  import { ConnectionModel } from '../../model/connection/model/ConnectionModel'
@@ -1,9 +1,9 @@
1
- import Stack from 'mnemonist/stack'
1
+ import { Stack } from 'mnemonist'
2
2
  import { nonNullable } from '../../../errors'
3
3
  import type { ConnectionModel } from '../../../model/connection'
4
4
  import type { ElementModel } from '../../../model/ElementModel'
5
5
  import type { Expression, NodeId, ViewRuleGroup } from '../../../types'
6
- import { AbstractMemory, type ComputeCtx, type CtxElement, type MutableState, type StageExpression } from '../../memory'
6
+ import { type ComputeCtx, type CtxElement, type MutableState, type StageExpression, AbstractMemory } from '../../memory'
7
7
  import { NodesGroup } from './NodeGroup'
8
8
  import { ActiveGroupStageExclude, StageExclude } from './stage-exclude'
9
9
  import { ActiveGroupStageInclude, StageInclude } from './stage-include'
@@ -1,4 +1,4 @@
1
- import DefaultMap from 'mnemonist/default-map'
1
+ import { DefaultMap } from 'mnemonist'
2
2
  import { Connection } from '../../model'
3
3
  import { isAncestor, sortParentsFirst } from '../../utils'
4
4
  import { toArray } from '../../utils/iterable'
@@ -1,5 +1,5 @@
1
1
  import dagre, { type EdgeConfig, type GraphLabel } from '@dagrejs/dagre'
2
- import DefaultMap from 'mnemonist/default-map'
2
+ import { DefaultMap } from 'mnemonist'
3
3
  import { concat, filter, forEachObj, groupBy, map, mapToObj, pipe, prop, reduce, tap } from 'remeda'
4
4
  import { invariant } from '../../errors'
5
5
  import type { ElementModel } from '../../model/ElementModel'