asheeui 0.6.15 → 0.7.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 (183) hide show
  1. package/dist/AsheeUIProvider.js +22 -24
  2. package/dist/components/accordion/Accordion.js +79 -173
  3. package/dist/components/accordion/accordion-config.js +12 -13
  4. package/dist/components/accordion/accordion-styles.js +21 -24
  5. package/dist/components/autocomplete/Autocomplete.js +78 -136
  6. package/dist/components/autocomplete/autocomplete-config.js +7 -12
  7. package/dist/components/button/Button.d.ts +29 -1
  8. package/dist/components/button/Button.d.ts.map +1 -1
  9. package/dist/components/button/Button.js +47 -108
  10. package/dist/components/button/button-config.js +16 -17
  11. package/dist/components/button/button-styles.js +10 -11
  12. package/dist/components/card/Card.d.ts +36 -16
  13. package/dist/components/card/Card.d.ts.map +1 -1
  14. package/dist/components/card/Card.js +115 -205
  15. package/dist/components/card/card-config.js +24 -21
  16. package/dist/components/card/card-styles.js +19 -22
  17. package/dist/components/carousel/Carousel.js +123 -248
  18. package/dist/components/carousel/carousel-config.js +24 -25
  19. package/dist/components/carousel/carousel-styles.js +14 -16
  20. package/dist/components/chip/Chip.js +84 -191
  21. package/dist/components/chip/chip-config.js +13 -14
  22. package/dist/components/chip/chip-styles.js +22 -26
  23. package/dist/components/date-picker/Calendar.d.ts +3 -3
  24. package/dist/components/date-picker/Calendar.d.ts.map +1 -1
  25. package/dist/components/date-picker/Calendar.js +141 -222
  26. package/dist/components/date-picker/DatePicker.d.ts +5 -5
  27. package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
  28. package/dist/components/date-picker/DatePicker.js +122 -220
  29. package/dist/components/date-picker/TimeSpinner.js +58 -82
  30. package/dist/components/date-picker/date-picker-config.d.ts +4 -4
  31. package/dist/components/date-picker/date-picker-config.d.ts.map +1 -1
  32. package/dist/components/date-picker/date-picker-config.js +10 -11
  33. package/dist/components/date-picker/date-picker-styles.js +44 -45
  34. package/dist/components/date-picker/date-picker.helpers.d.ts +4 -4
  35. package/dist/components/date-picker/date-picker.helpers.d.ts.map +1 -1
  36. package/dist/components/date-picker/date-picker.helpers.js +74 -102
  37. package/dist/components/drawer/Drawer.d.ts +26 -8
  38. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  39. package/dist/components/drawer/Drawer.js +54 -131
  40. package/dist/components/drawer/drawer-config.js +14 -15
  41. package/dist/components/drawer/drawer-styles.js +38 -42
  42. package/dist/components/field/FieldShell.js +49 -56
  43. package/dist/components/field/field-config.js +17 -18
  44. package/dist/components/field/field-styles.js +8 -8
  45. package/dist/components/image/Image.d.ts +7 -7
  46. package/dist/components/image/Image.d.ts.map +1 -1
  47. package/dist/components/image/Image.js +65 -132
  48. package/dist/components/image/image-config.js +17 -18
  49. package/dist/components/image/image-styles.js +14 -15
  50. package/dist/components/input/Input.js +65 -150
  51. package/dist/components/input/PasswordInput.js +30 -49
  52. package/dist/components/input/input-config.js +7 -7
  53. package/dist/components/input/input-styles.js +9 -10
  54. package/dist/components/keyboard/KeyboardContext.js +10 -11
  55. package/dist/components/keyboard/KeyboardProvider.js +100 -181
  56. package/dist/components/keyboard/OnScreenKeyboard.d.ts.map +1 -1
  57. package/dist/components/keyboard/OnScreenKeyboard.js +159 -166
  58. package/dist/components/keyboard/keyboard-config.js +59 -57
  59. package/dist/components/keyboard/keyboard-styles.js +10 -11
  60. package/dist/components/keyboard/use-keyboard-field.js +29 -21
  61. package/dist/components/link/Link.js +47 -137
  62. package/dist/components/link/link-config.js +14 -15
  63. package/dist/components/link/link-styles.js +25 -29
  64. package/dist/components/marquee/Marquee.js +55 -144
  65. package/dist/components/marquee/marquee-config.js +18 -19
  66. package/dist/components/marquee/marquee-styles.js +13 -15
  67. package/dist/components/modal/Modal.d.ts +26 -10
  68. package/dist/components/modal/Modal.d.ts.map +1 -1
  69. package/dist/components/modal/Modal.js +56 -136
  70. package/dist/components/modal/modal-config.js +15 -16
  71. package/dist/components/modal/modal-styles.js +13 -14
  72. package/dist/components/multi-select/MultiSelect.d.ts +18 -2
  73. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  74. package/dist/components/multi-select/MultiSelect.js +149 -283
  75. package/dist/components/multi-select/multi-select-config.d.ts +23 -18
  76. package/dist/components/multi-select/multi-select-config.d.ts.map +1 -1
  77. package/dist/components/multi-select/multi-select-config.js +18 -21
  78. package/dist/components/multi-select/multi-select-styles.js +17 -20
  79. package/dist/components/radio/Radio.js +43 -80
  80. package/dist/components/radio/RadioGroup.js +57 -155
  81. package/dist/components/radio/radio-config.js +15 -16
  82. package/dist/components/radio/radio-context.js +6 -6
  83. package/dist/components/radio/radio-styles.js +55 -60
  84. package/dist/components/resizable-screen/ResizableScreen.js +87 -177
  85. package/dist/components/resizable-screen/resizable-screen-config.js +16 -17
  86. package/dist/components/select/Select.d.ts +3 -2
  87. package/dist/components/select/Select.d.ts.map +1 -1
  88. package/dist/components/select/Select.js +97 -195
  89. package/dist/components/select/select-config.js +8 -9
  90. package/dist/components/select/select-styles.js +5 -5
  91. package/dist/components/select-menu/SelectMenu.d.ts.map +1 -1
  92. package/dist/components/select-menu/SelectMenu.js +102 -196
  93. package/dist/components/select-menu/select-menu-config.js +12 -12
  94. package/dist/components/select-menu/use-select-floating.d.ts +11 -1
  95. package/dist/components/select-menu/use-select-floating.d.ts.map +1 -1
  96. package/dist/components/select-menu/use-select-floating.js +41 -48
  97. package/dist/components/sidebar/Sidebar.d.ts +43 -22
  98. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  99. package/dist/components/sidebar/Sidebar.js +146 -331
  100. package/dist/components/sidebar/sidebar-config.d.ts +98 -31
  101. package/dist/components/sidebar/sidebar-config.d.ts.map +1 -1
  102. package/dist/components/sidebar/sidebar-config.js +47 -33
  103. package/dist/components/sidebar/sidebar-styles.js +27 -32
  104. package/dist/components/spinner/spinner-config.js +12 -13
  105. package/dist/components/spinner/spinner-styles.js +13 -14
  106. package/dist/components/spinner/spinner.js +39 -82
  107. package/dist/components/switch/Switch.js +62 -154
  108. package/dist/components/switch/switch-config.js +11 -12
  109. package/dist/components/switch/switch-styles.js +14 -16
  110. package/dist/components/table/Table.js +64 -186
  111. package/dist/components/table/table-config.js +17 -18
  112. package/dist/components/table/table-styles.js +48 -52
  113. package/dist/components/tabs/Tabs.d.ts +16 -8
  114. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  115. package/dist/components/tabs/Tabs.js +93 -208
  116. package/dist/components/tabs/tabs-config.d.ts +42 -20
  117. package/dist/components/tabs/tabs-config.d.ts.map +1 -1
  118. package/dist/components/tabs/tabs-config.js +26 -18
  119. package/dist/components/tabs/tabs-styles.js +15 -17
  120. package/dist/components/textarea/Textarea.js +52 -138
  121. package/dist/components/textarea/textarea-config.js +10 -11
  122. package/dist/components/textarea/textarea-styles.js +9 -10
  123. package/dist/components/toast/ToastContext.js +22 -26
  124. package/dist/components/toast/ToastItem.js +82 -144
  125. package/dist/components/toast/ToastProvider.d.ts.map +1 -1
  126. package/dist/components/toast/ToastProvider.js +128 -190
  127. package/dist/components/toast/toast-config.js +23 -24
  128. package/dist/components/toast/toast-styles.js +50 -55
  129. package/dist/components/toast/use-pausable-timeout.js +17 -13
  130. package/dist/components/tooltip/Tooltip.d.ts +5 -0
  131. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  132. package/dist/components/tooltip/Tooltip.js +68 -158
  133. package/dist/components/tooltip/tooltip-config.d.ts +25 -0
  134. package/dist/components/tooltip/tooltip-config.d.ts.map +1 -1
  135. package/dist/components/tooltip/tooltip-config.js +26 -22
  136. package/dist/components/tooltip/tooltip-styles.js +15 -17
  137. package/dist/config/default-config.js +11 -34
  138. package/dist/config/resolve-color.js +23 -23
  139. package/dist/config/resolve-config.d.ts.map +1 -1
  140. package/dist/config/resolve-config.js +14 -12
  141. package/dist/icons/ArrowLeftIcon.js +16 -19
  142. package/dist/icons/CalendarIcon.js +43 -24
  143. package/dist/icons/CheckIcon.js +16 -19
  144. package/dist/icons/ChevronDownIcon.js +15 -21
  145. package/dist/icons/ChevronLeftIcon.js +16 -19
  146. package/dist/icons/ChevronRightIcon.js +16 -19
  147. package/dist/icons/ChevronUpIcon.js +16 -19
  148. package/dist/icons/ClearIcon.js +26 -22
  149. package/dist/icons/ClockIcon.js +20 -22
  150. package/dist/icons/CloseIcon.js +26 -22
  151. package/dist/icons/ErrorIcon.js +16 -19
  152. package/dist/icons/ExternalLinkIcon.js +25 -23
  153. package/dist/icons/EyeIcon.js +20 -22
  154. package/dist/icons/EyeOffIcon.js +21 -22
  155. package/dist/icons/InfoIcon.js +16 -19
  156. package/dist/icons/SearchIcon.js +25 -22
  157. package/dist/icons/WarningIcon.js +16 -19
  158. package/dist/index.js +65 -163
  159. package/dist/libs/context.js +10 -13
  160. package/dist/libs/index.js +1 -0
  161. package/dist/libs/registry.js +10 -12
  162. package/dist/libs/use-floating-z-index.d.ts +32 -0
  163. package/dist/libs/use-floating-z-index.d.ts.map +1 -0
  164. package/dist/libs/use-floating-z-index.js +16 -0
  165. package/dist/libs/use-isomorphic-layout-effect.js +5 -5
  166. package/dist/scripts/AsheeThemeScript.js +35 -44
  167. package/dist/shared/radius.d.ts.map +1 -1
  168. package/dist/shared/radius.js +12 -13
  169. package/dist/shared/variant.js +46 -134
  170. package/dist/theme/color.js +28 -28
  171. package/dist/theme/controller.d.ts.map +1 -1
  172. package/dist/theme/controller.js +65 -178
  173. package/dist/theme/useTheme.js +13 -44
  174. package/dist/utils/cn.js +7 -7
  175. package/dist/utils/index.d.ts +1 -0
  176. package/dist/utils/index.d.ts.map +1 -1
  177. package/dist/utils/index.js +1 -0
  178. package/dist/utils/merge-object.js +13 -14
  179. package/dist/utils/resolve-token.js +11 -14
  180. package/dist/utils/stacking.d.ts +76 -0
  181. package/dist/utils/stacking.d.ts.map +1 -0
  182. package/dist/utils/stacking.js +34 -0
  183. package/package.json +12 -11
