@tamagui/accordion 1.14.0 → 1.14.2

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.
@@ -1,2 +1,29 @@
1
- "use strict";var t=Object.defineProperty;var e=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var s=(c,o)=>{for(var r in o)t(c,r,{get:o[r],enumerable:!0})},x=(c,o,r,d)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of i(o))!p.call(c,n)&&n!==r&&t(c,n,{get:()=>o[n],enumerable:!(d=e(o,n))||d.enumerable});return c};var A=c=>x(t({},"__esModule",{value:!0}),c);var b={};s(b,{Accordion:()=>a});module.exports=A(b);const a={};0&&(module.exports={Accordion});
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var Accordion_exports = {};
20
+ __export(Accordion_exports, {
21
+ Accordion: () => Accordion
22
+ });
23
+ module.exports = __toCommonJS(Accordion_exports);
24
+ const Accordion = {};
25
+ // Annotate the CommonJS export names for ESM import in node:
26
+ 0 && (module.exports = {
27
+ Accordion
28
+ });
2
29
  //# sourceMappingURL=Accordion.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
4
  "sourcesContent": ["export const Accordion = {}\n\n// import { useComposedRefs } from '@tamagui/compose-refs'\n// import { Stack, StackProps, TamaguiElement, composeEventHandlers } from '@tamagui/core'\n// import { useId } from '@tamagui/core'\n// import { createContextScope } from '@tamagui/create-context'\n// import type { Scope } from '@tamagui/create-context'\n// import { useControllableState } from '@tamagui/use-controllable-state'\n// import React from 'react'\n\n// const COLLAPSIBLE_NAME = 'Collapsible'\n\n// const [_createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME)\n\n// /* -------------------------------------------------------------------------------------------------\n// * Accordion\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ACCORDION_NAME = 'Accordion'\n// const ACCORDION_KEYS = ['Home', 'End', 'ArrowDown', 'ArrowUp']\n\n// type ScopedProps<P> = P & { __scopeAccordion?: Scope }\n// const [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n// createCollapsibleScope,\n// ])\n// const useCollapsibleScope = createCollapsibleScope()\n\n// type AccordionElement = AccordionImplMultipleElement | AccordionImplSingleElement\n// interface AccordionSingleProps extends AccordionImplSingleProps {\n// type: 'single'\n// }\n// interface AccordionMultipleProps extends AccordionImplMultipleProps {\n// type: 'multiple'\n// }\n\n// const Accordion = React.forwardRef<AccordionElement, AccordionSingleProps | AccordionMultipleProps>(\n// (props: ScopedProps<AccordionSingleProps | AccordionMultipleProps>, forwardedRef) => {\n// const { type, ...accordionProps } = props\n// const singleProps = accordionProps as AccordionImplSingleProps\n// const multipleProps = accordionProps as AccordionImplMultipleProps\n// return (\n// <>\n// {type === 'multiple' ? (\n// <AccordionImplMultiple {...multipleProps} ref={forwardedRef} />\n// ) : (\n// <AccordionImplSingle {...singleProps} ref={forwardedRef} />\n// )}\n// </>\n// )\n// }\n// )\n\n// Accordion.displayName = ACCORDION_NAME\n\n// Accordion.propTypes = {\n// type(props) {\n// const value = props.value || props.defaultValue\n// if (props.type && !['single', 'multiple'].includes(props.type)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`.'\n// )\n// }\n// if (props.type === 'multiple' && typeof value === 'string') {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`.'\n// )\n// }\n// if (props.type === 'single' && Array.isArray(value)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`.'\n// )\n// }\n// return null\n// },\n// }\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionValueContextValue = {\n// value: string[]\n// onItemOpen(value: string): void\n// onItemClose(value: string): void\n// }\n\n// const [AccordionValueProvider, useAccordionValueContext] =\n// createAccordionContext<AccordionValueContextValue>(ACCORDION_NAME)\n\n// const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n// ACCORDION_NAME,\n// { collapsible: false }\n// )\n\n// type AccordionImplSingleElement = AccordionImplElement\n// interface AccordionImplSingleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion item whose content is expanded.\n// */\n// value?: string\n// /**\n// * The value of the item whose content is expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string): void\n// /**\n// * Whether an accordion item can be collapsed after it has been opened.\n// * @default false\n// */\n// collapsible?: boolean\n// }\n\n// const AccordionImplSingle = React.forwardRef<AccordionImplSingleElement, AccordionImplSingleProps>(\n// (props: ScopedProps<AccordionImplSingleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// collapsible = false,\n// ...accordionSingleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || '',\n// onChange: onValueChange,\n// })\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value ? [value] : []}\n// onItemOpen={setValue}\n// onItemClose={React.useCallback(() => collapsible && setValue(''), [collapsible, setValue])}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={collapsible}>\n// <AccordionImpl {...accordionSingleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// }\n// )\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplMultipleElement = AccordionImplElement\n// interface AccordionImplMultipleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion items whose contents are expanded.\n// */\n// value?: string[]\n// /**\n// * The value of the items whose contents are expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string[]\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string[]): void\n// }\n\n// const AccordionImplMultiple = React.forwardRef<\n// AccordionImplMultipleElement,\n// AccordionImplMultipleProps\n// >((props: ScopedProps<AccordionImplMultipleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// ...accordionMultipleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || [],\n// onChange: onValueChange,\n// })\n\n// const handleItemOpen = React.useCallback(\n// (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n// [setValue]\n// )\n\n// const handleItemClose = React.useCallback(\n// (itemValue: string) =>\n// setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n// [setValue]\n// )\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value}\n// onItemOpen={handleItemOpen}\n// onItemClose={handleItemClose}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={true}>\n// <AccordionImpl {...accordionMultipleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// })\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplContextValue = {\n// disabled?: boolean\n// }\n\n// const [AccordionImplProvider, useAccordionContext] =\n// createAccordionContext<AccordionImplContextValue>(ACCORDION_NAME)\n\n// type AccordionImplElement = TamaguiElement\n// type PrimitiveDivProps = StackProps\n\n// interface AccordionImplProps extends PrimitiveDivProps {\n// /**\n// * Whether or not an accordion is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// }\n\n// const AccordionImpl = React.forwardRef<AccordionImplElement, AccordionImplProps>(\n// (props: ScopedProps<AccordionImplProps>, forwardedRef) => {\n// const { __scopeAccordion, disabled, ...accordionProps } = props\n// const accordionRef = React.useRef<AccordionImplElement>(null)\n// const composedRefs = useComposedRefs(accordionRef, forwardedRef)\n// // const getItems = useCollection(__scopeAccordion)\n\n// const handleKeyDown = (event: KeyboardEvent) => {\n// if (!ACCORDION_KEYS.includes(event.key)) return\n// const target = event.target as HTMLElement\n// const triggerCollection = [] //getItems().filter((item) => !item.ref.current?.disabled)\n// const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target)\n// const triggerCount = triggerCollection.length\n\n// if (triggerIndex === -1) return\n\n// // Prevents page scroll while user is navigating\n// event.preventDefault()\n\n// let nextIndex = triggerIndex\n// switch (event.key) {\n// case 'Home':\n// nextIndex = 0\n// break\n// case 'End':\n// nextIndex = triggerCount - 1\n// break\n// case 'ArrowDown':\n// nextIndex = triggerIndex + 1\n// break\n// case 'ArrowUp':\n// nextIndex = triggerIndex - 1\n// if (nextIndex < 0) {\n// nextIndex = triggerCount - 1\n// }\n// break\n// }\n\n// const clampedIndex = nextIndex % triggerCount\n// triggerCollection[clampedIndex].ref.current?.focus()\n// }\n\n// return (\n// <AccordionImplProvider scope={__scopeAccordion} disabled={disabled}>\n// <Stack\n// {...accordionProps}\n// // @ts-ignore\n// ref={composedRefs}\n// // @ts-ignore\n// onKeyDown={disabled ? undefined : handleKeyDown}\n// />\n// </AccordionImplProvider>\n// )\n// }\n// )\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionItem\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ITEM_NAME = 'AccordionItem'\n\n// type AccordionItemContextValue = { open?: boolean; disabled?: boolean; triggerId: string }\n// const [AccordionItemProvider, useAccordionItemContext] =\n// createAccordionContext<AccordionItemContextValue>(ITEM_NAME)\n\n// type AccordionItemElement = TamaguiElement\n// type CollapsibleProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Root>\n\n// interface AccordionItemProps\n// extends Omit<CollapsibleProps, 'open' | 'defaultOpen' | 'onOpenChange'> {\n// /**\n// * Whether or not an accordion item is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// /**\n// * A string value for the accordion item. All items within an accordion should use a unique value.\n// */\n// value: string\n// }\n\n// /**\n// * `AccordionItem` contains all of the parts of a collapsible section inside of an `Accordion`.\n// */\n// const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n// (props: ScopedProps<AccordionItemProps>, forwardedRef) => {\n// const { __scopeAccordion, value, ...accordionItemProps } = props\n// const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion)\n// const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// const triggerId = useId()\n// const open = (value && valueContext.value.includes(value)) || false\n// const disabled = accordionContext.disabled || props.disabled\n\n// return (\n// <AccordionItemProvider\n// scope={__scopeAccordion}\n// open={open}\n// disabled={disabled}\n// triggerId={triggerId}\n// >\n// <CollapsiblePrimitive.Root\n// data-state={open ? 'open' : 'closed'}\n// {...collapsibleScope}\n// {...accordionItemProps}\n// ref={forwardedRef}\n// disabled={disabled}\n// open={open}\n// onOpenChange={(open) => {\n// if (open) {\n// valueContext.onItemOpen(value)\n// } else {\n// valueContext.onItemClose(value)\n// }\n// }}\n// />\n// </AccordionItemProvider>\n// )\n// }\n// )\n\n// AccordionItem.displayName = ITEM_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionHeader\n// * -----------------------------------------------------------------------------------------------*/\n\n// const HEADER_NAME = 'AccordionHeader'\n\n// type AccordionHeaderElement = React.ElementRef<typeof Primitive.h3>\n// type PrimitiveHeading3Props = Radix.ComponentPropsWithoutRef<typeof Primitive.h3>\n// interface AccordionHeaderProps extends PrimitiveHeading3Props {}\n\n// /**\n// * `AccordionHeader` contains the content for the parts of an `AccordionItem` that will be visible\n// * whether or not its content is collapsed.\n// */\n// const AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n// (props: ScopedProps<AccordionHeaderProps>, forwardedRef) => {\n// const { __scopeAccordion, ...headerProps } = props\n// const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion)\n// return (\n// <Primitive.h3\n// data-state={getState(itemContext.open)}\n// data-disabled={itemContext.disabled ? '' : undefined}\n// {...headerProps}\n// ref={forwardedRef}\n// />\n// )\n// }\n// )\n\n// AccordionHeader.displayName = HEADER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionTrigger\n// * -----------------------------------------------------------------------------------------------*/\n\n// const TRIGGER_NAME = 'AccordionTrigger'\n\n// type AccordionTriggerElement = React.ElementRef<typeof CollapsiblePrimitive.Trigger>\n// type CollapsibleTriggerProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>\n// interface AccordionTriggerProps extends CollapsibleTriggerProps {}\n\n// /**\n// * `AccordionTrigger` is the trigger that toggles the collapsed state of an `AccordionItem`. It\n// * should always be nested inside of an `AccordionHeader`.\n// */\n// const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n// (props: ScopedProps<AccordionTriggerProps>, forwardedRef) => {\n// const { __scopeAccordion, ...triggerProps } = props\n// const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <Collection.ItemSlot scope={__scopeAccordion}>\n// <CollapsiblePrimitive.Trigger\n// aria-disabled={(itemContext.open && !collapsibleContext.collapsible) || undefined}\n// id={itemContext.triggerId}\n// {...collapsibleScope}\n// {...triggerProps}\n// ref={forwardedRef}\n// />\n// </Collection.ItemSlot>\n// )\n// }\n// )\n\n// AccordionTrigger.displayName = TRIGGER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionContent\n// * -----------------------------------------------------------------------------------------------*/\n\n// const CONTENT_NAME = 'AccordionContent'\n\n// type AccordionContentElement = React.ElementRef<typeof CollapsiblePrimitive.Content>\n// type CollapsibleContentProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>\n// interface AccordionContentProps extends CollapsibleContentProps {}\n\n// /**\n// * `AccordionContent` contains the collapsible content for an `AccordionItem`.\n// */\n// const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n// (props: ScopedProps<AccordionContentProps>, forwardedRef) => {\n// const { __scopeAccordion, ...contentProps } = props\n// const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <CollapsiblePrimitive.Content\n// role=\"region\"\n// aria-labelledby={itemContext.triggerId}\n// {...collapsibleScope}\n// {...contentProps}\n// ref={forwardedRef}\n// style={{\n// ['--radix-accordion-content-height' as any]: 'var(--radix-collapsible-content-height)',\n// ['--radix-accordion-content-width' as any]: 'var(--radix-collapsible-content-width)',\n// ...props.style,\n// }}\n// />\n// )\n// }\n// )\n\n// AccordionContent.displayName = CONTENT_NAME\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// function getState(open?: boolean) {\n// return open ? 'open' : 'closed'\n// }\n\n// const Root = Accordion\n// const Item = AccordionItem\n// const Header = AccordionHeader\n// const Trigger = AccordionTrigger\n// const Content = AccordionContent\n\n// export {\n// createAccordionScope,\n// //\n// Accordion,\n// AccordionItem,\n// AccordionHeader,\n// AccordionTrigger,\n// AccordionContent,\n// //\n// Root,\n// Item,\n// Header,\n// Trigger,\n// Content,\n// }\n// export type {\n// AccordionSingleProps,\n// AccordionMultipleProps,\n// AccordionItemProps,\n// AccordionHeaderProps,\n// AccordionTriggerProps,\n// AccordionContentProps,\n// }\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EAAY,CAAC",
6
- "names": ["Accordion_exports", "__export", "Accordion", "__toCommonJS"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,YAAY,CAAC;",
6
+ "names": []
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -1,2 +1,19 @@
1
- "use strict";var a=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var p=(r,o,f,x)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of c(o))!d.call(r,e)&&e!==f&&a(r,e,{get:()=>o[e],enumerable:!(x=b(o,e))||x.enumerable});return r},t=(r,o,f)=>(p(r,o,"default"),f&&p(f,o,"default"));var g=r=>p(a({},"__esModule",{value:!0}),r);var m={};module.exports=g(m);t(m,require("./Accordion"),module.exports);
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var src_exports = {};
17
+ module.exports = __toCommonJS(src_exports);
18
+ __reExport(src_exports, require("./Accordion"), module.exports);
2
19
  //# sourceMappingURL=index.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
