@satoshibits/react-json-schema-builder 1.4.0 → 1.4.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 (176) hide show
  1. package/dist/index.cjs14.js +1 -1
  2. package/dist/index.cjs142.js +1 -1
  3. package/dist/index.cjs143.js +1 -1
  4. package/dist/index.cjs144.js +1 -1
  5. package/dist/index.cjs144.js.map +1 -1
  6. package/dist/index.cjs146.js +1 -1
  7. package/dist/index.cjs146.js.map +1 -1
  8. package/dist/index.cjs147.js +1 -1
  9. package/dist/index.cjs147.js.map +1 -1
  10. package/dist/index.cjs148.js +1 -1
  11. package/dist/index.cjs148.js.map +1 -1
  12. package/dist/index.cjs149.js +1 -1
  13. package/dist/index.cjs149.js.map +1 -1
  14. package/dist/index.cjs15.js +1 -1
  15. package/dist/index.cjs150.js +1 -1
  16. package/dist/index.cjs150.js.map +1 -1
  17. package/dist/index.cjs151.js +1 -1
  18. package/dist/index.cjs151.js.map +1 -1
  19. package/dist/index.cjs152.js +1 -1
  20. package/dist/index.cjs152.js.map +1 -1
  21. package/dist/index.cjs153.js +1 -1
  22. package/dist/index.cjs153.js.map +1 -1
  23. package/dist/index.cjs154.js +1 -1
  24. package/dist/index.cjs154.js.map +1 -1
  25. package/dist/index.cjs155.js +1 -1
  26. package/dist/index.cjs155.js.map +1 -1
  27. package/dist/index.cjs156.js +1 -1
  28. package/dist/index.cjs156.js.map +1 -1
  29. package/dist/index.cjs157.js +1 -1
  30. package/dist/index.cjs157.js.map +1 -1
  31. package/dist/index.cjs158.js +1 -1
  32. package/dist/index.cjs158.js.map +1 -1
  33. package/dist/index.cjs159.js +1 -1
  34. package/dist/index.cjs159.js.map +1 -1
  35. package/dist/index.cjs160.js +1 -1
  36. package/dist/index.cjs160.js.map +1 -1
  37. package/dist/index.cjs161.js +1 -1
  38. package/dist/index.cjs161.js.map +1 -1
  39. package/dist/index.cjs162.js +1 -1
  40. package/dist/index.cjs162.js.map +1 -1
  41. package/dist/index.cjs163.js +1 -1
  42. package/dist/index.cjs163.js.map +1 -1
  43. package/dist/index.cjs164.js +1 -1
  44. package/dist/index.cjs164.js.map +1 -1
  45. package/dist/index.cjs165.js +1 -1
  46. package/dist/index.cjs165.js.map +1 -1
  47. package/dist/index.cjs166.js +1 -1
  48. package/dist/index.cjs166.js.map +1 -1
  49. package/dist/index.cjs167.js +1 -1
  50. package/dist/index.cjs169.js +1 -1
  51. package/dist/index.cjs175.js +1 -1
  52. package/dist/index.cjs177.js +1 -1
  53. package/dist/index.cjs18.js +1 -1
  54. package/dist/index.cjs182.js +38 -1
  55. package/dist/index.cjs182.js.map +1 -1
  56. package/dist/index.cjs183.js +1 -38
  57. package/dist/index.cjs183.js.map +1 -1
  58. package/dist/index.cjs184.js +1 -1
  59. package/dist/index.cjs184.js.map +1 -1
  60. package/dist/index.cjs185.js +1 -1
  61. package/dist/index.cjs185.js.map +1 -1
  62. package/dist/index.cjs186.js +1 -1
  63. package/dist/index.cjs186.js.map +1 -1
  64. package/dist/index.cjs19.js +1 -1
  65. package/dist/index.cjs19.js.map +1 -1
  66. package/dist/index.cjs21.js +1 -1
  67. package/dist/index.cjs24.js +1 -1
  68. package/dist/index.cjs34.js +1 -1
  69. package/dist/index.cjs41.js +1 -1
  70. package/dist/index.cjs41.js.map +1 -1
  71. package/dist/index.cjs42.js +1 -1
  72. package/dist/index.cjs42.js.map +1 -1
  73. package/dist/index.cjs43.js +1 -1
  74. package/dist/index.cjs43.js.map +1 -1
  75. package/dist/index.cjs44.js +1 -1
  76. package/dist/index.cjs44.js.map +1 -1
  77. package/dist/index.cjs45.js +1 -1
  78. package/dist/index.cjs45.js.map +1 -1
  79. package/dist/index.cjs46.js +1 -1
  80. package/dist/index.cjs51.js +1 -1
  81. package/dist/index.cjs53.js +1 -1
  82. package/dist/index.cjs56.js +1 -1
  83. package/dist/index.cjs58.js +1 -1
  84. package/dist/index.cjs59.js +1 -1
  85. package/dist/index.cjs7.js +1 -1
  86. package/dist/index.cjs7.js.map +1 -1
  87. package/dist/index.es14.js +2 -2
  88. package/dist/index.es142.js +13 -13
  89. package/dist/index.es143.js +1 -1
  90. package/dist/index.es144.js +6 -32
  91. package/dist/index.es144.js.map +1 -1
  92. package/dist/index.es146.js +64 -5
  93. package/dist/index.es146.js.map +1 -1
  94. package/dist/index.es147.js +27 -63
  95. package/dist/index.es147.js.map +1 -1
  96. package/dist/index.es148.js +5 -177
  97. package/dist/index.es148.js.map +1 -1
  98. package/dist/index.es149.js +23 -66
  99. package/dist/index.es149.js.map +1 -1
  100. package/dist/index.es15.js +1 -1
  101. package/dist/index.es150.js +32 -7
  102. package/dist/index.es150.js.map +1 -1
  103. package/dist/index.es151.js +3 -29
  104. package/dist/index.es151.js.map +1 -1
  105. package/dist/index.es152.js +45 -10
  106. package/dist/index.es152.js.map +1 -1
  107. package/dist/index.es153.js +7 -5
  108. package/dist/index.es153.js.map +1 -1
  109. package/dist/index.es154.js +123 -23
  110. package/dist/index.es154.js.map +1 -1
  111. package/dist/index.es155.js +14 -3
  112. package/dist/index.es155.js.map +1 -1
  113. package/dist/index.es156.js +129 -41
  114. package/dist/index.es156.js.map +1 -1
  115. package/dist/index.es157.js +10 -124
  116. package/dist/index.es157.js.map +1 -1
  117. package/dist/index.es158.js +214 -13
  118. package/dist/index.es158.js.map +1 -1
  119. package/dist/index.es159.js +12 -133
  120. package/dist/index.es159.js.map +1 -1
  121. package/dist/index.es160.js +7 -215
  122. package/dist/index.es160.js.map +1 -1
  123. package/dist/index.es161.js +4 -13
  124. package/dist/index.es161.js.map +1 -1
  125. package/dist/index.es162.js +27 -7
  126. package/dist/index.es162.js.map +1 -1
  127. package/dist/index.es163.js +49 -3
  128. package/dist/index.es163.js.map +1 -1
  129. package/dist/index.es164.js +9 -28
  130. package/dist/index.es164.js.map +1 -1
  131. package/dist/index.es165.js +176 -48
  132. package/dist/index.es165.js.map +1 -1
  133. package/dist/index.es166.js +68 -9
  134. package/dist/index.es166.js.map +1 -1
  135. package/dist/index.es167.js +1 -1
  136. package/dist/index.es169.js +1 -1
  137. package/dist/index.es175.js +1 -1
  138. package/dist/index.es177.js +4 -4
  139. package/dist/index.es18.js +1 -1
  140. package/dist/index.es182.js +69 -65
  141. package/dist/index.es182.js.map +1 -1
  142. package/dist/index.es183.js +8 -68
  143. package/dist/index.es183.js.map +1 -1
  144. package/dist/index.es184.js +14 -9
  145. package/dist/index.es184.js.map +1 -1
  146. package/dist/index.es185.js +62 -14
  147. package/dist/index.es185.js.map +1 -1
  148. package/dist/index.es186.js +64 -61
  149. package/dist/index.es186.js.map +1 -1
  150. package/dist/index.es19.js +25 -23
  151. package/dist/index.es19.js.map +1 -1
  152. package/dist/index.es21.js +1 -1
  153. package/dist/index.es24.js +2 -2
  154. package/dist/index.es34.js +2 -2
  155. package/dist/index.es41.js +15 -39
  156. package/dist/index.es41.js.map +1 -1
  157. package/dist/index.es42.js +15 -33
  158. package/dist/index.es42.js.map +1 -1
  159. package/dist/index.es43.js +2475 -15
  160. package/dist/index.es43.js.map +1 -1
  161. package/dist/index.es44.js +39 -13
  162. package/dist/index.es44.js.map +1 -1
  163. package/dist/index.es45.js +32 -2476
  164. package/dist/index.es45.js.map +1 -1
  165. package/dist/index.es46.js +6 -6
  166. package/dist/index.es51.js +1 -1
  167. package/dist/index.es53.js +20 -20
  168. package/dist/index.es56.js +3 -3
  169. package/dist/index.es58.js +8 -8
  170. package/dist/index.es59.js +8 -8
  171. package/dist/index.es7.js +31 -25
  172. package/dist/index.es7.js.map +1 -1
  173. package/dist/packages/builder/edit-dialog.d.ts.map +1 -1
  174. package/dist/packages/plugins/string.d.ts.map +1 -1
  175. package/dist/style.css +122 -67
  176. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),_=require("./index.cjs144.js"),N=require("./index.cjs149.js"),ce=require("./index.cjs147.js"),A=require("./index.cjs145.js"),C=require("./index.cjs162.js"),se=require("./index.cjs150.js"),ie=require("./index.cjs163.js"),ae=require("./index.cjs155.js"),x=require("./index.cjs146.js"),h=require("react/jsx-runtime");function de(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const c=de(le);function ue(e,t){return c.useReducer((r,n)=>t[r][n]??r,e)}var Y="ScrollArea",[G,fe]=ce.createContextScope(Y),[he,m]=G(Y),V=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,type:n="hover",dir:o,scrollHideDelay:l=600,...s}=e,[i,a]=c.useState(null),[f,d]=c.useState(null),[b,u]=c.useState(null),[S,w]=c.useState(null),[T,M]=c.useState(null),[P,L]=c.useState(0),[X,D]=c.useState(0),[j,y]=c.useState(!1),[H,O]=c.useState(!1),v=A.useComposedRefs(t,R=>a(R)),p=se.useDirection(o);return h.jsx(he,{scope:r,type:n,dir:p,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:d,content:b,onContentChange:u,scrollbarX:S,onScrollbarXChange:w,scrollbarXEnabled:j,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:L,onCornerHeightChange:D,children:h.jsx(_.Primitive.div,{dir:p,...s,ref:v,style:{position:"relative","--radix-scroll-area-corner-width":P+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var J="ScrollAreaViewport",U=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,children:n,nonce:o,...l}=e,s=m(J,r),i=c.useRef(null),a=A.useComposedRefs(t,i,s.onViewportChange);return h.jsxs(h.Fragment,{children:[h.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),h.jsx(_.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:h.jsx("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=J;var g="ScrollAreaScrollbar",K=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:s}=o,i=e.orientation==="horizontal";return c.useEffect(()=>(i?l(!0):s(!0),()=>{i?l(!1):s(!1)}),[i,l,s]),o.type==="hover"?h.jsx(be,{...n,ref:t,forceMount:r}):o.type==="scroll"?h.jsx(Se,{...n,ref:t,forceMount:r}):o.type==="auto"?h.jsx(Q,{...n,ref:t,forceMount:r}):o.type==="always"?h.jsx(q,{...n,ref:t}):null});K.displayName=g;var be=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),[l,s]=c.useState(!1);return c.useEffect(()=>{const i=o.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),s(!0)},d=()=>{a=window.setTimeout(()=>s(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),h.jsx(N.Presence,{present:r||l,children:h.jsx(Q,{"data-state":l?"visible":"hidden",...n,ref:t})})}),Se=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),l=e.orientation==="horizontal",s=I(()=>a("SCROLL_END"),100),[i,a]=ue("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return c.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,o.scrollHideDelay,a]),c.useEffect(()=>{const f=o.viewport,d=l?"scrollLeft":"scrollTop";if(f){let b=f[d];const u=()=>{const S=f[d];b!==S&&(a("SCROLL"),s()),b=S};return f.addEventListener("scroll",u),()=>f.removeEventListener("scroll",u)}},[o.viewport,l,a,s]),h.jsx(N.Presence,{present:r||i!=="hidden",children:h.jsx(q,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:x.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:x.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Q=c.forwardRef((e,t)=>{const r=m(g,e.__scopeScrollArea),{forceMount:n,...o}=e,[l,s]=c.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;s(i?f:d)}},10);return E(r.viewport,a),E(r.content,a),h.jsx(N.Presence,{present:n||l,children:h.jsx(q,{"data-state":l?"visible":"hidden",...o,ref:t})})}),q=c.forwardRef((e,t)=>{const{orientation:r="vertical",...n}=e,o=m(g,e.__scopeScrollArea),l=c.useRef(null),s=c.useRef(0),[i,a]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=oe(i.viewport,i.content),d={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:u=>l.current=u,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:u=>s.current=u};function b(u,S){return Pe(u,s.current,i,S)}return r==="horizontal"?h.jsx(ve,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const u=o.viewport.scrollLeft,S=$(u,i,o.dir);l.current.style.transform=`translate3d(${S}px, 0, 0)`}},onWheelScroll:u=>{o.viewport&&(o.viewport.scrollLeft=u)},onDragScroll:u=>{o.viewport&&(o.viewport.scrollLeft=b(u,o.dir))}}):r==="vertical"?h.jsx(me,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const u=o.viewport.scrollTop,S=$(u,i);l.current.style.transform=`translate3d(0, ${S}px, 0)`}},onWheelScroll:u=>{o.viewport&&(o.viewport.scrollTop=u)},onDragScroll:u=>{o.viewport&&(o.viewport.scrollTop=b(u))}}):null}),ve=c.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=m(g,e.__scopeScrollArea),[s,i]=c.useState(),a=c.useRef(null),f=A.useComposedRefs(t,a,l.onScrollbarXChange);return c.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsx(ee,{"data-orientation":"horizontal",...o,ref:f,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":k(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,b)=>{if(l.viewport){const u=l.viewport.scrollLeft+d.deltaX;e.onWheelScroll(u),ne(u,b)&&d.preventDefault()}},onResize:()=>{a.current&&l.viewport&&s&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(s.paddingLeft),paddingEnd:z(s.paddingRight)}})}})}),me=c.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=m(g,e.__scopeScrollArea),[s,i]=c.useState(),a=c.useRef(null),f=A.useComposedRefs(t,a,l.onScrollbarYChange);return c.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsx(ee,{"data-orientation":"vertical",...o,ref:f,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":k(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,b)=>{if(l.viewport){const u=l.viewport.scrollTop+d.deltaY;e.onWheelScroll(u),ne(u,b)&&d.preventDefault()}},onResize:()=>{a.current&&l.viewport&&s&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(s.paddingTop),paddingEnd:z(s.paddingBottom)}})}})}),[pe,Z]=G(g),ee=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:o,onThumbChange:l,onThumbPointerUp:s,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:d,onResize:b,...u}=e,S=m(g,r),[w,T]=c.useState(null),M=A.useComposedRefs(t,v=>T(v)),P=c.useRef(null),L=c.useRef(""),X=S.viewport,D=n.content-n.viewport,j=C.useCallbackRef(d),y=C.useCallbackRef(a),H=I(b,10);function O(v){if(P.current){const p=v.clientX-P.current.left,R=v.clientY-P.current.top;f({x:p,y:R})}}return c.useEffect(()=>{const v=p=>{const R=p.target;w?.contains(R)&&j(p,D)};return document.addEventListener("wheel",v,{passive:!1}),()=>document.removeEventListener("wheel",v,{passive:!1})},[X,w,D,j]),c.useEffect(y,[n,y]),E(w,H),E(S.content,H),h.jsx(pe,{scope:r,scrollbar:w,hasThumb:o,onThumbChange:C.useCallbackRef(l),onThumbPointerUp:C.useCallbackRef(s),onThumbPositionChange:y,onThumbPointerDown:C.useCallbackRef(i),children:h.jsx(_.Primitive.div,{...u,ref:M,style:{position:"absolute",...u.style},onPointerDown:x.composeEventHandlers(e.onPointerDown,v=>{v.button===0&&(v.target.setPointerCapture(v.pointerId),P.current=w.getBoundingClientRect(),L.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),O(v))}),onPointerMove:x.composeEventHandlers(e.onPointerMove,O),onPointerUp:x.composeEventHandlers(e.onPointerUp,v=>{const p=v.target;p.hasPointerCapture(v.pointerId)&&p.releasePointerCapture(v.pointerId),document.body.style.webkitUserSelect=L.current,S.viewport&&(S.viewport.style.scrollBehavior=""),P.current=null})})})}),W="ScrollAreaThumb",re=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Z(W,e.__scopeScrollArea);return h.jsx(N.Presence,{present:r||o.hasThumb,children:h.jsx(we,{ref:t,...n})})}),we=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,style:n,...o}=e,l=m(W,r),s=Z(W,r),{onThumbPositionChange:i}=s,a=A.useComposedRefs(t,b=>s.onThumbChange(b)),f=c.useRef(void 0),d=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return c.useEffect(()=>{const b=l.viewport;if(b){const u=()=>{if(d(),!f.current){const S=Ce(b,i);f.current=S,i()}};return i(),b.addEventListener("scroll",u),()=>b.removeEventListener("scroll",u)}},[l.viewport,d,i]),h.jsx(_.Primitive.div,{"data-state":s.hasThumb?"visible":"hidden",...o,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:x.composeEventHandlers(e.onPointerDownCapture,b=>{const S=b.target.getBoundingClientRect(),w=b.clientX-S.left,T=b.clientY-S.top;s.onThumbPointerDown({x:w,y:T})}),onPointerUp:x.composeEventHandlers(e.onPointerUp,s.onThumbPointerUp)})});re.displayName=W;var B="ScrollAreaCorner",F=c.forwardRef((e,t)=>{const r=m(B,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?h.jsx(ge,{...e,ref:t}):null});F.displayName=B;var ge=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,...n}=e,o=m(B,r),[l,s]=c.useState(0),[i,a]=c.useState(0),f=!!(l&&i);return E(o.scrollbarX,()=>{const d=o.scrollbarX?.offsetHeight||0;o.onCornerHeightChange(d),a(d)}),E(o.scrollbarY,()=>{const d=o.scrollbarY?.offsetWidth||0;o.onCornerWidthChange(d),s(d)}),f?h.jsx(_.Primitive.div,{...n,ref:t,style:{width:l,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function oe(e,t){const r=e/t;return isNaN(r)?0:r}function k(e){const t=oe(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function Pe(e,t,r,n="ltr"){const o=k(r),l=o/2,s=t||l,i=o-s,a=r.scrollbar.paddingStart+s,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,b=n==="ltr"?[0,d]:[d*-1,0];return te([a,f],b)(e)}function $(e,t,r="ltr"){const n=k(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=t.scrollbar.size-o,s=t.content-t.viewport,i=l-n,a=r==="ltr"?[0,s]:[s*-1,0],f=ae.clamp(e,a);return te([0,s],[0,i])(f)}function te(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function ne(e,t){return e>0&&e<t}var Ce=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function o(){const l={left:e.scrollLeft,top:e.scrollTop},s=r.left!==l.left,i=r.top!==l.top;(s||i)&&t(),r=l,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function I(e,t){const r=C.useCallbackRef(e),n=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(n.current),[]),c.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function E(e,t){const r=C.useCallbackRef(t);ie.useLayoutEffect(()=>{let n=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(n),o.unobserve(e)}}},[e,r])}var xe=V,Re=U,Ee=F;exports.Corner=Ee;exports.Root=xe;exports.ScrollArea=V;exports.ScrollAreaCorner=F;exports.ScrollAreaScrollbar=K;exports.ScrollAreaThumb=re;exports.ScrollAreaViewport=U;exports.Viewport=Re;exports.createScrollAreaScope=fe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),_=require("./index.cjs150.js"),N=require("./index.cjs166.js"),ce=require("./index.cjs146.js"),A=require("./index.cjs145.js"),C=require("./index.cjs160.js"),se=require("./index.cjs153.js"),ie=require("./index.cjs161.js"),ae=require("./index.cjs151.js"),x=require("./index.cjs144.js"),h=require("react/jsx-runtime");function de(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const c=de(le);function ue(e,t){return c.useReducer((r,n)=>t[r][n]??r,e)}var Y="ScrollArea",[G,fe]=ce.createContextScope(Y),[he,m]=G(Y),V=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,type:n="hover",dir:o,scrollHideDelay:l=600,...s}=e,[i,a]=c.useState(null),[f,d]=c.useState(null),[b,u]=c.useState(null),[S,w]=c.useState(null),[T,M]=c.useState(null),[P,L]=c.useState(0),[X,D]=c.useState(0),[j,y]=c.useState(!1),[H,O]=c.useState(!1),v=A.useComposedRefs(t,R=>a(R)),p=se.useDirection(o);return h.jsx(he,{scope:r,type:n,dir:p,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:d,content:b,onContentChange:u,scrollbarX:S,onScrollbarXChange:w,scrollbarXEnabled:j,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:L,onCornerHeightChange:D,children:h.jsx(_.Primitive.div,{dir:p,...s,ref:v,style:{position:"relative","--radix-scroll-area-corner-width":P+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var J="ScrollAreaViewport",U=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,children:n,nonce:o,...l}=e,s=m(J,r),i=c.useRef(null),a=A.useComposedRefs(t,i,s.onViewportChange);return h.jsxs(h.Fragment,{children:[h.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),h.jsx(_.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:h.jsx("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=J;var g="ScrollAreaScrollbar",K=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:s}=o,i=e.orientation==="horizontal";return c.useEffect(()=>(i?l(!0):s(!0),()=>{i?l(!1):s(!1)}),[i,l,s]),o.type==="hover"?h.jsx(be,{...n,ref:t,forceMount:r}):o.type==="scroll"?h.jsx(Se,{...n,ref:t,forceMount:r}):o.type==="auto"?h.jsx(Q,{...n,ref:t,forceMount:r}):o.type==="always"?h.jsx(q,{...n,ref:t}):null});K.displayName=g;var be=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),[l,s]=c.useState(!1);return c.useEffect(()=>{const i=o.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),s(!0)},d=()=>{a=window.setTimeout(()=>s(!1),o.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",d)}}},[o.scrollArea,o.scrollHideDelay]),h.jsx(N.Presence,{present:r||l,children:h.jsx(Q,{"data-state":l?"visible":"hidden",...n,ref:t})})}),Se=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=m(g,e.__scopeScrollArea),l=e.orientation==="horizontal",s=I(()=>a("SCROLL_END"),100),[i,a]=ue("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return c.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,o.scrollHideDelay,a]),c.useEffect(()=>{const f=o.viewport,d=l?"scrollLeft":"scrollTop";if(f){let b=f[d];const u=()=>{const S=f[d];b!==S&&(a("SCROLL"),s()),b=S};return f.addEventListener("scroll",u),()=>f.removeEventListener("scroll",u)}},[o.viewport,l,a,s]),h.jsx(N.Presence,{present:r||i!=="hidden",children:h.jsx(q,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:x.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:x.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Q=c.forwardRef((e,t)=>{const r=m(g,e.__scopeScrollArea),{forceMount:n,...o}=e,[l,s]=c.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;s(i?f:d)}},10);return E(r.viewport,a),E(r.content,a),h.jsx(N.Presence,{present:n||l,children:h.jsx(q,{"data-state":l?"visible":"hidden",...o,ref:t})})}),q=c.forwardRef((e,t)=>{const{orientation:r="vertical",...n}=e,o=m(g,e.__scopeScrollArea),l=c.useRef(null),s=c.useRef(0),[i,a]=c.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=oe(i.viewport,i.content),d={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:u=>l.current=u,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:u=>s.current=u};function b(u,S){return Pe(u,s.current,i,S)}return r==="horizontal"?h.jsx(ve,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const u=o.viewport.scrollLeft,S=$(u,i,o.dir);l.current.style.transform=`translate3d(${S}px, 0, 0)`}},onWheelScroll:u=>{o.viewport&&(o.viewport.scrollLeft=u)},onDragScroll:u=>{o.viewport&&(o.viewport.scrollLeft=b(u,o.dir))}}):r==="vertical"?h.jsx(me,{...d,ref:t,onThumbPositionChange:()=>{if(o.viewport&&l.current){const u=o.viewport.scrollTop,S=$(u,i);l.current.style.transform=`translate3d(0, ${S}px, 0)`}},onWheelScroll:u=>{o.viewport&&(o.viewport.scrollTop=u)},onDragScroll:u=>{o.viewport&&(o.viewport.scrollTop=b(u))}}):null}),ve=c.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=m(g,e.__scopeScrollArea),[s,i]=c.useState(),a=c.useRef(null),f=A.useComposedRefs(t,a,l.onScrollbarXChange);return c.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsx(ee,{"data-orientation":"horizontal",...o,ref:f,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":k(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,b)=>{if(l.viewport){const u=l.viewport.scrollLeft+d.deltaX;e.onWheelScroll(u),ne(u,b)&&d.preventDefault()}},onResize:()=>{a.current&&l.viewport&&s&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(s.paddingLeft),paddingEnd:z(s.paddingRight)}})}})}),me=c.forwardRef((e,t)=>{const{sizes:r,onSizesChange:n,...o}=e,l=m(g,e.__scopeScrollArea),[s,i]=c.useState(),a=c.useRef(null),f=A.useComposedRefs(t,a,l.onScrollbarYChange);return c.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),h.jsx(ee,{"data-orientation":"vertical",...o,ref:f,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":k(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,b)=>{if(l.viewport){const u=l.viewport.scrollTop+d.deltaY;e.onWheelScroll(u),ne(u,b)&&d.preventDefault()}},onResize:()=>{a.current&&l.viewport&&s&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(s.paddingTop),paddingEnd:z(s.paddingBottom)}})}})}),[pe,Z]=G(g),ee=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:o,onThumbChange:l,onThumbPointerUp:s,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:d,onResize:b,...u}=e,S=m(g,r),[w,T]=c.useState(null),M=A.useComposedRefs(t,v=>T(v)),P=c.useRef(null),L=c.useRef(""),X=S.viewport,D=n.content-n.viewport,j=C.useCallbackRef(d),y=C.useCallbackRef(a),H=I(b,10);function O(v){if(P.current){const p=v.clientX-P.current.left,R=v.clientY-P.current.top;f({x:p,y:R})}}return c.useEffect(()=>{const v=p=>{const R=p.target;w?.contains(R)&&j(p,D)};return document.addEventListener("wheel",v,{passive:!1}),()=>document.removeEventListener("wheel",v,{passive:!1})},[X,w,D,j]),c.useEffect(y,[n,y]),E(w,H),E(S.content,H),h.jsx(pe,{scope:r,scrollbar:w,hasThumb:o,onThumbChange:C.useCallbackRef(l),onThumbPointerUp:C.useCallbackRef(s),onThumbPositionChange:y,onThumbPointerDown:C.useCallbackRef(i),children:h.jsx(_.Primitive.div,{...u,ref:M,style:{position:"absolute",...u.style},onPointerDown:x.composeEventHandlers(e.onPointerDown,v=>{v.button===0&&(v.target.setPointerCapture(v.pointerId),P.current=w.getBoundingClientRect(),L.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),O(v))}),onPointerMove:x.composeEventHandlers(e.onPointerMove,O),onPointerUp:x.composeEventHandlers(e.onPointerUp,v=>{const p=v.target;p.hasPointerCapture(v.pointerId)&&p.releasePointerCapture(v.pointerId),document.body.style.webkitUserSelect=L.current,S.viewport&&(S.viewport.style.scrollBehavior=""),P.current=null})})})}),W="ScrollAreaThumb",re=c.forwardRef((e,t)=>{const{forceMount:r,...n}=e,o=Z(W,e.__scopeScrollArea);return h.jsx(N.Presence,{present:r||o.hasThumb,children:h.jsx(we,{ref:t,...n})})}),we=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,style:n,...o}=e,l=m(W,r),s=Z(W,r),{onThumbPositionChange:i}=s,a=A.useComposedRefs(t,b=>s.onThumbChange(b)),f=c.useRef(void 0),d=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return c.useEffect(()=>{const b=l.viewport;if(b){const u=()=>{if(d(),!f.current){const S=Ce(b,i);f.current=S,i()}};return i(),b.addEventListener("scroll",u),()=>b.removeEventListener("scroll",u)}},[l.viewport,d,i]),h.jsx(_.Primitive.div,{"data-state":s.hasThumb?"visible":"hidden",...o,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:x.composeEventHandlers(e.onPointerDownCapture,b=>{const S=b.target.getBoundingClientRect(),w=b.clientX-S.left,T=b.clientY-S.top;s.onThumbPointerDown({x:w,y:T})}),onPointerUp:x.composeEventHandlers(e.onPointerUp,s.onThumbPointerUp)})});re.displayName=W;var B="ScrollAreaCorner",F=c.forwardRef((e,t)=>{const r=m(B,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?h.jsx(ge,{...e,ref:t}):null});F.displayName=B;var ge=c.forwardRef((e,t)=>{const{__scopeScrollArea:r,...n}=e,o=m(B,r),[l,s]=c.useState(0),[i,a]=c.useState(0),f=!!(l&&i);return E(o.scrollbarX,()=>{const d=o.scrollbarX?.offsetHeight||0;o.onCornerHeightChange(d),a(d)}),E(o.scrollbarY,()=>{const d=o.scrollbarY?.offsetWidth||0;o.onCornerWidthChange(d),s(d)}),f?h.jsx(_.Primitive.div,{...n,ref:t,style:{width:l,height:i,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function oe(e,t){const r=e/t;return isNaN(r)?0:r}function k(e){const t=oe(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function Pe(e,t,r,n="ltr"){const o=k(r),l=o/2,s=t||l,i=o-s,a=r.scrollbar.paddingStart+s,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,b=n==="ltr"?[0,d]:[d*-1,0];return te([a,f],b)(e)}function $(e,t,r="ltr"){const n=k(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=t.scrollbar.size-o,s=t.content-t.viewport,i=l-n,a=r==="ltr"?[0,s]:[s*-1,0],f=ae.clamp(e,a);return te([0,s],[0,i])(f)}function te(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function ne(e,t){return e>0&&e<t}var Ce=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function o(){const l={left:e.scrollLeft,top:e.scrollTop},s=r.left!==l.left,i=r.top!==l.top;(s||i)&&t(),r=l,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function I(e,t){const r=C.useCallbackRef(e),n=c.useRef(0);return c.useEffect(()=>()=>window.clearTimeout(n.current),[]),c.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function E(e,t){const r=C.useCallbackRef(t);ie.useLayoutEffect(()=>{let n=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return o.observe(e),()=>{window.cancelAnimationFrame(n),o.unobserve(e)}}},[e,r])}var xe=V,Re=U,Ee=F;exports.Corner=Ee;exports.Root=xe;exports.ScrollArea=V;exports.ScrollAreaCorner=F;exports.ScrollAreaScrollbar=K;exports.ScrollAreaThumb=re;exports.ScrollAreaViewport=U;exports.Viewport=Re;exports.createScrollAreaScope=fe;
2
2
  //# sourceMappingURL=index.cjs59.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),b=require("./index.cjs32.js"),d=require("./index.cjs38.js"),g=require("./index.cjs18.js"),h=require("./index.cjs24.js"),p=require("./index.cjs4.js"),x=require("./index.cjs14.js"),u=require("./index.cjs17.js"),v=require("./index.cjs39.js"),f=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r);return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b.Input,{id:t.name,type:"number",value:i,onChange:c=>s(Number(c.target.value)),disabled:a,min:0,className:h.cn({"border-destructive":n})}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},N=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r);return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b.Input,{id:t.name,type:"text",value:i,onChange:c=>s(c.target.value),disabled:a,placeholder:"Regular expression pattern",className:h.cn({"border-destructive":n})}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},L=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r),c=[{value:"email",label:"Email"},{value:"uri",label:"URI"},{value:"url",label:"URL"},{value:"date",label:"Date"},{value:"date-time",label:"Date-Time"},{value:"uuid",label:"UUID"},{value:"hostname",label:"Hostname"},{value:"ipv4",label:"IPv4"},{value:"ipv6",label:"IPv6"},{value:"phone",label:"Phone"}];return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(u.Select,{value:i,onValueChange:m=>s(m),disabled:a,children:[e.jsx(u.SelectTrigger,{id:t.name,className:h.cn("flex-1",{"border-destructive":n}),children:e.jsx(u.SelectValue,{placeholder:"Select format"})}),e.jsx(u.SelectContent,{children:c.map(m=>e.jsx(u.SelectItem,{value:m.value,children:m.label},m.value))})]}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},j=f,C=f,S=N,R=L,y={id:"string-constraints",hooks:{registerConstraints(){return[{name:"minLength",label:"Min Length",appliesTo:["string"],schema:{type:"integer",title:"Minimum Length Constraint",description:"The minimum length of the string",examples:[1,5,10],minimum:0},description:"Constrains a string to a minimum length",defaultValue:0},{name:"maxLength",label:"Max Length",appliesTo:["string"],schema:{type:"integer",title:"Maximum Length Constraint",description:"The maximum length of the string",examples:[50,100,255],minimum:0},description:"Constrains a string to a maximum length",defaultValue:100},{name:"pattern",label:"Pattern",appliesTo:["string"],schema:{type:"string",title:"Pattern Constraint",description:"Regular expression pattern the string must match",examples:["^[a-zA-Z0-9]+$","\\d{3}-\\d{2}-\\d{4}"]},description:"Regular expression that the string must match",defaultValue:""},{name:"format",label:"Format",appliesTo:["string"],schema:{type:"string",title:"Format Constraint",description:"Predefined format the string must follow",enum:["email","uri","url","date","date-time","uuid","hostname","ipv4","ipv6","phone"]},description:"Predefined format validation for the string",defaultValue:"email"}]},registerRenderers(){return{minLength:j,maxLength:C,pattern:S,format:R}}}};exports.StringConstraintPlugin=y;exports.StringFormatRenderer=R;exports.StringMaxLengthRenderer=C;exports.StringMinLengthRenderer=j;exports.StringPatternRenderer=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),b=require("./index.cjs32.js"),d=require("./index.cjs38.js"),g=require("./index.cjs18.js"),h=require("./index.cjs24.js"),p=require("./index.cjs4.js"),x=require("./index.cjs14.js"),u=require("./index.cjs17.js"),v=require("./index.cjs39.js"),f=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r);return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b.Input,{id:t.name,type:"number",value:i,onChange:m=>s(Number(m.target.value)),disabled:a,min:0,className:h.cn({"border-destructive":n})}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},N=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r);return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(b.Input,{id:t.name,type:"text",value:i,onChange:m=>s(m.target.value),disabled:a,placeholder:"Regular expression pattern",className:h.cn({"border-destructive":n})}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},L=({constraintName:r,value:i,onConstraintChange:s,disabled:a,error:n,onRemoveConstraint:l})=>{const{getConstraintDefinition:o}=p.useConstraints(),t=o(r),m=[{value:"email",label:"Email"},{value:"uri",label:"URI"},{value:"url",label:"URL"},{value:"date",label:"Date"},{value:"date-time",label:"Date-Time"},{value:"uuid",label:"UUID"},{value:"hostname",label:"Hostname"},{value:"ipv4",label:"IPv4"},{value:"ipv6",label:"IPv6"},{value:"phone",label:"Phone"},{value:"time",label:"Time"},{value:"iso-time",label:"ISO Time"},{value:"iso-date-time",label:"ISO Date-Time"}];return t?e.jsx(d.InputErrorWrapper,{errorCode:n?.code,errorDescription:n?.message,showError:!!n,children:e.jsxs("div",{children:[e.jsx(g.Label,{className:"mb-2",htmlFor:t.name,children:t.name}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(u.Select,{value:i,onValueChange:c=>s(c),disabled:a,children:[e.jsx(u.SelectTrigger,{id:t.name,className:h.cn("flex-1",{"border-destructive":n}),children:e.jsx(u.SelectValue,{placeholder:"Select format"})}),e.jsx(u.SelectContent,{children:m.map(c=>e.jsx(u.SelectItem,{value:c.value,children:c.label},c.value))})]}),e.jsx(x.Button,{type:"button",variant:"ghost",size:"icon",onClick:()=>l(),children:e.jsx(v.default,{className:"size-4"})})]}),t.description&&e.jsx("div",{className:"mt-2 text-sm text-gray-500",children:t.description})]})}):null},j=f,C=f,S=N,R=L,y={id:"string-constraints",hooks:{registerConstraints(){return[{name:"minLength",label:"Min Length",appliesTo:["string"],schema:{type:"integer",title:"Minimum Length Constraint",description:"The minimum length of the string",examples:[1,5,10],minimum:0},description:"Constrains a string to a minimum length",defaultValue:0},{name:"maxLength",label:"Max Length",appliesTo:["string"],schema:{type:"integer",title:"Maximum Length Constraint",description:"The maximum length of the string",examples:[50,100,255],minimum:0},description:"Constrains a string to a maximum length",defaultValue:100},{name:"pattern",label:"Pattern",appliesTo:["string"],schema:{type:"string",title:"Pattern Constraint",description:"Regular expression pattern the string must match",examples:["^[a-zA-Z0-9]+$","\\d{3}-\\d{2}-\\d{4}"]},description:"Regular expression that the string must match",defaultValue:""},{name:"format",label:"Format",appliesTo:["string"],schema:{type:"string",title:"Format Constraint",description:"Predefined format the string must follow",enum:["email","uri","url","date","date-time","uuid","hostname","ipv4","ipv6","phone","time","iso-time","iso-date-time"]},description:"Predefined format validation for the string",defaultValue:"email"}]},registerRenderers(){return{minLength:j,maxLength:C,pattern:S,format:R}}}};exports.StringConstraintPlugin=y;exports.StringFormatRenderer=R;exports.StringMaxLengthRenderer=C;exports.StringMinLengthRenderer=j;exports.StringPatternRenderer=S;
2
2
  //# sourceMappingURL=index.cjs7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs7.js","sources":["../src/packages/plugins/string.tsx"],"sourcesContent":["import { Input } from \"@/components/ui/input\";\nimport { InputErrorWrapper } from \"@/components/input-error\";\nimport { Label } from \"@/components/ui/label\";\nimport { cn } from \"@/lib/utils\";\nimport {\n BaseJSONSchemaPlugin,\n ConstraintRendererProps,\n useConstraints,\n} from \"@/packages/constraints/context\";\nimport { Button } from \"@/components/ui/button\";\nimport { X } from \"lucide-react\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\n// Generic string constraint renderer for number-based constraints (minLength, maxLength)\nconst StringNumberConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<number> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Input\n id={constraintDef.name}\n type=\"number\"\n value={value}\n onChange={(e) => onConstraintChange(Number(e.target.value))}\n disabled={disabled}\n min={0}\n className={cn({ \"border-destructive\": error })}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Pattern constraint renderer for regex input\nconst PatternConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<string> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Input\n id={constraintDef.name}\n type=\"text\"\n value={value}\n onChange={(e) => onConstraintChange(e.target.value)}\n disabled={disabled}\n placeholder=\"Regular expression pattern\"\n className={cn({ \"border-destructive\": error })}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Format constraint renderer with predefined format options\nconst FormatConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<string> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n const formatOptions = [\n { value: \"email\", label: \"Email\" },\n { value: \"uri\", label: \"URI\" },\n { value: \"url\", label: \"URL\" },\n { value: \"date\", label: \"Date\" },\n { value: \"date-time\", label: \"Date-Time\" },\n { value: \"uuid\", label: \"UUID\" },\n { value: \"hostname\", label: \"Hostname\" },\n { value: \"ipv4\", label: \"IPv4\" },\n { value: \"ipv6\", label: \"IPv6\" },\n { value: \"phone\", label: \"Phone\" },\n ];\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Select\n value={value}\n onValueChange={(newValue) => onConstraintChange(newValue)}\n disabled={disabled}\n >\n <SelectTrigger\n id={constraintDef.name}\n className={cn(\"flex-1\", { \"border-destructive\": error })}\n >\n <SelectValue placeholder=\"Select format\" />\n </SelectTrigger>\n <SelectContent>\n {formatOptions.map((option) => (\n <SelectItem key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Export the renderers\nexport const StringMinLengthRenderer = StringNumberConstraintRenderer;\nexport const StringMaxLengthRenderer = StringNumberConstraintRenderer;\nexport const StringPatternRenderer = PatternConstraintRenderer;\nexport const StringFormatRenderer = FormatConstraintRenderer;\n\nexport const StringConstraintPlugin: BaseJSONSchemaPlugin = {\n id: \"string-constraints\",\n hooks: {\n registerConstraints() {\n return [\n {\n name: \"minLength\",\n label: \"Min Length\",\n appliesTo: [\"string\"],\n schema: {\n type: \"integer\",\n title: \"Minimum Length Constraint\",\n description: \"The minimum length of the string\",\n examples: [1, 5, 10],\n minimum: 0,\n },\n description: \"Constrains a string to a minimum length\",\n defaultValue: 0,\n },\n {\n name: \"maxLength\",\n label: \"Max Length\",\n appliesTo: [\"string\"],\n schema: {\n type: \"integer\",\n title: \"Maximum Length Constraint\",\n description: \"The maximum length of the string\",\n examples: [50, 100, 255],\n minimum: 0,\n },\n description: \"Constrains a string to a maximum length\",\n defaultValue: 100,\n },\n {\n name: \"pattern\",\n label: \"Pattern\",\n appliesTo: [\"string\"],\n schema: {\n type: \"string\",\n title: \"Pattern Constraint\",\n description: \"Regular expression pattern the string must match\",\n examples: [\"^[a-zA-Z0-9]+$\", \"\\\\d{3}-\\\\d{2}-\\\\d{4}\"],\n },\n description: \"Regular expression that the string must match\",\n defaultValue: \"\",\n },\n {\n name: \"format\",\n label: \"Format\",\n appliesTo: [\"string\"],\n schema: {\n type: \"string\",\n title: \"Format Constraint\",\n description: \"Predefined format the string must follow\",\n enum: [\n \"email\",\n \"uri\",\n \"url\",\n \"date\",\n \"date-time\",\n \"uuid\",\n \"hostname\",\n \"ipv4\",\n \"ipv6\",\n \"phone\",\n ],\n },\n description: \"Predefined format validation for the string\",\n defaultValue: \"email\",\n },\n ];\n },\n registerRenderers() {\n return {\n minLength: StringMinLengthRenderer,\n maxLength: StringMaxLengthRenderer,\n pattern: StringPatternRenderer,\n format: StringFormatRenderer,\n };\n },\n },\n};\n"],"names":["StringNumberConstraintRenderer","constraintName","value","onConstraintChange","disabled","error","onRemoveConstraint","getConstraintDefinition","useConstraints","constraintDef","jsx","InputErrorWrapper","Label","jsxs","Input","e","cn","Button","X","PatternConstraintRenderer","FormatConstraintRenderer","formatOptions","Select","newValue","SelectTrigger","SelectValue","SelectContent","option","SelectItem","StringMinLengthRenderer","StringMaxLengthRenderer","StringPatternRenderer","StringFormatRenderer","StringConstraintPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs7.js","sources":["../src/packages/plugins/string.tsx"],"sourcesContent":["import { Input } from \"@/components/ui/input\";\nimport { InputErrorWrapper } from \"@/components/input-error\";\nimport { Label } from \"@/components/ui/label\";\nimport { cn } from \"@/lib/utils\";\nimport {\n BaseJSONSchemaPlugin,\n ConstraintRendererProps,\n useConstraints,\n} from \"@/packages/constraints/context\";\nimport { Button } from \"@/components/ui/button\";\nimport { X } from \"lucide-react\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\n// Generic string constraint renderer for number-based constraints (minLength, maxLength)\nconst StringNumberConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<number> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Input\n id={constraintDef.name}\n type=\"number\"\n value={value}\n onChange={(e) => onConstraintChange(Number(e.target.value))}\n disabled={disabled}\n min={0}\n className={cn({ \"border-destructive\": error })}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Pattern constraint renderer for regex input\nconst PatternConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<string> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Input\n id={constraintDef.name}\n type=\"text\"\n value={value}\n onChange={(e) => onConstraintChange(e.target.value)}\n disabled={disabled}\n placeholder=\"Regular expression pattern\"\n className={cn({ \"border-destructive\": error })}\n />\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Format constraint renderer with predefined format options\nconst FormatConstraintRenderer = ({\n constraintName,\n value,\n onConstraintChange,\n disabled,\n error,\n onRemoveConstraint,\n}: ConstraintRendererProps<string> & { disabled?: boolean }) => {\n const { getConstraintDefinition } = useConstraints();\n const constraintDef = getConstraintDefinition(constraintName);\n\n const formatOptions = [\n { value: \"email\", label: \"Email\" },\n { value: \"uri\", label: \"URI\" },\n { value: \"url\", label: \"URL\" },\n { value: \"date\", label: \"Date\" },\n { value: \"date-time\", label: \"Date-Time\" },\n { value: \"uuid\", label: \"UUID\" },\n { value: \"hostname\", label: \"Hostname\" },\n { value: \"ipv4\", label: \"IPv4\" },\n { value: \"ipv6\", label: \"IPv6\" },\n { value: \"phone\", label: \"Phone\" },\n { value: \"time\", label: \"Time\" },\n { value: \"iso-time\", label: \"ISO Time\" },\n { value: \"iso-date-time\", label: \"ISO Date-Time\" },\n ];\n\n if (!constraintDef) {\n return null;\n }\n\n return (\n <InputErrorWrapper\n errorCode={error?.code}\n errorDescription={error?.message}\n showError={!!error}\n >\n <div>\n <Label className=\"mb-2\" htmlFor={constraintDef.name}>\n {constraintDef.name}\n </Label>\n <div className=\"flex items-center gap-2\">\n <Select\n value={value}\n onValueChange={(newValue) => onConstraintChange(newValue)}\n disabled={disabled}\n >\n <SelectTrigger\n id={constraintDef.name}\n className={cn(\"flex-1\", { \"border-destructive\": error })}\n >\n <SelectValue placeholder=\"Select format\" />\n </SelectTrigger>\n <SelectContent>\n {formatOptions.map((option) => (\n <SelectItem key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n onClick={() => onRemoveConstraint()}\n >\n <X className=\"size-4\" />\n </Button>\n </div>\n {constraintDef.description && (\n <div className=\"mt-2 text-sm text-gray-500\">\n {constraintDef.description}\n </div>\n )}\n </div>\n </InputErrorWrapper>\n );\n};\n\n// Export the renderers\nexport const StringMinLengthRenderer = StringNumberConstraintRenderer;\nexport const StringMaxLengthRenderer = StringNumberConstraintRenderer;\nexport const StringPatternRenderer = PatternConstraintRenderer;\nexport const StringFormatRenderer = FormatConstraintRenderer;\n\nexport const StringConstraintPlugin: BaseJSONSchemaPlugin = {\n id: \"string-constraints\",\n hooks: {\n registerConstraints() {\n return [\n {\n name: \"minLength\",\n label: \"Min Length\",\n appliesTo: [\"string\"],\n schema: {\n type: \"integer\",\n title: \"Minimum Length Constraint\",\n description: \"The minimum length of the string\",\n examples: [1, 5, 10],\n minimum: 0,\n },\n description: \"Constrains a string to a minimum length\",\n defaultValue: 0,\n },\n {\n name: \"maxLength\",\n label: \"Max Length\",\n appliesTo: [\"string\"],\n schema: {\n type: \"integer\",\n title: \"Maximum Length Constraint\",\n description: \"The maximum length of the string\",\n examples: [50, 100, 255],\n minimum: 0,\n },\n description: \"Constrains a string to a maximum length\",\n defaultValue: 100,\n },\n {\n name: \"pattern\",\n label: \"Pattern\",\n appliesTo: [\"string\"],\n schema: {\n type: \"string\",\n title: \"Pattern Constraint\",\n description: \"Regular expression pattern the string must match\",\n examples: [\"^[a-zA-Z0-9]+$\", \"\\\\d{3}-\\\\d{2}-\\\\d{4}\"],\n },\n description: \"Regular expression that the string must match\",\n defaultValue: \"\",\n },\n {\n name: \"format\",\n label: \"Format\",\n appliesTo: [\"string\"],\n schema: {\n type: \"string\",\n title: \"Format Constraint\",\n description: \"Predefined format the string must follow\",\n enum: [\n \"email\",\n \"uri\",\n \"url\",\n \"date\",\n \"date-time\",\n \"uuid\",\n \"hostname\",\n \"ipv4\",\n \"ipv6\",\n \"phone\",\n \"time\",\n \"iso-time\",\n \"iso-date-time\",\n ],\n },\n description: \"Predefined format validation for the string\",\n defaultValue: \"email\",\n },\n ];\n },\n registerRenderers() {\n return {\n minLength: StringMinLengthRenderer,\n maxLength: StringMaxLengthRenderer,\n pattern: StringPatternRenderer,\n format: StringFormatRenderer,\n };\n },\n },\n};\n"],"names":["StringNumberConstraintRenderer","constraintName","value","onConstraintChange","disabled","error","onRemoveConstraint","getConstraintDefinition","useConstraints","constraintDef","jsx","InputErrorWrapper","Label","jsxs","Input","e","cn","Button","X","PatternConstraintRenderer","FormatConstraintRenderer","formatOptions","Select","newValue","SelectTrigger","SelectValue","SelectContent","option","SelectItem","StringMinLengthRenderer","StringMaxLengthRenderer","StringPatternRenderer","StringFormatRenderer","StringConstraintPlugin"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
- import { Slot as s } from "./index.es41.js";
3
- import { cva as a } from "./index.es42.js";
2
+ import { Slot as s } from "./index.es44.js";
3
+ import { cva as a } from "./index.es45.js";
4
4
  import { cn as d } from "./index.es24.js";
5
5
  const u = a(
6
6
  "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
@@ -1,18 +1,18 @@
1
1
  import * as s from "react";
2
- import { composeEventHandlers as p } from "./index.es146.js";
2
+ import { composeEventHandlers as p } from "./index.es144.js";
3
3
  import { useComposedRefs as R } from "./index.es145.js";
4
- import { createContextScope as V, createContext as q } from "./index.es147.js";
5
- import { useId as C } from "./index.es152.js";
6
- import { useControllableState as K } from "./index.es151.js";
7
- import { DismissableLayer as U } from "./index.es157.js";
8
- import { FocusScope as Y } from "./index.es159.js";
9
- import { Portal as Z } from "./index.es161.js";
10
- import { Presence as _ } from "./index.es149.js";
11
- import { Primitive as g } from "./index.es144.js";
12
- import { useFocusGuards as z } from "./index.es158.js";
13
- import J from "./index.es166.js";
14
- import { hideOthers as Q } from "./index.es165.js";
15
- import { Slot as X } from "./index.es41.js";
4
+ import { createContextScope as V, createContext as q } from "./index.es146.js";
5
+ import { useId as C } from "./index.es157.js";
6
+ import { useControllableState as K } from "./index.es147.js";
7
+ import { DismissableLayer as U } from "./index.es154.js";
8
+ import { FocusScope as Y } from "./index.es156.js";
9
+ import { Portal as Z } from "./index.es159.js";
10
+ import { Presence as _ } from "./index.es166.js";
11
+ import { Primitive as g } from "./index.es150.js";
12
+ import { useFocusGuards as z } from "./index.es155.js";
13
+ import J from "./index.es164.js";
14
+ import { hideOthers as Q } from "./index.es163.js";
15
+ import { Slot as X } from "./index.es44.js";
16
16
  import { jsx as i, jsxs as y, Fragment as I } from "react/jsx-runtime";
17
17
  var h = "Dialog", [O, Ne] = V(h), [ee, u] = O(h), x = (e) => {
18
18
  const {
@@ -1,5 +1,5 @@
1
1
  import * as p from "react";
2
- import { Primitive as v } from "./index.es144.js";
2
+ import { Primitive as v } from "./index.es150.js";
3
3
  import { jsx as m } from "react/jsx-runtime";
4
4
  var d = "Separator", a = "horizontal", l = ["horizontal", "vertical"], i = p.forwardRef((r, n) => {
5
5
  const { decorative: e, orientation: t = a, ...s } = r, o = f(t) ? t : a, c = e ? { role: "none" } : { "aria-orientation": o === "vertical" ? o : void 0, role: "separator" };
@@ -1,36 +1,10 @@
1
- import * as s from "react";
2
- import * as f from "react-dom";
3
- import { Slot as p } from "./index.es41.js";
4
- import { jsx as u } from "react/jsx-runtime";
5
- var c = [
6
- "a",
7
- "button",
8
- "div",
9
- "form",
10
- "h2",
11
- "h3",
12
- "img",
13
- "input",
14
- "label",
15
- "li",
16
- "nav",
17
- "ol",
18
- "p",
19
- "span",
20
- "svg",
21
- "ul"
22
- ], v = c.reduce((r, i) => {
23
- const t = s.forwardRef((o, e) => {
24
- const { asChild: m, ...a } = o, n = m ? p : i;
25
- return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ u(n, { ...a, ref: e });
26
- });
27
- return t.displayName = `Primitive.${i}`, { ...r, [i]: t };
28
- }, {});
29
- function h(r, i) {
30
- r && f.flushSync(() => r.dispatchEvent(i));
1
+ function f(n, r, { checkForDefaultPrevented: t = !0 } = {}) {
2
+ return function(e) {
3
+ if (n?.(e), t === !1 || !e.defaultPrevented)
4
+ return r?.(e);
5
+ };
31
6
  }
32
7
  export {
33
- v as Primitive,
34
- h as dispatchDiscreteCustomEvent
8
+ f as composeEventHandlers
35
9
  };
36
10
  //# sourceMappingURL=index.es144.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es144.js","sources":["../../../node_modules/.pnpm/@radix-ui+react-primitive@2.0.2_@types+react-dom@18.3.5_@types+react@18.3.18__@types+re_57431883aeb2c82f4228eaee26b876b0/node_modules/@radix-ui/react-primitive/dist/index.mjs"],"sourcesContent":["// packages/react/primitive/src/primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["NODES","Primitive","primitive","node","Node","React","props","forwardedRef","asChild","primitiveProps","Comp","Slot","jsx","dispatchDiscreteCustomEvent","target","event","ReactDOM"],"mappings":";;;;AAKA,IAAIA,IAAQ;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACIC,IAAYD,EAAM,OAAO,CAACE,GAAWC,MAAS;AAChD,QAAMC,IAAOC,EAAM,WAAW,CAACC,GAAOC,MAAiB;AACrD,UAAM,EAAE,SAAAC,GAAS,GAAGC,EAAc,IAAKH,GACjCI,IAAOF,IAAUG,IAAOR;AAC9B,WAAI,OAAO,SAAW,QACpB,OAAO,OAAO,IAAI,UAAU,CAAC,IAAI,KAEZ,gBAAAS,EAAIF,GAAM,EAAE,GAAGD,GAAgB,KAAKF,GAAc;AAAA,EAC7E,CAAG;AACD,SAAAH,EAAK,cAAc,aAAaD,CAAI,IAC7B,EAAE,GAAGD,GAAW,CAACC,CAAI,GAAGC,EAAM;AACvC,GAAG,CAAE,CAAA;AACL,SAASS,EAA4BC,GAAQC,GAAO;AAClD,EAAID,KAAQE,EAAS,UAAU,MAAMF,EAAO,cAAcC,CAAK,CAAC;AAClE;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es144.js","sources":["../../../node_modules/.pnpm/@radix-ui+primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.mjs"],"sourcesContent":["// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event"],"mappings":"AACA,SAASA,EAAqBC,GAAsBC,GAAiB,EAAE,0BAAAC,IAA2B,GAAM,IAAG,IAAI;AAC7G,SAAO,SAAqBC,GAAO;AAEjC,QADAH,IAAuBG,CAAK,GACxBD,MAA6B,MAAS,CAACC,EAAM;AAC/C,aAAOF,IAAkBE,CAAK;AAAA,EAEjC;AACH;","x_google_ignoreList":[0]}
@@ -1,10 +1,69 @@
1
- function f(n, r, { checkForDefaultPrevented: t = !0 } = {}) {
2
- return function(e) {
3
- if (n?.(e), t === !1 || !e.defaultPrevented)
4
- return r?.(e);
1
+ import * as u from "react";
2
+ import { jsx as f } from "react/jsx-runtime";
3
+ function $(t, c) {
4
+ const n = u.createContext(c), p = (r) => {
5
+ const { children: e, ...o } = r, s = u.useMemo(() => o, Object.values(o));
6
+ return /* @__PURE__ */ f(n.Provider, { value: s, children: e });
5
7
  };
8
+ p.displayName = t + "Provider";
9
+ function i(r) {
10
+ const e = u.useContext(n);
11
+ if (e) return e;
12
+ if (c !== void 0) return c;
13
+ throw new Error(`\`${r}\` must be used within \`${t}\``);
14
+ }
15
+ return [p, i];
16
+ }
17
+ function w(t, c = []) {
18
+ let n = [];
19
+ function p(r, e) {
20
+ const o = u.createContext(e), s = n.length;
21
+ n = [...n, e];
22
+ const d = (x) => {
23
+ const { scope: m, children: v, ...a } = x, S = m?.[t]?.[s] || o, h = u.useMemo(() => a, Object.values(a));
24
+ return /* @__PURE__ */ f(S.Provider, { value: h, children: v });
25
+ };
26
+ d.displayName = r + "Provider";
27
+ function C(x, m) {
28
+ const v = m?.[t]?.[s] || o, a = u.useContext(v);
29
+ if (a) return a;
30
+ if (e !== void 0) return e;
31
+ throw new Error(`\`${x}\` must be used within \`${r}\``);
32
+ }
33
+ return [d, C];
34
+ }
35
+ const i = () => {
36
+ const r = n.map((e) => u.createContext(e));
37
+ return function(o) {
38
+ const s = o?.[t] || r;
39
+ return u.useMemo(
40
+ () => ({ [`__scope${t}`]: { ...o, [t]: s } }),
41
+ [o, s]
42
+ );
43
+ };
44
+ };
45
+ return i.scopeName = t, [p, P(i, ...c)];
46
+ }
47
+ function P(...t) {
48
+ const c = t[0];
49
+ if (t.length === 1) return c;
50
+ const n = () => {
51
+ const p = t.map((i) => ({
52
+ useScope: i(),
53
+ scopeName: i.scopeName
54
+ }));
55
+ return function(r) {
56
+ const e = p.reduce((o, { useScope: s, scopeName: d }) => {
57
+ const x = s(r)[`__scope${d}`];
58
+ return { ...o, ...x };
59
+ }, {});
60
+ return u.useMemo(() => ({ [`__scope${c.scopeName}`]: e }), [e]);
61
+ };
62
+ };
63
+ return n.scopeName = c.scopeName, n;
6
64
  }
7
65
  export {
8
- f as composeEventHandlers
66
+ $ as createContext,
67
+ w as createContextScope
9
68
  };
10
69
  //# sourceMappingURL=index.es146.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es146.js","sources":["../../../node_modules/.pnpm/@radix-ui+primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.mjs"],"sourcesContent":["// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event"],"mappings":"AACA,SAASA,EAAqBC,GAAsBC,GAAiB,EAAE,0BAAAC,IAA2B,GAAM,IAAG,IAAI;AAC7G,SAAO,SAAqBC,GAAO;AAEjC,QADAH,IAAuBG,CAAK,GACxBD,MAA6B,MAAS,CAACC,EAAM;AAC/C,aAAOF,IAAkBE,CAAK;AAAA,EAEjC;AACH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es146.js","sources":["../../../node_modules/.pnpm/@radix-ui+react-context@1.1.1_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-context/dist/index.mjs"],"sourcesContent":["// packages/react/context/src/createContext.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createContext2","rootComponentName","defaultContext","Context","React","Provider","props","children","context","value","jsx","useContext2","consumerName","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","BaseContext","index","scope","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,69 +1,33 @@
1
- import * as u from "react";
2
- import { jsx as f } from "react/jsx-runtime";
3
- function $(t, c) {
4
- const n = u.createContext(c), p = (r) => {
5
- const { children: e, ...o } = r, s = u.useMemo(() => o, Object.values(o));
6
- return /* @__PURE__ */ f(n.Provider, { value: s, children: e });
7
- };
8
- p.displayName = t + "Provider";
9
- function i(r) {
10
- const e = u.useContext(n);
11
- if (e) return e;
12
- if (c !== void 0) return c;
13
- throw new Error(`\`${r}\` must be used within \`${t}\``);
1
+ import * as l from "react";
2
+ import { useCallbackRef as f } from "./index.es160.js";
3
+ function R({
4
+ prop: t,
5
+ defaultProp: r,
6
+ onChange: s = () => {
14
7
  }
15
- return [p, i];
8
+ }) {
9
+ const [e, n] = v({ defaultProp: r, onChange: s }), o = t !== void 0, i = o ? t : e, u = f(s), d = l.useCallback(
10
+ (c) => {
11
+ if (o) {
12
+ const a = typeof c == "function" ? c(t) : c;
13
+ a !== t && u(a);
14
+ } else
15
+ n(c);
16
+ },
17
+ [o, t, n, u]
18
+ );
19
+ return [i, d];
16
20
  }
17
- function w(t, c = []) {
18
- let n = [];
19
- function p(r, e) {
20
- const o = u.createContext(e), s = n.length;
21
- n = [...n, e];
22
- const d = (x) => {
23
- const { scope: m, children: v, ...a } = x, S = m?.[t]?.[s] || o, h = u.useMemo(() => a, Object.values(a));
24
- return /* @__PURE__ */ f(S.Provider, { value: h, children: v });
25
- };
26
- d.displayName = r + "Provider";
27
- function C(x, m) {
28
- const v = m?.[t]?.[s] || o, a = u.useContext(v);
29
- if (a) return a;
30
- if (e !== void 0) return e;
31
- throw new Error(`\`${x}\` must be used within \`${r}\``);
32
- }
33
- return [d, C];
34
- }
35
- const i = () => {
36
- const r = n.map((e) => u.createContext(e));
37
- return function(o) {
38
- const s = o?.[t] || r;
39
- return u.useMemo(
40
- () => ({ [`__scope${t}`]: { ...o, [t]: s } }),
41
- [o, s]
42
- );
43
- };
44
- };
45
- return i.scopeName = t, [p, P(i, ...c)];
46
- }
47
- function P(...t) {
48
- const c = t[0];
49
- if (t.length === 1) return c;
50
- const n = () => {
51
- const p = t.map((i) => ({
52
- useScope: i(),
53
- scopeName: i.scopeName
54
- }));
55
- return function(r) {
56
- const e = p.reduce((o, { useScope: s, scopeName: d }) => {
57
- const x = s(r)[`__scope${d}`];
58
- return { ...o, ...x };
59
- }, {});
60
- return u.useMemo(() => ({ [`__scope${c.scopeName}`]: e }), [e]);
61
- };
62
- };
63
- return n.scopeName = c.scopeName, n;
21
+ function v({
22
+ defaultProp: t,
23
+ onChange: r
24
+ }) {
25
+ const s = l.useState(t), [e] = s, n = l.useRef(e), o = f(r);
26
+ return l.useEffect(() => {
27
+ n.current !== e && (o(e), n.current = e);
28
+ }, [e, n, o]), s;
64
29
  }
65
30
  export {
66
- $ as createContext,
67
- w as createContextScope
31
+ R as useControllableState
68
32
  };
69
33
  //# sourceMappingURL=index.es147.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es147.js","sources":["../../../node_modules/.pnpm/@radix-ui+react-context@1.1.1_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-context/dist/index.mjs"],"sourcesContent":["// packages/react/context/src/createContext.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createContext2","rootComponentName","defaultContext","Context","React","Provider","props","children","context","value","jsx","useContext2","consumerName","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","BaseContext","index","scope","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es147.js","sources":["../../../node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs"],"sourcesContent":["// packages/react/use-controllable-state/src/useControllableState.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useControllableState({\n prop,\n defaultProp,\n onChange = () => {\n }\n}) {\n const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n const isControlled = prop !== void 0;\n const value = isControlled ? prop : uncontrolledProp;\n const handleChange = useCallbackRef(onChange);\n const setValue = React.useCallback(\n (nextValue) => {\n if (isControlled) {\n const setter = nextValue;\n const value2 = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value2 !== prop) handleChange(value2);\n } else {\n setUncontrolledProp(nextValue);\n }\n },\n [isControlled, prop, setUncontrolledProp, handleChange]\n );\n return [value, setValue];\n}\nfunction useUncontrolledState({\n defaultProp,\n onChange\n}) {\n const uncontrolledState = React.useState(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = React.useRef(value);\n const handleChange = useCallbackRef(onChange);\n React.useEffect(() => {\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [value, prevValueRef, handleChange]);\n return uncontrolledState;\n}\nexport {\n useControllableState\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useControllableState","prop","defaultProp","onChange","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","value","handleChange","useCallbackRef","setValue","React","nextValue","value2","uncontrolledState","prevValueRef"],"mappings":";;AAGA,SAASA,EAAqB;AAAA,EAC5B,MAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC,IAAW,MAAM;AAAA,EACnB;AACA,GAAG;AACD,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAqB,EAAE,aAAAJ,GAAa,UAAAC,GAAU,GACxFI,IAAeN,MAAS,QACxBO,IAAQD,IAAeN,IAAOG,GAC9BK,IAAeC,EAAeP,CAAQ,GACtCQ,IAAWC,EAAM;AAAA,IACrB,CAACC,MAAc;AACb,UAAIN,GAAc;AAEhB,cAAMO,IAAS,OAAOD,KAAc,aADrBA,EACyCZ,CAAI,IAAIY;AAChE,QAAIC,MAAWb,KAAMQ,EAAaK,CAAM;AAAA,MAChD;AACQ,QAAAT,EAAoBQ,CAAS;AAAA,IAEhC;AAAA,IACD,CAACN,GAAcN,GAAMI,GAAqBI,CAAY;AAAA,EACvD;AACD,SAAO,CAACD,GAAOG,CAAQ;AACzB;AACA,SAASL,EAAqB;AAAA,EAC5B,aAAAJ;AAAA,EACA,UAAAC;AACF,GAAG;AACD,QAAMY,IAAoBH,EAAM,SAASV,CAAW,GAC9C,CAACM,CAAK,IAAIO,GACVC,IAAeJ,EAAM,OAAOJ,CAAK,GACjCC,IAAeC,EAAeP,CAAQ;AAC5C,SAAAS,EAAM,UAAU,MAAM;AACpB,IAAII,EAAa,YAAYR,MAC3BC,EAAaD,CAAK,GAClBQ,EAAa,UAAUR;AAAA,EAE1B,GAAE,CAACA,GAAOQ,GAAcP,CAAY,CAAC,GAC/BM;AACT;","x_google_ignoreList":[0]}