@likec4/core 1.40.0 → 1.42.0

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 (257) hide show
  1. package/builder/package.json +4 -0
  2. package/compute-view/package.json +4 -0
  3. package/compute-view/relationships/package.json +4 -0
  4. package/dist/builder/index.d.mts +83 -20
  5. package/dist/builder/index.mjs +210 -126
  6. package/dist/compute-view/index.d.mts +8 -7
  7. package/dist/compute-view/index.mjs +14 -11
  8. package/dist/compute-view/relationships-view/index.d.mts +9 -8
  9. package/dist/compute-view/relationships-view/index.mjs +6 -6
  10. package/dist/index.d.mts +7 -7
  11. package/dist/index.mjs +12 -12
  12. package/dist/model/connection/deployment/index.d.mts +11 -10
  13. package/dist/model/connection/deployment/index.mjs +2 -2
  14. package/dist/model/connection/index.d.mts +12 -11
  15. package/dist/model/connection/index.mjs +3 -3
  16. package/dist/model/connection/model/index.d.mts +11 -10
  17. package/dist/model/connection/model/index.mjs +2 -2
  18. package/dist/model/index.d.mts +14 -14
  19. package/dist/model/index.mjs +4 -5
  20. package/dist/shared/{core.DHQ32OHa.mjs → core.01VTr9qu.mjs} +10 -29
  21. package/dist/shared/core.1vX5a9AY.mjs +86 -0
  22. package/dist/shared/{core.BVNaR17u.mjs → core.B7KhhkRY.mjs} +1 -1
  23. package/dist/shared/core.B85MJLTf.mjs +5 -0
  24. package/dist/shared/{core.BIAlzwKc.mjs → core.BIqHjQiH.mjs} +85 -45
  25. package/dist/shared/core.BKlholso.mjs +3 -0
  26. package/dist/shared/core.BR4zXDH-.mjs +13 -0
  27. package/dist/shared/{core.yHe79zEl.mjs → core.BYNkXQ8A.mjs} +21 -12
  28. package/dist/shared/core.BazD6cot.mjs +14 -0
  29. package/dist/shared/{core.BuoXfSMj.mjs → core.BbE4y-yl.mjs} +1 -1
  30. package/dist/shared/core.BoYfZOBm.mjs +3 -0
  31. package/dist/shared/core.BsSXS-_R.mjs +7 -0
  32. package/dist/shared/{core.T-eLZTW_.mjs → core.BzTakU3I.mjs} +15 -7
  33. package/dist/shared/{core.4u1dVmfX.mjs → core.C2TiyjI6.mjs} +2 -2
  34. package/dist/shared/{core.DLpidoWc.mjs → core.C3JowhaZ.mjs} +3 -3
  35. package/dist/shared/{core.CNGyqkJh.mjs → core.C4x8aaWa.mjs} +3 -1
  36. package/dist/shared/{core.BB6zA-UU.mjs → core.C8YY6Uub.mjs} +38 -9
  37. package/dist/shared/{core.FPITT8Vx.mjs → core.C8sl5Y8Z.mjs} +144 -61
  38. package/dist/shared/{core.DuR3R-xJ.mjs → core.CNgZvKb8.mjs} +3 -5176
  39. package/dist/shared/{core.BbThmf6M.d.mts → core.CQngdcuj.d.mts} +85 -4
  40. package/dist/shared/{core.Be1n9a0i.mjs → core.C_Ni6yHl.mjs} +5 -4
  41. package/dist/shared/core.CbT8JVYL.mjs +5 -0
  42. package/dist/shared/core.CqAJJpK_.mjs +3 -0
  43. package/dist/shared/{core.CySf-2gP.d.mts → core.D0PjZzIS.d.mts} +52 -15
  44. package/dist/shared/{core.DrvfVXkh.d.mts → core.D5fzJWbF.d.mts} +11 -2
  45. package/dist/shared/{core.DrVOJuxX.d.mts → core.DACpKp35.d.mts} +5 -5
  46. package/dist/shared/core.DFi2dOTl.mjs +39548 -0
  47. package/dist/shared/{core.D704WZES.d.mts → core.DIol3syK.d.mts} +2 -2
  48. package/dist/shared/{core.DlG1xWt2.mjs → core.DMMOWQqc.mjs} +3 -2
  49. package/dist/shared/core.DNbUPnve.mjs +3990 -0
  50. package/dist/shared/{core.CCD1ID81.mjs → core.DRJma0Ol.mjs} +4 -3
  51. package/dist/shared/{core.DgttqsJc.mjs → core.DRhg-gVU.mjs} +9 -9
  52. package/dist/shared/core.DSO_rTC2.mjs +5322 -0
  53. package/dist/shared/{core.vWJTxpLV.d.mts → core.D_vkffV4.d.mts} +4 -2
  54. package/dist/shared/core.DdMJk7nx.d.mts +476 -0
  55. package/dist/shared/{core.D_fI5Lf6.d.mts → core.Dgs6-nuz.d.mts} +24 -4
  56. package/dist/shared/{core.Be4Jy9Qx.mjs → core.FZ305VYd.mjs} +2 -2
  57. package/dist/shared/core.OHD4KXm9.mjs +5 -0
  58. package/dist/shared/{core.GTgsmXS_.mjs → core.QJD_fcrc.mjs} +2 -2
  59. package/dist/shared/core.RfnaEmgA.mjs +7 -0
  60. package/dist/shared/core.fHR_8Tnq.d.mts +450 -0
  61. package/dist/shared/{core.D0EgVMQK.mjs → core.lRvxPoao.mjs} +14 -12
  62. package/dist/shared/{core.CaT0SUUK.mjs → core.rCeaAqgW.mjs} +1 -84
  63. package/dist/shared/{core.kxeJe0OY.d.mts → core.s9uwOt60.d.mts} +4 -4
  64. package/dist/shared/core.yna0OdV5.d.mts +98 -0
  65. package/dist/styles/index.d.mts +106 -0
  66. package/dist/styles/index.mjs +1 -0
  67. package/dist/types/_aux.d.mts +2 -2
  68. package/dist/types/_aux.mjs +1 -5
  69. package/dist/types/expression-model.d.mts +3 -4
  70. package/dist/types/expression.d.mts +3 -4
  71. package/dist/types/fqnRef.d.mts +2 -2
  72. package/dist/types/fqnRef.mjs +3 -3
  73. package/dist/types/index.d.mts +8 -8
  74. package/dist/types/index.mjs +151 -6
  75. package/dist/types/scalar.mjs +3 -2
  76. package/dist/utils/graphology/index.d.mts +1864 -0
  77. package/dist/utils/graphology/index.mjs +1 -0
  78. package/dist/utils/index.d.mts +11 -6
  79. package/dist/utils/index.mjs +21 -37
  80. package/dist/utils/iterable/index.d.mts +1 -1
  81. package/dist/utils/iterable/index.mjs +45 -7
  82. package/model/package.json +4 -0
  83. package/package.json +42 -24
  84. package/styles/package.json +4 -0
  85. package/types/package.json +4 -0
  86. package/utils/graphology/package.json +4 -0
  87. package/utils/package.json +4 -0
  88. package/dist/shared/core.6_Vp2iiN.mjs +0 -172
  89. package/dist/shared/core.Bpou6c2f.d.mts +0 -850
  90. package/dist/shared/core.CUw_2J9j.mjs +0 -47
  91. package/dist/shared/core.CzdwsPmY.d.mts +0 -69
  92. package/dist/shared/core.DoM6aM9N.mjs +0 -7
  93. package/dist/shared/core.ILwny7BV.mjs +0 -38
  94. package/dist/theme/index.d.mts +0 -11
  95. package/dist/theme/index.mjs +0 -232
  96. package/src/builder/Builder.deployment.ts +0 -224
  97. package/src/builder/Builder.deploymentModel.ts +0 -449
  98. package/src/builder/Builder.element.ts +0 -241
  99. package/src/builder/Builder.model.ts +0 -494
  100. package/src/builder/Builder.ts +0 -870
  101. package/src/builder/Builder.view-common.ts +0 -273
  102. package/src/builder/Builder.view-deployment.ts +0 -135
  103. package/src/builder/Builder.view-element.ts +0 -202
  104. package/src/builder/Builder.views.ts +0 -399
  105. package/src/builder/Builder.with.ts +0 -156
  106. package/src/builder/_types.ts +0 -320
  107. package/src/builder/index.ts +0 -11
  108. package/src/compute-view/compute-view.ts +0 -80
  109. package/src/compute-view/deployment-view/_types.ts +0 -38
  110. package/src/compute-view/deployment-view/clean-connections.ts +0 -236
  111. package/src/compute-view/deployment-view/compute.ts +0 -94
  112. package/src/compute-view/deployment-view/memory/index.ts +0 -9
  113. package/src/compute-view/deployment-view/memory/memory.ts +0 -96
  114. package/src/compute-view/deployment-view/predicates/deploymentRefs-where.ts +0 -18
  115. package/src/compute-view/deployment-view/predicates/deploymentRefs.ts +0 -154
  116. package/src/compute-view/deployment-view/predicates/index.ts +0 -8
  117. package/src/compute-view/deployment-view/predicates/relation-direct.ts +0 -243
  118. package/src/compute-view/deployment-view/predicates/relation-in-out.ts +0 -70
  119. package/src/compute-view/deployment-view/predicates/relation-incoming.ts +0 -101
  120. package/src/compute-view/deployment-view/predicates/relation-outgoing.ts +0 -95
  121. package/src/compute-view/deployment-view/predicates/relation-where.ts +0 -18
  122. package/src/compute-view/deployment-view/predicates/utils.ts +0 -282
  123. package/src/compute-view/deployment-view/predicates/wildcard.ts +0 -41
  124. package/src/compute-view/deployment-view/stages/stage-exclude.ts +0 -5
  125. package/src/compute-view/deployment-view/stages/stage-final.ts +0 -245
  126. package/src/compute-view/deployment-view/stages/stage-include.ts +0 -95
  127. package/src/compute-view/deployment-view/utils.ts +0 -286
  128. package/src/compute-view/dynamic-view/compute.ts +0 -312
  129. package/src/compute-view/element-view/_types.ts +0 -47
  130. package/src/compute-view/element-view/clean-connections.ts +0 -117
  131. package/src/compute-view/element-view/compute.ts +0 -324
  132. package/src/compute-view/element-view/memory/NodeGroup.ts +0 -31
  133. package/src/compute-view/element-view/memory/index.ts +0 -10
  134. package/src/compute-view/element-view/memory/memory.ts +0 -178
  135. package/src/compute-view/element-view/memory/stage-exclude.ts +0 -59
  136. package/src/compute-view/element-view/memory/stage-final.ts +0 -129
  137. package/src/compute-view/element-view/memory/stage-include.ts +0 -130
  138. package/src/compute-view/element-view/predicates/_utils.ts +0 -91
  139. package/src/compute-view/element-view/predicates/element-expand.ts +0 -29
  140. package/src/compute-view/element-view/predicates/element-kind-tag.ts +0 -27
  141. package/src/compute-view/element-view/predicates/element-ref.ts +0 -24
  142. package/src/compute-view/element-view/predicates/relation-direct.ts +0 -321
  143. package/src/compute-view/element-view/predicates/relation-in-out.ts +0 -64
  144. package/src/compute-view/element-view/predicates/relation-in.ts +0 -115
  145. package/src/compute-view/element-view/predicates/relation-out.ts +0 -119
  146. package/src/compute-view/element-view/predicates/wildcard.ts +0 -88
  147. package/src/compute-view/element-view/utils.ts +0 -65
  148. package/src/compute-view/index.ts +0 -4
  149. package/src/compute-view/memory/AbstractMemory.ts +0 -45
  150. package/src/compute-view/memory/AbstractStageExclude.ts +0 -215
  151. package/src/compute-view/memory/AbstractStageInclude.ts +0 -200
  152. package/src/compute-view/memory/_types.ts +0 -148
  153. package/src/compute-view/memory/index.ts +0 -5
  154. package/src/compute-view/memory/ops.ts +0 -43
  155. package/src/compute-view/relationships-view/_types.ts +0 -16
  156. package/src/compute-view/relationships-view/compute.ts +0 -159
  157. package/src/compute-view/relationships-view/index.ts +0 -3
  158. package/src/compute-view/relationships-view/layout.ts +0 -357
  159. package/src/compute-view/relationships-view/utils.ts +0 -73
  160. package/src/compute-view/utils/ancestorsOfNode.ts +0 -19
  161. package/src/compute-view/utils/applyCustomElementProperties.ts +0 -107
  162. package/src/compute-view/utils/applyCustomRelationProperties.ts +0 -58
  163. package/src/compute-view/utils/applyViewRuleStyles.ts +0 -73
  164. package/src/compute-view/utils/buildComputedNodes.ts +0 -153
  165. package/src/compute-view/utils/buildElementNotations.ts +0 -63
  166. package/src/compute-view/utils/elementExpressionToPredicate.ts +0 -50
  167. package/src/compute-view/utils/link-nodes-with-edges.ts +0 -56
  168. package/src/compute-view/utils/merge-props-from-relationships.ts +0 -161
  169. package/src/compute-view/utils/relationExpressionToPredicates.ts +0 -55
  170. package/src/compute-view/utils/resolve-extended-views.ts +0 -85
  171. package/src/compute-view/utils/resolve-global-rules.ts +0 -88
  172. package/src/compute-view/utils/topological-sort.ts +0 -256
  173. package/src/compute-view/utils/view-hash.ts +0 -45
  174. package/src/compute-view/utils/with-readable-edges.ts +0 -40
  175. package/src/index.ts +0 -32
  176. package/src/model/DeploymentElementModel.ts +0 -682
  177. package/src/model/DeploymentModel.ts +0 -393
  178. package/src/model/ElementModel.ts +0 -293
  179. package/src/model/LikeC4Model.ts +0 -882
  180. package/src/model/RelationModel.ts +0 -152
  181. package/src/model/connection/Connection.ts +0 -72
  182. package/src/model/connection/deployment/DeploymentConnectionModel.ts +0 -185
  183. package/src/model/connection/deployment/find.ts +0 -120
  184. package/src/model/connection/deployment/index.ts +0 -8
  185. package/src/model/connection/index.ts +0 -22
  186. package/src/model/connection/model/ConnectionModel.ts +0 -158
  187. package/src/model/connection/model/find.ts +0 -117
  188. package/src/model/connection/model/index.ts +0 -8
  189. package/src/model/connection/ops.ts +0 -276
  190. package/src/model/guards.ts +0 -77
  191. package/src/model/index.ts +0 -72
  192. package/src/model/types.ts +0 -67
  193. package/src/model/utils.ts +0 -66
  194. package/src/model/view/EdgeModel.ts +0 -120
  195. package/src/model/view/LikeC4ViewModel.ts +0 -361
  196. package/src/model/view/LikeC4ViewsFolder.ts +0 -151
  197. package/src/model/view/NodeModel.ts +0 -247
  198. package/src/theme/element.ts +0 -61
  199. package/src/theme/index.ts +0 -127
  200. package/src/theme/relationships.ts +0 -54
  201. package/src/types/RichText.ts +0 -206
  202. package/src/types/_aux.ts +0 -291
  203. package/src/types/_common.ts +0 -80
  204. package/src/types/const.ts +0 -34
  205. package/src/types/expression-model.ts +0 -294
  206. package/src/types/expression.ts +0 -313
  207. package/src/types/fqnRef.ts +0 -91
  208. package/src/types/geometry.ts +0 -159
  209. package/src/types/global.ts +0 -21
  210. package/src/types/index.ts +0 -42
  211. package/src/types/model-data.ts +0 -77
  212. package/src/types/model-deployment.ts +0 -88
  213. package/src/types/model-dump.ts +0 -79
  214. package/src/types/model-logical.ts +0 -135
  215. package/src/types/model-spec.ts +0 -85
  216. package/src/types/operators.ts +0 -156
  217. package/src/types/project.ts +0 -14
  218. package/src/types/scalar.ts +0 -162
  219. package/src/types/styles.ts +0 -122
  220. package/src/types/view-changes.ts +0 -32
  221. package/src/types/view-common.ts +0 -157
  222. package/src/types/view-computed.ts +0 -118
  223. package/src/types/view-layouted.ts +0 -98
  224. package/src/types/view-parsed.deployment.ts +0 -39
  225. package/src/types/view-parsed.dynamic.ts +0 -89
  226. package/src/types/view-parsed.element.ts +0 -65
  227. package/src/types/view.ts +0 -113
  228. package/src/utils/common-head.ts +0 -22
  229. package/src/utils/compare-natural.ts +0 -60
  230. package/src/utils/const.ts +0 -1
  231. package/src/utils/fqn.ts +0 -302
  232. package/src/utils/getOrCreate.ts +0 -8
  233. package/src/utils/guards.ts +0 -9
  234. package/src/utils/index.ts +0 -68
  235. package/src/utils/invariant.ts +0 -29
  236. package/src/utils/iterable/_types.ts +0 -5
  237. package/src/utils/iterable/filter.ts +0 -55
  238. package/src/utils/iterable/find.ts +0 -38
  239. package/src/utils/iterable/first.ts +0 -48
  240. package/src/utils/iterable/flat.ts +0 -17
  241. package/src/utils/iterable/head.ts +0 -22
  242. package/src/utils/iterable/index.ts +0 -15
  243. package/src/utils/iterable/map.ts +0 -40
  244. package/src/utils/iterable/reduce.ts +0 -24
  245. package/src/utils/iterable/some.ts +0 -36
  246. package/src/utils/iterable/to.ts +0 -19
  247. package/src/utils/iterable/unique.ts +0 -23
  248. package/src/utils/markdown/index.ts +0 -2
  249. package/src/utils/markdown/to-html.ts +0 -32
  250. package/src/utils/markdown/to-text.ts +0 -14
  251. package/src/utils/memoize-prop.ts +0 -30
  252. package/src/utils/mnemonist.ts +0 -9
  253. package/src/utils/object-hash.ts +0 -14
  254. package/src/utils/promises.ts +0 -24
  255. package/src/utils/relations.ts +0 -36
  256. package/src/utils/set.ts +0 -83
  257. package/src/utils/string-hash.ts +0 -16