4
  "sourcesContent": ["export * from './Accordion'\n"],
5
- "mappings": "iaAAA,IAAAA,EAAA,kBAAAC,EAAAD,GAAAE,EAAAF,EAAc,uBAAd",
6
- "names": ["src_exports", "__toCommonJS", "__reExport"]
5
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,wBAAd;",
6
+ "names": []
7
7
  }
@@ -1,2 +1,5 @@
1
- const o={};export{o as Accordion};
1
+ const Accordion = {};
2
+ export {
3
+ Accordion
4
+ };
2
5
  //# sourceMappingURL=Accordion.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
4
  "sourcesContent": ["export const Accordion = {}\n\n// import { useComposedRefs } from '@tamagui/compose-refs'\n// import { Stack, StackProps, TamaguiElement, composeEventHandlers } from '@tamagui/core'\n// import { useId } from '@tamagui/core'\n// import { createContextScope } from '@tamagui/create-context'\n// import type { Scope } from '@tamagui/create-context'\n// import { useControllableState } from '@tamagui/use-controllable-state'\n// import React from 'react'\n\n// const COLLAPSIBLE_NAME = 'Collapsible'\n\n// const [_createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME)\n\n// /* -------------------------------------------------------------------------------------------------\n// * Accordion\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ACCORDION_NAME = 'Accordion'\n// const ACCORDION_KEYS = ['Home', 'End', 'ArrowDown', 'ArrowUp']\n\n// type ScopedProps<P> = P & { __scopeAccordion?: Scope }\n// const [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n// createCollapsibleScope,\n// ])\n// const useCollapsibleScope = createCollapsibleScope()\n\n// type AccordionElement = AccordionImplMultipleElement | AccordionImplSingleElement\n// interface AccordionSingleProps extends AccordionImplSingleProps {\n// type: 'single'\n// }\n// interface AccordionMultipleProps extends AccordionImplMultipleProps {\n// type: 'multiple'\n// }\n\n// const Accordion = React.forwardRef<AccordionElement, AccordionSingleProps | AccordionMultipleProps>(\n// (props: ScopedProps<AccordionSingleProps | AccordionMultipleProps>, forwardedRef) => {\n// const { type, ...accordionProps } = props\n// const singleProps = accordionProps as AccordionImplSingleProps\n// const multipleProps = accordionProps as AccordionImplMultipleProps\n// return (\n// <>\n// {type === 'multiple' ? (\n// <AccordionImplMultiple {...multipleProps} ref={forwardedRef} />\n// ) : (\n// <AccordionImplSingle {...singleProps} ref={forwardedRef} />\n// )}\n// </>\n// )\n// }\n// )\n\n// Accordion.displayName = ACCORDION_NAME\n\n// Accordion.propTypes = {\n// type(props) {\n// const value = props.value || props.defaultValue\n// if (props.type && !['single', 'multiple'].includes(props.type)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`.'\n// )\n// }\n// if (props.type === 'multiple' && typeof value === 'string') {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`.'\n// )\n// }\n// if (props.type === 'single' && Array.isArray(value)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`.'\n// )\n// }\n// return null\n// },\n// }\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionValueContextValue = {\n// value: string[]\n// onItemOpen(value: string): void\n// onItemClose(value: string): void\n// }\n\n// const [AccordionValueProvider, useAccordionValueContext] =\n// createAccordionContext<AccordionValueContextValue>(ACCORDION_NAME)\n\n// const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n// ACCORDION_NAME,\n// { collapsible: false }\n// )\n\n// type AccordionImplSingleElement = AccordionImplElement\n// interface AccordionImplSingleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion item whose content is expanded.\n// */\n// value?: string\n// /**\n// * The value of the item whose content is expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string): void\n// /**\n// * Whether an accordion item can be collapsed after it has been opened.\n// * @default false\n// */\n// collapsible?: boolean\n// }\n\n// const AccordionImplSingle = React.forwardRef<AccordionImplSingleElement, AccordionImplSingleProps>(\n// (props: ScopedProps<AccordionImplSingleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// collapsible = false,\n// ...accordionSingleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || '',\n// onChange: onValueChange,\n// })\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value ? [value] : []}\n// onItemOpen={setValue}\n// onItemClose={React.useCallback(() => collapsible && setValue(''), [collapsible, setValue])}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={collapsible}>\n// <AccordionImpl {...accordionSingleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// }\n// )\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplMultipleElement = AccordionImplElement\n// interface AccordionImplMultipleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion items whose contents are expanded.\n// */\n// value?: string[]\n// /**\n// * The value of the items whose contents are expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string[]\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string[]): void\n// }\n\n// const AccordionImplMultiple = React.forwardRef<\n// AccordionImplMultipleElement,\n// AccordionImplMultipleProps\n// >((props: ScopedProps<AccordionImplMultipleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// ...accordionMultipleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || [],\n// onChange: onValueChange,\n// })\n\n// const handleItemOpen = React.useCallback(\n// (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n// [setValue]\n// )\n\n// const handleItemClose = React.useCallback(\n// (itemValue: string) =>\n// setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n// [setValue]\n// )\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value}\n// onItemOpen={handleItemOpen}\n// onItemClose={handleItemClose}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={true}>\n// <AccordionImpl {...accordionMultipleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// })\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplContextValue = {\n// disabled?: boolean\n// }\n\n// const [AccordionImplProvider, useAccordionContext] =\n// createAccordionContext<AccordionImplContextValue>(ACCORDION_NAME)\n\n// type AccordionImplElement = TamaguiElement\n// type PrimitiveDivProps = StackProps\n\n// interface AccordionImplProps extends PrimitiveDivProps {\n// /**\n// * Whether or not an accordion is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// }\n\n// const AccordionImpl = React.forwardRef<AccordionImplElement, AccordionImplProps>(\n// (props: ScopedProps<AccordionImplProps>, forwardedRef) => {\n// const { __scopeAccordion, disabled, ...accordionProps } = props\n// const accordionRef = React.useRef<AccordionImplElement>(null)\n// const composedRefs = useComposedRefs(accordionRef, forwardedRef)\n// // const getItems = useCollection(__scopeAccordion)\n\n// const handleKeyDown = (event: KeyboardEvent) => {\n// if (!ACCORDION_KEYS.includes(event.key)) return\n// const target = event.target as HTMLElement\n// const triggerCollection = [] //getItems().filter((item) => !item.ref.current?.disabled)\n// const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target)\n// const triggerCount = triggerCollection.length\n\n// if (triggerIndex === -1) return\n\n// // Prevents page scroll while user is navigating\n// event.preventDefault()\n\n// let nextIndex = triggerIndex\n// switch (event.key) {\n// case 'Home':\n// nextIndex = 0\n// break\n// case 'End':\n// nextIndex = triggerCount - 1\n// break\n// case 'ArrowDown':\n// nextIndex = triggerIndex + 1\n// break\n// case 'ArrowUp':\n// nextIndex = triggerIndex - 1\n// if (nextIndex < 0) {\n// nextIndex = triggerCount - 1\n// }\n// break\n// }\n\n// const clampedIndex = nextIndex % triggerCount\n// triggerCollection[clampedIndex].ref.current?.focus()\n// }\n\n// return (\n// <AccordionImplProvider scope={__scopeAccordion} disabled={disabled}>\n// <Stack\n// {...accordionProps}\n// // @ts-ignore\n// ref={composedRefs}\n// // @ts-ignore\n// onKeyDown={disabled ? undefined : handleKeyDown}\n// />\n// </AccordionImplProvider>\n// )\n// }\n// )\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionItem\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ITEM_NAME = 'AccordionItem'\n\n// type AccordionItemContextValue = { open?: boolean; disabled?: boolean; triggerId: string }\n// const [AccordionItemProvider, useAccordionItemContext] =\n// createAccordionContext<AccordionItemContextValue>(ITEM_NAME)\n\n// type AccordionItemElement = TamaguiElement\n// type CollapsibleProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Root>\n\n// interface AccordionItemProps\n// extends Omit<CollapsibleProps, 'open' | 'defaultOpen' | 'onOpenChange'> {\n// /**\n// * Whether or not an accordion item is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// /**\n// * A string value for the accordion item. All items within an accordion should use a unique value.\n// */\n// value: string\n// }\n\n// /**\n// * `AccordionItem` contains all of the parts of a collapsible section inside of an `Accordion`.\n// */\n// const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n// (props: ScopedProps<AccordionItemProps>, forwardedRef) => {\n// const { __scopeAccordion, value, ...accordionItemProps } = props\n// const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion)\n// const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// const triggerId = useId()\n// const open = (value && valueContext.value.includes(value)) || false\n// const disabled = accordionContext.disabled || props.disabled\n\n// return (\n// <AccordionItemProvider\n// scope={__scopeAccordion}\n// open={open}\n// disabled={disabled}\n// triggerId={triggerId}\n// >\n// <CollapsiblePrimitive.Root\n// data-state={open ? 'open' : 'closed'}\n// {...collapsibleScope}\n// {...accordionItemProps}\n// ref={forwardedRef}\n// disabled={disabled}\n// open={open}\n// onOpenChange={(open) => {\n// if (open) {\n// valueContext.onItemOpen(value)\n// } else {\n// valueContext.onItemClose(value)\n// }\n// }}\n// />\n// </AccordionItemProvider>\n// )\n// }\n// )\n\n// AccordionItem.displayName = ITEM_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionHeader\n// * -----------------------------------------------------------------------------------------------*/\n\n// const HEADER_NAME = 'AccordionHeader'\n\n// type AccordionHeaderElement = React.ElementRef<typeof Primitive.h3>\n// type PrimitiveHeading3Props = Radix.ComponentPropsWithoutRef<typeof Primitive.h3>\n// interface AccordionHeaderProps extends PrimitiveHeading3Props {}\n\n// /**\n// * `AccordionHeader` contains the content for the parts of an `AccordionItem` that will be visible\n// * whether or not its content is collapsed.\n// */\n// const AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n// (props: ScopedProps<AccordionHeaderProps>, forwardedRef) => {\n// const { __scopeAccordion, ...headerProps } = props\n// const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion)\n// return (\n// <Primitive.h3\n// data-state={getState(itemContext.open)}\n// data-disabled={itemContext.disabled ? '' : undefined}\n// {...headerProps}\n// ref={forwardedRef}\n// />\n// )\n// }\n// )\n\n// AccordionHeader.displayName = HEADER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionTrigger\n// * -----------------------------------------------------------------------------------------------*/\n\n// const TRIGGER_NAME = 'AccordionTrigger'\n\n// type AccordionTriggerElement = React.ElementRef<typeof CollapsiblePrimitive.Trigger>\n// type CollapsibleTriggerProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>\n// interface AccordionTriggerProps extends CollapsibleTriggerProps {}\n\n// /**\n// * `AccordionTrigger` is the trigger that toggles the collapsed state of an `AccordionItem`. It\n// * should always be nested inside of an `AccordionHeader`.\n// */\n// const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n// (props: ScopedProps<AccordionTriggerProps>, forwardedRef) => {\n// const { __scopeAccordion, ...triggerProps } = props\n// const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <Collection.ItemSlot scope={__scopeAccordion}>\n// <CollapsiblePrimitive.Trigger\n// aria-disabled={(itemContext.open && !collapsibleContext.collapsible) || undefined}\n// id={itemContext.triggerId}\n// {...collapsibleScope}\n// {...triggerProps}\n// ref={forwardedRef}\n// />\n// </Collection.ItemSlot>\n// )\n// }\n// )\n\n// AccordionTrigger.displayName = TRIGGER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionContent\n// * -----------------------------------------------------------------------------------------------*/\n\n// const CONTENT_NAME = 'AccordionContent'\n\n// type AccordionContentElement = React.ElementRef<typeof CollapsiblePrimitive.Content>\n// type CollapsibleContentProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>\n// interface AccordionContentProps extends CollapsibleContentProps {}\n\n// /**\n// * `AccordionContent` contains the collapsible content for an `AccordionItem`.\n// */\n// const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n// (props: ScopedProps<AccordionContentProps>, forwardedRef) => {\n// const { __scopeAccordion, ...contentProps } = props\n// const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <CollapsiblePrimitive.Content\n// role=\"region\"\n// aria-labelledby={itemContext.triggerId}\n// {...collapsibleScope}\n// {...contentProps}\n// ref={forwardedRef}\n// style={{\n// ['--radix-accordion-content-height' as any]: 'var(--radix-collapsible-content-height)',\n// ['--radix-accordion-content-width' as any]: 'var(--radix-collapsible-content-width)',\n// ...props.style,\n// }}\n// />\n// )\n// }\n// )\n\n// AccordionContent.displayName = CONTENT_NAME\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// function getState(open?: boolean) {\n// return open ? 'open' : 'closed'\n// }\n\n// const Root = Accordion\n// const Item = AccordionItem\n// const Header = AccordionHeader\n// const Trigger = AccordionTrigger\n// const Content = AccordionContent\n\n// export {\n// createAccordionScope,\n// //\n// Accordion,\n// AccordionItem,\n// AccordionHeader,\n// AccordionTrigger,\n// AccordionContent,\n// //\n// Root,\n// Item,\n// Header,\n// Trigger,\n// Content,\n// }\n// export type {\n// AccordionSingleProps,\n// AccordionMultipleProps,\n// AccordionItemProps,\n// AccordionHeaderProps,\n// AccordionTriggerProps,\n// AccordionContentProps,\n// }\n"],
