@kubex/zinc 1.0.4 → 1.0.5

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 (153) hide show
  1. package/dist/custom-elements.json +1034 -111
  2. package/dist/vscode.html-custom-data.json +85 -15
  3. package/dist/web-types.json +215 -24
  4. package/dist/zn.d.ts +1234 -888
  5. package/dist/zn.min.css +1 -1
  6. package/dist/zn.min.js +1979 -940
  7. package/docs/_includes/default.njk +1 -0
  8. package/docs/assets/scripts/docs.js +4 -5
  9. package/docs/assets/scripts/search.js +0 -9
  10. package/docs/assets/styles/docs.css +3 -3
  11. package/docs/data/data-table.json +79 -0
  12. package/docs/data/products-table.json +36 -0
  13. package/docs/eleventy.config.cjs +3 -0
  14. package/docs/pages/components/data-select.md +10 -0
  15. package/docs/pages/components/data-table.md +84 -45
  16. package/docs/pages/components/dialog.md +1 -1
  17. package/docs/pages/components/editor.md +1 -3
  18. package/docs/pages/components/filter-wrapper.md +20 -0
  19. package/docs/pages/components/icon.md +2 -0
  20. package/docs/pages/components/item.md +2 -2
  21. package/docs/pages/components/menu-item.md +12 -3
  22. package/docs/pages/components/panel.md +17 -0
  23. package/docs/pages/components/progress-tile.md +17 -1
  24. package/docs/pages/components/settings-container.md +137 -0
  25. package/docs/pages/components/textarea.md +1 -1
  26. package/package.json +3 -1
  27. package/scss/_root.scss +26 -0
  28. package/scss/boot.scss +27 -1
  29. package/scss/mixins/index.scss +30 -1
  30. package/scss/shared/_base.scss +1 -1
  31. package/scss/shared/_button.scss +1 -1
  32. package/scss/shared/layout.scss +7 -0
  33. package/scss/themes/_dark.scss +5 -5
  34. package/scss/themes/_light.scss +6 -5
  35. package/scss/variables/index.scss +9 -0
  36. package/src/components/alert/alert.component.ts +1 -1
  37. package/src/components/alert/alert.scss +18 -4
  38. package/src/components/button/button.component.ts +6 -2
  39. package/src/components/button/button.scss +16 -1
  40. package/src/components/button-menu/button-menu.component.ts +23 -15
  41. package/src/components/button-menu/button-menu.scss +4 -4
  42. package/src/components/checkbox/checkbox.component.ts +5 -1
  43. package/src/components/checkbox/checkbox.scss +1 -1
  44. package/src/components/chip/chip.component.ts +7 -3
  45. package/src/components/chip/chip.scss +9 -1
  46. package/src/components/collapsible/collapsible.component.ts +48 -2
  47. package/src/components/confirm/confirm.component.ts +1 -2
  48. package/src/components/content-block/content-block.component.ts +25 -1
  49. package/src/components/content-block/content-block.scss +8 -0
  50. package/src/components/data-select/data-select.component.ts +1 -1
  51. package/src/components/data-table/data-table.component.ts +361 -422
  52. package/src/components/data-table/data-table.scss +6 -1
  53. package/src/components/datepicker/datepicker.scss +1 -1
  54. package/src/components/dialog/dialog.component.ts +52 -33
  55. package/src/components/dialog/dialog.scss +15 -1
  56. package/src/components/dropdown/dropdown.component.ts +1 -1
  57. package/src/components/editor/editor.component.ts +196 -158
  58. package/src/components/editor/editor.scss +25 -5
  59. package/src/components/editor/modules/ai/index.ts +281 -0
  60. package/src/components/editor/modules/ai/panel/ai-panel.component.ts +102 -0
  61. package/src/components/editor/modules/ai/panel/ai-panel.scss +83 -0
  62. package/src/components/editor/modules/ai/tooltip/ai-tooltip.component.ts +30 -0
  63. package/src/components/editor/modules/ai/tooltip/ai-tooltip.scss +28 -0
  64. package/src/components/editor/modules/{attachment-module.ts → attachment/attachment.ts} +7 -7
  65. package/src/components/editor/modules/context-menu/context-menu-component.ts +115 -0
  66. package/src/components/editor/modules/context-menu/context-menu.scss +49 -0
  67. package/src/components/editor/modules/context-menu/context-menu.ts +296 -0
  68. package/src/components/editor/modules/context-menu/quick-action/index.ts +12 -0
  69. package/src/components/editor/modules/context-menu/quick-action/quick-action.component.ts +18 -0
  70. package/src/components/editor/modules/date-picker/date-picker.ts +77 -0
  71. package/src/components/editor/modules/dialog/dialog.component.ts +115 -0
  72. package/src/components/editor/modules/dialog/dialog.scss +43 -0
  73. package/src/components/editor/modules/dialog/dialog.ts +46 -0
  74. package/src/components/editor/modules/{drag-drop-module.ts → drag-drop/drag-drop.ts} +6 -6
  75. package/src/components/editor/modules/emoji/emoji.ts +106 -0
  76. package/src/components/editor/modules/emoji/headless/headless-emoji.component.ts +122 -0
  77. package/src/components/editor/modules/emoji/headless/headless-emoji.scss +52 -0
  78. package/src/components/editor/modules/emoji/headless/headless-emoji.ts +223 -0
  79. package/src/components/editor/modules/{image-resize-module/image-resize-module.ts → image-resize/image-resize.ts} +5 -5
  80. package/src/components/editor/modules/{time-tracking-module.ts → time-tracking/time-tracking.ts} +5 -5
  81. package/src/components/editor/modules/toolbar/tool/index.ts +12 -0
  82. package/src/components/editor/modules/toolbar/tool/tool.component.ts +30 -0
  83. package/src/components/editor/modules/toolbar/tool/tool.scss +5 -0
  84. package/src/components/editor/modules/toolbar/toolbar.component.ts +738 -0
  85. package/src/components/editor/modules/toolbar/toolbar.scss +98 -0
  86. package/src/components/editor/modules/toolbar/toolbar.ts +328 -0
  87. package/src/components/expanding-action/expanding-action.component.ts +2 -2
  88. package/src/components/expanding-action/expanding-action.scss +2 -2
  89. package/src/components/filter-wrapper/filter-wrapper.component.ts +91 -0
  90. package/src/components/filter-wrapper/filter-wrapper.scss +11 -0
  91. package/src/components/filter-wrapper/filter-wrapper.test.ts +10 -0
  92. package/src/components/filter-wrapper/index.ts +12 -0
  93. package/src/components/header/header.component.ts +1 -1
  94. package/src/components/header/header.scss +8 -1
  95. package/src/components/hover-container/hover-container.scss +39 -36
  96. package/src/components/icon/icon.component.ts +11 -5
  97. package/src/components/icon/icon.scss +15 -2
  98. package/src/components/inline-edit/inline-edit.component.ts +28 -3
  99. package/src/components/inline-edit/inline-edit.scss +4 -1
  100. package/src/components/input/input.scss +1 -1
  101. package/src/components/item/item.component.ts +30 -19
  102. package/src/components/item/item.scss +56 -14
  103. package/src/components/linked-select/linked-select.component.ts +5 -1
  104. package/src/components/menu/menu.component.ts +1 -0
  105. package/src/components/menu/menu.scss +1 -1
  106. package/src/components/menu-item/menu-item.component.ts +22 -4
  107. package/src/components/menu-item/menu-item.scss +54 -7
  108. package/src/components/navbar/navbar.component.ts +7 -1
  109. package/src/components/navbar/navbar.scss +26 -16
  110. package/src/components/option/option.component.ts +4 -1
  111. package/src/components/option/option.scss +9 -0
  112. package/src/components/page-nav/page-nav.component.ts +2 -2
  113. package/src/components/page-nav/page-nav.scss +4 -4
  114. package/src/components/panel/panel.component.ts +20 -9
  115. package/src/components/panel/panel.scss +5 -1
  116. package/src/components/popup/popup.component.ts +16 -2
  117. package/src/components/progress-tile/progress-tile.component.ts +10 -4
  118. package/src/components/progress-tile/progress-tile.scss +7 -4
  119. package/src/components/query-builder/query-builder.component.ts +1 -1
  120. package/src/components/radio/radio.scss +1 -1
  121. package/src/components/scroll-container/scroll-container.component.ts +56 -9
  122. package/src/components/scroll-container/scroll-container.scss +37 -2
  123. package/src/components/select/select.component.ts +3 -0
  124. package/src/components/select/select.scss +1 -1
  125. package/src/components/settings-container/index.ts +12 -0
  126. package/src/components/settings-container/settings-container.component.ts +226 -0
  127. package/src/components/settings-container/settings-container.scss +92 -0
  128. package/src/components/settings-container/settings-container.test.ts +10 -0
  129. package/src/components/skeleton/skeleton.scss +5 -4
  130. package/src/components/sp/sp.component.ts +2 -0
  131. package/src/components/sp/sp.scss +2 -0
  132. package/src/components/split-button/split-button.component.ts +24 -18
  133. package/src/components/split-pane/split-pane.component.ts +5 -5
  134. package/src/components/stat/stat.component.ts +5 -1
  135. package/src/components/stat/stat.scss +24 -1
  136. package/src/components/style/style.component.ts +18 -0
  137. package/src/components/tabs/tabs.component.ts +12 -1
  138. package/src/components/textarea/textarea.component.ts +3 -1
  139. package/src/components/textarea/textarea.scss +21 -2
  140. package/src/components/vertical-stepper/vertical-stepper.scss +1 -1
  141. package/src/internal/form.ts +3 -1
  142. package/src/internal/slot.ts +29 -3
  143. package/src/utilities/on.ts +7 -8
  144. package/src/utilities/query.ts +5 -1
  145. package/src/wc.scss +7 -0
  146. package/src/zinc.ts +5 -0
  147. package/src/components/editor/modules/dialog-module/dialog-module.component.ts +0 -289
  148. package/src/components/editor/modules/dialog-module/dialog-module.scss +0 -115
  149. package/src/components/editor/modules/dialog-module/dialog-module.ts +0 -99
  150. package/src/components/editor/modules/events/zn-show-canned-response-dialog.ts +0 -15
  151. package/src/components/editor/modules/menu-module/menu-module.component.ts +0 -149
  152. package/src/components/editor/modules/menu-module/menu-module.scss +0 -17
  153. package/src/components/editor/modules/menu-module/menu-module.ts +0 -203
package/dist/zn.d.ts CHANGED
@@ -199,6 +199,7 @@ declare module "internal/slot" {
199
199
  hostConnected(): void;
200
200
  hostDisconnected(): void;
201
201
  getSlot(slotName: string): Element;
202
+ getDefaultSlot(): HTMLElement[];
202
203
  getSlots(slotName: string): NodeListOf<HTMLElement>;
203
204
  private handleSlotChange;
204
205
  }
@@ -475,7 +476,7 @@ declare module "utilities/md5" {
475
476
  declare module "components/icon/icon.component" {
476
477
  import { type CSSResultGroup } from 'lit';
477
478
  import ZincElement from "internal/zinc-element";
478
- type IconLibrary = "material" | "material-outlined" | "material-round" | "material-sharp" | "material-two-tone" | "material-symbols-outlined" | "gravatar" | "libravatar" | "avatar" | "brands" | "line";
479
+ type IconLibrary = "src" | "material" | "material-outlined" | "material-round" | "material-sharp" | "material-two-tone" | "material-symbols-outlined" | "gravatar" | "libravatar" | "avatar" | "brands" | "line";
479
480
  export type IconColor = "default" | "primary" | "accent" | "info" | "warning" | "error" | "success" | "white" | "disabled" | "red" | "blue" | "green" | "orange" | "yellow" | "indigo" | "violet" | "pink" | "grey";
480
481
  /**
481
482
  * @summary Short summary of the component's intended use.
@@ -502,6 +503,8 @@ declare module "components/icon/icon.component" {
502
503
  round: boolean;
503
504
  library: IconLibrary;
504
505
  color: IconColor;
506
+ padded: boolean;
507
+ squared: boolean;
505
508
  gravatarOptions: string;
506
509
  defaultLibrary: IconLibrary;
507
510
  convertToLibrary(input: string): IconLibrary;
@@ -557,12 +560,14 @@ declare module "components/menu-item/menu-item.component" {
557
560
  type: 'normal' | 'checkbox';
558
561
  /** Draws the item in a checked state. */
559
562
  checked: boolean;
563
+ checkedPosition: 'left' | 'right';
560
564
  /** A unique value to store in the menu item. This can be used as a way to identify menu items when selected. */
561
565
  value: string;
562
566
  /** Draws the menu item in a loading state. */
563
567
  loading: boolean;
564
568
  /** Draws the menu item in a disabled state, preventing selection. */
565
569
  disabled: boolean;
570
+ color: string;
566
571
  href: string;
567
572
  dataPath: string;
568
573
  target: '_self' | '_blank' | '_parent' | '_top' | string;
@@ -608,6 +613,9 @@ declare module "events/zn-select" {
608
613
  }
609
614
  }
610
615
  }
