@zayne-labs/ui-react 0.1.5 → 0.2.1

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 (54) hide show
  1. package/dist/esm/chunk-CB2EZJYW.js +31 -0
  2. package/dist/esm/chunk-CB2EZJYW.js.map +1 -0
  3. package/dist/esm/chunk-E3UC4AGS.js +119 -0
  4. package/dist/esm/chunk-E3UC4AGS.js.map +1 -0
  5. package/dist/esm/chunk-HKPJTORQ.js +3 -0
  6. package/dist/esm/chunk-HKPJTORQ.js.map +1 -0
  7. package/dist/esm/chunk-JKLRBPJZ.js +40 -0
  8. package/dist/esm/chunk-JKLRBPJZ.js.map +1 -0
  9. package/dist/esm/chunk-NCS3WKFW.js +50 -0
  10. package/dist/esm/chunk-NCS3WKFW.js.map +1 -0
  11. package/dist/esm/chunk-PKN52DWQ.js +363 -0
  12. package/dist/esm/chunk-PKN52DWQ.js.map +1 -0
  13. package/dist/esm/chunk-PNYEIX7F.js +3 -0
  14. package/dist/esm/chunk-PNYEIX7F.js.map +1 -0
  15. package/dist/esm/chunk-PW4AIAWC.js +125 -0
  16. package/dist/esm/chunk-PW4AIAWC.js.map +1 -0
  17. package/dist/esm/chunk-PXYYL2LL.js +45 -0
  18. package/dist/esm/chunk-PXYYL2LL.js.map +1 -0
  19. package/dist/esm/{chunk-MPOYLILK.js → chunk-RJQIINNX.js} +11 -7
  20. package/dist/esm/chunk-RJQIINNX.js.map +1 -0
  21. package/dist/esm/chunk-VMJ2L3VC.js +274 -0
  22. package/dist/esm/chunk-VMJ2L3VC.js.map +1 -0
  23. package/dist/esm/common/for/index.d.ts +20 -5
  24. package/dist/esm/common/for/index.js +1 -1
  25. package/dist/esm/common/index.d.ts +8 -0
  26. package/dist/esm/common/index.js +9 -0
  27. package/dist/esm/common/index.js.map +1 -0
  28. package/dist/esm/common/show/index.d.ts +10 -6
  29. package/dist/esm/common/show/index.js +2 -41
  30. package/dist/esm/common/show/index.js.map +1 -1
  31. package/dist/esm/common/switch/index.d.ts +10 -6
  32. package/dist/esm/common/switch/index.js +2 -31
  33. package/dist/esm/common/switch/index.js.map +1 -1
  34. package/dist/esm/common/teleport/index.js +1 -28
  35. package/dist/esm/common/teleport/index.js.map +1 -1
  36. package/dist/esm/index.d.ts +16 -2
  37. package/dist/esm/index.js +14 -1
  38. package/dist/esm/ui/card/index.js +4 -43
  39. package/dist/esm/ui/card/index.js.map +1 -1
  40. package/dist/esm/ui/carousel/index.d.ts +5 -3
  41. package/dist/esm/ui/carousel/index.js +4 -272
  42. package/dist/esm/ui/carousel/index.js.map +1 -1
  43. package/dist/esm/ui/drag-scroll/index.js +2 -117
  44. package/dist/esm/ui/drag-scroll/index.js.map +1 -1
  45. package/dist/esm/ui/drop-zone/index.js +2 -123
  46. package/dist/esm/ui/drop-zone/index.js.map +1 -1
  47. package/dist/esm/ui/form/index.js +4 -361
  48. package/dist/esm/ui/form/index.js.map +1 -1
  49. package/dist/esm/ui/index.d.ts +11 -0
  50. package/dist/esm/ui/index.js +12 -0
  51. package/dist/esm/ui/index.js.map +1 -0
  52. package/package.json +6 -14
  53. package/dist/esm/chunk-MPOYLILK.js.map +0 -1
  54. package/dist/esm/for-C3T5FbXd.d.ts +0 -15
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/icons/ChevronLeftIcon.tsx","../../src/components/ui/carousel/carousel-store-context.tsx","../../src/components/ui/carousel/useCarouselOptions.ts","../../src/components/ui/carousel/carousel.tsx","../../src/components/ui/carousel/carousel-parts.ts"],"names":["React","React2"],"mappings":"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","file":"chunk-VMJ2L3VC.js","sourcesContent":["import * as React from \"react\";\n\nconst ChevronLeftIcon = (props: React.SVGProps<SVGSVGElement>) => (\n\t<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1em\" height=\"1em\" viewBox=\"0 0 24 24\" {...props}>\n\t\t<g fill=\"none\" stroke=\"currentColor\" strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\">\n\t\t\t<circle cx=\"12\" cy=\"12\" r=\"10\" />\n\t\t\t<path d=\"m14 16l-4-4l4-4\" />\n\t\t</g>\n\t</svg>\n);\n\nexport { ChevronLeftIcon };\n","import * as React from \"react\";\n\nimport { useConstant } from \"@zayne-labs/toolkit-react\";\nimport { createZustandContext } from \"@zayne-labs/toolkit-react/zustand\";\nimport type { PrettyOmit } from \"@zayne-labs/toolkit-type-helpers\";\nimport { useEffect } from \"react\";\nimport { create } from \"zustand\";\nimport type { CarouselProviderProps, CarouselStore, ImagesType } from \"./types\";\n\nconst [Provider, useCarouselStoreContext] = createZustandContext<CarouselStore>({\n\thookName: \"useCarouselStore\",\n\tname: \"CarouselStoreContext\",\n\tproviderName: \"CarouselContextProvider\",\n});\n\n// CarouselStore Creation\nconst createCarouselStore = <TImages extends ImagesType>(\n\tstoreValues: PrettyOmit<CarouselProviderProps<TImages>, \"children\">\n) => {\n\tconst { images, onSlideBtnClick } = storeValues;\n\n\tconst useInitCarouselStore = create<CarouselStore<TImages>>()((set, get) => ({\n\t\tcurrentSlide: 0,\n\t\timages,\n\t\tmaxSlide: images.length - 1,\n\n\t\t/* eslint-disable perfectionist/sort-objects -- actions should be last */\n\t\tactions: {\n\t\t\t/* eslint-enable perfectionist/sort-objects -- actions should be last */\n\n\t\t\tgoToNextSlide: () => {\n\t\t\t\tconst { currentSlide, maxSlide } = get();\n\t\t\t\tconst { goToSlide } = get().actions;\n\n\t\t\t\tif (currentSlide === maxSlide) {\n\t\t\t\t\tgoToSlide(0);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tgoToSlide(currentSlide + 1);\n\t\t\t},\n\n\t\t\tgoToPreviousSlide: () => {\n\t\t\t\tconst { currentSlide, maxSlide } = get();\n\t\t\t\tconst { goToSlide } = get().actions;\n\n\t\t\t\tif (currentSlide === 0) {\n\t\t\t\t\tgoToSlide(maxSlide);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tgoToSlide(currentSlide - 1);\n\t\t\t},\n\n\t\t\tgoToSlide: (newValue) => {\n\t\t\t\tonSlideBtnClick?.();\n\n\t\t\t\tset({ currentSlide: newValue });\n\t\t\t},\n\t\t},\n\t}));\n\n\treturn useInitCarouselStore;\n};\n\nconst useCarousel = <TImages extends ImagesType>(\n\tprops: Omit<CarouselProviderProps<TImages>, \"children\">\n) => {\n\tconst { images, onSlideBtnClick } = props;\n\n\tconst useInitCarouselStore = useConstant(() => createCarouselStore({ images, onSlideBtnClick }));\n\n\t// == To set images again when a page is mounted, preventing stale images from previous page\n\tuseEffect(() => {\n\t\tuseInitCarouselStore.setState({ images });\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps -- useInitCarouselStore is stable\n\t}, [images]);\n\n\treturn useInitCarouselStore;\n};\n\n// == Provider Component\nfunction CarouselContextProvider<TImages extends ImagesType>(props: CarouselProviderProps<TImages>) {\n\tconst { children, images, onSlideBtnClick } = props;\n\n\tconst useInitCarouselStore = useCarousel({ images, onSlideBtnClick });\n\n\treturn <Provider value={useInitCarouselStore}>{children}</Provider>;\n}\n\n// eslint-disable-next-line react-refresh/only-export-components -- It's fine\nexport { useCarouselStoreContext, CarouselContextProvider };\n","import { useAnimationInterval, useCallbackRef } from \"@zayne-labs/toolkit-react\";\nimport { useState } from \"react\";\nimport { useCarouselStoreContext } from \"./carousel-store-context\";\n\ntype CarouselOptions = {\n\tautoSlideInterval?: number;\n\thasAutoSlide?: boolean;\n\tshouldPauseOnHover?: boolean;\n};\n\nconst useCarouselOptions = (options: CarouselOptions = {}) => {\n\tconst { autoSlideInterval = 5000, hasAutoSlide = false, shouldPauseOnHover = false } = options;\n\n\tconst { goToNextSlide } = useCarouselStoreContext((state) => state.actions);\n\n\tconst [isPaused, setIsPaused] = useState(false);\n\n\tconst shouldAutoSlide = hasAutoSlide && !isPaused;\n\n\tuseAnimationInterval({\n\t\tintervalDuration: shouldAutoSlide ? autoSlideInterval : null,\n\t\tonAnimation: goToNextSlide,\n\t});\n\n\tconst pauseAutoSlide = useCallbackRef(() => shouldPauseOnHover && setIsPaused(true));\n\n\tconst resumeAutoSlide = useCallbackRef(() => shouldPauseOnHover && setIsPaused(false));\n\n\treturn { pauseAutoSlide, resumeAutoSlide };\n};\n\nexport { useCarouselOptions };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport { getElementList } from \"@/components/common/for\";\nimport { ChevronLeftIcon } from \"@/components/icons\";\nimport { cnMerge } from \"@/lib/utils/cn\";\nimport type { MyCustomCss, PolymorphicProps } from \"@zayne-labs/toolkit-react/utils\";\nimport { useCarouselStoreContext } from \"./carousel-store-context\";\nimport type {\n\tCarouselButtonsProps,\n\tCarouselContentProps,\n\tCarouselControlProps,\n\tCarouselIndicatorProps,\n\tCarouselWrapperProps,\n\tOtherCarouselProps,\n} from \"./types\";\nimport { useCarouselOptions } from \"./useCarouselOptions\";\n\n// TODO - Add dragging and swiping support\nexport function CarouselContent<TElement extends React.ElementType = \"article\">(\n\tprops: PolymorphicProps<TElement, CarouselContentProps>\n) {\n\tconst {\n\t\tas: HtmlElement = \"article\",\n\t\tautoSlideInterval,\n\t\tchildren,\n\t\tclassNames,\n\t\thasAutoSlide,\n\t\tshouldPauseOnHover,\n\t} = props;\n\n\tconst { pauseAutoSlide, resumeAutoSlide } = useCarouselOptions({\n\t\tautoSlideInterval,\n\t\thasAutoSlide,\n\t\tshouldPauseOnHover,\n\t});\n\n\t// FIXME - Prevent touch swipe on mobile using a cover element or allow swipe but it must update the state appriopriately\n\treturn (\n\t\t<HtmlElement\n\t\t\tdata-id=\"Carousel\"\n\t\t\tclassName={cnMerge(\"relative select-none\", classNames?.base)}\n\t\t\tonMouseEnter={pauseAutoSlide}\n\t\t\tonMouseLeave={resumeAutoSlide}\n\t\t>\n\t\t\t<div\n\t\t\t\tdata-id=\"Scroll Container\"\n\t\t\t\tclassName={cnMerge(\n\t\t\t\t\t\"flex size-full overflow-x-scroll [scrollbar-width:none] [&::-webkit-scrollbar]:hidden\",\n\t\t\t\t\tclassNames?.scrollContainer\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</div>\n\t\t</HtmlElement>\n\t);\n}\n\nexport function CarouselButton(props: CarouselButtonsProps) {\n\tconst { classNames, icon, variant } = props;\n\n\tconst { goToNextSlide, goToPreviousSlide } = useCarouselStoreContext((state) => state.actions);\n\n\treturn (\n\t\t<button\n\t\t\ttype=\"button\"\n\t\t\tclassName={cnMerge(\n\t\t\t\t\"z-30 flex h-full w-[15%] items-center\",\n\t\t\t\tvariant === \"prev\" ? \"justify-start\" : \"justify-end\",\n\t\t\t\tclassNames?.base\n\t\t\t)}\n\t\t\tonClick={variant === \"prev\" ? goToPreviousSlide : goToNextSlide}\n\t\t>\n\t\t\t<span className={cnMerge(\"transition-transform active:scale-[1.06]\", classNames?.iconContainer)}>\n\t\t\t\t{icon ?? (\n\t\t\t\t\t<ChevronLeftIcon\n\t\t\t\t\t\tclassName={cnMerge(variant === \"next\" && \"rotate-180\", classNames?.defaultIcon)}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</span>\n\t\t</button>\n\t);\n}\n\nexport function CarouselControls(props: CarouselControlProps) {\n\tconst { classNames, icon } = props;\n\n\treturn (\n\t\t<div className={cnMerge(\"absolute inset-0 flex justify-between\", classNames?.base)}>\n\t\t\t{icon?.iconType ? (\n\t\t\t\t<>\n\t\t\t\t\t<CarouselButton\n\t\t\t\t\t\tvariant=\"prev\"\n\t\t\t\t\t\tclassNames={{\n\t\t\t\t\t\t\tdefaultIcon: classNames?.defaultIcon,\n\t\t\t\t\t\t\ticonContainer: cnMerge(\n\t\t\t\t\t\t\t\ticon.iconType === \"nextIcon\" && \"rotate-180\",\n\t\t\t\t\t\t\t\tclassNames?.iconContainer\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ticon={icon.icon}\n\t\t\t\t\t/>\n\t\t\t\t\t<CarouselButton\n\t\t\t\t\t\tvariant=\"next\"\n\t\t\t\t\t\tclassNames={{\n\t\t\t\t\t\t\tdefaultIcon: classNames?.defaultIcon,\n\t\t\t\t\t\t\ticonContainer: cnMerge(\n\t\t\t\t\t\t\t\ticon.iconType === \"prevIcon\" && \"rotate-180\",\n\t\t\t\t\t\t\t\tclassNames?.iconContainer\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ticon={icon.icon}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<CarouselButton\n\t\t\t\t\t\tvariant=\"prev\"\n\t\t\t\t\t\tclassNames={{\n\t\t\t\t\t\t\tdefaultIcon: classNames?.defaultIcon,\n\t\t\t\t\t\t\ticonContainer: classNames?.iconContainer,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ticon={icon?.prev}\n\t\t\t\t\t/>\n\t\t\t\t\t<CarouselButton\n\t\t\t\t\t\tvariant=\"next\"\n\t\t\t\t\t\tclassNames={{\n\t\t\t\t\t\t\tdefaultIcon: classNames?.defaultIcon,\n\t\t\t\t\t\t\ticonContainer: classNames?.iconContainer,\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ticon={icon?.next}\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nexport function CarouselItemWrapper<TArrayItem>(props: CarouselWrapperProps<TArrayItem>) {\n\tconst { children, className, each, render } = props;\n\n\tconst [ItemList] = getElementList(\"base\");\n\tconst currentSlide = useCarouselStoreContext((state) => state.currentSlide);\n\tconst images = useCarouselStoreContext((state) => each ?? (state.images as TArrayItem[]));\n\n\treturn (\n\t\t<ul\n\t\t\tdata-id=\"Carousel Image Wrapper\"\n\t\t\tclassName={cnMerge(\n\t\t\t\t`flex w-full shrink-0 snap-center [transform:translate3d(var(--translate-distance),0,0)]\n\t\t\t\t[transition:transform_800ms_ease]`,\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\tstyle={\n\t\t\t\t{\n\t\t\t\t\t\"--translate-distance\": `-${currentSlide * 100}%`,\n\t\t\t\t} satisfies MyCustomCss as MyCustomCss\n\t\t\t}\n\t\t>\n\t\t\t{typeof render === \"function\" ? (\n\t\t\t\t<ItemList each={images} render={render} />\n\t\t\t) : (\n\t\t\t\t<ItemList each={images}>{children}</ItemList>\n\t\t\t)}\n\t\t</ul>\n\t);\n}\n\nexport function CarouselItem({ children, className, ...restOfProps }: OtherCarouselProps) {\n\treturn (\n\t\t<li\n\t\t\tclassName={cnMerge(\"flex w-full shrink-0 snap-center justify-center\", className)}\n\t\t\t{...restOfProps}\n\t\t>\n\t\t\t{children}\n\t\t</li>\n\t);\n}\n\nexport function CarouselCaption<TElement extends React.ElementType = \"div\">(\n\tprops: PolymorphicProps<TElement, OtherCarouselProps>\n) {\n\tconst { as: HtmlElement = \"div\", children, className } = props;\n\n\treturn (\n\t\t<HtmlElement data-id=\"Carousel Caption\" className={cnMerge(\"absolute z-10\", className)}>\n\t\t\t{children}\n\t\t</HtmlElement>\n\t);\n}\n\nexport function CarouselIndicatorWrapper<TArrayItem>(props: CarouselWrapperProps<TArrayItem>) {\n\tconst { children, className, each, render } = props;\n\n\tconst images = useCarouselStoreContext((state) => each ?? (state.images as TArrayItem[]));\n\tconst [IndicatorList] = getElementList(\"base\");\n\n\treturn (\n\t\t<ul\n\t\t\tdata-id=\"Carousel Indicators\"\n\t\t\tclassName={cnMerge(\n\t\t\t\t\"absolute bottom-10 z-[2] flex w-full items-center justify-center gap-6\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t>\n\t\t\t{typeof render === \"function\" ? (\n\t\t\t\t<IndicatorList each={images} render={render} />\n\t\t\t) : (\n\t\t\t\t<IndicatorList each={images}>{children}</IndicatorList>\n\t\t\t)}\n\t\t</ul>\n\t);\n}\n\nexport function CarouselIndicator(props: CarouselIndicatorProps) {\n\tconst { classNames, currentIndex } = props;\n\n\tconst {\n\t\tactions: { goToSlide },\n\t\tcurrentSlide,\n\t} = useCarouselStoreContext((state) => state);\n\n\treturn (\n\t\t<li className={cnMerge(\"inline-flex\", classNames?.base)}>\n\t\t\t<button\n\t\t\t\tdata-active={currentIndex === currentSlide}\n\t\t\t\ttype=\"button\"\n\t\t\t\tonClick={() => goToSlide(currentIndex)}\n\t\t\t\tclassName={cnMerge(\n\t\t\t\t\t\"size-[6px] rounded-[50%]\",\n\t\t\t\t\tclassNames?.button,\n\t\t\t\t\tcurrentIndex === currentSlide && [\"w-14 rounded-lg\", classNames?.activeBtn]\n\t\t\t\t)}\n\t\t\t/>\n\t\t</li>\n\t);\n}\n","export { CarouselContextProvider as Root } from \"./carousel-store-context\";\nexport {\n\tCarouselContent as Content,\n\tCarouselControls as Controls,\n\tCarouselButton as Button,\n\tCarouselItem as Item,\n\tCarouselItemWrapper as ItemWrapper,\n\tCarouselCaption as Caption,\n\tCarouselIndicator as Indicator,\n\tCarouselIndicatorWrapper as IndicatorWrapper,\n} from \"./carousel\";\n"]}
@@ -1,9 +1,24 @@
1
- import { F as ForBase, a as ForList } from '../../for-C3T5FbXd.js';
2
- export { E as EachProp, b as ForRenderProps } from '../../for-C3T5FbXd.js';
3
- import 'react';
4
- import '@zayne-labs/toolkit-react/utils';
1
+ import * as react from 'react';
2
+ import { DiscriminatedRenderProps, PolymorphicProps } from '@zayne-labs/toolkit-react/utils';
3
+ import { Prettify } from '@zayne-labs/toolkit-type-helpers';
4
+
5
+ type RenderPropFn<TArrayItem> = (item: TArrayItem, index: number, array: TArrayItem[]) => react.ReactNode;
6
+ type ForRenderProps<TArrayItem> = DiscriminatedRenderProps<RenderPropFn<TArrayItem>>;
7
+ type ForProps<TArrayItem> = Prettify<{
8
+ each: TArrayItem[];
9
+ fallback?: react.ReactNode;
10
+ } & ForRenderProps<TArrayItem>>;
11
+ type ForPropsWithNumber<TNumber> = Prettify<{
12
+ each: TNumber;
13
+ fallback?: react.ReactNode;
14
+ } & ForRenderProps<TNumber>>;
15
+ declare function ForBase<TArrayItem>(props: ForProps<TArrayItem>): react.ReactNode[];
16
+ declare function ForBase<TNumber>(props: ForPropsWithNumber<TNumber>): react.ReactNode[];
17
+ declare function ForList<TArrayItem, TElement extends react.ElementType = "ul">(props: PolymorphicProps<TElement, ForProps<TArrayItem> & {
18
+ className?: string;
19
+ }>): react.JSX.Element;
5
20
 