5
- "mappings": "AAAO,MAAMA,EAAY,CAAC",
6
- "names": ["Accordion"]
5
+ "mappings": "AAAO,MAAM,YAAY,CAAC;",
6
+ "names": []
7
7
  }
@@ -1,2 +1,5 @@
1
- const o={};export{o as Accordion};
1
+ const Accordion = {};
2
+ export {
3
+ Accordion
4
+ };
2
5
  //# sourceMappingURL=Accordion.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
4
  "sourcesContent": ["export const Accordion = {}\n\n// import { useComposedRefs } from '@tamagui/compose-refs'\n// import { Stack, StackProps, TamaguiElement, composeEventHandlers } from '@tamagui/core'\n// import { useId } from '@tamagui/core'\n// import { createContextScope } from '@tamagui/create-context'\n// import type { Scope } from '@tamagui/create-context'\n// import { useControllableState } from '@tamagui/use-controllable-state'\n// import React from 'react'\n\n// const COLLAPSIBLE_NAME = 'Collapsible'\n\n// const [_createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME)\n\n// /* -------------------------------------------------------------------------------------------------\n// * Accordion\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ACCORDION_NAME = 'Accordion'\n// const ACCORDION_KEYS = ['Home', 'End', 'ArrowDown', 'ArrowUp']\n\n// type ScopedProps<P> = P & { __scopeAccordion?: Scope }\n// const [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n// createCollapsibleScope,\n// ])\n// const useCollapsibleScope = createCollapsibleScope()\n\n// type AccordionElement = AccordionImplMultipleElement | AccordionImplSingleElement\n// interface AccordionSingleProps extends AccordionImplSingleProps {\n// type: 'single'\n// }\n// interface AccordionMultipleProps extends AccordionImplMultipleProps {\n// type: 'multiple'\n// }\n\n// const Accordion = React.forwardRef<AccordionElement, AccordionSingleProps | AccordionMultipleProps>(\n// (props: ScopedProps<AccordionSingleProps | AccordionMultipleProps>, forwardedRef) => {\n// const { type, ...accordionProps } = props\n// const singleProps = accordionProps as AccordionImplSingleProps\n// const multipleProps = accordionProps as AccordionImplMultipleProps\n// return (\n// <>\n// {type === 'multiple' ? (\n// <AccordionImplMultiple {...multipleProps} ref={forwardedRef} />\n// ) : (\n// <AccordionImplSingle {...singleProps} ref={forwardedRef} />\n// )}\n// </>\n// )\n// }\n// )\n\n// Accordion.displayName = ACCORDION_NAME\n\n// Accordion.propTypes = {\n// type(props) {\n// const value = props.value || props.defaultValue\n// if (props.type && !['single', 'multiple'].includes(props.type)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`.'\n// )\n// }\n// if (props.type === 'multiple' && typeof value === 'string') {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`.'\n// )\n// }\n// if (props.type === 'single' && Array.isArray(value)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`.'\n// )\n// }\n// return null\n// },\n// }\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionValueContextValue = {\n// value: string[]\n// onItemOpen(value: string): void\n// onItemClose(value: string): void\n// }\n\n// const [AccordionValueProvider, useAccordionValueContext] =\n// createAccordionContext<AccordionValueContextValue>(ACCORDION_NAME)\n\n// const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n// ACCORDION_NAME,\n// { collapsible: false }\n// )\n\n// type AccordionImplSingleElement = AccordionImplElement\n// interface AccordionImplSingleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion item whose content is expanded.\n// */\n// value?: string\n// /**\n// * The value of the item whose content is expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string): void\n// /**\n// * Whether an accordion item can be collapsed after it has been opened.\n// * @default false\n// */\n// collapsible?: boolean\n// }\n\n// const AccordionImplSingle = React.forwardRef<AccordionImplSingleElement, AccordionImplSingleProps>(\n// (props: ScopedProps<AccordionImplSingleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// collapsible = false,\n// ...accordionSingleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || '',\n// onChange: onValueChange,\n// })\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value ? [value] : []}\n// onItemOpen={setValue}\n// onItemClose={React.useCallback(() => collapsible && setValue(''), [collapsible, setValue])}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={collapsible}>\n// <AccordionImpl {...accordionSingleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// }\n// )\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplMultipleElement = AccordionImplElement\n// interface AccordionImplMultipleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion items whose contents are expanded.\n// */\n// value?: string[]\n// /**\n// * The value of the items whose contents are expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string[]\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string[]): void\n// }\n\n// const AccordionImplMultiple = React.forwardRef<\n// AccordionImplMultipleElement,\n// AccordionImplMultipleProps\n// >((props: ScopedProps<AccordionImplMultipleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// ...accordionMultipleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || [],\n// onChange: onValueChange,\n// })\n\n// const handleItemOpen = React.useCallback(\n// (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n// [setValue]\n// )\n\n// const handleItemClose = React.useCallback(\n// (itemValue: string) =>\n// setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n// [setValue]\n// )\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value}\n// onItemOpen={handleItemOpen}\n// onItemClose={handleItemClose}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={true}>\n// <AccordionImpl {...accordionMultipleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// })\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplContextValue = {\n// disabled?: boolean\n// }\n\n// const [AccordionImplProvider, useAccordionContext] =\n// createAccordionContext<AccordionImplContextValue>(ACCORDION_NAME)\n\n// type AccordionImplElement = TamaguiElement\n// type PrimitiveDivProps = StackProps\n\n// interface AccordionImplProps extends PrimitiveDivProps {\n// /**\n// * Whether or not an accordion is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// }\n\n// const AccordionImpl = React.forwardRef<AccordionImplElement, AccordionImplProps>(\n// (props: ScopedProps<AccordionImplProps>, forwardedRef) => {\n// const { __scopeAccordion, disabled, ...accordionProps } = props\n// const accordionRef = React.useRef<AccordionImplElement>(null)\n// const composedRefs = useComposedRefs(accordionRef, forwardedRef)\n// // const getItems = useCollection(__scopeAccordion)\n\n// const handleKeyDown = (event: KeyboardEvent) => {\n// if (!ACCORDION_KEYS.includes(event.key)) return\n// const target = event.target as HTMLElement\n// const triggerCollection = [] //getItems().filter((item) => !item.ref.current?.disabled)\n// const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target)\n// const triggerCount = triggerCollection.length\n\n// if (triggerIndex === -1) return\n\n// // Prevents page scroll while user is navigating\n// event.preventDefault()\n\n// let nextIndex = triggerIndex\n// switch (event.key) {\n// case 'Home':\n// nextIndex = 0\n// break\n// case 'End':\n// nextIndex = triggerCount - 1\n// break\n// case 'ArrowDown':\n// nextIndex = triggerIndex + 1\n// break\n// case 'ArrowUp':\n// nextIndex = triggerIndex - 1\n// if (nextIndex < 0) {\n// nextIndex = triggerCount - 1\n// }\n// break\n// }\n\n// const clampedIndex = nextIndex % triggerCount\n// triggerCollection[clampedIndex].ref.current?.focus()\n// }\n\n// return (\n// <AccordionImplProvider scope={__scopeAccordion} disabled={disabled}>\n// <Stack\n// {...accordionProps}\n// // @ts-ignore\n// ref={composedRefs}\n// // @ts-ignore\n// onKeyDown={disabled ? undefined : handleKeyDown}\n// />\n// </AccordionImplProvider>\n// )\n// }\n// )\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionItem\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ITEM_NAME = 'AccordionItem'\n\n// type AccordionItemContextValue = { open?: boolean; disabled?: boolean; triggerId: string }\n// const [AccordionItemProvider, useAccordionItemContext] =\n// createAccordionContext<AccordionItemContextValue>(ITEM_NAME)\n\n// type AccordionItemElement = TamaguiElement\n// type CollapsibleProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Root>\n\n// interface AccordionItemProps\n// extends Omit<CollapsibleProps, 'open' | 'defaultOpen' | 'onOpenChange'> {\n// /**\n// * Whether or not an accordion item is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// /**\n// * A string value for the accordion item. All items within an accordion should use a unique value.\n// */\n// value: string\n// }\n\n// /**\n// * `AccordionItem` contains all of the parts of a collapsible section inside of an `Accordion`.\n// */\n// const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n// (props: ScopedProps<AccordionItemProps>, forwardedRef) => {\n// const { __scopeAccordion, value, ...accordionItemProps } = props\n// const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion)\n// const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// const triggerId = useId()\n// const open = (value && valueContext.value.includes(value)) || false\n// const disabled = accordionContext.disabled || props.disabled\n\n// return (\n// <AccordionItemProvider\n// scope={__scopeAccordion}\n// open={open}\n// disabled={disabled}\n// triggerId={triggerId}\n// >\n// <CollapsiblePrimitive.Root\n// data-state={open ? 'open' : 'closed'}\n// {...collapsibleScope}\n// {...accordionItemProps}\n// ref={forwardedRef}\n// disabled={disabled}\n// open={open}\n// onOpenChange={(open) => {\n// if (open) {\n// valueContext.onItemOpen(value)\n// } else {\n// valueContext.onItemClose(value)\n// }\n// }}\n// />\n// </AccordionItemProvider>\n// )\n// }\n// )\n\n// AccordionItem.displayName = ITEM_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionHeader\n// * -----------------------------------------------------------------------------------------------*/\n\n// const HEADER_NAME = 'AccordionHeader'\n\n// type AccordionHeaderElement = React.ElementRef<typeof Primitive.h3>\n// type PrimitiveHeading3Props = Radix.ComponentPropsWithoutRef<typeof Primitive.h3>\n// interface AccordionHeaderProps extends PrimitiveHeading3Props {}\n\n// /**\n// * `AccordionHeader` contains the content for the parts of an `AccordionItem` that will be visible\n// * whether or not its content is collapsed.\n// */\n// const AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n// (props: ScopedProps<AccordionHeaderProps>, forwardedRef) => {\n// const { __scopeAccordion, ...headerProps } = props\n// const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion)\n// return (\n// <Primitive.h3\n// data-state={getState(itemContext.open)}\n// data-disabled={itemContext.disabled ? '' : undefined}\n// {...headerProps}\n// ref={forwardedRef}\n// />\n// )\n// }\n// )\n\n// AccordionHeader.displayName = HEADER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionTrigger\n// * -----------------------------------------------------------------------------------------------*/\n\n// const TRIGGER_NAME = 'AccordionTrigger'\n\n// type AccordionTriggerElement = React.ElementRef<typeof CollapsiblePrimitive.Trigger>\n// type CollapsibleTriggerProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>\n// interface AccordionTriggerProps extends CollapsibleTriggerProps {}\n\n// /**\n// * `AccordionTrigger` is the trigger that toggles the collapsed state of an `AccordionItem`. It\n// * should always be nested inside of an `AccordionHeader`.\n// */\n// const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n// (props: ScopedProps<AccordionTriggerProps>, forwardedRef) => {\n// const { __scopeAccordion, ...triggerProps } = props\n// const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <Collection.ItemSlot scope={__scopeAccordion}>\n// <CollapsiblePrimitive.Trigger\n// aria-disabled={(itemContext.open && !collapsibleContext.collapsible) || undefined}\n// id={itemContext.triggerId}\n// {...collapsibleScope}\n// {...triggerProps}\n// ref={forwardedRef}\n// />\n// </Collection.ItemSlot>\n// )\n// }\n// )\n\n// AccordionTrigger.displayName = TRIGGER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionContent\n// * -----------------------------------------------------------------------------------------------*/\n\n// const CONTENT_NAME = 'AccordionContent'\n\n// type AccordionContentElement = React.ElementRef<typeof CollapsiblePrimitive.Content>\n// type CollapsibleContentProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>\n// interface AccordionContentProps extends CollapsibleContentProps {}\n\n// /**\n// * `AccordionContent` contains the collapsible content for an `AccordionItem`.\n// */\n// const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n// (props: ScopedProps<AccordionContentProps>, forwardedRef) => {\n// const { __scopeAccordion, ...contentProps } = props\n// const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <CollapsiblePrimitive.Content\n// role=\"region\"\n// aria-labelledby={itemContext.triggerId}\n// {...collapsibleScope}\n// {...contentProps}\n// ref={forwardedRef}\n// style={{\n// ['--radix-accordion-content-height' as any]: 'var(--radix-collapsible-content-height)',\n// ['--radix-accordion-content-width' as any]: 'var(--radix-collapsible-content-width)',\n// ...props.style,\n// }}\n// />\n// )\n// }\n// )\n\n// AccordionContent.displayName = CONTENT_NAME\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// function getState(open?: boolean) {\n// return open ? 'open' : 'closed'\n// }\n\n// const Root = Accordion\n// const Item = AccordionItem\n// const Header = AccordionHeader\n// const Trigger = AccordionTrigger\n// const Content = AccordionContent\n\n// export {\n// createAccordionScope,\n// //\n// Accordion,\n// AccordionItem,\n// AccordionHeader,\n// AccordionTrigger,\n// AccordionContent,\n// //\n// Root,\n// Item,\n// Header,\n// Trigger,\n// Content,\n// }\n// export type {\n// AccordionSingleProps,\n// AccordionMultipleProps,\n// AccordionItemProps,\n// AccordionHeaderProps,\n// AccordionTriggerProps,\n// AccordionContentProps,\n// }\n"],
