@vscode/component-explorer 0.1.1-18 → 0.1.1-19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/components/ExplorerModel.d.ts +3 -0
  2. package/dist/components/ExplorerModel.d.ts.map +1 -1
  3. package/dist/components/FixturePreviewItem.d.ts +1 -0
  4. package/dist/components/FixturePreviewItem.d.ts.map +1 -1
  5. package/dist/components/LeftSidebar.d.ts.map +1 -1
  6. package/dist/components/PreviewArea.d.ts.map +1 -1
  7. package/dist/components/ReportComparisonRow.d.ts.map +1 -1
  8. package/dist/components/ScreenshotComparisonRow.d.ts.map +1 -1
  9. package/dist/components/SearchInput.d.ts +6 -0
  10. package/dist/components/SearchInput.d.ts.map +1 -0
  11. package/dist/components/TreeView.d.ts.map +1 -1
  12. package/dist/components/treeFilter.d.ts +3 -0
  13. package/dist/components/treeFilter.d.ts.map +1 -0
  14. package/dist/components/types.d.ts +1 -0
  15. package/dist/components/types.d.ts.map +1 -1
  16. package/dist/core/CliRuntime.d.ts +1 -0
  17. package/dist/core/CliRuntime.d.ts.map +1 -1
  18. package/dist/core/FixtureNode.d.ts +2 -0
  19. package/dist/core/FixtureNode.d.ts.map +1 -1
  20. package/dist/core/fixtureApi.d.ts +47 -1
  21. package/dist/core/fixtureApi.d.ts.map +1 -1
  22. package/dist/core/fixtureApiConsumer.d.ts +2 -0
  23. package/dist/core/fixtureApiConsumer.d.ts.map +1 -1
  24. package/dist/index-BsQr630j.js +80 -0
  25. package/dist/index-BsQr630j.js.map +1 -0
  26. package/dist/index.js +1 -1
  27. package/dist/lib/fixtureFocusTrap.d.ts +2 -0
  28. package/dist/lib/fixtureFocusTrap.d.ts.map +1 -0
  29. package/dist/lib/queryParamObservable.d.ts +4 -0
  30. package/dist/lib/queryParamObservable.d.ts.map +1 -0
  31. package/dist/viewer.js +1197 -899
  32. package/dist/viewer.js.map +1 -1
  33. package/package.json +1 -1
  34. package/dist/index-DnRcKk60.js +0 -61
  35. package/dist/index-DnRcKk60.js.map +0 -1
