@redvars/peacock 3.3.0 → 3.3.1

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 (105) hide show
  1. package/dist/assets/components.css +1 -1
  2. package/dist/assets/components.css.map +1 -1
  3. package/dist/assets/styles.css +1 -1
  4. package/dist/assets/styles.css.map +1 -1
  5. package/dist/button-group-DA7xoziD.js +292 -0
  6. package/dist/button-group-DA7xoziD.js.map +1 -0
  7. package/dist/button-group.js +6 -107
  8. package/dist/button-group.js.map +1 -1
  9. package/dist/{button-BGFJfbT2.js → button-trIfcqC7.js} +2 -3
  10. package/dist/{button-BGFJfbT2.js.map → button-trIfcqC7.js.map} +1 -1
  11. package/dist/button.js +2 -3
  12. package/dist/button.js.map +1 -1
  13. package/dist/{class-map-DpeNtqCn.js → class-map-hJdvjl-W.js} +9 -3
  14. package/dist/class-map-hJdvjl-W.js.map +1 -0
  15. package/dist/code-editor.js +5 -5
  16. package/dist/code-editor.js.map +1 -1
  17. package/dist/code-highlighter.js +5 -23
  18. package/dist/code-highlighter.js.map +1 -1
  19. package/dist/custom-elements-jsdocs.json +4706 -2471
  20. package/dist/custom-elements.json +3444 -1007
  21. package/dist/index.js +4 -5
  22. package/dist/index.js.map +1 -1
  23. package/dist/peacock-loader.js +26 -496
  24. package/dist/peacock-loader.js.map +1 -1
  25. package/dist/src/accordion/accordion-item.d.ts +1 -0
  26. package/dist/src/breadcrumb/breadcrumb/breadcrumb.d.ts +2 -0
  27. package/dist/src/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +1 -0
  28. package/dist/src/button/button-group/button-group.d.ts +4 -0
  29. package/dist/src/code-editor/code-editor.d.ts +4 -3
  30. package/dist/src/code-highlighter/code-highlighter.d.ts +4 -7
  31. package/dist/src/index.d.ts +4 -0
  32. package/dist/src/menu/index.d.ts +3 -0
  33. package/dist/src/menu/menu/MenuSurfaceController.d.ts +18 -0
  34. package/dist/src/menu/menu/menu.d.ts +54 -12
  35. package/dist/src/menu/menu-item/menu-item.d.ts +12 -5
  36. package/dist/src/menu/sub-menu/sub-menu.d.ts +36 -0
  37. package/dist/src/pagination/index.d.ts +1 -0
  38. package/dist/src/pagination/pagination.d.ts +38 -0
  39. package/dist/src/popover/PopoverController.d.ts +4 -1
  40. package/dist/src/table/index.d.ts +1 -0
  41. package/dist/src/table/table.d.ts +110 -0
  42. package/dist/src/tabs/tab-group.d.ts +4 -0
  43. package/dist/src/tabs/tab-panel.d.ts +1 -0
  44. package/dist/src/tabs/tab.d.ts +1 -0
  45. package/dist/src/tabs/tabs.d.ts +2 -0
  46. package/dist/src/tooltip/tooltip.d.ts +1 -3
  47. package/dist/src/tree-view/index.d.ts +2 -0
  48. package/dist/src/tree-view/tree-node.d.ts +69 -0
  49. package/dist/src/tree-view/tree-view.d.ts +40 -0
  50. package/dist/src/tree-view/wc-tree-view.d.ts +6 -0
  51. package/dist/test/icon.test.d.ts +1 -1
  52. package/dist/test/menu.test.d.ts +1 -0
  53. package/dist/test/sub-menu.test.d.ts +1 -0
  54. package/dist/test/tree-view.test.d.ts +1 -0
  55. package/dist/{slider-Dk9CFWTG.js → tree-view-CLolVlU0.js} +3317 -1180
  56. package/dist/tree-view-CLolVlU0.js.map +1 -0
  57. package/dist/tsconfig.tsbuildinfo +1 -1
  58. package/package.json +1 -1
  59. package/readme.md +40 -40
  60. package/src/accordion/accordion-item.ts +2 -1
  61. package/src/breadcrumb/breadcrumb/breadcrumb.ts +3 -0
  62. package/src/breadcrumb/breadcrumb-item/breadcrumb-item.ts +1 -0
  63. package/src/button/button-group/button-group.ts +6 -0
  64. package/src/code-editor/code-editor.ts +4 -3
  65. package/src/code-highlighter/code-highlighter.ts +4 -22
  66. package/src/divider/divider.scss +2 -2
  67. package/src/empty-state/empty-state.scss +1 -1
  68. package/src/empty-state/empty-state.ts +1 -1
  69. package/src/index.ts +6 -2
  70. package/src/menu/index.ts +3 -0
  71. package/src/menu/menu/MenuSurfaceController.ts +61 -0
  72. package/src/menu/{menu-list/menu-list.scss → menu/menu.scss} +19 -4
  73. package/src/menu/menu/menu.ts +389 -81
  74. package/src/menu/menu-item/menu-item.ts +115 -36
  75. package/src/menu/sub-menu/sub-menu.scss +7 -0
  76. package/src/menu/sub-menu/sub-menu.ts +243 -0
  77. package/src/pagination/index.ts +1 -0
  78. package/src/pagination/pagination.scss +59 -0
  79. package/src/pagination/pagination.ts +135 -0
  80. package/src/peacock-loader.ts +25 -11
  81. package/src/popover/PopoverController.ts +13 -7
  82. package/src/table/index.ts +1 -0
  83. package/src/table/table.scss +174 -0
  84. package/src/table/table.ts +475 -0
  85. package/src/tabs/tab-group.ts +12 -6
  86. package/src/tabs/tab-panel.ts +1 -0
  87. package/src/tabs/tab.ts +1 -0
  88. package/src/tabs/tabs.scss +6 -5
  89. package/src/tabs/tabs.ts +5 -3
  90. package/src/text/text.css-component.scss +6 -3
  91. package/src/tooltip/tooltip.scss +16 -13
  92. package/src/tooltip/tooltip.ts +7 -9
  93. package/src/tree-view/demo/index.html +57 -0
  94. package/src/tree-view/index.ts +2 -0
  95. package/src/tree-view/tree-node.scss +101 -0
  96. package/src/tree-view/tree-node.ts +268 -0
  97. package/src/tree-view/tree-view.scss +12 -0
  98. package/src/tree-view/tree-view.ts +182 -0
  99. package/src/tree-view/wc-tree-view.ts +9 -0
  100. package/dist/class-map-DpeNtqCn.js.map +0 -1
  101. package/dist/slider-Dk9CFWTG.js.map +0 -1
  102. package/dist/src/menu/menu-list/menu-list.d.ts +0 -22
  103. package/dist/state-8v48Exzh.js +0 -10
  104. package/dist/state-8v48Exzh.js.map +0 -1
  105. package/src/menu/menu-list/menu-list.ts +0 -48