5
- "mappings": "AAAO,MAAMA,EAAY,CAAC",
6
- "names": ["Accordion"]
5
+ "mappings": "AAAO,MAAM,YAAY,CAAC;",
6
+ "names": []
7
7
  }
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export*from"./Accordion";
1
+ export * from "./Accordion";
2
2
  //# sourceMappingURL=index.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
4
  "sourcesContent": ["export * from './Accordion'\n"],
5
- "mappings": "AAAA,WAAc",
5
+ "mappings": "AAAA,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,2 +1,2 @@
1
- export*from"./Accordion";
1
+ export * from "./Accordion";
2
2
  //# sourceMappingURL=index.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
4
  "sourcesContent": ["export * from './Accordion'\n"],
5
- "mappings": "AAAA,WAAc",
5
+ "mappings": "AAAA,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,2 +1,5 @@
1
- const o={};export{o as Accordion};
1
+ const Accordion = {};
2
+ export {
3
+ Accordion
4
+ };
2
5
  //# sourceMappingURL=Accordion.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
4
  "sourcesContent": ["export const Accordion = {}\n\n// import { useComposedRefs } from '@tamagui/compose-refs'\n// import { Stack, StackProps, TamaguiElement, composeEventHandlers } from '@tamagui/core'\n// import { useId } from '@tamagui/core'\n// import { createContextScope } from '@tamagui/create-context'\n// import type { Scope } from '@tamagui/create-context'\n// import { useControllableState } from '@tamagui/use-controllable-state'\n// import React from 'react'\n\n// const COLLAPSIBLE_NAME = 'Collapsible'\n\n// const [_createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME)\n\n// /* -------------------------------------------------------------------------------------------------\n// * Accordion\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ACCORDION_NAME = 'Accordion'\n// const ACCORDION_KEYS = ['Home', 'End', 'ArrowDown', 'ArrowUp']\n\n// type ScopedProps<P> = P & { __scopeAccordion?: Scope }\n// const [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n// createCollapsibleScope,\n// ])\n// const useCollapsibleScope = createCollapsibleScope()\n\n// type AccordionElement = AccordionImplMultipleElement | AccordionImplSingleElement\n// interface AccordionSingleProps extends AccordionImplSingleProps {\n// type: 'single'\n// }\n// interface AccordionMultipleProps extends AccordionImplMultipleProps {\n// type: 'multiple'\n// }\n\n// const Accordion = React.forwardRef<AccordionElement, AccordionSingleProps | AccordionMultipleProps>(\n// (props: ScopedProps<AccordionSingleProps | AccordionMultipleProps>, forwardedRef) => {\n// const { type, ...accordionProps } = props\n// const singleProps = accordionProps as AccordionImplSingleProps\n// const multipleProps = accordionProps as AccordionImplMultipleProps\n// return (\n// <>\n// {type === 'multiple' ? (\n// <AccordionImplMultiple {...multipleProps} ref={forwardedRef} />\n// ) : (\n// <AccordionImplSingle {...singleProps} ref={forwardedRef} />\n// )}\n// </>\n// )\n// }\n// )\n\n// Accordion.displayName = ACCORDION_NAME\n\n// Accordion.propTypes = {\n// type(props) {\n// const value = props.value || props.defaultValue\n// if (props.type && !['single', 'multiple'].includes(props.type)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`.'\n// )\n// }\n// if (props.type === 'multiple' && typeof value === 'string') {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`.'\n// )\n// }\n// if (props.type === 'single' && Array.isArray(value)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`.'\n// )\n// }\n// return null\n// },\n// }\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionValueContextValue = {\n// value: string[]\n// onItemOpen(value: string): void\n// onItemClose(value: string): void\n// }\n\n// const [AccordionValueProvider, useAccordionValueContext] =\n// createAccordionContext<AccordionValueContextValue>(ACCORDION_NAME)\n\n// const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n// ACCORDION_NAME,\n// { collapsible: false }\n// )\n\n// type AccordionImplSingleElement = AccordionImplElement\n// interface AccordionImplSingleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion item whose content is expanded.\n// */\n// value?: string\n// /**\n// * The value of the item whose content is expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string): void\n// /**\n// * Whether an accordion item can be collapsed after it has been opened.\n// * @default false\n// */\n// collapsible?: boolean\n// }\n\n// const AccordionImplSingle = React.forwardRef<AccordionImplSingleElement, AccordionImplSingleProps>(\n// (props: ScopedProps<AccordionImplSingleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// collapsible = false,\n// ...accordionSingleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || '',\n// onChange: onValueChange,\n// })\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value ? [value] : []}\n// onItemOpen={setValue}\n// onItemClose={React.useCallback(() => collapsible && setValue(''), [collapsible, setValue])}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={collapsible}>\n// <AccordionImpl {...accordionSingleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// }\n// )\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplMultipleElement = AccordionImplElement\n// interface AccordionImplMultipleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion items whose contents are expanded.\n// */\n// value?: string[]\n// /**\n// * The value of the items whose contents are expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string[]\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string[]): void\n// }\n\n// const AccordionImplMultiple = React.forwardRef<\n// AccordionImplMultipleElement,\n// AccordionImplMultipleProps\n// >((props: ScopedProps<AccordionImplMultipleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// ...accordionMultipleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || [],\n// onChange: onValueChange,\n// })\n\n// const handleItemOpen = React.useCallback(\n// (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n// [setValue]\n// )\n\n// const handleItemClose = React.useCallback(\n// (itemValue: string) =>\n// setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n// [setValue]\n// )\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value}\n// onItemOpen={handleItemOpen}\n// onItemClose={handleItemClose}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={true}>\n// <AccordionImpl {...accordionMultipleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// })\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplContextValue = {\n// disabled?: boolean\n// }\n\n// const [AccordionImplProvider, useAccordionContext] =\n// createAccordionContext<AccordionImplContextValue>(ACCORDION_NAME)\n\n// type AccordionImplElement = TamaguiElement\n// type PrimitiveDivProps = StackProps\n\n// interface AccordionImplProps extends PrimitiveDivProps {\n// /**\n// * Whether or not an accordion is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// }\n\n// const AccordionImpl = React.forwardRef<AccordionImplElement, AccordionImplProps>(\n// (props: ScopedProps<AccordionImplProps>, forwardedRef) => {\n// const { __scopeAccordion, disabled, ...accordionProps } = props\n// const accordionRef = React.useRef<AccordionImplElement>(null)\n// const composedRefs = useComposedRefs(accordionRef, forwardedRef)\n// // const getItems = useCollection(__scopeAccordion)\n\n// const handleKeyDown = (event: KeyboardEvent) => {\n// if (!ACCORDION_KEYS.includes(event.key)) return\n// const target = event.target as HTMLElement\n// const triggerCollection = [] //getItems().filter((item) => !item.ref.current?.disabled)\n// const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target)\n// const triggerCount = triggerCollection.length\n\n// if (triggerIndex === -1) return\n\n// // Prevents page scroll while user is navigating\n// event.preventDefault()\n\n// let nextIndex = triggerIndex\n// switch (event.key) {\n// case 'Home':\n// nextIndex = 0\n// break\n// case 'End':\n// nextIndex = triggerCount - 1\n// break\n// case 'ArrowDown':\n// nextIndex = triggerIndex + 1\n// break\n// case 'ArrowUp':\n// nextIndex = triggerIndex - 1\n// if (nextIndex < 0) {\n// nextIndex = triggerCount - 1\n// }\n// break\n// }\n\n// const clampedIndex = nextIndex % triggerCount\n// triggerCollection[clampedIndex].ref.current?.focus()\n// }\n\n// return (\n// <AccordionImplProvider scope={__scopeAccordion} disabled={disabled}>\n// <Stack\n// {...accordionProps}\n// // @ts-ignore\n// ref={composedRefs}\n// // @ts-ignore\n// onKeyDown={disabled ? undefined : handleKeyDown}\n// />\n// </AccordionImplProvider>\n// )\n// }\n// )\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionItem\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ITEM_NAME = 'AccordionItem'\n\n// type AccordionItemContextValue = { open?: boolean; disabled?: boolean; triggerId: string }\n// const [AccordionItemProvider, useAccordionItemContext] =\n// createAccordionContext<AccordionItemContextValue>(ITEM_NAME)\n\n// type AccordionItemElement = TamaguiElement\n// type CollapsibleProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Root>\n\n// interface AccordionItemProps\n// extends Omit<CollapsibleProps, 'open' | 'defaultOpen' | 'onOpenChange'> {\n// /**\n// * Whether or not an accordion item is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// /**\n// * A string value for the accordion item. All items within an accordion should use a unique value.\n// */\n// value: string\n// }\n\n// /**\n// * `AccordionItem` contains all of the parts of a collapsible section inside of an `Accordion`.\n// */\n// const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n// (props: ScopedProps<AccordionItemProps>, forwardedRef) => {\n// const { __scopeAccordion, value, ...accordionItemProps } = props\n// const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion)\n// const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// const triggerId = useId()\n// const open = (value && valueContext.value.includes(value)) || false\n// const disabled = accordionContext.disabled || props.disabled\n\n// return (\n// <AccordionItemProvider\n// scope={__scopeAccordion}\n// open={open}\n// disabled={disabled}\n// triggerId={triggerId}\n// >\n// <CollapsiblePrimitive.Root\n// data-state={open ? 'open' : 'closed'}\n// {...collapsibleScope}\n// {...accordionItemProps}\n// ref={forwardedRef}\n// disabled={disabled}\n// open={open}\n// onOpenChange={(open) => {\n// if (open) {\n// valueContext.onItemOpen(value)\n// } else {\n// valueContext.onItemClose(value)\n// }\n// }}\n// />\n// </AccordionItemProvider>\n// )\n// }\n// )\n\n// AccordionItem.displayName = ITEM_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionHeader\n// * -----------------------------------------------------------------------------------------------*/\n\n// const HEADER_NAME = 'AccordionHeader'\n\n// type AccordionHeaderElement = React.ElementRef<typeof Primitive.h3>\n// type PrimitiveHeading3Props = Radix.ComponentPropsWithoutRef<typeof Primitive.h3>\n// interface AccordionHeaderProps extends PrimitiveHeading3Props {}\n\n// /**\n// * `AccordionHeader` contains the content for the parts of an `AccordionItem` that will be visible\n// * whether or not its content is collapsed.\n// */\n// const AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n// (props: ScopedProps<AccordionHeaderProps>, forwardedRef) => {\n// const { __scopeAccordion, ...headerProps } = props\n// const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion)\n// return (\n// <Primitive.h3\n// data-state={getState(itemContext.open)}\n// data-disabled={itemContext.disabled ? '' : undefined}\n// {...headerProps}\n// ref={forwardedRef}\n// />\n// )\n// }\n// )\n\n// AccordionHeader.displayName = HEADER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionTrigger\n// * -----------------------------------------------------------------------------------------------*/\n\n// const TRIGGER_NAME = 'AccordionTrigger'\n\n// type AccordionTriggerElement = React.ElementRef<typeof CollapsiblePrimitive.Trigger>\n// type CollapsibleTriggerProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>\n// interface AccordionTriggerProps extends CollapsibleTriggerProps {}\n\n// /**\n// * `AccordionTrigger` is the trigger that toggles the collapsed state of an `AccordionItem`. It\n// * should always be nested inside of an `AccordionHeader`.\n// */\n// const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n// (props: ScopedProps<AccordionTriggerProps>, forwardedRef) => {\n// const { __scopeAccordion, ...triggerProps } = props\n// const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <Collection.ItemSlot scope={__scopeAccordion}>\n// <CollapsiblePrimitive.Trigger\n// aria-disabled={(itemContext.open && !collapsibleContext.collapsible) || undefined}\n// id={itemContext.triggerId}\n// {...collapsibleScope}\n// {...triggerProps}\n// ref={forwardedRef}\n// />\n// </Collection.ItemSlot>\n// )\n// }\n// )\n\n// AccordionTrigger.displayName = TRIGGER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionContent\n// * -----------------------------------------------------------------------------------------------*/\n\n// const CONTENT_NAME = 'AccordionContent'\n\n// type AccordionContentElement = React.ElementRef<typeof CollapsiblePrimitive.Content>\n// type CollapsibleContentProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>\n// interface AccordionContentProps extends CollapsibleContentProps {}\n\n// /**\n// * `AccordionContent` contains the collapsible content for an `AccordionItem`.\n// */\n// const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n// (props: ScopedProps<AccordionContentProps>, forwardedRef) => {\n// const { __scopeAccordion, ...contentProps } = props\n// const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <CollapsiblePrimitive.Content\n// role=\"region\"\n// aria-labelledby={itemContext.triggerId}\n// {...collapsibleScope}\n// {...contentProps}\n// ref={forwardedRef}\n// style={{\n// ['--radix-accordion-content-height' as any]: 'var(--radix-collapsible-content-height)',\n// ['--radix-accordion-content-width' as any]: 'var(--radix-collapsible-content-width)',\n// ...props.style,\n// }}\n// />\n// )\n// }\n// )\n\n// AccordionContent.displayName = CONTENT_NAME\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// function getState(open?: boolean) {\n// return open ? 'open' : 'closed'\n// }\n\n// const Root = Accordion\n// const Item = AccordionItem\n// const Header = AccordionHeader\n// const Trigger = AccordionTrigger\n// const Content = AccordionContent\n\n// export {\n// createAccordionScope,\n// //\n// Accordion,\n// AccordionItem,\n// AccordionHeader,\n// AccordionTrigger,\n// AccordionContent,\n// //\n// Root,\n// Item,\n// Header,\n// Trigger,\n// Content,\n// }\n// export type {\n// AccordionSingleProps,\n// AccordionMultipleProps,\n// AccordionItemProps,\n// AccordionHeaderProps,\n// AccordionTriggerProps,\n// AccordionContentProps,\n// }\n"],