616
+ declare module "utilities/query" {
617
+ export function deepQuerySelectorAll(selector: string, element: Element, stopSelector: string): Element[];
618
+ }
611
619
  declare module "internal/offset" {
612
620
  /**
613
621
  * Returns an element's offset relative to its parent. Similar to element.offsetTop and element.offsetLeft, except the
@@ -700,6 +708,7 @@ declare module "components/dialog/dialog.component" {
700
708
  * `no-header`, as it is required for proper accessibility. If you need to display HTML, use the `label` slot instead.
701
709
  */
702
710
  label: string;
711
+ cosmic: boolean;
703
712
  /**
704
713
  * Disables the header. This will also remove the default close button, so please ensure you provide an easy,
705
714
  * accessible way to close the dialog.
@@ -734,9 +743,6 @@ declare module "components/dialog/index" {
734
743
  }
735
744
  }
736
745
  }
737
- declare module "utilities/query" {
738
- export function deepQuerySelectorAll(selector: string, element: Element, stopSelector: string): Element[];
739
- }
740
746
  declare module "components/confirm/confirm.component" {
741
747
  import { type CSSResultGroup, type PropertyValues } from 'lit';
742
748
  import ZincElement from "internal/zinc-element";
@@ -1077,6 +1083,7 @@ declare module "components/button/button.component" {
1077
1083
  square: boolean;
1078
1084
  dropdownCloser: boolean;
1079
1085
  notification: number;
1086
+ mutedNotifications: boolean;
1080
1087
  verticalAlign: 'start' | 'center' | 'end';
1081
1088
  content: string;
1082
1089
  icon: string;
@@ -1189,15 +1196,22 @@ declare module "components/collapsible/collapsible.component" {
1189
1196
  caption: string;
1190
1197
  description: string;
1191
1198
  label: string;
1199
+ showNumber: boolean;
1200
+ countElement: string;
1192
1201
  expanded: boolean;
1193
1202
  defaultState: 'open' | 'closed';
1194
1203
  localStorage: boolean;
1195
1204
  storeKey: string;
1196
1205
  storeTtl: number;
1197
1206
  flush: boolean;
1207
+ numberOfItems: number;
1198
1208
  protected _store: Store;
1209
+ private readonly hasSlotController;
1210
+ private observer;
1199
1211
  connectedCallback(): void;
1212
+ disconnectedCallback(): void;
1200
1213
  handleCollapse: (e: MouseEvent) => void;
1214
+ recalculateNumberOfItems: () => void;
1201
1215
  render(): import("lit").TemplateResult<1>;
1202
1216
  }
1203
1217
  }
@@ -1236,7 +1250,7 @@ declare module "components/alert/alert.component" {
1236
1250
  icon: string;
1237
1251
  caption: string;
1238
1252
  collapse: boolean;
1239
- level: 'primary' | 'error' | 'info' | 'success' | 'warning' | 'note';
1253
+ level: 'primary' | 'error' | 'info' | 'success' | 'warning' | 'note' | 'cosmic';
1240
1254
  size: 'small' | 'medium' | 'large';
1241
1255
  render(): import("lit").TemplateResult<1>;
1242
1256
  hideAlert(): void;
@@ -1608,6 +1622,48 @@ declare module "components/skeleton/index" {
1608
1622
  }
1609
1623
  }
1610
1624
  }
1625
+ declare module "components/data-select/providers/country-data-provider" {
1626
+ import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
1627
+ export const countryDataProvider: LocalDataProvider<DataProviderOption>;
1628
+ }
1629
+ declare module "components/data-select/providers/currency-data-provider" {
1630
+ import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
1631
+ export const currencyDataProvider: LocalDataProvider<DataProviderOption>;
1632
+ }
1633
+ declare module "components/data-select/providers/color-data-provider" {
1634
+ import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
1635
+ export const colors: string[];
1636
+ export const colorDataProvider: LocalDataProvider<DataProviderOption>;
1637
+ }
1638
+ declare module "components/data-select/providers/country-code-data-provider" {
1639
+ import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
1640
+ export const countryDialPrefixDataProvider: LocalDataProvider<DataProviderOption>;
1641
+ }
1642
+ declare module "components/data-select/providers/provider" {
1643
+ import type { HTMLTemplateResult } from "lit";
1644
+ /**
1645
+ * Providers are what the data select component uses to get data. They are
1646
+ * responsible for defining the data.
1647
+ */
1648
+ export interface LocalDataProvider<T> {
1649
+ getName: string;
1650
+ getData: T[];
1651
+ }
1652
+ export interface RemoteDataProvider<T> {
1653
+ getName: string;
1654
+ getData: () => Promise<T[]>;
1655
+ }
1656
+ export interface DataProviderOption {
1657
+ key: string;
1658
+ value: string;
1659
+ prefix?: string | HTMLTemplateResult;
1660
+ }
1661
+ export const emptyDataProvider: LocalDataProvider<DataProviderOption>;
1662
+ export * from "components/data-select/providers/country-data-provider";
1663
+ export * from "components/data-select/providers/currency-data-provider";
1664
+ export * from "components/data-select/providers/color-data-provider";
1665
+ export * from "components/data-select/providers/country-code-data-provider";
1666
+ }
1611
1667
  declare module "internal/animate" {
1612
1668
  /**
1613
1669
  * Animates an element using keyframes. Returns a promise that resolves after the animation completes or gets canceled.
@@ -1695,6 +1751,7 @@ declare module "components/option/option.component" {
1695
1751
  };
1696
1752
  private cachedTextLabel;
1697
1753
  private readonly localize;
1754
+ multiple: boolean;
1698
1755
  defaultSlot: HTMLSlotElement;
1699
1756
  current: boolean;
1700
1757
  selected: boolean;
@@ -1938,119 +1995,20 @@ declare module "components/select/index" {
1938
1995
  }
1939
1996
  }
1940
1997
  }
1941
- declare module "components/data-table/data-table.component" {
1942
- import { type CSSResultGroup, type TemplateResult } from 'lit';
1943
- import { type ZnFilterChangeEvent } from "events/zn-filter-change";
1998
+ declare module "components/data-select/data-select.component" {
1999
+ import { type DataProviderOption, type LocalDataProvider } from "components/data-select/providers/provider";
2000
+ import { FormControlController } from "internal/form";
1944
2001
  import ZincElement from "internal/zinc-element";
1945
- import ZnButton from "components/button/index";
1946
- import ZnButtonGroup from "components/button-group/index";
1947
- import ZnChip from "components/chip/index";
1948
- import ZnConfirm from "components/confirm/index";
1949
- import ZnDropdown from "components/dropdown/index";
1950
- import ZnEmptyState from "components/empty-state/index";
1951
- import ZnHoverContainer from "components/hover-container/index";
1952
- import ZnMenu from "components/menu/index";
1953
- import ZnMenuItem from "components/menu-item/index";
1954
- import ZnSkeleton from "components/skeleton/index";
1955
- interface TableData {
1956
- page: number;
1957
- per_page: number;
1958
- total: number;
1959
- total_pages: number;
1960
- data: any[];
1961
- }
1962
- export enum ActionSlots {
1963
- delete = "delete-action",
1964
- modify = "modify-action",
1965
- create = "create-action",
1966
- filter = "filter",
1967
- sort = "sort"
1968
- }
1969
- interface RenderDataValue {
1970
- value: string | number;
1971
- type: string;
1972
- tag: string;
1973
- url: string;
1974
- target: string;
1975
- gaid?: string;
1976
- html?: string;
1977
- color?: string;
1978
- caption: CaptionConfig;
1979
- buttons: ButtonConfig[];
1980
- menu: MenuConfig[];
1981
- icon: IconConfig;
1982
- hover: HoverContainerConfig;
1983
- }
1984
- interface CaptionConfig {
1985
- title: string;
1986
- summary: string;
1987
- uri: string;
1988
- target: string;
1989
- gaid: string;
1990
- icon: IconConfig;
1991
- }
1992
- interface IconConfig {
1993
- src: string;
1994
- size: number;
1995
- color: string;
1996
- }
1997
- interface HoverContainerConfig {
1998
- label: string;
1999
- content: string;
2000
- anchor: string;
2001
- placement: 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end';
2002
- icon: IconConfig;
2003
- }
2004
- interface ButtonConfig {
2005
- id: string;
2006
- href: string;
2007
- gaid: string;
2008
- uri: string;
2009
- size: string;
2010
- color: string;
2011
- icon: string;
2012
- iconSize: string;
2013
- tooltip: string;
2014
- target: string;
2015
- label: string;
2016
- outline: boolean;
2017
- confirm: ConfirmConfig;
2018
- }
2019
- interface MenuConfig {
2020
- id: string;
2021
- href: string;
2022
- gaid: string;
2023
- target: string;
2024
- label: string;
2025
- }
2026
- interface ConfirmConfig {
2027
- type: string;
2028
- trigger: string;
2029
- fid: string;
2030
- caption: string;
2031
- content: string;
2032
- action: string;
2033
- }
2034
- interface HeaderConfig {
2035
- title: string;
2036
- position: string;
2037
- }
2002
+ import type { CSSResultGroup } from 'lit';
2003
+ import type { ZincFormControl } from "internal/zinc-element";
2004
+ import type ZnSelect from "components/select/index";
2038
2005
  /**
2039
2006
  * @summary Short summary of the component's intended use.
2040
- * @documentation https://zinc.style/components/data-table
2007
+ * @documentation https://zinc.style/components/data-select
2041
2008
  * @status experimental
2042
2009
  * @since 1.0
2043
2010
  *
2044
- * @dependency zn-button
2045
- * @dependency zn-empty-state
2046
- * @dependency zn-chip
2047
- * @dependency zn-hover-container
2048
- * @dependency zn-dropdown
2049
- * @dependency zn-menu
2050
- * @dependency zn-menu-item
2051
- * @dependency zn-button-group
2052
- * @dependency zn-confirm
2053
- * @dependency zn-skeleton
2011
+ * @dependency zn-example
2054
2012
  *
2055
2013
  * @event zn-event-name - Emitted as an example.
2056
2014
  *
@@ -2061,134 +2019,66 @@ declare module "components/data-table/data-table.component" {
2061
2019
  *
2062
2020
  * @cssproperty --example - An example CSS custom property.
2063
2021
  */
2064
- export default class ZnDataTable extends ZincElement {
2022
+ export default class ZnDataSelect extends ZincElement implements ZincFormControl {
2065
2023
  static styles: CSSResultGroup;
2066
- static dependencies: {
2067
- 'zn-button': typeof ZnButton;
2068
- 'zn-empty-state': typeof ZnEmptyState;
2069
- 'zn-chip': typeof ZnChip;
2070
- 'zn-hover-container': typeof ZnHoverContainer;
2071
- 'zn-dropdown': typeof ZnDropdown;
2072
- 'zn-menu': typeof ZnMenu;
2073
- 'zn-menu-item': typeof ZnMenuItem;
2074
- 'zn-button-group': typeof ZnButtonGroup;
2075
- 'zn-confirm': typeof ZnConfirm;
2076
- 'zn-skeleton': typeof ZnSkeleton;
2077
- };
2078
- dataUri: string;
2079
- data: any;
2080
- sortColumn: string;
2081
- sortDirection: string;
2082
- filter: string;
2083
- wideColumn: string;
2084
- key: string;
2085
- headers: Record<string, string | HeaderConfig>;
2086
- hiddenHeaders: string;
2087
- hiddenColumns: string;
2088
- unsortableHeaders: string;
2089
- unsortable: boolean;
2090
- hidePagination: boolean;
2091
- standalone: boolean;
2092
- caption: string;
2093
- hideCheckboxes: boolean;
2094
- filters: [];
2095
- private _initialLoad;
2096
- private _lastTableContent;
2097
- private resizeObserver;
2098
- private itemsPerPage;
2099
- private page;
2100
- private totalPages;
2101
- private _rows;
2102
- private _filteredRows;
2103
- private numberOfRowsSelected;
2104
- private selectedRows;
2105
- private tableContainer;
2106
- private hasSlotController;
2107
- private _dataTask;
2108
- render(): TemplateResult<1>;
2024
+ select: ZnSelect;
2025
+ selectPrefix: HTMLElement;
2026
+ /** The name of the select. Used for form submission. */
2027
+ name: string;
2028
+ /** The value of the select. Used for form submission. */
2029
+ value: string;
2030
+ /** The provider of the select. */
2031
+ provider: 'color' | 'currency' | 'country' | 'phone';
2032
+ iconPosition: 'start' | 'end' | 'none';
2033
+ /** An array of keys to use for filtering the options in the selected provider. */
2034
+ filter: string[];
2035
+ /** The selects size. */
2036
+ size: 'small' | 'medium' | 'large';
2037
+ /** Should we show the clear button */
2038
+ clearable: boolean;
2039
+ /** Include an "All" option at the top. */
2040
+ allowAll: boolean;
2041
+ /** The selects label. If you need to display HTML, use the `label` slot instead. */
2042
+ label: string;
2043
+ /** Text that appears in a tooltip next to the label. If you need to display HTML in the tooltip, use the `label-tooltip` slot instead. */
2044
+ labelTooltip: string;
2045
+ /** Text that appears above the input, on the right, to add additional context. If you need to display HTML in this text, use the `context-note` slot instead. */
2046
+ contextNote: string;
2047
+ /**
2048
+ * The preferred placement of the selects menu. Note that the actual placement may vary as needed to keep the listbox
2049
+ * inside the viewport.
2050
+ */
2051
+ placement: 'top' | 'bottom';
2052
+ /** The selects help text. If you need to display HTML, use the `help-text` slot instead. */
2053
+ helpText: string;
2054
+ /** The selects required attribute. */
2055
+ required: boolean;
2056
+ protected readonly formControlController: FormControlController;
2057
+ get validationMessage(): string;
2058
+ get validity(): ValidityState;
2109
2059
  connectedCallback(): void;
2110
2060
  disconnectedCallback(): void;
2111
- changeEventListener: (e: ZnFilterChangeEvent) => void;
2112
- renderTable(data: TableData): TemplateResult<1>;
2113
- getTableHeader(): TemplateResult<1>;
2114
- getTableFooter(): TemplateResult<1>;
2115
- getRowsSelected(): TemplateResult<1> | null;
2116
- getPagination(): TemplateResult<1> | null;
2117
- getActions(): TemplateResult<1>[];
2118
- goToPage(page: number): void;
2119
- goToFirstPage(): void;
2120
- goToPreviousPage(): void;
2121
- goToNextPage(): void;
2122
- goToLastPage(): void;
2123
- updateRowsPerPage(event: Event): void;
2124
- selectAll(event: Event): void;
2125
- private updateActionKeys;
2126
- selectRow(e: PointerEvent): void;
2127
- clearSelectedRows(event: Event): void;
2128
- updateSort(key: string): () => void;
2129
- renderData(data: RenderDataValue): TemplateResult;
2130
- private getTableSortIcon;
2131
- private renderCellHeader;
2132
- private renderCellBody;
2133
- private hasHeaderPosition;
2134
- private getRows;
2135
- private getSelectedKeys;
2136
- private updateKeys;
2137
- private updateModifyKeys;
2138
- private updateDeleteKeys;
2139
- private sortData;
2140
- private loadingTable;
2141
- }
2142
- }
2143
- declare module "components/data-table/index" {
2144
- import ZnDataTable from "components/data-table/data-table.component";
2145
- export * from "components/data-table/data-table.component";
2146
- export default ZnDataTable;
2147
- global {
2148
- interface HTMLElementTagNameMap {
2149
- 'zn-data-table': ZnDataTable;
2150
- }
2151
- }
2152
- }
2153
- declare module "components/cols/cols.component" {
2154
- import { type CSSResultGroup } from 'lit';
2155
- import ZincElement from "internal/zinc-element";
2156
- /**
2157
- * @summary Short summary of the component's intended use.
2158
- * @documentation https://zinc.style/components/columns
2159
- * @status experimental
2160
- * @since 1.0
2161
- *
2162
- * @dependency zn-example
2163
- *
2164
- * @event zn-event-name - Emitted as an example.
2165
- *
2166
- * @slot - The default slot.
2167
- * @slot example - An example slot.
2168
- *
2169
- * @csspart base - The component's base wrapper.
2170
- *
2171
- * @cssproperty --example - An example CSS custom property.
2172
- */
2173
- export default class ZnCols extends ZincElement {
2174
- static styles: CSSResultGroup;
2175
- layout: string;
2176
- maxColumns: number;
2177
- noGap: boolean;
2178
- border: boolean;
2179
- pad: boolean;
2180
- padX: boolean;
2181
- padY: boolean;
2182
- render(): import("lit").TemplateResult<1>;
2061
+ checkValidity(): boolean;
2062
+ getForm(): HTMLFormElement | null;
2063
+ reportValidity(): boolean;
2064
+ setCustomValidity(message: string): void;
2065
+ closeOnTab: (e: KeyboardEvent) => void;
2066
+ handleValueChange(): Promise<void>;
2067
+ handleInput: (e: Event) => void;
2068
+ handleClear: () => void;
2069
+ getLocalProvider(name: string): LocalDataProvider<DataProviderOption>;
2070
+ blur: () => void;
2071
+ protected render(): import("lit").TemplateResult<1>;
2072
+ private _updatePrefix;
2183
2073
  }
2184
2074
  }
2185
- declare module "components/cols/index" {
2186
- import ZnCols from "components/cols/cols.component";
2187
- export * from "components/cols/cols.component";
2188
- export default ZnCols;
2075
+ declare module "components/data-select/index" {
2076
+ import ZnDataSelect from "components/data-select/data-select.component";
2077
+ export * from "components/data-select/data-select.component";
2078
+ export default ZnDataSelect;
2189
2079
  global {
2190
2080
  interface HTMLElementTagNameMap {
2191
- 'zn-cols': ZnCols;
2081
+ 'zn-data-select': ZnDataSelect;
2192
2082
  }
2193
2083
  }
2194
2084
  }
@@ -2406,111 +2296,459 @@ declare module "components/input/index" {
2406
2296
  }
2407
2297
  }
2408
2298
  }
