@jamsrui/collapsible 0.0.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.
Files changed (46) hide show
  1. package/README.md +40 -0
  2. package/dist/chunk-2INMQSUC.mjs +1 -0
  3. package/dist/chunk-324DBYK6.mjs +1 -0
  4. package/dist/chunk-EJHYLGYV.js +1 -0
  5. package/dist/chunk-IPAUR3G2.js +1 -0
  6. package/dist/chunk-M7GRDQWN.mjs +1 -0
  7. package/dist/chunk-N3HTXOYL.js +1 -0
  8. package/dist/chunk-N576RNB6.mjs +1 -0
  9. package/dist/chunk-NI3EVY7Z.js +1 -0
  10. package/dist/chunk-PC3K3LR3.js +1 -0
  11. package/dist/chunk-VSPKE2D3.js +1 -0
  12. package/dist/chunk-W2XEFJVU.mjs +1 -0
  13. package/dist/chunk-WNNUXSLO.mjs +1 -0
  14. package/dist/collapsible-config.d.mts +18 -0
  15. package/dist/collapsible-config.d.ts +18 -0
  16. package/dist/collapsible-config.js +1 -0
  17. package/dist/collapsible-config.mjs +1 -0
  18. package/dist/collapsible-content.d.mts +10 -0
  19. package/dist/collapsible-content.d.ts +10 -0
  20. package/dist/collapsible-content.js +1 -0
  21. package/dist/collapsible-content.mjs +1 -0
  22. package/dist/collapsible-context.d.mts +14 -0
  23. package/dist/collapsible-context.d.ts +14 -0
  24. package/dist/collapsible-context.js +1 -0
  25. package/dist/collapsible-context.mjs +1 -0
  26. package/dist/collapsible-trigger.d.mts +10 -0
  27. package/dist/collapsible-trigger.d.ts +10 -0
  28. package/dist/collapsible-trigger.js +1 -0
  29. package/dist/collapsible-trigger.mjs +1 -0
  30. package/dist/collapsible.d.mts +14 -0
  31. package/dist/collapsible.d.ts +14 -0
  32. package/dist/collapsible.js +1 -0
  33. package/dist/collapsible.mjs +1 -0
  34. package/dist/index.d.mts +8 -0
  35. package/dist/index.d.ts +8 -0
  36. package/dist/index.js +1 -0
  37. package/dist/index.mjs +1 -0
  38. package/dist/styles.d.mts +2 -0
  39. package/dist/styles.d.ts +2 -0
  40. package/dist/styles.js +1 -0
  41. package/dist/styles.mjs +0 -0
  42. package/dist/use-collapsible.d.mts +29 -0
  43. package/dist/use-collapsible.d.ts +29 -0
  44. package/dist/use-collapsible.js +1 -0
  45. package/dist/use-collapsible.mjs +1 -0
  46. package/package.json +49 -0