@@ -1,19 +1,16 @@
1
1
  "use client";
2
- function u(n, e, r, t) {
3
- return n ?? e ?? r ?? t;
2
+ //#region src/utils/resolve-token.ts
3
+ function e(e, t, n, r) {
4
+ return e ?? t ?? n ?? r;
4
5
  }
5
- function o(n, e, r) {
6
- return n ?? e ?? r;
6
+ function t(e, t, n) {
7
+ return e ?? t ?? n;
7
8
  }
8
- function i(n, e, r, t = "md") {
9
- return n ?? e ?? r ?? t;
9
+ function n(e, t, n, r = "md") {
10
+ return e ?? t ?? n ?? r;
10
11
  }
11
- function s(n, e, r) {
12
- return e[n] ?? e[r] ?? "";
12
+ function r(e, t, n) {
13
+ return t[e] ?? t[n] ?? "";
13
14
  }
14
- export {
15
- o as resolveAnimate,
16
- u as resolveCascade,
17
- s as resolveClassKey,
18
- i as resolveRadiusKey
19
- };
15
+ //#endregion
16
+ export { t as resolveAnimate, e as resolveCascade, r as resolveClassKey, n as resolveRadiusKey };
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Stacking-context utilities for AsheeUI floating elements.
3
+ * This file provides the layering standard used by every floating component.
4
+ *
5
+ * Floating elements are portaled to `document.body`, which places them in the
6
+ * root stacking context, so their `z-index` competes with app-level chrome
7
+ * such as custom navbars. To layer correctly against both AsheeUI's own
8
+ * components and arbitrary client components, a floating element derives its
9
+ * `z-index` from the trigger's own stacking context:
10
+ *
11
+ * floating z-index = outermost stacking context z-index of the trigger
12
+ * + the component's layer delta
13
+ *
14
+ * The delta only orders AsheeUI's internal layers relative to each other
15
+ * (dropdown < popover < tooltip). All elevation is carried by the derived
16
+ * base, so an anchored popup stays above its own container (for example a
17
+ * navbar) without ever outranking unrelated app chrome.
18
+ */
19
+ /**
20
+ * Layer deltas for anchored floating elements (elements bound to a trigger).
21
+ * Deltas are intentionally small integers so an anchored popup can never
22
+ * leapfrog unrelated app chrome such as a high `z-index` navbar.
23
+ */
24
+ export declare const ASHEE_LAYER: {
25
+ /** Select, MultiSelect, Autocomplete, and the shared SelectMenu. */
26
+ readonly dropdown: 10;
27
+ /** DatePicker and other floating panels. */
28
+ readonly popover: 20;
29
+ /** Tooltips. */
30
+ readonly tooltip: 30;
31
+ };
32
+ /**
33
+ * Fixed rungs for app-level overlays, which are not anchored to a trigger and
34
+ * should sit above page chrome.
35
+ */
36
+ export declare const ASHEE_GLOBAL_LAYER: {
37
+ /** Modal and Drawer. */
38
+ readonly overlay: 1000;
39
+ /** Docked surfaces such as the on-screen keyboard. */
40
+ readonly docked: 1500;
41
+ /** Toasts. */
42
+ readonly toast: 2000;
43
+ };
44
+ /**
45
+ * Determines whether an element establishes a stacking context, using the
46
+ * conditions documented for CSS stacking contexts.
47
+ *
48
+ * @param element - The element to test.
49
+ * @param computed - Optional precomputed style for the element.
50
+ * @returns True when the element creates a stacking context.
51
+ */
52
+ export declare function establishesStackingContext(element: Element, computed?: CSSStyleDeclaration): boolean;
53
+ /**
54
+ * Resolves the `z-index` of the outermost stacking context that contains the
55
+ * reference element — the context that governs where the reference's subtree
56
+ * sits in the root stacking order.
57
+ *
58
+ * Walking outward matters: stacking contexts are atomic in their parent, so
59
+ * only the outermost context ancestor decides the subtree's position.
60
+ *
61
+ * @param reference - The trigger element.
62
+ * @returns The context's `z-index`, or 0 when the reference lives in the
63
+ * plain root flow.
64
+ */
65
+ export declare function resolveBaseZIndex(reference: Element | null | undefined): number;
66
+ /**
67
+ * Resolves the `z-index` a portaled floating element should use so it renders
68
+ * above its trigger's stacking context without outranking unrelated app
69
+ * chrome.
70
+ *
71
+ * @param reference - The trigger element.
72
+ * @param layerDelta - The component's layer delta from `ASHEE_LAYER`.
73
+ * @returns The derived `z-index`.
74
+ */
75
+ export declare function resolveFloatingZIndex(reference: Element | null | undefined, layerDelta: number): number;
76
+ //# sourceMappingURL=stacking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stacking.d.ts","sourceRoot":"","sources":["../../src/utils/stacking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,WAAW;IACtB,oEAAoE;;IAEpE,4CAA4C;;IAE5C,gBAAgB;;CAER,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,kBAAkB;IAC7B,wBAAwB;;IAExB,sDAAsD;;IAEtD,cAAc;;CAEN,CAAC;AAiBX;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,GAAE,mBAAsD,GAC/D,OAAO,CAmCT;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GACpC,MAAM,CAwBR;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACrC,UAAU,EAAE,MAAM,GACjB,MAAM,CAER"}
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ //#region src/utils/stacking.ts
3
+ var e = {
4
+ dropdown: 10,
5
+ popover: 20,
6
+ tooltip: 30
7
+ }, t = {
8
+ overlay: 1e3,
9
+ docked: 1500,
10
+ toast: 2e3
11
+ };
12
+ function n(e) {
13
+ if (e.parentElement) return e.parentElement;
14
+ let t = e.getRootNode();
15
+ return t instanceof ShadowRoot ? t.host : null;
16
+ }
17
+ function r(e, t = window.getComputedStyle(e)) {
18
+ return !!(t.position === "fixed" || t.position === "sticky" || (t.position === "absolute" || t.position === "relative") && t.zIndex !== "auto" || t.opacity !== "1" || t.transform !== "none" || t.filter !== "none" || t.getPropertyValue("backdrop-filter") !== "none" || t.getPropertyValue("perspective") !== "none" || t.getPropertyValue("clip-path") !== "none" || t.getPropertyValue("mix-blend-mode") !== "normal" || t.getPropertyValue("isolation") === "isolate" || /transform|opacity|filter/.test(t.getPropertyValue("will-change")) || /layout|paint|strict|content/.test(t.getPropertyValue("contain")));
19
+ }
20
+ function i(e) {
21
+ if (typeof window > "u" || !e) return 0;
22
+ let t = 0, i = n(e);
23
+ for (; i && i !== document.body && i !== document.documentElement;) {
24
+ let e = window.getComputedStyle(i);
25
+ if (r(i, e)) {
26
+ let n = Number.parseInt(e.zIndex, 10);
27
+ t = Number.isNaN(n) ? 0 : n;
28
+ }
29
+ i = n(i);
30
+ }
31
+ return Math.max(t, 0);
32
+ }
33
+ //#endregion
34
+ export { t as ASHEE_GLOBAL_LAYER, e as ASHEE_LAYER, r as establishesStackingContext, i as resolveBaseZIndex };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asheeui",
3
- "version": "0.6.15",
3
+ "version": "0.7.0",
4
4
  "description": "Accessible and customizable React primitives engineered with Tailwind CSS.",
5
5
  "author": "Ashee Softworks <asheesoftworks@gmail.com>",
6
6
  "homepage": "https://asheeui.com",
@@ -63,16 +63,17 @@
63
63
  },
64
64
  "devDependencies": {
65
65
  "@floating-ui/react": "^0.27.20",
66
- "@types/node": "^26.1.2",
67
- "@types/react": "^19.0.0",
68
- "@types/react-dom": "^19.0.0",
69
- "@vitejs/plugin-react": "^4.0.0",
70
- "react": "^19.0.0",
71
- "react-dom": "^19.0.0",
72
- "tsx": "^4.23.12",
73
- "typescript": "^5.0.0",
74
- "vite": "^6.0.0",
75
- "vite-plugin-dts": "^4.0.0"
66
+ "@types/node": "^26.5.1",
67
+ "@types/react": "^19.3.0",
68
+ "@types/react-dom": "^19.3.0",
69
+ "@typescript/typescript6": "^6.0.2",
70
+ "@vitejs/plugin-react": "^6.1.1",
71
+ "react": "^19.3.0",
72
+ "react-dom": "^19.3.0",
73
+ "tsx": "^4.23.13",
74
+ "typescript": "^7.0.2",
75
+ "vite": "^8.3.0",
76
+ "vite-plugin-dts": "^5.1.0"
76
77
  },
77
78
  "module": "./dist/index.js",
78
79
  "license": "MIT",