5
- "mappings": "AAAO,MAAMA,EAAY,CAAC",
6
- "names": ["Accordion"]
5
+ "mappings": "AAAO,MAAM,YAAY,CAAC;",
6
+ "names": []
7
7
  }
@@ -1,2 +1,5 @@
1
- const o={};export{o as Accordion};
1
+ const Accordion = {};
2
+ export {
3
+ Accordion
4
+ };
2
5
  //# sourceMappingURL=Accordion.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
4
  "sourcesContent": ["export const Accordion = {}\n\n// import { useComposedRefs } from '@tamagui/compose-refs'\n// import { Stack, StackProps, TamaguiElement, composeEventHandlers } from '@tamagui/core'\n// import { useId } from '@tamagui/core'\n// import { createContextScope } from '@tamagui/create-context'\n// import type { Scope } from '@tamagui/create-context'\n// import { useControllableState } from '@tamagui/use-controllable-state'\n// import React from 'react'\n\n// const COLLAPSIBLE_NAME = 'Collapsible'\n\n// const [_createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME)\n\n// /* -------------------------------------------------------------------------------------------------\n// * Accordion\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ACCORDION_NAME = 'Accordion'\n// const ACCORDION_KEYS = ['Home', 'End', 'ArrowDown', 'ArrowUp']\n\n// type ScopedProps<P> = P & { __scopeAccordion?: Scope }\n// const [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n// createCollapsibleScope,\n// ])\n// const useCollapsibleScope = createCollapsibleScope()\n\n// type AccordionElement = AccordionImplMultipleElement | AccordionImplSingleElement\n// interface AccordionSingleProps extends AccordionImplSingleProps {\n// type: 'single'\n// }\n// interface AccordionMultipleProps extends AccordionImplMultipleProps {\n// type: 'multiple'\n// }\n\n// const Accordion = React.forwardRef<AccordionElement, AccordionSingleProps | AccordionMultipleProps>(\n// (props: ScopedProps<AccordionSingleProps | AccordionMultipleProps>, forwardedRef) => {\n// const { type, ...accordionProps } = props\n// const singleProps = accordionProps as AccordionImplSingleProps\n// const multipleProps = accordionProps as AccordionImplMultipleProps\n// return (\n// <>\n// {type === 'multiple' ? (\n// <AccordionImplMultiple {...multipleProps} ref={forwardedRef} />\n// ) : (\n// <AccordionImplSingle {...singleProps} ref={forwardedRef} />\n// )}\n// </>\n// )\n// }\n// )\n\n// Accordion.displayName = ACCORDION_NAME\n\n// Accordion.propTypes = {\n// type(props) {\n// const value = props.value || props.defaultValue\n// if (props.type && !['single', 'multiple'].includes(props.type)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`.'\n// )\n// }\n// if (props.type === 'multiple' && typeof value === 'string') {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`.'\n// )\n// }\n// if (props.type === 'single' && Array.isArray(value)) {\n// return new Error(\n// 'Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`.'\n// )\n// }\n// return null\n// },\n// }\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionValueContextValue = {\n// value: string[]\n// onItemOpen(value: string): void\n// onItemClose(value: string): void\n// }\n\n// const [AccordionValueProvider, useAccordionValueContext] =\n// createAccordionContext<AccordionValueContextValue>(ACCORDION_NAME)\n\n// const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n// ACCORDION_NAME,\n// { collapsible: false }\n// )\n\n// type AccordionImplSingleElement = AccordionImplElement\n// interface AccordionImplSingleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion item whose content is expanded.\n// */\n// value?: string\n// /**\n// * The value of the item whose content is expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string): void\n// /**\n// * Whether an accordion item can be collapsed after it has been opened.\n// * @default false\n// */\n// collapsible?: boolean\n// }\n\n// const AccordionImplSingle = React.forwardRef<AccordionImplSingleElement, AccordionImplSingleProps>(\n// (props: ScopedProps<AccordionImplSingleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// collapsible = false,\n// ...accordionSingleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || '',\n// onChange: onValueChange,\n// })\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value ? [value] : []}\n// onItemOpen={setValue}\n// onItemClose={React.useCallback(() => collapsible && setValue(''), [collapsible, setValue])}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={collapsible}>\n// <AccordionImpl {...accordionSingleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// }\n// )\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplMultipleElement = AccordionImplElement\n// interface AccordionImplMultipleProps extends AccordionImplProps {\n// /**\n// * The controlled stateful value of the accordion items whose contents are expanded.\n// */\n// value?: string[]\n// /**\n// * The value of the items whose contents are expanded when the accordion is initially rendered. Use\n// * `defaultValue` if you do not need to control the state of an accordion.\n// */\n// defaultValue?: string[]\n// /**\n// * The callback that fires when the state of the accordion changes.\n// */\n// onValueChange?(value: string[]): void\n// }\n\n// const AccordionImplMultiple = React.forwardRef<\n// AccordionImplMultipleElement,\n// AccordionImplMultipleProps\n// >((props: ScopedProps<AccordionImplMultipleProps>, forwardedRef) => {\n// const {\n// value: valueProp,\n// defaultValue,\n// onValueChange = () => {},\n// ...accordionMultipleProps\n// } = props\n\n// const [value, setValue] = useControllableState({\n// prop: valueProp,\n// defaultProp: defaultValue || [],\n// onChange: onValueChange,\n// })\n\n// const handleItemOpen = React.useCallback(\n// (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n// [setValue]\n// )\n\n// const handleItemClose = React.useCallback(\n// (itemValue: string) =>\n// setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n// [setValue]\n// )\n\n// return (\n// <AccordionValueProvider\n// scope={props.__scopeAccordion}\n// value={value}\n// onItemOpen={handleItemOpen}\n// onItemClose={handleItemClose}\n// >\n// <AccordionCollapsibleProvider scope={props.__scopeAccordion} collapsible={true}>\n// <AccordionImpl {...accordionMultipleProps} ref={forwardedRef} />\n// </AccordionCollapsibleProvider>\n// </AccordionValueProvider>\n// )\n// })\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// type AccordionImplContextValue = {\n// disabled?: boolean\n// }\n\n// const [AccordionImplProvider, useAccordionContext] =\n// createAccordionContext<AccordionImplContextValue>(ACCORDION_NAME)\n\n// type AccordionImplElement = TamaguiElement\n// type PrimitiveDivProps = StackProps\n\n// interface AccordionImplProps extends PrimitiveDivProps {\n// /**\n// * Whether or not an accordion is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// }\n\n// const AccordionImpl = React.forwardRef<AccordionImplElement, AccordionImplProps>(\n// (props: ScopedProps<AccordionImplProps>, forwardedRef) => {\n// const { __scopeAccordion, disabled, ...accordionProps } = props\n// const accordionRef = React.useRef<AccordionImplElement>(null)\n// const composedRefs = useComposedRefs(accordionRef, forwardedRef)\n// // const getItems = useCollection(__scopeAccordion)\n\n// const handleKeyDown = (event: KeyboardEvent) => {\n// if (!ACCORDION_KEYS.includes(event.key)) return\n// const target = event.target as HTMLElement\n// const triggerCollection = [] //getItems().filter((item) => !item.ref.current?.disabled)\n// const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target)\n// const triggerCount = triggerCollection.length\n\n// if (triggerIndex === -1) return\n\n// // Prevents page scroll while user is navigating\n// event.preventDefault()\n\n// let nextIndex = triggerIndex\n// switch (event.key) {\n// case 'Home':\n// nextIndex = 0\n// break\n// case 'End':\n// nextIndex = triggerCount - 1\n// break\n// case 'ArrowDown':\n// nextIndex = triggerIndex + 1\n// break\n// case 'ArrowUp':\n// nextIndex = triggerIndex - 1\n// if (nextIndex < 0) {\n// nextIndex = triggerCount - 1\n// }\n// break\n// }\n\n// const clampedIndex = nextIndex % triggerCount\n// triggerCollection[clampedIndex].ref.current?.focus()\n// }\n\n// return (\n// <AccordionImplProvider scope={__scopeAccordion} disabled={disabled}>\n// <Stack\n// {...accordionProps}\n// // @ts-ignore\n// ref={composedRefs}\n// // @ts-ignore\n// onKeyDown={disabled ? undefined : handleKeyDown}\n// />\n// </AccordionImplProvider>\n// )\n// }\n// )\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionItem\n// * -----------------------------------------------------------------------------------------------*/\n\n// const ITEM_NAME = 'AccordionItem'\n\n// type AccordionItemContextValue = { open?: boolean; disabled?: boolean; triggerId: string }\n// const [AccordionItemProvider, useAccordionItemContext] =\n// createAccordionContext<AccordionItemContextValue>(ITEM_NAME)\n\n// type AccordionItemElement = TamaguiElement\n// type CollapsibleProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Root>\n\n// interface AccordionItemProps\n// extends Omit<CollapsibleProps, 'open' | 'defaultOpen' | 'onOpenChange'> {\n// /**\n// * Whether or not an accordion item is disabled from user interaction.\n// *\n// * @defaultValue false\n// */\n// disabled?: boolean\n// /**\n// * A string value for the accordion item. All items within an accordion should use a unique value.\n// */\n// value: string\n// }\n\n// /**\n// * `AccordionItem` contains all of the parts of a collapsible section inside of an `Accordion`.\n// */\n// const AccordionItem = React.forwardRef<AccordionItemElement, AccordionItemProps>(\n// (props: ScopedProps<AccordionItemProps>, forwardedRef) => {\n// const { __scopeAccordion, value, ...accordionItemProps } = props\n// const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion)\n// const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// const triggerId = useId()\n// const open = (value && valueContext.value.includes(value)) || false\n// const disabled = accordionContext.disabled || props.disabled\n\n// return (\n// <AccordionItemProvider\n// scope={__scopeAccordion}\n// open={open}\n// disabled={disabled}\n// triggerId={triggerId}\n// >\n// <CollapsiblePrimitive.Root\n// data-state={open ? 'open' : 'closed'}\n// {...collapsibleScope}\n// {...accordionItemProps}\n// ref={forwardedRef}\n// disabled={disabled}\n// open={open}\n// onOpenChange={(open) => {\n// if (open) {\n// valueContext.onItemOpen(value)\n// } else {\n// valueContext.onItemClose(value)\n// }\n// }}\n// />\n// </AccordionItemProvider>\n// )\n// }\n// )\n\n// AccordionItem.displayName = ITEM_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionHeader\n// * -----------------------------------------------------------------------------------------------*/\n\n// const HEADER_NAME = 'AccordionHeader'\n\n// type AccordionHeaderElement = React.ElementRef<typeof Primitive.h3>\n// type PrimitiveHeading3Props = Radix.ComponentPropsWithoutRef<typeof Primitive.h3>\n// interface AccordionHeaderProps extends PrimitiveHeading3Props {}\n\n// /**\n// * `AccordionHeader` contains the content for the parts of an `AccordionItem` that will be visible\n// * whether or not its content is collapsed.\n// */\n// const AccordionHeader = React.forwardRef<AccordionHeaderElement, AccordionHeaderProps>(\n// (props: ScopedProps<AccordionHeaderProps>, forwardedRef) => {\n// const { __scopeAccordion, ...headerProps } = props\n// const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion)\n// return (\n// <Primitive.h3\n// data-state={getState(itemContext.open)}\n// data-disabled={itemContext.disabled ? '' : undefined}\n// {...headerProps}\n// ref={forwardedRef}\n// />\n// )\n// }\n// )\n\n// AccordionHeader.displayName = HEADER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionTrigger\n// * -----------------------------------------------------------------------------------------------*/\n\n// const TRIGGER_NAME = 'AccordionTrigger'\n\n// type AccordionTriggerElement = React.ElementRef<typeof CollapsiblePrimitive.Trigger>\n// type CollapsibleTriggerProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>\n// interface AccordionTriggerProps extends CollapsibleTriggerProps {}\n\n// /**\n// * `AccordionTrigger` is the trigger that toggles the collapsed state of an `AccordionItem`. It\n// * should always be nested inside of an `AccordionHeader`.\n// */\n// const AccordionTrigger = React.forwardRef<AccordionTriggerElement, AccordionTriggerProps>(\n// (props: ScopedProps<AccordionTriggerProps>, forwardedRef) => {\n// const { __scopeAccordion, ...triggerProps } = props\n// const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <Collection.ItemSlot scope={__scopeAccordion}>\n// <CollapsiblePrimitive.Trigger\n// aria-disabled={(itemContext.open && !collapsibleContext.collapsible) || undefined}\n// id={itemContext.triggerId}\n// {...collapsibleScope}\n// {...triggerProps}\n// ref={forwardedRef}\n// />\n// </Collection.ItemSlot>\n// )\n// }\n// )\n\n// AccordionTrigger.displayName = TRIGGER_NAME\n\n// /* -------------------------------------------------------------------------------------------------\n// * AccordionContent\n// * -----------------------------------------------------------------------------------------------*/\n\n// const CONTENT_NAME = 'AccordionContent'\n\n// type AccordionContentElement = React.ElementRef<typeof CollapsiblePrimitive.Content>\n// type CollapsibleContentProps = Radix.ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>\n// interface AccordionContentProps extends CollapsibleContentProps {}\n\n// /**\n// * `AccordionContent` contains the collapsible content for an `AccordionItem`.\n// */\n// const AccordionContent = React.forwardRef<AccordionContentElement, AccordionContentProps>(\n// (props: ScopedProps<AccordionContentProps>, forwardedRef) => {\n// const { __scopeAccordion, ...contentProps } = props\n// const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion)\n// const collapsibleScope = useCollapsibleScope(__scopeAccordion)\n// return (\n// <CollapsiblePrimitive.Content\n// role=\"region\"\n// aria-labelledby={itemContext.triggerId}\n// {...collapsibleScope}\n// {...contentProps}\n// ref={forwardedRef}\n// style={{\n// ['--radix-accordion-content-height' as any]: 'var(--radix-collapsible-content-height)',\n// ['--radix-accordion-content-width' as any]: 'var(--radix-collapsible-content-width)',\n// ...props.style,\n// }}\n// />\n// )\n// }\n// )\n\n// AccordionContent.displayName = CONTENT_NAME\n\n// /* -----------------------------------------------------------------------------------------------*/\n\n// function getState(open?: boolean) {\n// return open ? 'open' : 'closed'\n// }\n\n// const Root = Accordion\n// const Item = AccordionItem\n// const Header = AccordionHeader\n// const Trigger = AccordionTrigger\n// const Content = AccordionContent\n\n// export {\n// createAccordionScope,\n// //\n// Accordion,\n// AccordionItem,\n// AccordionHeader,\n// AccordionTrigger,\n// AccordionContent,\n// //\n// Root,\n// Item,\n// Header,\n// Trigger,\n// Content,\n// }\n// export type {\n// AccordionSingleProps,\n// AccordionMultipleProps,\n// AccordionItemProps,\n// AccordionHeaderProps,\n// AccordionTriggerProps,\n// AccordionContentProps,\n// }\n"],
