@gunkin/uiify 0.0.11-alpha → 0.0.13-alpha

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 (247) hide show
  1. package/dist/components/behavior.css +21 -6
  2. package/dist/components/behavior.css.map +1 -1
  3. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -1
  4. package/dist/components/breadcrumb/Breadcrumb.js +5 -4
  5. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  6. package/dist/components/carousel/CarouselMarkup.d.ts.map +1 -1
  7. package/dist/components/carousel/CarouselMarkup.js +2 -1
  8. package/dist/components/carousel/CarouselMarkup.js.map +1 -1
  9. package/dist/components/carousel/client/CarouselClientView.d.ts.map +1 -1
  10. package/dist/components/carousel/client/CarouselClientView.js +1 -0
  11. package/dist/components/carousel/client/CarouselClientView.js.map +1 -1
  12. package/dist/components/carousel/client/carousel-controller.d.ts.map +1 -1
  13. package/dist/components/carousel/client/carousel-controller.js +25 -4
  14. package/dist/components/carousel/client/carousel-controller.js.map +1 -1
  15. package/dist/components/carousel/client/carousel-observer.d.ts.map +1 -1
  16. package/dist/components/carousel/client/carousel-observer.js +40 -0
  17. package/dist/components/carousel/client/carousel-observer.js.map +1 -1
  18. package/dist/components/carousel/fade/fade-controller.d.ts.map +1 -1
  19. package/dist/components/carousel/fade/fade-controller.js +3 -0
  20. package/dist/components/carousel/fade/fade-controller.js.map +1 -1
  21. package/dist/components/carousel/types.d.ts +2 -0
  22. package/dist/components/carousel/types.d.ts.map +1 -1
  23. package/dist/components/checkbox/Checkbox.d.ts +1 -6
  24. package/dist/components/checkbox/Checkbox.d.ts.map +1 -1
  25. package/dist/components/checkbox/Checkbox.js +2 -52
  26. package/dist/components/checkbox/Checkbox.js.map +1 -1
  27. package/dist/components/drawer/Drawer.d.ts +1 -1
  28. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  29. package/dist/components/drawer/Drawer.js +46 -9
  30. package/dist/components/drawer/Drawer.js.map +1 -1
  31. package/dist/components/drawer/DrawerNative.d.ts +8 -16
  32. package/dist/components/drawer/DrawerNative.d.ts.map +1 -1
  33. package/dist/components/drawer/DrawerNative.js +80 -34
  34. package/dist/components/drawer/DrawerNative.js.map +1 -1
  35. package/dist/components/drawer/drawer-store.d.ts +1 -1
  36. package/dist/components/drawer/drawer-store.d.ts.map +1 -1
  37. package/dist/components/drawer/drawer-store.js +7 -3
  38. package/dist/components/drawer/drawer-store.js.map +1 -1
  39. package/dist/components/drawer/index.d.ts +3 -3
  40. package/dist/components/drawer/index.d.ts.map +1 -1
  41. package/dist/components/drawer/index.js +9 -1
  42. package/dist/components/drawer/index.js.map +1 -1
  43. package/dist/components/drawer/types.d.ts +114 -3
  44. package/dist/components/drawer/types.d.ts.map +1 -1
  45. package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -1
  46. package/dist/components/dropdown-menu/DropdownMenu.js +1 -0
  47. package/dist/components/dropdown-menu/DropdownMenu.js.map +1 -1
  48. package/dist/components/enhance/dialog-dismiss.d.ts +1 -1
  49. package/dist/components/enhance/dialog-dismiss.d.ts.map +1 -1
  50. package/dist/components/enhance/dialog-dismiss.js +19 -10
  51. package/dist/components/enhance/dialog-dismiss.js.map +1 -1
  52. package/dist/components/enhance/internal/box-observer.d.ts +4 -0
  53. package/dist/components/enhance/internal/box-observer.d.ts.map +1 -0
  54. package/dist/components/enhance/internal/box-observer.js +32 -0
  55. package/dist/components/enhance/internal/box-observer.js.map +1 -0
  56. package/dist/components/enhance/sheet-swipe.d.ts.map +1 -1
  57. package/dist/components/enhance/sheet-swipe.js +42 -14
  58. package/dist/components/enhance/sheet-swipe.js.map +1 -1
  59. package/dist/components/enhance/types.d.ts +5 -0
  60. package/dist/components/enhance/types.d.ts.map +1 -0
  61. package/dist/components/field/Field.d.ts.map +1 -1
  62. package/dist/components/field/Field.js +1 -0
  63. package/dist/components/field/Field.js.map +1 -1
  64. package/dist/components/file-upload/FileUpload.d.ts +4 -7
  65. package/dist/components/file-upload/FileUpload.d.ts.map +1 -1
  66. package/dist/components/file-upload/FileUpload.js +28 -122
  67. package/dist/components/file-upload/FileUpload.js.map +1 -1
  68. package/dist/components/file-upload/FileUploadInput.d.ts +7 -0
  69. package/dist/components/file-upload/FileUploadInput.d.ts.map +1 -0
  70. package/dist/components/file-upload/FileUploadInput.js +60 -0
  71. package/dist/components/file-upload/FileUploadInput.js.map +1 -0
  72. package/dist/components/file-upload/FileUploadRoot.d.ts +8 -0
  73. package/dist/components/file-upload/FileUploadRoot.d.ts.map +1 -0
  74. package/dist/components/file-upload/FileUploadRoot.js +70 -0
  75. package/dist/components/file-upload/FileUploadRoot.js.map +1 -0
  76. package/dist/components/file-upload/file-upload-context.d.ts +3 -0
  77. package/dist/components/file-upload/file-upload-context.d.ts.map +1 -0
  78. package/dist/components/file-upload/file-upload-context.js +8 -0
  79. package/dist/components/file-upload/file-upload-context.js.map +1 -0
  80. package/dist/components/file-upload/index.d.ts +1 -1
  81. package/dist/components/file-upload/index.d.ts.map +1 -1
  82. package/dist/components/file-upload/index.js.map +1 -1
  83. package/dist/components/file-upload/types.d.ts +8 -10
  84. package/dist/components/file-upload/types.d.ts.map +1 -1
  85. package/dist/components/form/Form.d.ts.map +1 -1
  86. package/dist/components/form/Form.js +2 -1
  87. package/dist/components/form/Form.js.map +1 -1
  88. package/dist/components/header/Header.d.ts +3 -19
  89. package/dist/components/header/Header.d.ts.map +1 -1
  90. package/dist/components/header/Header.js +4 -253
  91. package/dist/components/header/Header.js.map +1 -1
  92. package/dist/components/header/client/HeaderClient.d.ts +7 -0
  93. package/dist/components/header/client/HeaderClient.d.ts.map +1 -0
  94. package/dist/components/header/client/HeaderClient.js +93 -0
  95. package/dist/components/header/client/HeaderClient.js.map +1 -0
  96. package/dist/components/header/client/index.d.ts +3 -0
  97. package/dist/components/header/client/index.d.ts.map +1 -0
  98. package/dist/components/header/client/index.js +6 -0
  99. package/dist/components/header/client/index.js.map +1 -0
  100. package/dist/components/header/client.d.ts +1 -0
  101. package/dist/components/header/client.js +1 -0
  102. package/dist/components/header/index.d.ts +2 -3
  103. package/dist/components/header/index.d.ts.map +1 -1
  104. package/dist/components/header/index.js +2 -15
  105. package/dist/components/header/index.js.map +1 -1
  106. package/dist/components/header/types.d.ts +7 -63
  107. package/dist/components/header/types.d.ts.map +1 -1
  108. package/dist/components/hover-card/HoverCard.js +1 -1
  109. package/dist/components/hover-card/HoverCard.js.map +1 -1
  110. package/dist/components/index.d.ts +0 -1
  111. package/dist/components/index.d.ts.map +1 -1
  112. package/dist/components/index.js +0 -1
  113. package/dist/components/index.js.map +1 -1
  114. package/dist/components/input/Input.d.ts.map +1 -1
  115. package/dist/components/input/Input.js +1 -1
  116. package/dist/components/input/Input.js.map +1 -1
  117. package/dist/components/internal/choice-family/ChoiceGroup.js +1 -1
  118. package/dist/components/internal/choice-family/ChoiceGroup.js.map +1 -1
  119. package/dist/components/internal/choice-family/types.d.ts +3 -3
  120. package/dist/components/internal/choice-family/types.d.ts.map +1 -1
  121. package/dist/components/internal/native-check-control/NativeCheckControl.d.ts +7 -0
  122. package/dist/components/internal/native-check-control/NativeCheckControl.d.ts.map +1 -0
  123. package/dist/components/internal/native-check-control/NativeCheckControl.js +56 -0
  124. package/dist/components/internal/native-check-control/NativeCheckControl.js.map +1 -0
  125. package/dist/components/internal/native-check-control/types.d.ts +13 -0
  126. package/dist/components/internal/native-check-control/types.d.ts.map +1 -0
  127. package/dist/components/internal/native-check-control/types.js +1 -0
  128. package/dist/components/number-field/NumberField.d.ts.map +1 -1
  129. package/dist/components/number-field/NumberField.js +11 -2
  130. package/dist/components/number-field/NumberField.js.map +1 -1
  131. package/dist/components/number-field/format.d.ts +1 -0
  132. package/dist/components/number-field/format.d.ts.map +1 -1
  133. package/dist/components/number-field/format.js +18 -6
  134. package/dist/components/number-field/format.js.map +1 -1
  135. package/dist/components/popup/PopupParts.d.ts.map +1 -1
  136. package/dist/components/popup/PopupParts.js +2 -0
  137. package/dist/components/popup/PopupParts.js.map +1 -1
  138. package/dist/components/select/Select.d.ts.map +1 -1
  139. package/dist/components/select/Select.js +1 -1
  140. package/dist/components/select/Select.js.map +1 -1
  141. package/dist/components/skeleton/Skeleton.d.ts.map +1 -1
  142. package/dist/components/skeleton/Skeleton.js +14 -35
  143. package/dist/components/skeleton/Skeleton.js.map +1 -1
  144. package/dist/components/skeleton/types.d.ts +1 -8
  145. package/dist/components/skeleton/types.d.ts.map +1 -1
  146. package/dist/components/table/Table.d.ts +1 -40
  147. package/dist/components/table/Table.d.ts.map +1 -1
  148. package/dist/components/table/Table.js +9 -259
  149. package/dist/components/table/Table.js.map +1 -1
  150. package/dist/components/table/TableShell.d.ts +5 -1
  151. package/dist/components/table/TableShell.d.ts.map +1 -1
  152. package/dist/components/table/TableShell.js +63 -9
  153. package/dist/components/table/TableShell.js.map +1 -1
  154. package/dist/components/table/client/Table.d.ts +30 -0
  155. package/dist/components/table/client/Table.d.ts.map +1 -0
  156. package/dist/components/table/client/Table.js +135 -0
  157. package/dist/components/table/client/Table.js.map +1 -0
  158. package/dist/components/table/client/TableBody.d.ts +7 -0
  159. package/dist/components/table/client/TableBody.d.ts.map +1 -0
  160. package/dist/components/table/client/TableBody.js +35 -0
  161. package/dist/components/table/client/TableBody.js.map +1 -0
  162. package/dist/components/table/client/TableColumnHeader.d.ts +7 -0
  163. package/dist/components/table/client/TableColumnHeader.d.ts.map +1 -0
  164. package/dist/components/table/client/TableColumnHeader.js +69 -0
  165. package/dist/components/table/client/TableColumnHeader.js.map +1 -0
  166. package/dist/components/table/client/TableExpansion.d.ts +11 -0
  167. package/dist/components/table/client/TableExpansion.d.ts.map +1 -0
  168. package/dist/components/table/client/TableExpansion.js +43 -0
  169. package/dist/components/table/client/TableExpansion.js.map +1 -0
  170. package/dist/components/table/client/TableRow.d.ts +7 -0
  171. package/dist/components/table/client/TableRow.d.ts.map +1 -0
  172. package/dist/components/table/client/TableRow.js +95 -0
  173. package/dist/components/table/client/TableRow.js.map +1 -0
  174. package/dist/components/table/client/TableSelection.d.ts +11 -0
  175. package/dist/components/table/client/TableSelection.d.ts.map +1 -0
  176. package/dist/components/table/client/TableSelection.js +48 -0
  177. package/dist/components/table/client/TableSelection.js.map +1 -0
  178. package/dist/components/table/client/table-context.d.ts +3 -0
  179. package/dist/components/table/client/table-context.d.ts.map +1 -0
  180. package/dist/components/table/client/table-context.js +8 -0
  181. package/dist/components/table/client/table-context.js.map +1 -0
  182. package/dist/components/table/client.d.ts +4 -0
  183. package/dist/components/table/client.d.ts.map +1 -0
  184. package/dist/components/table/client.js +30 -0
  185. package/dist/components/table/client.js.map +1 -0
  186. package/dist/components/table/index.d.ts +2 -2
  187. package/dist/components/table/index.d.ts.map +1 -1
  188. package/dist/components/table/index.js +7 -7
  189. package/dist/components/table/index.js.map +1 -1
  190. package/dist/components/table/types.d.ts +42 -15
  191. package/dist/components/table/types.d.ts.map +1 -1
  192. package/dist/components/textarea/Textarea.d.ts.map +1 -1
  193. package/dist/components/textarea/Textarea.js +1 -1
  194. package/dist/components/textarea/Textarea.js.map +1 -1
  195. package/dist/components/tooltip/Tooltip.js +1 -1
  196. package/dist/components/tooltip/Tooltip.js.map +1 -1
  197. package/dist/components/virtual-scroll/VirtualScroll.d.ts.map +1 -1
  198. package/dist/components/virtual-scroll/VirtualScroll.js +54 -34
  199. package/dist/components/virtual-scroll/VirtualScroll.js.map +1 -1
  200. package/dist/components/virtual-scroll/types.d.ts +2 -2
  201. package/dist/components/virtual-scroll/types.d.ts.map +1 -1
  202. package/dist/components/virtual-scroll/types.js.map +1 -1
  203. package/dist/components/virtual-scroll/virtual-scroll-scroll.d.ts.map +1 -1
  204. package/dist/components/virtual-scroll/virtual-scroll-scroll.js +0 -1
  205. package/dist/components/virtual-scroll/virtual-scroll-scroll.js.map +1 -1
  206. package/dist/core/roving-focus.d.ts +2 -1
  207. package/dist/core/roving-focus.d.ts.map +1 -1
  208. package/dist/core/roving-focus.js.map +1 -1
  209. package/dist/core/use-popover.d.ts.map +1 -1
  210. package/dist/core/use-popover.js +6 -1
  211. package/dist/core/use-popover.js.map +1 -1
  212. package/dist/elements/choice/types.d.ts +1 -1
  213. package/dist/elements/choice/types.d.ts.map +1 -1
  214. package/dist/styles/index.css +1 -1
  215. package/dist/styles/tailwind.css +1 -0
  216. package/dist/styles/tokens.css +1 -1
  217. package/package.json +1 -1
  218. package/dist/components/drawer/client-types.d.ts +0 -99
  219. package/dist/components/drawer/client-types.d.ts.map +0 -1
  220. package/dist/components/drawer/client-types.js +0 -1
  221. package/dist/components/enhance/internal/read-box.d.ts +0 -3
  222. package/dist/components/enhance/internal/read-box.d.ts.map +0 -1
  223. package/dist/components/enhance/internal/read-box.js +0 -7
  224. package/dist/components/enhance/internal/read-box.js.map +0 -1
  225. package/dist/components/header/use-header-scroll-state.d.ts +0 -4
  226. package/dist/components/header/use-header-scroll-state.d.ts.map +0 -1
  227. package/dist/components/header/use-header-scroll-state.js +0 -83
  228. package/dist/components/header/use-header-scroll-state.js.map +0 -1
  229. package/dist/components/header/use-header.d.ts +0 -4
  230. package/dist/components/header/use-header.d.ts.map +0 -1
  231. package/dist/components/header/use-header.js +0 -80
  232. package/dist/components/header/use-header.js.map +0 -1
  233. package/dist/components/stepper/Stepper.d.ts +0 -7
  234. package/dist/components/stepper/Stepper.d.ts.map +0 -1
  235. package/dist/components/stepper/Stepper.js +0 -35
  236. package/dist/components/stepper/Stepper.js.map +0 -1
  237. package/dist/components/stepper/index.d.ts +0 -3
  238. package/dist/components/stepper/index.d.ts.map +0 -1
  239. package/dist/components/stepper/index.js +0 -5
  240. package/dist/components/stepper/index.js.map +0 -1
  241. package/dist/components/stepper/types.d.ts +0 -14
  242. package/dist/components/stepper/types.d.ts.map +0 -1
  243. package/dist/components/stepper.d.ts +0 -1
  244. package/dist/components/stepper.js +0 -1
  245. /package/dist/components/{stepper → enhance}/types.js +0 -0
  246. /package/dist/components/{stepper → enhance}/types.js.map +0 -0
  247. /package/dist/components/{drawer/client-types.js.map → internal/native-check-control/types.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-header-scroll-state.d.ts","sourceRoot":"","sources":["../../../src/components/header/use-header-scroll-state.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAcpB,wBAAgB,oBAAoB,CAClC,OAAO,GAAE,2BAAgC,GACxC,0BAA0B,CAqF5B"}
@@ -1,83 +0,0 @@
1
- "use client";
2
- import { useEffect, useState } from "react";
3
- function isScrollBehavior(behavior) {
4
- return behavior === "elevate-on-scroll" || behavior === "solid-on-scroll" || behavior === "hide-on-scroll-down";
5
- }
6
- function usesIntersectionObserver(behavior) {
7
- return behavior === "elevate-on-scroll" || behavior === "solid-on-scroll";
8
- }
9
- function useHeaderScrollState(options = {}) {
10
- const {
11
- behavior = "none",
12
- disabled = false,
13
- scrollRoot: scrollRootProp,
14
- scrollRootRef,
15
- threshold = 0
16
- } = options;
17
- const scrollRoot = scrollRootProp ?? scrollRootRef?.current ?? null;
18
- const [scrolled, setScrolled] = useState(false);
19
- const [hidden, setHidden] = useState(false);
20
- useEffect(() => {
21
- if (disabled || typeof window === "undefined" || typeof document === "undefined") {
22
- return;
23
- }
24
- if (!isScrollBehavior(behavior)) {
25
- return;
26
- }
27
- if (scrollRootRef && !scrollRoot) {
28
- return;
29
- }
30
- if (usesIntersectionObserver(behavior)) {
31
- const sentinel = document.createElement("div");
32
- sentinel.setAttribute("aria-hidden", "true");
33
- sentinel.setAttribute("data-header-scroll-sentinel", "");
34
- sentinel.style.cssText = "position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none;visibility:hidden";
35
- if (scrollRoot) {
36
- scrollRoot.insertBefore(sentinel, scrollRoot.firstChild);
37
- } else {
38
- document.body.prepend(sentinel);
39
- }
40
- const rootMargin = threshold > 0 ? `-${threshold}px 0px 0px 0px` : "0px";
41
- const observer = new IntersectionObserver(
42
- (entries) => {
43
- const entry = entries[0];
44
- if (!entry) return;
45
- setScrolled(!entry.isIntersecting);
46
- },
47
- { root: scrollRoot, rootMargin, threshold: 0 }
48
- );
49
- observer.observe(sentinel);
50
- return () => {
51
- observer.disconnect();
52
- sentinel.remove();
53
- };
54
- }
55
- if (behavior === "hide-on-scroll-down") {
56
- let lastScrollTop = scrollRoot ? scrollRoot.scrollTop : window.scrollY;
57
- let ticking = false;
58
- const readScrollTop = () => scrollRoot ? scrollRoot.scrollTop : window.scrollY;
59
- const update = () => {
60
- const currentScrollTop = readScrollTop();
61
- const pastThreshold = currentScrollTop > threshold;
62
- setScrolled(pastThreshold);
63
- setHidden(pastThreshold && currentScrollTop > lastScrollTop);
64
- lastScrollTop = currentScrollTop;
65
- ticking = false;
66
- };
67
- const onScroll = () => {
68
- if (ticking) return;
69
- ticking = true;
70
- requestAnimationFrame(update);
71
- };
72
- const target = scrollRoot ?? window;
73
- target.addEventListener("scroll", onScroll, { passive: true });
74
- return () => target.removeEventListener("scroll", onScroll);
75
- }
76
- return void 0;
77
- }, [behavior, disabled, scrollRoot, scrollRootRef, threshold]);
78
- return { hidden, scrolled };
79
- }
80
- export {
81
- useHeaderScrollState
82
- };
83
- //# sourceMappingURL=use-header-scroll-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/header/use-header-scroll-state.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState } from \"react\";\nimport type {\n HeaderBehavior,\n UseHeaderScrollStateOptions,\n UseHeaderScrollStateReturn,\n} from \"./types.js\";\n\nexport type {\n HeaderBehavior,\n UseHeaderScrollStateOptions,\n UseHeaderScrollStateReturn,\n} from \"./types.js\";\n\nfunction isScrollBehavior(behavior: HeaderBehavior): boolean {\n return (\n behavior === \"elevate-on-scroll\" ||\n behavior === \"solid-on-scroll\" ||\n behavior === \"hide-on-scroll-down\"\n );\n}\n\nfunction usesIntersectionObserver(behavior: HeaderBehavior): boolean {\n return behavior === \"elevate-on-scroll\" || behavior === \"solid-on-scroll\";\n}\n\nexport function useHeaderScrollState(\n options: UseHeaderScrollStateOptions = {},\n): UseHeaderScrollStateReturn {\n const {\n behavior = \"none\",\n disabled = false,\n scrollRoot: scrollRootProp,\n scrollRootRef,\n threshold = 0,\n } = options;\n const scrollRoot = scrollRootProp ?? scrollRootRef?.current ?? null;\n const [scrolled, setScrolled] = useState(false);\n const [hidden, setHidden] = useState(false);\n\n useEffect(() => {\n if (disabled || typeof window === \"undefined\" || typeof document === \"undefined\") {\n return;\n }\n\n if (!isScrollBehavior(behavior)) {\n return;\n }\n\n if (scrollRootRef && !scrollRoot) {\n return;\n }\n\n if (usesIntersectionObserver(behavior)) {\n const sentinel = document.createElement(\"div\");\n sentinel.setAttribute(\"aria-hidden\", \"true\");\n sentinel.setAttribute(\"data-header-scroll-sentinel\", \"\");\n sentinel.style.cssText =\n \"position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none;visibility:hidden\";\n\n if (scrollRoot) {\n scrollRoot.insertBefore(sentinel, scrollRoot.firstChild);\n } else {\n document.body.prepend(sentinel);\n }\n\n const rootMargin = threshold > 0 ? `-${threshold}px 0px 0px 0px` : \"0px\";\n const observer = new IntersectionObserver(\n (entries) => {\n const entry = entries[0];\n if (!entry) return;\n setScrolled(!entry.isIntersecting);\n },\n { root: scrollRoot, rootMargin, threshold: 0 },\n );\n observer.observe(sentinel);\n\n return () => {\n observer.disconnect();\n sentinel.remove();\n };\n }\n\n if (behavior === \"hide-on-scroll-down\") {\n let lastScrollTop = scrollRoot ? scrollRoot.scrollTop : window.scrollY; // banned-read-ok: scroll handler, batched in rAF\n let ticking = false;\n\n const readScrollTop = (): number => (scrollRoot ? scrollRoot.scrollTop : window.scrollY); // banned-read-ok: scroll handler, batched in rAF\n\n const update = () => {\n const currentScrollTop = readScrollTop();\n const pastThreshold = currentScrollTop > threshold;\n setScrolled(pastThreshold);\n setHidden(pastThreshold && currentScrollTop > lastScrollTop);\n lastScrollTop = currentScrollTop;\n ticking = false;\n };\n\n const onScroll = () => {\n if (ticking) return;\n ticking = true;\n requestAnimationFrame(update);\n };\n\n const target: HTMLElement | Window = scrollRoot ?? window;\n target.addEventListener(\"scroll\", onScroll, { passive: true });\n return () => target.removeEventListener(\"scroll\", onScroll);\n }\n\n return undefined;\n }, [behavior, disabled, scrollRoot, scrollRootRef, threshold]);\n\n return { hidden, scrolled };\n}\n"],"mappings":";AAEA,SAAS,WAAW,gBAAgB;AAapC,SAAS,iBAAiB,UAAmC;AAC3D,SACE,aAAa,uBACb,aAAa,qBACb,aAAa;AAEjB;AAEA,SAAS,yBAAyB,UAAmC;AACnE,SAAO,aAAa,uBAAuB,aAAa;AAC1D;AAEO,SAAS,qBACd,UAAuC,CAAC,GACZ;AAC5B,QAAM;AAAA,IACJ,WAAW;AAAA,IACX,WAAW;AAAA,IACX,YAAY;AAAA,IACZ;AAAA,IACA,YAAY;AAAA,EACd,IAAI;AACJ,QAAM,aAAa,kBAAkB,eAAe,WAAW;AAC/D,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAE1C,YAAU,MAAM;AACd,QAAI,YAAY,OAAO,WAAW,eAAe,OAAO,aAAa,aAAa;AAChF;AAAA,IACF;AAEA,QAAI,CAAC,iBAAiB,QAAQ,GAAG;AAC/B;AAAA,IACF;AAEA,QAAI,iBAAiB,CAAC,YAAY;AAChC;AAAA,IACF;AAEA,QAAI,yBAAyB,QAAQ,GAAG;AACtC,YAAM,WAAW,SAAS,cAAc,KAAK;AAC7C,eAAS,aAAa,eAAe,MAAM;AAC3C,eAAS,aAAa,+BAA+B,EAAE;AACvD,eAAS,MAAM,UACb;AAEF,UAAI,YAAY;AACd,mBAAW,aAAa,UAAU,WAAW,UAAU;AAAA,MACzD,OAAO;AACL,iBAAS,KAAK,QAAQ,QAAQ;AAAA,MAChC;AAEA,YAAM,aAAa,YAAY,IAAI,IAAI,SAAS,mBAAmB;AACnE,YAAM,WAAW,IAAI;AAAA,QACnB,CAAC,YAAY;AACX,gBAAM,QAAQ,QAAQ,CAAC;AACvB,cAAI,CAAC,MAAO;AACZ,sBAAY,CAAC,MAAM,cAAc;AAAA,QACnC;AAAA,QACA,EAAE,MAAM,YAAY,YAAY,WAAW,EAAE;AAAA,MAC/C;AACA,eAAS,QAAQ,QAAQ;AAEzB,aAAO,MAAM;AACX,iBAAS,WAAW;AACpB,iBAAS,OAAO;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,aAAa,uBAAuB;AACtC,UAAI,gBAAgB,aAAa,WAAW,YAAY,OAAO;AAC/D,UAAI,UAAU;AAEd,YAAM,gBAAgB,MAAe,aAAa,WAAW,YAAY,OAAO;AAEhF,YAAM,SAAS,MAAM;AACnB,cAAM,mBAAmB,cAAc;AACvC,cAAM,gBAAgB,mBAAmB;AACzC,oBAAY,aAAa;AACzB,kBAAU,iBAAiB,mBAAmB,aAAa;AAC3D,wBAAgB;AAChB,kBAAU;AAAA,MACZ;AAEA,YAAM,WAAW,MAAM;AACrB,YAAI,QAAS;AACb,kBAAU;AACV,8BAAsB,MAAM;AAAA,MAC9B;AAEA,YAAM,SAA+B,cAAc;AACnD,aAAO,iBAAiB,UAAU,UAAU,EAAE,SAAS,KAAK,CAAC;AAC7D,aAAO,MAAM,OAAO,oBAAoB,UAAU,QAAQ;AAAA,IAC5D;AAEA,WAAO;AAAA,EACT,GAAG,CAAC,UAAU,UAAU,YAAY,eAAe,SAAS,CAAC;AAE7D,SAAO,EAAE,QAAQ,SAAS;AAC5B;","names":[]}
@@ -1,4 +0,0 @@
1
- import type { UseHeaderOptions, UseHeaderReturn } from "./types.js";
2
- export type { HeaderMobileMode, UseHeaderOptions, UseHeaderReturn } from "./types.js";
3
- export declare function useHeader(options?: UseHeaderOptions): UseHeaderReturn;
4
- //# sourceMappingURL=use-header.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-header.d.ts","sourceRoot":"","sources":["../../../src/components/header/use-header.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAoB,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEtF,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAatF,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,eAAe,CAuEzE"}
@@ -1,80 +0,0 @@
1
- "use client";
2
- import { useCallback, useMemo } from "react";
3
- import { useControllableState, useId } from "@gunkin/uiify/hooks";
4
- function isDrawerMobileMode(mobileMode) {
5
- return mobileMode === "drawer" || mobileMode === "sheet" || mobileMode === "fullscreen";
6
- }
7
- function exposesNavControls(mobileMode, open) {
8
- if (mobileMode === "none") return false;
9
- if (isDrawerMobileMode(mobileMode)) return true;
10
- if (mobileMode === "collapse") return true;
11
- return open;
12
- }
13
- function useHeader(options = {}) {
14
- const {
15
- closeOnSelect = true,
16
- defaultOpen = false,
17
- mobileMode = "none",
18
- onOpenChange,
19
- open: controlledOpen
20
- } = options;
21
- const navId = useId();
22
- const toggleId = useId();
23
- const [open, setOpen] = useControllableState({
24
- defaultValue: defaultOpen,
25
- onChange: onOpenChange,
26
- value: controlledOpen
27
- });
28
- const toggle = useCallback(() => {
29
- setOpen((current) => !current);
30
- }, [setOpen]);
31
- const close = useCallback(() => {
32
- setOpen(false);
33
- }, [setOpen]);
34
- const getToggleProps = useCallback(
35
- (props) => ({
36
- ...props,
37
- id: toggleId,
38
- ...exposesNavControls(mobileMode, open) ? { "aria-controls": navId } : {},
39
- "aria-expanded": open
40
- }),
41
- [mobileMode, navId, open, toggleId]
42
- );
43
- const getMobileNavProps = useCallback(
44
- (props) => ({
45
- ...props,
46
- id: navId
47
- }),
48
- [navId]
49
- );
50
- return useMemo(
51
- () => ({
52
- close,
53
- closeOnSelect,
54
- getMobileNavProps,
55
- getToggleProps,
56
- mobileMode,
57
- navId,
58
- open,
59
- setOpen,
60
- toggle,
61
- toggleId
62
- }),
63
- [
64
- close,
65
- closeOnSelect,
66
- getMobileNavProps,
67
- getToggleProps,
68
- mobileMode,
69
- navId,
70
- open,
71
- setOpen,
72
- toggle,
73
- toggleId
74
- ]
75
- );
76
- }
77
- export {
78
- useHeader
79
- };
80
- //# sourceMappingURL=use-header.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/header/use-header.ts"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useMemo } from \"react\";\nimport type { ButtonHTMLAttributes, HTMLAttributes } from \"react\";\nimport { useControllableState, useId } from \"@gunkin/uiify/hooks\";\nimport type { HeaderMobileMode, UseHeaderOptions, UseHeaderReturn } from \"./types.js\";\n\nexport type { HeaderMobileMode, UseHeaderOptions, UseHeaderReturn } from \"./types.js\";\n\nfunction isDrawerMobileMode(mobileMode: HeaderMobileMode): boolean {\n return mobileMode === \"drawer\" || mobileMode === \"sheet\" || mobileMode === \"fullscreen\";\n}\n\nfunction exposesNavControls(mobileMode: HeaderMobileMode, open: boolean): boolean {\n if (mobileMode === \"none\") return false;\n if (isDrawerMobileMode(mobileMode)) return true;\n if (mobileMode === \"collapse\") return true;\n return open;\n}\n\nexport function useHeader(options: UseHeaderOptions = {}): UseHeaderReturn {\n const {\n closeOnSelect = true,\n defaultOpen = false,\n mobileMode = \"none\",\n onOpenChange,\n open: controlledOpen,\n } = options;\n\n const navId = useId();\n const toggleId = useId();\n const [open, setOpen] = useControllableState({\n defaultValue: defaultOpen,\n onChange: onOpenChange,\n value: controlledOpen,\n });\n\n const toggle = useCallback(() => {\n setOpen((current) => !current);\n }, [setOpen]);\n\n const close = useCallback(() => {\n setOpen(false);\n }, [setOpen]);\n\n const getToggleProps = useCallback(\n <T extends ButtonHTMLAttributes<HTMLButtonElement>>(props?: T): T =>\n ({\n ...props,\n id: toggleId,\n ...(exposesNavControls(mobileMode, open) ? { \"aria-controls\": navId } : {}),\n \"aria-expanded\": open,\n }) as T,\n [mobileMode, navId, open, toggleId],\n );\n\n const getMobileNavProps = useCallback(\n <T extends HTMLAttributes<HTMLElement>>(props?: T): T =>\n ({\n ...props,\n id: navId,\n }) as T,\n [navId],\n );\n\n return useMemo(\n () => ({\n close,\n closeOnSelect,\n getMobileNavProps,\n getToggleProps,\n mobileMode,\n navId,\n open,\n setOpen,\n toggle,\n toggleId,\n }),\n [\n close,\n closeOnSelect,\n getMobileNavProps,\n getToggleProps,\n mobileMode,\n navId,\n open,\n setOpen,\n toggle,\n toggleId,\n ],\n );\n}\n"],"mappings":";AAEA,SAAS,aAAa,eAAe;AAErC,SAAS,sBAAsB,aAAa;AAK5C,SAAS,mBAAmB,YAAuC;AACjE,SAAO,eAAe,YAAY,eAAe,WAAW,eAAe;AAC7E;AAEA,SAAS,mBAAmB,YAA8B,MAAwB;AAChF,MAAI,eAAe,OAAQ,QAAO;AAClC,MAAI,mBAAmB,UAAU,EAAG,QAAO;AAC3C,MAAI,eAAe,WAAY,QAAO;AACtC,SAAO;AACT;AAEO,SAAS,UAAU,UAA4B,CAAC,GAAoB;AACzE,QAAM;AAAA,IACJ,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd,aAAa;AAAA,IACb;AAAA,IACA,MAAM;AAAA,EACR,IAAI;AAEJ,QAAM,QAAQ,MAAM;AACpB,QAAM,WAAW,MAAM;AACvB,QAAM,CAAC,MAAM,OAAO,IAAI,qBAAqB;AAAA,IAC3C,cAAc;AAAA,IACd,UAAU;AAAA,IACV,OAAO;AAAA,EACT,CAAC;AAED,QAAM,SAAS,YAAY,MAAM;AAC/B,YAAQ,CAAC,YAAY,CAAC,OAAO;AAAA,EAC/B,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,QAAQ,YAAY,MAAM;AAC9B,YAAQ,KAAK;AAAA,EACf,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,iBAAiB;AAAA,IACrB,CAAoD,WACjD;AAAA,MACC,GAAG;AAAA,MACH,IAAI;AAAA,MACJ,GAAI,mBAAmB,YAAY,IAAI,IAAI,EAAE,iBAAiB,MAAM,IAAI,CAAC;AAAA,MACzE,iBAAiB;AAAA,IACnB;AAAA,IACF,CAAC,YAAY,OAAO,MAAM,QAAQ;AAAA,EACpC;AAEA,QAAM,oBAAoB;AAAA,IACxB,CAAwC,WACrC;AAAA,MACC,GAAG;AAAA,MACH,IAAI;AAAA,IACN;AAAA,IACF,CAAC,KAAK;AAAA,EACR;AAEA,SAAO;AAAA,IACL,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -1,7 +0,0 @@
1
- import type { ReactElement } from "react";
2
- import type { StepperProps } from "./types.js";
3
- export declare function Stepper({ id, items, defaultValue, orientation, className, }: StepperProps): ReactElement;
4
- export declare namespace Stepper {
5
- var displayName: string;
6
- }
7
- //# sourceMappingURL=Stepper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Stepper.d.ts","sourceRoot":"","sources":["../../../src/components/stepper/Stepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,wBAAgB,OAAO,CAAC,EACtB,EAAE,EACF,KAAK,EACL,YAAY,EACZ,WAA0B,EAC1B,SAAS,GACV,EAAE,YAAY,GAAG,YAAY,CAsB7B;yBA5Be,OAAO"}
@@ -1,35 +0,0 @@
1
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
- import { ChoiceGroup } from "../internal/choice-family/ChoiceGroup.js";
3
- function Stepper({
4
- id,
5
- items,
6
- defaultValue,
7
- orientation = "horizontal",
8
- className
9
- }) {
10
- return /* @__PURE__ */ jsx(
11
- ChoiceGroup,
12
- {
13
- ...className !== void 0 ? { className } : {},
14
- id,
15
- items,
16
- isChecked: (item) => item.value === defaultValue,
17
- itemPart: "step",
18
- itemWrapperAttributes: (item) => ({ "data-complete": item.complete ? "" : void 0 }),
19
- kind: "single",
20
- labelPart: true,
21
- namespace: "stepper",
22
- orientation,
23
- renderLabel: (item) => /* @__PURE__ */ jsxs(Fragment, { children: [
24
- /* @__PURE__ */ jsx("span", { children: item.label }),
25
- item.description ? /* @__PURE__ */ jsx("small", { children: item.description }) : null
26
- ] }),
27
- renderPanel: (item) => item.panel
28
- }
29
- );
30
- }
31
- Stepper.displayName = "Stepper";
32
- export {
33
- Stepper
34
- };
35
- //# sourceMappingURL=Stepper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/stepper/Stepper.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\nimport { ChoiceGroup } from \"../internal/choice-family/ChoiceGroup.js\";\nimport type { StepperItem, StepperProps } from \"./types.js\";\n\nexport function Stepper({\n id,\n items,\n defaultValue,\n orientation = \"horizontal\",\n className,\n}: StepperProps): ReactElement {\n return (\n <ChoiceGroup<StepperItem>\n {...(className !== undefined ? { className } : {})}\n id={id}\n items={items}\n isChecked={(item) => item.value === defaultValue}\n itemPart=\"step\"\n itemWrapperAttributes={(item) => ({ \"data-complete\": item.complete ? \"\" : undefined })}\n kind=\"single\"\n labelPart\n namespace=\"stepper\"\n orientation={orientation}\n renderLabel={(item) => (\n <>\n <span>{item.label}</span>\n {item.description ? <small>{item.description}</small> : null}\n </>\n )}\n renderPanel={(item) => item.panel}\n />\n );\n}\nStepper.displayName = \"Stepper\";\n"],"mappings":"AAwBQ,mBACE,KADF;AAvBR,SAAS,mBAAmB;AAGrB,SAAS,QAAQ;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AACF,GAA+B;AAC7B,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAI,cAAc,SAAY,EAAE,UAAU,IAAI,CAAC;AAAA,MAChD;AAAA,MACA;AAAA,MACA,WAAW,CAAC,SAAS,KAAK,UAAU;AAAA,MACpC,UAAS;AAAA,MACT,uBAAuB,CAAC,UAAU,EAAE,iBAAiB,KAAK,WAAW,KAAK,OAAU;AAAA,MACpF,MAAK;AAAA,MACL,WAAS;AAAA,MACT,WAAU;AAAA,MACV;AAAA,MACA,aAAa,CAAC,SACZ,iCACE;AAAA,4BAAC,UAAM,eAAK,OAAM;AAAA,QACjB,KAAK,cAAc,oBAAC,WAAO,eAAK,aAAY,IAAW;AAAA,SAC1D;AAAA,MAEF,aAAa,CAAC,SAAS,KAAK;AAAA;AAAA,EAC9B;AAEJ;AACA,QAAQ,cAAc;","names":[]}
@@ -1,3 +0,0 @@
1
- export { Stepper } from "./Stepper.js";
2
- export type { StepperItem, StepperProps } from "./types.js";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/stepper/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -1,5 +0,0 @@
1
- import { Stepper } from "./Stepper.js";
2
- export {
3
- Stepper
4
- };
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/stepper/index.ts"],"sourcesContent":["export { Stepper } from \"./Stepper.js\";\nexport type { StepperItem, StepperProps } from \"./types.js\";\n"],"mappings":"AAAA,SAAS,eAAe;","names":[]}
@@ -1,14 +0,0 @@
1
- import type { ReactNode } from "react";
2
- import type { ChoicePanelItem, ChoiceOrientation } from "../internal/choice-family/types.js";
3
- export interface StepperItem extends ChoicePanelItem {
4
- readonly description?: ReactNode;
5
- readonly complete?: boolean;
6
- }
7
- export interface StepperProps {
8
- readonly id: string;
9
- readonly items: readonly StepperItem[];
10
- readonly defaultValue?: string;
11
- readonly orientation?: ChoiceOrientation;
12
- readonly className?: string;
13
- }
14
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/stepper/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAE7F,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B"}
@@ -1 +0,0 @@
1
- export * from "./stepper/index.js";
@@ -1 +0,0 @@
1
- export * from "./stepper/index.js";
File without changes