6
21
  type GetElementListResult<TVariant extends "base" | "withWrapper"> = TVariant extends "base" ? [typeof ForBase] : [typeof ForList];
7
22
  declare const getElementList: <TVariant extends "base" | "withWrapper" = "withWrapper">(variant?: TVariant) => GetElementListResult<TVariant>;
8
23
 
9
- export { ForBase, ForList, getElementList };
24
+ export { ForBase, ForList, type ForRenderProps, getElementList };
@@ -1,4 +1,4 @@
1
- export { ForBase, ForList, getElementList } from '../../chunk-MPOYLILK.js';
1
+ export { ForBase, ForList, getElementList } from '../../chunk-RJQIINNX.js';
2
2
  import '../../chunk-PZ5AY32C.js';
3
3
  //# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,8 @@
1
+ export { ForBase, ForList, ForRenderProps, getElementList } from './for/index.js';
2
+ export { Show, ShowContent, ShowFallback, ShowRoot } from './show/index.js';
3
+ export { Slot, Slottable } from './slot/index.js';
4
+ export { Switch, SwitchDefault, SwitchMatch, SwitchRoot } from './switch/index.js';
5
+ export { Teleport } from './teleport/index.js';
6
+ import 'react';
7
+ import '@zayne-labs/toolkit-react/utils';
8
+ import '@zayne-labs/toolkit-type-helpers';
@@ -0,0 +1,9 @@
1
+ import '../chunk-HKPJTORQ.js';
2
+ export { ForBase, ForList, getElementList } from '../chunk-RJQIINNX.js';
3
+ export { show_parts_exports as Show, ShowContent, ShowFallback, ShowRoot } from '../chunk-NCS3WKFW.js';
4
+ export { Slot, Slottable } from '../chunk-ENDWJXPF.js';
5
+ export { switch_parts_exports as Switch, SwitchDefault, SwitchMatch, SwitchRoot } from '../chunk-JKLRBPJZ.js';
6
+ export { Teleport } from '../chunk-CB2EZJYW.js';
7
+ import '../chunk-PZ5AY32C.js';
8
+ //# sourceMappingURL=index.js.map
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -1,16 +1,20 @@
1
1
  import * as react from 'react';
