@redvars/peacock 3.5.1 → 3.6.0

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 (198) hide show
  1. package/dist/{BaseButton-DuASuVth.js → BaseButton-BNFAYn-S.js} +2 -2
  2. package/dist/{BaseButton-DuASuVth.js.map → BaseButton-BNFAYn-S.js.map} +1 -1
  3. package/dist/BaseInput-14YmcfK7.js +27 -0
  4. package/dist/BaseInput-14YmcfK7.js.map +1 -0
  5. package/dist/banner.js +2 -3
  6. package/dist/banner.js.map +1 -1
  7. package/dist/{button-DouvOfEU.js → button-colors-Ccys3hvS.js} +5 -294
  8. package/dist/button-colors-Ccys3hvS.js.map +1 -0
  9. package/dist/button-group.js +226 -6
  10. package/dist/button-group.js.map +1 -1
  11. package/dist/button.js +294 -8
  12. package/dist/button.js.map +1 -1
  13. package/dist/calendar-column-view.js +634 -0
  14. package/dist/calendar-column-view.js.map +1 -0
  15. package/dist/calendar-event-BrQ_SEKD.js +199 -0
  16. package/dist/calendar-event-BrQ_SEKD.js.map +1 -0
  17. package/dist/calendar-month-view.js +376 -0
  18. package/dist/calendar-month-view.js.map +1 -0
  19. package/dist/calendar.js +339 -0
  20. package/dist/calendar.js.map +1 -0
  21. package/dist/canvas.js +361 -0
  22. package/dist/canvas.js.map +1 -0
  23. package/dist/cb-compound-expression.js +125 -0
  24. package/dist/cb-compound-expression.js.map +1 -0
  25. package/dist/cb-divider.js +150 -0
  26. package/dist/cb-divider.js.map +1 -0
  27. package/dist/cb-expression.js +75 -0
  28. package/dist/cb-expression.js.map +1 -0
  29. package/dist/cb-predicate.js +137 -0
  30. package/dist/cb-predicate.js.map +1 -0
  31. package/dist/code-editor.js +2 -1
  32. package/dist/code-editor.js.map +1 -1
  33. package/dist/condition-builder.js +58 -0
  34. package/dist/condition-builder.js.map +1 -0
  35. package/dist/custom-elements-jsdocs.json +7976 -4294
  36. package/dist/custom-elements.json +14358 -7589
  37. package/dist/dropdown-button.js +216 -0
  38. package/dist/dropdown-button.js.map +1 -0
  39. package/dist/event-manager-D-QCmUgR.js +113 -0
  40. package/dist/event-manager-D-QCmUgR.js.map +1 -0
  41. package/dist/fab.js +1 -1
  42. package/dist/flow-designer-dZnLJOQT.js +1656 -0
  43. package/dist/flow-designer-dZnLJOQT.js.map +1 -0
  44. package/dist/flow-designer-node-XMe-jlKg.js +548 -0
  45. package/dist/flow-designer-node-XMe-jlKg.js.map +1 -0
  46. package/dist/flow-designer-node.js +4 -0
  47. package/dist/flow-designer-node.js.map +1 -0
  48. package/dist/flow-designer.js +16 -0
  49. package/dist/flow-designer.js.map +1 -0
  50. package/dist/html-editor.js +358 -0
  51. package/dist/html-editor.js.map +1 -0
  52. package/dist/icon-button-CK1ZuE-2.js +247 -0
  53. package/dist/icon-button-CK1ZuE-2.js.map +1 -0
  54. package/dist/index.js +29 -6
  55. package/dist/index.js.map +1 -1
  56. package/dist/{is-dark-mode-DicqGkCJ.js → is-dark-mode-DOcaw4Yq.js} +2 -27
  57. package/dist/is-dark-mode-DOcaw4Yq.js.map +1 -0
  58. package/dist/modal.js +418 -0
  59. package/dist/modal.js.map +1 -0
  60. package/dist/{navigation-rail-Lxetd5-Z.js → navigation-rail-DyO0oAZU.js} +306 -2197
  61. package/dist/navigation-rail-DyO0oAZU.js.map +1 -0
  62. package/dist/notification-manager.js +268 -0
  63. package/dist/notification-manager.js.map +1 -0
  64. package/dist/peacock-loader.js +84 -8
  65. package/dist/peacock-loader.js.map +1 -1
  66. package/dist/popover-NC7b1lTq.js +1971 -0
  67. package/dist/popover-NC7b1lTq.js.map +1 -0
  68. package/dist/popover-content.js +125 -0
  69. package/dist/popover-content.js.map +1 -0
  70. package/dist/popover.js +4 -0
  71. package/dist/popover.js.map +1 -0
  72. package/dist/split-button.js +388 -0
  73. package/dist/split-button.js.map +1 -0
  74. package/dist/src/__controllers/floating-controller.d.ts +35 -0
  75. package/dist/src/calendar/base-event.d.ts +10 -0
  76. package/dist/src/calendar/calendar-column-view.d.ts +41 -0
  77. package/dist/src/calendar/calendar-event.d.ts +7 -0
  78. package/dist/src/calendar/calendar-month-view.d.ts +31 -0
  79. package/dist/src/calendar/calendar.d.ts +65 -0
  80. package/dist/src/calendar/event-manager.d.ts +17 -0
  81. package/dist/src/calendar/index.d.ts +4 -0
  82. package/dist/src/calendar/types.d.ts +13 -0
  83. package/dist/src/calendar/utils.d.ts +31 -0
  84. package/dist/src/canvas/canvas.d.ts +92 -0
  85. package/dist/src/canvas/index.d.ts +2 -0
  86. package/dist/src/condition-builder/cb-compound-expression.d.ts +31 -0
  87. package/dist/src/condition-builder/cb-divider.d.ts +26 -0
  88. package/dist/src/condition-builder/cb-expression.d.ts +31 -0
  89. package/dist/src/condition-builder/cb-predicate.d.ts +30 -0
  90. package/dist/src/condition-builder/condition-builder.d.ts +27 -0
  91. package/dist/src/condition-builder/index.d.ts +5 -0
  92. package/dist/src/dropdown-button/dropdown-button.d.ts +68 -0
  93. package/dist/src/dropdown-button/index.d.ts +1 -0
  94. package/dist/src/flow-designer/commands.d.ts +66 -0
  95. package/dist/src/flow-designer/flow-designer-node.d.ts +46 -0
  96. package/dist/src/flow-designer/flow-designer.d.ts +133 -0
  97. package/dist/src/flow-designer/index.d.ts +7 -0
  98. package/dist/src/flow-designer/layout.d.ts +30 -0
  99. package/dist/src/flow-designer/types.d.ts +142 -0
  100. package/dist/src/flow-designer/validation.d.ts +43 -0
  101. package/dist/src/flow-designer/workflow-utils.d.ts +40 -0
  102. package/dist/src/html-editor/html-editor.d.ts +56 -0
  103. package/dist/src/html-editor/index.d.ts +2 -0
  104. package/dist/src/index.d.ts +13 -0
  105. package/dist/src/menu/menu/menu.d.ts +5 -7
  106. package/dist/src/menu/menu-item/menu-item.d.ts +14 -13
  107. package/dist/src/modal/index.d.ts +1 -0
  108. package/dist/src/modal/modal.d.ts +63 -0
  109. package/dist/src/notification-manager/index.d.ts +1 -0
  110. package/dist/src/notification-manager/notification-manager.d.ts +44 -0
  111. package/dist/src/popover/index.d.ts +2 -0
  112. package/dist/src/popover/popover-content.d.ts +29 -0
  113. package/dist/src/popover/popover.d.ts +62 -0
  114. package/dist/src/split-button/index.d.ts +1 -0
  115. package/dist/src/split-button/split-button.d.ts +72 -0
  116. package/dist/src/tooltip/tooltip.d.ts +2 -15
  117. package/dist/test/flow-designer.test.d.ts +1 -0
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/package.json +4 -2
  120. package/readme.md +2 -2
  121. package/src/__controllers/floating-controller.ts +237 -0
  122. package/src/banner/banner.scss +2 -3
  123. package/src/button/button/button.ts +1 -0
  124. package/src/calendar/base-event.ts +49 -0
  125. package/src/calendar/calendar-column-view.scss +326 -0
  126. package/src/calendar/calendar-column-view.ts +392 -0
  127. package/src/calendar/calendar-event.ts +20 -0
  128. package/src/calendar/calendar-month-view.scss +192 -0
  129. package/src/calendar/calendar-month-view.ts +244 -0
  130. package/src/calendar/calendar.scss +71 -0
  131. package/src/calendar/calendar.ts +298 -0
  132. package/src/calendar/event-manager.ts +117 -0
  133. package/src/calendar/index.ts +4 -0
  134. package/src/calendar/types.ts +14 -0
  135. package/src/calendar/utils.ts +180 -0
  136. package/src/canvas/canvas.scss +60 -0
  137. package/src/canvas/canvas.ts +391 -0
  138. package/src/canvas/index.ts +2 -0
  139. package/src/condition-builder/cb-compound-expression.scss +37 -0
  140. package/src/condition-builder/cb-compound-expression.ts +80 -0
  141. package/src/condition-builder/cb-divider.scss +93 -0
  142. package/src/condition-builder/cb-divider.ts +56 -0
  143. package/src/condition-builder/cb-expression.scss +14 -0
  144. package/src/condition-builder/cb-expression.ts +49 -0
  145. package/src/condition-builder/cb-predicate.scss +35 -0
  146. package/src/condition-builder/cb-predicate.ts +102 -0
  147. package/src/condition-builder/condition-builder.scss +13 -0
  148. package/src/condition-builder/condition-builder.ts +38 -0
  149. package/src/condition-builder/index.ts +5 -0
  150. package/src/dropdown-button/demo/index.html +110 -0
  151. package/src/dropdown-button/dropdown-button.scss +22 -0
  152. package/src/dropdown-button/dropdown-button.ts +206 -0
  153. package/src/dropdown-button/index.ts +1 -0
  154. package/src/flow-designer/DEMO.md +239 -0
  155. package/src/flow-designer/commands.ts +278 -0
  156. package/src/flow-designer/flow-designer-node.ts +172 -0
  157. package/src/flow-designer/flow-designer.scss +457 -0
  158. package/src/flow-designer/flow-designer.ts +611 -0
  159. package/src/flow-designer/index.ts +41 -0
  160. package/src/flow-designer/layout.ts +357 -0
  161. package/src/flow-designer/types.ts +166 -0
  162. package/src/flow-designer/validation.ts +284 -0
  163. package/src/flow-designer/workflow-utils.ts +282 -0
  164. package/src/html-editor/html-editor.scss +146 -0
  165. package/src/html-editor/html-editor.ts +276 -0
  166. package/src/html-editor/index.ts +3 -0
  167. package/src/index.ts +25 -0
  168. package/src/menu/menu/menu.scss +2 -2
  169. package/src/menu/menu/menu.ts +91 -101
  170. package/src/menu/menu-item/menu-item.scss +4 -0
  171. package/src/menu/menu-item/menu-item.ts +82 -78
  172. package/src/modal/index.ts +1 -0
  173. package/src/modal/modal.scss +206 -0
  174. package/src/modal/modal.ts +201 -0
  175. package/src/notification-manager/index.ts +1 -0
  176. package/src/notification-manager/notification-manager.scss +113 -0
  177. package/src/notification-manager/notification-manager.ts +199 -0
  178. package/src/peacock-loader.ts +71 -0
  179. package/src/popover/index.ts +2 -0
  180. package/src/popover/popover-content.scss +69 -0
  181. package/src/popover/popover-content.ts +51 -0
  182. package/src/popover/popover.scss +7 -0
  183. package/src/popover/popover.ts +170 -0
  184. package/src/split-button/index.ts +1 -0
  185. package/src/split-button/split-button-colors.scss +56 -0
  186. package/src/split-button/split-button-sizes.scss +28 -0
  187. package/src/split-button/split-button.scss +79 -0
  188. package/src/split-button/split-button.ts +236 -0
  189. package/src/table/table.ts +2 -2
  190. package/src/tooltip/tooltip.scss +4 -3
  191. package/src/tooltip/tooltip.ts +46 -104
  192. package/dist/button-DouvOfEU.js.map +0 -1
  193. package/dist/button-group-CEdMwvJJ.js +0 -464
  194. package/dist/button-group-CEdMwvJJ.js.map +0 -1
  195. package/dist/is-dark-mode-DicqGkCJ.js.map +0 -1
  196. package/dist/navigation-rail-Lxetd5-Z.js.map +0 -1
  197. package/dist/src/menu/menu/MenuSurfaceController.d.ts +0 -18
  198. package/src/menu/menu/MenuSurfaceController.ts +0 -61
