@odx/foundation 1.0.0-beta.9 → 1.0.0-beta.91

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 (235) hide show
  1. package/README.md +7 -8
  2. package/dist/_virtual_class-decorator-runtime.js +13 -0
  3. package/dist/components/accordion/accordion.d.ts +11 -1
  4. package/dist/components/accordion-item/accordion-item.d.ts +16 -0
  5. package/dist/components/action-button/action-button.d.ts +27 -0
  6. package/dist/components/anchor-navigation/anchor-navigation.d.ts +3 -3
  7. package/dist/components/area-header/area-header.d.ts +11 -4
  8. package/dist/components/avatar/avatar.d.ts +28 -6
  9. package/dist/components/avatar-group/avatar-group.d.ts +3 -3
  10. package/dist/components/badge/badge.d.ts +14 -5
  11. package/dist/components/breadcrumbs/breadcrumbs-item.d.ts +1 -1
  12. package/dist/components/breadcrumbs/breadcrumbs.d.ts +1 -2
  13. package/dist/components/breadcrumbs/index.d.ts +1 -1
  14. package/dist/components/button/button.d.ts +31 -20
  15. package/dist/components/button-group/button-group.d.ts +7 -0
  16. package/dist/components/card/card.d.ts +3 -1
  17. package/dist/components/checkbox/checkbox.d.ts +2 -2
  18. package/dist/components/checkbox-group/checkbox-group.d.ts +8 -3
  19. package/dist/components/chip/chip.d.ts +14 -5
  20. package/dist/components/circular-progress-bar/circular-progress-bar.d.ts +12 -5
  21. package/dist/components/combobox/autocomplete.d.ts +23 -0
  22. package/dist/components/dropdown/dropdown.d.ts +10 -9
  23. package/dist/components/format/format-bytes.d.ts +1 -1
  24. package/dist/components/format/format-number.d.ts +1 -1
  25. package/dist/components/format/relative-time.d.ts +2 -2
  26. package/dist/components/header/index.d.ts +1 -1
  27. package/dist/components/headline/headline.d.ts +14 -5
  28. package/dist/components/highlight/highlight.d.ts +14 -5
  29. package/dist/components/icon-button/icon-button.d.ts +4 -15
  30. package/dist/components/image/image.d.ts +4 -4
  31. package/dist/components/inline-message/inline-message.d.ts +15 -5
  32. package/dist/components/input/input.d.ts +15 -8
  33. package/dist/components/kpi/kpi.d.ts +36 -0
  34. package/dist/components/line-clamp/line-clamp.d.ts +2 -2
  35. package/dist/components/link/link.d.ts +3 -3
  36. package/dist/components/list/list.d.ts +3 -0
  37. package/dist/components/{list → list-item}/list-item.d.ts +7 -6
  38. package/dist/components/loader.d.ts +2 -0
  39. package/dist/components/loading-overlay/loading-overlay.d.ts +2 -3
  40. package/dist/components/loading-spinner/loading-spinner.d.ts +1 -2
  41. package/dist/components/logo/logo.d.ts +11 -3
  42. package/dist/components/main-menu/index.d.ts +1 -1
  43. package/dist/components/main-menu/main-menu-link.d.ts +2 -2
  44. package/dist/components/main-menu/main-menu.d.ts +0 -1
  45. package/dist/components/main.d.ts +62 -54
  46. package/dist/components/menu/index.d.ts +1 -1
  47. package/dist/components/menu/menu.d.ts +4 -7
  48. package/dist/components/menu-item/menu-item.d.ts +5 -6
  49. package/dist/components/modal/modal.d.ts +8 -6
  50. package/dist/components/navigation-item/navigation-item.d.ts +15 -7
  51. package/dist/components/option/option.d.ts +0 -1
  52. package/dist/components/page/page.d.ts +16 -6
  53. package/dist/components/popover/popover-host.d.ts +34 -0
  54. package/dist/components/popover/popover-observer.d.ts +11 -0
  55. package/dist/{cdk → components}/popover/popover.d.ts +1 -0
  56. package/dist/components/progress-bar/progress-bar.d.ts +12 -6
  57. package/dist/components/radio-group/radio-group.d.ts +8 -3
  58. package/dist/components/search-bar/index.d.ts +0 -1
  59. package/dist/components/search-bar/search-bar.d.ts +9 -3
  60. package/dist/components/select/select.d.ts +13 -7
  61. package/dist/components/separator/separator.d.ts +9 -4
  62. package/dist/components/skeleton/skeleton.d.ts +21 -6
  63. package/dist/components/slider/index.d.ts +2 -2
  64. package/dist/components/slider/slider-handle.d.ts +5 -6
  65. package/dist/components/slider/slider-marks.d.ts +1 -1
  66. package/dist/components/slider/slider.d.ts +2 -3
  67. package/dist/components/slider/slider.models.d.ts +3 -2
  68. package/dist/components/spinbox/spinbox.d.ts +13 -11
  69. package/dist/components/stack/stack.d.ts +26 -6
  70. package/dist/components/status/status.d.ts +23 -0
  71. package/dist/components/table/index.d.ts +3 -3
  72. package/dist/components/table/table-header.d.ts +1 -1
  73. package/dist/components/table/table-row.d.ts +1 -1
  74. package/dist/components/text/text.d.ts +23 -4
  75. package/dist/components/title/title.d.ts +14 -5
  76. package/dist/components/toast/toast.d.ts +14 -3
  77. package/dist/components/toggle-button/toggle-button.d.ts +1 -4
  78. package/dist/components/toggle-button-group/toggle-button-group.d.ts +10 -0
  79. package/dist/components/toggle-content/toggle-content.d.ts +2 -2
  80. package/dist/components/tooltip/tooltip.d.ts +24 -8
  81. package/dist/components.js +2895 -3612
  82. package/dist/i18n/{lib/is-localized.d.ts → is-localized.d.ts} +2 -2
  83. package/dist/i18n/{lib/localization.d.ts → localization.d.ts} +1 -1
  84. package/dist/i18n/main.d.ts +6 -6
  85. package/dist/i18n/{lib/translate.d.ts → translate.d.ts} +1 -1
  86. package/dist/i18n.js +11 -18
  87. package/dist/lib/{facade → control}/checkbox-form-control.d.ts +4 -4
  88. package/dist/lib/control/checkbox-group-form-control.d.ts +22 -0
  89. package/dist/lib/control/form-control.d.ts +29 -0
  90. package/dist/lib/control/listbox-form-control.d.ts +25 -0
  91. package/dist/lib/control/number-form-control.d.ts +12 -0
  92. package/dist/lib/control/option-control.d.ts +24 -0
  93. package/dist/lib/control/radio-group-form-control.d.ts +22 -0
  94. package/dist/lib/controllers/active-descendants-controller.d.ts +29 -0
  95. package/dist/{cdk/drag-drop → lib/controllers}/drag.controller.d.ts +2 -1
  96. package/dist/lib/controllers/expandable-controller.d.ts +1 -2
  97. package/dist/lib/custom-element.d.ts +12 -5
  98. package/dist/lib/interactive/interactive-element.d.ts +23 -0
  99. package/dist/lib/interactive/interactive-link.d.ts +21 -0
  100. package/dist/lib/main.d.ts +20 -25
  101. package/dist/lib/mixins/can-be-disabled.d.ts +1 -9
  102. package/dist/lib/mixins/can-be-expanded.d.ts +5 -7
  103. package/dist/lib/mixins/is-draggable.d.ts +16 -0
  104. package/dist/{cdk/drag-drop/drag-events.d.ts → lib/models/drag-event.d.ts} +1 -1
  105. package/dist/lib/models/placement.d.ts +17 -0
  106. package/dist/lib/models/shape.d.ts +7 -0
  107. package/dist/lib/models/size.d.ts +11 -0
  108. package/dist/lib/models/variant.d.ts +12 -0
  109. package/dist/lib/utils/compute-popover-placement.d.ts +14 -0
  110. package/dist/lib/utils/dom.d.ts +25 -15
  111. package/dist/lib/utils/get-unique-id.d.ts +6 -23
  112. package/dist/lib/utils/lit.d.ts +1 -3
  113. package/dist/lib/utils/shared-resize-observer.d.ts +0 -7
  114. package/dist/lib/utils/{a11y.d.ts → types.d.ts} +3 -6
  115. package/dist/loader.js +6 -11
  116. package/dist/main.js +906 -867
  117. package/dist/styles.css +1 -1
  118. package/dist/vendor.js +1982 -0
  119. package/package.json +47 -27
  120. package/dist/cdk/drag-drop/is-draggable.d.ts +0 -18
  121. package/dist/cdk/main.d.ts +0 -7
  122. package/dist/cdk/popover/popover-host.d.ts +0 -20
  123. package/dist/cdk/popover/popover.models.d.ts +0 -34
  124. package/dist/cdk/popover/popover.utils.d.ts +0 -5
  125. package/dist/cdk.js +0 -357
  126. package/dist/components/accordion/accordion-header.d.ts +0 -18
  127. package/dist/components/accordion/index.d.ts +0 -4
  128. package/dist/components/action-group/action-group.d.ts +0 -24
  129. package/dist/components/action-group/index.d.ts +0 -2
  130. package/dist/components/area-header/area-header.models.d.ts +0 -12
  131. package/dist/components/area-header/index.d.ts +0 -3
  132. package/dist/components/avatar/avatar.models.d.ts +0 -13
  133. package/dist/components/avatar/index.d.ts +0 -3
  134. package/dist/components/avatar-group/index.d.ts +0 -2
  135. package/dist/components/badge/badge.models.d.ts +0 -14
  136. package/dist/components/badge/index.d.ts +0 -3
  137. package/dist/components/button/base-button.d.ts +0 -30
  138. package/dist/components/button/button.models.d.ts +0 -26
  139. package/dist/components/button/index.d.ts +0 -4
  140. package/dist/components/button-group/index.d.ts +0 -2
  141. package/dist/components/card/index.d.ts +0 -2
  142. package/dist/components/checkbox/index.d.ts +0 -2
  143. package/dist/components/checkbox-group/checkbox-group.models.d.ts +0 -6
  144. package/dist/components/checkbox-group/index.d.ts +0 -3
  145. package/dist/components/chip/chip.models.d.ts +0 -10
  146. package/dist/components/chip/index.d.ts +0 -3
  147. package/dist/components/circular-progress-bar/circular-progress-bar.models.d.ts +0 -7
  148. package/dist/components/circular-progress-bar/index.d.ts +0 -3
  149. package/dist/components/content-box/content-box.models.d.ts +0 -2
  150. package/dist/components/content-box/index.d.ts +0 -2
  151. package/dist/components/dropdown/dropdown.models.d.ts +0 -6
  152. package/dist/components/dropdown/index.d.ts +0 -3
  153. package/dist/components/form-field/index.d.ts +0 -2
  154. package/dist/components/headline/headline.models.d.ts +0 -8
  155. package/dist/components/headline/index.d.ts +0 -3
  156. package/dist/components/highlight/index.d.ts +0 -2
  157. package/dist/components/icon-button/index.d.ts +0 -2
  158. package/dist/components/image/index.d.ts +0 -2
  159. package/dist/components/inline-message/index.d.ts +0 -3
  160. package/dist/components/inline-message/inline-message.models.d.ts +0 -12
  161. package/dist/components/input/index.d.ts +0 -3
  162. package/dist/components/input/input.models.d.ts +0 -7
  163. package/dist/components/line-clamp/index.d.ts +0 -2
  164. package/dist/components/link/base-link.d.ts +0 -15
  165. package/dist/components/link/index.d.ts +0 -3
  166. package/dist/components/list/index.d.ts +0 -3
  167. package/dist/components/loading-overlay/index.d.ts +0 -2
  168. package/dist/components/loading-spinner/index.d.ts +0 -2
  169. package/dist/components/logo/index.d.ts +0 -3
  170. package/dist/components/logo/logo.models.d.ts +0 -9
  171. package/dist/components/menu-item/index.d.ts +0 -2
  172. package/dist/components/modal/index.d.ts +0 -3
  173. package/dist/components/modal/modal.models.d.ts +0 -5
  174. package/dist/components/navigation-item/index.d.ts +0 -3
  175. package/dist/components/navigation-item/navigation-item.models.d.ts +0 -6
  176. package/dist/components/option/index.d.ts +0 -2
  177. package/dist/components/page/index.d.ts +0 -3
  178. package/dist/components/page/page.models.d.ts +0 -10
  179. package/dist/components/page-layout/index.d.ts +0 -2
  180. package/dist/components/pagination/index.d.ts +0 -2
  181. package/dist/components/progress-bar/index.d.ts +0 -3
  182. package/dist/components/progress-bar/progress-bar.models.d.ts +0 -7
  183. package/dist/components/radio-button/index.d.ts +0 -2
  184. package/dist/components/radio-group/index.d.ts +0 -3
  185. package/dist/components/radio-group/radio-group.models.d.ts +0 -6
  186. package/dist/components/rail-navigation/index.d.ts +0 -2
  187. package/dist/components/search-bar/search-bar.models.d.ts +0 -6
  188. package/dist/components/select/index.d.ts +0 -2
  189. package/dist/components/separator/index.d.ts +0 -3
  190. package/dist/components/separator/separator.models.d.ts +0 -6
  191. package/dist/components/skeleton/index.d.ts +0 -3
  192. package/dist/components/skeleton/skeleton.models.d.ts +0 -13
  193. package/dist/components/spacer/index.d.ts +0 -2
  194. package/dist/components/spacer/spacer.models.d.ts +0 -7
  195. package/dist/components/spinbox/index.d.ts +0 -2
  196. package/dist/components/stack/index.d.ts +0 -3
  197. package/dist/components/stack/stack.models.d.ts +0 -25
  198. package/dist/components/switch/index.d.ts +0 -2
  199. package/dist/components/text/index.d.ts +0 -3
  200. package/dist/components/text/text.models.d.ts +0 -14
  201. package/dist/components/title/index.d.ts +0 -3
  202. package/dist/components/title/title.models.d.ts +0 -10
  203. package/dist/components/toast/index.d.ts +0 -3
  204. package/dist/components/toast/toast.models.d.ts +0 -5
  205. package/dist/components/toggle-button/index.d.ts +0 -2
  206. package/dist/components/toggle-content/index.d.ts +0 -2
  207. package/dist/components/tooltip/index.d.ts +0 -3
  208. package/dist/components/tooltip/tooltip.models.d.ts +0 -8
  209. package/dist/components/translate/index.d.ts +0 -2
  210. package/dist/components/visually-hidden/index.d.ts +0 -2
  211. package/dist/lib/controllers/focus-trap.controller.d.ts +0 -14
  212. package/dist/lib/facade/checkbox-group-form-control.d.ts +0 -21
  213. package/dist/lib/facade/option-control.d.ts +0 -16
  214. package/dist/lib/facade/radio-group-form-control.d.ts +0 -22
  215. package/dist/lib/facade/select-form-control.d.ts +0 -19
  216. package/dist/lib/mixins/can-be-readonly.d.ts +0 -7
  217. package/dist/lib/mixins/can-be-required.d.ts +0 -7
  218. package/dist/lib/mixins/can-be-selected.d.ts +0 -9
  219. package/dist/lib/mixins/can-be-validated.d.ts +0 -12
  220. package/dist/lib/mixins/form-control.d.ts +0 -17
  221. package/dist/lib/mixins/number-control.d.ts +0 -12
  222. package/dist/lib/mixins/with-loading-state.d.ts +0 -8
  223. package/dist/lib/utils/date.d.ts +0 -2
  224. package/dist/lib/utils/dedupe-mixin.d.ts +0 -3
  225. package/dist/lib/utils/empty-slot-fallback-fix.d.ts +0 -8
  226. package/dist/lib/utils/keyboard-events.d.ts +0 -43
  227. package/dist/lib/utils/search-text-content.d.ts +0 -7
  228. package/dist/lib/utils/shared-intersection-observer.d.ts +0 -18
  229. package/dist/lib/utils/transformers.d.ts +0 -5
  230. package/dist/loader/main.d.ts +0 -2
  231. package/dist/vendor-dJxQG085.js +0 -138
  232. /package/dist/components/{accordion → accordion-panel}/accordion-panel.d.ts +0 -0
  233. /package/dist/i18n/{lib/config.d.ts → config.d.ts} +0 -0
  234. /package/dist/i18n/{lib/format.d.ts → format.d.ts} +0 -0
  235. /package/dist/i18n/{lib/models.d.ts → models.d.ts} +0 -0