@@ -63,8 +63,10 @@ export declare class ExplorerModel extends ExplorerModel_base {
63
63
  get daemon(): DaemonModel | undefined;
64
64
  get reportModel(): ReportModel | undefined;
65
65
  get isReportMode(): boolean;
66
+ readonly searchQuery: import('@vscode/observables').ISettableObservable<string | undefined, void>;
66
67
  /** The explorer's tree derived from the registry or report */
67
68
  readonly tree: import('@vscode/observables').IObservableWithChange<ExplorerTreeNode, void>;
69
+ readonly filteredTree: import('@vscode/observables').IObservableWithChange<ExplorerTreeNode, void>;
68
70
  readonly selectedNode: import('@vscode/observables').IObservableWithChange<ExplorerTreeNode | undefined, void>;
69
71
  /** List of preview rows to render based on current selection and view mode */
70
72
  readonly selectedFixtures: import('@vscode/observables').IObservableWithChange<readonly PreviewRow[], void>;
@@ -76,6 +78,7 @@ export declare class ExplorerModel extends ExplorerModel_base {
76
78
  selectNode: (nodeId: string) => void;
77
79
  toggleNodeExpanded: (nodeId: string) => void;
78
80
  isNodeExpanded(nodeId: string, reader: IReader): boolean;
81
+ private _initialExpandedNodes;
79
82
  private _findNode;
80
83
  private _collectPreviewRows;
81
84
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ExplorerModel.d.ts","sourceRoot":"","sources":["../../src/components/ExplorerModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExplorerModel.d.ts","sourceRoot":"","sources":["../../src/components/ExplorerModel.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,6 @@ import * as React from 'react';
3
3
  export declare const FixturePreviewItem: React.ComponentType<{
4
4
  fixture: FixtureItem;
5
5
  compact: boolean | undefined;
6
+ onSelect: ((nodeId: string) => void) | undefined;
6
7
  } & {} & {} & {}>;
7
8
  //# sourceMappingURL=FixturePreviewItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FixturePreviewItem.d.ts","sourceRoot":"","sources":["../../src/components/FixturePreviewItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA4JtD,eAAO,MAAM,kBAAkB;;;iBAiD9B,CAAC"}
1
+ {"version":3,"file":"FixturePreviewItem.d.ts","sourceRoot":"","sources":["../../src/components/FixturePreviewItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAkKtD,eAAO,MAAM,kBAAkB;;;wBA3JE,MAAM,KAAK,IAAI;iBAkN/C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LeftSidebar.d.ts","sourceRoot":"","sources":["../../src/components/LeftSidebar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,eAAO,MAAM,WAAW;;GAevB,CAAC"}
1
+ {"version":3,"file":"LeftSidebar.d.ts","sourceRoot":"","sources":["../../src/components/LeftSidebar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,eAAO,MAAM,WAAW;;GAgBvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewArea.d.ts","sourceRoot":"","sources":["../../src/components/PreviewArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,oBAAoB,CAAC;AAgSpE,eAAO,MAAM,WAAW;;iBAmFvB,CAAC"}
1
+ {"version":3,"file":"PreviewArea.d.ts","sourceRoot":"","sources":["../../src/components/PreviewArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,oBAAoB,CAAC;AAqbpE,eAAO,MAAM,WAAW;;iBAmGvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReportComparisonRow.d.ts","sourceRoot":"","sources":["../../src/components/ReportComparisonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;CACpC;AA2HD,eAAO,MAAM,mBAAmB;;;;;GAyB/B,CAAC"}
1
+ {"version":3,"file":"ReportComparisonRow.d.ts","sourceRoot":"","sources":["../../src/components/ReportComparisonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;CACpC;AA2HD,eAAO,MAAM,mBAAmB;;;;;GAoB/B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScreenshotComparisonRow.d.ts","sourceRoot":"","sources":["../../src/components/ScreenshotComparisonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAmGnE,eAAO,MAAM,uBAAuB;;;;;;;GA6BnC,CAAC"}
1
+ {"version":3,"file":"ScreenshotComparisonRow.d.ts","sourceRoot":"","sources":["../../src/components/ScreenshotComparisonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAmGnE,eAAO,MAAM,uBAAuB;;;;;;;GAwBnC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { ExplorerModel } from './ExplorerModel.js';
2
+ import * as React from 'react';
3
+ export declare const SearchInput: React.ComponentType<import('@vscode/observables-react').PropsIn<{
4
+ model: import('@vscode/observables-react').IPropertyTransformerFactory<ExplorerModel, ExplorerModel>;
5
+ }>>;
6
+ //# sourceMappingURL=SearchInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchInput.d.ts","sourceRoot":"","sources":["../../src/components/SearchInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA2CxD,eAAO,MAAM,WAAW;;GA+BvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../src/components/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnD,eAAO,MAAM,QAAQ;;;;GAapB,CAAC;AAuCF,eAAO,MAAM,QAAQ;;;;iBAiDnB,CAAC"}
1
+ {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../src/components/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA0BnD,eAAO,MAAM,QAAQ;;;;GAapB,CAAC;AAuCF,eAAO,MAAM,QAAQ;;;;iBA+DnB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ExplorerTreeNode } from './types.js';
2
+ export declare function filterTree(root: ExplorerTreeNode, query: string | undefined): ExplorerTreeNode | undefined;
3
+ //# sourceMappingURL=treeFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeFilter.d.ts","sourceRoot":"","sources":["../../src/components/treeFilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAUnD,wBAAgB,UAAU,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAI1G"}
@@ -9,6 +9,7 @@ export interface ExplorerTreeNode {
9
9
  readonly type: 'folder' | 'variants' | 'component';
10
10
  readonly children?: readonly ExplorerTreeNode[];
11
11
  readonly component?: ComponentDefinition;
12
+ readonly labels: readonly string[];
12
13
  }
13
14
  /**
14
15
  * Converts a FixtureNode tree to ExplorerTreeNode tree.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/components/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CAQlE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/components/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,gBAAgB,CASlE"}
@@ -9,6 +9,7 @@ interface FlatFixture {
9
9
  readonly fixtureName: string;
10
10
  readonly groupPath: string[];
11
11
  readonly background: 'light' | 'dark';
12
+ readonly labels: readonly string[];
12
13
  }
13
14
  interface CliApi {
14
15
  readonly sessionId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"CliRuntime.d.ts","sourceRoot":"","sources":["../../src/core/CliRuntime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9D,MAAM,WAAW,cAAc;IAC9B,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACtC;AAED,UAAU,WAAW;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;CACtC;AAED,UAAU,MAAM;IACf,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,YAAY,IAAI,WAAW,EAAE,CAAC;IAC9B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACxD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,wBAAwB,CAAC,EAAE,MAAM,CAAC;KAClC;CACD;AAED;;;;GAIG;AACH,qBAAa,UAAU;IASrB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IARnC,QAAQ,CAAC,SAAS,SAAuC;IACzD,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,kBAAkB,CAA2B;IACrD,OAAO,CAAC,iBAAiB,CAA0B;gBAGjC,iBAAiB,EAAE,WAAW,EAC/C,cAAc,EAAE,cAAc;IAU/B,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAQpD,WAAW,IAAI,IAAI;IAKnB,YAAY,IAAI,WAAW,EAAE;IAIvB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA4G7D,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,iBAAiB;CAYzB"}
1
+ {"version":3,"file":"CliRuntime.d.ts","sourceRoot":"","sources":["../../src/core/CliRuntime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9D,MAAM,WAAW,cAAc;IAC9B,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACtC;AAED,UAAU,WAAW;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,UAAU,MAAM;IACf,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,YAAY,IAAI,WAAW,EAAE,CAAC;IAC9B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACxD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,wBAAwB,CAAC,EAAE,MAAM,CAAC;KAClC;CACD;AAED;;;;GAIG;AACH,qBAAa,UAAU;IASrB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IARnC,QAAQ,CAAC,SAAS,SAAuC;IACzD,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,kBAAkB,CAA2B;IACrD,OAAO,CAAC,iBAAiB,CAA0B;gBAGjC,iBAAiB,EAAE,WAAW,EAC/C,cAAc,EAAE,cAAc;IAU/B,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAQpD,WAAW,IAAI,IAAI;IAKnB,YAAY,IAAI,WAAW,EAAE;IAIvB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA4G7D,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,iBAAiB;CAYzB"}
@@ -15,6 +15,8 @@ export interface FixtureNode {
15
15
  readonly children?: readonly FixtureNode[];
16
16
  /** Component definition (only for component nodes) */
17
17
  readonly component?: ComponentDefinition;
18
+ /** Labels for categorization and filtering */
19
+ readonly labels: readonly string[];
18
20
  }
19
21
  /**
20
22
  * Creates a fixture tree from a map of fixture exports.
@@ -1 +1 @@
1
- {"version":3,"file":"FixtureNode.d.ts","sourceRoot":"","sources":["../../src/core/FixtureNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAKH,KAAK,mBAAmB,EAC3B,MAAM,yBAAyB,CAAC;AAEjC;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,mBAAmB;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,kGAAkG;IAClG,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IAEnD,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAE3C,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,WAAW,CAenF;AA8FD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,GAAG,SAAS,CAezF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,mBAAmB,EAAE,CAU1E"}
1
+ {"version":3,"file":"FixtureNode.d.ts","sourceRoot":"","sources":["../../src/core/FixtureNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAKH,KAAK,mBAAmB,EAC3B,MAAM,yBAAyB,CAAC;AA8CjC;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,mBAAmB;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,kGAAkG;IAClG,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,WAAW,CAAC;IAEnD,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAE3C,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEzC,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,WAAW,CAiBnF;AA6HD;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,GAAG,SAAS,CAezF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,mBAAmB,EAAE,CAU1E"}
@@ -134,6 +134,15 @@ export declare const fixtureVariantsBrand: unique symbol;
134
134
  * Options for defining a single component fixture.
135
135
  */
136
136
  export interface DefineFixtureOptions {
137
+ /**
138
+ * Path in the explorer tree.
139
+ * - `undefined` (default): use fixture filename only
140
+ * - `'Foo/Bar'`: exact path (fixture filename NOT appended)
141
+ * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})
142
+ *
143
+ * @throws Error if path contains empty segments (e.g., '/foo', 'foo//bar')
144
+ */
145
+ path?: string;
137
146
  /** Optional description for documentation */
138
147
  description?: string;
139
148
  /** How to isolate: 'iframe' for full isolation, 'shadow-dom' (default) for lighter isolation */
@@ -144,6 +153,8 @@ export interface DefineFixtureOptions {
144
153
  styles?: StyleDefinition[];
145
154
  /** Background pattern for the preview canvas: 'light' (default) or 'dark' for dark transparent pattern */
146
155
  background?: 'light' | 'dark';
156
+ /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */
157
+ labels?: readonly string[];
147
158
  /** Property definitions */
148
159
  properties?: PropertySchema[];
149
160
  /**
@@ -163,6 +174,7 @@ export type DefineComponentOptions = DefineFixtureOptions;
163
174
  export interface SingleFixtureExport {
164
175
  readonly [singleFixtureBrand]: true;
165
176
  readonly _options: DefineFixtureOptions;
177
+ readonly _path?: string;
166
178
  }
167
179
  /**
168
180
  * Group entry: either a single fixture, a nested group, or variants.
@@ -176,6 +188,8 @@ export interface FixtureGroupExport {
176
188
  readonly _entries: {
177
189
  [key: string]: FixtureGroupEntry;
178
190
  };
191
+ readonly _path?: string;
192
+ readonly _labels?: readonly string[];
179
193
  }
180
194
  /**
181
195
  * A fixture variants export created by defineFixtureVariants().
@@ -185,6 +199,8 @@ export interface FixtureVariantsExport {
185
199
  readonly _variants: {
186
200
  [key: string]: SingleFixtureExport;
187
201
  };
202
+ readonly _path?: string;
203
+ readonly _labels?: readonly string[];
188
204
  }
189
205
  /**
190
206
  * Fixture export type - a single fixture, a group, or variants.
@@ -196,12 +212,40 @@ export type FixtureExport = SingleFixtureExport | FixtureGroupExport | FixtureVa
196
212
  export type FixtureGroupInput = {
197
213
  [key: string]: FixtureGroupEntry;
198
214
  };
215
+ /**
216
+ * Options for defineFixtureGroup with optional path.
217
+ */
218
+ export interface DefineFixtureGroupOptions {
219
+ /**
220
+ * Path in the explorer tree.
221
+ * - `undefined` (default): use fixture filename only
222
+ * - `'Foo/Bar'`: exact path (fixture filename NOT appended)
223
+ * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})
224
+ */
225
+ path?: string;
226
+ /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */
227
+ labels?: readonly string[];
228
+ }
199
229
  /**
200
230
  * Input for defineFixtureVariants (only single fixtures, no nesting).
201
231
  */
202
232
  export type FixtureVariantsInput = {
203
233
  [key: string]: SingleFixtureExport;
204
234
  };
235
+ /**
236
+ * Options for defineFixtureVariants with optional path.
237
+ */
238
+ export interface DefineFixtureVariantsOptions {
239
+ /**
240
+ * Path in the explorer tree.
241
+ * - `undefined` (default): use fixture filename only
242
+ * - `'Foo/Bar'`: exact path (fixture filename NOT appended)
243
+ * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})
244
+ */
245
+ path?: string;
246
+ /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */
247
+ labels?: readonly string[];
248
+ }
205
249
  /**
206
250
  * Defines a single fixture.
207
251
  *
@@ -250,7 +294,8 @@ export declare function defineFixture(options: DefineFixtureOptions): SingleFixt
250
294
  * });
251
295
  * ```
252
296
  */
253
- export declare function defineFixtureGroup(group: FixtureGroupInput): FixtureGroupExport;
297
+ export declare function defineFixtureGroup(entries: FixtureGroupInput): FixtureGroupExport;
298
+ export declare function defineFixtureGroup(options: DefineFixtureGroupOptions, entries: FixtureGroupInput): FixtureGroupExport;
254
299
  /**
255
300
  * Defines a group of fixture variants (no nesting allowed).
256
301
  * Variants are rendered horizontally by default and have a distinct icon in the tree.
@@ -267,6 +312,7 @@ export declare function defineFixtureGroup(group: FixtureGroupInput): FixtureGro
267
312
  * ```
268
313
  */
269
314
  export declare function defineFixtureVariants(variants: FixtureVariantsInput): FixtureVariantsExport;
315
+ export declare function defineFixtureVariants(options: DefineFixtureVariantsOptions, variants: FixtureVariantsInput): FixtureVariantsExport;
270
316
  /**
271
317
  * Helper for synchronous renders.
272
318
  * Executes the render function immediately and wraps the cleanup in a RenderResult.
@@ -1 +1 @@
1
- {"version":3,"file":"fixtureApi.d.ts","sourceRoot":"","sources":["../../src/core/fixtureApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixtureApi.d.ts","sourceRoot":"","sources":["../../src/core/fixtureApi.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,8 @@ export interface ComponentDefinition {
63
63
  readonly styles?: readonly StyleDefinition[];
64
64
  /** Background pattern for the preview canvas: 'light' (default) or 'dark' for dark transparent pattern */
65
65
  readonly background: 'light' | 'dark';
66
+ /** Labels for categorization and filtering */
67
+ readonly labels: readonly string[];
66
68
  /** Property schema for the component */
67
69
  readonly properties: readonly PropertySchema[];
68
70
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"fixtureApiConsumer.d.ts","sourceRoot":"","sources":["../../src/core/fixtureApiConsumer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,iBAAiB,CAAC;AAOzB;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAS5E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAS1E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CAShF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAMD,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,CAW7E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAKnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAKjF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAKvF;AAMD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,6CAA6C;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,0DAA0D;IAC1D,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,YAAY,CAAC;IAE5C,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IAE7C,0GAA0G;IAC1G,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IAEtC,wCAAwC;IACxC,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAE/C;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,YAAY,CAAC;CACtE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,mBAAmB,EAC5B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,GACX,mBAAmB,CAarB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CASlF"}
1
+ {"version":3,"file":"fixtureApiConsumer.d.ts","sourceRoot":"","sources":["../../src/core/fixtureApiConsumer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAIH,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,aAAa,EACrB,MAAM,iBAAiB,CAAC;AAOzB;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CAS5E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAS1E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CAShF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAMD,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,CAW7E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAKnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAKjF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAKvF;AAMD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,6CAA6C;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,0DAA0D;IAC1D,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,YAAY,CAAC;IAE5C,yEAAyE;IACzE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IAE7C,0GAA0G;IAC1G,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IAEtC,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAEnC,wCAAwC;IACxC,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAE/C;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,YAAY,CAAC;CACtE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,mBAAmB,EAC5B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,GACX,mBAAmB,CAcrB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,mBAAmB,CASlF"}
@@ -0,0 +1,80 @@
1
+ const f = Symbol.for("@vscode/component-explorer/singleFixture/v1"), i = Symbol.for("@vscode/component-explorer/fixtureGroup/v1"), u = Symbol.for("@vscode/component-explorer/fixtureVariants/v1");
2
+ function d(t) {
3
+ return {
4
+ [f]: !0,
5
+ _options: t,
6
+ _path: t.path
7
+ };
8
+ }
9
+ function p(t, e) {
10
+ if (e !== void 0) {
11
+ const r = t;
12
+ return {
13
+ [i]: !0,
14
+ _entries: e,
15
+ _path: r.path,
16
+ _labels: r.labels
17
+ };
18
+ }
19
+ return {
20
+ [i]: !0,
21
+ _entries: t
22
+ };
23
+ }
24
+ function l(t, e) {
25
+ if (e !== void 0) {
26
+ const r = t;
27
+ return {
28
+ [u]: !0,
29
+ _variants: e,
30
+ _path: r.path,
31
+ _labels: r.labels
32
+ };
33
+ }
34
+ return {
35
+ [u]: !0,
36
+ _variants: t
37
+ };
38
+ }
39
+ const c = Promise.resolve();
40
+ function x(t) {
41
+ const e = t();
42
+ return {
43
+ ready: c,
44
+ dispose: () => {
45
+ typeof e == "function" ? e() : e && typeof e.dispose == "function" && e.dispose();
46
+ }
47
+ };
48
+ }
49
+ function v(t, e) {
50
+ let r, n = !1;
51
+ function o() {
52
+ return t.aborted;
53
+ }
54
+ const a = (async () => {
55
+ if (o())
56
+ throw new DOMException("Render aborted", "AbortError");
57
+ if (r = await e(), (o() || n) && (s(), o()))
58
+ throw new DOMException("Render aborted", "AbortError");
59
+ })();
60
+ function s() {
61
+ typeof r == "function" ? r() : r && typeof r.dispose == "function" && r.dispose(), r = void 0;
62
+ }
63
+ return {
64
+ ready: a,
65
+ dispose: () => {
66
+ n = !0, s();
67
+ }
68
+ };
69
+ }
70
+ export {
71
+ u as a,
72
+ v as b,
73
+ p as c,
74
+ d,
75
+ l as e,
76
+ i as f,
77
+ x as g,
78
+ f as s
79
+ };
80
+ //# sourceMappingURL=index-BsQr630j.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BsQr630j.js","sources":["../src/core/fixtureApi.ts"],"sourcesContent":["/**\n * Public Fixture API\n * \n * This module is the public API for defining fixtures.\n * It's designed to be stable across versions - projects can use a different\n * @vscode/component-explorer version than the explorer viewer uses.\n * \n * Use Symbol.for() instead of Symbol() so the same symbol is shared across\n * different versions of this package.\n *\n * @module fixtureApi\n */\n\n// ============================================================================\n// Types for fixture definition (re-exported for convenience)\n// ============================================================================\n\n/**\n * Disposable resource that can be cleaned up.\n */\nexport interface IDisposable {\n dispose(): void;\n}\n\n/** @deprecated Use IDisposable instead */\nexport type Disposable = IDisposable;\n\n/**\n * Result of a render operation.\n * Supports both sync and async rendering with cancellation.\n * All fields are optional for simple use cases.\n */\nexport interface RenderResult {\n /**\n * Resolves when the component is fully rendered and ready.\n * For sync renders, this can be omitted (treated as immediately ready).\n * Rejects if the render is aborted via the AbortSignal.\n */\n readonly ready?: Promise<void>;\n \n /**\n * Cleanup function. Called when the fixture is unmounted.\n * Can be omitted if no cleanup is needed.\n */\n dispose?(): void;\n}\n\n/**\n * What the render function can return.\n * - undefined: no cleanup needed, immediately ready\n * - RenderResult: object with optional ready/dispose\n * - Promise<...>: async render that resolves to undefined or RenderResult\n */\nexport type RenderReturn = RenderResult | undefined | void | Promise<RenderResult | undefined | void>;\n\n/**\n * Context passed to the render function.\n */\nexport interface RenderContext {\n /** Property values based on the property schema */\n readonly props: Record<string, unknown>;\n /** AbortSignal for cancellation; check signal.aborted or listen to 'abort' event */\n readonly signal: AbortSignal;\n}\n\n/**\n * Style definition for shadow DOM injection.\n */\nexport type StyleDefinition =\n | { readonly type: 'css'; readonly content: string }\n | { readonly type: 'url'; readonly href: string }\n | { readonly type: 'adopted'; readonly sheet: CSSStyleSheet };\n\n/**\n * Display mode for a component.\n */\nexport type DisplayMode = PageMode | ComponentMode;\n\n/**\n * Page mode - component fills a viewport with device presets.\n */\nexport interface PageMode {\n readonly type: 'page';\n readonly viewports: ViewportPreset[];\n}\n\n/**\n * Component mode - renders at natural size.\n */\nexport interface ComponentMode {\n readonly type: 'component';\n}\n\n/**\n * Viewport preset - either a named preset or custom dimensions.\n */\nexport type ViewportPreset =\n | ViewportPresetName\n | { readonly name: string; readonly width: number; readonly height: number };\n\nexport type ViewportPresetName = 'mobile' | 'tablet' | 'desktop';\n\n/**\n * Schema for a component property.\n */\nexport type PropertySchema =\n | BooleanProperty\n | StringProperty\n | NumberProperty\n | EnumProperty;\n\nexport interface BooleanProperty {\n readonly type: 'boolean';\n readonly name: string;\n readonly defaultValue: boolean;\n readonly description?: string;\n}\n\nexport interface StringProperty {\n readonly type: 'string';\n readonly name: string;\n readonly defaultValue: string;\n readonly description?: string;\n readonly multiline?: boolean;\n}\n\nexport interface NumberProperty {\n readonly type: 'number';\n readonly name: string;\n readonly defaultValue: number;\n readonly description?: string;\n readonly min?: number;\n readonly max?: number;\n readonly step?: number;\n}\n\nexport interface EnumProperty {\n readonly type: 'enum';\n readonly name: string;\n readonly defaultValue: string;\n readonly description?: string;\n readonly options: readonly string[];\n}\n\n// ============================================================================\n// Brand symbols - use Symbol.for() for cross-version compatibility\n// ============================================================================\n\n/** Brand symbol to identify single fixtures */\nexport const singleFixtureBrand = Symbol.for('@vscode/component-explorer/singleFixture/v1');\n\n/** Brand symbol to identify fixture groups */\nexport const fixtureGroupBrand = Symbol.for('@vscode/component-explorer/fixtureGroup/v1');\n\n/** Brand symbol to identify fixture variants */\nexport const fixtureVariantsBrand = Symbol.for('@vscode/component-explorer/fixtureVariants/v1');\n\n// ============================================================================\n// Define fixture options\n// ============================================================================\n\n/**\n * Options for defining a single component fixture.\n */\nexport interface DefineFixtureOptions {\n /**\n * Path in the explorer tree.\n * - `undefined` (default): use fixture filename only\n * - `'Foo/Bar'`: exact path (fixture filename NOT appended)\n * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})\n * \n * @throws Error if path contains empty segments (e.g., '/foo', 'foo//bar')\n */\n path?: string;\n\n /** Optional description for documentation */\n description?: string;\n\n /** How to isolate: 'iframe' for full isolation, 'shadow-dom' (default) for lighter isolation */\n isolation?: 'iframe' | 'shadow-dom';\n\n /** Display mode: defaults to { type: 'component' } */\n displayMode?: DisplayMode;\n\n /** Styles to inject (for shadow-dom isolation) */\n styles?: StyleDefinition[];\n\n /** Background pattern for the preview canvas: 'light' (default) or 'dark' for dark transparent pattern */\n background?: 'light' | 'dark';\n\n /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */\n labels?: readonly string[];\n\n /** Property definitions */\n properties?: PropertySchema[];\n\n /**\n * Render the component into the container.\n * \n * @param container - The DOM element to render into\n * @param context - Render context containing props and abort signal\n * @returns Optional RenderResult, or a Promise that resolves to one\n */\n render: (container: HTMLElement, context: RenderContext) => RenderReturn;\n}\n\n/** @deprecated Use DefineFixtureOptions instead */\nexport type DefineComponentOptions = DefineFixtureOptions;\n\n// ============================================================================\n// Fixture export types (opaque to the user, consumed by fixtureApiConsumer)\n// ============================================================================\n\n/**\n * A single fixture export created by defineFixture().\n */\nexport interface SingleFixtureExport {\n readonly [singleFixtureBrand]: true;\n readonly _options: DefineFixtureOptions;\n readonly _path?: string;\n}\n\n/**\n * Group entry: either a single fixture, a nested group, or variants.\n */\nexport type FixtureGroupEntry = SingleFixtureExport | FixtureGroupExport | FixtureVariantsExport;\n\n/**\n * A fixture group export created by defineFixtureGroup().\n */\nexport interface FixtureGroupExport {\n readonly [fixtureGroupBrand]: true;\n readonly _entries: { [key: string]: FixtureGroupEntry };\n readonly _path?: string;\n readonly _labels?: readonly string[];\n}\n\n/**\n * A fixture variants export created by defineFixtureVariants().\n */\nexport interface FixtureVariantsExport {\n readonly [fixtureVariantsBrand]: true;\n readonly _variants: { [key: string]: SingleFixtureExport };\n readonly _path?: string;\n readonly _labels?: readonly string[];\n}\n\n/**\n * Fixture export type - a single fixture, a group, or variants.\n */\nexport type FixtureExport = SingleFixtureExport | FixtureGroupExport | FixtureVariantsExport;\n\n/**\n * Input for defineFixtureGroup.\n */\nexport type FixtureGroupInput = { [key: string]: FixtureGroupEntry };\n\n/**\n * Options for defineFixtureGroup with optional path.\n */\nexport interface DefineFixtureGroupOptions {\n /**\n * Path in the explorer tree.\n * - `undefined` (default): use fixture filename only\n * - `'Foo/Bar'`: exact path (fixture filename NOT appended)\n * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})\n */\n path?: string;\n\n /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */\n labels?: readonly string[];\n}\n\n/**\n * Input for defineFixtureVariants (only single fixtures, no nesting).\n */\nexport type FixtureVariantsInput = { [key: string]: SingleFixtureExport };\n\n/**\n * Options for defineFixtureVariants with optional path.\n */\nexport interface DefineFixtureVariantsOptions {\n /**\n * Path in the explorer tree.\n * - `undefined` (default): use fixture filename only \n * - `'Foo/Bar'`: exact path (fixture filename NOT appended)\n * - `'Foo/Bar/'`: prefix (fixture filename IS appended → Foo/Bar/{filename})\n */\n path?: string;\n\n /** Labels for categorization and filtering (e.g. 'animation', 'blocks-ci') */\n labels?: readonly string[];\n}\n\n// ============================================================================\n// Define fixture functions\n// ============================================================================\n\n/**\n * Defines a single fixture.\n * \n * @example\n * ```ts\n * // Simple - no cleanup needed\n * export default defineFixture({\n * render: (container, { props }) => {\n * container.innerHTML = `<button>${props.label}</button>`;\n * },\n * });\n * \n * // With cleanup\n * export default defineFixture({\n * render: (container, { props }) => {\n * const root = createRoot(container);\n * root.render(<Button label={props.label} />);\n * return { dispose: () => root.unmount() };\n * },\n * });\n * \n * // Async render\n * export default defineFixture({\n * render: async (container, { props, signal }) => {\n * const data = await fetch(props.url, { signal });\n * container.innerHTML = await data.text();\n * return { dispose: () => { container.innerHTML = ''; } };\n * },\n * });\n * ```\n */\nexport function defineFixture(options: DefineFixtureOptions): SingleFixtureExport {\n return {\n [singleFixtureBrand]: true,\n _options: options,\n _path: options.path,\n };\n}\n\n/**\n * Defines a group of fixtures with support for nesting.\n * \n * @example\n * ```ts\n * export default defineFixtureGroup({\n * Primary: defineFixture({\n * render: (container) => { ... },\n * }),\n * Variants: defineFixtureGroup({\n * Small: defineFixture({ ... }),\n * Large: defineFixture({ ... }),\n * }),\n * });\n * ```\n */\nexport function defineFixtureGroup(entries: FixtureGroupInput): FixtureGroupExport;\nexport function defineFixtureGroup(options: DefineFixtureGroupOptions, entries: FixtureGroupInput): FixtureGroupExport;\nexport function defineFixtureGroup(optionsOrEntries: DefineFixtureGroupOptions | FixtureGroupInput, maybeEntries?: FixtureGroupInput): FixtureGroupExport {\n if (maybeEntries !== undefined) {\n const opts = optionsOrEntries as DefineFixtureGroupOptions;\n return {\n [fixtureGroupBrand]: true,\n _entries: maybeEntries,\n _path: opts.path,\n _labels: opts.labels,\n };\n }\n return {\n [fixtureGroupBrand]: true,\n _entries: optionsOrEntries as FixtureGroupInput,\n };\n}\n\n/**\n * Defines a group of fixture variants (no nesting allowed).\n * Variants are rendered horizontally by default and have a distinct icon in the tree.\n * \n * @example\n * ```ts\n * export default defineFixtureGroup({\n * Button: defineFixtureVariants({\n * Small: defineFixture({ ... }),\n * Medium: defineFixture({ ... }),\n * Large: defineFixture({ ... }),\n * }),\n * });\n * ```\n */\nexport function defineFixtureVariants(variants: FixtureVariantsInput): FixtureVariantsExport;\nexport function defineFixtureVariants(options: DefineFixtureVariantsOptions, variants: FixtureVariantsInput): FixtureVariantsExport;\nexport function defineFixtureVariants(optionsOrVariants: DefineFixtureVariantsOptions | FixtureVariantsInput, maybeVariants?: FixtureVariantsInput): FixtureVariantsExport {\n if (maybeVariants !== undefined) {\n const opts = optionsOrVariants as DefineFixtureVariantsOptions;\n return {\n [fixtureVariantsBrand]: true,\n _variants: maybeVariants,\n _path: opts.path,\n _labels: opts.labels,\n };\n }\n return {\n [fixtureVariantsBrand]: true,\n _variants: optionsOrVariants as FixtureVariantsInput,\n };\n}\n\n// ============================================================================\n// Render helpers\n// ============================================================================\n\n/** Already-resolved promise, reused for efficiency */\nconst resolvedPromise = Promise.resolve();\n\n/**\n * Helper for synchronous renders.\n * Executes the render function immediately and wraps the cleanup in a RenderResult.\n * \n * @param doRender - Function that renders synchronously and returns a cleanup function\n * @returns A RenderResult with an already-resolved ready promise\n * \n * @example\n * ```ts\n * render: (container, { props }) => syncRender(() => {\n * const el = document.createElement('button');\n * el.textContent = props.label;\n * container.appendChild(el);\n * return () => el.remove();\n * })\n * ```\n */\nexport function syncRender(doRender: () => (() => void) | IDisposable | void): RenderResult {\n const cleanup = doRender();\n return {\n ready: resolvedPromise,\n dispose: () => {\n if (typeof cleanup === 'function') {\n cleanup();\n } else if (cleanup && typeof cleanup.dispose === 'function') {\n cleanup.dispose();\n }\n },\n };\n}\n\n/**\n * Helper for asynchronous renders with cancellation support.\n * \n * @param signal - AbortSignal for cancellation\n * @param doRender - Async function that renders and returns a cleanup function.\n * Should check signal.aborted periodically for long operations.\n * @returns A RenderResult whose ready promise rejects with AbortError if cancelled\n * \n * @example\n * ```ts\n * render: (container, { props, signal }) => asyncRender(signal, async () => {\n * const data = await fetchData(props.url, { signal });\n * if (signal.aborted) return;\n * container.innerHTML = data;\n * return () => { container.innerHTML = ''; };\n * })\n * ```\n */\nexport function asyncRender(\n signal: AbortSignal,\n doRender: () => Promise<(() => void) | IDisposable | void>\n): RenderResult {\n let cleanup: (() => void) | IDisposable | void;\n let disposed = false;\n\n function isAborted(): boolean {\n return signal.aborted;\n }\n\n const ready = (async () => {\n if (isAborted()) {\n throw new DOMException('Render aborted', 'AbortError');\n }\n cleanup = await doRender();\n if (isAborted() || disposed) {\n // Cleanup immediately if aborted/disposed during render\n doCleanup();\n if (isAborted()) {\n throw new DOMException('Render aborted', 'AbortError');\n }\n }\n })();\n\n function doCleanup(): void {\n if (typeof cleanup === 'function') {\n cleanup();\n } else if (cleanup && typeof cleanup.dispose === 'function') {\n cleanup.dispose();\n }\n cleanup = undefined;\n }\n\n return {\n ready,\n dispose: () => {\n disposed = true;\n doCleanup();\n },\n };\n}\n"],"names":["singleFixtureBrand","fixtureGroupBrand","fixtureVariantsBrand","defineFixture","options","defineFixtureGroup","optionsOrEntries","maybeEntries","opts","defineFixtureVariants","optionsOrVariants","maybeVariants","resolvedPromise","syncRender","doRender","cleanup","asyncRender","signal","disposed","isAborted","ready","doCleanup"],"mappings":"AAqJO,MAAMA,IAAqB,OAAO,IAAI,6CAA6C,GAG7EC,IAAoB,OAAO,IAAI,4CAA4C,GAG3EC,IAAuB,OAAO,IAAI,+CAA+C;AA8KvF,SAASC,EAAcC,GAAoD;AAChF,SAAO;AAAA,IACL,CAACJ,CAAkB,GAAG;AAAA,IACtB,UAAUI;AAAA,IACV,OAAOA,EAAQ;AAAA,EAAA;AAEnB;AAoBO,SAASC,EAAmBC,GAAiEC,GAAsD;AACxJ,MAAIA,MAAiB,QAAW;AAC9B,UAAMC,IAAOF;AACb,WAAO;AAAA,MACL,CAACL,CAAiB,GAAG;AAAA,MACrB,UAAUM;AAAA,MACV,OAAOC,EAAK;AAAA,MACZ,SAASA,EAAK;AAAA,IAAA;AAAA,EAElB;AACA,SAAO;AAAA,IACL,CAACP,CAAiB,GAAG;AAAA,IACrB,UAAUK;AAAA,EAAA;AAEd;AAmBO,SAASG,EAAsBC,GAAwEC,GAA6D;AACzK,MAAIA,MAAkB,QAAW;AAC/B,UAAMH,IAAOE;AACb,WAAO;AAAA,MACL,CAACR,CAAoB,GAAG;AAAA,MACxB,WAAWS;AAAA,MACX,OAAOH,EAAK;AAAA,MACZ,SAASA,EAAK;AAAA,IAAA;AAAA,EAElB;AACA,SAAO;AAAA,IACL,CAACN,CAAoB,GAAG;AAAA,IACxB,WAAWQ;AAAA,EAAA;AAEf;AAOA,MAAME,IAAkB,QAAQ,QAAA;AAmBzB,SAASC,EAAWC,GAAiE;AAC1F,QAAMC,IAAUD,EAAA;AAChB,SAAO;AAAA,IACL,OAAOF;AAAA,IACP,SAAS,MAAM;AACb,MAAI,OAAOG,KAAY,aACrBA,EAAA,IACSA,KAAW,OAAOA,EAAQ,WAAY,cAC/CA,EAAQ,QAAA;AAAA,IAEZ;AAAA,EAAA;AAEJ;AAoBO,SAASC,EACdC,GACAH,GACc;AACd,MAAIC,GACAG,IAAW;AAEf,WAASC,IAAqB;AAC5B,WAAOF,EAAO;AAAA,EAChB;AAEA,QAAMG,KAAS,YAAY;AACzB,QAAID;AACF,YAAM,IAAI,aAAa,kBAAkB,YAAY;AAGvD,QADAJ,IAAU,MAAMD,EAAA,IACZK,EAAA,KAAeD,OAEjBG,EAAA,GACIF;AACF,YAAM,IAAI,aAAa,kBAAkB,YAAY;AAAA,EAG3D,GAAA;AAEA,WAASE,IAAkB;AACzB,IAAI,OAAON,KAAY,aACrBA,EAAA,IACSA,KAAW,OAAOA,EAAQ,WAAY,cAC/CA,EAAQ,QAAA,GAEVA,IAAU;AAAA,EACZ;AAEA,SAAO;AAAA,IACL,OAAAK;AAAA,IACA,SAAS,MAAM;AACb,MAAAF,IAAW,IACXG,EAAA;AAAA,IACF;AAAA,EAAA;AAEJ;"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { d as a, c as i, e as s, f as n, a as t, s as u } from "./index-DnRcKk60.js";
1
+ import { d as a, c as i, e as s, f as n, a as t, s as u } from "./index-BsQr630j.js";
2
2
  export {
3
3
  a as defineFixture,
4
4
  i as defineFixtureGroup,
@@ -0,0 +1,2 @@
1
+ export declare function registerFixtureShadowRoot(root: ShadowRoot): void;
2
+ //# sourceMappingURL=fixtureFocusTrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtureFocusTrap.d.ts","sourceRoot":"","sources":["../../src/lib/fixtureFocusTrap.ts"],"names":[],"mappings":"AAYA,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAEhE"}
@@ -0,0 +1,4 @@
1
+ import { ISettableObservable } from '@vscode/observables';
2
+ export declare function createQueryParamObservable(owner: object, paramName: string): ISettableObservable<string | undefined>;
3
+ export declare function buildQueryParamUrl(paramName: string, value: string): string;
4
+ //# sourceMappingURL=queryParamObservable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryParamObservable.d.ts","sourceRoot":"","sources":["../../src/lib/queryParamObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,mBAAmB,CAAC,MAAM,GAAG,SAAS,CAAC,CA0BzC;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI3E"}