2
2
 
3
- type ShowProps = {
4
- children: react.ReactNode;
3
+ type ShowProps<TWhen> = {
4
+ children: react.ReactNode | ((whenValue: TWhen) => react.ReactNode);
5
5
  fallback?: react.ReactNode;
6
- when: boolean;
6
+ when: false | TWhen | null | undefined;
7
7
  };
8
- declare function ShowRoot({ children, fallback, when }: ShowProps): react.ReactNode;
9
- declare function ShowContent({ children }: Pick<ShowProps, "children">): react.ReactNode;
8
+ declare function ShowRoot<TWhen>({ children, fallback, when }: ShowProps<TWhen>): react.ReactNode;
9
+ declare function ShowContent({ children }: {
10
+ children: react.ReactNode;
11
+ }): react.ReactNode;
10
12
  declare namespace ShowContent {
11
13
  var slot: symbol;
12
14
  }
13
- declare function ShowFallback({ children }: Pick<ShowProps, "children">): react.ReactNode;
15
+ declare function ShowFallback({ children }: {
16
+ children: react.ReactNode;
17
+ }): react.ReactNode;
14
18
  declare namespace ShowFallback {
15
19
  var slot: symbol;
16
20
  }
@@ -1,43 +1,4 @@
1
- import { __export } from '../../chunk-PZ5AY32C.js';
2
- import 'react';
3
- import { getSlotElement, getOtherChildren } from '@zayne-labs/toolkit-react/utils';
4
- import { AssertionError } from '@zayne-labs/toolkit-type-helpers';
5
-
6
- function ShowRoot({ children, fallback, when }) {
7
- const fallBackSlot = getSlotElement(children, ShowFallback, {
8
- errorMessage: "Only one <Show.Fallback> or <Show.OtherWise> component is allowed",
9
- throwOnMultipleSlotMatch: true
10
- });
11
- const contentSlot = getSlotElement(children, ShowContent, {
12
- errorMessage: "Only one <Show.Content> component is allowed",
13
- throwOnMultipleSlotMatch: true
14
- });
15
- const otherChildren = getOtherChildren(children, [ShowFallback, ShowContent]);
16
- if (fallBackSlot && fallback) {
17
- throw new AssertionError(`
18
- The fallback prop and <Show.Fallback>/<Show.OtherWise> cannot be used at the same time.
19
- `);
20
- }
21
- return when ? contentSlot ?? otherChildren : fallBackSlot ?? fallback;
22
- }
23
- function ShowContent({ children }) {
24
- return children;
25
- }
26
- ShowContent.slot = Symbol.for("content");
27
- function ShowFallback({ children }) {
28
- return children;
29
- }
30
- ShowFallback.slot = Symbol.for("show-fallback");
31
-
32
- // src/components/common/show/show-parts.ts
33
- var show_parts_exports = {};
34
- __export(show_parts_exports, {
35
- Content: () => ShowContent,
36
- Fallback: () => ShowFallback,
37
- OtherWise: () => ShowFallback,
38
- Root: () => ShowRoot
39
- });
40
-
41
- export { show_parts_exports as Show, ShowContent, ShowFallback, ShowRoot };
1
+ export { show_parts_exports as Show, ShowContent, ShowFallback, ShowRoot } from '../../chunk-NCS3WKFW.js';
2
+ import '../../chunk-PZ5AY32C.js';
42
3
  //# sourceMappingURL=index.js.map
43
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/common/show/show.tsx","../../../../src/components/common/show/show-parts.ts"],"names":[],"mappings":";;;;;AAaO,SAAS,QAAS,CAAA,EAAE,QAAU,EAAA,QAAA,EAAU,MAAmB,EAAA;AACjE,EAAM,MAAA,YAAA,GAAe,cAAe,CAAA,QAAA,EAAU,YAAc,EAAA;AAAA,IAC3D,YAAc,EAAA,mEAAA;AAAA,IACd,wBAA0B,EAAA;AAAA,GAC1B,CAAA;AAED,EAAM,MAAA,WAAA,GAAc,cAAe,CAAA,QAAA,EAAU,WAAa,EAAA;AAAA,IACzD,YAAc,EAAA,8CAAA;AAAA,IACd,wBAA0B,EAAA;AAAA,GAC1B,CAAA;AAED,EAAA,MAAM,gBAAgB,gBAAiB,CAAA,QAAA,EAAU,CAAC,YAAA,EAAc,WAAW,CAAC,CAAA;AAE5E,EAAA,IAAI,gBAAgB,QAAU,EAAA;AAC7B,IAAA,MAAM,IAAI,cAAe,CAAA;AAAA;AAAA,EAExB,CAAA,CAAA;AAAA;AAGF,EAAO,OAAA,IAAA,GAAQ,WAAe,IAAA,aAAA,GAAkB,YAAgB,IAAA,QAAA;AACjE;AAEO,SAAS,WAAA,CAAY,EAAE,QAAA,EAAyC,EAAA;AACtE,EAAO,OAAA,QAAA;AACR;AACA,WAAY,CAAA,IAAA,GAAO,MAAO,CAAA,GAAA,CAAI,SAAS,CAAA;AAEhC,SAAS,YAAA,CAAa,EAAE,QAAA,EAAyC,EAAA;AACvE,EAAO,OAAA,QAAA;AACR;AACA,YAAa,CAAA,IAAA,GAAO,MAAO,CAAA,GAAA,CAAI,eAAe,CAAA;;;AC3C9C,IAAA,kBAAA,GAAA;AAAA,QAAA,CAAA,kBAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA,WAAA;AAAA,EAAA,QAAA,EAAA,MAAA,YAAA;AAAA,EAAA,SAAA,EAAA,MAAA,YAAA;AAAA,EAAA,IAAA,EAAA,MAAA;AAAA,CAAA,CAAA","file":"index.js","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\n\nimport { getOtherChildren, getSlotElement } from \"@zayne-labs/toolkit-react/utils\";\nimport { AssertionError } from \"@zayne-labs/toolkit-type-helpers\";\n\ntype ShowProps = {\n\tchildren: React.ReactNode;\n\tfallback?: React.ReactNode;\n\twhen: boolean;\n};\n\nexport function ShowRoot({ children, fallback, when }: ShowProps) {\n\tconst fallBackSlot = getSlotElement(children, ShowFallback, {\n\t\terrorMessage: \"Only one <Show.Fallback> or <Show.OtherWise> component is allowed\",\n\t\tthrowOnMultipleSlotMatch: true,\n\t});\n\n\tconst contentSlot = getSlotElement(children, ShowContent, {\n\t\terrorMessage: \"Only one <Show.Content> component is allowed\",\n\t\tthrowOnMultipleSlotMatch: true,\n\t});\n\n\tconst otherChildren = getOtherChildren(children, [ShowFallback, ShowContent]);\n\n\tif (fallBackSlot && fallback) {\n\t\tthrow new AssertionError(`\n\t\t\tThe fallback prop and <Show.Fallback>/<Show.OtherWise> cannot be used at the same time.\n\t\t`);\n\t}\n\n\treturn when ? (contentSlot ?? otherChildren) : (fallBackSlot ?? fallback);\n}\n\nexport function ShowContent({ children }: Pick<ShowProps, \"children\">) {\n\treturn children;\n}\nShowContent.slot = Symbol.for(\"content\");\n\nexport function ShowFallback({ children }: Pick<ShowProps, \"children\">) {\n\treturn children;\n}\nShowFallback.slot = Symbol.for(\"show-fallback\");\n","export {\n\tShowContent as Content,\n\tShowFallback as Fallback,\n\tShowFallback as OtherWise,\n\tShowRoot as Root,\n} from \"./show\";\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -5,13 +5,17 @@ type SwitchProps<TCondition> = {
5
5
  children: ValidSwitchComponentType | ValidSwitchComponentType[];
6
6
  condition?: TCondition;
7
7
  };