@@ -0,0 +1,110 @@
1
+ import { LitElement } from 'lit';
2
+ export interface TableColumn {
3
+ name: string;
4
+ label: string;
5
+ width?: number;
6
+ fixed?: boolean;
7
+ template?: (row: any, column: TableColumn) => string;
8
+ }
9
+ /**
10
+ * @label Table
11
+ * @tag wc-table
12
+ * @rawTag table
13
+ * @summary A configurable component for displaying tabular data.
14
+ * @overview
15
+ * <p>The table component displays rows of data with support for sorting, pagination, row selection, and fixed columns.</p>
16
+ *
17
+ * @fires {CustomEvent} cell-click - Dispatched when a table cell is clicked.
18
+ * @fires {CustomEvent} selection-change - Dispatched when the row selection changes.
19
+ * @fires {CustomEvent} sort - Dispatched when the table is sorted.
20
+ * @fires {CustomEvent} page - Dispatched when the page or page size changes.
21
+ *
22
+ * @example
23
+ * ```html
24
+ * <wc-table columns="[{'name': 'name','label': 'Name','width': 16},{'name': 'age','label': 'Age','width': 7}]" data="[{'name': 'John','age': 30},{'name': 'Jane','age': 25}]"></wc-table>
25
+ * ```
26
+ * @tags display, data
27
+ */
28
+ export declare class Table extends LitElement {
29
+ static styles: import("lit").CSSResultGroup[];
30
+ /**
31
+ * Grid columns configuration.
32
+ * Each column can have: name, label, width (px), fixed (boolean), template (function).
33
+ */
34
+ columns: TableColumn[];
35
+ /**
36
+ * Grid data to display on table.
37
+ */
38
+ data: any[];
39
+ /**
40
+ * Row selection type. Set to `"checkbox"` to enable checkbox selection.
41
+ */
42
+ selectionType: 'checkbox' | undefined;
43
+ /**
44
+ * Array of selected row key values.
45
+ */
46
+ selectedRowKeys: string[];
47
+ /**
48
+ * The field name used as the unique key for each row. Defaults to `"id"`.
49
+ */
50
+ keyField: string;
51
+ /**
52
+ * If true, sorting and pagination are managed externally (controlled mode).
53
+ */
54
+ managed: boolean;
55
+ /**
56
+ * If true, columns are sortable. Defaults to `true`.
57
+ */
58
+ sortable: boolean;
59
+ /**
60
+ * The field name currently used for sorting.
61
+ */
62
+ sortBy: string;
63
+ /**
64
+ * The current sort order. Possible values are `"asc"` and `"desc"`. Defaults to `"asc"`.
65
+ */
66
+ sortOrder: 'asc' | 'desc';
67
+ /**
68
+ * If true, pagination is enabled. Defaults to `true`.
69
+ */
70
+ paginate: boolean;
71
+ /**
72
+ * The current page number (1-based). Defaults to `1`.
73
+ */
74
+ page: number;
75
+ /**
76
+ * The number of rows per page. Defaults to `10`.
77
+ */
78
+ pageSize: number;
79
+ /**
80
+ * Total number of items (used in managed/controlled mode).
81
+ */
82
+ totalItems: number | undefined;
83
+ /**
84
+ * Headline text shown when the table has no data.
85
+ */
86
+ emptyStateHeadline: string;
87
+ /**
88
+ * Description text shown when the table has no data.
89
+ */
90
+ emptyStateDescription: string;
91
+ private hoveredCell;
92
+ private isSelectAll;
93
+ private isSelectAllIntermediate;
94
+ private isHorizontallyScrolled;
95
+ private onCellMouseOverThrottled;
96
+ private onSelectAllClick;
97
+ private onRowSelectClick;
98
+ private onSelectChange;
99
+ private onCellClick;
100
+ private onScrollContainer;
101
+ private get totalColumnsWidth();
102
+ private getTotalItems;
103
+ private getSortIcon;
104
+ private onSortClick;
105
+ private renderHeader;
106
+ private renderBody;
107
+ private renderEmptyState;
108
+ private renderPagination;
109
+ render(): import("lit-html").TemplateResult<1>;
110
+ }
@@ -1,4 +1,6 @@
1
1
  import { LitElement } from 'lit';