package/README.md ADDED
@@ -0,0 +1,40 @@
1
+ # πŸš€ **JamsrUI**
2
+
3
+ **A comprehensive React UI component library designed for developers, with Tailwind CSS integration for seamless styling.**
4
+
5
+
6
+ ## πŸ“– **Overview**
7
+
8
+ [JamsrUI](https://jamsr-ui.jamsrworld.com) is designed to help developers build modern, fast and visually appealing web applications with ease.
9
+
10
+ ## πŸš€ Getting Started
11
+
12
+ Boost & Build your websites using [JamsrUI](https://jamsr-ui.jamsrworld.com).
13
+
14
+ ## ✨ Features
15
+
16
+ - πŸš€ **Production-Ready**: Optimized for modern React projects.
17
+ - 🎨 **Customizable**: Easily override styles and themes.
18
+ - πŸ› οΈ **Reusable Components**: Save time with prebuilt, efficient UI elements.
19
+ - ⚑ **Developer-Friendly**: Simple API and well-documented usage.
20
+ - πŸ“¦ **Lightweight**: Minimal dependencies for fast performance.
21
+ - πŸ–₯️ **Modern Design**: Clean, responsive, and user-friendly components.
22
+
23
+ ## 🌱 Community
24
+
25
+ We’re thrilled to see the community actively engage with **JamsrUI**! Whether you're sharing feedback, reporting bugs, requesting features, or showcasing projects built with JamsrUI, your involvement helps us grow and improve.
26
+
27
+ ### How to Engage
28
+
29
+ - πŸ’¬ **Report Bugs**: [GitHub Issues](https://github.com/jamsrworld/jamsr-ui/issues)
30
+ - πŸš€ **Request Features**: Share ideas for new components.
31
+ - 🀝 **Showcase Projects**: Let us know how you use JamsrUI.
32
+
33
+ ## Contributing
34
+
35
+ We welcome contributions from developers of all skill levels!
36
+
37
+ ## ⭐ Support the Project
38
+
39
+ If you find **JamsrUI** helpful, consider giving it a ⭐ on [GitHub](https://github.com/jamsrworld/jamsr-ui).
40
+
@@ -0,0 +1 @@
1
+ import{useCallback as n,useId as c,useMemo as O}from"react";import{useControlledState as x}from"@jamsrui/hooks";import{dataAttrDev as a,mergeProps as C}from"@jamsrui/utils";var I=P=>{let{defaultOpen:m,isDisabled:s,isOpen:u,onOpenChange:f,slotProps:t}=P,[e,p]=x({defaultProp:m,onChange:f,prop:u}),r=c(),l=c(),i=n(()=>{p(o=>!o)},[p]),d=n(()=>({"aria-expanded":e,"data-expanded":e,"data-slot":a("root")}),[e]),g=n(o=>({...C(t?.content??{},o),"data-slot":a("content"),id:l,role:"region","aria-labelledby":r,hidden:!e}),[l,e,t?.content,r]),b=n(o=>({...C(t?.trigger??{},o,{onClick:i}),id:r,"data-slot":a("trigger"),"aria-controls":l,"aria-expanded":e,"data-expanded":e,disabled:s,"aria-disabled":s}),[l,i,s,e,t?.trigger,r]);return O(()=>({isOpen:e,getTriggerProps:b,getContentProps:g,getRootProps:d}),[g,d,b,e])};export{I as a};
@@ -0,0 +1 @@
1
+ import{createConfigContext as o}from"@jamsrui/utils";var[e,p]=o({displayName:"CollapsibleConfig"});export{e as a,p as b};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPC3K3LR3js = require('./chunk-PC3K3LR3.js');var _hooks = require('@jamsrui/hooks');var n=r=>{let{getTriggerProps:o}=_chunkPC3K3LR3js.b.call(void 0, );return _hooks.useRenderElement.call(void 0, "button",{props:o(r)})};exports.a = n;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPC3K3LR3js = require('./chunk-PC3K3LR3.js');var _chunkNI3EVY7Zjs = require('./chunk-NI3EVY7Z.js');var _react = require('react');var c=e=>{let{children:n}=e,o=_chunkNI3EVY7Zjs.a.call(void 0, e),r=_react.cloneElement.call(void 0, n,o.getRootProps());return React.createElement(_chunkPC3K3LR3js.a,{value:o},r)};exports.a = c;
@@ -0,0 +1 @@
1
+ import{a as l}from"./chunk-N576RNB6.mjs";import{a as t}from"./chunk-2INMQSUC.mjs";import{cloneElement as s}from"react";var c=e=>{let{children:n}=e,o=t(e),r=s(n,o.getRootProps());return React.createElement(l,{value:o},r)};export{c as a};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPC3K3LR3js = require('./chunk-PC3K3LR3.js');var _react = require('motion/react');var l=t=>{let{children:i}=t,{isOpen:o}=_chunkPC3K3LR3js.b.call(void 0, );return React.createElement(_react.AnimatePresence,{initial:!1},!!o&&React.createElement(_react.motion.div,{animate:{height:"auto"},className:"overflow-hidden",exit:{height:0},initial:{height:0},role:"region",transition:{type:"spring",bounce:0,duration:.4}},i))};exports.a = l;
@@ -0,0 +1 @@
1
+ import{createContext as t,use as l}from"react";var o=t(null),p=()=>{let e=l(o);if(!e)throw new Error("useCollapsibleContext must be used within Collapsible");return e};export{o as a,p as b};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _react = require('react');var _hooks = require('@jamsrui/hooks');var _utils = require('@jamsrui/utils');var I=P=>{let{defaultOpen:m,isDisabled:s,isOpen:u,onOpenChange:f,slotProps:t}=P,[e,p]=_hooks.useControlledState.call(void 0, {defaultProp:m,onChange:f,prop:u}),r=_react.useId.call(void 0, ),l=_react.useId.call(void 0, ),i=_react.useCallback.call(void 0, ()=>{p(o=>!o)},[p]),d=_react.useCallback.call(void 0, ()=>({"aria-expanded":e,"data-expanded":e,"data-slot":_utils.dataAttrDev.call(void 0, "root")}),[e]),g=_react.useCallback.call(void 0, o=>({..._utils.mergeProps.call(void 0, _nullishCoalesce(_optionalChain([t, 'optionalAccess', _ => _.content]), () => ({})),o),"data-slot":_utils.dataAttrDev.call(void 0, "content"),id:l,role:"region","aria-labelledby":r,hidden:!e}),[l,e,_optionalChain([t, 'optionalAccess', _2 => _2.content]),r]),b=_react.useCallback.call(void 0, o=>({..._utils.mergeProps.call(void 0, _nullishCoalesce(_optionalChain([t, 'optionalAccess', _3 => _3.trigger]), () => ({})),o,{onClick:i}),id:r,"data-slot":_utils.dataAttrDev.call(void 0, "trigger"),"aria-controls":l,"aria-expanded":e,"data-expanded":e,disabled:s,"aria-disabled":s}),[l,i,s,e,_optionalChain([t, 'optionalAccess', _4 => _4.trigger]),r]);return _react.useMemo.call(void 0, ()=>({isOpen:e,getTriggerProps:b,getContentProps:g,getRootProps:d}),[g,d,b,e])};exports.a = I;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _react = require('react');var o=_react.createContext.call(void 0, null),p= exports.b =()=>{let e=_react.use.call(void 0, o);if(!e)throw new Error("useCollapsibleContext must be used within Collapsible");return e};exports.a = o; exports.b = p;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _utils = require('@jamsrui/utils');var[e,p]=_utils.createConfigContext.call(void 0, {displayName:"CollapsibleConfig"});exports.a = e; exports.b = p;
@@ -0,0 +1 @@
1
+ import{b as e}from"./chunk-N576RNB6.mjs";import{useRenderElement as t}from"@jamsrui/hooks";var n=r=>{let{getTriggerProps:o}=e();return t("button",{props:o(r)})};export{n as a};
@@ -0,0 +1 @@
1
+ import{b as e}from"./chunk-N576RNB6.mjs";import{AnimatePresence as n,motion as r}from"motion/react";var l=t=>{let{children:i}=t,{isOpen:o}=e();return React.createElement(n,{initial:!1},!!o&&React.createElement(r.div,{animate:{height:"auto"},className:"overflow-hidden",exit:{height:0},initial:{height:0},role:"region",transition:{type:"spring",bounce:0,duration:.4}},i))};export{l as a};
@@ -0,0 +1,18 @@
1
+ import { Collapsible } from './collapsible.mjs';
2
+ import * as react from 'react';
3
+ import { GlobalConfigProps } from '@jamsrui/core';
4
+ import './collapsible-content.mjs';
5
+ import './collapsible-trigger.mjs';
6
+ import './use-collapsible.mjs';
7
+ import '@jamsrui/utils';
8
+
9
+ declare const useCollapsibleConfig: () => CollapsibleConfig.Props;
10
+ declare const CollapsibleConfig: (props: CollapsibleConfig.Props & {
11
+ merge?: boolean;
12
+ }) => react.JSX.Element;
13
+ declare namespace CollapsibleConfig {
14
+ interface Props extends Collapsible.Props, GlobalConfigProps<Collapsible.Props> {
15
+ }
16
+ }
17
+
18
+ export { CollapsibleConfig, useCollapsibleConfig };
@@ -0,0 +1,18 @@
1
+ import { Collapsible } from './collapsible.js';
2
+ import * as react from 'react';
3
+ import { GlobalConfigProps } from '@jamsrui/core';
4
+ import './collapsible-content.js';
5
+ import './collapsible-trigger.js';
6
+ import './use-collapsible.js';
7
+ import '@jamsrui/utils';
8
+
9
+ declare const useCollapsibleConfig: () => CollapsibleConfig.Props;
10
+ declare const CollapsibleConfig: (props: CollapsibleConfig.Props & {
11
+ merge?: boolean;
12
+ }) => react.JSX.Element;
13
+ declare namespace CollapsibleConfig {
14
+ interface Props extends Collapsible.Props, GlobalConfigProps<Collapsible.Props> {
15
+ }
16
+ }
17
+
18
+ export { CollapsibleConfig, useCollapsibleConfig };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVSPKE2D3js = require('./chunk-VSPKE2D3.js');exports.CollapsibleConfig = _chunkVSPKE2D3js.a; exports.useCollapsibleConfig = _chunkVSPKE2D3js.b;
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk-324DBYK6.mjs";export{a as CollapsibleConfig,b as useCollapsibleConfig};
@@ -0,0 +1,10 @@
1
+ import * as react from 'react';
2
+ import { UIProps } from '@jamsrui/utils';
3
+
4
+ declare const CollapsibleContent: (props: CollapsibleContent.Props) => react.JSX.Element;
5
+ declare namespace CollapsibleContent {
6
+ interface Props extends UIProps<"div"> {
7
+ }
8
+ }
9
+
10
+ export { CollapsibleContent };
@@ -0,0 +1,10 @@
1
+ import * as react from 'react';
2
+ import { UIProps } from '@jamsrui/utils';
3
+
4
+ declare const CollapsibleContent: (props: CollapsibleContent.Props) => react.JSX.Element;
5
+ declare namespace CollapsibleContent {
6
+ interface Props extends UIProps<"div"> {
7
+ }
8
+ }
9
+
10
+ export { CollapsibleContent };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkN3HTXOYLjs = require('./chunk-N3HTXOYL.js');require('./chunk-PC3K3LR3.js');exports.CollapsibleContent = _chunkN3HTXOYLjs.a;
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-WNNUXSLO.mjs";import"./chunk-N576RNB6.mjs";export{a as CollapsibleContent};
@@ -0,0 +1,14 @@
1
+ import * as react from 'react';
2
+ import { useCollapsible } from './use-collapsible.mjs';
3
+ import '@jamsrui/utils';
4
+ import './collapsible-content.mjs';
5
+ import './collapsible-trigger.mjs';
6
+
7
+ declare const useCollapsibleContext: () => CollapsibleContext.Props;
8
+ declare const CollapsibleContext: react.Context<CollapsibleContext.Props | null>;
9
+ declare namespace CollapsibleContext {
10
+ interface Props extends ReturnType<typeof useCollapsible> {
11
+ }
12
+ }
13
+
14
+ export { CollapsibleContext, useCollapsibleContext };
@@ -0,0 +1,14 @@
1
+ import * as react from 'react';
2
+ import { useCollapsible } from './use-collapsible.js';
3
+ import '@jamsrui/utils';
4
+ import './collapsible-content.js';
5
+ import './collapsible-trigger.js';
6
+
7
+ declare const useCollapsibleContext: () => CollapsibleContext.Props;
8
+ declare const CollapsibleContext: react.Context<CollapsibleContext.Props | null>;
9
+ declare namespace CollapsibleContext {
10
+ interface Props extends ReturnType<typeof useCollapsible> {
11
+ }
12
+ }
13
+
14
+ export { CollapsibleContext, useCollapsibleContext };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPC3K3LR3js = require('./chunk-PC3K3LR3.js');exports.CollapsibleContext = _chunkPC3K3LR3js.a; exports.useCollapsibleContext = _chunkPC3K3LR3js.b;
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk-N576RNB6.mjs";export{a as CollapsibleContext,b as useCollapsibleContext};
@@ -0,0 +1,10 @@
1
+ import * as react from 'react';
2
+ import { UIProps } from '@jamsrui/utils';
3
+
4
+ declare const CollapsibleTrigger: (props: CollapsibleTrigger.Props) => react.ReactElement<unknown, string | react.JSXElementConstructor<any>>;
5
+ declare namespace CollapsibleTrigger {
6
+ interface Props extends UIProps<"button"> {
7
+ }
8
+ }
9
+
10
+ export { CollapsibleTrigger };
@@ -0,0 +1,10 @@
1
+ import * as react from 'react';
2
+ import { UIProps } from '@jamsrui/utils';
3
+
4
+ declare const CollapsibleTrigger: (props: CollapsibleTrigger.Props) => react.ReactElement<unknown, string | react.JSXElementConstructor<any>>;
5
+ declare namespace CollapsibleTrigger {
6
+ interface Props extends UIProps<"button"> {
7
+ }
8
+ }
9
+
10
+ export { CollapsibleTrigger };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkEJHYLGYVjs = require('./chunk-EJHYLGYV.js');require('./chunk-PC3K3LR3.js');exports.CollapsibleTrigger = _chunkEJHYLGYVjs.a;
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-W2XEFJVU.mjs";import"./chunk-N576RNB6.mjs";export{a as CollapsibleTrigger};
@@ -0,0 +1,14 @@
1
+ import * as react from 'react';
2
+ import { useCollapsible } from './use-collapsible.mjs';
3
+ import '@jamsrui/utils';
4
+ import './collapsible-content.mjs';
5
+ import './collapsible-trigger.mjs';
6
+
7
+ declare const Collapsible: (props: Collapsible.Props) => react.JSX.Element;
8
+ declare namespace Collapsible {
9
+ interface Props extends useCollapsible.Props {
10
+ children: React.ReactElement<unknown>;
11
+ }
12
+ }
13
+
14
+ export { Collapsible };
@@ -0,0 +1,14 @@
1
+ import * as react from 'react';
2
+ import { useCollapsible } from './use-collapsible.js';
3
+ import '@jamsrui/utils';
4
+ import './collapsible-content.js';
5
+ import './collapsible-trigger.js';
6
+
7
+ declare const Collapsible: (props: Collapsible.Props) => react.JSX.Element;
8
+ declare namespace Collapsible {
9
+ interface Props extends useCollapsible.Props {
10
+ children: React.ReactElement<unknown>;
11
+ }
12
+ }
13
+
14
+ export { Collapsible };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkIPAUR3G2js = require('./chunk-IPAUR3G2.js');require('./chunk-PC3K3LR3.js');require('./chunk-NI3EVY7Z.js');exports.Collapsible = _chunkIPAUR3G2js.a;
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-M7GRDQWN.mjs";import"./chunk-N576RNB6.mjs";import"./chunk-2INMQSUC.mjs";export{a as Collapsible};
@@ -0,0 +1,8 @@
1
+ export { Collapsible } from './collapsible.mjs';
2
+ export { CollapsibleConfig, useCollapsibleConfig } from './collapsible-config.mjs';
3
+ export { CollapsibleContent } from './collapsible-content.mjs';
4
+ export { CollapsibleTrigger } from './collapsible-trigger.mjs';
5
+ import 'react';
6
+ import './use-collapsible.mjs';
7
+ import '@jamsrui/utils';
8
+ import '@jamsrui/core';
@@ -0,0 +1,8 @@
1
+ export { Collapsible } from './collapsible.js';
2
+ export { CollapsibleConfig, useCollapsibleConfig } from './collapsible-config.js';
3
+ export { CollapsibleContent } from './collapsible-content.js';
4
+ export { CollapsibleTrigger } from './collapsible-trigger.js';
5
+ import 'react';
6
+ import './use-collapsible.js';
7
+ import '@jamsrui/utils';
8
+ import '@jamsrui/core';
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";var _chunkVSPKE2D3js = require('./chunk-VSPKE2D3.js');var _chunkN3HTXOYLjs = require('./chunk-N3HTXOYL.js');var _chunkEJHYLGYVjs = require('./chunk-EJHYLGYV.js');var _chunkIPAUR3G2js = require('./chunk-IPAUR3G2.js');require('./chunk-PC3K3LR3.js');require('./chunk-NI3EVY7Z.js');exports.Collapsible = _chunkIPAUR3G2js.a; exports.CollapsibleConfig = _chunkVSPKE2D3js.a; exports.CollapsibleContent = _chunkN3HTXOYLjs.a; exports.CollapsibleTrigger = _chunkEJHYLGYVjs.a; exports.useCollapsibleConfig = _chunkVSPKE2D3js.b;
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ "use client";import{a as l,b as o}from"./chunk-324DBYK6.mjs";import{a as e}from"./chunk-WNNUXSLO.mjs";import{a as r}from"./chunk-W2XEFJVU.mjs";import{a as i}from"./chunk-M7GRDQWN.mjs";import"./chunk-N576RNB6.mjs";import"./chunk-2INMQSUC.mjs";export{i as Collapsible,l as CollapsibleConfig,e as CollapsibleContent,r as CollapsibleTrigger,o as useCollapsibleConfig};
@@ -0,0 +1,2 @@
1
+
2
+ export { }
@@ -0,0 +1,2 @@
1
+
2
+ export { }
package/dist/styles.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";
File without changes
@@ -0,0 +1,29 @@
1
+ import { PropGetter } from '@jamsrui/utils';
2
+ import { CollapsibleContent } from './collapsible-content.mjs';
3
+ import { CollapsibleTrigger } from './collapsible-trigger.mjs';
4
+ import 'react';
5
+
6
+ declare const useCollapsible: (props: useCollapsible.Props) => {
7
+ isOpen: boolean;
8
+ getTriggerProps: PropGetter<CollapsibleTrigger.Props>;
9
+ getContentProps: PropGetter<CollapsibleContent.Props>;
10
+ getRootProps: () => {
11
+ "aria-expanded": boolean;
12
+ "data-expanded": boolean;
13
+ "data-slot": string | undefined;
14
+ };
15
+ };
16
+ declare namespace useCollapsible {
17
+ interface Props {
18
+ defaultOpen?: boolean;
19
+ isOpen?: boolean;
20
+ onOpenChange?: (isOpen: boolean) => void;
21
+ isDisabled?: boolean;
22
+ slotProps?: {
23
+ trigger?: CollapsibleTrigger.Props;
24
+ content?: CollapsibleContent.Props;
25
+ };
26
+ }
27
+ }
28
+
29
+ export { useCollapsible };
@@ -0,0 +1,29 @@
1
+ import { PropGetter } from '@jamsrui/utils';
2
+ import { CollapsibleContent } from './collapsible-content.js';
3
+ import { CollapsibleTrigger } from './collapsible-trigger.js';
4
+ import 'react';
5
+
6
+ declare const useCollapsible: (props: useCollapsible.Props) => {
7
+ isOpen: boolean;
8
+ getTriggerProps: PropGetter<CollapsibleTrigger.Props>;
9
+ getContentProps: PropGetter<CollapsibleContent.Props>;
10
+ getRootProps: () => {
11
+ "aria-expanded": boolean;
12
+ "data-expanded": boolean;
13
+ "data-slot": string | undefined;
14
+ };
15
+ };
16
+ declare namespace useCollapsible {
17
+ interface Props {
18
+ defaultOpen?: boolean;
19
+ isOpen?: boolean;
20
+ onOpenChange?: (isOpen: boolean) => void;
21
+ isDisabled?: boolean;
22
+ slotProps?: {
23
+ trigger?: CollapsibleTrigger.Props;
24
+ content?: CollapsibleContent.Props;
25
+ };
26
+ }
27
+ }
28
+
29
+ export { useCollapsible };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkNI3EVY7Zjs = require('./chunk-NI3EVY7Z.js');exports.useCollapsible = _chunkNI3EVY7Zjs.a;
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-2INMQSUC.mjs";export{a as useCollapsible};
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@jamsrui/collapsible",
3
+ "version": "0.0.2",
4
+ "peerDependencies": {
5
+ "motion": ">=12",
6
+ "react": ">=19"
7
+ },
8
+ "dependencies": {
9
+ "@jamsrui/hooks": "^0.0.2",
10
+ "@jamsrui/core": "^0.0.2",
11
+ "@jamsrui/utils": "^0.0.2"
12
+ },
13
+ "exports": {
14
+ ".": {
15
+ "types": "./dist/index.d.ts",
16
+ "import": "./dist/index.mjs",
17
+ "require": "./dist/index.js"
18
+ }
19
+ },
20
+ "description": "A modern and beautiful Next.js UI components library.",
21
+ "keywords": [
22
+ "react",
23
+ "ui",
24
+ "UI components",
25
+ "Next.js",
26
+ "React",
27
+ "JamsrUI",
28
+ "jamsr-ui",
29
+ "TypeScript"
30
+ ],
31
+ "sideEffects": false,
32
+ "license": "MIT",
33
+ "author": "@jamsrworld",
34
+ "repository": {
35
+ "type": "git",
36
+ "url": "https://github.com/jamsrworld/jamsr-ui"
37
+ },
38
+ "bugs": {
39
+ "url": "https://github.com/jamsrworld/jamsr-ui/issues"
40
+ },
41
+ "homepage": "https://jamsr-ui.jamsrworld.com",
42
+ "files": [
43
+ "dist",
44
+ "README",
45
+ "README.md",
46
+ "package.json",
47
+ "LICENSE"
48
+ ]
49
+ }