8
- type SwitchMatchProps<TWhen = boolean> = {
9
- children: react.ReactNode;
10
- when: TWhen;
8
+ type SwitchMatchProps<TWhen = unknown> = {
9
+ children: react.ReactNode | ((whenValue: TWhen) => react.ReactNode);
10
+ when: false | TWhen | null | undefined;
11
11
  };
12
- declare function SwitchRoot<TCondition = true>(props: SwitchProps<TCondition>): react.ReactElement<Pick<SwitchMatchProps<boolean>, "children">, string | react.JSXElementConstructor<any>> | undefined;
13
- declare function SwitchMatch<TWhen>({ children }: SwitchMatchProps<TWhen>): react.ReactNode;
14
- declare function SwitchDefault({ children }: Pick<SwitchMatchProps, "children">): react.ReactNode;
12
+ declare function SwitchRoot<TCondition = true>(props: SwitchProps<TCondition>): ValidSwitchComponentType | react.ReactElement<{
13
+ children: react.ReactNode;
14
+ }, string | react.JSXElementConstructor<any>> | undefined;
15
+ declare function SwitchMatch<TWhen>({ children, when }: SwitchMatchProps<TWhen>): react.ReactNode;
16
+ declare function SwitchDefault({ children }: {
17
+ children: react.ReactNode;
18
+ }): react.ReactNode;
15
19
  declare namespace SwitchDefault {
16
20
  var slot: symbol;
17
21
  }
@@ -1,33 +1,4 @@
1
- import { __export } from '../../chunk-PZ5AY32C.js';
2
- import 'react';
3
- import { getSlotElement, getOtherChildren } from '@zayne-labs/toolkit-react/utils';
4
-
5
- function SwitchRoot(props) {
6
- const { children, condition = true } = props;
7
- const defaultCase = getSlotElement(children, SwitchDefault, {
8
- errorMessage: "Only one <Switch.Default> component is allowed",
9
- throwOnMultipleSlotMatch: true
10
- });
11
- const childrenCasesArray = getOtherChildren(children, SwitchDefault);
12
- const matchedCase = childrenCasesArray.find((child) => child.props.when === condition);
13
- return matchedCase ?? defaultCase;
14
- }
15
- function SwitchMatch({ children }) {
16
- return children;
17
- }
18
- function SwitchDefault({ children }) {
19
- return children;
20
- }
21
- SwitchDefault.slot = Symbol.for("switch-default");
22
-
23
- // src/components/common/switch/switch-parts.ts
24
- var switch_parts_exports = {};
25
- __export(switch_parts_exports, {
26
- Default: () => SwitchDefault,
27
- Match: () => SwitchMatch,
28
- Root: () => SwitchRoot
29
- });
30
-
31
- export { switch_parts_exports as Switch, SwitchDefault, SwitchMatch, SwitchRoot };
1
+ export { switch_parts_exports as Switch, SwitchDefault, SwitchMatch, SwitchRoot } from '../../chunk-JKLRBPJZ.js';
2
+ import '../../chunk-PZ5AY32C.js';
32
3
  //# sourceMappingURL=index.js.map
33
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/common/switch/switch.tsx","../../../../src/components/common/switch/switch-parts.ts"],"names":[],"mappings":";;;;AAkBO,SAAS,WAA8B,KAAgC,EAAA;AAC7E,EAAA,MAAM,EAAE,QAAA,EAAU,SAAY,GAAA,IAAA,EAAS,GAAA,KAAA;AAEvC,EAAM,MAAA,WAAA,GAAc,cAAe,CAAA,QAAA,EAAU,aAAe,EAAA;AAAA,IAC3D,YAAc,EAAA,gDAAA;AAAA,IACd,wBAA0B,EAAA;AAAA,GAC1B,CAAA;AAED,EAAM,MAAA,kBAAA,GAAqB,gBAAiB,CAAA,QAAA,EAAU,aAAa,CAAA;AAEnE,EAAM,MAAA,WAAA,GAAc,mBAAmB,IAAK,CAAA,CAAC,UAAU,KAAM,CAAA,KAAA,CAAM,SAAS,SAAS,CAAA;AAErF,EAAA,OAAO,WAAe,IAAA,WAAA;AACvB;AAEO,SAAS,WAAA,CAAmB,EAAE,QAAA,EAAqC,EAAA;AACzE,EAAO,OAAA,QAAA;AACR;AAEO,SAAS,aAAA,CAAc,EAAE,QAAA,EAAgD,EAAA;AAC/E,EAAO,OAAA,QAAA;AACR;AACA,aAAc,CAAA,IAAA,GAAO,MAAO,CAAA,GAAA,CAAI,gBAAgB,CAAA;;;ACxChD,IAAA,oBAAA,GAAA;AAAA,QAAA,CAAA,oBAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA,aAAA;AAAA,EAAA,KAAA,EAAA,MAAA,WAAA;AAAA,EAAA,IAAA,EAAA,MAAA;AAAA,CAAA,CAAA","file":"index.js","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\n\nimport { getOtherChildren, getSlotElement } from \"@zayne-labs/toolkit-react/utils\";\n\ntype ValidSwitchComponentType = React.ReactElement<SwitchMatchProps>;\n\ntype SwitchProps<TCondition> = {\n\tchildren: ValidSwitchComponentType | ValidSwitchComponentType[];\n\tcondition?: TCondition;\n};\n\ntype SwitchMatchProps<TWhen = boolean> = {\n\tchildren: React.ReactNode;\n\twhen: TWhen;\n};\n\nexport function SwitchRoot<TCondition = true>(props: SwitchProps<TCondition>) {\n\tconst { children, condition = true } = props;\n\n\tconst defaultCase = getSlotElement(children, SwitchDefault, {\n\t\terrorMessage: \"Only one <Switch.Default> component is allowed\",\n\t\tthrowOnMultipleSlotMatch: true,\n\t});\n\n\tconst childrenCasesArray = getOtherChildren(children, SwitchDefault);\n\n\tconst matchedCase = childrenCasesArray.find((child) => child.props.when === condition);\n\n\treturn matchedCase ?? defaultCase;\n}\n\nexport function SwitchMatch<TWhen>({ children }: SwitchMatchProps<TWhen>) {\n\treturn children;\n}\n\nexport function SwitchDefault({ children }: Pick<SwitchMatchProps, \"children\">) {\n\treturn children;\n}\nSwitchDefault.slot = Symbol.for(\"switch-default\");\n","export { SwitchDefault as Default, SwitchMatch as Match, SwitchRoot as Root } from \"./switch\";\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -1,31 +1,4 @@
1
+ export { Teleport } from '../../chunk-CB2EZJYW.js';
1
2
  import '../../chunk-PZ5AY32C.js';
2
- import { useState } from 'react';
3
- import { useEffectOnce, useMountEffect } from '@zayne-labs/toolkit-react';
4
- import { isString } from '@zayne-labs/toolkit-type-helpers';
5
- import { createPortal } from 'react-dom';
6
-
7
- function Teleport(props) {
8
- const { children, insertPosition, to } = props;
9
- const [reactPortal, setReactPortal] = useState(null);
10
- useEffectOnce(() => {
11
- if (!to || !insertPosition) return;
12
- const destination = isString(to) ? document.querySelector(to) : to;
13
- const tempWrapper = document.createElement("div");
14
- tempWrapper.style.display = "contents";
15
- destination?.insertAdjacentElement(insertPosition, tempWrapper);
16
- setReactPortal(createPortal(children, tempWrapper));
17
- return () => {
18
- tempWrapper.remove();
19
- };
20
- });
21
- useMountEffect(() => {
22
- if (!to || insertPosition) return;
23
- const destination = isString(to) ? document.querySelector(to) : to;
24
- destination && setReactPortal(createPortal(children, destination));
25
- });
26
- return reactPortal;
27
- }
28
-
29
- export { Teleport };
30
3
  //# sourceMappingURL=index.js.map
31
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/common/teleport/teleport.tsx"],"names":[],"mappings":";;;;;;AAeA,SAAS,SAAS,KAAoB,EAAA;AACrC,EAAA,MAAM,EAAE,QAAA,EAAU,cAAgB,EAAA,EAAA,EAAO,GAAA,KAAA;AAEzC,EAAA,MAAM,CAAC,WAAA,EAAa,cAAc,CAAA,GAAI,SAAmC,IAAI,CAAA;AAE7E,EAAA,aAAA,CAAc,MAAM;AACnB,IAAI,IAAA,CAAC,EAAM,IAAA,CAAC,cAAgB,EAAA;AAE5B,IAAA,MAAM,cAAc,QAAS,CAAA,EAAE,IAAI,QAAS,CAAA,aAAA,CAA2B,EAAE,CAAI,GAAA,EAAA;AAE7E,IAAM,MAAA,WAAA,GAAc,QAAS,CAAA,aAAA,CAAc,KAAK,CAAA;AAChD,IAAA,WAAA,CAAY,MAAM,OAAU,GAAA,UAAA;AAE5B,IAAa,WAAA,EAAA,qBAAA,CAAsB,gBAAgB,WAAW,CAAA;AAE9D,IAAe,cAAA,CAAA,YAAA,CAAa,QAAU,EAAA,WAAW,CAAC,CAAA;AAElD,IAAA,OAAO,MAAM;AACZ,MAAA,WAAA,CAAY,MAAO,EAAA;AAAA,KACpB;AAAA,GACA,CAAA;AAED,EAAA,cAAA,CAAe,MAAM;AACpB,IAAI,IAAA,CAAC,MAAM,cAAgB,EAAA;AAE3B,IAAA,MAAM,cAAc,QAAS,CAAA,EAAE,IAAI,QAAS,CAAA,aAAA,CAA2B,EAAE,CAAI,GAAA,EAAA;AAE7E,IAAA,WAAA,IAAe,cAAe,CAAA,YAAA,CAAa,QAAU,EAAA,WAAW,CAAC,CAAA;AAAA,GACjE,CAAA;AAED,EAAO,OAAA,WAAA;AACR","file":"index.js","sourcesContent":["import * as React from \"react\";\n\nimport { useEffectOnce, useMountEffect } from \"@zayne-labs/toolkit-react\";\nimport { type AnyString, isString } from \"@zayne-labs/toolkit-type-helpers\";\nimport { useState } from \"react\";\nimport { createPortal } from \"react-dom\";\n\ntype ValidHtmlTags = keyof HTMLElementTagNameMap;\n\ntype PortalProps = {\n\tchildren: React.ReactNode;\n\tinsertPosition?: InsertPosition;\n\tto?: AnyString | HTMLElement | ValidHtmlTags | null;\n};\n\nfunction Teleport(props: PortalProps) {\n\tconst { children, insertPosition, to } = props;\n\n\tconst [reactPortal, setReactPortal] = useState<React.ReactPortal | null>(null);\n\n\tuseEffectOnce(() => {\n\t\tif (!to || !insertPosition) return;\n\n\t\tconst destination = isString(to) ? document.querySelector<HTMLElement>(to) : to;\n\n\t\tconst tempWrapper = document.createElement(\"div\");\n\t\ttempWrapper.style.display = \"contents\";\n\n\t\tdestination?.insertAdjacentElement(insertPosition, tempWrapper);\n\n\t\tsetReactPortal(createPortal(children, tempWrapper));\n\n\t\treturn () => {\n\t\t\ttempWrapper.remove();\n\t\t};\n\t});\n\n\tuseMountEffect(() => {\n\t\tif (!to || insertPosition) return;\n\n\t\tconst destination = isString(to) ? document.querySelector<HTMLElement>(to) : to;\n\n\t\tdestination && setReactPortal(createPortal(children, destination));\n\t});\n\n\treturn reactPortal;\n}\n\nexport { Teleport };\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -1,2 +1,16 @@
1
-
2
- export { }
1
+ export { Card, CardContent, CardDescription, CardFooter, CardHeader, CardRoot, CardTitle } from './ui/card/index.js';
2
+ export { Carousel, CarouselButton, CarouselButtonsProps, CarouselCaption, CarouselContent, CarouselContentProps, CarouselControlProps, CarouselControls, CarouselIndicator, CarouselIndicatorProps, CarouselIndicatorWrapper, CarouselItem, CarouselItemWrapper, CarouselProviderProps, CarouselStore, CarouselStoreApi, CarouselWrapperProps, ImagesType, OtherCarouselProps } from './ui/carousel/index.js';
3
+ export { useDragScroll } from './ui/drag-scroll/index.js';
4
+ export { DropZone, InputProps, RootProps, UseDropZoneProps, useDropZone } from './ui/drop-zone/index.js';
5
+ export { Form, FormController, FormDescription, FormErrorMessage, FormErrorMessagePrimitive, FormInput, FormInputGroup, FormInputLeftItem, FormInputPrimitive, FormInputRightItem, FormItem, FormItemContext, FormLabel, FormRoot, FormTextArea, FormTextAreaPrimitive, useFormItemContext } from './ui/form/index.js';
6
+ export { ForBase, ForList, ForRenderProps, getElementList } from './common/for/index.js';
7
+ export { Show, ShowContent, ShowFallback, ShowRoot } from './common/show/index.js';
8
+ export { Slot, Slottable } from './common/slot/index.js';
9
+ export { Switch, SwitchDefault, SwitchMatch, SwitchRoot } from './common/switch/index.js';
10
+ export { Teleport } from './common/teleport/index.js';
11
+ import 'react';
12
+ import '@zayne-labs/toolkit-react/utils';
13
+ import '@zayne-labs/toolkit-type-helpers';
14
+ import 'zustand';
15
+ import '@zayne-labs/toolkit-core';
16
+ import 'react-hook-form';
package/dist/esm/index.js CHANGED
@@ -1,3 +1,16 @@
1
-
1
+ import './chunk-HKPJTORQ.js';
2
+ import './chunk-PNYEIX7F.js';
3
+ export { card_parts_exports as Card, CardContent, CardDescription, CardFooter, CardHeader, CardRoot, CardTitle } from './chunk-PXYYL2LL.js';
4
+ export { carousel_parts_exports as Carousel, CarouselButton, CarouselCaption, CarouselContent, CarouselControls, CarouselIndicator, CarouselIndicatorWrapper, CarouselItem, CarouselItemWrapper } from './chunk-VMJ2L3VC.js';
5
+ export { useDragScroll } from './chunk-E3UC4AGS.js';
6
+ export { DropZone, useDropZone } from './chunk-PW4AIAWC.js';
7
+ export { form_parts_exports as Form, FormController, FormDescription, FormErrorMessage, FormErrorMessagePrimitive, FormInput, FormInputGroup, FormInputLeftItem, FormInputPrimitive, FormInputRightItem, FormItem, FormItemContext, FormLabel, FormRoot, FormTextArea, FormTextAreaPrimitive, useStrictFormItemContext as useFormItemContext } from './chunk-PKN52DWQ.js';
8
+ import './chunk-OHG7GB7O.js';
9
+ export { ForBase, ForList, getElementList } from './chunk-RJQIINNX.js';
10
+ export { show_parts_exports as Show, ShowContent, ShowFallback, ShowRoot } from './chunk-NCS3WKFW.js';
11
+ export { Slot, Slottable } from './chunk-ENDWJXPF.js';
12
+ export { switch_parts_exports as Switch, SwitchDefault, SwitchMatch, SwitchRoot } from './chunk-JKLRBPJZ.js';
13
+ export { Teleport } from './chunk-CB2EZJYW.js';
14
+ import './chunk-PZ5AY32C.js';
2
15
  //# sourceMappingURL=index.js.map
3
16
  //# sourceMappingURL=index.js.map
@@ -1,45 +1,6 @@
1
- import { Slot } from '../../chunk-ENDWJXPF.js';
2
- import { cnMerge } from '../../chunk-OHG7GB7O.js';
3
- import { __export } from '../../chunk-PZ5AY32C.js';
4
- import * as React from 'react';
5
-
6
- function CardRoot(props) {
7
- const { as: Element = "article", ...restOfProps } = props;
8
- return /* @__PURE__ */ React.createElement(Element, { ...restOfProps });
9
- }
10
- function CardHeader(props) {
11
- const { as: Element = "header", ...restOfProps } = props;
12
- return /* @__PURE__ */ React.createElement(Element, { ...restOfProps });
13
- }
14
- function CardTitle(props) {
15
- const { as: Element = "h3", className, ...restOfProps } = props;
16
- return /* @__PURE__ */ React.createElement(Element, { className: cnMerge("font-semibold", className), ...restOfProps });
17
- }
18
- function CardDescription(props) {
19
- const { as: Element = "p", className, ...restOfProps } = props;
20
- return /* @__PURE__ */ React.createElement(Element, { className: cnMerge("text-sm text-shadcn-muted-foreground", className), ...restOfProps });
21
- }
22
- function CardContent(props) {
23
- const { as: Element = "div", ...restOfProps } = props;
24
- return /* @__PURE__ */ React.createElement(Element, { ...restOfProps });
25
- }
26
- function CardFooter(props) {
27
- const { as: Element = "footer", asChild, ...restOfProps } = props;
28
- const Component = asChild ? Slot : Element;
29
- return /* @__PURE__ */ React.createElement(Component, { ...restOfProps });
30
- }
31
-
32
- // src/components/ui/card/card-parts.ts
33
- var card_parts_exports = {};
34
- __export(card_parts_exports, {
35
- Content: () => CardContent,
36
- Description: () => CardDescription,
37
- Footer: () => CardFooter,
38
- Header: () => CardHeader,
39
- Root: () => CardRoot,
40
- Title: () => CardTitle
41
- });
42
-
43
- export { card_parts_exports as Card, CardContent, CardDescription, CardFooter, CardHeader, CardRoot, CardTitle };
1
+ export { card_parts_exports as Card, CardContent, CardDescription, CardFooter, CardHeader, CardRoot, CardTitle } from '../../chunk-PXYYL2LL.js';
2
+ import '../../chunk-OHG7GB7O.js';
3
+ import '../../chunk-ENDWJXPF.js';
4
+ import '../../chunk-PZ5AY32C.js';
44
5
  //# sourceMappingURL=index.js.map
45
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ui/card/card.tsx","../../../../src/components/ui/card/card-parts.ts"],"names":[],"mappings":";;;;;AAMO,SAAS,SACf,KACC,EAAA;AACD,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,SAAW,EAAA,GAAG,aAAgB,GAAA,KAAA;AAEpD,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,OAAS,EAAA,EAAA,GAAG,WAAa,EAAA,CAAA;AAClC;AAEO,SAAS,WACf,KACC,EAAA;AACD,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,QAAU,EAAA,GAAG,aAAgB,GAAA,KAAA;AAEnD,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,OAAS,EAAA,EAAA,GAAG,WAAa,EAAA,CAAA;AAClC;AAEO,SAAS,UAAqD,KAAmC,EAAA;AACvG,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,MAAM,SAAW,EAAA,GAAG,aAAgB,GAAA,KAAA;AAE1D,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,WAAQ,SAAW,EAAA,OAAA,CAAQ,iBAAiB,SAAS,CAAA,EAAI,GAAG,WAAa,EAAA,CAAA;AAClF;AAEO,SAAS,gBACf,KACC,EAAA;AACD,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,KAAK,SAAW,EAAA,GAAG,aAAgB,GAAA,KAAA;AAEzD,EACC,uBAAA,KAAA,CAAA,aAAA,CAAC,WAAQ,SAAW,EAAA,OAAA,CAAQ,wCAAwC,SAAS,CAAA,EAAI,GAAG,WAAa,EAAA,CAAA;AAEnG;AAEO,SAAS,YACf,KACC,EAAA;AACD,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,KAAO,EAAA,GAAG,aAAgB,GAAA,KAAA;AAEhD,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,OAAS,EAAA,EAAA,GAAG,WAAa,EAAA,CAAA;AAClC;AAEO,SAAS,WACf,KACC,EAAA;AACD,EAAA,MAAM,EAAE,EAAI,EAAA,OAAA,GAAU,UAAU,OAAS,EAAA,GAAG,aAAgB,GAAA,KAAA;AAE5D,EAAM,MAAA,SAAA,GAAY,UAAU,IAAO,GAAA,OAAA;AAEnC,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,SAAW,EAAA,EAAA,GAAG,WAAa,EAAA,CAAA;AACpC;;;ACtDA,IAAA,kBAAA,GAAA;AAAA,QAAA,CAAA,kBAAA,EAAA;AAAA,EAAA,OAAA,EAAA,MAAA,WAAA;AAAA,EAAA,WAAA,EAAA,MAAA,eAAA;AAAA,EAAA,MAAA,EAAA,MAAA,UAAA;AAAA,EAAA,MAAA,EAAA,MAAA,UAAA;AAAA,EAAA,IAAA,EAAA,MAAA,QAAA;AAAA,EAAA,KAAA,EAAA,MAAA;AAAA,CAAA,CAAA","file":"index.js","sourcesContent":["import * as React from \"react\";\n\nimport { Slot } from \"@/components/common/slot\";\nimport { cnMerge } from \"@/lib/utils/cn\";\nimport type { PolymorphicProps } from \"@zayne-labs/toolkit-react/utils\";\n\nexport function CardRoot<TElement extends React.ElementType = \"article\">(\n\tprops: PolymorphicProps<TElement>\n) {\n\tconst { as: Element = \"article\", ...restOfProps } = props;\n\n\treturn <Element {...restOfProps} />;\n}\n\nexport function CardHeader<TElement extends React.ElementType = \"header\">(\n\tprops: PolymorphicProps<TElement>\n) {\n\tconst { as: Element = \"header\", ...restOfProps } = props;\n\n\treturn <Element {...restOfProps} />;\n}\n\nexport function CardTitle<TElement extends React.ElementType = \"h3\">(props: PolymorphicProps<TElement>) {\n\tconst { as: Element = \"h3\", className, ...restOfProps } = props;\n\n\treturn <Element className={cnMerge(\"font-semibold\", className)} {...restOfProps} />;\n}\n\nexport function CardDescription<TElement extends React.ElementType = \"p\">(\n\tprops: PolymorphicProps<TElement>\n) {\n\tconst { as: Element = \"p\", className, ...restOfProps } = props;\n\n\treturn (\n\t\t<Element className={cnMerge(\"text-sm text-shadcn-muted-foreground\", className)} {...restOfProps} />\n\t);\n}\n\nexport function CardContent<TElement extends React.ElementType = \"div\">(\n\tprops: PolymorphicProps<TElement>\n) {\n\tconst { as: Element = \"div\", ...restOfProps } = props;\n\n\treturn <Element {...restOfProps} />;\n}\n\nexport function CardFooter<TElement extends React.ElementType = \"footer\">(\n\tprops: PolymorphicProps<TElement, { asChild?: boolean }>\n) {\n\tconst { as: Element = \"footer\", asChild, ...restOfProps } = props;\n\n\tconst Component = asChild ? Slot : Element;\n\n\treturn <Component {...restOfProps} />;\n}\n","export {\n\tCardContent as Content,\n\tCardDescription as Description,\n\tCardFooter as Footer,\n\tCardHeader as Header,\n\tCardRoot as Root,\n\tCardTitle as Title,\n} from \"./card\";\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -1,6 +1,5 @@
1
1
  import * as react from 'react';
2
- import { PolymorphicProps } from '@zayne-labs/toolkit-react/utils';
3
- import { b as ForRenderProps, E as EachProp } from '../../for-C3T5FbXd.js';
2
+ import { DiscriminatedRenderProps, PolymorphicProps } from '@zayne-labs/toolkit-react/utils';
4
3
  import { Prettify } from '@zayne-labs/toolkit-type-helpers';
5
4
  import { StoreApi } from 'zustand';
6
5
 
@@ -63,7 +62,10 @@ type CarouselIndicatorProps = {
63
62
  };
64
63
  currentIndex: number;
65
64
  };
66
- type BaseWrapperProps<TArrayItem> = Prettify<ForRenderProps<TArrayItem> & Partial<EachProp<TArrayItem>>>;
65
+ type RenderPropFn<TArrayItem> = (item: NoInfer<TArrayItem>, index: number, array: NoInfer<TArrayItem[]>) => React.ReactNode;
66
+ type BaseWrapperProps<TArrayItem> = Prettify<DiscriminatedRenderProps<RenderPropFn<TArrayItem>> & {
67
+ each?: TArrayItem[];
68
+ }>;
67
69
  type CarouselWrapperProps<TArrayItem> = BaseWrapperProps<TArrayItem> & {
68
70
  className?: string;
69
71
  };