@principal-ai/principal-view-core 0.24.83 → 0.24.84
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/scopes/index.d.ts +1 -1
- package/dist/scopes/index.d.ts.map +1 -1
- package/dist/scopes/index.js +2 -1
- package/dist/scopes/index.js.map +1 -1
- package/dist/scopes/utils.d.ts +7 -0
- package/dist/scopes/utils.d.ts.map +1 -1
- package/dist/scopes/utils.js +10 -1
- package/dist/scopes/utils.js.map +1 -1
- package/dist/spans/index.d.ts +1 -1
- package/dist/spans/index.d.ts.map +1 -1
- package/dist/spans/index.js +3 -1
- package/dist/spans/index.js.map +1 -1
- package/dist/spans/utils.d.ts +12 -0
- package/dist/spans/utils.d.ts.map +1 -1
- package/dist/spans/utils.js +39 -1
- package/dist/spans/utils.js.map +1 -1
- package/dist/types/library.d.ts +2 -0
- package/dist/types/library.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/scopes/index.ts +1 -0
- package/src/scopes/utils.ts +14 -0
- package/src/spans/index.ts +2 -0
- package/src/spans/utils.ts +48 -0
- package/src/types/library.ts +3 -0
package/dist/scopes/index.d.ts
CHANGED
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
* - Validation for .scopes.canvas files that document scope boundaries
|
|
7
7
|
*/
|
|
8
8
|
export { ScopesCanvasValidator, type ScopesCanvasValidationContext, type ScopesCanvasValidationResult, type ScopesCanvasViolation, } from './ScopesCanvasValidator';
|
|
9
|
-
export { DEFAULT_SCOPE_COLOR, DRAFT_NODE_COLOR, getScopeNames, getScopeDefinition, getScopeColor, normalizeScopes, buildScopeColorMap, getAllScopeNames, type NormalizedScope, } from './utils';
|
|
9
|
+
export { DEFAULT_SCOPE_COLOR, DRAFT_NODE_COLOR, getScopeNames, getScopeDefinition, getScopeColor, getScopeIcon, normalizeScopes, buildScopeColorMap, getAllScopeNames, type NormalizedScope, } from './utils';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scopes/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,qBAAqB,EACrB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,GAC3B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,eAAe,GACrB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scopes/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,qBAAqB,EACrB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,GAC3B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,eAAe,GACrB,MAAM,SAAS,CAAC"}
|
package/dist/scopes/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* - Validation for .scopes.canvas files that document scope boundaries
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.ScopesCanvasValidator = void 0;
|
|
10
|
+
exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeIcon = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.ScopesCanvasValidator = void 0;
|
|
11
11
|
var ScopesCanvasValidator_1 = require("./ScopesCanvasValidator");
|
|
12
12
|
Object.defineProperty(exports, "ScopesCanvasValidator", { enumerable: true, get: function () { return ScopesCanvasValidator_1.ScopesCanvasValidator; } });
|
|
13
13
|
var utils_1 = require("./utils");
|
|
@@ -16,6 +16,7 @@ Object.defineProperty(exports, "DRAFT_NODE_COLOR", { enumerable: true, get: func
|
|
|
16
16
|
Object.defineProperty(exports, "getScopeNames", { enumerable: true, get: function () { return utils_1.getScopeNames; } });
|
|
17
17
|
Object.defineProperty(exports, "getScopeDefinition", { enumerable: true, get: function () { return utils_1.getScopeDefinition; } });
|
|
18
18
|
Object.defineProperty(exports, "getScopeColor", { enumerable: true, get: function () { return utils_1.getScopeColor; } });
|
|
19
|
+
Object.defineProperty(exports, "getScopeIcon", { enumerable: true, get: function () { return utils_1.getScopeIcon; } });
|
|
19
20
|
Object.defineProperty(exports, "normalizeScopes", { enumerable: true, get: function () { return utils_1.normalizeScopes; } });
|
|
20
21
|
Object.defineProperty(exports, "buildScopeColorMap", { enumerable: true, get: function () { return utils_1.buildScopeColorMap; } });
|
|
21
22
|
Object.defineProperty(exports, "getAllScopeNames", { enumerable: true, get: function () { return utils_1.getAllScopeNames; } });
|
package/dist/scopes/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scopes/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,iEAKiC;AAJ/B,8HAAA,qBAAqB,OAAA;AAMvB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scopes/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,iEAKiC;AAJ/B,8HAAA,qBAAqB,OAAA;AAMvB,iCAWiB;AAVf,4GAAA,mBAAmB,OAAA;AACnB,yGAAA,gBAAgB,OAAA;AAChB,sGAAA,aAAa,OAAA;AACb,2GAAA,kBAAkB,OAAA;AAClB,sGAAA,aAAa,OAAA;AACb,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,2GAAA,kBAAkB,OAAA;AAClB,yGAAA,gBAAgB,OAAA"}
|
package/dist/scopes/utils.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ export declare const DRAFT_NODE_COLOR = "#9CA3AF";
|
|
|
15
15
|
export interface NormalizedScope {
|
|
16
16
|
name: string;
|
|
17
17
|
color: string;
|
|
18
|
+
/** Icon identifier (Lucide icons) */
|
|
19
|
+
icon?: string;
|
|
18
20
|
description?: string;
|
|
19
21
|
/** Whether this scope is defined externally (in another library) */
|
|
20
22
|
external?: boolean;
|
|
@@ -36,6 +38,11 @@ export declare function getScopeColor(libraryScopes: Record<string, ScopeDefinit
|
|
|
36
38
|
* Normalize scope names to NormalizedScope array using library scope definitions
|
|
37
39
|
*/
|
|
38
40
|
export declare function normalizeScopes(scopeNames: OwnedScopes | undefined, libraryScopes: Record<string, ScopeDefinition> | undefined): NormalizedScope[];
|
|
41
|
+
/**
|
|
42
|
+
* Get scope icon by name from library scopes
|
|
43
|
+
* Returns the defined icon, or undefined if not found
|
|
44
|
+
*/
|
|
45
|
+
export declare function getScopeIcon(libraryScopes: Record<string, ScopeDefinition> | undefined, scopeName: string): string | undefined;
|
|
39
46
|
/**
|
|
40
47
|
* Build a scope color map from library scopes
|
|
41
48
|
* Returns a simple name -> color mapping for fast lookups
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/scopes/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAErE,uDAAuD;AACvD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,EAAE,CAEvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,EAC1D,SAAS,EAAE,MAAM,GAChB,eAAe,GAAG,SAAS,CAE7B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,EAC1D,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,WAAW,GAAG,SAAS,EACnC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,GACzD,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/scopes/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAErE,uDAAuD;AACvD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,EAAE,CAEvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,EAC1D,SAAS,EAAE,MAAM,GAChB,eAAe,GAAG,SAAS,CAE7B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,EAC1D,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,WAAW,GAAG,SAAS,EACnC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,GACzD,eAAe,EAAE,CAanB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS,EAC1D,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAEpB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CAAE,GAAG,SAAS,GAChE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CAAE,GAAG,SAAS,GAChE,MAAM,EAAE,CAGV"}
|
package/dist/scopes/utils.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* and referenced by resources via `owned-scopes`.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = void 0;
|
|
9
|
+
exports.getAllScopeNames = exports.buildScopeColorMap = exports.getScopeIcon = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = void 0;
|
|
10
10
|
/** Default color for scopes without a defined color */
|
|
11
11
|
exports.DEFAULT_SCOPE_COLOR = '#6B7280'; // gray-500
|
|
12
12
|
/** Default color for draft nodes (no scope) */
|
|
@@ -44,12 +44,21 @@ function normalizeScopes(scopeNames, libraryScopes) {
|
|
|
44
44
|
return {
|
|
45
45
|
name,
|
|
46
46
|
color: definition?.color ?? exports.DEFAULT_SCOPE_COLOR,
|
|
47
|
+
icon: definition?.icon,
|
|
47
48
|
description: definition?.description,
|
|
48
49
|
external: definition?.external,
|
|
49
50
|
};
|
|
50
51
|
});
|
|
51
52
|
}
|
|
52
53
|
exports.normalizeScopes = normalizeScopes;
|
|
54
|
+
/**
|
|
55
|
+
* Get scope icon by name from library scopes
|
|
56
|
+
* Returns the defined icon, or undefined if not found
|
|
57
|
+
*/
|
|
58
|
+
function getScopeIcon(libraryScopes, scopeName) {
|
|
59
|
+
return libraryScopes?.[scopeName]?.icon;
|
|
60
|
+
}
|
|
61
|
+
exports.getScopeIcon = getScopeIcon;
|
|
53
62
|
/**
|
|
54
63
|
* Build a scope color map from library scopes
|
|
55
64
|
* Returns a simple name -> color mapping for fast lookups
|
package/dist/scopes/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/scopes/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,uDAAuD;AAC1C,QAAA,mBAAmB,GAAG,SAAS,CAAC,CAAC,WAAW;AAEzD,+CAA+C;AAClC,QAAA,gBAAgB,GAAG,SAAS,CAAC,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/scopes/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,uDAAuD;AAC1C,QAAA,mBAAmB,GAAG,SAAS,CAAC,CAAC,WAAW;AAEzD,+CAA+C;AAClC,QAAA,gBAAgB,GAAG,SAAS,CAAC,CAAC,WAAW;AAetD;;GAEG;AACH,SAAgB,aAAa,CAAC,MAA+B;IAC3D,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAFD,sCAEC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAChC,aAA0D,EAC1D,SAAiB;IAEjB,OAAO,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AALD,gDAKC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,aAA0D,EAC1D,SAAiB;IAEjB,OAAO,aAAa,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,2BAAmB,CAAC;AAClE,CAAC;AALD,sCAKC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC7B,UAAmC,EACnC,aAA0D;IAE1D,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QACzC,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,UAAU,EAAE,KAAK,IAAI,2BAAmB;YAC/C,IAAI,EAAE,UAAU,EAAE,IAAI;YACtB,WAAW,EAAE,UAAU,EAAE,WAAW;YACpC,QAAQ,EAAE,UAAU,EAAE,QAAQ;SAC/B,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAhBD,0CAgBC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAC1B,aAA0D,EAC1D,SAAiB;IAEjB,OAAO,aAAa,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;AAC1C,CAAC;AALD,oCAKC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,OAAiE;IAEjE,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAE5C,IAAI,OAAO,EAAE,MAAM,EAAE;QACnB,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACxD,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,2BAAmB,CAAC;SACnD;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAZD,gDAYC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAC9B,OAAiE;IAEjE,IAAI,CAAC,OAAO,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IAChC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AALD,4CAKC"}
|
package/dist/spans/index.d.ts
CHANGED
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
* - Scope color → Border (from library.yaml owned-scopes)
|
|
9
9
|
* - Span color → Fill (from .spans.canvas)
|
|
10
10
|
*/
|
|
11
|
-
export { DEFAULT_SPAN_COLOR, extractSpanConvention, extractSpanConventions, buildSpanColorMap, buildSpanColorMapFromCanvases, matchSpanPattern, getSpanColor, resolveEventSpanColor, type NormalizedSpanConvention, } from './utils';
|
|
11
|
+
export { DEFAULT_SPAN_COLOR, extractSpanConvention, extractSpanConventions, buildSpanColorMap, buildSpanColorMapFromCanvases, buildSpanIconMap, matchSpanPattern, getSpanColor, getSpanIcon, resolveEventSpanColor, type NormalizedSpanConvention, } from './utils';
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spans/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,6BAA6B,EAC7B,gBAAgB,EAChB,YAAY,EACZ,qBAAqB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spans/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,6BAA6B,EAC7B,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,KAAK,wBAAwB,GAC9B,MAAM,SAAS,CAAC"}
|
package/dist/spans/index.js
CHANGED
|
@@ -10,14 +10,16 @@
|
|
|
10
10
|
* - Span color → Fill (from .spans.canvas)
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = void 0;
|
|
13
|
+
exports.resolveEventSpanColor = exports.getSpanIcon = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanIconMap = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = void 0;
|
|
14
14
|
var utils_1 = require("./utils");
|
|
15
15
|
Object.defineProperty(exports, "DEFAULT_SPAN_COLOR", { enumerable: true, get: function () { return utils_1.DEFAULT_SPAN_COLOR; } });
|
|
16
16
|
Object.defineProperty(exports, "extractSpanConvention", { enumerable: true, get: function () { return utils_1.extractSpanConvention; } });
|
|
17
17
|
Object.defineProperty(exports, "extractSpanConventions", { enumerable: true, get: function () { return utils_1.extractSpanConventions; } });
|
|
18
18
|
Object.defineProperty(exports, "buildSpanColorMap", { enumerable: true, get: function () { return utils_1.buildSpanColorMap; } });
|
|
19
19
|
Object.defineProperty(exports, "buildSpanColorMapFromCanvases", { enumerable: true, get: function () { return utils_1.buildSpanColorMapFromCanvases; } });
|
|
20
|
+
Object.defineProperty(exports, "buildSpanIconMap", { enumerable: true, get: function () { return utils_1.buildSpanIconMap; } });
|
|
20
21
|
Object.defineProperty(exports, "matchSpanPattern", { enumerable: true, get: function () { return utils_1.matchSpanPattern; } });
|
|
21
22
|
Object.defineProperty(exports, "getSpanColor", { enumerable: true, get: function () { return utils_1.getSpanColor; } });
|
|
23
|
+
Object.defineProperty(exports, "getSpanIcon", { enumerable: true, get: function () { return utils_1.getSpanIcon; } });
|
|
22
24
|
Object.defineProperty(exports, "resolveEventSpanColor", { enumerable: true, get: function () { return utils_1.resolveEventSpanColor; } });
|
|
23
25
|
//# sourceMappingURL=index.js.map
|
package/dist/spans/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spans/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spans/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,iCAYiB;AAXf,2GAAA,kBAAkB,OAAA;AAClB,8GAAA,qBAAqB,OAAA;AACrB,+GAAA,sBAAsB,OAAA;AACtB,0GAAA,iBAAiB,OAAA;AACjB,sHAAA,6BAA6B,OAAA;AAC7B,yGAAA,gBAAgB,OAAA;AAChB,yGAAA,gBAAgB,OAAA;AAChB,qGAAA,YAAY,OAAA;AACZ,oGAAA,WAAW,OAAA;AACX,8GAAA,qBAAqB,OAAA"}
|
package/dist/spans/utils.d.ts
CHANGED
|
@@ -17,6 +17,8 @@ export interface NormalizedSpanConvention {
|
|
|
17
17
|
spanPattern: string;
|
|
18
18
|
/** Color for this span (used as fill for events) */
|
|
19
19
|
color: string;
|
|
20
|
+
/** Icon identifier (Lucide icons) */
|
|
21
|
+
icon?: string;
|
|
20
22
|
/** Human-readable description */
|
|
21
23
|
description?: string;
|
|
22
24
|
/** Status of the span convention */
|
|
@@ -55,4 +57,14 @@ export declare function getSpanColor(spanName: string, spanColorMap: Record<stri
|
|
|
55
57
|
* This is the primary method for determining event fill color
|
|
56
58
|
*/
|
|
57
59
|
export declare function resolveEventSpanColor(workflowSpanPattern: string | undefined, spanColorMap: Record<string, string>): string;
|
|
60
|
+
/**
|
|
61
|
+
* Build a span icon map from a spans.canvas
|
|
62
|
+
* Returns a map of spanPattern -> icon for fast lookups
|
|
63
|
+
*/
|
|
64
|
+
export declare function buildSpanIconMap(canvas: ExtendedCanvas | null | undefined): Record<string, string>;
|
|
65
|
+
/**
|
|
66
|
+
* Find the icon for a span name by matching against span patterns
|
|
67
|
+
* Returns the first matching pattern's icon, or undefined if none match
|
|
68
|
+
*/
|
|
69
|
+
export declare function getSpanIcon(spanName: string, spanIconMap: Record<string, string>): string | undefined;
|
|
58
70
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spans/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1E,sDAAsD;AACtD,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC;CAC/C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,GAAG,wBAAwB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spans/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1E,sDAAsD;AACtD,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC;CAC/C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,GAAG,wBAAwB,GAAG,IAAI,CAsC/F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,wBAAwB,EAAE,CAazF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAWnG;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,CAAC,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYxB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAW3E;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,MAAM,CAcR;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,mBAAmB,EAAE,MAAM,GAAG,SAAS,EACvC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,MAAM,CASR;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAalG;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,GAAG,SAAS,CAcpB"}
|
package/dist/spans/utils.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Span colors are used as fill colors for events emitted within that span.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = void 0;
|
|
9
|
+
exports.getSpanIcon = exports.buildSpanIconMap = exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = void 0;
|
|
10
10
|
/** Default color for spans without a defined color */
|
|
11
11
|
exports.DEFAULT_SPAN_COLOR = '#9CA3AF'; // gray-400
|
|
12
12
|
/**
|
|
@@ -38,10 +38,13 @@ function extractSpanConvention(node) {
|
|
|
38
38
|
description = descLines.join(' ').trim();
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
+
// Get icon from pv.icon (Lucide icon identifier)
|
|
42
|
+
const icon = pv.icon;
|
|
41
43
|
return {
|
|
42
44
|
id: node.id,
|
|
43
45
|
spanPattern,
|
|
44
46
|
color,
|
|
47
|
+
icon,
|
|
45
48
|
description,
|
|
46
49
|
status: pv.status,
|
|
47
50
|
};
|
|
@@ -143,4 +146,39 @@ function resolveEventSpanColor(workflowSpanPattern, spanColorMap) {
|
|
|
143
146
|
return exports.DEFAULT_SPAN_COLOR;
|
|
144
147
|
}
|
|
145
148
|
exports.resolveEventSpanColor = resolveEventSpanColor;
|
|
149
|
+
/**
|
|
150
|
+
* Build a span icon map from a spans.canvas
|
|
151
|
+
* Returns a map of spanPattern -> icon for fast lookups
|
|
152
|
+
*/
|
|
153
|
+
function buildSpanIconMap(canvas) {
|
|
154
|
+
const iconMap = {};
|
|
155
|
+
if (!canvas)
|
|
156
|
+
return iconMap;
|
|
157
|
+
const conventions = extractSpanConventions(canvas);
|
|
158
|
+
for (const convention of conventions) {
|
|
159
|
+
if (convention.icon) {
|
|
160
|
+
iconMap[convention.spanPattern] = convention.icon;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return iconMap;
|
|
164
|
+
}
|
|
165
|
+
exports.buildSpanIconMap = buildSpanIconMap;
|
|
166
|
+
/**
|
|
167
|
+
* Find the icon for a span name by matching against span patterns
|
|
168
|
+
* Returns the first matching pattern's icon, or undefined if none match
|
|
169
|
+
*/
|
|
170
|
+
function getSpanIcon(spanName, spanIconMap) {
|
|
171
|
+
// First try exact match
|
|
172
|
+
if (spanIconMap[spanName]) {
|
|
173
|
+
return spanIconMap[spanName];
|
|
174
|
+
}
|
|
175
|
+
// Then try pattern matching
|
|
176
|
+
for (const [pattern, icon] of Object.entries(spanIconMap)) {
|
|
177
|
+
if (matchSpanPattern(spanName, pattern)) {
|
|
178
|
+
return icon;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
return undefined;
|
|
182
|
+
}
|
|
183
|
+
exports.getSpanIcon = getSpanIcon;
|
|
146
184
|
//# sourceMappingURL=utils.js.map
|
package/dist/spans/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/spans/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,sDAAsD;AACzC,QAAA,kBAAkB,GAAG,SAAS,CAAC,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/spans/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/types/library.d.ts
CHANGED
|
@@ -21,6 +21,8 @@ import type { PVNodeShape, PVEdgeStyle, PVAnimationType, PVNodeState, PVEventSch
|
|
|
21
21
|
export interface ScopeDefinition {
|
|
22
22
|
/** Color for nodes belonging to this scope (hex format). Required unless external. */
|
|
23
23
|
color?: string;
|
|
24
|
+
/** Icon identifier (Lucide icons) */
|
|
25
|
+
icon?: string;
|
|
24
26
|
/** Human-readable description of what this scope covers */
|
|
25
27
|
description?: string;
|
|
26
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/types/library.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/types/library.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,eAAe,EAEf,WAAW,EACX,aAAa,EACd,MAAM,UAAU,CAAC;AAMlB;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;IAEvB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,mCAAmC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,qCAAqC;IACrC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,2CAA2C;IAC3C,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,2BAA2B;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,iCAAiC;IACjC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,0BAA0B;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,gCAAgC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,2BAA2B;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,oBAAoB;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qBAAqB;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,mBAAmB;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,uBAAuB;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,iCAAiC;IACjC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IAEtC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,cAAc,CAAC,EAAE,WAAW,CAAC;IAE7B,+CAA+C;IAC/C,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;CAC9C;AAMD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iEAAiE;IACjE,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,mBAAmB;IACnB,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAEzC,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAErC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACN;QACE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;QAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CACF,CAAC;IAEF,mBAAmB;IACnB,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,wBAAwB;IACxB,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,eAAe,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,0BAA0B;IAC1B,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;KACvC,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IAEb,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IAEX,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IAEZ,2BAA2B;IAC3B,WAAW,CAAC,EAAE;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;CACH;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAE/C,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAErD,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAErD;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAE3D,0EAA0E;IAC1E,eAAe,CAAC,EAAE,qBAAqB,EAAE,CAAC;CAC3C;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IAEjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAE3B,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
|
package/package.json
CHANGED
package/src/scopes/index.ts
CHANGED
package/src/scopes/utils.ts
CHANGED
|
@@ -19,6 +19,8 @@ export const DRAFT_NODE_COLOR = '#9CA3AF'; // gray-400
|
|
|
19
19
|
export interface NormalizedScope {
|
|
20
20
|
name: string;
|
|
21
21
|
color: string;
|
|
22
|
+
/** Icon identifier (Lucide icons) */
|
|
23
|
+
icon?: string;
|
|
22
24
|
description?: string;
|
|
23
25
|
/** Whether this scope is defined externally (in another library) */
|
|
24
26
|
external?: boolean;
|
|
@@ -66,12 +68,24 @@ export function normalizeScopes(
|
|
|
66
68
|
return {
|
|
67
69
|
name,
|
|
68
70
|
color: definition?.color ?? DEFAULT_SCOPE_COLOR,
|
|
71
|
+
icon: definition?.icon,
|
|
69
72
|
description: definition?.description,
|
|
70
73
|
external: definition?.external,
|
|
71
74
|
};
|
|
72
75
|
});
|
|
73
76
|
}
|
|
74
77
|
|
|
78
|
+
/**
|
|
79
|
+
* Get scope icon by name from library scopes
|
|
80
|
+
* Returns the defined icon, or undefined if not found
|
|
81
|
+
*/
|
|
82
|
+
export function getScopeIcon(
|
|
83
|
+
libraryScopes: Record<string, ScopeDefinition> | undefined,
|
|
84
|
+
scopeName: string
|
|
85
|
+
): string | undefined {
|
|
86
|
+
return libraryScopes?.[scopeName]?.icon;
|
|
87
|
+
}
|
|
88
|
+
|
|
75
89
|
/**
|
|
76
90
|
* Build a scope color map from library scopes
|
|
77
91
|
* Returns a simple name -> color mapping for fast lookups
|
package/src/spans/index.ts
CHANGED
package/src/spans/utils.ts
CHANGED
|
@@ -20,6 +20,8 @@ export interface NormalizedSpanConvention {
|
|
|
20
20
|
spanPattern: string;
|
|
21
21
|
/** Color for this span (used as fill for events) */
|
|
22
22
|
color: string;
|
|
23
|
+
/** Icon identifier (Lucide icons) */
|
|
24
|
+
icon?: string;
|
|
23
25
|
/** Human-readable description */
|
|
24
26
|
description?: string;
|
|
25
27
|
/** Status of the span convention */
|
|
@@ -56,10 +58,14 @@ export function extractSpanConvention(node: ExtendedCanvasNode): NormalizedSpanC
|
|
|
56
58
|
}
|
|
57
59
|
}
|
|
58
60
|
|
|
61
|
+
// Get icon from pv.icon (Lucide icon identifier)
|
|
62
|
+
const icon = pv.icon as string | undefined;
|
|
63
|
+
|
|
59
64
|
return {
|
|
60
65
|
id: node.id,
|
|
61
66
|
spanPattern,
|
|
62
67
|
color,
|
|
68
|
+
icon,
|
|
63
69
|
description,
|
|
64
70
|
status: pv.status as 'draft' | 'approved' | 'implemented' | undefined,
|
|
65
71
|
};
|
|
@@ -177,3 +183,45 @@ export function resolveEventSpanColor(
|
|
|
177
183
|
|
|
178
184
|
return DEFAULT_SPAN_COLOR;
|
|
179
185
|
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Build a span icon map from a spans.canvas
|
|
189
|
+
* Returns a map of spanPattern -> icon for fast lookups
|
|
190
|
+
*/
|
|
191
|
+
export function buildSpanIconMap(canvas: ExtendedCanvas | null | undefined): Record<string, string> {
|
|
192
|
+
const iconMap: Record<string, string> = {};
|
|
193
|
+
|
|
194
|
+
if (!canvas) return iconMap;
|
|
195
|
+
|
|
196
|
+
const conventions = extractSpanConventions(canvas);
|
|
197
|
+
for (const convention of conventions) {
|
|
198
|
+
if (convention.icon) {
|
|
199
|
+
iconMap[convention.spanPattern] = convention.icon;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
return iconMap;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Find the icon for a span name by matching against span patterns
|
|
208
|
+
* Returns the first matching pattern's icon, or undefined if none match
|
|
209
|
+
*/
|
|
210
|
+
export function getSpanIcon(
|
|
211
|
+
spanName: string,
|
|
212
|
+
spanIconMap: Record<string, string>
|
|
213
|
+
): string | undefined {
|
|
214
|
+
// First try exact match
|
|
215
|
+
if (spanIconMap[spanName]) {
|
|
216
|
+
return spanIconMap[spanName];
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// Then try pattern matching
|
|
220
|
+
for (const [pattern, icon] of Object.entries(spanIconMap)) {
|
|
221
|
+
if (matchSpanPattern(spanName, pattern)) {
|
|
222
|
+
return icon;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
return undefined;
|
|
227
|
+
}
|
package/src/types/library.ts
CHANGED
|
@@ -35,6 +35,9 @@ export interface ScopeDefinition {
|
|
|
35
35
|
/** Color for nodes belonging to this scope (hex format). Required unless external. */
|
|
36
36
|
color?: string;
|
|
37
37
|
|
|
38
|
+
/** Icon identifier (Lucide icons) */
|
|
39
|
+
icon?: string;
|
|
40
|
+
|
|
38
41
|
/** Human-readable description of what this scope covers */
|
|
39
42
|
description?: string;
|
|
40
43
|
|