2409
- declare module "components/defined-label/defined-label.component" {
2410
- import { type CSSResultGroup, type PropertyValues, type TemplateResult } from 'lit';
2299
+ declare module "utilities/lit-to-html" {
2300
+ import { type TemplateResult } from "lit";
2301
+ export function litToHTML<T extends HTMLElement>(templateResult: TemplateResult): T | null;
2302
+ }
2303
+ declare module "events/zn-change" {
2304
+ export type ZnChangeEvent = CustomEvent<Record<PropertyKey, never>>;
2305
+ global {
2306
+ interface GlobalEventHandlersEventMap {
2307
+ 'zn-change': ZnChangeEvent;
2308
+ }
2309
+ }
2310
+ }
2311
+ declare module "events/zn-input" {
2312
+ export type ZnInputEvent = CustomEvent<Record<PropertyKey, never>>;
2313
+ global {
2314
+ interface GlobalEventHandlersEventMap {
2315
+ 'zn-input': ZnInputEvent;
2316
+ }
2317
+ }
2318
+ }
2319
+ declare module "components/query-builder/query-builder.component" {
2320
+ import { type CSSResultGroup, type PropertyValues } from 'lit';
2411
2321
  import ZincElement from "internal/zinc-element";
2322
+ import ZnButton from "components/button/index";
2323
+ import ZnInput from "components/input/index";
2324
+ import ZnOption from "components/option/index";
2325
+ import ZnSelect from "components/select/index";
2412
2326
  import type { ZincFormControl } from "internal/zinc-element";
2413
- import type ZnDropdown from "components/dropdown/index";
2414
- import type ZnInput from "components/input/index";
2327
+ export type QueryBuilderData = QueryBuilderItem[];
2328
+ export interface QueryBuilderItem {
2329
+ id: string;
2330
+ name: string;
2331
+ type?: QueryBuilderType;
2332
+ options?: QueryBuilderOptions;
2333
+ operators: QueryBuilderOperators[];
2334
+ maxOptionsVisible?: string;
2335
+ }
2336
+ export type QueryBuilderType = 'bool' | 'boolean' | 'date' | 'number';
2337
+ export interface QueryBuilderOptions {
2338
+ [key: string | number]: string | number;
2339
+ }
2340
+ export enum QueryBuilderOperators {
2341
+ Eq = "eq",
2342
+ Neq = "neq",
2343
+ Eqi = "eqi",
2344
+ Neqi = "neqi",
2345
+ Before = "before",
2346
+ After = "after",
2347
+ In = "in",
2348
+ Nin = "nin",
2349
+ MatchPhrasePre = "matchphrasepre",
2350
+ NMatchPhrasePre = "nmatchphrasepre",
2351
+ MatchPhrase = "matchphrase",
2352
+ NMatchPhrase = "nmatchphrase",
2353
+ Match = "match",
2354
+ NMatch = "nmatch",
2355
+ Contains = "contains",
2356
+ DoesNotContain = "doesnotcontain",
2357
+ Starts = "starts",
2358
+ NStarts = "nstarts",
2359
+ Ends = "ends",
2360
+ NEnds = "nends",
2361
+ Wild = "wild",
2362
+ NWild = "nwild",
2363
+ Like = "like",
2364
+ NLike = "nlike",
2365
+ Fuzzy = "fuzzy",
2366
+ NFuzzy = "nfuzzy",
2367
+ Gte = "gte",
2368
+ Gt = "gt",
2369
+ Lt = "lt",
2370
+ Lte = "lte"
2371
+ }
2372
+ export interface CreatedRule {
2373
+ id: string;
2374
+ name: string;
2375
+ operator: string;
2376
+ value: string;
2377
+ }
2415
2378
  /**
2416
- * @summary This component provides a labeled input with support for predefined and custom labels,
2417
- * allowing users to select or enter label-value pairs within a dropdown interface.
2418
- * @documentation https://zinc.style/components/defined-label
2379
+ * @summary Short summary of the component's intended use.
2380
+ * @documentation https://zinc.style/components/query-builder
2419
2381
  * @status experimental
2420
2382
  * @since 1.0
2421
2383
  *
2422
2384
  * @dependency zn-button
2423
- * @dependency zn-dropdown
2424
2385
  * @dependency zn-input
2425
2386
  * @dependency zn-option
2426
- * @dependency zn-panel
2427
2387
  * @dependency zn-select
2428
- * @dependency zn-sp
2429
2388
  *
2430
- * @csspart input - The component's main input.
2431
- * @csspart input-value - The label's value inputs.
2389
+ * @slot - The default slot.
2390
+ * @slot example - An example slot.
2391
+ *
2392
+ * @csspart base - The component's base wrapper.
2393
+ *
2394
+ * @cssproperty --example - An example CSS custom property.
2432
2395
  */
2433
- export default class ZnDefinedLabel extends ZincElement implements ZincFormControl {
2396
+ export default class ZnQueryBuilder extends ZincElement implements ZincFormControl {
2434
2397
  static styles: CSSResultGroup;
2435
- private readonly formControlController;
2436
- input: ZnInput;
2437
- dropdown: ZnDropdown;
2438
- value: string;
2439
- inputValue: string;
2440
- inputSize: 'x-small' | 'small' | 'medium' | 'large';
2398
+ static dependencies: {
2399
+ 'zn-button': typeof ZnButton;
2400
+ 'zn-input': typeof ZnInput;
2401
+ 'zn-option': typeof ZnOption;
2402
+ 'zn-select': typeof ZnSelect;
2403
+ };
2404
+ private _selectedRules;
2405
+ private _formController;
2406
+ private _previousOperator;
2407
+ container: HTMLDivElement;
2408
+ addRule: ZnSelect;
2409
+ input: HTMLInputElement;
2410
+ filters: QueryBuilderData;
2411
+ dropdown: boolean;
2441
2412
  name: string;
2442
- title: string;
2443
- disabled: boolean;
2444
- allowCustom: boolean;
2445
- predefinedLabels: never[];
2413
+ value: PropertyKey;
2414
+ showValues: string[];
2446
2415
  get validationMessage(): string;
2447
2416
  get validity(): ValidityState;
2417
+ protected firstUpdated(_changedProperties: PropertyValues): void;
2418
+ render(): import("lit").TemplateResult<1>;
2419
+ private _handleChange;
2420
+ private _addRule;
2421
+ private _createInput;
2422
+ private _changeValueInput;
2423
+ private _createBooleanInput;
2424
+ private _createNumberInput;
2425
+ private _createDateInput;
2426
+ private _createSelectInput;
2427
+ private _createDefaultInput;
2428
+ private _updateOperatorValue;
2429
+ private _updateDateValue;
2430
+ private _updateValue;
2431
+ private updateInValue;
2432
+ private _changeRule;
2433
+ private _getRulePosition;
2434
+ private _removeRule;
2435
+ clear(): void;
2436
+ reset(): void;
2448
2437
  checkValidity(): boolean;
2449
2438
  getForm(): HTMLFormElement | null;
2450
2439
  reportValidity(): boolean;
2451
2440
  setCustomValidity(message: string): void;
2452
- handleValueChange(): Promise<void>;
2453
- protected firstUpdated(changedProperties: PropertyValues): void;
2454
- private handleChange;
2455
- private handleInput;
2456
- private handleClick;
2457
- private handleInputValueChange;
2458
- private handleInputValueInput;
2459
- private handleFormSubmit;
2460
- render(): TemplateResult<1>;
2461
2441
  }
2462
2442
  }
2463
- declare module "components/defined-label/index" {
2464
- import ZnDefinedLabel from "components/defined-label/defined-label.component";
2465
- export * from "components/defined-label/defined-label.component";
2466
- export default ZnDefinedLabel;
2443
+ declare module "components/query-builder/index" {
2444
+ import ZnQueryBuilder from "components/query-builder/query-builder.component";
2445
+ export * from "components/query-builder/query-builder.component";
2446
+ export default ZnQueryBuilder;
2467
2447
  global {
2468
2448
  interface HTMLElementTagNameMap {
2469
- 'zn-defined-label': ZnDefinedLabel;
2449
+ 'zn-query-builder': ZnQueryBuilder;
2470
2450
  }
2471
2451
  }
2472
2452
  }
2473
- declare module "components/data-select/providers/country-data-provider" {
2474
- import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
2475
- export const countryDataProvider: LocalDataProvider<DataProviderOption>;
2476
- }
2477
- declare module "components/data-select/providers/currency-data-provider" {
2478
- import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
2479
- export const currencyDataProvider: LocalDataProvider<DataProviderOption>;
2480
- }
2481
- declare module "components/data-select/providers/country-code-data-provider" {
2482
- import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
2483
- export const countryDialPrefixDataProvider: LocalDataProvider<DataProviderOption>;
2484
- }
2485
- declare module "components/data-select/providers/provider" {
2486
- import type { HTMLTemplateResult } from "lit";
2487
- /**
2488
- * Providers are what the data select component uses to get data. They are
2489
- * responsible for defining the data.
2490
- */
2491
- export interface LocalDataProvider<T> {
2492
- getName: string;
2493
- getData: T[];
2453
+ declare module "components/data-table/data-table.component" {
2454
+ import { type CSSResultGroup, type TemplateResult } from 'lit';
2455
+ import { type ZnFilterChangeEvent } from "events/zn-filter-change";
2456
+ import ZincElement from "internal/zinc-element";
2457
+ import ZnButton from "components/button/index";
2458
+ import ZnButtonGroup from "components/button-group/index";
2459
+ import ZnChip from "components/chip/index";
2460
+ import ZnConfirm from "components/confirm/index";
2461
+ import ZnDropdown from "components/dropdown/index";
2462
+ import ZnEmptyState from "components/empty-state/index";
2463
+ import ZnHoverContainer from "components/hover-container/index";
2464
+ import ZnMenu from "components/menu/index";
2465
+ import ZnMenuItem from "components/menu-item/index";
2466
+ import ZnSkeleton from "components/skeleton/index";
2467
+ interface Cell {
2468
+ text: string;
2469
+ column: string;
2470
+ color?: string;
2471
+ style?: string;
2472
+ iconSrc?: string;
2473
+ iconColor?: string;
2474
+ hoverContent?: string;
2475
+ hoverPlacement?: string;
2476
+ chipColor?: string;
2477
+ gaid?: string;
2478
+ sortValue?: string;
2479
+ uri?: string;
2480
+ target?: string;
2494
2481
  }
2495
- export interface RemoteDataProvider<T> {
2496
- getName: string;
2497
- getData: () => Promise<T[]>;
2482
+ interface Row {
2483
+ id: string;
2484
+ uri?: string;
2485
+ target?: string;
2486
+ actions?: ActionConfig[];
2487
+ cells: Cell[];
2488
+ }
2489
+ interface Response {
2490
+ rows: Row[];
2491
+ perPage: number;
2492
+ total: number;
2493
+ page: number;
2498
2494
  }
2499
- export interface DataProviderOption {
2495
+ export enum ActionSlots {
2496
+ delete = "delete-action",
2497
+ modify = "modify-action",
2498
+ create = "create-action",
2499
+ filter = "filter",
2500
+ filter_top = "filter-top",
2501
+ sort = "sort",
2502
+ inputs = "inputs"
2503
+ }
2504
+ interface ActionConfig {
2505
+ text: string;
2506
+ uri: string;
2507
+ target: string;
2508
+ gaid: string;
2509
+ confirmType: string;
2510
+ confirmTitle: string;
2511
+ confirmContent: string;
2512
+ icon: string;
2513
+ type: string;
2514
+ }
2515
+ interface HeaderConfig {
2516
+ key: string;
2517
+ label: string;
2518
+ required?: boolean;
2519
+ default?: boolean;
2520
+ sortable?: boolean;
2521
+ filterable?: boolean;
2522
+ }
2523
+ /**
2524
+ * @summary Short summary of the component's intended use.
2525
+ * @documentation https://zinc.style/components/data-table
2526
+ * @status experimental
2527
+ * @since 1.0
2528
+ *
2529
+ * @dependency zn-button
2530
+ * @dependency zn-empty-state
2531
+ * @dependency zn-chip
2532
+ * @dependency zn-hover-container
2533
+ * @dependency zn-dropdown
2534
+ * @dependency zn-menu
2535
+ * @dependency zn-menu-item
2536
+ * @dependency zn-button-group
2537
+ * @dependency zn-confirm
2538
+ * @dependency zn-skeleton
2539
+ *
2540
+ * @event zn-event-name - Emitted as an example.
2541
+ *
2542
+ * @slot - The default slot.
2543
+ * @slot example - An example slot.
2544
+ *
2545
+ * @csspart base - The component's base wrapper.
2546
+ *
2547
+ * @cssproperty --example - An example CSS custom property.
2548
+ */
2549
+ export default class ZnDataTable extends ZincElement {
2550
+ static styles: CSSResultGroup;
2551
+ static dependencies: {
2552
+ 'zn-button': typeof ZnButton;
2553
+ 'zn-empty-state': typeof ZnEmptyState;
2554
+ 'zn-chip': typeof ZnChip;
2555
+ 'zn-hover-container': typeof ZnHoverContainer;
2556
+ 'zn-dropdown': typeof ZnDropdown;
2557
+ 'zn-menu': typeof ZnMenu;
2558
+ 'zn-menu-item': typeof ZnMenuItem;
2559
+ 'zn-button-group': typeof ZnButtonGroup;
2560
+ 'zn-confirm': typeof ZnConfirm;
2561
+ 'zn-skeleton': typeof ZnSkeleton;
2562
+ };
2563
+ dataUri: string;
2564
+ data: any;
2565
+ sortColumn: string;
2566
+ sortDirection: string;
2567
+ filter: string;
2568
+ wideColumn: string;
2500
2569
  key: string;
2570
+ headers: Record<string, HeaderConfig>;
2571
+ hiddenHeaders: string;
2572
+ hiddenColumns: string;
2573
+ unsortableHeaders: string;
2574
+ unsortable: boolean;
2575
+ hidePagination: boolean;
2576
+ standalone: boolean;
2577
+ caption: string;
2578
+ emptyStateCaption: string;
2579
+ emptyStateIcon: string;
2580
+ hideCheckboxes: boolean;
2581
+ filters: [];
2582
+ method: 'GET' | 'POST';
2583
+ noInitialLoad: boolean;
2584
+ private _initialLoad;
2585
+ private _lastTableContent;
2586
+ private resizeObserver;
2587
+ private itemsPerPage;
2588
+ private page;
2589
+ private totalPages;
2590
+ private _rows;
2591
+ private numberOfRowsSelected;
2592
+ private selectedRows;
2593
+ private tableContainer;
2594
+ private hasSlotController;
2595
+ private _dataTask;
2596
+ private rowHasActions;
2597
+ requestParams: Record<string, any>;
2598
+ builtinRequestParams: Record<string, any>;
2599
+ refresh(): void;
2600
+ render(): TemplateResult<1>;
2601
+ connectedCallback(): void;
2602
+ disconnectedCallback(): void;
2603
+ changeEventListener: (e: ZnFilterChangeEvent) => void;
2604
+ emptyState(): TemplateResult<1>;
2605
+ renderTable(data: Response): TemplateResult<1>;
2606
+ getTableHeader(): TemplateResult<1>;
2607
+ getTableFooter(): TemplateResult<1>;
2608
+ getRowsSelected(): TemplateResult<1> | null;
2609
+ getPagination(): TemplateResult<1> | null;
2610
+ getActions(): TemplateResult<1>[];
2611
+ goToPage(page: number): void;
2612
+ goToFirstPage(): void;
2613
+ goToPreviousPage(): void;
2614
+ goToNextPage(): void;
2615
+ goToLastPage(): void;
2616
+ updateRowsPerPage(event: Event): void;
2617
+ selectAll(event: Event): void;
2618
+ selectRow(e: PointerEvent): void;
2619
+ clearSelectedRows(event: Event): void;
2620
+ updateSort(key: string): () => void;
2621
+ renderCell(data: Cell): TemplateResult;
2622
+ private updateActionKeys;
2623
+ private getTableSortIcon;
2624
+ private renderCellHeader;
2625
+ private renderCellBody;
2626
+ private getRows;
2627
+ private getSelectedKeys;
2628
+ private updateKeys;
2629
+ private updateModifyKeys;
2630
+ private updateDeleteKeys;
2631
+ private extractComparable;
2632
+ private sortData;
2633
+ private loadingTable;
2634
+ private renderActions;
2635
+ }
2636
+ }
2637
+ declare module "components/data-table/index" {
2638
+ import ZnDataTable from "components/data-table/data-table.component";
2639
+ export * from "components/data-table/data-table.component";
2640
+ export default ZnDataTable;
2641
+ global {
2642
+ interface HTMLElementTagNameMap {
2643
+ 'zn-data-table': ZnDataTable;
2644
+ }
2645
+ }
2646
+ }
2647
+ declare module "components/cols/cols.component" {
2648
+ import { type CSSResultGroup } from 'lit';
2649
+ import ZincElement from "internal/zinc-element";
2650
+ /**
2651
+ * @summary Short summary of the component's intended use.
2652
+ * @documentation https://zinc.style/components/columns
2653
+ * @status experimental
2654
+ * @since 1.0
2655
+ *
2656
+ * @dependency zn-example
2657
+ *
2658
+ * @event zn-event-name - Emitted as an example.
2659
+ *
2660
+ * @slot - The default slot.
2661
+ * @slot example - An example slot.
2662
+ *
2663
+ * @csspart base - The component's base wrapper.
2664
+ *
2665
+ * @cssproperty --example - An example CSS custom property.
2666
+ */
2667
+ export default class ZnCols extends ZincElement {
2668
+ static styles: CSSResultGroup;
2669
+ layout: string;
2670
+ maxColumns: number;
2671
+ noGap: boolean;
2672
+ border: boolean;
2673
+ pad: boolean;
2674
+ padX: boolean;
2675
+ padY: boolean;
2676
+ render(): import("lit").TemplateResult<1>;
2677
+ }
2678
+ }
2679
+ declare module "components/cols/index" {
2680
+ import ZnCols from "components/cols/cols.component";
2681
+ export * from "components/cols/cols.component";
2682
+ export default ZnCols;
2683
+ global {
2684
+ interface HTMLElementTagNameMap {
2685
+ 'zn-cols': ZnCols;
2686
+ }
2687
+ }
2688
+ }
2689
+ declare module "components/defined-label/defined-label.component" {
2690
+ import { type CSSResultGroup, type PropertyValues, type TemplateResult } from 'lit';
2691
+ import ZincElement from "internal/zinc-element";
2692
+ import type { ZincFormControl } from "internal/zinc-element";
2693
+ import type ZnDropdown from "components/dropdown/index";
2694
+ import type ZnInput from "components/input/index";
2695
+ /**
2696
+ * @summary This component provides a labeled input with support for predefined and custom labels,
2697
+ * allowing users to select or enter label-value pairs within a dropdown interface.
2698
+ * @documentation https://zinc.style/components/defined-label
2699
+ * @status experimental
2700
+ * @since 1.0
2701
+ *
2702
+ * @dependency zn-button
2703
+ * @dependency zn-dropdown
2704
+ * @dependency zn-input
2705
+ * @dependency zn-option
2706
+ * @dependency zn-panel
2707
+ * @dependency zn-select
2708
+ * @dependency zn-sp
2709
+ *
2710
+ * @csspart input - The component's main input.
2711
+ * @csspart input-value - The label's value inputs.
2712
+ */
2713
+ export default class ZnDefinedLabel extends ZincElement implements ZincFormControl {
2714
+ static styles: CSSResultGroup;
2715
+ private readonly formControlController;
2716
+ input: ZnInput;
2717
+ dropdown: ZnDropdown;
2501
2718
  value: string;
2502
- prefix?: string | HTMLTemplateResult;
2719
+ inputValue: string;
2720
+ inputSize: 'x-small' | 'small' | 'medium' | 'large';
2721
+ name: string;
2722
+ title: string;
2723
+ disabled: boolean;
2724
+ allowCustom: boolean;
2725
+ predefinedLabels: never[];
2726
+ get validationMessage(): string;
2727
+ get validity(): ValidityState;
2728
+ checkValidity(): boolean;
2729
+ getForm(): HTMLFormElement | null;
2730
+ reportValidity(): boolean;
2731
+ setCustomValidity(message: string): void;
2732
+ handleValueChange(): Promise<void>;
2733
+ protected firstUpdated(changedProperties: PropertyValues): void;
2734
+ private handleChange;
2735
+ private handleInput;
2736
+ private handleClick;
2737
+ private handleInputValueChange;
2738
+ private handleInputValueInput;
2739
+ private handleFormSubmit;
2740
+ render(): TemplateResult<1>;
2503
2741
  }
2504
- export const emptyDataProvider: LocalDataProvider<DataProviderOption>;
2505
- export * from "components/data-select/providers/country-data-provider";
2506
- export * from "components/data-select/providers/currency-data-provider";
2507
- export * from "components/data-select/providers/color-data-provider";
2508
- export * from "components/data-select/providers/country-code-data-provider";
2509
2742
  }
2510
- declare module "components/data-select/providers/color-data-provider" {
2511
- import type { DataProviderOption, LocalDataProvider } from "components/data-select/providers/provider";
2512
- export const colors: string[];
2513
- export const colorDataProvider: LocalDataProvider<DataProviderOption>;
2743
+ declare module "components/defined-label/index" {
2744
+ import ZnDefinedLabel from "components/defined-label/defined-label.component";
2745
+ export * from "components/defined-label/defined-label.component";
2746
+ export default ZnDefinedLabel;
2747
+ global {
2748
+ interface HTMLElementTagNameMap {
2749
+ 'zn-defined-label': ZnDefinedLabel;
2750
+ }
2751
+ }
2514
2752
  }
2515
2753
  declare module "components/note/note.component" {
2516
2754
  import { type colors } from "components/data-select/providers/color-data-provider";
@@ -2768,10 +3006,13 @@ declare module "components/navbar/navbar.component" {
2768
3006
  navigation: never[];
2769
3007
  fullWidth: boolean;
2770
3008
  iconBar: boolean;
3009
+ slim: boolean;
3010
+ border: boolean;
2771
3011
  hideOne: boolean;
2772
3012
  flush: boolean;
2773
3013
  stacked: boolean;
2774
3014
  dropdown: never[];
3015
+ noPad: false;
2775
3016
  private _preItems;
2776
3017
  private _postItems;
2777
3018
  private _appended;
@@ -2858,9 +3099,9 @@ declare module "components/header/index" {
2858
3099
  }
2859
3100
  declare module "components/inline-edit/inline-edit.component" {
2860
3101
  import { type CSSResultGroup, type HTMLTemplateResult } from 'lit';
2861
- import type { ZincFormControl } from "internal/zinc-element";
2862
3102
  import ZincElement from "internal/zinc-element";
2863
3103
  import ZnSelect from "components/select/index";
3104
+ import type { ZincFormControl } from "internal/zinc-element";
2864
3105
  import type ZnInput from "components/input/index";
2865
3106
  /**
2866
3107
  * @summary Short summary of the component's intended use.
@@ -2915,8 +3156,10 @@ declare module "components/inline-edit/inline-edit.component" {
2915
3156
  firstUpdated(): Promise<void>;
2916
3157
  handleValueChange(): Promise<void>;
2917
3158
  handleIsEditingChange(): Promise<void>;
3159
+ mouseEventHandler: (e: MouseEvent) => void;
2918
3160
  escKeyHandler: (e: KeyboardEvent) => void;
2919
- handleEditClick: () => void;
3161
+ submitKeyHandler: (e: KeyboardEvent) => void;
3162
+ handleEditClick: (e: MouseEvent) => void;
2920
3163
  handleSubmitClick: (e: MouseEvent) => void;
2921
3164
  handleCancelClick: (e: MouseEvent) => void;
2922
3165
  handleBlur: () => void;
@@ -3093,6 +3336,7 @@ declare module "components/tabs/tabs.component" {
3093
3336
  protected _activeClicks: number;
3094
3337
  private _panel;
3095
3338
  private _panels;
3339
+ private _activeTab;
3096
3340
  private _tabs;
3097
3341
  private _actions;
3098
3342
  private _knownUri;
@@ -3158,11 +3402,13 @@ declare module "components/panel/panel.component" {
3158
3402
  caption: string;
3159
3403
  description: string;
3160
3404
  tabbed: boolean;
3405
+ cosmic: boolean;
3161
3406
  flush: boolean;
3162
3407
  flushX: boolean;
3163
3408
  flushY: boolean;
3164
3409
  transparent: boolean;
3165
3410
  protected firstUpdated(_changedProperties: PropertyValues): void;
3411
+ connectedCallback(): void;
3166
3412
  protected render(): unknown;
3167
3413
  }
3168
3414
  }
@@ -3267,7 +3513,7 @@ declare module "components/pane/index" {
3267
3513
  }
3268
3514
  }
3269
3515
  declare module "utilities/on" {
3270
- type OnEvent = Event & {
3516
+ export type OnEvent = Event & {
3271
3517
  selectedTarget: EventTarget;
3272
3518
  path: EventTarget[];
3273
3519
  };
@@ -3278,8 +3524,8 @@ declare module "utilities/on" {
3278
3524
  }
3279
3525
  declare module "components/split-pane/split-pane.component" {
3280
3526
  import { type CSSResultGroup } from 'lit';
3281
- import ZincElement from "internal/zinc-element";
3282
3527
  import { Store } from "internal/storage";
3528
+ import ZincElement from "internal/zinc-element";
3283
3529
  /**
3284
3530
  * @summary Short summary of the component's intended use.
3285
3531
  * @documentation https://zinc.style/components/split-pane
@@ -3433,6 +3679,7 @@ declare module "components/sp/sp.component" {
3433
3679
  flushL: boolean;
3434
3680
  flushR: boolean;
3435
3681
  widthContainer: boolean;
3682
+ formContainer: boolean;
3436
3683
  connectedCallback(): void;
3437
3684
  protected render(): unknown;
3438
3685
  }
@@ -3516,6 +3763,7 @@ declare module "components/stat/stat.component" {
3516
3763
  previous: string;
3517
3764
  currency: string;
3518
3765
  showDelta: boolean;
3766
+ color: 'primary' | 'error' | 'info' | 'warning' | 'success' | 'neutral';
3519
3767
  calcPercentageDifference(): number;
3520
3768
  getCurrentAmount(): string;
3521
3769
  private getDisplayAmount;
@@ -3534,7 +3782,7 @@ declare module "components/stat/index" {
3534
3782
  }
3535
3783
  }
3536
3784
  declare module "components/scroll-container/scroll-container.component" {
3537
- import { type CSSResultGroup } from 'lit';
3785
+ import { type CSSResultGroup, PropertyValues } from 'lit';
3538
3786
  import ZincElement from "internal/zinc-element";
3539
3787
  /**
3540
3788
  * @summary Short summary of the component's intended use.
@@ -3555,7 +3803,14 @@ declare module "components/scroll-container/scroll-container.component" {
3555
3803
  */
3556
3804
  export default class ZnScrollContainer extends ZincElement {
3557
3805
  static styles: CSSResultGroup;
3558
- constructor();
3806
+ startScrolled: boolean;
3807
+ private container;
3808
+ private footer;
3809
+ protected firstUpdated(_changedProperties: PropertyValues): void;
3810
+ scrollEnd(): void;
3811
+ private _footerResizeObserver?;
3812
+ connectedCallback(): void;
3813
+ disconnectedCallback(): void;
3559
3814
  render(): import("lit").TemplateResult<1>;
3560
3815
  }
3561
3816
  }
@@ -3569,160 +3824,6 @@ declare module "components/scroll-container/index" {
3569
3824
  }
3570
3825
  }
3571
3826
  }
3572
- declare module "utilities/lit-to-html" {
3573
- import { type TemplateResult } from "lit";
3574
- export function litToHTML<T extends HTMLElement>(templateResult: TemplateResult): T | null;
3575
- }
3576
- declare module "events/zn-change" {
3577
- export type ZnChangeEvent = CustomEvent<Record<PropertyKey, never>>;
3578
- global {
3579
- interface GlobalEventHandlersEventMap {
3580
- 'zn-change': ZnChangeEvent;
3581
- }
3582
- }
3583
- }
3584
- declare module "events/zn-input" {
3585
- export type ZnInputEvent = CustomEvent<Record<PropertyKey, never>>;
3586
- global {
3587
- interface GlobalEventHandlersEventMap {
3588
- 'zn-input': ZnInputEvent;
3589
- }
3590
- }
3591
- }
3592
- declare module "components/query-builder/query-builder.component" {
3593
- import { type CSSResultGroup, type PropertyValues } from 'lit';
3594
- import ZincElement from "internal/zinc-element";
3595
- import ZnButton from "components/button/index";
3596
- import ZnInput from "components/input/index";
3597
- import ZnOption from "components/option/index";
3598
- import ZnSelect from "components/select/index";
3599
- import type { ZincFormControl } from "internal/zinc-element";
3600
- export type QueryBuilderData = QueryBuilderItem[];
3601
- export interface QueryBuilderItem {
3602
- id: string;
3603
- name: string;
3604
- type?: QueryBuilderType;
3605
- options?: QueryBuilderOptions;
3606
- operators: QueryBuilderOperators[];
3607
- maxOptionsVisible?: string;
3608
- }
3609
- export type QueryBuilderType = 'bool' | 'boolean' | 'date' | 'number';
3610
- export interface QueryBuilderOptions {
3611
- [key: string | number]: string | number;
3612
- }
3613
- export enum QueryBuilderOperators {
3614
- Eq = "eq",
3615
- Neq = "neq",
3616
- Eqi = "eqi",
3617
- Neqi = "neqi",
3618
- Before = "before",
3619
- After = "after",
3620
- In = "in",
3621
- Nin = "nin",
3622
- MatchPhrasePre = "matchphrasepre",
3623
- NMatchPhrasePre = "nmatchphrasepre",
3624
- MatchPhrase = "matchphrase",
3625
- NMatchPhrase = "nmatchphrase",
3626
- Match = "match",
3627
- NMatch = "nmatch",
3628
- Contains = "contains",
3629
- DoesNotContain = "doesnotcontain",
3630
- Starts = "starts",
3631
- NStarts = "nstarts",
3632
- Ends = "ends",
3633
- NEnds = "nends",
3634
- Wild = "wild",
3635
- NWild = "nwild",
3636
- Like = "like",
3637
- NLike = "nlike",
3638
- Fuzzy = "fuzzy",
3639
- NFuzzy = "nfuzzy",
3640
- Gte = "gte",
3641
- Gt = "gt",
3642
- Lt = "lt",
3643
- Lte = "lte"
3644
- }
3645
- export interface CreatedRule {
3646
- id: string;
3647
- name: string;
3648
- operator: string;
3649
- value: string;
3650
- }
3651
- /**
3652
- * @summary Short summary of the component's intended use.
3653
- * @documentation https://zinc.style/components/query-builder
3654
- * @status experimental
3655
- * @since 1.0
3656
- *
3657
- * @dependency zn-button
3658
- * @dependency zn-input
3659
- * @dependency zn-option
3660
- * @dependency zn-select
3661
- *
3662
- * @slot - The default slot.
3663
- * @slot example - An example slot.
3664
- *
3665
- * @csspart base - The component's base wrapper.
3666
- *
3667
- * @cssproperty --example - An example CSS custom property.
3668
- */
3669
- export default class ZnQueryBuilder extends ZincElement implements ZincFormControl {
3670
- static styles: CSSResultGroup;
3671
- static dependencies: {
3672
- 'zn-button': typeof ZnButton;
3673
- 'zn-input': typeof ZnInput;
3674
- 'zn-option': typeof ZnOption;
3675
- 'zn-select': typeof ZnSelect;
3676
- };
3677
- private _selectedRules;
3678
- private _formController;
3679
- private _previousOperator;
3680
- container: HTMLDivElement;
3681
- addRule: ZnSelect;
3682
- input: HTMLInputElement;
3683
- filters: QueryBuilderData;
3684
- dropdown: boolean;
3685
- name: string;
3686
- value: PropertyKey;
3687
- showValues: string[];
3688
- get validationMessage(): string;
3689
- get validity(): ValidityState;
3690
- protected firstUpdated(_changedProperties: PropertyValues): void;
3691
- render(): import("lit").TemplateResult<1>;
3692
- private _handleChange;
3693
- private _addRule;
3694
- private _createInput;
3695
- private _changeValueInput;
3696
- private _createBooleanInput;
3697
- private _createNumberInput;
3698
- private _createDateInput;
3699
- private _createSelectInput;
3700
- private _createDefaultInput;
3701
- private _updateOperatorValue;
3702
- private _updateDateValue;
3703
- private _updateValue;
3704
- private updateInValue;
3705
- private _changeRule;
3706
- private _getRulePosition;
3707
- private _removeRule;
3708
- clear(): void;
3709
- reset(): void;
3710
- checkValidity(): boolean;
3711
- getForm(): HTMLFormElement | null;
3712
- reportValidity(): boolean;
3713
- setCustomValidity(message: string): void;
3714
- }
3715
- }
3716
- declare module "components/query-builder/index" {
3717
- import ZnQueryBuilder from "components/query-builder/query-builder.component";
3718
- export * from "components/query-builder/query-builder.component";
3719
- export default ZnQueryBuilder;
3720
- global {
3721
- interface HTMLElementTagNameMap {
3722
- 'zn-query-builder': ZnQueryBuilder;
3723
- }
3724
- }
3725
- }
3726
3827
  declare module "components/progress-tile/progress-tile.component" {
3727
3828
  import { type CSSResultGroup } from 'lit';
3728
3829
  import ZincElement from "internal/zinc-element";
@@ -3927,9 +4028,150 @@ declare module "components/bulk-actions/index" {
3927
4028
  }
3928
4029
  }
3929
4030
  }
3930
- declare module "components/editor/modules/attachment-module" {
4031
+ declare module "components/editor/modules/toolbar/tool/tool.component" {
4032
+ import { type CSSResultGroup } from "lit";
4033
+ import ZincElement from "internal/zinc-element";
4034
+ export default class ZnEditorTool extends ZincElement {
4035
+ static styles: CSSResultGroup;
4036
+ uri: string;
4037
+ label: string;
4038
+ key: string;
4039
+ icon: string;
4040
+ handler: string;
4041
+ render(): import("lit").TemplateResult<1>;
4042
+ }
4043
+ }
4044
+ declare module "components/editor/modules/toolbar/tool/index" {
4045
+ import ZnEditorTool from "components/editor/modules/toolbar/tool/tool.component";
4046
+ export * from "components/editor/modules/toolbar/tool/tool.component";
4047
+ export default ZnEditorTool;
4048
+ global {
4049
+ interface HTMLElementTagNameMap {
4050
+ 'zn-editor-tool': ZnEditorTool;
4051
+ }
4052
+ }
4053
+ }
4054
+ declare module "components/editor/modules/toolbar/toolbar.component" {
4055
+ import { type CSSResultGroup, type PropertyValues } from "lit";
4056
+ import ZincElement from "internal/zinc-element";
4057
+ export default class ToolbarComponent extends ZincElement {
4058
+ static styles: CSSResultGroup;
4059
+ containerWidth: number;
4060
+ private _toolbarEl;
4061
+ private _groups;
4062
+ private _overflowMenu;
4063
+ private _overflowGroup;
4064
+ private _resizeObserver;
4065
+ private _resizeId;
4066
+ private _movedContent;
4067
+ connectedCallback(): void;
4068
+ disconnectedCallback(): void;
4069
+ protected firstUpdated(_changedProperties: PropertyValues): void;
4070
+ handleResize: () => void;
4071
+ private getToolbarWidth;
4072
+ private getOverflowGroupWidth;
4073
+ private restoreMovedContent;
4074
+ private moveContentTo;
4075
+ private isGroupEmpty;
4076
+ private updateEmptyGroups;
4077
+ private _updateDividerClasses;
4078
+ private calculateOverflow;
4079
+ private _dispatchOverflowEvent;
4080
+ private populateOverflowMenu;
4081
+ render(): import("lit").TemplateResult<1>;
4082
+ private _textOptions;
4083
+ private _formatOptions;
4084
+ private _commonFormatOptions;
4085
+ private _historyOptions;
4086
+ private _colorOptions;
4087
+ private _listOptions;
4088
+ private _insertOptions;
4089
+ private _emojiOptions;
4090
+ private _dateOption;
4091
+ }
4092
+ }
4093
+ declare module "components/editor/modules/dialog/dialog.component" {
4094
+ import { type CSSResultGroup, type PropertyValues } from "lit";
4095
+ import ZincElement from "internal/zinc-element";
4096
+ export default class DialogComponent extends ZincElement {
4097
+ static styles: CSSResultGroup;
4098
+ private hasFocus;
4099
+ dialogEl: HTMLDialogElement;
4100
+ open: boolean;
4101
+ uri: string;
4102
+ private closeWatcher;
4103
+ private _editorId;
4104
+ set editorId(value: string);
4105
+ connectedCallback(): void;
4106
+ protected firstUpdated(_changedProperties: PropertyValues): void;
4107
+ setContent(content: string): void;
4108
+ handleOpenChange(): void;
4109
+ private addOpenListeners;
4110
+ private removeOpenListeners;
4111
+ private requestClose;
4112
+ private _getLoadingState;
4113
+ render(): import("lit").TemplateResult<1>;
4114
+ }
4115
+ }
4116
+ declare module "components/editor/modules/emoji/emoji" {
3931
4117
  import Quill from 'quill';
3932
- type AttachmentModuleOptions = {
4118
+ export interface EmojiResult {
4119
+ native?: string;
4120
+ skins?: {
4121
+ native?: string;
4122
+ }[];
4123
+ id?: string;
4124
+ shortcodes?: string;
4125
+ }
4126
+ class Emoji {
4127
+ private readonly _quill;
4128
+ private _mo;
4129
+ constructor(quill: Quill);
4130
+ private getHostEditor;
4131
+ private getToolbarEmojiContainer;
4132
+ private getTheme;
4133
+ initPicker(): void;
4134
+ private onEmojiSelect;
4135
+ }
4136
+ export default Emoji;
4137
+ }
4138
+ declare module "components/editor/modules/toolbar/toolbar" {
4139
+ import "components/editor/modules/toolbar/toolbar.component";
4140
+ import Quill from "quill";
4141
+ import QuillToolbar from "quill/modules/toolbar";
4142
+ import type ToolbarComponent from "components/editor/modules/toolbar/toolbar.component";
4143
+ class Toolbar extends QuillToolbar {
4144
+ private readonly _quill;
4145
+ private readonly _component;
4146
+ private _lastDialogUri?;
4147
+ private _formatters;
4148
+ constructor(quill: Quill, options: {
4149
+ container: ToolbarComponent;
4150
+ handlers?: Record<string, (value?: any) => void>;
4151
+ });
4152
+ callFormat(key: string, value?: string | boolean | undefined): void;
4153
+ trigger(key: string): void;
4154
+ private _attachToolbarHandlers;
4155
+ private _onToolbarClick;
4156
+ private _syncToolbarState;
4157
+ private _updateHeadingFormatMenu;
4158
+ private _updateListFormatMenu;
4159
+ private _updateTextFormatMenu;
4160
+ private _updateColorFormatMenu;
4161
+ private _getTextFormats;
4162
+ private _updateMenuCheckedState;
4163
+ private _updateDropdownTrigger;
4164
+ private _syncButtonState;
4165
+ private _insertDivider;
4166
+ private _openDatePicker;
4167
+ private _openDialog;
4168
+ private _handleOverflowUpdate;
4169
+ }
4170
+ export default Toolbar;
4171
+ }
4172
+ declare module "components/editor/modules/attachment/attachment" {
4173
+ import type Quill from 'quill';
4174
+ interface AttachmentOptions {
3933
4175
  upload: (file: File) => Promise<{
3934
4176
  path: any;
3935
4177
  url: any;
@@ -3939,12 +4181,12 @@ declare module "components/editor/modules/attachment-module" {
3939
4181
  url: string;
3940
4182
  }) => void;
3941
4183
  attachmentInput?: HTMLInputElement;
3942
- };
3943
- export default class AttachmentModule {
4184
+ }
4185
+ export default class Attachment {
3944
4186
  private _quill;
3945
4187
  private _options;
3946
4188
  private _fileHolder;
3947
- constructor(quill: Quill, options: AttachmentModuleOptions);
4189
+ constructor(quill: Quill, options: AttachmentOptions);
3948
4190
  private _selectLocalImage;
3949
4191
  private _fileChanged;
3950
4192
  private _attachmentContainer;
@@ -3956,103 +4198,189 @@ declare module "components/editor/modules/attachment-module" {
3956
4198
  private _uploadAttachment;
3957
4199
  }
3958
4200
  }
3959
- declare module "components/editor/modules/dialog-module/dialog-module.component" {
3960
- import { type CSSResultGroup, type PropertyValues, type TemplateResult } from "lit";
4201
+ declare module "components/editor/modules/context-menu/context-menu-component" {
4202
+ import { type CSSResultGroup, type PropertyValues } from 'lit';
3961
4203
  import ZincElement from "internal/zinc-element";
3962
- import type { CannedResponse } from "components/editor/editor.component";
3963
- import type { ZnInputEvent } from "events/zn-input";
3964
- import type ZnInput from "components/input/index";
3965
- export default class DialogModuleComponent extends ZincElement {
4204
+ export interface ResultItem {
4205
+ icon: string;
4206
+ label: string;
4207
+ format?: string;
4208
+ key?: string;
4209
+ value?: string | boolean;
4210
+ }
4211
+ export default class ContextMenuComponent extends ZincElement {
3966
4212
  static styles: CSSResultGroup;
3967
- private hasFocus;
3968
- private isSearching;
3969
- dialogEl: HTMLDialogElement;
3970
- searchInput: ZnInput;
3971
- commandList: HTMLElement;
3972
- dialogModule: HTMLElement;
3973
- allCommands: CannedResponse[];
3974
- commands: CannedResponse[];
3975
4213
  open: boolean;
3976
- private closeWatcher;
3977
- connectedCallback(): void;
3978
- disconnectedCallback(): void;
3979
- protected firstUpdated(_changedProperties: PropertyValues): void;
3980
- private handleKeyDown;
3981
- getAllItems(): HTMLElement[];
3982
- getCurrentItem(): HTMLElement | undefined;
3983
- setCurrentItem(item: HTMLElement): void;
3984
- focus(): void;
3985
- handleOpenChange(): void;
3986
- private addOpenListeners;
3987
- private removeOpenListeners;
3988
- private requestClose;
3989
- private handleClick;
3990
- private _createCommand;
3991
- private isFuzzyMatch;
3992
- handleSearch(event: ZnInputEvent): void;
3993
- render(): TemplateResult<1>;
4214
+ query: string;
4215
+ results: ResultItem[];
4216
+ private _activeIndex;
4217
+ show(): void;
4218
+ hide(): void;
4219
+ setPosition(left: number, top: number): void;
4220
+ setActiveIndex(index: number): void;
4221
+ getActiveIndex(): number;
4222
+ private _onClickItem;
4223
+ protected willUpdate(changed: PropertyValues): void;
4224
+ render(): import("lit").TemplateResult<1>;
3994
4225
  }
3995
4226
  }
3996
- declare module "components/editor/modules/events/zn-command-select" {
3997
- export type ZnCommandSelectEvent = CustomEvent<{
3998
- item: HTMLElement;
3999
- }>;
4227
+ declare module "components/editor/modules/context-menu/quick-action/quick-action.component" {
4228
+ import ZincElement from "internal/zinc-element";
4229
+ export default class ZnEditorQuickAction extends ZincElement {
4230
+ uri: string;
4231
+ label: string;
4232
+ content: string;
4233
+ key: string;
4234
+ icon: string;
4235
+ render(): import("lit").TemplateResult<1>;
4236
+ }
4237
+ }
4238
+ declare module "components/editor/modules/context-menu/quick-action/index" {
4239
+ import ZnEditorQuickAction from "components/editor/modules/context-menu/quick-action/quick-action.component";
4240
+ export * from "components/editor/modules/context-menu/quick-action/quick-action.component";
4241
+ export default ZnEditorQuickAction;
4000
4242
  global {
4001
- interface GlobalEventHandlersEventMap {
4002
- 'zn-command-select': ZnCommandSelectEvent;
4243
+ interface HTMLElementTagNameMap {
4244
+ 'zn-editor-quick-action': ZnEditorQuickAction;
4003
4245
  }
4004
4246
  }
4005
4247
  }
4006
- declare module "components/editor/modules/dialog-module/dialog-module" {
4007
- import "components/editor/modules/dialog-module/dialog-module.component";
4008
- import type { CannedResponse } from "components/editor/editor.component";
4009
- import type Quill from 'quill';
4010
- class DialogModule {
4248
+ declare module "components/editor/modules/context-menu/context-menu" {
4249
+ import "components/editor/modules/context-menu/context-menu-component";
4250
+ import Quill from "quill";
4251
+ class ContextMenu {
4011
4252
  private _quill;
4012
- private _dialog;
4013
- private _commands;
4253
+ private readonly _toolbarModule;
4254
+ private _component;
4255
+ private _startIndex;
4256
+ private _keydownHandler;
4257
+ private _docClickHandler;
4014
4258
  constructor(quill: Quill);
4015
- setCommands(commands: CannedResponse[]): void;
4016
- private _open;
4017
- private _close;
4018
- private initDialog;
4259
+ private initComponent;
4019
4260
  private attachEvents;
4020
- private detachEvents;
4021
- private onCommandSelect;
4022
- private createDialog;
4023
- private addCommands;
4024
- private triggerCommand;
4025
- }
4026
- export default DialogModule;
4027
- }
4028
- declare module "components/editor/modules/drag-drop-module" {
4029
- import Quill from 'quill';
4030
- interface DragAndDropModuleOptions {
4261
+ private createComponent;
4262
+ private onDocumentClick;
4263
+ private updateFromEditor;
4264
+ private positionComponent;
4265
+ private getToolbarQuery;
4266
+ private onKeydown;
4267
+ private onToolbarSelect;
4268
+ private _clickToolbarItem;
4269
+ private _applySelectedFormat;
4270
+ private deleteLastIndex;
4271
+ private _getOptions;
4272
+ private show;
4273
+ private hide;
4274
+ isOpen(): boolean;
4275
+ }
4276
+ export default ContextMenu;
4277
+ }
4278
+ declare module "components/editor/modules/date-picker/date-picker" {
4279
+ import Quill from "quill";
4280
+ class DatePicker {
4281
+ private readonly _quill;
4282
+ constructor(quill: Quill);
4283
+ private _initPicker;
4284
+ private getToolbarDateContainer;
4285
+ private _onDateSelect;
4286
+ }
4287
+ export default DatePicker;
4288
+ }
4289
+ declare module "components/editor/modules/dialog/dialog" {
4290
+ import type Quill from "quill";
4291
+ class Dialog {
4292
+ private readonly _quill;
4293
+ private readonly _editorId;
4294
+ private readonly _document;
4295
+ private _component;
4296
+ constructor(quill: Quill, options: {
4297
+ editorId: string;
4298
+ });
4299
+ private _initDialog;
4300
+ private createComponent;
4301
+ isOpen(): boolean;
4302
+ close(): void;
4303
+ }
4304
+ export default Dialog;
4305
+ }
4306
+ declare module "components/editor/modules/drag-drop/drag-drop" {
4307
+ import type Quill from 'quill';
4308
+ interface DragAndDropOptions {
4031
4309
  onDrop: (file: File, options: object) => void;
4032
4310
  draggableContentTypePattern: string;
4033
4311
  draggables: [];
4034
4312
  }
4035
- export default class DragAndDropModule {
4313
+ export default class DragAndDrop {
4036
4314
  private _quill;
4037
4315
  private _options;
4038
4316
  private _container;
4039
4317
  private _draggables;
4040
- constructor(quill: Quill, options: DragAndDropModuleOptions);
4318
+ constructor(quill: Quill, options: DragAndDropOptions);
4041
4319
  nullReturner: () => null;
4042
4320
  handleDrop: (e: DragEvent) => void;
4043
4321
  }
4044
4322
  export const getFileDataUrl: (file: any) => Promise<unknown>;
4045
4323
  }
4046
- declare module "components/editor/modules/image-resize-module/image-resize-module" {
4324
+ declare module "components/editor/modules/emoji/headless/headless-emoji.component" {
4325
+ import ZincElement from "internal/zinc-element";
4326
+ import type { CSSResultGroup, PropertyValues } from 'lit';
4327
+ export interface ResultItem {
4328
+ emojiChar: string;
4329
+ label: string;
4330
+ }
4331
+ export default class HeadlessEmojiComponent extends ZincElement {
4332
+ static styles: CSSResultGroup;
4333
+ open: boolean;
4334
+ query: string;
4335
+ results: ResultItem[];
4336
+ private _activeIndex;
4337
+ show(): void;
4338
+ hide(): void;
4339
+ setPosition(left: number, top: number): void;
4340
+ setActiveIndex(index: number): void;
4341
+ getActiveIndex(): number;
4342
+ private onMouseEnterItem;
4343
+ private onClickItem;
4344
+ protected willUpdate(changed: PropertyValues): void;
4345
+ render(): import("lit").TemplateResult<1>;
4346
+ }
4347
+ }
4348
+ declare module "components/editor/modules/emoji/headless/headless-emoji" {
4349
+ import "components/editor/modules/emoji/headless/headless-emoji.component";
4350
+ import Quill from 'quill';
4351
+ class HeadlessEmoji {
4352
+ private _quill;
4353
+ private _component;
4354
+ private _startIndex;
4355
+ private _keydownHandler;
4356
+ private _docClickHandler;
4357
+ constructor(quill: Quill);
4358
+ private initComponent;
4359
+ private attachEvents;
4360
+ private createComponent;
4361
+ private onDocumentClick;
4362
+ private updateFromEditor;
4363
+ private positionComponent;
4364
+ private getEmojiQuery;
4365
+ private onKeydown;
4366
+ private onEmojiSelect;
4367
+ private replaceAtQuery;
4368
+ private show;
4369
+ private hide;
4370
+ isOpen(): boolean;
4371
+ }
4372
+ export default HeadlessEmoji;
4373
+ }
4374
+ declare module "components/editor/modules/image-resize/image-resize" {
4047
4375
  import Quill, { Module } from "quill";
4048
- type ImageResizeModuleOptions = {
4376
+ interface ImageResizeOptions {
4049
4377
  overlayStyles?: Partial<CSSStyleDeclaration>;
4050
- };
4051
- class ImageResizeModule extends Module<ImageResizeModuleOptions> {
4052
- static DEFAULTS: ImageResizeModuleOptions;
4378
+ }
4379
+ class ImageResize extends Module<ImageResizeOptions> {
4380
+ static DEFAULTS: ImageResizeOptions;
4053
4381
  private _focusedImage;
4054
4382
  private _overlay;
4055
- constructor(quill: Quill, options: ImageResizeModuleOptions);
4383
+ constructor(quill: Quill, options: ImageResizeOptions);
4056
4384
  handleClick: (e: MouseEvent) => void;
4057
4385
  handleScroll: () => void;
4058
4386
  show: (image: HTMLImageElement) => void;
@@ -4063,111 +4391,237 @@ declare module "components/editor/modules/image-resize-module/image-resize-modul
4063
4391
  setUserSelect: (value: string) => void;
4064
4392
  checkImage: (e: KeyboardEvent) => void;
4065
4393
  }
4066
- export default ImageResizeModule;
4394
+ export default ImageResize;
4067
4395
  }
4068
- declare module "components/editor/modules/menu-module/menu-module.component" {
4069
- import { type CSSResultGroup, type TemplateResult } from "lit";
4396
+ declare module "components/editor/modules/ai/panel/ai-panel.component" {
4070
4397
  import ZincElement from "internal/zinc-element";
4071
- import type { CannedResponse } from "components/editor/editor.component";
4072
- import type ZnMenu from "components/menu/index";
4073
- export default class MenuModuleComponent extends ZincElement {
4398
+ import type { CSSResultGroup } from "lit";
4399
+ export default class AIPanelComponent extends ZincElement {
4074
4400
  static styles: CSSResultGroup;
4075
- private hasFocus;
4076
- menuEl: ZnMenu;
4077
- commandList: HTMLElement;
4078
- menuModule: HTMLElement;
4079
- commands: CannedResponse[];
4401
+ promptInput: HTMLTextAreaElement;
4080
4402
  open: boolean;
4081
- private closeWatcher;
4082
- connectedCallback(): void;
4083
- disconnectedCallback(): void;
4084
- focus(): void;
4403
+ refine?: (prompt: string) => void;
4404
+ refineBuiltIn?: (e: Event) => void;
4085
4405
  show(): void;
4086
4406
  hide(): void;
4087
- handleOpenChange(): void;
4088
- private addOpenListeners;
4089
- private removeOpenListeners;
4090
- private requestClose;
4091
- private showDialog;
4092
- private handleClick;
4093
- private _createCommand;
4094
- render(): TemplateResult<1>;
4407
+ private handleTriggerKeyDown;
4408
+ render(): import("lit").TemplateResult<1>;
4095
4409
  }
4096
4410
  }
4097
- declare module "components/editor/modules/menu-module/menu-module" {
4098
- import "components/editor/modules/menu-module/menu-module.component";
4099
- import Quill from 'quill';
4100
- import type { CannedResponse } from "components/editor/editor.component";
4101
- interface MenuModuleOptions {
4102
- cannedResponses: CannedResponse[];
4103
- cannedResponsesUri: string;
4411
+ declare module "components/editor/modules/ai/tooltip/ai-tooltip.component" {
4412
+ import ZincElement from "internal/zinc-element";
4413
+ import type { CSSResultGroup } from "lit";
4414
+ export default class AITooltipComponent extends ZincElement {
4415
+ static styles: CSSResultGroup;
4416
+ open: boolean;
4417
+ show(): void;
4418
+ hide(): void;
4419
+ render(): import("lit").TemplateResult<1>;
4104
4420
  }
4105
- export let menuOpen: boolean;
4106
- class MenuModule {
4107
- private _quill;
4108
- private _menu;
4109
- private readonly _cannedResponsesUri;
4110
- private _commands;
4111
- constructor(quill: Quill, options: MenuModuleOptions);
4112
- private initMenu;
4113
- private attachEvents;
4114
- private detachEvents;
4115
- private onTextChange;
4116
- private onCommandSelect;
4117
- private onDocumentClick;
4118
- private updateMenuPosition;
4119
- private _openMenu;
4120
- private _closeMenu;
4121
- private createMenu;
4122
- private addCommands;
4123
- private triggerCommand;
4124
- private fetchCannedResponses;
4421
+ }
4422
+ declare module "components/textarea/textarea.component" {
4423
+ import { type CSSResultGroup } from 'lit';
4424
+ import ZincElement, { type ZincFormControl } from "internal/zinc-element";
4425
+ /**
4426
+ * @summary Textareas collect data from the user and allow multiple lines of text.
4427
+ * @documentation https://zinc.style/components/textarea
4428
+ * @status stable
4429
+ * @since 2.0
4430
+ *
4431
+ * @slot label - The textareas label. Alternatively, you can use the `label` attribute.
4432
+ * @slot label-tooltip - Used to add text that is displayed in a tooltip next to the label. Alternatively, you can use the `label-tooltip` attribute.
4433
+ * @slot context-note - Used to add contextual text that is displayed above the textarea, on the right. Alternatively, you can use the `context-note` attribute.
4434
+ * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.
4435
+ *
4436
+ * @event zn-blur - Emitted when the control loses focus.
4437
+ * @event zn-change - Emitted when an alteration to the control's value is committed by the user.
4438
+ * @event zn-focus - Emitted when the control gains focus.
4439
+ * @event zn-input - Emitted when the control receives input.
4440
+ * @event zn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
4441
+ *
4442
+ * @csspart form-control - The form control that wraps the label, input, and help text.
4443
+ * @csspart form-control-label - The label's wrapper.
4444
+ * @csspart form-control-input - The input's wrapper.
4445
+ * @csspart form-control-help-text - The help text's wrapper.
4446
+ * @csspart base - The component's base wrapper.
4447
+ * @csspart textarea - The internal `<textarea>` control.
4448
+ */
4449
+ export default class ZnTextarea extends ZincElement implements ZincFormControl {
4450
+ static styles: CSSResultGroup;
4451
+ private readonly formControlController;
4452
+ private readonly hasSlotController;
4453
+ private resizeObserver;
4454
+ formControl: HTMLElement;
4455
+ input: HTMLTextAreaElement;
4456
+ hasFocus: boolean;
4457
+ title: string;
4458
+ /** The name of the textarea, submitted as a name/value pair with form data. */
4459
+ name: string;
4460
+ /** The current value of the textarea, submitted as a name/value pair with form data. */
4461
+ value: string;
4462
+ /** The text area's size. */
4463
+ size: 'small' | 'medium' | 'large';
4464
+ /** The textarea label. If you need to display HTML, use the `label` slot instead. */
4465
+ label: string;
4466
+ /** Text that appears in a tooltip next to the label. If you need to display HTML in the tooltip, use the `label-tooltip` slot instead. */
4467
+ labelTooltip: string;
4468
+ /** Text that appears above the textarea, on the right, to add additional context. If you need to display HTML in this text, use the `context-note` slot instead. */
4469
+ contextNote: string;
4470
+ /** The text area's help text. If you need to display HTML, use the `help-text` slot instead. */
4471
+ helpText: string;
4472
+ /** Placeholder text to show as a hint when the input is empty. */
4473
+ placeholder: string;
4474
+ /** The number of rows to display by default. */
4475
+ rows: number;
4476
+ /** Controls how the textarea can be resized. */
4477
+ resize: 'none' | 'vertical' | 'auto';
4478
+ /** Disables the textarea. */
4479
+ disabled: boolean;
4480
+ /** Makes the textarea readonly. */
4481
+ readonly: boolean;
4482
+ /**
4483
+ * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
4484
+ * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
4485
+ * the same document or shadow root for this to work.
4486
+ */
4487
+ form: string;
4488
+ /** Makes the textarea a required field. */
4489
+ required: boolean;
4490
+ /** The minimum length of input that will be considered valid. */
4491
+ minlength: number;
4492
+ /** The maximum length of input that will be considered valid. */
4493
+ maxlength: number;
4494
+ /** Controls whether and how text input is automatically capitalized as it is entered by the user. */
4495
+ autocapitalize: 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
4496
+ /** Indicates whether the browser's autocorrect feature is on or off. */
4497
+ autocorrect: string;
4498
+ /**
4499
+ * Specifies what permission the browser has to provide assistance in filling out form field values. Refer to
4500
+ * [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.
4501
+ */
4502
+ autocomplete: string;
4503
+ /** Indicates that the input should receive focus on page load. */
4504
+ autofocus: boolean;
4505
+ /** Used to customize the label or icon of the Enter key on virtual keyboards. */
4506
+ enterkeyhint: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
4507
+ /** Enables spell checking on the textarea. */
4508
+ spellcheck: boolean;
4509
+ /**
4510
+ * Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual
4511
+ * keyboard on supportive devices.
4512
+ */
4513
+ inputmode: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';
4514
+ /** The default value of the form control. Primarily used for resetting the form control. */
4515
+ defaultValue: string;
4516
+ transparent: boolean;
4517
+ /** Gets the validity state object */
4518
+ get validity(): ValidityState;
4519
+ /** Gets the validation message */
4520
+ get validationMessage(): string;
4521
+ connectedCallback(): void;
4522
+ firstUpdated(): void;
4523
+ disconnectedCallback(): void;
4524
+ private handleBlur;
4525
+ private handleChange;
4526
+ private handleFocus;
4527
+ private handleInput;
4528
+ private handleInvalid;
4529
+ private setTextareaHeight;
4530
+ handleDisabledChange(): void;
4531
+ handleRowsChange(): void;
4532
+ handleValueChange(): Promise<void>;
4533
+ /** Sets focus on the textarea. */
4534
+ focus(options?: FocusOptions): void;
4535
+ /** Removes focus from the textarea. */
4536
+ blur(): void;
4537
+ /** Selects all the text in the textarea. */
4538
+ select(): void;
4539
+ /** Gets or sets the textarea scroll position. */
4540
+ scrollPosition(position?: {
4541
+ top?: number;
4542
+ left?: number;
4543
+ }): {
4544
+ top: number;
4545
+ left: number;
4546
+ } | undefined;
4547
+ /** Sets the start and end positions of the text selection (0-based). */
4548
+ setSelectionRange(selectionStart: number, selectionEnd: number, selectionDirection?: 'forward' | 'backward' | 'none'): void;
4549
+ /** Replaces a range of text with a new string. */
4550
+ setRangeText(replacement: string, start?: number, end?: number, selectMode?: 'select' | 'start' | 'end' | 'preserve'): void;
4551
+ /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
4552
+ checkValidity(): boolean;
4553
+ /** Gets the associated form, if one exists. */
4554
+ getForm(): HTMLFormElement | null;
4555
+ /** Checks for validity and shows the browser's validation message if the control is invalid. */
4556
+ reportValidity(): boolean;
4557
+ /** Sets a custom validation message. Pass an empty string to restore validity. */
4558
+ setCustomValidity(message: string): void;
4559
+ render(): import("lit").TemplateResult<1>;
4125
4560
  }
4126
- export default MenuModule;
4127
4561
  }
4128
- declare module "components/editor/modules/time-tracking-module" {
4129
- import Quill from 'quill';
4130
- type TimeTrackingModuleOptions = {
4562
+ declare module "components/textarea/index" {
4563
+ import ZnTextarea from "components/textarea/textarea.component";
4564
+ export * from "components/textarea/textarea.component";
4565
+ export default ZnTextarea;
4566
+ global {
4567
+ interface HTMLElementTagNameMap {
4568
+ 'zn-textarea': ZnTextarea;
4569
+ }
4570
+ }
4571
+ }
4572
+ declare module "components/editor/modules/ai/index" {
4573
+ import Quill from "quill";
4574
+ class QuillAI {
4575
+ private _quill;
4576
+ private readonly _path;
4577
+ private _component;
4578
+ private _selectedText;
4579
+ private _prompt;
4580
+ private _aiResponseContent;
4581
+ constructor(quill: Quill, options: {
4582
+ path: string;
4583
+ });
4584
+ private _initComponent;
4585
+ private _attachEvents;
4586
+ private _latestContent;
4587
+ processAIRequest(): Promise<void>;
4588
+ private _createTooltipComponent;
4589
+ private _createPanelComponent;
4590
+ private _replaceTooltip;
4591
+ private _onDocumentClick;
4592
+ private _updateFromEditor;
4593
+ private _positionComponent;
4594
+ private _setPanelPosition;
4595
+ resetComponent(): void;
4596
+ private _show;
4597
+ private _hide;
4598
+ private _onEscapeKey;
4599
+ private _attachPanelEvents;
4600
+ private _clickPreDefinedEvent;
4601
+ private _enterCustomPrompt;
4602
+ }
4603
+ export default QuillAI;
4604
+ }
4605
+ declare module "components/editor/modules/time-tracking/time-tracking" {
4606
+ import type Quill from 'quill';
4607
+ interface TimeTrackingOptions {
4131
4608
  startTimeInput?: HTMLInputElement;
4132
4609
  openTimeInput?: HTMLInputElement;
4133
- };
4134
- export default class TimeTrackingModule {
4610
+ }
4611
+ export default class TimeTracking {
4135
4612
  private _quill;
4136
4613
  private _options;
4137
4614
  private _startTime;
4138
4615
  private _openTime;
4139
- constructor(quill: Quill, options: TimeTrackingModuleOptions);
4616
+ constructor(quill: Quill, options: TimeTrackingOptions);
4140
4617
  private _updateOpenTime;
4141
4618
  private _updateStartTime;
4142
4619
  }
4143
4620
  }
4144
- declare module "components/editor/modules/events/zn-show-canned-response-dialog" {
4145
- export type ZnShowCannedResponseDialogEvent = CustomEvent<{
4146
- commands: {
4147
- title: string;
4148
- content: string;
4149
- command: string;
4150
- count: string;
4151
- labels?: string[];
4152
- }[];
4153
- }>;
4154
- global {
4155
- interface GlobalEventHandlersEventMap {
4156
- 'zn-show-canned-response-dialog': ZnShowCannedResponseDialogEvent;
4157
- }
4158
- }
4159
- }
4160
4621
  declare module "components/editor/editor.component" {
4161
4622
  import { type CSSResultGroup, type PropertyValues } from 'lit';
4162
4623
  import ZincElement from "internal/zinc-element";
4163
4624
  import type { ZincFormControl } from "internal/zinc-element";
4164
- export interface CannedResponse {
4165
- title: string;
4166
- content: string;
4167
- command: string;
4168
- labels?: string[];
4169
- count: string;
4170
- }
4171
4625
  /**
4172
4626
  * @summary Short summary of the component's intended use.
4173
4627
  * @documentation https://zinc.style/components/editor
@@ -4190,13 +4644,16 @@ declare module "components/editor/editor.component" {
4190
4644
  private formControlController;
4191
4645
  private editor;
4192
4646
  private editorHtml;
4647
+ private toolbar;
4648
+ id: string;
4193
4649
  name: string;
4194
4650
  value: string;
4195
4651
  interactionType: 'ticket' | 'chat';
4196
- cannedResponses: any[];
4197
- cannedResponsesUri: string;
4198
4652
  uploadAttachmentUrl: string;
4653
+ aiPath: string;
4199
4654
  private quillElement;
4655
+ private _content;
4656
+ private _selectionRange;
4200
4657
  get validity(): ValidityState;
4201
4658
  get validationMessage(): string;
4202
4659
  checkValidity(): boolean;
@@ -4205,10 +4662,13 @@ declare module "components/editor/editor.component" {
4205
4662
  setCustomValidity(message: string): void;
4206
4663
  protected firstUpdated(_changedProperties: PropertyValues): void;
4207
4664
  private _handleTextChange;
4208
- private _updateIcons;
4209
4665
  private _getQuillKeyboardBindings;
4210
- private _supplyPlaceholderDialog;
4211
- private _setupTitleAttributes;
4666
+ private _handleEditorChange;
4667
+ private _replaceTextAtSelection;
4668
+ private _insertTextAtSelection;
4669
+ private _closePopups;
4670
+ private _closeAiPanel;
4671
+ private _closeDialog;
4212
4672
  render(): import("lit").TemplateResult<1>;
4213
4673
  }
4214
4674
  }
@@ -4247,204 +4707,55 @@ declare module "components/toggle/toggle.component" {
4247
4707
  private readonly formControlController;
4248
4708
  input: HTMLInputElement;
4249
4709
  hasFocus: boolean;
4250
- title: string;
4251
- name: string;
4252
- value: string;
4253
- fallbackValue: string;
4254
- size: 'small' | 'medium' | 'large';
4255
- disabled: boolean;
4256
- checked: boolean;
4257
- defaultChecked: boolean;
4258
- form: string;
4259
- required: boolean;
4260
- helpText: string;
4261
- triggerSubmit: boolean;
4262
- onText: string;
4263
- offText: string;
4264
- label: string;
4265
- get validity(): ValidityState;
4266
- get validationMessage(): string;
4267
- firstUpdated(_changedProperties: PropertyValues): void;
4268
- private handleBlur;
4269
- private handleInvalid;
4270
- private handleInput;
4271
- private handleClick;
4272
- private handleFocus;
4273
- private handleKeyDown;
4274
- click(): void;
4275
- focus(options?: FocusOptions): void;
4276
- blur(): void;
4277
- checkValidity(): boolean;
4278
- getForm(): HTMLFormElement | null;
4279
- reportValidity(): boolean;
4280
- setCustomValidity(message: string): void;
4281
- render(): import("lit").TemplateResult<1>;
4282
- }
4283
- }
4284
- declare module "components/toggle/index" {
4285
- import ZnToggle from "components/toggle/toggle.component";
4286
- export * from "components/toggle/toggle.component";
4287
- export default ZnToggle;
4288
- global {
4289
- interface HTMLElementTagNameMap {
4290
- 'zn-toggle': ZnToggle;
4291
- }
4292
- }
4293
- }
4294
- declare module "components/textarea/textarea.component" {
4295
- import { type CSSResultGroup } from 'lit';
4296
- import ZincElement, { type ZincFormControl } from "internal/zinc-element";
4297
- /**
4298
- * @summary Textareas collect data from the user and allow multiple lines of text.
4299
- * @documentation https://zinc.style/components/textarea
4300
- * @status stable
4301
- * @since 2.0
4302
- *
4303
- * @slot label - The textareas label. Alternatively, you can use the `label` attribute.
4304
- * @slot label-tooltip - Used to add text that is displayed in a tooltip next to the label. Alternatively, you can use the `label-tooltip` attribute.
4305
- * @slot context-note - Used to add contextual text that is displayed above the textarea, on the right. Alternatively, you can use the `context-note` attribute.
4306
- * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.
4307
- *
4308
- * @event zn-blur - Emitted when the control loses focus.
4309
- * @event zn-change - Emitted when an alteration to the control's value is committed by the user.
4310
- * @event zn-focus - Emitted when the control gains focus.
4311
- * @event zn-input - Emitted when the control receives input.
4312
- * @event zn-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
4313
- *
4314
- * @csspart form-control - The form control that wraps the label, input, and help text.
4315
- * @csspart form-control-label - The label's wrapper.
4316
- * @csspart form-control-input - The input's wrapper.
4317
- * @csspart form-control-help-text - The help text's wrapper.
4318
- * @csspart base - The component's base wrapper.
4319
- * @csspart textarea - The internal `<textarea>` control.
4320
- */
4321
- export default class ZnTextarea extends ZincElement implements ZincFormControl {
4322
- static styles: CSSResultGroup;
4323
- private readonly formControlController;
4324
- private readonly hasSlotController;
4325
- private resizeObserver;
4326
- formControl: HTMLElement;
4327
- input: HTMLTextAreaElement;
4328
- hasFocus: boolean;
4329
- title: string;
4330
- /** The name of the textarea, submitted as a name/value pair with form data. */
4331
- name: string;
4332
- /** The current value of the textarea, submitted as a name/value pair with form data. */
4333
- value: string;
4334
- /** The text area's size. */
4335
- size: 'small' | 'medium' | 'large';
4336
- /** The textarea label. If you need to display HTML, use the `label` slot instead. */
4337
- label: string;
4338
- /** Text that appears in a tooltip next to the label. If you need to display HTML in the tooltip, use the `label-tooltip` slot instead. */
4339
- labelTooltip: string;
4340
- /** Text that appears above the textarea, on the right, to add additional context. If you need to display HTML in this text, use the `context-note` slot instead. */
4341
- contextNote: string;
4342
- /** The text area's help text. If you need to display HTML, use the `help-text` slot instead. */
4343
- helpText: string;
4344
- /** Placeholder text to show as a hint when the input is empty. */
4345
- placeholder: string;
4346
- /** The number of rows to display by default. */
4347
- rows: number;
4348
- /** Controls how the textarea can be resized. */
4349
- resize: 'none' | 'vertical' | 'auto';
4350
- /** Disables the textarea. */
4351
- disabled: boolean;
4352
- /** Makes the textarea readonly. */
4353
- readonly: boolean;
4354
- /**
4355
- * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
4356
- * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
4357
- * the same document or shadow root for this to work.
4358
- */
4710
+ title: string;
4711
+ name: string;
4712
+ value: string;
4713
+ fallbackValue: string;
4714
+ size: 'small' | 'medium' | 'large';
4715
+ disabled: boolean;
4716
+ checked: boolean;
4717
+ defaultChecked: boolean;
4359
4718
  form: string;
4360
- /** Makes the textarea a required field. */
4361
4719
  required: boolean;
4362
- /** The minimum length of input that will be considered valid. */
4363
- minlength: number;
4364
- /** The maximum length of input that will be considered valid. */
4365
- maxlength: number;
4366
- /** Controls whether and how text input is automatically capitalized as it is entered by the user. */
4367
- autocapitalize: 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
4368
- /** Indicates whether the browser's autocorrect feature is on or off. */
4369
- autocorrect: string;
4370
- /**
4371
- * Specifies what permission the browser has to provide assistance in filling out form field values. Refer to
4372
- * [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.
4373
- */
4374
- autocomplete: string;
4375
- /** Indicates that the input should receive focus on page load. */
4376
- autofocus: boolean;
4377
- /** Used to customize the label or icon of the Enter key on virtual keyboards. */
4378
- enterkeyhint: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
4379
- /** Enables spell checking on the textarea. */
4380
- spellcheck: boolean;
4381
- /**
4382
- * Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual
4383
- * keyboard on supportive devices.
4384
- */
4385
- inputmode: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';
4386
- /** The default value of the form control. Primarily used for resetting the form control. */
4387
- defaultValue: string;
4388
- /** Gets the validity state object */
4720
+ helpText: string;
4721
+ triggerSubmit: boolean;
4722
+ onText: string;
4723
+ offText: string;
4724
+ label: string;
4389
4725
  get validity(): ValidityState;
4390
- /** Gets the validation message */
4391
4726
  get validationMessage(): string;
4392
- connectedCallback(): void;
4393
- firstUpdated(): void;
4394
- disconnectedCallback(): void;
4727
+ firstUpdated(_changedProperties: PropertyValues): void;
4395
4728
  private handleBlur;
4396
- private handleChange;
4397
- private handleFocus;
4398
- private handleInput;
4399
4729
  private handleInvalid;
4400
- private setTextareaHeight;
4401
- handleDisabledChange(): void;
4402
- handleRowsChange(): void;
4403
- handleValueChange(): Promise<void>;
4404
- /** Sets focus on the textarea. */
4730
+ private handleInput;
4731
+ private handleClick;
4732
+ private handleFocus;
4733
+ private handleKeyDown;
4734
+ click(): void;
4405
4735
  focus(options?: FocusOptions): void;
4406
- /** Removes focus from the textarea. */
4407
4736
  blur(): void;
4408
- /** Selects all the text in the textarea. */
4409
- select(): void;
4410
- /** Gets or sets the textarea scroll position. */
4411
- scrollPosition(position?: {
4412
- top?: number;
4413
- left?: number;
4414
- }): {
4415
- top: number;
4416
- left: number;
4417
- } | undefined;
4418
- /** Sets the start and end positions of the text selection (0-based). */
4419
- setSelectionRange(selectionStart: number, selectionEnd: number, selectionDirection?: 'forward' | 'backward' | 'none'): void;
4420
- /** Replaces a range of text with a new string. */
4421
- setRangeText(replacement: string, start?: number, end?: number, selectMode?: 'select' | 'start' | 'end' | 'preserve'): void;
4422
- /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
4423
4737
  checkValidity(): boolean;
4424
- /** Gets the associated form, if one exists. */
4425
4738
  getForm(): HTMLFormElement | null;
4426
- /** Checks for validity and shows the browser's validation message if the control is invalid. */
4427
4739
  reportValidity(): boolean;
4428
- /** Sets a custom validation message. Pass an empty string to restore validity. */
4429
4740
  setCustomValidity(message: string): void;
4430
4741
  render(): import("lit").TemplateResult<1>;
4431
4742
  }
4432
4743
  }
4433
- declare module "components/textarea/index" {
4434
- import ZnTextarea from "components/textarea/textarea.component";
4435
- export * from "components/textarea/textarea.component";
4436
- export default ZnTextarea;
4744
+ declare module "components/toggle/index" {
4745
+ import ZnToggle from "components/toggle/toggle.component";
4746
+ export * from "components/toggle/toggle.component";
4747
+ export default ZnToggle;
4437
4748
  global {
4438
4749
  interface HTMLElementTagNameMap {
4439
- 'zn-textarea': ZnTextarea;
4750
+ 'zn-toggle': ZnToggle;
4440
4751
  }
4441
4752
  }
4442
4753
  }
4443
4754
  declare module "components/checkbox/checkbox.component" {
4444
4755
  import { type CSSResultGroup } from 'lit';
4756
+ import type { ZincFormControl } from "internal/zinc-element";
4445
4757
  import ZincElement from "internal/zinc-element";
4446
4758
  import ZnIcon from "components/icon/index";
4447
- import type { ZincFormControl } from "internal/zinc-element";
4448
4759
  /**
4449
4760
  * @summary Short summary of the component's intended use.
4450
4761
  * @documentation https://zinc.style/components/checkbox
@@ -4518,6 +4829,7 @@ declare module "components/checkbox/checkbox.component" {
4518
4829
  labelTooltip: string;
4519
4830
  /** Gets the validity state object */
4520
4831
  get validity(): ValidityState;
4832
+ get isChecked(): boolean;
4521
4833
  /** Gets the validation message */
4522
4834
  get validationMessage(): string;
4523
4835
  firstUpdated(): void;
@@ -4712,6 +5024,7 @@ declare module "components/form-group/index" {
4712
5024
  declare module "components/linked-select/linked-select.component" {
4713
5025
  import { type CSSResultGroup, type PropertyValues } from 'lit';
4714
5026
  import ZincElement from "internal/zinc-element";
5027
+ import ZnSelect from "components/select/index";
4715
5028
  import type { ZincFormControl } from "internal/zinc-element";
4716
5029
  import type { ZnSelectEvent } from "events/zn-select";
4717
5030
  interface linkedSelectOption {
@@ -4746,9 +5059,10 @@ declare module "components/linked-select/linked-select.component" {
4746
5059
  linkedSelect: string;
4747
5060
  cacheKey: string;
4748
5061
  label: string;
4749
- input: HTMLInputElement;
5062
+ input: ZnSelect;
4750
5063
  private linkedSelectElement;
4751
5064
  private readonly formControlController;
5065
+ get displayLabel(): string;
4752
5066
  get validity(): ValidityState;
4753
5067
  get validationMessage(): string;
4754
5068
  connectedCallback(): void;
@@ -5389,6 +5703,7 @@ declare module "components/item/item.component" {
5389
5703
  };
5390
5704
  static styles: CSSResultGroup;
5391
5705
  caption: string;
5706
+ description: string;
5392
5707
  stacked: boolean;
5393
5708
  size: 'small' | 'medium' | 'large';
5394
5709
  editOnHover: boolean;
@@ -5397,6 +5712,7 @@ declare module "components/item/item.component" {
5397
5712
  inline: boolean;
5398
5713
  grid: boolean;
5399
5714
  noPadding: boolean;
5715
+ alignEnd: boolean;
5400
5716
  connectedCallback(): void;
5401
5717
  protected updated(_changedProperties: PropertyValues): void;
5402
5718
  render(): import("lit").TemplateResult<1>;
@@ -5412,93 +5728,6 @@ declare module "components/item/index" {
5412
5728
  }
5413
5729
  }
5414
5730
  }
5415
- declare module "components/data-select/data-select.component" {
5416
- import { type DataProviderOption, type LocalDataProvider } from "components/data-select/providers/provider";
5417
- import { FormControlController } from "internal/form";
5418
- import ZincElement from "internal/zinc-element";
5419
- import type { CSSResultGroup } from 'lit';
5420
- import type { ZincFormControl } from "internal/zinc-element";
5421
- import type ZnSelect from "components/select/index";
5422
- /**
5423
- * @summary Short summary of the component's intended use.
5424
- * @documentation https://zinc.style/components/data-select
5425
- * @status experimental
5426
- * @since 1.0
5427
- *
5428
- * @dependency zn-example
5429
- *
5430
- * @event zn-event-name - Emitted as an example.
5431
- *
5432
- * @slot - The default slot.
5433
- * @slot example - An example slot.
5434
- *
5435
- * @csspart base - The component's base wrapper.
5436
- *
5437
- * @cssproperty --example - An example CSS custom property.
5438
- */
5439
- export default class ZnDataSelect extends ZincElement implements ZincFormControl {
5440
- static styles: CSSResultGroup;
5441
- select: ZnSelect;
5442
- selectPrefix: HTMLElement;
5443
- /** The name of the select. Used for form submission. */
5444
- name: string;
5445
- /** The value of the select. Used for form submission. */
5446
- value: string;
5447
- /** The provider of the select. */
5448
- provider: 'color' | 'currency' | 'country' | 'phone';
5449
- iconPosition: 'start' | 'end' | 'none';
5450
- /** An array of keys to use for filtering the options in the selected provider. */
5451
- filter: string[];
5452
- /** The selects size. */
5453
- size: 'small' | 'medium' | 'large';
5454
- /** Should we show the clear button */
5455
- clearable: boolean;
5456
- /** Include an "All" option at the top. */
5457
- allowAll: boolean;
5458
- /** The selects label. If you need to display HTML, use the `label` slot instead. */
5459
- label: string;
5460
- /** Text that appears in a tooltip next to the label. If you need to display HTML in the tooltip, use the `label-tooltip` slot instead. */
5461
- labelTooltip: string;
5462
- /** Text that appears above the input, on the right, to add additional context. If you need to display HTML in this text, use the `context-note` slot instead. */
5463
- contextNote: string;
5464
- /**
5465
- * The preferred placement of the selects menu. Note that the actual placement may vary as needed to keep the listbox
5466
- * inside the viewport.
5467
- */
5468
- placement: 'top' | 'bottom';
5469
- /** The selects help text. If you need to display HTML, use the `help-text` slot instead. */
5470
- helpText: string;
5471
- /** The selects required attribute. */
5472
- required: boolean;
5473
- protected readonly formControlController: FormControlController;
5474
- get validationMessage(): string;
5475
- get validity(): ValidityState;
5476
- connectedCallback(): void;
5477
- disconnectedCallback(): void;
5478
- checkValidity(): boolean;
5479
- getForm(): HTMLFormElement | null;
5480
- reportValidity(): boolean;
5481
- setCustomValidity(message: string): void;
5482
- closeOnTab: (e: KeyboardEvent) => void;
5483
- handleValueChange(): Promise<void>;
5484
- handleInput: (e: Event) => void;
5485
- handleClear: () => void;
5486
- getLocalProvider(name: string): LocalDataProvider<DataProviderOption>;
5487
- blur: () => void;
5488
- protected render(): import("lit").TemplateResult<1>;
5489
- private _updatePrefix;
5490
- }
5491
- }
5492
- declare module "components/data-select/index" {
5493
- import ZnDataSelect from "components/data-select/data-select.component";
5494
- export * from "components/data-select/data-select.component";
5495
- export default ZnDataSelect;
5496
- global {
5497
- interface HTMLElementTagNameMap {
5498
- 'zn-data-select': ZnDataSelect;
5499
- }
5500
- }
5501
- }
5502
5731
  declare module "components/button-menu/button-menu.component" {
5503
5732
  import { type CSSResultGroup, type PropertyValues } from 'lit';
5504
5733
  import ZincElement from "internal/zinc-element";
@@ -5523,6 +5752,7 @@ declare module "components/button-menu/button-menu.component" {
5523
5752
  limit: number;
5524
5753
  maxLevel: number;
5525
5754
  size: 'content' | 'x-small' | 'small' | 'medium' | 'large';
5755
+ iconSize: number;
5526
5756
  noGap: boolean;
5527
5757
  noPadding: boolean;
5528
5758
  private _buttons;
@@ -5786,7 +6016,7 @@ declare module "components/page-nav/page-nav.component" {
5786
6016
  items: PageNavigationItem[];
5787
6017
  }
5788
6018
  interface PageNavigationItem {
5789
- icon: string;
6019
+ icon?: string;
5790
6020
  label: string;
5791
6021
  uri: string;
5792
6022
  }
@@ -5854,8 +6084,8 @@ declare module "components/status-indicator/index" {
5854
6084
  }
5855
6085
  declare module "components/split-button/split-button.component" {
5856
6086
  import { type CSSResultGroup } from 'lit';
5857
- import type { ZincFormControl } from "internal/zinc-element";
5858
6087
  import ZincElement from "internal/zinc-element";
6088
+ import type { ZincFormControl } from "internal/zinc-element";
5859
6089
  import type { ZnMenuSelectEvent } from "events/zn-menu-select";
5860
6090
  import type ZnButton from "components/button/index";
5861
6091
  import type ZnDropdown from "components/dropdown/index";
@@ -5890,9 +6120,9 @@ declare module "components/split-button/split-button.component" {
5890
6120
  connectedCallback(): void;
5891
6121
  disconnectedCallback(): void;
5892
6122
  handleMenuItemClick(e: ZnMenuSelectEvent): void;
5893
- handleClick(e: MouseEvent): void;
5894
6123
  handleTriggerClick(): void;
5895
6124
  render(): import("lit").TemplateResult<1>;
6125
+ private renderTriggerSlot;
5896
6126
  checkValidity(): boolean;
5897
6127
  getForm(): HTMLFormElement | null;
5898
6128
  reportValidity(): boolean;
@@ -5926,6 +6156,9 @@ declare module "components/style/style.component" {
5926
6156
  warning: boolean;
5927
6157
  primary: boolean;
5928
6158
  accent: boolean;
6159
+ center: boolean;
6160
+ width: string;
6161
+ height: string;
5929
6162
  pad: string;
5930
6163
  margin: string;
5931
6164
  autoMargin: string;
@@ -5988,6 +6221,104 @@ declare module "components/content-block/index" {
5988
6221
  }
5989
6222
  }
5990
6223
  }
6224
+ declare module "components/filter-wrapper/filter-wrapper.component" {
6225
+ import { type CSSResultGroup } from 'lit';
6226
+ import ZincElement from "internal/zinc-element";
6227
+ /**
6228
+ * @summary Short summary of the component's intended use.
6229
+ * @documentation https://zinc.style/components/filter-wrapper
6230
+ * @status experimental
6231
+ * @since 1.0
6232
+ *
6233
+ * @dependency zn-example
6234
+ *
6235
+ * @event zn-event-name - Emitted as an example.
6236
+ *
6237
+ * @slot - The default slot.
6238
+ * @slot example - An example slot.
6239
+ *
6240
+ * @csspart base - The component's base wrapper.
6241
+ *
6242
+ * @cssproperty --example - An example CSS custom property.
6243
+ */
6244
+ export default class ZnFilterWrapper extends ZincElement {
6245
+ static styles: CSSResultGroup;
6246
+ button: string;
6247
+ private hasSubmitButton;
6248
+ handleSubmit: (event: Event) => void;
6249
+ connectedCallback(): void;
6250
+ private renderDefaultButton;
6251
+ render(): import("lit").TemplateResult<1>;
6252
+ }
6253
+ }
6254
+ declare module "components/filter-wrapper/index" {
6255
+ import ZnFilterWrapper from "components/filter-wrapper/filter-wrapper.component";
6256
+ export * from "components/filter-wrapper/filter-wrapper.component";
6257
+ export default ZnFilterWrapper;
6258
+ global {
6259
+ interface HTMLElementTagNameMap {
6260
+ 'zn-filter-wrapper': ZnFilterWrapper;
6261
+ }
6262
+ }
6263
+ }
6264
+ declare module "components/settings-container/settings-container.component" {
6265
+ import { type CSSResultGroup } from 'lit';
6266
+ import { type ZnChangeEvent } from "events/zn-change";
6267
+ import ZincElement from "internal/zinc-element";
6268
+ interface SettingsContainerFilter {
6269
+ attribute: string;
6270
+ checked: boolean;
6271
+ label: string;
6272
+ itemSelector?: string;
6273
+ }
6274
+ /**
6275
+ * @summary Short summary of the component's intended use.
6276
+ * @documentation https://zinc.style/components/settings-container
6277
+ * @status experimental
6278
+ * @since 1.0
6279
+ *
6280
+ * @dependency zn-example
6281
+ *
6282
+ * @event zn-event-name - Emitted as an example.
6283
+ *
6284
+ * @slot - The default slot.
6285
+ * @slot example - An example slot.
6286
+ *
6287
+ * @csspart base - The component's base wrapper.
6288
+ *
6289
+ * @cssproperty --example - An example CSS custom property.
6290
+ */
6291
+ export default class ZnSettingsContainer extends ZincElement {
6292
+ static styles: CSSResultGroup;
6293
+ filters: SettingsContainerFilter[];
6294
+ position: 'top-end' | 'top-start' | 'bottom-end' | 'bottom-start';
6295
+ storeKey: string;
6296
+ noScroll: boolean;
6297
+ private _mutationObserver;
6298
+ private _updateFiltersScheduled;
6299
+ private _store;
6300
+ private _hiddenElements;
6301
+ connectedCallback(): void;
6302
+ disconnectedCallback(): void;
6303
+ private scheduleUpdateFilters;
6304
+ private handleContentSlotChange;
6305
+ private handleFiltersSlotChange;
6306
+ private recomputeFiltersFromSlot;
6307
+ updateFilters(): void;
6308
+ updateFilter(e: ZnChangeEvent): void;
6309
+ render(): import("lit").TemplateResult<1>;
6310
+ }
6311
+ }
6312
+ declare module "components/settings-container/index" {
6313
+ import ZnSettingsContainer from "components/settings-container/settings-container.component";
6314
+ export * from "components/settings-container/settings-container.component";
6315
+ export default ZnSettingsContainer;
6316
+ global {
6317
+ interface HTMLElementTagNameMap {
6318
+ 'zn-settings-container': ZnSettingsContainer;
6319
+ }
6320
+ }
6321
+ }
5991
6322
  declare module "events/zn-after-hide" {
5992
6323
  export type ZnAfterHideEvent = CustomEvent<Record<PropertyKey, never>>;
5993
6324
  global {
@@ -6093,6 +6424,9 @@ declare module "zinc" {
6093
6424
  export { default as OrderTable } from "components/order-table/index";
6094
6425
  export { default as BulkActions } from "components/bulk-actions/index";
6095
6426
  export { default as Editor } from "components/editor/index";
6427
+ export { default as EditorTool } from "components/editor/modules/toolbar/tool/index";
6428
+ export { default as EditorQuickAction } from "components/editor/modules/context-menu/quick-action/index";
6429
+ export { default as EditorDialog } from "components/editor/modules/dialog/dialog.component";
6096
6430
  export { default as Toggle } from "components/toggle/index";
6097
6431
  export { default as Input } from "components/input/index";
6098
6432
  export { default as Select } from "components/select/index";
@@ -6122,8 +6456,20 @@ declare module "zinc" {
6122
6456
  export { default as Skeleton } from "components/skeleton/index";
6123
6457
  export { default as Style } from "components/style/index";
6124
6458
  export { default as ContentBlock } from "components/content-block/index";
6459
+ export { default as FilterWrapper } from "components/filter-wrapper/index";
6460
+ export { default as SettingsContainer } from "components/settings-container/index";
6125
6461
  export * from "events/events";
6126
6462
  }
6463
+ declare module "components/editor/modules/events/zn-command-select" {
6464
+ export type ZnCommandSelectEvent = CustomEvent<{
6465
+ item: HTMLElement;
6466
+ }>;
6467
+ global {
6468
+ interface GlobalEventHandlersEventMap {
6469
+ 'zn-command-select': ZnCommandSelectEvent;
6470
+ }
6471
+ }
6472
+ }
6127
6473
  declare module "components/editor/modules/events/zn-editor-update" {
6128
6474
  export type ZnEditorUpdateEvent = CustomEvent<Record<PropertyKey, never>>;
6129
6475
  global {