2
+ import { Tabs } from './tabs.js';
3
+ import { TabPanel } from './tab-panel.js';
2
4
  /**
3
5
  * @label Tab Group
4
6
  * @tag wc-tab-group
@@ -25,6 +27,8 @@ import { LitElement } from 'lit';
25
27
  */
26
28
  export declare class TabGroup extends LitElement {
27
29
  static styles: import("lit").CSSResultGroup[];
30
+ static Tabs: typeof Tabs;
31
+ static TabPanel: typeof TabPanel;
28
32
  variant: 'line' | 'line-secondary' | 'contained' | 'pill';
29
33
  private uid;
30
34
  connectedCallback(): void;
@@ -3,6 +3,7 @@ import { LitElement } from 'lit';
3
3
  * @label Tab Panel
4
4
  * @tag wc-tab-panel
5
5
  * @rawTag tab-panel
6
+ * @parentRawTag tab-group
6
7
  *
7
8
  * @summary Content panel for tabs.
8
9
  * @overview
@@ -3,6 +3,7 @@ import { LitElement, nothing } from 'lit';
3
3
  * @label Tab
4
4
  * @tag wc-tab
5
5
  * @rawTag tab
6
+ * @parentRawTag tabs
6
7
  *
7
8
  * @summary A tab component for use within tabs.
8
9
  * @overview
@@ -1,4 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
+ import { Tab } from './tab.js';
2
3
  /**
3
4
  * @label Tabs
4
5
  * @tag wc-tabs
@@ -19,6 +20,7 @@ import { LitElement } from 'lit';
19
20
  */
20
21
  export declare class Tabs extends LitElement {
21
22
  static styles: import("lit").CSSResultGroup[];
23
+ static Tab: typeof Tab;
22
24
  managed: boolean;
23
25
  connectedCallback(): void;
24
26
  disconnectedCallback(): void;
@@ -9,9 +9,7 @@ export type TooltipTrigger = 'hover' | 'focus' | 'click';
9
9
  *
10
10
  * @example
11
11
  * ```html
12
- * <wc-tooltip content="Tooltip text">
13
- * <button>Hover me</button>
14
- * </wc-tooltip>
12
+ * <wc-tooltip preview>Tooltip</wc-tooltip>
15
13
  * ```
16
14
  */
17
15
  export declare class Tooltip extends LitElement {
@@ -0,0 +1,2 @@
1
+ export { TreeNode } from './tree-node.js';
2
+ export { TreeView } from './tree-view.js';
@@ -0,0 +1,69 @@
1
+ import { LitElement } from 'lit';
2
+ /**
3
+ * @label Tree Node
4
+ * @tag wc-tree-node
5
+ * @rawTag tree-node
6
+ * @parentRawTag tree-view
7
+ * @summary A tree node represents a single item in a hierarchical tree structure. It supports nesting, icons, links, and keyboard navigation.
8
+ *
9
+ * @example
10
+ * ```html
11
+ * <wc-tree-view>
12
+ * <wc-tree-node label="Parent">
13
+ * <wc-tree-node label="Child"></wc-tree-node>
14
+ * </wc-tree-node>
15
+ * </wc-tree-view>
16
+ * ```
17
+ * @tags navigation
18
+ */
19
+ export declare class TreeNode extends LitElement {
20
+ static styles: import("lit").CSSResultGroup[];
21
+ /**
22
+ * The value used to identify this node when selected.
23
+ */
24
+ value: string;
25
+ /**
26
+ * The display label for this node.
27
+ */
28
+ label: string;
29
+ /**
30
+ * Optional icon name to display before the label.
31
+ */
32
+ icon: string;
33
+ /**
34
+ * Optional hyperlink to navigate to on click.
35
+ */
36
+ href: string;
37
+ /**
38
+ * Sets or retrieves the window or frame at which to target content.
39
+ */
40
+ target: string;
41
+ /**
42
+ * If true, the user cannot interact with the node.
43
+ */
44
+ disabled: boolean;
45
+ /**
46
+ * Whether the node is currently selected.
47
+ */
48
+ selected: boolean;
49
+ /**
50
+ * Whether child nodes are visible.
51
+ */
52
+ expanded: boolean;
53
+ /**
54
+ * The nesting depth level (set automatically by the parent tree-view).
55
+ */
56
+ level: number;
57
+ private readonly _nativeElement;
58
+ focus(): void;
59
+ blur(): void;
60
+ private _getChildNodes;
61
+ connectedCallback(): void;
62
+ private _syncHostAria;
63
+ private _updateChildLevels;
64
+ private _handleClick;
65
+ private _handleKeyDown;
66
+ updated(changedProps: Map<string, unknown>): void;
67
+ private _renderContent;
68
+ render(): import("lit-html").TemplateResult<1>;
69
+ }
@@ -0,0 +1,40 @@
1
+ import { LitElement } from 'lit';
2
+ import { TreeNode } from './tree-node.js';
3
+ /**
4
+ * @label Tree View
5
+ * @tag wc-tree-view
6
+ * @rawTag tree-view
7
+ * @summary A tree view is a hierarchical structure that provides nested levels of navigation. It supports keyboard navigation, single/multi select, and expandable nodes.
8
+ *
9
+ * @example
10
+ * ```html
11
+ * <wc-tree-view>
12
+ * <wc-tree-node label="Parent" expanded>
13
+ * <wc-tree-node label="Child 1"></wc-tree-node>
14
+ * <wc-tree-node label="Child 2"></wc-tree-node>
15
+ * </wc-tree-node>
16
+ * </wc-tree-view>
17
+ * ```
18
+ * @tags navigation
19
+ */
20
+ export declare class TreeView extends LitElement {
21
+ static styles: import("lit").CSSResultGroup[];
22
+ /**
23
+ * The value of the currently selected node.
24
+ */
25
+ selectedNode: string;
26
+ connectedCallback(): void;
27
+ updated(changedProps: Map<string, unknown>): void;
28
+ disconnectedCallback(): void;
29
+ private _getTopLevelNodes;
30
+ private _getAllVisibleNodes;
31
+ private _onNodeClick;
32
+ private _updateSelectedState;
33
+ private _clearSelectedState;
34
+ private _syncSelectedStateFromProperty;
35
+ private _onSlotChange;
36
+ private _collectAllNodes;
37
+ private _onKeyDown;
38
+ render(): import("lit-html").TemplateResult<1>;
39
+ static Node: typeof TreeNode;
40
+ }
@@ -0,0 +1,6 @@
1
+ import { TreeView } from './tree-view.js';
2
+ import { TreeNode } from './tree-node.js';
3
+ export declare class WcTreeNode extends TreeNode {
4
+ }
5
+ export declare class WcTreeView extends TreeView {
6
+ }
@@ -1 +1 @@
1
- import '../src/p-icon.js';
1
+ import '../src/icon/p-icon.js';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ import '../src/tree-view/wc-tree-view.js';