thread-ui 0.4.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -2
- package/dist/components/data-display/filter-controls/filter-controls.d.ts +10 -0
- package/dist/components/data-display/filter-controls/filter-controls.js +39 -0
- package/dist/components/data-display/filter-controls/filter-controls.js.map +1 -0
- package/dist/components/data-display/filter-controls/filter-controls.types.d.ts +75 -0
- package/dist/components/data-display/filter-controls/filter-controls.types.js +2 -0
- package/dist/components/data-display/filter-controls/filter-controls.types.js.map +1 -0
- package/dist/components/data-display/filter-controls/index.d.ts +2 -0
- package/dist/components/data-display/filter-controls/index.js +2 -0
- package/dist/components/data-display/filter-controls/index.js.map +1 -0
- package/dist/components/data-display/filter-controls/use-filter-controls.d.ts +23 -0
- package/dist/components/data-display/filter-controls/use-filter-controls.js +89 -0
- package/dist/components/data-display/filter-controls/use-filter-controls.js.map +1 -0
- package/dist/components/data-display/index.d.ts +2 -0
- package/dist/components/data-display/index.js +3 -0
- package/dist/components/data-display/index.js.map +1 -0
- package/dist/components/data-display/sort-controls/index.d.ts +3 -0
- package/dist/components/data-display/sort-controls/index.js +3 -0
- package/dist/components/data-display/sort-controls/index.js.map +1 -0
- package/dist/components/data-display/sort-controls/sort-controls.d.ts +11 -0
- package/dist/components/data-display/sort-controls/sort-controls.js +51 -0
- package/dist/components/data-display/sort-controls/sort-controls.js.map +1 -0
- package/dist/components/data-display/sort-controls/sort-controls.types.d.ts +62 -0
- package/dist/components/data-display/sort-controls/sort-controls.types.js +2 -0
- package/dist/components/data-display/sort-controls/sort-controls.types.js.map +1 -0
- package/dist/components/data-display/sort-controls/use-sort-controls.d.ts +23 -0
- package/dist/components/data-display/sort-controls/use-sort-controls.js +94 -0
- package/dist/components/data-display/sort-controls/use-sort-controls.js.map +1 -0
- package/dist/components/form-elements/{dropdown → dropdowns/dropdown}/dropdown.d.ts +1 -1
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.js +41 -0
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.js.map +1 -0
- package/dist/components/form-elements/{dropdown → dropdowns/dropdown}/dropdown.types.d.ts +4 -9
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.types.js.map +1 -0
- package/dist/components/form-elements/dropdowns/dropdown/index.js.map +1 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.d.ts +8 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.js +46 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.js.map +1 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.types.d.ts +25 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.types.js +2 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.types.js.map +1 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/index.d.ts +2 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/index.js +2 -0
- package/dist/components/form-elements/dropdowns/dropdown-base/index.js.map +1 -0
- package/dist/components/form-elements/dropdowns/index.d.ts +2 -0
- package/dist/components/form-elements/dropdowns/index.js +3 -0
- package/dist/components/form-elements/dropdowns/index.js.map +1 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/index.d.ts +2 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/index.js +2 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/index.js.map +1 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.d.ts +15 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.js +55 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.js.map +1 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.types.d.ts +25 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.types.js +2 -0
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.types.js.map +1 -0
- package/dist/components/form-elements/form-label/form-label.d.ts +1 -1
- package/dist/components/form-elements/form-label/form-label.js +34 -8
- package/dist/components/form-elements/form-label/form-label.js.map +1 -1
- package/dist/components/form-elements/form-label/form-label.types.d.ts +3 -0
- package/dist/components/form-elements/index.d.ts +2 -2
- package/dist/components/form-elements/index.js +2 -2
- package/dist/components/form-elements/index.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/layouts/column-layout/column-layout.d.ts +1 -1
- package/dist/components/layouts/column-layout/column-layout.js +5 -4
- package/dist/components/layouts/column-layout/column-layout.js.map +1 -1
- package/dist/components/layouts/column-layout/column-layout.types.d.ts +5 -2
- package/dist/components/layouts/column-layout/column-skeleton/column-skeleton.js +2 -1
- package/dist/components/layouts/column-layout/column-skeleton/column-skeleton.js.map +1 -1
- package/dist/components/layouts/column-layout/column-skeleton/column-skeleton.types.d.ts +1 -1
- package/dist/components/layouts/container/container.d.ts +11 -0
- package/dist/components/layouts/container/container.js +28 -0
- package/dist/components/layouts/container/container.js.map +1 -0
- package/dist/components/layouts/container/container.types.d.ts +11 -0
- package/dist/components/layouts/container/container.types.js +2 -0
- package/dist/components/layouts/container/container.types.js.map +1 -0
- package/dist/components/layouts/container/index.d.ts +2 -0
- package/dist/components/layouts/container/index.js +2 -0
- package/dist/components/layouts/container/index.js.map +1 -0
- package/dist/components/layouts/index.d.ts +1 -0
- package/dist/components/layouts/index.js +1 -0
- package/dist/components/layouts/index.js.map +1 -1
- package/dist/components/layouts/layout-component.types.d.ts +9 -0
- package/dist/components/layouts/layout-component.types.js +2 -0
- package/dist/components/layouts/layout-component.types.js.map +1 -0
- package/dist/components/layouts/layout-wrapper.d.ts +7 -0
- package/dist/components/layouts/layout-wrapper.js +9 -0
- package/dist/components/layouts/layout-wrapper.js.map +1 -0
- package/dist/components/layouts/masonry-layout/masonry-layout.d.ts +1 -1
- package/dist/components/layouts/masonry-layout/masonry-layout.js +5 -5
- package/dist/components/layouts/masonry-layout/masonry-layout.js.map +1 -1
- package/dist/components/layouts/masonry-layout/masonry-layout.types.d.ts +3 -2
- package/dist/components/media/info-card/info-card.js +3 -4
- package/dist/components/media/info-card/info-card.js.map +1 -1
- package/dist/components/navigation/nav-menu/items/base-item/base-item.d.ts +1 -1
- package/dist/components/navigation/nav-menu/items/base-item/base-item.js +1 -1
- package/dist/components/navigation/nav-menu/items/base-item/base-item.js.map +1 -1
- package/dist/components/navigation/side-nav/side-nav-item/side-nav-item.js +1 -1
- package/dist/components/typography/typography.d.ts +10 -8
- package/dist/components/typography/typography.js +42 -8
- package/dist/components/typography/typography.js.map +1 -1
- package/dist/components/ui/button/button-recipe.js +90 -6
- package/dist/components/ui/button/button-recipe.js.map +1 -1
- package/dist/components/ui/button/button.d.ts +1 -1
- package/dist/components/ui/button/button.js +2 -1
- package/dist/components/ui/button/button.js.map +1 -1
- package/dist/components/ui/button/button.types.d.ts +3 -1
- package/dist/components/ui/icon/icon.d.ts +1 -1
- package/dist/components/ui/icon/icon.js +1 -1
- package/dist/components/ui/icon-button/icon-button.d.ts +1 -1
- package/dist/components/ui/icon-button/icon-button.js +4 -7
- package/dist/components/ui/icon-button/icon-button.js.map +1 -1
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.js +1 -0
- package/dist/components/ui/index.js.map +1 -1
- package/dist/components/ui/loaders/dots-loader/dots-loader.d.ts +8 -0
- package/dist/components/ui/loaders/dots-loader/dots-loader.js +59 -0
- package/dist/components/ui/loaders/dots-loader/dots-loader.js.map +1 -0
- package/dist/components/ui/loaders/dots-loader/dots-loader.types.d.ts +2 -0
- package/dist/components/ui/loaders/dots-loader/dots-loader.types.js +2 -0
- package/dist/components/ui/loaders/dots-loader/dots-loader.types.js.map +1 -0
- package/dist/components/ui/loaders/dots-loader/index.d.ts +2 -0
- package/dist/components/ui/loaders/dots-loader/index.js +2 -0
- package/dist/components/ui/loaders/dots-loader/index.js.map +1 -0
- package/dist/components/ui/loaders/index.d.ts +5 -0
- package/dist/components/ui/loaders/index.js +5 -0
- package/dist/components/ui/loaders/index.js.map +1 -0
- package/dist/components/ui/loaders/loaders.types.d.ts +9 -0
- package/dist/components/ui/loaders/loaders.types.js +2 -0
- package/dist/components/ui/loaders/loaders.types.js.map +1 -0
- package/dist/components/ui/loaders/skeleton/index.d.ts +2 -0
- package/dist/components/ui/loaders/skeleton/index.js +2 -0
- package/dist/components/ui/loaders/skeleton/index.js.map +1 -0
- package/dist/components/ui/loaders/skeleton/skeleton.d.ts +10 -0
- package/dist/components/ui/loaders/skeleton/skeleton.js +31 -0
- package/dist/components/ui/loaders/skeleton/skeleton.js.map +1 -0
- package/dist/components/ui/loaders/skeleton/skeleton.types.d.ts +8 -0
- package/dist/components/ui/loaders/skeleton/skeleton.types.js +2 -0
- package/dist/components/ui/loaders/skeleton/skeleton.types.js.map +1 -0
- package/dist/components/ui/loaders/skeleton-layout/index.d.ts +2 -0
- package/dist/components/ui/loaders/skeleton-layout/index.js +2 -0
- package/dist/components/ui/loaders/skeleton-layout/index.js.map +1 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.d.ts +14 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.js +23 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.js.map +1 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.types.d.ts +8 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.types.js +2 -0
- package/dist/components/ui/loaders/skeleton-layout/skeleton-layout.types.js.map +1 -0
- package/dist/components/ui/loaders/spin-loader/index.d.ts +2 -0
- package/dist/components/ui/loaders/spin-loader/index.js +2 -0
- package/dist/components/ui/loaders/spin-loader/index.js.map +1 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.d.ts +8 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.js +40 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.js.map +1 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.types.d.ts +2 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.types.js +2 -0
- package/dist/components/ui/loaders/spin-loader/spin-loader.types.js.map +1 -0
- package/dist/components/ui/modal/components/modal-content.js +3 -3
- package/dist/components/ui/modal/components/modal-content.js.map +1 -1
- package/dist/components/ui/modal/modal.js +8 -2
- package/dist/components/ui/modal/modal.js.map +1 -1
- package/dist/components/ui/modal/modal.types.d.ts +2 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +4 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-click-outside/index.d.ts +1 -0
- package/dist/hooks/use-click-outside/index.js +2 -0
- package/dist/hooks/use-click-outside/index.js.map +1 -0
- package/dist/hooks/use-click-outside/use-click-outside.d.ts +10 -0
- package/dist/hooks/use-click-outside/use-click-outside.js +26 -0
- package/dist/hooks/use-click-outside/use-click-outside.js.map +1 -0
- package/dist/hooks/use-dismiss/index.d.ts +1 -0
- package/dist/hooks/use-dismiss/index.js +2 -0
- package/dist/hooks/use-dismiss/index.js.map +1 -0
- package/dist/hooks/use-dismiss/use-dismiss.d.ts +13 -0
- package/dist/hooks/use-dismiss/use-dismiss.js +42 -0
- package/dist/hooks/use-dismiss/use-dismiss.js.map +1 -0
- package/dist/hooks/use-pathname/index.js.map +1 -0
- package/dist/hooks/use-pathname/use-pathname.d.ts +8 -0
- package/dist/{utils/hooks → hooks}/use-pathname/use-pathname.js +7 -0
- package/dist/hooks/use-pathname/use-pathname.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.d.ts +2 -0
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.js +12 -0
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.js.map +1 -0
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.types.d.ts +9 -0
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.types.js +2 -0
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.types.js.map +1 -0
- package/dist/internal-components/conditional-wrapper/index.d.ts +2 -0
- package/dist/internal-components/conditional-wrapper/index.js +2 -0
- package/dist/internal-components/conditional-wrapper/index.js.map +1 -0
- package/dist/internal-components/image/render-image.js.map +1 -1
- package/dist/internal-components/index.d.ts +3 -1
- package/dist/internal-components/index.js +3 -1
- package/dist/internal-components/index.js.map +1 -1
- package/dist/internal-components/optional-icon-button/index.d.ts +2 -0
- package/dist/internal-components/optional-icon-button/index.js +2 -0
- package/dist/internal-components/optional-icon-button/index.js.map +1 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.d.ts +2 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.js +9 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.js.map +1 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.types.d.ts +4 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.types.js +2 -0
- package/dist/internal-components/optional-icon-button/optional-icon-button.types.js.map +1 -0
- package/dist/styled-system/recipes/button.d.ts +2 -1
- package/dist/styled-system/recipes/button.mjs +114 -1
- package/dist/styled-system/styles.css +1 -1
- package/dist/styled-system/types/prop-type.d.ts +1 -1
- package/dist/styles/panda.css +1 -1
- package/dist/types/colors/utility-color-options.types.d.ts +2 -0
- package/dist/types/image/image.types.d.ts +2 -0
- package/dist/types/theme/theme.types.d.ts +24 -10
- package/dist/types/utility/deep-partial.types.d.ts +1 -0
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.js +0 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/theme-utilities/get-utility-icon-size/get-utility-icon-size.js +4 -4
- package/dist/utils/theme-utilities/get-utility-icon-size/get-utility-icon-size.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/form-elements/dropdown/dropdown.js +0 -83
- package/dist/components/form-elements/dropdown/dropdown.js.map +0 -1
- package/dist/components/form-elements/dropdown/dropdown.types.js.map +0 -1
- package/dist/components/form-elements/dropdown/index.js.map +0 -1
- package/dist/utils/hooks/index.d.ts +0 -2
- package/dist/utils/hooks/index.js +0 -3
- package/dist/utils/hooks/index.js.map +0 -1
- package/dist/utils/hooks/use-outside-close-click/index.d.ts +0 -1
- package/dist/utils/hooks/use-outside-close-click/index.js +0 -2
- package/dist/utils/hooks/use-outside-close-click/index.js.map +0 -1
- package/dist/utils/hooks/use-outside-close-click/use-outside-close-click.d.ts +0 -2
- package/dist/utils/hooks/use-outside-close-click/use-outside-close-click.js +0 -16
- package/dist/utils/hooks/use-outside-close-click/use-outside-close-click.js.map +0 -1
- package/dist/utils/hooks/use-pathname/index.js.map +0 -1
- package/dist/utils/hooks/use-pathname/use-pathname.d.ts +0 -1
- package/dist/utils/hooks/use-pathname/use-pathname.js.map +0 -1
- /package/dist/components/form-elements/{dropdown → dropdowns/dropdown}/dropdown.types.js +0 -0
- /package/dist/components/form-elements/{dropdown → dropdowns/dropdown}/index.d.ts +0 -0
- /package/dist/components/form-elements/{dropdown → dropdowns/dropdown}/index.js +0 -0
- /package/dist/{utils/hooks → hooks}/use-pathname/index.d.ts +0 -0
- /package/dist/{utils/hooks → hooks}/use-pathname/index.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/use-dismiss/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Calls `onClose` when a click is detected outside of `elementRef` or when `Escape` is pressed.
|
|
4
|
+
* Each trigger can be independently disabled. Only active when `isOpen` is true.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* const ref = useRef<HTMLDivElement>(null);
|
|
8
|
+
* useDismiss(ref, isOpen, () => setIsOpen(false));
|
|
9
|
+
*
|
|
10
|
+
* // Disable outside click, keep Escape
|
|
11
|
+
* useDismiss(ref, isOpen, () => setIsOpen(false), true, false);
|
|
12
|
+
*/
|
|
13
|
+
export declare const useDismiss: (elementRef: RefObject<HTMLElement | null>, isOpen: boolean, onClose: () => void, isClickDisabled?: boolean, isEscDisabled?: boolean) => void;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { useEffect, useRef } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Calls `onClose` when a click is detected outside of `elementRef` or when `Escape` is pressed.
|
|
5
|
+
* Each trigger can be independently disabled. Only active when `isOpen` is true.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const ref = useRef<HTMLDivElement>(null);
|
|
9
|
+
* useDismiss(ref, isOpen, () => setIsOpen(false));
|
|
10
|
+
*
|
|
11
|
+
* // Disable outside click, keep Escape
|
|
12
|
+
* useDismiss(ref, isOpen, () => setIsOpen(false), true, false);
|
|
13
|
+
*/
|
|
14
|
+
export const useDismiss = (elementRef, isOpen, onClose, isClickDisabled = false, isEscDisabled = false) => {
|
|
15
|
+
const onCloseRef = useRef(onClose);
|
|
16
|
+
onCloseRef.current = onClose;
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
if (!isOpen || (isClickDisabled && isEscDisabled))
|
|
19
|
+
return;
|
|
20
|
+
const handleClickOutside = (e) => {
|
|
21
|
+
if (elementRef.current && !elementRef.current.contains(e.target)) {
|
|
22
|
+
onCloseRef.current();
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
const handleKeyDown = (e) => {
|
|
26
|
+
if (e.key === 'Escape') {
|
|
27
|
+
onCloseRef.current();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
if (!isClickDisabled) {
|
|
31
|
+
document.addEventListener('mousedown', handleClickOutside);
|
|
32
|
+
}
|
|
33
|
+
if (!isEscDisabled) {
|
|
34
|
+
document.addEventListener('keydown', handleKeyDown);
|
|
35
|
+
}
|
|
36
|
+
return () => {
|
|
37
|
+
document.removeEventListener('mousedown', handleClickOutside);
|
|
38
|
+
document.removeEventListener('keydown', handleKeyDown);
|
|
39
|
+
};
|
|
40
|
+
}, [elementRef, isOpen, isClickDisabled, isEscDisabled]);
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=use-dismiss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-dismiss.js","sourceRoot":"","sources":["../../../src/hooks/use-dismiss/use-dismiss.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAa,MAAM,OAAO,CAAC;AAErD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACzB,UAAyC,EACzC,MAAe,EACf,OAAmB,EACnB,kBAA2B,KAAK,EAChC,gBAAyB,KAAK,EAC7B,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACnC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAE7B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,IAAI,aAAa,CAAC;YAAE,OAAO;QAE1D,MAAM,kBAAkB,GAAG,CAAC,CAAa,EAAE,EAAE;YAC5C,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAc,CAAC,EAAE,CAAC;gBAC1E,UAAU,CAAC,OAAO,EAAE,CAAC;YACtB,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,CAAC,CAAgB,EAAE,EAAE;YAC1C,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACxB,UAAU,CAAC,OAAO,EAAE,CAAC;YACtB,CAAC;QACF,CAAC,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,GAAG,EAAE;YACX,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;YAC9D,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/use-pathname/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the current `window.location.pathname` and updates on `popstate` events.
|
|
3
|
+
* Initializes as an empty string on the server to avoid hydration mismatches.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* const pathname = usePathname();
|
|
7
|
+
*/
|
|
8
|
+
export declare const usePathname: () => string;
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useState, useEffect } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Returns the current `window.location.pathname` and updates on `popstate` events.
|
|
5
|
+
* Initializes as an empty string on the server to avoid hydration mismatches.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const pathname = usePathname();
|
|
9
|
+
*/
|
|
3
10
|
export const usePathname = () => {
|
|
4
11
|
const [pathname, setPathname] = useState(''); // Safe initial state
|
|
5
12
|
useEffect(() => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-pathname.js","sourceRoot":"","sources":["../../../src/hooks/use-pathname/use-pathname.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB;IAEnE,SAAS,CAAC,GAAG,EAAE;QACd,mCAAmC;QACnC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,oBAAoB,GAAG,GAAG,EAAE;YACjC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;QAC1D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;IAC3E,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,qBAAqB,CAAC;AAC7B,gCAAgC;AAChC,OAAO,oBAAoB,CAAC;AAE5B,oBAAoB;AACpB,cAAc,cAAc,CAAC;AAE7B,eAAe;AACf,cAAc,SAAS,CAAC;AAExB,eAAe;AACf,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,qBAAqB,CAAC;AAC7B,gCAAgC;AAChC,OAAO,oBAAoB,CAAC;AAE5B,oBAAoB;AACpB,cAAc,cAAc,CAAC;AAE7B,eAAe;AACf,cAAc,SAAS,CAAC;AAExB,eAAe;AACf,cAAc,SAAS,CAAC;AAExB,eAAe;AACf,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export const ConditionalWrapper = ({ children, wrapper, wrapperProps = {}, fallbackWrapper, }) => {
|
|
3
|
+
const resolved = wrapper ?? fallbackWrapper?.wrapper ?? 'fragment';
|
|
4
|
+
const resolvedProps = wrapper ? wrapperProps : (fallbackWrapper?.wrapperProps ?? {});
|
|
5
|
+
if (resolved === 'fragment')
|
|
6
|
+
return _jsx(_Fragment, { children: children });
|
|
7
|
+
if (resolved === 'div')
|
|
8
|
+
return _jsx("div", { ...resolvedProps, children: children });
|
|
9
|
+
const Wrapper = resolved;
|
|
10
|
+
return _jsx(Wrapper, { ...resolvedProps, children: children });
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=conditional-wrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditional-wrapper.js","sourceRoot":"","sources":["../../../src/internal-components/conditional-wrapper/conditional-wrapper.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAClC,QAAQ,EACR,OAAO,EACP,YAAY,GAAG,EAAE,EACjB,eAAe,GACU,EAAE,EAAE;IAC7B,MAAM,QAAQ,GAAG,OAAO,IAAI,eAAe,EAAE,OAAO,IAAI,UAAU,CAAC;IACnE,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;IAErF,IAAI,QAAQ,KAAK,UAAU;QAAE,OAAO,4BAAG,QAAQ,GAAI,CAAC;IACpD,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,iBAAS,aAAa,YAAG,QAAQ,GAAO,CAAC;IACxE,MAAM,OAAO,GAAG,QAAQ,CAAC;IACzB,OAAO,KAAC,OAAO,OAAM,aAAqB,YAAG,QAAQ,GAAW,CAAC;AAClE,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ComponentType, ReactNode } from 'react';
|
|
2
|
+
type WrapperType = ComponentType<any> | 'div' | 'fragment';
|
|
3
|
+
export type ConditionalWrapperProps = {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
wrapper?: WrapperType;
|
|
6
|
+
wrapperProps?: Record<string, unknown>;
|
|
7
|
+
fallbackWrapper?: Omit<ConditionalWrapperProps, 'children' | 'fallbackWrapper'>;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditional-wrapper.types.js","sourceRoot":"","sources":["../../../src/internal-components/conditional-wrapper/conditional-wrapper.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal-components/conditional-wrapper/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-image.js","sourceRoot":"","sources":["../../../src/internal-components/image/render-image.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAiB,cAAc,EAAgB,MAAM,OAAO,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC,CAAC,kBAAkB;AAE5D,MAAM,CAAC,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"render-image.js","sourceRoot":"","sources":["../../../src/internal-components/image/render-image.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAiB,cAAc,EAAgB,MAAM,OAAO,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC,CAAC,kBAAkB;AAE5D,MAAM,CAAC,MAAM,WAAW,GAAG,CAC1B,UAAsB,EACtB,MAAsB,EACtB,SAAkB,EACH,EAAE;IACjB,IAAI,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,UAAU,CAAC,KAA0C,CAAC;QACxE,MAAM,QAAQ,GAAsC;YACnD,GAAG,SAAS;YACZ,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;YAC7C,KAAK,EAAE;gBACN,GAAG,SAAS,CAAC,KAAK;gBAClB,GAAG,MAAM;aACT;SACD,CAAC;QACF,OAAO,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC;QACtF,OAAO,CACN,cACC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,EACtC,KAAK,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,KACrC,SAAS,GACZ,CACF,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC5D,OAAO,cAAK,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,eAAe,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAI,CAAC;AACvE,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal-components/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal-components/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal-components/optional-icon-button/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Button, IconButton } from '../../components';
|
|
3
|
+
import { ConditionalWrapper } from '../conditional-wrapper';
|
|
4
|
+
export const OptionalIconButton = (props) => {
|
|
5
|
+
const { name, children, ...buttonProps } = props;
|
|
6
|
+
const iconButtonProps = name ? { ...buttonProps, name } : undefined;
|
|
7
|
+
return (_jsx(ConditionalWrapper, { wrapper: iconButtonProps ? IconButton : undefined, wrapperProps: iconButtonProps, fallbackWrapper: { wrapper: Button, wrapperProps: buttonProps }, children: children }));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=optional-icon-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional-icon-button.js","sourceRoot":"","sources":["../../../src/internal-components/optional-icon-button/optional-icon-button.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAA8B,EAAE,EAAE;IACpE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;IAEjD,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpE,OAAO,CACN,KAAC,kBAAkB,IAClB,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EACjD,YAAY,EAAE,eAAe,EAC7B,eAAe,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,YAE9D,QAAQ,GACW,CACrB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional-icon-button.types.js","sourceRoot":"","sources":["../../../src/internal-components/optional-icon-button/optional-icon-button.types.ts"],"names":[],"mappings":""}
|
|
@@ -6,7 +6,7 @@ interface ButtonVariant {
|
|
|
6
6
|
/**
|
|
7
7
|
* @default "primary"
|
|
8
8
|
*/
|
|
9
|
-
color: "primary" | "secondary" | "tertiary" | "black" | "gray" | "success" | "error" | "info" | "text"
|
|
9
|
+
color: "primary" | "secondary" | "tertiary" | "black" | "gray" | "success" | "error" | "info" | "text" | "neutral"
|
|
10
10
|
/**
|
|
11
11
|
* @default "md"
|
|
12
12
|
*/
|
|
@@ -19,6 +19,7 @@ fullWidth: boolean
|
|
|
19
19
|
* @default false
|
|
20
20
|
*/
|
|
21
21
|
disabled: boolean
|
|
22
|
+
textVariant: boolean
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
type ButtonVariantMap = {
|
|
@@ -105,6 +105,115 @@ const buttonFn = /* @__PURE__ */ createRecipe('button', {
|
|
|
105
105
|
"borderColor": "white"
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"textVariant": true,
|
|
111
|
+
"disabled": true,
|
|
112
|
+
"css": {
|
|
113
|
+
"_hover": {
|
|
114
|
+
"textDecoration": "none"
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"textVariant": true,
|
|
120
|
+
"color": "primary",
|
|
121
|
+
"css": {
|
|
122
|
+
"color": "primary.main",
|
|
123
|
+
"_hover": {
|
|
124
|
+
"color": "primary.main"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"textVariant": true,
|
|
130
|
+
"color": "secondary",
|
|
131
|
+
"css": {
|
|
132
|
+
"color": "secondary.main",
|
|
133
|
+
"_hover": {
|
|
134
|
+
"color": "secondary.main"
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"textVariant": true,
|
|
140
|
+
"color": "tertiary",
|
|
141
|
+
"css": {
|
|
142
|
+
"color": "tertiary.main",
|
|
143
|
+
"_hover": {
|
|
144
|
+
"color": "tertiary.main"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"textVariant": true,
|
|
150
|
+
"color": "gray",
|
|
151
|
+
"css": {
|
|
152
|
+
"color": "gray.main",
|
|
153
|
+
"_hover": {
|
|
154
|
+
"color": "gray.main"
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"textVariant": true,
|
|
160
|
+
"color": "success",
|
|
161
|
+
"css": {
|
|
162
|
+
"color": "success.main",
|
|
163
|
+
"_hover": {
|
|
164
|
+
"color": "success.main"
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"textVariant": true,
|
|
170
|
+
"color": "error",
|
|
171
|
+
"css": {
|
|
172
|
+
"color": "error.main",
|
|
173
|
+
"_hover": {
|
|
174
|
+
"color": "error.main"
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"textVariant": true,
|
|
180
|
+
"color": "info",
|
|
181
|
+
"css": {
|
|
182
|
+
"color": "info.main",
|
|
183
|
+
"_hover": {
|
|
184
|
+
"color": "info.main"
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"textVariant": true,
|
|
190
|
+
"color": "neutral",
|
|
191
|
+
"css": {
|
|
192
|
+
"color": "text.standard",
|
|
193
|
+
"_hover": {
|
|
194
|
+
"color": "text.standard"
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"textVariant": true,
|
|
200
|
+
"color": "black",
|
|
201
|
+
"css": {
|
|
202
|
+
"color": "black",
|
|
203
|
+
"_hover": {
|
|
204
|
+
"color": "black"
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"textVariant": true,
|
|
210
|
+
"color": "text",
|
|
211
|
+
"css": {
|
|
212
|
+
"color": "text.standard",
|
|
213
|
+
"_hover": {
|
|
214
|
+
"color": "text.standard"
|
|
215
|
+
}
|
|
216
|
+
}
|
|
108
217
|
}
|
|
109
218
|
])
|
|
110
219
|
|
|
@@ -118,7 +227,8 @@ const buttonVariantMap = {
|
|
|
118
227
|
"success",
|
|
119
228
|
"error",
|
|
120
229
|
"info",
|
|
121
|
-
"text"
|
|
230
|
+
"text",
|
|
231
|
+
"neutral"
|
|
122
232
|
],
|
|
123
233
|
"size": [
|
|
124
234
|
"sm",
|
|
@@ -132,6 +242,9 @@ const buttonVariantMap = {
|
|
|
132
242
|
"disabled": [
|
|
133
243
|
"true",
|
|
134
244
|
"false"
|
|
245
|
+
],
|
|
246
|
+
"textVariant": [
|
|
247
|
+
"true"
|
|
135
248
|
]
|
|
136
249
|
}
|
|
137
250
|
|