@@ -0,0 +1,216 @@
1
+ import { a as i, _ as __decorate, I as IndividualComponent, i as i$1, b } from './IndividualComponent-DUINtMGK.js';
2
+ import { n } from './property-1psGvXOq.js';
3
+ import { r } from './state-DwbEjqVk.js';
4
+ import { e } from './query-QBcUV-L_.js';
5
+ import { e as e$1 } from './class-map-YU7g0o3B.js';
6
+ import './directive-ZPhl09Yt.js';
7
+
8
+ var css_248z = i`* {
9
+ box-sizing: border-box;
10
+ }
11
+
12
+ .screen-reader-only {
13
+ display: none !important;
14
+ }
15
+
16
+ :host {
17
+ display: inline-flex;
18
+ position: relative;
19
+ --dropdown-button-container-shape: var(--shape-corner-medium);
20
+ }
21
+
22
+ .trigger-button {
23
+ --button-container-shape: var(--dropdown-button-container-shape);
24
+ }
25
+
26
+ .dropdown-icon {
27
+ transition: transform 200ms ease;
28
+ }
29
+
30
+ .trigger-button.active .dropdown-icon {
31
+ transform: rotate(180deg);
32
+ }`;
33
+
34
+ /**
35
+ * @label Dropdown Button
36
+ * @tag wc-dropdown-button
37
+ * @rawTag dropdown-button
38
+ *
39
+ * @summary A button that opens a dropdown menu when clicked.
40
+ * @overview
41
+ * <p>The dropdown button combines a single button with a dropdown menu. Clicking the button toggles a menu of actions or options. It follows M3 Material Design, keeping a compact control while exposing related actions on demand.</p>
42
+ *
43
+ * @cssprop --dropdown-button-container-shape: Defines the border radius of the dropdown button container shape.
44
+ *
45
+ * @fires {CustomEvent} toggle-menu - Dispatched when the dropdown menu is opened or closed.
46
+ *
47
+ * @example
48
+ * ```html
49
+ * <wc-dropdown-button>
50
+ * Actions
51
+ * <wc-menu-item slot="menu">Edit</wc-menu-item>
52
+ * <wc-menu-item slot="menu">Delete</wc-menu-item>
53
+ * </wc-dropdown-button>
54
+ * ```
55
+ * @tags controls
56
+ */
57
+ let DropdownButton = class DropdownButton extends i$1 {
58
+ constructor() {
59
+ super(...arguments);
60
+ /**
61
+ * Button size.
62
+ * Possible values are `"xs"`, `"sm"`, `"md"`, `"lg"`, `"xl"`. Defaults to `"sm"`.
63
+ */
64
+ this.size = 'sm';
65
+ /**
66
+ * The visual style of the dropdown button.
67
+ *
68
+ * Possible variant values:
69
+ * `"filled"` is a filled button.
70
+ * `"outlined"` is an outlined button.
71
+ * `"text"` is a transparent button.
72
+ * `"tonal"` is a light color button.
73
+ * `"elevated"` is an elevated button.
74
+ */
75
+ this.variant = 'filled';
76
+ /**
77
+ * Defines the primary color of the dropdown button.
78
+ */
79
+ this.color = 'primary';
80
+ /**
81
+ * Whether the dropdown button is disabled.
82
+ */
83
+ this.disabled = false;
84
+ /**
85
+ * Menu placement relative to the button.
86
+ * Possible values are `"bottom-start"`, `"bottom-end"`, `"top-start"`, `"top-end"`. Defaults to `"bottom-start"`.
87
+ */
88
+ this.placement = 'bottom-start';
89
+ this._menuOpen = false;
90
+ this._menuId = `dropdown-menu-${Math.random().toString(36).slice(2, 9)}`;
91
+ this._onMenuOpened = () => {
92
+ this._menuOpen = true;
93
+ this.dispatchEvent(new CustomEvent('toggle-menu', {
94
+ detail: { open: true },
95
+ bubbles: true,
96
+ composed: true,
97
+ }));
98
+ };
99
+ this._onMenuClosed = () => {
100
+ this._menuOpen = false;
101
+ this.dispatchEvent(new CustomEvent('toggle-menu', {
102
+ detail: { open: false },
103
+ bubbles: true,
104
+ composed: true,
105
+ }));
106
+ };
107
+ this._onKeyDown = (event) => {
108
+ if (this.disabled)
109
+ return;
110
+ if (event.key === 'ArrowDown' && !this._menuOpen) {
111
+ event.preventDefault();
112
+ this._menu.anchorElement = this;
113
+ this._menu?.show();
114
+ requestAnimationFrame(() => this._menu?.focus());
115
+ }
116
+ if (event.key === 'Escape' && this._menuOpen) {
117
+ this._menu?.close();
118
+ this._triggerButton?.focus();
119
+ }
120
+ };
121
+ }
122
+ focus() {
123
+ this._triggerButton?.focus();
124
+ }
125
+ _onButtonClick(event) {
126
+ event.stopPropagation();
127
+ if (this.disabled)
128
+ return;
129
+ if (this._menuOpen) {
130
+ this._menu?.close();
131
+ }
132
+ else {
133
+ this._menu.anchorElement = this;
134
+ this._menu?.show();
135
+ }
136
+ }
137
+ connectedCallback() {
138
+ super.connectedCallback();
139
+ this.addEventListener('keydown', this._onKeyDown);
140
+ }
141
+ disconnectedCallback() {
142
+ this.removeEventListener('keydown', this._onKeyDown);
143
+ super.disconnectedCallback();
144
+ }
145
+ render() {
146
+ const buttonClasses = {
147
+ 'trigger-button': true,
148
+ active: this._menuOpen,
149
+ disabled: this.disabled,
150
+ };
151
+ return b `
152
+ <wc-button
153
+ class=${e$1(buttonClasses)}
154
+ size=${this.size}
155
+ variant=${this.variant}
156
+ color=${this.color}
157
+ icon-align="end"
158
+ ?disabled=${this.disabled}
159
+ .configAria=${{
160
+ 'aria-haspopup': 'menu',
161
+ 'aria-expanded': String(this._menuOpen),
162
+ 'aria-controls': this._menuId,
163
+ }}
164
+ @click=${this._onButtonClick}
165
+ >
166
+ <slot></slot>
167
+ <wc-icon
168
+ slot="icon"
169
+ name="arrow_drop_down"
170
+ class="dropdown-icon"
171
+ aria-hidden="true"
172
+ ></wc-icon>
173
+ </wc-button>
174
+
175
+ <wc-menu
176
+ id=${this._menuId}
177
+ placement=${this.placement}
178
+ @opened=${this._onMenuOpened}
179
+ @closed=${this._onMenuClosed}
180
+ >
181
+ <slot name="menu"></slot>
182
+ </wc-menu>
183
+ `;
184
+ }
185
+ };
186
+ DropdownButton.styles = [css_248z];
187
+ __decorate([
188
+ n({ reflect: true })
189
+ ], DropdownButton.prototype, "size", void 0);
190
+ __decorate([
191
+ n({ reflect: true })
192
+ ], DropdownButton.prototype, "variant", void 0);
193
+ __decorate([
194
+ n({ reflect: true })
195
+ ], DropdownButton.prototype, "color", void 0);
196
+ __decorate([
197
+ n({ type: Boolean, reflect: true })
198
+ ], DropdownButton.prototype, "disabled", void 0);
199
+ __decorate([
200
+ n({ reflect: true })
201
+ ], DropdownButton.prototype, "placement", void 0);
202
+ __decorate([
203
+ r()
204
+ ], DropdownButton.prototype, "_menuOpen", void 0);
205
+ __decorate([
206
+ e('.trigger-button')
207
+ ], DropdownButton.prototype, "_triggerButton", void 0);
208
+ __decorate([
209
+ e('wc-menu')
210
+ ], DropdownButton.prototype, "_menu", void 0);
211
+ DropdownButton = __decorate([
212
+ IndividualComponent
213
+ ], DropdownButton);
214
+
215
+ export { DropdownButton };
216
+ //# sourceMappingURL=dropdown-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-button.js","sources":["../../src/dropdown-button/dropdown-button.ts"],"sourcesContent":["import { html, LitElement } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport IndividualComponent from '@/IndividualComponent.js';\nimport styles from './dropdown-button.scss';\n\n/**\n * @label Dropdown Button\n * @tag wc-dropdown-button\n * @rawTag dropdown-button\n *\n * @summary A button that opens a dropdown menu when clicked.\n * @overview\n * <p>The dropdown button combines a single button with a dropdown menu. Clicking the button toggles a menu of actions or options. It follows M3 Material Design, keeping a compact control while exposing related actions on demand.</p>\n *\n * @cssprop --dropdown-button-container-shape: Defines the border radius of the dropdown button container shape.\n *\n * @fires {CustomEvent} toggle-menu - Dispatched when the dropdown menu is opened or closed.\n *\n * @example\n * ```html\n * <wc-dropdown-button>\n * Actions\n * <wc-menu-item slot=\"menu\">Edit</wc-menu-item>\n * <wc-menu-item slot=\"menu\">Delete</wc-menu-item>\n * </wc-dropdown-button>\n * ```\n * @tags controls\n */\n@IndividualComponent\nexport class DropdownButton extends LitElement {\n static override styles = [styles];\n\n /**\n * Button size.\n * Possible values are `\"xs\"`, `\"sm\"`, `\"md\"`, `\"lg\"`, `\"xl\"`. Defaults to `\"sm\"`.\n */\n @property({ reflect: true }) size: 'xs' | 'sm' | 'md' | 'lg' | 'xl' = 'sm';\n\n /**\n * The visual style of the dropdown button.\n *\n * Possible variant values:\n * `\"filled\"` is a filled button.\n * `\"outlined\"` is an outlined button.\n * `\"text\"` is a transparent button.\n * `\"tonal\"` is a light color button.\n * `\"elevated\"` is an elevated button.\n */\n @property({ reflect: true }) variant:\n | 'elevated'\n | 'filled'\n | 'tonal'\n | 'outlined'\n | 'text' = 'filled';\n\n /**\n * Defines the primary color of the dropdown button.\n */\n @property({ reflect: true }) color:\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'success'\n | 'danger'\n | 'warning'\n | 'surface'\n | 'on-surface' = 'primary';\n\n /**\n * Whether the dropdown button is disabled.\n */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**\n * Menu placement relative to the button.\n * Possible values are `\"bottom-start\"`, `\"bottom-end\"`, `\"top-start\"`, `\"top-end\"`. Defaults to `\"bottom-start\"`.\n */\n @property({ reflect: true }) placement:\n | 'bottom-start'\n | 'bottom-end'\n | 'top-start'\n | 'top-end' = 'bottom-start';\n\n @state() private _menuOpen = false;\n\n @query('.trigger-button') private readonly _triggerButton!: HTMLElement & {\n focus: () => void;\n };\n\n @query('wc-menu') private readonly _menu!: HTMLElement & {\n open: boolean;\n anchorElement: HTMLElement | null;\n show: () => void;\n close: () => void;\n focus: () => void;\n };\n\n private _menuId = `dropdown-menu-${Math.random().toString(36).slice(2, 9)}`;\n\n override focus() {\n this._triggerButton?.focus();\n }\n\n private _onButtonClick(event: MouseEvent) {\n event.stopPropagation();\n if (this.disabled) return;\n\n if (this._menuOpen) {\n this._menu?.close();\n } else {\n this._menu.anchorElement = this;\n this._menu?.show();\n }\n }\n\n private _onMenuOpened = () => {\n this._menuOpen = true;\n this.dispatchEvent(\n new CustomEvent('toggle-menu', {\n detail: { open: true },\n bubbles: true,\n composed: true,\n }),\n );\n };\n\n private _onMenuClosed = () => {\n this._menuOpen = false;\n this.dispatchEvent(\n new CustomEvent('toggle-menu', {\n detail: { open: false },\n bubbles: true,\n composed: true,\n }),\n );\n };\n\n private _onKeyDown = (event: KeyboardEvent) => {\n if (this.disabled) return;\n\n if (event.key === 'ArrowDown' && !this._menuOpen) {\n event.preventDefault();\n this._menu.anchorElement = this;\n this._menu?.show();\n requestAnimationFrame(() => this._menu?.focus());\n }\n\n if (event.key === 'Escape' && this._menuOpen) {\n this._menu?.close();\n this._triggerButton?.focus();\n }\n };\n\n override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('keydown', this._onKeyDown);\n }\n\n override disconnectedCallback() {\n this.removeEventListener('keydown', this._onKeyDown);\n super.disconnectedCallback();\n }\n\n override render() {\n const buttonClasses = {\n 'trigger-button': true,\n active: this._menuOpen,\n disabled: this.disabled,\n };\n\n return html`\n <wc-button\n class=${classMap(buttonClasses)}\n size=${this.size}\n variant=${this.variant}\n color=${this.color}\n icon-align=\"end\"\n ?disabled=${this.disabled}\n .configAria=${{\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(this._menuOpen),\n 'aria-controls': this._menuId,\n }}\n @click=${this._onButtonClick}\n >\n <slot></slot>\n <wc-icon\n slot=\"icon\"\n name=\"arrow_drop_down\"\n class=\"dropdown-icon\"\n aria-hidden=\"true\"\n ></wc-icon>\n </wc-button>\n\n <wc-menu\n id=${this._menuId}\n placement=${this.placement}\n @opened=${this._onMenuOpened}\n @closed=${this._onMenuClosed}\n >\n <slot name=\"menu\"></slot>\n </wc-menu>\n `;\n }\n}\n"],"names":["LitElement","html","classMap","styles","property","state","query"],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ import { c as __classPrivateFieldGet } from './IndividualComponent-DUINtMGK.js';
2
+ import { C as CalendarEvent } from './calendar-event-BrQ_SEKD.js';
3
+
4
+ var _EventManager_events, _MonthEventManager_events;
5
+ class ColumnEvent extends CalendarEvent {
6
+ constructor(event) {
7
+ super(event.start, event.end, event.title, event.color, event.data);
8
+ this.width = 1;
9
+ }
10
+ }
11
+ class EventManager {
12
+ constructor() {
13
+ _EventManager_events.set(this, []);
14
+ this.columns = [];
15
+ }
16
+ addEvents(events) {
17
+ events.forEach(event => {
18
+ __classPrivateFieldGet(this, _EventManager_events, "f").push(new ColumnEvent(event));
19
+ });
20
+ }
21
+ process() {
22
+ this.columns = [];
23
+ let events = __classPrivateFieldGet(this, _EventManager_events, "f").sort((a, b) => {
24
+ return a.start.valueOf() - b.start.valueOf() || b.length() - a.length();
25
+ });
26
+ let oldLength = null;
27
+ /* Bucketing: group non-overlapping events into columns */
28
+ while (events.length) {
29
+ if (oldLength === events.length) {
30
+ throw new Error('Events not processed in previous run, breaking infinite loop');
31
+ }
32
+ oldLength = events.length;
33
+ const column = [];
34
+ for (let i = 0; i < events.length; i++) {
35
+ if (i === 0) {
36
+ column.push(events[i]);
37
+ }
38
+ else if (events[i].start.valueOf() >= column[column.length - 1].end.valueOf()) {
39
+ column.push(events[i]);
40
+ }
41
+ }
42
+ this.columns.push(column);
43
+ events = events.filter(e => !column.find(ce => ce.gid === e.gid));
44
+ }
45
+ /* Calculate widths for events that span multiple columns */
46
+ for (let i = 0; i < this.columns.length - 1; i++) {
47
+ this.columns[i].forEach(event => {
48
+ for (let j = i + 1; j < this.columns.length; j++) {
49
+ if (this.columns[j].find(colEvent => event.isOverlapping(colEvent))) {
50
+ break;
51
+ }
52
+ event.width++;
53
+ }
54
+ });
55
+ }
56
+ }
57
+ }
58
+ _EventManager_events = new WeakMap();
59
+ class MonthEventManager {
60
+ constructor() {
61
+ _MonthEventManager_events.set(this, []);
62
+ this.columns = [];
63
+ }
64
+ addEvents(events) {
65
+ events.forEach(event => {
66
+ __classPrivateFieldGet(this, _MonthEventManager_events, "f").push(new ColumnEvent(event));
67
+ });
68
+ }
69
+ process() {
70
+ this.columns = [];
71
+ let events = __classPrivateFieldGet(this, _MonthEventManager_events, "f").sort((a, b) => {
72
+ return a.start.valueOf() - b.start.valueOf() || b.length() - a.length();
73
+ });
74
+ let oldLength = null;
75
+ while (events.length) {
76
+ if (oldLength === events.length) {
77
+ throw new Error('Events not processed in previous run, breaking infinite loop');
78
+ }
79
+ oldLength = events.length;
80
+ const column = [];
81
+ for (let i = 0; i < events.length; i++) {
82
+ if (i === 0) {
83
+ column.push(events[i]);
84
+ }
85
+ else {
86
+ const lastEnd = new Date(column[column.length - 1].end);
87
+ lastEnd.setHours(23, 59, 59, 999);
88
+ const nextStart = new Date(events[i].start);
89
+ nextStart.setHours(0, 0, 0, 0);
90
+ if (nextStart.valueOf() > lastEnd.valueOf()) {
91
+ column.push(events[i]);
92
+ }
93
+ }
94
+ }
95
+ this.columns.push(column);
96
+ events = events.filter(e => !column.find(ce => ce.gid === e.gid));
97
+ }
98
+ for (let i = 0; i < this.columns.length - 1; i++) {
99
+ this.columns[i].forEach(event => {
100
+ for (let j = i + 1; j < this.columns.length; j++) {
101
+ if (this.columns[j].find(colEvent => event.isOverlapping(colEvent))) {
102
+ break;
103
+ }
104
+ event.width++;
105
+ }
106
+ });
107
+ }
108
+ }
109
+ }
110
+ _MonthEventManager_events = new WeakMap();
111
+
112
+ export { EventManager as E, MonthEventManager as M };
113
+ //# sourceMappingURL=event-manager-D-QCmUgR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-manager-D-QCmUgR.js","sources":["../../src/calendar/event-manager.ts"],"sourcesContent":["import { CalendarEvent } from './calendar-event.js';\n\nexport class ColumnEvent extends CalendarEvent {\n width: number = 1;\n\n constructor(event: CalendarEvent) {\n super(event.start, event.end, event.title, event.color, event.data);\n }\n}\n\nexport class EventManager {\n #events: ColumnEvent[] = [];\n columns: ColumnEvent[][] = [];\n\n addEvents(events: CalendarEvent[]): void {\n events.forEach(event => {\n this.#events.push(new ColumnEvent(event));\n });\n }\n\n process(): void {\n this.columns = [];\n let events = this.#events.sort((a, b) => {\n return a.start.valueOf() - b.start.valueOf() || b.length() - a.length();\n });\n\n let oldLength: number | null = null;\n /* Bucketing: group non-overlapping events into columns */\n while (events.length) {\n if (oldLength === events.length) {\n throw new Error(\n 'Events not processed in previous run, breaking infinite loop',\n );\n }\n oldLength = events.length;\n\n const column: ColumnEvent[] = [];\n for (let i = 0; i < events.length; i++) {\n if (i === 0) {\n column.push(events[i]);\n } else if (events[i].start.valueOf() >= column[column.length - 1].end.valueOf()) {\n column.push(events[i]);\n }\n }\n this.columns.push(column);\n events = events.filter(e => !column.find(ce => ce.gid === e.gid));\n }\n\n /* Calculate widths for events that span multiple columns */\n for (let i = 0; i < this.columns.length - 1; i++) {\n this.columns[i].forEach(event => {\n for (let j = i + 1; j < this.columns.length; j++) {\n if (this.columns[j].find(colEvent => event.isOverlapping(colEvent))) {\n break;\n }\n event.width++;\n }\n });\n }\n }\n}\n\nexport class MonthEventManager {\n #events: ColumnEvent[] = [];\n columns: ColumnEvent[][] = [];\n\n addEvents(events: CalendarEvent[]): void {\n events.forEach(event => {\n this.#events.push(new ColumnEvent(event));\n });\n }\n\n process(): void {\n this.columns = [];\n let events = this.#events.sort((a, b) => {\n return a.start.valueOf() - b.start.valueOf() || b.length() - a.length();\n });\n\n let oldLength: number | null = null;\n while (events.length) {\n if (oldLength === events.length) {\n throw new Error(\n 'Events not processed in previous run, breaking infinite loop',\n );\n }\n oldLength = events.length;\n\n const column: ColumnEvent[] = [];\n for (let i = 0; i < events.length; i++) {\n if (i === 0) {\n column.push(events[i]);\n } else {\n const lastEnd = new Date(column[column.length - 1].end);\n lastEnd.setHours(23, 59, 59, 999);\n const nextStart = new Date(events[i].start);\n nextStart.setHours(0, 0, 0, 0);\n if (nextStart.valueOf() > lastEnd.valueOf()) {\n column.push(events[i]);\n }\n }\n }\n this.columns.push(column);\n events = events.filter(e => !column.find(ce => ce.gid === e.gid));\n }\n\n for (let i = 0; i < this.columns.length - 1; i++) {\n this.columns[i].forEach(event => {\n for (let j = i + 1; j < this.columns.length; j++) {\n if (this.columns[j].find(colEvent => event.isOverlapping(colEvent))) {\n break;\n }\n event.width++;\n }\n });\n }\n }\n}\n"],"names":[],"mappings":";;;;AAEM,MAAO,WAAY,SAAQ,aAAa,CAAA;AAG5C,IAAA,WAAA,CAAY,KAAoB,EAAA;QAC9B,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;QAHrE,IAAA,CAAA,KAAK,GAAW,CAAC;IAIjB;AACD;MAEY,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACE,QAAA,oBAAA,CAAA,GAAA,CAAA,IAAA,EAAyB,EAAE,CAAA;QAC3B,IAAA,CAAA,OAAO,GAAoB,EAAE;IAgD/B;AA9CE,IAAA,SAAS,CAAC,MAAuB,EAAA;AAC/B,QAAA,MAAM,CAAC,OAAO,CAAC,KAAK,IAAG;YACrB,sBAAA,CAAA,IAAI,EAAA,oBAAA,EAAA,GAAA,CAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,QAAA,CAAC,CAAC;IACJ;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AACjB,QAAA,IAAI,MAAM,GAAG,sBAAA,CAAA,IAAI,EAAA,oBAAA,EAAA,GAAA,CAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;YACtC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE;AACzE,QAAA,CAAC,CAAC;QAEF,IAAI,SAAS,GAAkB,IAAI;;AAEnC,QAAA,OAAO,MAAM,CAAC,MAAM,EAAE;AACpB,YAAA,IAAI,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE;AAC/B,gBAAA,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D;YACH;AACA,YAAA,SAAS,GAAG,MAAM,CAAC,MAAM;YAEzB,MAAM,MAAM,GAAkB,EAAE;AAChC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACtC,gBAAA,IAAI,CAAC,KAAK,CAAC,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB;qBAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE;oBAC/E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB;YACF;AACA,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACzB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;QACnE;;AAGA,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;AAC9B,gBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAChD,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE;wBACnE;oBACF;oBACA,KAAK,CAAC,KAAK,EAAE;gBACf;AACF,YAAA,CAAC,CAAC;QACJ;IACF;AACD;;MAEY,iBAAiB,CAAA;AAA9B,IAAA,WAAA,GAAA;AACE,QAAA,yBAAA,CAAA,GAAA,CAAA,IAAA,EAAyB,EAAE,CAAA;QAC3B,IAAA,CAAA,OAAO,GAAoB,EAAE;IAoD/B;AAlDE,IAAA,SAAS,CAAC,MAAuB,EAAA;AAC/B,QAAA,MAAM,CAAC,OAAO,CAAC,KAAK,IAAG;YACrB,sBAAA,CAAA,IAAI,EAAA,yBAAA,EAAA,GAAA,CAAQ,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,QAAA,CAAC,CAAC;IACJ;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AACjB,QAAA,IAAI,MAAM,GAAG,sBAAA,CAAA,IAAI,EAAA,yBAAA,EAAA,GAAA,CAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;YACtC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE;AACzE,QAAA,CAAC,CAAC;QAEF,IAAI,SAAS,GAAkB,IAAI;AACnC,QAAA,OAAO,MAAM,CAAC,MAAM,EAAE;AACpB,YAAA,IAAI,SAAS,KAAK,MAAM,CAAC,MAAM,EAAE;AAC/B,gBAAA,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D;YACH;AACA,YAAA,SAAS,GAAG,MAAM,CAAC,MAAM;YAEzB,MAAM,MAAM,GAAkB,EAAE;AAChC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACtC,gBAAA,IAAI,CAAC,KAAK,CAAC,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB;qBAAO;AACL,oBAAA,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;oBACvD,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;AACjC,oBAAA,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC3C,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9B,IAAI,SAAS,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE;wBAC3C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACxB;gBACF;YACF;AACA,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACzB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;QACnE;AAEA,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;AAC9B,gBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAChD,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE;wBACnE;oBACF;oBACA,KAAK,CAAC,KAAK,EAAE;gBACf;AACF,YAAA,CAAC,CAAC;QACJ;IACF;AACD;;;;;"}
package/dist/fab.js CHANGED
@@ -2,7 +2,7 @@ import { a as i, _ as __decorate, I as IndividualComponent, A, c as __classPriva
2
2
  import { n } from './property-1psGvXOq.js';
3
3
  import { r } from './state-DwbEjqVk.js';
4
4
  import { e } from './class-map-YU7g0o3B.js';
5
- import { B as BaseButton, o, s as spread } from './BaseButton-DuASuVth.js';
5
+ import { B as BaseButton, o, s as spread } from './BaseButton-BNFAYn-S.js';
6
6
  import { i as isActivationClick, d as dispatchActivationClick } from './dispatch-event-utils-CuEqjlPT.js';
7
7
  import { t as throttle } from './BaseHyperlinkMixin-BNuwbiEf.js';
8
8
  import './directive-ZPhl09Yt.js';