@likec4/core
Advanced tools
Comparing version 0.30.0 to 0.31.0
@@ -15,3 +15,3 @@ import { anyPass, filter, uniq, isNil } from 'rambdax'; | ||
.sort(compareByFqnHierarchically) | ||
.reduce((map, { id, color, shape, tags, ...el }) => { | ||
.reduce((map, { id, color, shape, ...el }) => { | ||
let parent = parentFqn(id); | ||
@@ -35,4 +35,3 @@ while (parent) { | ||
shape: shape ?? DefaultElementShape, | ||
children: [], | ||
tags: [...tags] | ||
children: [] | ||
}; | ||
@@ -39,0 +38,0 @@ map.set(id, node); |
@@ -5,2 +5,3 @@ import type { Opaque } from './opaque'; | ||
import type { ElementView, ViewID, ViewRuleAutoLayout } from './view'; | ||
import type { NonEmptyArray } from './_common'; | ||
export type NodeId = Fqn; | ||
@@ -15,3 +16,4 @@ export type EdgeId = Opaque<string, 'EdgeId'>; | ||
technology: string | null; | ||
tags: Tag[]; | ||
tags: NonEmptyArray<Tag> | null; | ||
links: NonEmptyArray<string> | null; | ||
children: NodeId[]; | ||
@@ -18,0 +20,0 @@ shape: ElementShape; |
@@ -0,1 +1,2 @@ | ||
import type { NonEmptyArray } from '.'; | ||
import type { Opaque } from './opaque'; | ||
@@ -26,3 +27,4 @@ export type Fqn = Opaque<string, 'Fqn'>; | ||
readonly technology: string | null; | ||
readonly tags: ReadonlyArray<Tag>; | ||
readonly tags: NonEmptyArray<Tag> | null; | ||
readonly links: NonEmptyArray<string> | null; | ||
readonly shape?: ElementShape; | ||
@@ -29,0 +31,0 @@ readonly color?: ThemeColor; |
export { AsFqn, DefaultThemeColor, DefaultElementShape } from './element'; | ||
export { isViewRuleExpression, isViewRuleAutoLayout, isViewRuleStyle } from './view'; | ||
export * as Expr from './expression'; | ||
export type * from './_common'; | ||
export type * from './opaque'; | ||
@@ -5,0 +6,0 @@ export type * from './element'; |
import type { Opaque } from './opaque'; | ||
import type { ElementShape, Fqn, ThemeColor } from './element'; | ||
import type { ElementShape, Fqn, Tag, ThemeColor } from './element'; | ||
import type { ElementExpression, Expression } from './expression'; | ||
import type { NonEmptyArray } from './_common'; | ||
export type ViewID = Opaque<string, 'ViewID'>; | ||
@@ -26,6 +27,8 @@ export interface ViewRuleExpression { | ||
readonly viewOf?: Fqn; | ||
readonly title?: string; | ||
readonly description?: string; | ||
readonly title: string | null; | ||
readonly description: string | null; | ||
readonly tags: NonEmptyArray<Tag> | null; | ||
readonly links: NonEmptyArray<string> | null; | ||
readonly rules: ViewRule[]; | ||
} | ||
//# sourceMappingURL=view.d.ts.map |
@@ -0,4 +1,6 @@ | ||
import type { NonEmptyArray } from "../types"; | ||
export declare function isString(value: unknown): value is string; | ||
export declare function failExpectedNever(arg: never): never; | ||
export declare function ignoreNeverInRuntime(arg: never): void; | ||
export declare function isNonEmptyArray<A>(arr: ArrayLike<A>): arr is NonEmptyArray<A>; | ||
//# sourceMappingURL=guards.d.ts.map |
@@ -11,2 +11,5 @@ export function isString(value) { | ||
} | ||
export function isNonEmptyArray(arr) { | ||
return arr.length > 0; | ||
} | ||
//# sourceMappingURL=guards.js.map |
{ | ||
"name": "@likec4/core", | ||
"version": "0.30.0", | ||
"version": "0.31.0", | ||
"license": "MIT", | ||
@@ -96,3 +96,3 @@ "homepage": "https://likec4.dev", | ||
"rambdax": "^9.1.1", | ||
"remeda": "^1.23.0" | ||
"remeda": "^1.24.0" | ||
}, | ||
@@ -99,0 +99,0 @@ "devDependencies": { |
64738
62
1663
Updatedremeda@^1.24.0