5
- "mappings": "AAAO,MAAMA,EAAY,CAAC",
6
- "names": ["Accordion"]
5
+ "mappings": "AAAO,MAAM,YAAY,CAAC;",
6
+ "names": []
7
7
  }
package/dist/jsx/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export*from"./Accordion";
1
+ export * from "./Accordion";
2
2
  //# sourceMappingURL=index.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
4
  "sourcesContent": ["export * from './Accordion'\n"],
5
- "mappings": "AAAA,WAAc",
5
+ "mappings": "AAAA,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,2 +1,2 @@
1
- export*from"./Accordion";
1
+ export * from "./Accordion";
2
2
  //# sourceMappingURL=index.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
4
  "sourcesContent": ["export * from './Accordion'\n"],
5
- "mappings": "AAAA,WAAc",
5
+ "mappings": "AAAA,cAAc;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/accordion",
3
- "version": "1.14.0",
3
+ "version": "1.14.2",
4
4
  "sideEffects": [
5
5
  "*.css"
6
6
  ],
@@ -19,18 +19,18 @@
19
19
  "watch": "tamagui-build --watch"
20
20
  },
21
21
  "dependencies": {
22
- "@tamagui/compose-refs": "1.14.0",
23
- "@tamagui/core": "1.14.0",
24
- "@tamagui/create-context": "1.14.0",
25
- "@tamagui/polyfill-dev": "1.14.0",
26
- "@tamagui/stacks": "1.14.0",
27
- "@tamagui/use-controllable-state": "1.14.0"
22
+ "@tamagui/compose-refs": "1.14.2",
23
+ "@tamagui/core": "1.14.2",
24
+ "@tamagui/create-context": "1.14.2",
25
+ "@tamagui/polyfill-dev": "1.14.2",
26
+ "@tamagui/stacks": "1.14.2",
27
+ "@tamagui/use-controllable-state": "1.14.2"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "react": "*"
31
31
  },
32
32
  "devDependencies": {
33
- "@tamagui/build": "1.14.0",
33
+ "@tamagui/build": "1.14.2",
34
34
  "react": "^18.2.0"
35
35
  },
36
36
  "publishConfig": {