@@ -1,47 +0,0 @@
1
- import rehypeRaw from 'rehype-raw';
2
- import rehypeSanitize from 'rehype-sanitize';
3
- import rehypeStringify from 'rehype-stringify';
4
- import remarkGfm from 'remark-gfm';
5
- import remarkParse from 'remark-parse';
6
- import remarkRehype from 'remark-rehype';
7
- import { unified } from 'unified';
8
- import { fromMarkdown } from 'mdast-util-from-markdown';
9
- import { toString } from 'mdast-util-to-string';
10
-
11
- function memoizeProp(obj, tag, fn) {
12
- const tagSymbol = typeof tag === "symbol" ? tag : Symbol.for(tag);
13
- if (!obj.hasOwnProperty(tagSymbol)) {
14
- Object.defineProperty(obj, tagSymbol, {
15
- enumerable: false,
16
- writable: false,
17
- value: fn()
18
- });
19
- }
20
- return obj[tagSymbol];
21
- }
22
-
23
- function remark() {
24
- return unified().use(remarkParse).use(remarkGfm).use(remarkRehype, {
25
- // Tight paragraphs prevent extra newlines
26
- allowDangerousHtml: true,
27
- clobberPrefix: "",
28
- tableCellPadding: false,
29
- tight: true
30
- }).use(rehypeRaw).use(rehypeSanitize).use(rehypeStringify, {
31
- // Prevent extra closing newlines
32
- closeSelfClosing: true,
33
- tightSelfClosing: true
34
- });
35
- }
36
- function markdownToHtml(markdown) {
37
- return String(remark().processSync(markdown.trim())).trim();
38
- }
39
-
40
- function markdownToText(markdown) {
41
- return toString(fromMarkdown(markdown), {
42
- includeHtml: false,
43
- includeImageAlt: false
44
- });
45
- }
46
-
47
- export { markdownToText as a, markdownToHtml as b, memoizeProp as m };
@@ -1,69 +0,0 @@
1
- import { TupleToUnion, Tagged } from 'type-fest';
2
-
3
- /**
4
- * For padding, margin, etc.
5
- */
6
- type SpacingSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
7
- type TextSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
8
- type ShapeSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
9
- declare const BorderStyles: readonly ["solid", "dashed", "dotted", "none"];
10
- type BorderStyle = TupleToUnion<typeof BorderStyles>;
11
- declare const ElementShapes: readonly ["rectangle", "person", "browser", "mobile", "cylinder", "storage", "queue"];
12
- type ElementShape = TupleToUnion<typeof ElementShapes>;
13
- type HexColor = `#${string}`;
14
- type ColorLiteral = HexColor | `rgb(${number},${number},${number})` | `rgba(${number},${number},${number},${number})`;
15
- type CustomColor<T = string> = Tagged<T, 'CustomColor'>;
16
- type CustomColorDefinitions = {
17
- [key: string]: ThemeColorValues;
18
- };
19
- type RelationshipLineType = 'dashed' | 'solid' | 'dotted';
20
- type RelationshipArrowType = 'none' | 'normal' | 'onormal' | 'dot' | 'odot' | 'diamond' | 'odiamond' | 'crow' | 'open' | 'vee';
21
- declare const ThemeColors: readonly ["amber", "blue", "gray", "slate", "green", "indigo", "muted", "primary", "red", "secondary", "sky"];
22
- type ThemeColor = typeof ThemeColors[number];
23
- /**
24
- * Backward compatibility alias
25
- * @deprecated Use {@link ThemeColor} instead
26
- */
27
- type Color = ThemeColor | ColorLiteral;
28
- declare function isThemeColor(color: string): color is ThemeColor;
29
- interface ElementThemeColorValues {
30
- fill: ColorLiteral;
31
- stroke: ColorLiteral;
32
- hiContrast: ColorLiteral;
33
- loContrast: ColorLiteral;
34
- }
35
- type ElementThemeColors = {
36
- [key in ThemeColor]: ElementThemeColorValues;
37
- };
38
- interface RelationshipThemeColorValues {
39
- lineColor: ColorLiteral;
40
- labelBgColor: ColorLiteral;
41
- labelColor: ColorLiteral;
42
- }
43
- interface ThemeColorValues {
44
- elements: ElementThemeColorValues;
45
- relationships: RelationshipThemeColorValues;
46
- }
47
- type RelationshipThemeColors = {
48
- [key in ThemeColor]: RelationshipThemeColorValues;
49
- };
50
- interface LikeC4Theme {
51
- font: 'Arial';
52
- shadow: ColorLiteral;
53
- relationships: RelationshipThemeColors;
54
- elements: ElementThemeColors;
55
- sizes: {
56
- [key in ShapeSize]: {
57
- width: number;
58
- height: number;
59
- };
60
- };
61
- spacing: {
62
- [key in SpacingSize]: number;
63
- };
64
- textSizes: {
65
- [key in TextSize]: number;
66
- };
67
- }
68
-
69
- export { BorderStyles as B, type ColorLiteral as C, ElementShapes as E, type HexColor as H, type LikeC4Theme as L, type RelationshipLineType as R, type SpacingSize as S, type TextSize as T, type ShapeSize as a, type BorderStyle as b, type ElementShape as c, type CustomColor as d, type CustomColorDefinitions as e, type RelationshipArrowType as f, ThemeColors as g, type ThemeColor as h, type Color as i, isThemeColor as j, type ElementThemeColorValues as k, type ElementThemeColors as l, type RelationshipThemeColorValues as m, type ThemeColorValues as n, type RelationshipThemeColors as o };
@@ -1,7 +0,0 @@
1
- import { isNonNullish } from 'remeda';
2
-
3
- function isIterable(something) {
4
- return isNonNullish(something) && typeof something === "object" && Symbol.iterator in something;
5
- }
6
-
7
- export { isIterable as i };
@@ -1,38 +0,0 @@
1
- import { i as invariant } from './core.D4npX2q8.mjs';
2
- import { isDefined, isFunction } from 'remeda';
3
-
4
- function ifirst(arg1, arg2) {
5
- const count = arg2 ?? arg1;
6
- invariant(typeof count === "number" && count >= 0, "Count must be a non-negative number");
7
- function* _first(iter) {
8
- let taken = 0;
9
- for (const value of iter) {
10
- if (taken >= count) {
11
- break;
12
- }
13
- yield value;
14
- taken++;
15
- }
16
- return;
17
- }
18
- if (arg2 === void 0) {
19
- return (iterable) => _first(iterable);
20
- }
21
- return _first(arg1);
22
- }
23
-
24
- function ireduce(arg1, arg2, arg3) {
25
- const reducer = isDefined(arg3) ? arg2 : arg1;
26
- const initialValue = arg3 ?? arg2;
27
- invariant(isFunction(reducer));
28
- function _reduce(iter) {
29
- let acc = initialValue;
30
- for (const value of iter) {
31
- acc = reducer(acc, value);
32
- }
33
- return acc;
34
- }
35
- return isDefined(arg3) ? _reduce(arg1) : _reduce;
36
- }
37
-
38
- export { ireduce as a, ifirst as i };
@@ -1,11 +0,0 @@
1
- import { l as ElementThemeColors, o as RelationshipThemeColors, C as ColorLiteral, n as ThemeColorValues, L as LikeC4Theme } from '../shared/core.CzdwsPmY.mjs';
2
- import 'type-fest';
3
-
4
- declare const ElementColors: ElementThemeColors;
5
-
6
- declare const RelationshipColors: RelationshipThemeColors;
7
-
8
- declare const defaultTheme: LikeC4Theme;
9
- declare function computeColorValues(color: ColorLiteral): ThemeColorValues;
10
-
11
- export { ElementColors, RelationshipColors, computeColorValues, defaultTheme };
@@ -1,232 +0,0 @@
1
- import { generateColors } from '@mantine/colors-generator';
2
- import chroma from 'chroma-js';
3
- import { isDeepEqual } from 'remeda';
4
-
5
- const blue$1 = {
6
- fill: "#3b82f6",
7
- stroke: "#2563eb",
8
- hiContrast: "#eff6ff",
9
- loContrast: "#bfdbfe"
10
- };
11
- const sky$1 = {
12
- fill: "#0284c7",
13
- stroke: "#0369a1",
14
- hiContrast: "#f0f9ff",
15
- loContrast: "#B6ECF7"
16
- };
17
- const slate$1 = {
18
- fill: "#64748b",
19
- stroke: "#475569",
20
- hiContrast: "#f8fafc",
21
- loContrast: "#cbd5e1"
22
- };
23
- const ElementColors = {
24
- primary: blue$1,
25
- blue: blue$1,
26
- secondary: sky$1,
27
- sky: sky$1,
28
- muted: slate$1,
29
- slate: slate$1,
30
- gray: {
31
- fill: "#737373",
32
- stroke: "#525252",
33
- hiContrast: "#fafafa",
34
- loContrast: "#d4d4d4"
35
- },
36
- red: {
37
- fill: "#AC4D39",
38
- stroke: "#853A2D",
39
- hiContrast: "#FBD3CB",
40
- loContrast: "#f5b2a3"
41
- },
42
- green: {
43
- fill: "#428a4f",
44
- stroke: "#2d5d39",
45
- hiContrast: "#f8fafc",
46
- loContrast: "#c2f0c2"
47
- },
48
- amber: {
49
- fill: "#A35829",
50
- stroke: "#7E451D",
51
- hiContrast: "#FFE0C2",
52
- loContrast: "#f9b27c"
53
- },
54
- indigo: {
55
- fill: "#6366f1",
56
- stroke: "#4f46e5",
57
- hiContrast: "#eef2ff",
58
- loContrast: "#c7d2fe"
59
- }
60
- };
61
-
62
- const gray = {
63
- lineColor: "#6E6E6E",
64
- labelBgColor: "#18191b",
65
- labelColor: "#C6C6C6"
66
- };
67
- const slate = {
68
- lineColor: "#64748b",
69
- // 500
70
- labelBgColor: "#0f172a",
71
- // 900
72
- labelColor: "#cbd5e1"
73
- // 300
74
- };
75
- const blue = {
76
- lineColor: "#3b82f6",
77
- // 500
78
- labelBgColor: "#172554",
79
- // 950
80
- labelColor: "#60a5fa"
81
- // 400
82
- };
83
- const sky = {
84
- lineColor: "#0ea5e9",
85
- // 500
86
- labelBgColor: "#082f49",
87
- // 950
88
- labelColor: "#38bdf8"
89
- // 400
90
- };
91
- const RelationshipColors = {
92
- amber: {
93
- lineColor: "#b45309",
94
- labelBgColor: "#78350f",
95
- labelColor: "#FFE0C2"
96
- },
97
- blue,
98
- gray,
99
- green: {
100
- lineColor: "#15803d",
101
- // 700
102
- labelBgColor: "#052e16",
103
- // 950
104
- labelColor: "#22c55e"
105
- // 500
106
- },
107
- indigo: {
108
- lineColor: "#6366f1",
109
- // 500
110
- labelBgColor: "#1e1b4b",
111
- // 950
112
- labelColor: "#818cf8"
113
- // 400
114
- },
115
- muted: slate,
116
- primary: blue,
117
- red: {
118
- lineColor: "#AC4D39",
119
- labelBgColor: "#b91c1c",
120
- labelColor: "#f5b2a3"
121
- },
122
- secondary: sky,
123
- sky,
124
- slate
125
- };
126
-
127
- const CONTRAST_MIN_WITH_FOREGROUND = 60;
128
- const CONTRAST_START_TONE_DIFFERENCE = 2;
129
- const CONTRAST_STEP_TONE_DIFFERENCE = 1;
130
- const defaultTheme = {
131
- elements: ElementColors,
132
- relationships: RelationshipColors,
133
- font: "Arial",
134
- shadow: "#0a0a0a",
135
- sizes: {
136
- xs: {
137
- width: 180,
138
- height: 100
139
- },
140
- sm: {
141
- width: 240,
142
- height: 135
143
- },
144
- md: {
145
- width: 320,
146
- height: 180
147
- },
148
- lg: {
149
- width: 420,
150
- height: 234
151
- },
152
- xl: {
153
- width: 520,
154
- height: 290
155
- }
156
- },
157
- spacing: {
158
- xs: 8,
159
- // 0.5rem
160
- sm: 10,
161
- // 0.625rem
162
- md: 16,
163
- // 1rem
164
- lg: 24,
165
- // 1.5rem = 16px + 8px
166
- xl: 32
167
- // 2rem
168
- },
169
- /**
170
- * Text sizes for titles
171
- * https://typescale.com/
172
- *
173
- * Scale: 1.2
174
- * Base: 16px
175
- */
176
- textSizes: {
177
- xs: 13.33,
178
- sm: 16,
179
- md: 19.2,
180
- lg: 23.04,
181
- xl: 27.65
182
- }
183
- };
184
- function computeColorValues(color) {
185
- if (color.match(/^#([0-9a-f]{3}){1,2}$/i)) {
186
- const colors = generateColors(color);
187
- const fillColor = colors[6];
188
- const contrastedColors = getContrastedColorsAPCA(fillColor);
189
- return {
190
- elements: {
191
- fill: fillColor,
192
- stroke: colors[7],
193
- hiContrast: contrastedColors[0],
194
- loContrast: contrastedColors[1]
195
- },
196
- relationships: {
197
- lineColor: colors[4],
198
- labelColor: colors[3],
199
- labelBgColor: colors[9]
200
- }
201
- };
202
- } else {
203
- return {
204
- elements: defaultTheme.elements["primary"],
205
- relationships: defaultTheme.relationships["primary"]
206
- };
207
- }
208
- }
209
- function getContrastedColorsAPCA(refColor) {
210
- const refColorChroma = chroma(refColor);
211
- let lightColorRgb = refColorChroma.brighten(CONTRAST_START_TONE_DIFFERENCE);
212
- let darkColorRgb = refColorChroma.darken(CONTRAST_START_TONE_DIFFERENCE);
213
- let previousLight;
214
- let previousDark;
215
- let contrastWithLight;
216
- let contrastWithDark;
217
- do {
218
- previousLight = lightColorRgb;
219
- previousDark = darkColorRgb;
220
- lightColorRgb = lightColorRgb.brighten(CONTRAST_STEP_TONE_DIFFERENCE);
221
- darkColorRgb = darkColorRgb.darken(CONTRAST_STEP_TONE_DIFFERENCE);
222
- contrastWithLight = chroma.contrastAPCA(refColorChroma, lightColorRgb);
223
- contrastWithDark = chroma.contrastAPCA(refColorChroma, darkColorRgb);
224
- } while (Math.abs(contrastWithLight) < CONTRAST_MIN_WITH_FOREGROUND && Math.abs(contrastWithDark) < CONTRAST_MIN_WITH_FOREGROUND && (!isDeepEqual(lightColorRgb, previousLight) || !isDeepEqual(darkColorRgb, previousDark)));
225
- if (Math.abs(contrastWithLight) > Math.abs(contrastWithDark)) {
226
- return [lightColorRgb.brighten(0.4).hex(), lightColorRgb.hex()];
227
- } else {
228
- return [darkColorRgb.darken(0.4).hex(), darkColorRgb.hex()];
229
- }
230
- }
231
-
232
- export { ElementColors, RelationshipColors, computeColorValues, defaultTheme };
@@ -1,224 +0,0 @@
1
- import type { AnyTypes, Types, TypesNested } from './_types'
2
- import type { DeploymentModelBuilder } from './Builder.deploymentModel'
3
- import type { ModelBuilder } from './Builder.model'
4
-
5
- type ToNested<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, infer F>
6
- ? TypesNested<
7
- `${P}.${Id}`,
8
- T['ElementKind'],
9
- T['Fqn'],
10
- T['ViewId'],
11
- T['RelationshipKind'],
12
- T['Tag'],
13
- T['MetadataKey'],
14
- T['DeploymentKind'],
15
- `${P}.${Id}` | F
16
- >
17
- : T extends AnyTypes ? TypesNested<
18
- Id,
19
- T['ElementKind'],
20
- T['Fqn'],
21
- T['ViewId'],
22
- T['RelationshipKind'],
23
- T['Tag'],
24
- T['MetadataKey'],
25
- T['DeploymentKind'],
26
- Id | T['DeploymentFqn']
27
- >
28
- : never
29
-
30
- type FromNested<T extends AnyTypes, N> = N extends TypesNested<any, any, any, any, any, any, any, any, infer F>
31
- ? T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<
32
- P,
33
- T['ElementKind'],
34
- T['Fqn'],
35
- T['ViewId'],
36
- T['RelationshipKind'],
37
- T['Tag'],
38
- T['MetadataKey'],
39
- T['DeploymentKind'],
40
- F
41
- >
42
- : T extends AnyTypes ? Types<
43
- T['ElementKind'],
44
- T['Fqn'],
45
- T['ViewId'],
46
- T['RelationshipKind'],
47
- T['Tag'],
48
- T['MetadataKey'],
49
- T['DeploymentKind'],
50
- F
51
- >
52
- : never
53
- : never
54
-
55
- /**
56
- * Chainable builder to create deployment node
57
- */
58
- export interface AddDeploymentNode<Id extends string> {
59
- <T extends AnyTypes>(builder: DeploymentModelBuilder<T>): DeploymentModelBuilder<Types.AddDeploymentFqn<T, Id>>
60
-
61
- with<T extends AnyTypes>(): (
62
- builder: DeploymentModelBuilder<T>,
63
- ) => DeploymentModelBuilder<Types.AddDeploymentFqn<T, Id>>
64
-
65
- with<
66
- T extends AnyTypes,
67
- A extends AnyTypes,
68
- >(
69
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
70
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, A>>
71
-
72
- with<
73
- T extends AnyTypes,
74
- A extends AnyTypes,
75
- B extends AnyTypes,
76
- >(
77
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
78
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
79
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, B>>
80
-
81
- with<
82
- T extends AnyTypes,
83
- A extends AnyTypes,
84
- B extends AnyTypes,
85
- C extends AnyTypes,
86
- >(
87
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
88
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
89
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
90
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, C>>
91
-
92
- with<
93
- T extends AnyTypes,
94
- A extends AnyTypes,
95
- B extends AnyTypes,
96
- C extends AnyTypes,
97
- D extends AnyTypes,
98
- >(
99
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
100
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
101
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
102
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
103
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, D>>
104
-
105
- with<
106
- T extends AnyTypes,
107
- A extends AnyTypes,
108
- B extends AnyTypes,
109
- C extends AnyTypes,
110
- D extends AnyTypes,
111
- E extends AnyTypes,
112
- >(
113
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
114
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
115
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
116
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
117
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
118
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, E>>
119
-
120
- with<
121
- T extends AnyTypes,
122
- A extends AnyTypes,
123
- B extends AnyTypes,
124
- C extends AnyTypes,
125
- D extends AnyTypes,
126
- E extends AnyTypes,
127
- F extends AnyTypes,
128
- >(
129
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
130
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
131
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
132
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
133
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
134
- op6: (input: DeploymentModelBuilder<E>) => DeploymentModelBuilder<F>,
135
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, F>>
136
-
137
- with<
138
- T extends AnyTypes,
139
- A extends AnyTypes,
140
- B extends AnyTypes,
141
- C extends AnyTypes,
142
- D extends AnyTypes,
143
- E extends AnyTypes,
144
- F extends AnyTypes,
145
- G extends AnyTypes,
146
- >(
147
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
148
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
149
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
150
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
151
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
152
- op6: (input: DeploymentModelBuilder<E>) => DeploymentModelBuilder<F>,
153
- op7: (input: DeploymentModelBuilder<F>) => DeploymentModelBuilder<G>,
154
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, G>>
155
-
156
- with<
157
- T extends AnyTypes,
158
- A extends AnyTypes,
159
- B extends AnyTypes,
160
- C extends AnyTypes,
161
- D extends AnyTypes,
162
- E extends AnyTypes,
163
- F extends AnyTypes,
164
- G extends AnyTypes,
165
- H extends AnyTypes,
166
- >(
167
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
168
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
169
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
170
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
171
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
172
- op6: (input: DeploymentModelBuilder<E>) => DeploymentModelBuilder<F>,
173
- op7: (input: DeploymentModelBuilder<F>) => DeploymentModelBuilder<G>,
174
- op8: (input: DeploymentModelBuilder<G>) => DeploymentModelBuilder<H>,
175
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, H>>
176
-
177
- with<
178
- T extends AnyTypes,
179
- A extends AnyTypes,
180
- B extends AnyTypes,
181
- C extends AnyTypes,
182
- D extends AnyTypes,
183
- E extends AnyTypes,
184
- F extends AnyTypes,
185
- G extends AnyTypes,
186
- H extends AnyTypes,
187
- I extends AnyTypes,
188
- >(
189
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
190
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
191
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
192
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
193
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
194
- op6: (input: DeploymentModelBuilder<E>) => DeploymentModelBuilder<F>,
195
- op7: (input: DeploymentModelBuilder<F>) => DeploymentModelBuilder<G>,
196
- op8: (input: DeploymentModelBuilder<G>) => DeploymentModelBuilder<H>,
197
- op9: (input: DeploymentModelBuilder<H>) => DeploymentModelBuilder<I>,
198
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, I>>
199
-
200
- with<
201
- T extends AnyTypes,
202
- A extends AnyTypes,
203
- B extends AnyTypes,
204
- C extends AnyTypes,
205
- D extends AnyTypes,
206
- E extends AnyTypes,
207
- F extends AnyTypes,
208
- G extends AnyTypes,
209
- H extends AnyTypes,
210
- I extends AnyTypes,
211
- J extends AnyTypes,
212
- >(
213
- op1: (input: DeploymentModelBuilder<ToNested<T, Id>>) => DeploymentModelBuilder<A>,
214
- op2: (input: DeploymentModelBuilder<A>) => DeploymentModelBuilder<B>,
215
- op3: (input: DeploymentModelBuilder<B>) => DeploymentModelBuilder<C>,
216
- op4: (input: DeploymentModelBuilder<C>) => DeploymentModelBuilder<D>,
217
- op5: (input: DeploymentModelBuilder<D>) => DeploymentModelBuilder<E>,
218
- op6: (input: DeploymentModelBuilder<E>) => DeploymentModelBuilder<F>,
219
- op7: (input: DeploymentModelBuilder<F>) => DeploymentModelBuilder<G>,
220
- op8: (input: DeploymentModelBuilder<G>) => DeploymentModelBuilder<H>,
221
- op9: (input: DeploymentModelBuilder<H>) => DeploymentModelBuilder<I>,
222
- op10: (input: DeploymentModelBuilder<I>) => DeploymentModelBuilder<J>,
223
- ): (builder: DeploymentModelBuilder<T>) => DeploymentModelBuilder<FromNested<T, J>>
224
- }