package/package.json CHANGED
@@ -1,63 +1,83 @@
1
1
  {
2
2
  "name": "@odx/foundation",
3
3
  "description": "A library of Web Component building blocks for ODX",
4
- "version": "1.0.0-beta.9",
4
+ "version": "1.0.0-beta.91",
5
5
  "author": "Drägerwerk AG & Co.KGaA",
6
6
  "license": "SEE LICENSE IN LICENSE",
7
7
  "homepage": "https://odx.draeger.com",
8
- "files": ["dist", "LICENSE", "!assets", "!dist/**/*.map", "!dist/**/*.stories.d.ts"],
8
+ "files": [
9
+ "dist",
10
+ "LICENSE",
11
+ "!assets",
12
+ "!dist/**/*.map",
13
+ "!dist/**/*.stories.d.ts",
14
+ "custom-elements.json"
15
+ ],
9
16
  "type": "module",
10
- "scripts": {
11
- "build": "vite build",
12
- "dev": "vite build --watch --mode=development",
13
- "lint": "biome lint ."
14
- },
15
17
  "dependencies": {
16
- "@floating-ui/dom": "~1.6.13",
17
- "@lit/context": "~1.1.4",
18
- "@lit-labs/preact-signals": "~1.0.3",
19
- "@odx/design-tokens": "^1.0.0-alpha.8",
20
- "focus-trap": "~7.6.4",
21
- "lit": "~3.2.1"
18
+ "@preact/signals-core": "1.8.0",
19
+ "lit": "3.3.0"
22
20
  },
23
21
  "peerDependencies": {
24
- "@odx/icons": "^4.0.0-rc.15"
22
+ "@odx/design-tokens": "^1.0.2",
23
+ "@odx/icons": "^4.0.0-rc.29"
25
24
  },
26
25
  "devDependencies": {
27
- "@odx/typescript-config": "*",
28
- "@spectrum-web-components/reactive-controllers": "1.4.0",
29
- "es-toolkit": "1.34.1",
26
+ "@custom-elements-manifest/analyzer": "0.10.4",
27
+ "@floating-ui/dom": "1.7.0",
28
+ "@lit-labs/preact-signals": "1.0.3",
29
+ "@lit/context": "1.1.5",
30
+ "@odx/icons": "4.0.0-rc.29",
31
+ "@spectrum-web-components/reactive-controllers": "1.6.0",
32
+ "@wc-toolkit/cem-inheritance": "1.0.4",
33
+ "@wc-toolkit/cem-validator": "1.0.3",
34
+ "@wc-toolkit/module-path-resolver": "1.0.0",
35
+ "@wc-toolkit/type-parser": "1.0.3",
36
+ "es-toolkit": "1.37.2",
37
+ "stylelint": "16.19.1",
38
+ "stylelint-config-concentric-order": "5.2.1",
39
+ "stylelint-config-standard": "38.0.0",
30
40
  "ts-lit-plugin": "2.0.2",
31
- "vite": "6.2.3",
32
- "vite-plugin-checker": "0.9.1",
33
- "vite-plugin-dts": "4.5.3"
41
+ "vite": "6.3.5",
42
+ "vite-plugin-dts": "4.5.4",
43
+ "@odx/storybook-utils": "0.0.0",
44
+ "@odx/typescript-config": "0.0.0"
34
45
  },
35
- "sideEffects": ["dist/loader.js", "*.css"],
46
+ "sideEffects": [
47
+ "dist/i18n.js",
48
+ "dist/loader.js",
49
+ "dist/styles.css"
50
+ ],
36
51
  "exports": {
37
52
  ".": {
38
53
  "import": "./dist/main.js",
39
54
  "types": "./dist/lib/main.d.ts"
40
55
  },
41
- "./cdk": {
42
- "import": "./dist/cdk.js",
43
- "types": "./dist/cdk/main.d.ts"
44
- },
45
56
  "./components": {
46
57
  "import": "./dist/components.js",
47
58
  "types": "./dist/components/main.d.ts"
48
59
  },
60
+ "./components/*": null,
49
61
  "./i18n": {
50
62
  "import": "./dist/i18n.js",
51
63
  "types": "./dist/i18n/main.d.ts"
52
64
  },
65
+ "./i18n/*": null,
53
66
  "./loader": {
54
67
  "import": "./dist/loader.js",
55
- "types": "./dist/loader/main.d.ts"
68
+ "types": "./dist/components/loader.d.ts"
56
69
  },
57
70
  "./styles": "./dist/styles.css"
58
71
  },
59
72
  "publishConfig": {
60
73
  "access": "public",
61
74
  "tag": "latest"
75
+ },
76
+ "scripts": {
77
+ "build": "vite build",
78
+ "dev:tsc": "tsc --build --noEmit --watch",
79
+ "dev": "vite build --watch --mode=development",
80
+ "lint": "biome lint lib i18n styles components",
81
+ "generate:manifest": "cem analyze"
62
82
  }
63
- }
83
+ }
@@ -1,18 +0,0 @@
1
- import { Constructor } from '../../lib/main.js';
2
- import { LitElement } from 'lit';
3
- import { DragEvent, Position } from './drag-events.js';
4
- export declare const IS_DRAG_ACTIVE_ATTRIBUTE = "odx-drag-active";
5
- export declare class CanBeDragged {
6
- dragDisabled: boolean;
7
- get isDragActive(): boolean;
8
- beforeDragStart?(event: DragEvent): void;
9
- dragStart?(event: DragEvent): void;
10
- dragMove?(event: DragEvent): void;
11
- dragEnd?(event: DragEvent): void;
12
- afterDragEnd?(event: DragEvent): void;
13
- getDistance?(container: HTMLElement, position: Position): number;
14
- }
15
- export type DraggableElement = CanBeDragged & HTMLElement;
16
- export declare function isDraggableElement(element: unknown): element is DraggableElement;
17
- export declare const IsDraggable: <T extends Constructor<LitElement>>(superClass: T) => Constructor<DraggableElement> & T;
18
- //# sourceMappingURL=is-draggable.d.ts.map
@@ -1,7 +0,0 @@
1
- export * from './drag-drop/drag-events.js';
2
- export * from './drag-drop/drag.controller.js';
3
- export * from './drag-drop/is-draggable.js';
4
- export * from './popover/popover-host.js';
5
- export * from './popover/popover.js';
6
- export * from './popover/popover.models.js';
7
- //# sourceMappingURL=main.d.ts.map
@@ -1,20 +0,0 @@
1
- import { Constructor, CustomElement } from '../../lib/main.js';
2
- import { PopoverPlacement, PopoverPlacementOptions } from './popover.models.js';
3
- export interface PopoverHost {
4
- referenceElement: HTMLElement | null;
5
- anchor: string;
6
- placement?: PopoverPlacement;
7
- get options(): PopoverPlacementOptions;
8
- isPopoverOpen(): boolean;
9
- mountPopover(referenceElement?: HTMLElement | null): void;
10
- unmountPopover(referenceElement: HTMLElement): void;
11
- togglePopover(): boolean;
12
- onBeforePopoverShow?(): void;
13
- onPopoverShow?(): void;
14
- onBeforePopoverHide?(): void;
15
- onPopoverHide?(): void;
16
- }
17
- export type PopoverHostElement = PopoverHost & CustomElement;
18
- export declare const PopoverHostStyles: string;
19
- export declare const PopoverHost: <T extends Constructor<CustomElement>>(superClass: T) => Constructor<PopoverHost> & T;
20
- //# sourceMappingURL=popover-host.d.ts.map
@@ -1,34 +0,0 @@
1
- export type PopoverPlacement = (typeof PopoverPlacement)[keyof typeof PopoverPlacement];
2
- export declare const PopoverPlacement: {
3
- readonly TOP: "top";
4
- readonly TOP_START: "top-start";
5
- readonly TOP_END: "top-end";
6
- readonly RIGHT: "right";
7
- readonly RIGHT_START: "right-start";
8
- readonly RIGHT_END: "right-end";
9
- readonly BOTTOM: "bottom";
10
- readonly BOTTOM_START: "bottom-start";
11
- readonly BOTTOM_END: "bottom-end";
12
- readonly LEFT: "left";
13
- readonly LEFT_START: "left-start";
14
- readonly LEFT_END: "left-end";
15
- };
16
- export interface PopoverPlacementOptions {
17
- placement: PopoverPlacement;
18
- arrowElement?: HTMLElement | null;
19
- enableFallback: boolean;
20
- fallbackAxisSideDirection: 'start' | 'end';
21
- matchReferenceWidth: boolean;
22
- minHeight?: number | null;
23
- offset: number;
24
- outerPadding: number;
25
- }
26
- export declare function PopoverPlacementOptions(options?: Partial<PopoverPlacementOptions>): PopoverPlacementOptions;
27
- export type PopoverSide = (typeof PopoverSide)[keyof typeof PopoverSide];
28
- export declare const PopoverSide: {
29
- readonly TOP: "top";
30
- readonly RIGHT: "right";
31
- readonly BOTTOM: "bottom";
32
- readonly LEFT: "left";
33
- };
34
- //# sourceMappingURL=popover.models.d.ts.map
@@ -1,5 +0,0 @@
1
- import { FloatingElement, ReferenceElement } from '@floating-ui/dom';
2
- import { PopoverPlacement, PopoverPlacementOptions, PopoverSide } from './popover.models.js';
3
- export declare function getPopoverSide(placement: PopoverPlacement): PopoverSide;
4
- export declare function computePopoverPlacement(referenceElement: ReferenceElement, floatingElement: FloatingElement, options: PopoverPlacementOptions): Promise<void>;
5
- //# sourceMappingURL=popover.utils.d.ts.map
package/dist/cdk.js DELETED
@@ -1,357 +0,0 @@
1
- import { dedupeMixin, toPx, waitForAnimations, findClosestDocument, createMutationObserver, customElement, CustomElement } from '@odx/foundation';
2
- import { property, state } from 'lit/decorators.js';
3
- import { m as minBy } from './vendor-dJxQG085.js';
4
- import { arrow, flip, computePosition, offset, shift, size, hide, autoUpdate } from '@floating-ui/dom';
5
- import { isServer, html } from 'lit';
6
- import { when } from 'lit/directives/when.js';
7
-
8
- var __defProp$2 = Object.defineProperty;
9
- var __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor;
10
- var __decorateClass$2 = (decorators, target, key, kind) => {
11
- var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target;
12
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
13
- if (decorator = decorators[i])
14
- result = (kind ? decorator(target, key, result) : decorator(result)) || result;
15
- if (kind && result) __defProp$2(target, key, result);
16
- return result;
17
- };
18
- const IS_DRAG_ACTIVE_ATTRIBUTE = "odx-drag-active";
19
- function isDraggableElement(element) {
20
- if (element instanceof HTMLElement) {
21
- return "isDragActive" in element;
22
- }
23
- return false;
24
- }
25
- const IsDraggable = dedupeMixin((superClass) => {
26
- class IsDraggableElement extends superClass {
27
- constructor() {
28
- super(...arguments);
29
- this.dragDisabled = false;
30
- }
31
- get isDragActive() {
32
- return this.hasAttribute(IS_DRAG_ACTIVE_ATTRIBUTE);
33
- }
34
- dragStart() {
35
- this.toggleAttribute(IS_DRAG_ACTIVE_ATTRIBUTE, true);
36
- }
37
- afterDragEnd() {
38
- this.toggleAttribute(IS_DRAG_ACTIVE_ATTRIBUTE, false);
39
- }
40
- }
41
- __decorateClass$2([
42
- property({ type: Boolean })
43
- ], IsDraggableElement.prototype, "dragDisabled", 2);
44
- return IsDraggableElement;
45
- });
46
-
47
- const DragControllerOptions = (config) => ({
48
- getDraggableElements: () => [],
49
- ...config
50
- });
51
- class DragController {
52
- #host;
53
- #options;
54
- #dragTargets = /* @__PURE__ */ new WeakSet();
55
- #listeners = /* @__PURE__ */ new Map();
56
- get draggableElements() {
57
- return this.#options.getDraggableElements().filter((element) => !element.dragDisabled);
58
- }
59
- get container() {
60
- return this.#options.getContainer?.() ?? this.#host;
61
- }
62
- constructor(host, options) {
63
- this.#host = host;
64
- this.#options = DragControllerOptions(options);
65
- this.#host.addController(this);
66
- }
67
- hostConnected() {
68
- this.#host.style.touchAction = "none";
69
- }
70
- hostDisconnected() {
71
- this.#host.style.touchAction = "";
72
- for (const removeListener of this.#listeners.values()) {
73
- removeListener();
74
- }
75
- }
76
- hostUpdated() {
77
- this.#dragTargets = new WeakSet(this.draggableElements);
78
- this.#host.removeEventListener("pointerdown", this.#handleDragStart);
79
- this.#host.addEventListener("pointerdown", this.#handleDragStart);
80
- }
81
- isDraggable(element) {
82
- return isDraggableElement(element) && this.#dragTargets.has(element);
83
- }
84
- #handleDragStart = async (event) => {
85
- event.preventDefault();
86
- event.stopPropagation();
87
- const target = this.#getDragTarget(event);
88
- if (!target) return;
89
- const onPointerMove = (event2) => this.#handleDragMove(event2, target);
90
- const onPointerUp = (event2) => this.#handleDragEnd(event2, target);
91
- target.beforeDragStart?.({ event, position: this.#calculatePosition(event) });
92
- this.#host.setPointerCapture(event.pointerId);
93
- this.#host.addEventListener("pointermove", onPointerMove);
94
- this.#host.addEventListener("pointerup", onPointerUp, { once: true });
95
- this.#listeners.set(target, () => {
96
- this.#host.removeEventListener("pointermove", onPointerMove);
97
- this.#host.removeEventListener("pointerup", onPointerUp);
98
- });
99
- await 0;
100
- target.dragStart?.({ event, position: this.#calculatePosition(event) });
101
- };
102
- #handleDragMove = (event, target) => {
103
- event.preventDefault();
104
- event.stopPropagation();
105
- target.dragMove?.({ event, position: this.#calculatePosition(event) });
106
- };
107
- #handleDragEnd = async (event, target) => {
108
- event.preventDefault();
109
- event.stopPropagation();
110
- target.dragEnd?.({ event, position: this.#calculatePosition(event) });
111
- this.#host.releasePointerCapture(event.pointerId);
112
- this.#listeners.get(target)?.();
113
- this.#listeners.delete(target);
114
- this.#host.requestUpdate();
115
- await this.#host.updateComplete;
116
- target.afterDragEnd?.({ event, position: this.#calculatePosition(event) });
117
- };
118
- #calculatePosition(event) {
119
- const { left, top, width } = this.container.getBoundingClientRect();
120
- return { x: (event.clientX - left) / width * 100, y: (event.clientY - top) / width * 100 };
121
- }
122
- #getDragTarget(event) {
123
- if (event.target === this.#host) {
124
- return minBy(this.draggableElements, (element) => element.getDistance?.(this.container, event) ?? Number.MAX_SAFE_INTEGER) ?? null;
125
- }
126
- return null;
127
- }
128
- }
129
-
130
- const styles$1 = "@layer base{:host{--max-block-size: 100%;--max-inline-size: 100%;--_popover-color-background: var(--odx-color-transparent);--_popover-color-foreground: var(--odx-color-foreground-base);--_popover-min-block-size: inherit;--_popover-max-block-size: 100%;--_popover-min-inline-size: inherit;--_popover-max-inline-size: 100%;--_popover-transition: var(--odx-popover-transition, var(--odx-motion-duration-default));--_popover-offset: var(--odx-size-50);--_popover-shadow: var(--odx-popover-shadow, var(--odx-shadow-level-1));--_popover-outer-padding: var(--odx-size-75);--_max-block-size: min(var(--_popover-max-block-size), var(--max-block-size));--_max-inline-size: min(var(--_popover-max-inline-size), var(--max-inline-size));background-color:transparent;opacity:0;transform:translate(var(--_popover-transition-offset-x),var(--_popover-transition-offset-y));transition:opacity var(--_popover-transition),transform var(--_popover-transition) allow-discrete,overlay var(--_popover-transition) allow-discrete,display var(--_popover-transition) allow-discrete;max-block-size:var(--_max-block-size);max-inline-size:var(--_max-inline-size);margin:0;top:var(--_popover-position-y);left:var(--_popover-position-x)}:host(:popover-open){display:flex;opacity:1;transform:translate(0);@starting-style{opacity:0;transform:translate(var(--_popover-transition-offset-x),var(--_popover-transition-offset-y))}}}@layer state{:host,:host([popover-placement^=\"top\"]){--_popover-transition-offset-x: 0;--_popover-transition-offset-y: calc(-1 * var(--_popover-offset));padding-block:var(--_popover-outer-padding) var(--_popover-offset);max-block-size:calc(var(--_max-block-size) - var(--_popover-outer-padding))}:host([popover-placement^=\"right\"]){--_popover-transition-offset-x: var(--_popover-offset);--_popover-transition-offset-y: 0;padding-inline:var(--_popover-offset) var(--_popover-outer-padding);max-inline-size:calc(var(--_max-inline-size) - var(--_popover-outer-padding))}:host([popover-placement^=\"bottom\"]){--_popover-transition-offset-x: 0;--_popover-transition-offset-y: var(--_popover-offset);padding-block:var(--_popover-offset) var(--_popover-outer-padding);max-block-size:calc(var(--_max-block-size) - var(--_popover-outer-padding))}:host([popover-placement^=\"left\"]){--_popover-transition-offset-x: calc(-1 * var(--_popover-offset));--_popover-transition-offset-y: 0;padding-inline:var(--_popover-outer-padding) var(--_popover-offset);max-inline-size:calc(var(--_max-inline-size) - var(--_popover-outer-padding))}}";
131
-
132
- const PopoverPlacement = {
133
- TOP: "top",
134
- TOP_START: "top-start",
135
- TOP_END: "top-end",
136
- RIGHT: "right",
137
- RIGHT_START: "right-start",
138
- RIGHT_END: "right-end",
139
- BOTTOM: "bottom",
140
- BOTTOM_START: "bottom-start",
141
- BOTTOM_END: "bottom-end",
142
- LEFT: "left",
143
- LEFT_START: "left-start",
144
- LEFT_END: "left-end"
145
- };
146
- function PopoverPlacementOptions(options) {
147
- return {
148
- placement: PopoverPlacement.BOTTOM,
149
- enableFallback: true,
150
- fallbackAxisSideDirection: "end",
151
- matchReferenceWidth: false,
152
- offset: 0,
153
- outerPadding: 24,
154
- ...options
155
- };
156
- }
157
- const PopoverSide = {
158
- TOP: PopoverPlacement.TOP,
159
- RIGHT: PopoverPlacement.RIGHT,
160
- BOTTOM: PopoverPlacement.BOTTOM,
161
- LEFT: PopoverPlacement.LEFT
162
- };
163
-
164
- function getPopoverSide(placement) {
165
- return placement.split("-")[0];
166
- }
167
- async function computePopoverPlacement(referenceElement, floatingElement, options) {
168
- const { arrowElement, placement, offset: offset$1, matchReferenceWidth, enableFallback, fallbackAxisSideDirection, minHeight, outerPadding } = options;
169
- const arrowSize = arrowElement?.offsetWidth ?? 0;
170
- const arrowMiddleware = arrowElement ? arrow({ element: arrowElement, padding: arrowSize * 3 }) : void 0;
171
- const flipMiddleWare = enableFallback ? flip({ fallbackAxisSideDirection }) : void 0;
172
- floatingElement.setAttribute("popover-placement", placement);
173
- const result = await computePosition(referenceElement, floatingElement, {
174
- strategy: "fixed",
175
- placement,
176
- middleware: [
177
- offset(offset$1 + arrowSize / 2),
178
- shift({ padding: 12 }),
179
- flipMiddleWare,
180
- size({
181
- apply: ({ availableHeight, availableWidth, rects, placement: currentPlacement }) => {
182
- floatingElement.style.setProperty("--_popover-min-inline-size", matchReferenceWidth ? toPx(rects.reference.width) : null);
183
- floatingElement.style.setProperty("--_popover-max-inline-size", toPx(availableWidth));
184
- floatingElement.style.setProperty("--_popover-min-block-size", minHeight ? toPx(Math.min(availableHeight, minHeight)) : null);
185
- floatingElement.style.setProperty("--_popover-max-block-size", toPx(availableHeight));
186
- floatingElement.setAttribute("popover-placement", currentPlacement);
187
- }
188
- }),
189
- arrowMiddleware,
190
- hide()
191
- ]
192
- });
193
- let arrowPositionX = null;
194
- let arrowPositionY = null;
195
- if (arrowElement && result.middlewareData.arrow) {
196
- const popoverSide = getPopoverSide(result.placement);
197
- const { arrow: arrow2 } = result.middlewareData;
198
- const arrowOffsetX = popoverSide === PopoverSide.LEFT ? floatingElement.offsetWidth - outerPadding - 0.5 * arrowSize : outerPadding - 0.5 * arrowSize;
199
- const arrowOffsetY = popoverSide === PopoverSide.TOP ? floatingElement.offsetHeight - outerPadding - 0.5 * arrowSize : outerPadding - 0.5 * arrowSize;
200
- arrowPositionX = arrow2.x ?? arrowOffsetX;
201
- arrowPositionY = arrow2.y ?? arrowOffsetY;
202
- }
203
- floatingElement.style.setProperty("--_popover-position-x", toPx(result.x));
204
- floatingElement.style.setProperty("--_popover-position-y", toPx(result.y));
205
- floatingElement.style.setProperty("--_popover-arrow-position-x", toPx(arrowPositionX));
206
- floatingElement.style.setProperty("--_popover-arrow-position-y", toPx(arrowPositionY));
207
- }
208
-
209
- var __defProp$1 = Object.defineProperty;
210
- var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
211
- var __decorateClass$1 = (decorators, target, key, kind) => {
212
- var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target;
213
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
214
- if (decorator = decorators[i])
215
- result = (kind ? decorator(target, key, result) : decorator(result)) || result;
216
- if (kind && result) __defProp$1(target, key, result);
217
- return result;
218
- };
219
- const PopoverHostStyles = styles$1;
220
- const PopoverHost = dedupeMixin((superClass) => {
221
- class PopoverHostClass extends superClass {
222
- // biome-ignore lint/suspicious/noExplicitAny: This is a mixin
223
- constructor(...args) {
224
- super(...args);
225
- this.isOpen = false;
226
- this.referenceElement = null;
227
- this.anchor = "";
228
- this.#handleToggle = async ({ newState }) => {
229
- this.isOpen = newState === "open";
230
- if (this.isOpen) {
231
- this.onBeforePopoverShow?.();
232
- await waitForAnimations(this);
233
- this.onPopoverShow?.();
234
- } else {
235
- this.onBeforePopoverHide?.();
236
- await waitForAnimations(this);
237
- this.onPopoverHide?.();
238
- }
239
- };
240
- if (!isServer) {
241
- this.addEventListener("toggle", this.#handleToggle);
242
- }
243
- }
244
- #observer;
245
- get options() {
246
- return PopoverPlacementOptions({ placement: this.placement ?? PopoverPlacement.BOTTOM });
247
- }
248
- connectedCallback() {
249
- super.connectedCallback();
250
- this.popover ??= "auto";
251
- this.#connectObserver();
252
- }
253
- disconnectedCallback() {
254
- super.disconnectedCallback();
255
- this.#disconnectObserver();
256
- }
257
- mountPopover(referenceElement) {
258
- if (this.referenceElement && this.referenceElement !== referenceElement) {
259
- this.unmountPopover(this.referenceElement);
260
- }
261
- if (!referenceElement) {
262
- this.referenceElement = null;
263
- return;
264
- }
265
- this.referenceElement = referenceElement;
266
- autoUpdate(
267
- this.referenceElement,
268
- this,
269
- () => (
270
- // biome-ignore lint/style/noNonNullAssertion: Reference element is defined when mounting popover
271
- computePopoverPlacement(this.referenceElement, this, this.options)
272
- )
273
- );
274
- }
275
- unmountPopover(referenceElement) {
276
- this.hidePopover();
277
- }
278
- isPopoverOpen() {
279
- return this.isOpen || this.matches(":popover-open");
280
- }
281
- togglePopover(force) {
282
- const isOpen = force ?? !this.isPopoverOpen();
283
- if (isOpen) {
284
- this.showPopover();
285
- } else {
286
- this.hidePopover();
287
- }
288
- return isOpen;
289
- }
290
- #findReferenceElement(anchor) {
291
- return findClosestDocument(this)?.getElementById(anchor);
292
- }
293
- #connectObserver() {
294
- this.#disconnectObserver();
295
- this.mountPopover(this.#findReferenceElement(this.anchor));
296
- this.#observer = createMutationObserver(() => {
297
- const referenceElement = this.anchor ? this.#findReferenceElement(this.anchor) : null;
298
- if (this.referenceElement === referenceElement) return;
299
- this.mountPopover(referenceElement);
300
- });
301
- this.#observer.observe(document.documentElement, { subtree: true, attributeFilter: ["id", "anchor"] });
302
- }
303
- #disconnectObserver() {
304
- this.#observer?.disconnect();
305
- this.#observer = void 0;
306
- }
307
- #handleToggle;
308
- }
309
- __decorateClass$1([
310
- state()
311
- ], PopoverHostClass.prototype, "isOpen", 2);
312
- __decorateClass$1([
313
- state()
314
- ], PopoverHostClass.prototype, "referenceElement", 2);
315
- __decorateClass$1([
316
- property({ reflect: true })
317
- ], PopoverHostClass.prototype, "anchor", 2);
318
- __decorateClass$1([
319
- property({ reflect: true })
320
- ], PopoverHostClass.prototype, "placement", 2);
321
- return PopoverHostClass;
322
- });
323
-
324
- const styles = ":host{--_arrow-size: var(--odx-size-50);--_outer-padding: var(--odx-size-75);--_border-radius: var(--odx-popover-border-radius, var(--odx-border-radius-controls));display:flex;background-color:transparent}:host::part(arrow),:host::part(content){background-color:var(--_popover-color-background)}:host::part(content){display:flex;flex-direction:column;position:relative;inset-block-start:0!important;inset-inline-start:0!important;block-size:fit-content;min-block-size:var(--_popover-min-block-size);max-block-size:100%;min-inline-size:var(--_popover-min-inline-size);max-inline-size:100%;box-shadow:var(--_popover-shadow);color:var(--_popover-color-foreground);padding:var(--_outer-padding);border-radius:var(--_border-radius);z-index:2;overflow:auto;scrollbar-width:thin}:host::part(arrow){border-radius:var(--odx-border-radius-sm);position:absolute;inline-size:var(--_arrow-size);block-size:var(--_arrow-size);z-index:3;inset:0;transform:translate3d(var(--_popover-arrow-position-x),var(--_popover-arrow-position-y),0) rotate(45deg)}";
325
-
326
- var __defProp = Object.defineProperty;
327
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
328
- var __decorateClass = (decorators, target, key, kind) => {
329
- var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
330
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
331
- if (decorator = decorators[i])
332
- result = (kind ? decorator(target, key, result) : decorator(result)) || result;
333
- if (kind && result) __defProp(target, key, result);
334
- return result;
335
- };
336
- let OdxPopover = class extends CustomElement {
337
- constructor() {
338
- super(...arguments);
339
- this.showArrow = false;
340
- }
341
- render() {
342
- return html`
343
- <div part="content">
344
- <slot></slot>
345
- </div>
346
- ${when(this.showArrow, () => html`<div part="arrow"></div>`)}
347
- `;
348
- }
349
- };
350
- __decorateClass([
351
- property({ type: Boolean, reflect: true })
352
- ], OdxPopover.prototype, "showArrow", 2);
353
- OdxPopover = __decorateClass([
354
- customElement("odx-popover", [styles])
355
- ], OdxPopover);
356
-
357
- export { DragController, DragControllerOptions, IS_DRAG_ACTIVE_ATTRIBUTE, IsDraggable, OdxPopover, PopoverHost, PopoverHostStyles, PopoverPlacement, PopoverPlacementOptions, PopoverSide, isDraggableElement };
@@ -1,18 +0,0 @@
1
- import { CanBeExpanded, CustomElement } from '../../lib/main.js';
2
- import { PropertyValues, TemplateResult } from 'lit';
3
- import { OdxAccordionPanel } from './accordion-panel.js';
4
- declare global {
5
- interface HTMLElementTagNameMap {
6
- 'odx-accordion-header': OdxAccordionHeader;
7
- }
8
- }
9
- declare const OdxAccordionHeader_base: import('../../lib/main.js').Constructor<CanBeExpanded> & typeof CustomElement;
10
- export declare class OdxAccordionHeader extends OdxAccordionHeader_base {
11
- #private;
12
- get panel(): OdxAccordionPanel | null;
13
- connectedCallback(): void;
14
- protected render(): TemplateResult;
15
- protected updated(props: PropertyValues<this>): void;
16
- }
17
- export {};
18
- //# sourceMappingURL=accordion-header.d.ts.map
@@ -1,4 +0,0 @@
1
- export * from './accordion-header.js';
2
- export * from './accordion-panel.js';
3
- export * from './accordion.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1,24 +0,0 @@
1
- import { CanBeDisabled, CustomElement } from '../../lib/main.js';
2
- import { PropertyValues, TemplateResult } from 'lit';
3
- import { ButtonSize, ButtonVariant } from '../button/index.js';
4
- declare global {
5
- interface HTMLElementTagNameMap {
6
- 'odx-action-group': OdxActionGroup;
7
- }
8
- }
9
- declare const OdxActionGroup_base: import('../../lib/main.js').Constructor<CanBeDisabled> & typeof CustomElement;
10
- export declare class OdxActionGroup extends OdxActionGroup_base {
11
- #private;
12
- private assignedElements;
13
- private fallbackElements;
14
- private base;
15
- private container;
16
- connected: boolean;
17
- size?: ButtonSize | null;
18
- variant?: ButtonVariant | null;
19
- connectedCallback(): void;
20
- protected render(): TemplateResult;
21
- protected updated(props: PropertyValues<this>): void;
22
- }
23
- export {};
24
- //# sourceMappingURL=action-group.d.ts.map
@@ -1,2 +0,0 @@
1
- export * from './action-group.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1,12 +0,0 @@
1
- export type AreaHeaderSize = (typeof AreaHeaderSize)[keyof typeof AreaHeaderSize];
2
- export declare const AreaHeaderSize: {
3
- readonly SM: "sm";
4
- readonly MD: "md";
5
- readonly LG: "lg";
6
- readonly XL: "xl";
7
- };
8
- export type AreaHeaderVariant = (typeof AreaHeaderVariant)[keyof typeof AreaHeaderVariant];
9
- export declare const AreaHeaderVariant: {
10
- readonly DEFAULT: "default";
11
- };
12
- //# sourceMappingURL=area-header.models.d.ts.map
@@ -1,3 +0,0 @@
1
- export * from './area-header.js';
2
- export * from './area-header.models.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1,13 +0,0 @@
1
- export type AvatarSize = (typeof AvatarSize)[keyof typeof AvatarSize];
2
- export declare const AvatarSize: {
3
- readonly SM: "sm";
4
- readonly MD: "md";
5
- readonly LG: "lg";
6
- readonly XL: "xl";
7
- };
8
- export type AvatarVariant = (typeof AvatarVariant)[keyof typeof AvatarVariant];
9
- export declare const AvatarVariant: {
10
- readonly CIRCLE: "circle";
11
- readonly RECTANGLE: "rectangle";
12
- };
13
- //# sourceMappingURL=avatar.models.d.ts.map
@@ -1,3 +0,0 @@
1
- export * from './avatar.js';
2
- export * from './avatar.models.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +0,0 @@
1
- export * from './avatar-group.js';
2
- //# sourceMappingURL=index.d.ts.map