@anoki/fse-ui 1.0.548 → 1.0.550
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs213.js +1 -1
- package/dist/index.cjs217.js +1 -1
- package/dist/index.cjs224.js +1 -1
- package/dist/index.cjs235.js +1 -1
- package/dist/index.cjs25.js +1 -1
- package/dist/index.cjs25.js.map +1 -1
- package/dist/index.cjs262.js +1 -1
- package/dist/index.cjs30.js +1 -1
- package/dist/index.cjs301.js +1 -1
- package/dist/index.cjs326.js +1 -1
- package/dist/index.cjs327.js +1 -1
- package/dist/index.cjs332.js +1 -1
- package/dist/index.cjs332.js.map +1 -1
- package/dist/index.cjs333.js +2 -0
- package/dist/index.cjs333.js.map +1 -0
- package/dist/index.cjs334.js +2 -0
- package/dist/index.cjs334.js.map +1 -0
- package/dist/index.cjs335.js +1 -1
- package/dist/index.cjs335.js.map +1 -1
- package/dist/index.cjs336.js +1 -1
- package/dist/index.cjs336.js.map +1 -1
- package/dist/index.cjs337.js +1 -1
- package/dist/index.cjs337.js.map +1 -1
- package/dist/index.cjs338.js +1 -1
- package/dist/index.cjs338.js.map +1 -1
- package/dist/index.cjs339.js +1 -1
- package/dist/index.cjs339.js.map +1 -1
- package/dist/index.cjs343.js +1 -1
- package/dist/index.cjs344.js +1 -1
- package/dist/index.cjs345.js +1 -1
- package/dist/index.cjs345.js.map +1 -1
- package/dist/index.cjs346.js +1 -1
- package/dist/index.cjs346.js.map +1 -1
- package/dist/index.cjs347.js +1 -1
- package/dist/index.cjs347.js.map +1 -1
- package/dist/index.cjs348.js +1 -1
- package/dist/index.cjs348.js.map +1 -1
- package/dist/index.cjs349.js +1 -1
- package/dist/index.cjs349.js.map +1 -1
- package/dist/index.cjs350.js +1 -1
- package/dist/index.cjs350.js.map +1 -1
- package/dist/index.cjs351.js +1 -1
- package/dist/index.cjs351.js.map +1 -1
- package/dist/index.cjs352.js +2 -0
- package/dist/index.cjs352.js.map +1 -0
- package/dist/index.cjs353.js +2 -0
- package/dist/index.cjs353.js.map +1 -0
- package/dist/index.cjs365.js +2 -0
- package/dist/index.cjs365.js.map +1 -0
- package/dist/index.cjs366.js +2 -0
- package/dist/index.cjs366.js.map +1 -0
- package/dist/{index.cjs371.js → index.cjs367.js} +1 -1
- package/dist/{index.cjs371.js.map → index.cjs367.js.map} +1 -1
- package/dist/{index.cjs372.js → index.cjs368.js} +2 -2
- package/dist/{index.cjs372.js.map → index.cjs368.js.map} +1 -1
- package/dist/index.cjs369.js +1 -1
- package/dist/index.cjs369.js.map +1 -1
- package/dist/index.cjs370.js +1 -1
- package/dist/index.cjs370.js.map +1 -1
- package/dist/index.cjs375.js +1 -1
- package/dist/index.cjs377.js +1 -1
- package/dist/index.cjs378.js +1 -1
- package/dist/index.cjs383.js +1 -1
- package/dist/index.cjs385.js +1 -1
- package/dist/index.cjs387.js +1 -1
- package/dist/index.cjs387.js.map +1 -1
- package/dist/index.cjs388.js +1 -38
- package/dist/index.cjs388.js.map +1 -1
- package/dist/index.cjs389.js +1 -1
- package/dist/index.cjs389.js.map +1 -1
- package/dist/index.cjs390.js +1 -1
- package/dist/index.cjs390.js.map +1 -1
- package/dist/index.cjs391.js +38 -1
- package/dist/index.cjs391.js.map +1 -1
- package/dist/index.cjs392.js +1 -1
- package/dist/index.cjs392.js.map +1 -1
- package/dist/index.cjs393.js +1 -1
- package/dist/index.cjs393.js.map +1 -1
- package/dist/index.cjs394.js +1 -1
- package/dist/index.cjs394.js.map +1 -1
- package/dist/index.cjs397.js +2 -0
- package/dist/index.cjs397.js.map +1 -0
- package/dist/index.cjs398.js +2 -0
- package/dist/index.cjs398.js.map +1 -0
- package/dist/index.cjs399.js +1 -1
- package/dist/index.cjs399.js.map +1 -1
- package/dist/index.cjs400.js +1 -1
- package/dist/index.cjs400.js.map +1 -1
- package/dist/index.cjs410.js +1 -1
- package/dist/index.cjs65.js +1 -1
- package/dist/index.cjs65.js.map +1 -1
- package/dist/index.d.ts +12 -3
- package/dist/index.es213.js +7 -7
- package/dist/index.es217.js +1 -1
- package/dist/index.es224.js +5 -5
- package/dist/index.es235.js +13 -13
- package/dist/index.es25.js +60 -42
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es262.js +5 -5
- package/dist/index.es30.js +4 -4
- package/dist/index.es301.js +4 -4
- package/dist/index.es326.js +1 -1
- package/dist/index.es327.js +1 -1
- package/dist/index.es332.js +7 -15
- package/dist/index.es332.js.map +1 -1
- package/dist/index.es333.js +30 -0
- package/dist/index.es333.js.map +1 -0
- package/dist/index.es334.js +71 -0
- package/dist/index.es334.js.map +1 -0
- package/dist/index.es335.js +29 -6
- package/dist/index.es335.js.map +1 -1
- package/dist/index.es336.js +32 -26
- package/dist/index.es336.js.map +1 -1
- package/dist/index.es337.js +617 -63
- package/dist/index.es337.js.map +1 -1
- package/dist/index.es338.js +10 -29
- package/dist/index.es338.js.map +1 -1
- package/dist/index.es339.js +15 -33
- package/dist/index.es339.js.map +1 -1
- package/dist/index.es343.js +1 -1
- package/dist/index.es344.js +2 -2
- package/dist/index.es345.js +2 -125
- package/dist/index.es345.js.map +1 -1
- package/dist/index.es346.js +2 -135
- package/dist/index.es346.js.map +1 -1
- package/dist/index.es347.js +124 -13
- package/dist/index.es347.js.map +1 -1
- package/dist/index.es348.js +134 -14
- package/dist/index.es348.js.map +1 -1
- package/dist/index.es349.js +12 -7
- package/dist/index.es349.js.map +1 -1
- package/dist/index.es350.js +15 -50
- package/dist/index.es350.js.map +1 -1
- package/dist/index.es351.js +9 -53
- package/dist/index.es351.js.map +1 -1
- package/dist/index.es352.js +53 -0
- package/dist/index.es352.js.map +1 -0
- package/dist/index.es353.js +56 -0
- package/dist/index.es353.js.map +1 -0
- package/dist/index.es365.js +14 -0
- package/dist/index.es365.js.map +1 -0
- package/dist/index.es366.js +49 -0
- package/dist/index.es366.js.map +1 -0
- package/dist/{index.es371.js → index.es367.js} +1 -1
- package/dist/{index.es371.js.map → index.es367.js.map} +1 -1
- package/dist/{index.es372.js → index.es368.js} +6 -6
- package/dist/{index.es372.js.map → index.es368.js.map} +1 -1
- package/dist/index.es369.js +177 -10
- package/dist/index.es369.js.map +1 -1
- package/dist/index.es370.js +4 -46
- package/dist/index.es370.js.map +1 -1
- package/dist/index.es375.js +1 -1
- package/dist/index.es377.js +1 -1
- package/dist/index.es378.js +3 -3
- package/dist/index.es383.js +1 -1
- package/dist/index.es385.js +4 -4
- package/dist/index.es387.js +512 -54
- package/dist/index.es387.js.map +1 -1
- package/dist/index.es388.js +126 -68
- package/dist/index.es388.js.map +1 -1
- package/dist/index.es389.js +128 -8
- package/dist/index.es389.js.map +1 -1
- package/dist/index.es390.js +64 -13
- package/dist/index.es390.js.map +1 -1
- package/dist/index.es391.js +68 -61
- package/dist/index.es391.js.map +1 -1
- package/dist/index.es392.js +7 -521
- package/dist/index.es392.js.map +1 -1
- package/dist/index.es393.js +13 -126
- package/dist/index.es393.js.map +1 -1
- package/dist/index.es394.js +60 -127
- package/dist/index.es394.js.map +1 -1
- package/dist/index.es397.js +26 -0
- package/dist/index.es397.js.map +1 -0
- package/dist/index.es398.js +16 -0
- package/dist/index.es398.js.map +1 -0
- package/dist/index.es399.js +25 -20
- package/dist/index.es399.js.map +1 -1
- package/dist/index.es400.js +4 -12
- package/dist/index.es400.js.map +1 -1
- package/dist/index.es410.js +7 -7
- package/dist/index.es65.js +109 -99
- package/dist/index.es65.js.map +1 -1
- package/package.json +1 -1
- package/dist/index.cjs340.js +0 -2
- package/dist/index.cjs340.js.map +0 -1
- package/dist/index.cjs341.js +0 -2
- package/dist/index.cjs341.js.map +0 -1
- package/dist/index.cjs358.js +0 -2
- package/dist/index.cjs358.js.map +0 -1
- package/dist/index.cjs359.js +0 -2
- package/dist/index.cjs359.js.map +0 -1
- package/dist/index.cjs373.js +0 -2
- package/dist/index.cjs373.js.map +0 -1
- package/dist/index.cjs374.js +0 -2
- package/dist/index.cjs374.js.map +0 -1
- package/dist/index.cjs401.js +0 -2
- package/dist/index.cjs401.js.map +0 -1
- package/dist/index.cjs402.js +0 -2
- package/dist/index.cjs402.js.map +0 -1
- package/dist/index.es340.js +0 -625
- package/dist/index.es340.js.map +0 -1
- package/dist/index.es341.js +0 -14
- package/dist/index.es341.js.map +0 -1
- package/dist/index.es358.js +0 -5
- package/dist/index.es358.js.map +0 -1
- package/dist/index.es359.js +0 -5
- package/dist/index.es359.js.map +0 -1
- package/dist/index.es373.js +0 -181
- package/dist/index.es373.js.map +0 -1
- package/dist/index.es374.js +0 -7
- package/dist/index.es374.js.map +0 -1
- package/dist/index.es401.js +0 -31
- package/dist/index.es401.js.map +0 -1
- package/dist/index.es402.js +0 -8
- package/dist/index.es402.js.map +0 -1
package/dist/index.cjs399.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.cjs399.js","sources":["../node_modules/react-
|
1
|
+
{"version":3,"file":"index.cjs399.js","sources":["../node_modules/react-style-singleton/dist/es2015/singleton.js"],"sourcesContent":["import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n"],"names":["makeStyleTag","tag","nonce","getNonce","injectStyles","css","insertStyleTag","head","stylesheetSingleton","counter","stylesheet","style"],"mappings":"qHACA,SAASA,GAAe,CACpB,GAAI,CAAC,SACD,OAAO,KACX,IAAIC,EAAM,SAAS,cAAc,OAAO,EACxCA,EAAI,KAAO,WACX,IAAIC,EAAQC,EAAAA,SAAU,EACtB,OAAID,GACAD,EAAI,aAAa,QAASC,CAAK,EAE5BD,CACX,CACA,SAASG,EAAaH,EAAKI,EAAK,CAExBJ,EAAI,WAEJA,EAAI,WAAW,QAAUI,EAGzBJ,EAAI,YAAY,SAAS,eAAeI,CAAG,CAAC,CAEpD,CACA,SAASC,EAAeL,EAAK,CACzB,IAAIM,EAAO,SAAS,MAAQ,SAAS,qBAAqB,MAAM,EAAE,CAAC,EACnEA,EAAK,YAAYN,CAAG,CACxB,CACU,IAACO,EAAsB,UAAY,CACzC,IAAIC,EAAU,EACVC,EAAa,KACjB,MAAO,CACH,IAAK,SAAUC,EAAO,CACdF,GAAW,IACNC,EAAaV,OACdI,EAAaM,EAAYC,CAAK,EAC9BL,EAAeI,CAAU,GAGjCD,GACH,EACD,OAAQ,UAAY,CAChBA,IACI,CAACA,GAAWC,IACZA,EAAW,YAAcA,EAAW,WAAW,YAAYA,CAAU,EACrEA,EAAa,KAEpB,CACJ,CACL","x_google_ignoreList":[0]}
|
package/dist/index.cjs400.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};exports.getNonce=e;
|
2
2
|
//# sourceMappingURL=index.cjs400.js.map
|
package/dist/index.cjs400.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.cjs400.js","sources":["../node_modules/
|
1
|
+
{"version":3,"file":"index.cjs400.js","sources":["../node_modules/get-nonce/dist/es2015/index.js"],"sourcesContent":["var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n"],"names":["getNonce"],"mappings":"gFAIU,IAACA,EAAW,UAAY,CAI9B,GAAI,OAAO,kBAAsB,IAC7B,OAAO,iBAGf","x_google_ignoreList":[0]}
|
package/dist/index.cjs410.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),j=require("./index.cjs339.js"),N=require("./index.cjs344.js"),se=require("./index.cjs337.js"),A=require("./index.cjs336.js"),g=require("./index.cjs369.js"),ce=require("./index.cjs371.js"),ie=require("./index.cjs374.js"),ae=require("./index.cjs419.js"),E=require("./index.cjs335.js"),m=require("./index.cjs185.js");function ue(e){const o=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(o,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const s=ue(le);function de(e,o){return s.useReducer((r,n)=>o[r][n]??r,e)}var Y="ScrollArea",[K,fe]=se.createContextScope(Y),[he,v]=K(Y),V=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,type:n="hover",dir:t,scrollHideDelay:l=600,...c}=e,[i,a]=s.useState(null),[f,u]=s.useState(null),[h,d]=s.useState(null),[b,S]=s.useState(null),[T,M]=s.useState(null),[R,_]=s.useState(0),[X,L]=s.useState(0),[D,y]=s.useState(!1),[H,O]=s.useState(!1),p=A.useComposedRefs(o,P=>a(P)),x=ce.useDirection(t);return m.jsxRuntimeExports.jsx(he,{scope:r,type:n,dir:x,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:u,content:h,onContentChange:d,scrollbarX:b,onScrollbarXChange:S,scrollbarXEnabled:D,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:_,onCornerHeightChange:L,children:m.jsxRuntimeExports.jsx(j.Primitive.div,{dir:x,...c,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":R+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var Q="ScrollAreaViewport",U=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,children:n,nonce:t,...l}=e,c=v(Q,r),i=s.useRef(null),a=A.useComposedRefs(o,i,c.onViewportChange);return m.jsxRuntimeExports.jsxs(m.jsxRuntimeExports.Fragment,{children:[m.jsxRuntimeExports.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:t}),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:m.jsxRuntimeExports.jsx("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=Q;var w="ScrollAreaScrollbar",q=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:c}=t,i=e.orientation==="horizontal";return s.useEffect(()=>(i?l(!0):c(!0),()=>{i?l(!1):c(!1)}),[i,l,c]),t.type==="hover"?m.jsxRuntimeExports.jsx(me,{...n,ref:o,forceMount:r}):t.type==="scroll"?m.jsxRuntimeExports.jsx(be,{...n,ref:o,forceMount:r}):t.type==="auto"?m.jsxRuntimeExports.jsx(Z,{...n,ref:o,forceMount:r}):t.type==="always"?m.jsxRuntimeExports.jsx(B,{...n,ref:o}):null});q.displayName=w;var me=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),[l,c]=s.useState(!1);return s.useEffect(()=>{const i=t.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),c(!0)},u=()=>{a=window.setTimeout(()=>c(!1),t.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",u),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",u)}}},[t.scrollArea,t.scrollHideDelay]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||l,children:m.jsxRuntimeExports.jsx(Z,{"data-state":l?"visible":"hidden",...n,ref:o})})}),be=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),l=e.orientation==="horizontal",c=I(()=>a("SCROLL_END"),100),[i,a]=de("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 s.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),t.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,t.scrollHideDelay,a]),s.useEffect(()=>{const f=t.viewport,u=l?"scrollLeft":"scrollTop";if(f){let h=f[u];const d=()=>{const b=f[u];h!==b&&(a("SCROLL"),c()),h=b};return f.addEventListener("scroll",d),()=>f.removeEventListener("scroll",d)}},[t.viewport,l,a,c]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||i!=="hidden",children:m.jsxRuntimeExports.jsx(B,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:o,onPointerEnter:E.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:E.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Z=s.forwardRef((e,o)=>{const r=v(w,e.__scopeScrollArea),{forceMount:n,...t}=e,[l,c]=s.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;c(i?f:u)}},10);return C(r.viewport,a),C(r.content,a),m.jsxRuntimeExports.jsx(N.Presence,{present:n||l,children:m.jsxRuntimeExports.jsx(B,{"data-state":l?"visible":"hidden",...t,ref:o})})}),B=s.forwardRef((e,o)=>{const{orientation:r="vertical",...n}=e,t=v(w,e.__scopeScrollArea),l=s.useRef(null),c=s.useRef(0),[i,a]=s.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=te(i.viewport,i.content),u={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:d=>l.current=d,onThumbPointerUp:()=>c.current=0,onThumbPointerDown:d=>c.current=d};function h(d,b){return Re(d,c.current,i,b)}return r==="horizontal"?m.jsxRuntimeExports.jsx(pe,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollLeft,b=J(d,i,t.dir);l.current.style.transform=`translate3d(${b}px, 0, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollLeft=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollLeft=h(d,t.dir))}}):r==="vertical"?m.jsxRuntimeExports.jsx(Se,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollTop,b=J(d,i);l.current.style.transform=`translate3d(0, ${b}px, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollTop=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollTop=h(d))}}):null}),pe=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarXChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"horizontal",...t,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:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollLeft+u.deltaX;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(c.paddingLeft),paddingEnd:z(c.paddingRight)}})}})}),Se=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarYChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"vertical",...t,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:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollTop+u.deltaY;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(c.paddingTop),paddingEnd:z(c.paddingBottom)}})}})}),[ve,ee]=K(w),re=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:t,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:u,onResize:h,...d}=e,b=v(w,r),[S,T]=s.useState(null),M=A.useComposedRefs(o,p=>T(p)),R=s.useRef(null),_=s.useRef(""),X=b.viewport,L=n.content-n.viewport,D=g.useCallbackRef(u),y=g.useCallbackRef(a),H=I(h,10);function O(p){if(R.current){const x=p.clientX-R.current.left,P=p.clientY-R.current.top;f({x,y:P})}}return s.useEffect(()=>{const p=x=>{const P=x.target;(S==null?void 0:S.contains(P))&&D(x,L)};return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[X,S,L,D]),s.useEffect(y,[n,y]),C(S,H),C(b.content,H),m.jsxRuntimeExports.jsx(ve,{scope:r,scrollbar:S,hasThumb:t,onThumbChange:g.useCallbackRef(l),onThumbPointerUp:g.useCallbackRef(c),onThumbPositionChange:y,onThumbPointerDown:g.useCallbackRef(i),children:m.jsxRuntimeExports.jsx(j.Primitive.div,{...d,ref:M,style:{position:"absolute",...d.style},onPointerDown:E.composeEventHandlers(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),R.current=S.getBoundingClientRect(),_.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",b.viewport&&(b.viewport.style.scrollBehavior="auto"),O(p))}),onPointerMove:E.composeEventHandlers(e.onPointerMove,O),onPointerUp:E.composeEventHandlers(e.onPointerUp,p=>{const x=p.target;x.hasPointerCapture(p.pointerId)&&x.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=_.current,b.viewport&&(b.viewport.style.scrollBehavior=""),R.current=null})})})}),W="ScrollAreaThumb",F=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=ee(W,e.__scopeScrollArea);return m.jsxRuntimeExports.jsx(N.Presence,{present:r||t.hasThumb,children:m.jsxRuntimeExports.jsx(xe,{ref:o,...n})})}),xe=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,style:n,...t}=e,l=v(W,r),c=ee(W,r),{onThumbPositionChange:i}=c,a=A.useComposedRefs(o,h=>c.onThumbChange(h)),f=s.useRef(void 0),u=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return s.useEffect(()=>{const h=l.viewport;if(h){const d=()=>{if(u(),!f.current){const b=ge(h,i);f.current=b,i()}};return i(),h.addEventListener("scroll",d),()=>h.removeEventListener("scroll",d)}},[l.viewport,u,i]),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-state":c.hasThumb?"visible":"hidden",...t,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:E.composeEventHandlers(e.onPointerDownCapture,h=>{const b=h.target.getBoundingClientRect(),S=h.clientX-b.left,T=h.clientY-b.top;c.onThumbPointerDown({x:S,y:T})}),onPointerUp:E.composeEventHandlers(e.onPointerUp,c.onThumbPointerUp)})});F.displayName=W;var $="ScrollAreaCorner",G=s.forwardRef((e,o)=>{const r=v($,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?m.jsxRuntimeExports.jsx(we,{...e,ref:o}):null});G.displayName=$;var we=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,...n}=e,t=v($,r),[l,c]=s.useState(0),[i,a]=s.useState(0),f=!!(l&&i);return C(t.scrollbarX,()=>{var h;const u=((h=t.scrollbarX)==null?void 0:h.offsetHeight)||0;t.onCornerHeightChange(u),a(u)}),C(t.scrollbarY,()=>{var h;const u=((h=t.scrollbarY)==null?void 0:h.offsetWidth)||0;t.onCornerWidthChange(u),c(u)}),f?m.jsxRuntimeExports.jsx(j.Primitive.div,{...n,ref:o,style:{width:l,height:i,position:"absolute",right:t.dir==="ltr"?0:void 0,left:t.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function te(e,o){const r=e/o;return isNaN(r)?0:r}function k(e){const o=te(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*o;return Math.max(n,18)}function Re(e,o,r,n="ltr"){const t=k(r),l=t/2,c=o||l,i=t-c,a=r.scrollbar.paddingStart+c,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,u=r.content-r.viewport,h=n==="ltr"?[0,u]:[u*-1,0];return oe([a,f],h)(e)}function J(e,o,r="ltr"){const n=k(o),t=o.scrollbar.paddingStart+o.scrollbar.paddingEnd,l=o.scrollbar.size-t,c=o.content-o.viewport,i=l-n,a=r==="ltr"?[0,c]:[c*-1,0],f=ae.clamp(e,a);return oe([0,c],[0,i])(f)}function oe(e,o){return r=>{if(e[0]===e[1]||o[0]===o[1])return o[0];const n=(o[1]-o[0])/(e[1]-e[0]);return o[0]+n*(r-e[0])}}function ne(e,o){return e>0&&e<o}var ge=(e,o=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function t(){const l={left:e.scrollLeft,top:e.scrollTop},c=r.left!==l.left,i=r.top!==l.top;(c||i)&&o(),r=l,n=window.requestAnimationFrame(t)}(),()=>window.cancelAnimationFrame(n)};function I(e,o){const r=g.useCallbackRef(e),n=s.useRef(0);return s.useEffect(()=>()=>window.clearTimeout(n.current),[]),s.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,o)},[r,o])}function C(e,o){const r=g.useCallbackRef(o);ie.useLayoutEffect(()=>{let n=0;if(e){const t=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return t.observe(e),()=>{window.cancelAnimationFrame(n),t.unobserve(e)}}},[e,r])}var Ee=V,Pe=U,Ce=q,Ae=F,Te=G;exports.Corner=Te;exports.Root=Ee;exports.ScrollArea=V;exports.ScrollAreaCorner=G;exports.ScrollAreaScrollbar=q;exports.ScrollAreaThumb=F;exports.ScrollAreaViewport=U;exports.Scrollbar=Ce;exports.Thumb=Ae;exports.Viewport=Pe;exports.createScrollAreaScope=fe;
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),j=require("./index.cjs336.js"),N=require("./index.cjs344.js"),se=require("./index.cjs334.js"),A=require("./index.cjs333.js"),g=require("./index.cjs365.js"),ce=require("./index.cjs367.js"),ie=require("./index.cjs370.js"),ae=require("./index.cjs419.js"),E=require("./index.cjs332.js"),m=require("./index.cjs185.js");function ue(e){const o=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(o,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const s=ue(le);function de(e,o){return s.useReducer((r,n)=>o[r][n]??r,e)}var Y="ScrollArea",[K,fe]=se.createContextScope(Y),[he,v]=K(Y),V=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,type:n="hover",dir:t,scrollHideDelay:l=600,...c}=e,[i,a]=s.useState(null),[f,u]=s.useState(null),[h,d]=s.useState(null),[b,S]=s.useState(null),[T,M]=s.useState(null),[R,_]=s.useState(0),[X,L]=s.useState(0),[D,y]=s.useState(!1),[H,O]=s.useState(!1),p=A.useComposedRefs(o,P=>a(P)),x=ce.useDirection(t);return m.jsxRuntimeExports.jsx(he,{scope:r,type:n,dir:x,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:u,content:h,onContentChange:d,scrollbarX:b,onScrollbarXChange:S,scrollbarXEnabled:D,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:_,onCornerHeightChange:L,children:m.jsxRuntimeExports.jsx(j.Primitive.div,{dir:x,...c,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":R+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var Q="ScrollAreaViewport",U=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,children:n,nonce:t,...l}=e,c=v(Q,r),i=s.useRef(null),a=A.useComposedRefs(o,i,c.onViewportChange);return m.jsxRuntimeExports.jsxs(m.jsxRuntimeExports.Fragment,{children:[m.jsxRuntimeExports.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:t}),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:m.jsxRuntimeExports.jsx("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=Q;var w="ScrollAreaScrollbar",q=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:c}=t,i=e.orientation==="horizontal";return s.useEffect(()=>(i?l(!0):c(!0),()=>{i?l(!1):c(!1)}),[i,l,c]),t.type==="hover"?m.jsxRuntimeExports.jsx(me,{...n,ref:o,forceMount:r}):t.type==="scroll"?m.jsxRuntimeExports.jsx(be,{...n,ref:o,forceMount:r}):t.type==="auto"?m.jsxRuntimeExports.jsx(Z,{...n,ref:o,forceMount:r}):t.type==="always"?m.jsxRuntimeExports.jsx(B,{...n,ref:o}):null});q.displayName=w;var me=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),[l,c]=s.useState(!1);return s.useEffect(()=>{const i=t.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),c(!0)},u=()=>{a=window.setTimeout(()=>c(!1),t.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",u),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",u)}}},[t.scrollArea,t.scrollHideDelay]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||l,children:m.jsxRuntimeExports.jsx(Z,{"data-state":l?"visible":"hidden",...n,ref:o})})}),be=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),l=e.orientation==="horizontal",c=I(()=>a("SCROLL_END"),100),[i,a]=de("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 s.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),t.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,t.scrollHideDelay,a]),s.useEffect(()=>{const f=t.viewport,u=l?"scrollLeft":"scrollTop";if(f){let h=f[u];const d=()=>{const b=f[u];h!==b&&(a("SCROLL"),c()),h=b};return f.addEventListener("scroll",d),()=>f.removeEventListener("scroll",d)}},[t.viewport,l,a,c]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||i!=="hidden",children:m.jsxRuntimeExports.jsx(B,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:o,onPointerEnter:E.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:E.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Z=s.forwardRef((e,o)=>{const r=v(w,e.__scopeScrollArea),{forceMount:n,...t}=e,[l,c]=s.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;c(i?f:u)}},10);return C(r.viewport,a),C(r.content,a),m.jsxRuntimeExports.jsx(N.Presence,{present:n||l,children:m.jsxRuntimeExports.jsx(B,{"data-state":l?"visible":"hidden",...t,ref:o})})}),B=s.forwardRef((e,o)=>{const{orientation:r="vertical",...n}=e,t=v(w,e.__scopeScrollArea),l=s.useRef(null),c=s.useRef(0),[i,a]=s.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=te(i.viewport,i.content),u={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:d=>l.current=d,onThumbPointerUp:()=>c.current=0,onThumbPointerDown:d=>c.current=d};function h(d,b){return Re(d,c.current,i,b)}return r==="horizontal"?m.jsxRuntimeExports.jsx(pe,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollLeft,b=J(d,i,t.dir);l.current.style.transform=`translate3d(${b}px, 0, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollLeft=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollLeft=h(d,t.dir))}}):r==="vertical"?m.jsxRuntimeExports.jsx(Se,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollTop,b=J(d,i);l.current.style.transform=`translate3d(0, ${b}px, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollTop=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollTop=h(d))}}):null}),pe=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarXChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"horizontal",...t,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:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollLeft+u.deltaX;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(c.paddingLeft),paddingEnd:z(c.paddingRight)}})}})}),Se=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarYChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"vertical",...t,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:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollTop+u.deltaY;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(c.paddingTop),paddingEnd:z(c.paddingBottom)}})}})}),[ve,ee]=K(w),re=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:t,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:u,onResize:h,...d}=e,b=v(w,r),[S,T]=s.useState(null),M=A.useComposedRefs(o,p=>T(p)),R=s.useRef(null),_=s.useRef(""),X=b.viewport,L=n.content-n.viewport,D=g.useCallbackRef(u),y=g.useCallbackRef(a),H=I(h,10);function O(p){if(R.current){const x=p.clientX-R.current.left,P=p.clientY-R.current.top;f({x,y:P})}}return s.useEffect(()=>{const p=x=>{const P=x.target;(S==null?void 0:S.contains(P))&&D(x,L)};return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[X,S,L,D]),s.useEffect(y,[n,y]),C(S,H),C(b.content,H),m.jsxRuntimeExports.jsx(ve,{scope:r,scrollbar:S,hasThumb:t,onThumbChange:g.useCallbackRef(l),onThumbPointerUp:g.useCallbackRef(c),onThumbPositionChange:y,onThumbPointerDown:g.useCallbackRef(i),children:m.jsxRuntimeExports.jsx(j.Primitive.div,{...d,ref:M,style:{position:"absolute",...d.style},onPointerDown:E.composeEventHandlers(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),R.current=S.getBoundingClientRect(),_.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",b.viewport&&(b.viewport.style.scrollBehavior="auto"),O(p))}),onPointerMove:E.composeEventHandlers(e.onPointerMove,O),onPointerUp:E.composeEventHandlers(e.onPointerUp,p=>{const x=p.target;x.hasPointerCapture(p.pointerId)&&x.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=_.current,b.viewport&&(b.viewport.style.scrollBehavior=""),R.current=null})})})}),W="ScrollAreaThumb",F=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=ee(W,e.__scopeScrollArea);return m.jsxRuntimeExports.jsx(N.Presence,{present:r||t.hasThumb,children:m.jsxRuntimeExports.jsx(xe,{ref:o,...n})})}),xe=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,style:n,...t}=e,l=v(W,r),c=ee(W,r),{onThumbPositionChange:i}=c,a=A.useComposedRefs(o,h=>c.onThumbChange(h)),f=s.useRef(void 0),u=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return s.useEffect(()=>{const h=l.viewport;if(h){const d=()=>{if(u(),!f.current){const b=ge(h,i);f.current=b,i()}};return i(),h.addEventListener("scroll",d),()=>h.removeEventListener("scroll",d)}},[l.viewport,u,i]),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-state":c.hasThumb?"visible":"hidden",...t,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:E.composeEventHandlers(e.onPointerDownCapture,h=>{const b=h.target.getBoundingClientRect(),S=h.clientX-b.left,T=h.clientY-b.top;c.onThumbPointerDown({x:S,y:T})}),onPointerUp:E.composeEventHandlers(e.onPointerUp,c.onThumbPointerUp)})});F.displayName=W;var $="ScrollAreaCorner",G=s.forwardRef((e,o)=>{const r=v($,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?m.jsxRuntimeExports.jsx(we,{...e,ref:o}):null});G.displayName=$;var we=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,...n}=e,t=v($,r),[l,c]=s.useState(0),[i,a]=s.useState(0),f=!!(l&&i);return C(t.scrollbarX,()=>{var h;const u=((h=t.scrollbarX)==null?void 0:h.offsetHeight)||0;t.onCornerHeightChange(u),a(u)}),C(t.scrollbarY,()=>{var h;const u=((h=t.scrollbarY)==null?void 0:h.offsetWidth)||0;t.onCornerWidthChange(u),c(u)}),f?m.jsxRuntimeExports.jsx(j.Primitive.div,{...n,ref:o,style:{width:l,height:i,position:"absolute",right:t.dir==="ltr"?0:void 0,left:t.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function te(e,o){const r=e/o;return isNaN(r)?0:r}function k(e){const o=te(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*o;return Math.max(n,18)}function Re(e,o,r,n="ltr"){const t=k(r),l=t/2,c=o||l,i=t-c,a=r.scrollbar.paddingStart+c,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,u=r.content-r.viewport,h=n==="ltr"?[0,u]:[u*-1,0];return oe([a,f],h)(e)}function J(e,o,r="ltr"){const n=k(o),t=o.scrollbar.paddingStart+o.scrollbar.paddingEnd,l=o.scrollbar.size-t,c=o.content-o.viewport,i=l-n,a=r==="ltr"?[0,c]:[c*-1,0],f=ae.clamp(e,a);return oe([0,c],[0,i])(f)}function oe(e,o){return r=>{if(e[0]===e[1]||o[0]===o[1])return o[0];const n=(o[1]-o[0])/(e[1]-e[0]);return o[0]+n*(r-e[0])}}function ne(e,o){return e>0&&e<o}var ge=(e,o=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function t(){const l={left:e.scrollLeft,top:e.scrollTop},c=r.left!==l.left,i=r.top!==l.top;(c||i)&&o(),r=l,n=window.requestAnimationFrame(t)}(),()=>window.cancelAnimationFrame(n)};function I(e,o){const r=g.useCallbackRef(e),n=s.useRef(0);return s.useEffect(()=>()=>window.clearTimeout(n.current),[]),s.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,o)},[r,o])}function C(e,o){const r=g.useCallbackRef(o);ie.useLayoutEffect(()=>{let n=0;if(e){const t=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return t.observe(e),()=>{window.cancelAnimationFrame(n),t.unobserve(e)}}},[e,r])}var Ee=V,Pe=U,Ce=q,Ae=F,Te=G;exports.Corner=Te;exports.Root=Ee;exports.ScrollArea=V;exports.ScrollAreaCorner=G;exports.ScrollAreaScrollbar=q;exports.ScrollAreaThumb=F;exports.ScrollAreaViewport=U;exports.Scrollbar=Ce;exports.Thumb=Ae;exports.Viewport=Pe;exports.createScrollAreaScope=fe;
|
2
2
|
//# sourceMappingURL=index.cjs410.js.map
|
package/dist/index.cjs65.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/Table/Table.css');const t=require("./index.cjs185.js"),
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/Table/Table.css');const t=require("./index.cjs185.js"),q=require("react"),c=require("./index.cjs187.js");;/* empty css */const W=require("./index.cjs59.js"),X=require("./index.cjs154.js"),Y=require("./index.cjs155.js"),Z=require("./index.cjs147.js"),K=require("./index.cjs156.js");function ee(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(s,n,i.get?i:{enumerable:!0,get:()=>e[n]})}}return s.default=e,Object.freeze(s)}const b=ee(q),A=b.forwardRef(({className:e,columns:s,data:n,pagination:i,initialCurrentPage:_=1,resultsPerPage:p=10,defaultSortDirection:r="desc",setSelectedSort:d,initialSortConfig:R,...g},E)=>{const[x,L]=b.useState(R||{key:s[0].key||s[0].label,direction:r}),[C,M]=b.useState(_);q.useEffect(()=>{R&&L(R)},[R]);const y=b.useMemo(()=>[...n].sort((l,m)=>{const o=l[x.key],a=m[x.key],u=s.find(j=>(j.key||j.label)===x.key);if(typeof o=="string"&&typeof a=="string"){if((u==null?void 0:u.type)==="date"){const j=F=>{const[z,V]=F.split(" - "),[P,U,G]=z.split("/").map(Number),[J,Q]=V.split(":").map(Number);return new Date(G,U-1,P,J,Q)},f=j(o),$=j(a);return x.direction==="asc"?f.getTime()-$.getTime():$.getTime()-f.getTime()}if((u==null?void 0:u.type)==="number"){const j=parseFloat(o),f=parseFloat(a);return x.direction==="asc"?j-f:f-j}return x.direction==="asc"?o.localeCompare(a):a.localeCompare(o)}return N(o)&&N(a)?x.direction==="asc"?o.firstLine.localeCompare(a.firstLine):a.firstLine.localeCompare(o.firstLine):0}),[n,x,s]),O=l=>{const m={key:l,direction:x.key===l&&x.direction==="asc"?"desc":"asc"};L(m),d&&d(m)},D=i?(C-1)*p:0,H=i?Math.min(D+p,y.length):y.length,I=y.slice(D,H);return t.jsxRuntimeExports.jsxs("div",{className:"position-relative w-full",children:[t.jsxRuntimeExports.jsxs("table",{ref:E,className:c.clsx("table",e),role:"table",...g,children:[t.jsxRuntimeExports.jsx(w,{className:"table__header",children:t.jsxRuntimeExports.jsx(T,{children:s.map((l,m)=>t.jsxRuntimeExports.jsx(v,{config:l,sortConfig:x,onSort:()=>l.sortable&&O(l.key||l.label)},`${l.label}-${m}`))})}),t.jsxRuntimeExports.jsx(k,{className:"table__body",children:I.map((l,m)=>t.jsxRuntimeExports.jsx(T,{className:"table__row",children:Object.entries(l).map(([o,a],u)=>a?o==="actionData"&&S(a)?t.jsxRuntimeExports.jsx(h,{content:a,type:"action"},`${o}-${u}`):N(a)?t.jsxRuntimeExports.jsx(h,{content:a,type:"double-line"},`${o}-${u}`):typeof a=="string"?t.jsxRuntimeExports.jsx(h,{content:a},`${o}-${u}`):null:null)},m))})]}),i&&t.jsxRuntimeExports.jsx(B,{currentPage:C,totalResults:y.length,resultsPerPage:p,setCurrentPage:M})]})});A.displayName="Table";const w=b.forwardRef(({className:e,children:s,...n},i)=>t.jsxRuntimeExports.jsx("thead",{ref:i,className:c.clsx("[&_tr]:border-b-0",e),...n,children:s}));w.displayName="TableHeader";const k=b.forwardRef(({className:e,children:s,...n},i)=>t.jsxRuntimeExports.jsx("tbody",{ref:i,className:c.clsx("[&_tr:last-child]:border-0",e),...n,children:s}));k.displayName="TableBody";const T=b.forwardRef(({className:e,children:s,...n},i)=>t.jsxRuntimeExports.jsx("tr",{ref:i,className:c.clsx("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...n,children:s}));T.displayName="TableRow";const v=b.forwardRef(({className:e,config:s,sortConfig:n,onSort:i,..._},p)=>{const r=n.key===(s.key||s.label),d=r?n.direction:null,R=()=>d==="asc"?"ascending":"descending",g=E=>{switch(E){case"info":return t.jsxRuntimeExports.jsx(K.Info,{});case"download":return t.jsxRuntimeExports.jsx(Z.Download,{});default:return E}};return t.jsxRuntimeExports.jsx("th",{ref:p,className:c.clsx("table__cell table__cell--header",{"table__cell--sortable":s.sortable,"table__cell--action":s.action},e),onClick:s.sortable?i:s.action,"aria-label":s.ariaLabel,"aria-sort":r?R():void 0,..._,children:t.jsxRuntimeExports.jsxs("div",{className:"table__cell--header--content",children:[t.jsxRuntimeExports.jsx("div",{children:t.jsxRuntimeExports.jsx(W.ActionIconText,{icon:g(s.icon),textLabel:s.label,iconPosition:s.iconPosition,handleIconAction:()=>{s.iconAction},popupInfo:s.popupInfo})}),s.sortable&&t.jsxRuntimeExports.jsxs("span",{className:"sort-indicator",children:[t.jsxRuntimeExports.jsx(X.TriangleUp,{filled:r&&d==="desc",className:c.clsx("sort-indicator__triangle",{active:r&&d==="desc"})}),t.jsxRuntimeExports.jsx(Y.TriangleDown,{filled:r&&d==="asc",className:c.clsx("sort-indicator__triangle",{active:r&&d==="asc"})})]})]})})});v.displayName="TableHead";const te=({data:e})=>t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[t.jsxRuntimeExports.jsx("div",{className:"table__cell--firstLine",children:e.firstLine}),t.jsxRuntimeExports.jsx("div",{className:"table__cell--secondLine",children:e.secondLine})]}),se=({data:e})=>e.type==="link"&&e.link?t.jsxRuntimeExports.jsx("a",{href:e.link,"aria-label":e.ariaLabel,children:e.label}):t.jsxRuntimeExports.jsx("button",{onClick:e.action,"aria-label":e.ariaLabel,children:e.label}),N=e=>typeof e=="object"&&e!==null&&"firstLine"in e&&"secondLine"in e,S=e=>typeof e=="object"&&e!==null&&"label"in e&&"type"in e,ne=({content:e})=>typeof e=="string"?t.jsxRuntimeExports.jsx(t.jsxRuntimeExports.Fragment,{children:e}):N(e)?t.jsxRuntimeExports.jsx(te,{data:e}):S(e)?t.jsxRuntimeExports.jsx(se,{data:e}):null,h=b.forwardRef(({className:e,content:s,type:n,...i},_)=>t.jsxRuntimeExports.jsx("td",{ref:_,className:c.clsx("table__cell",{"table__cell--double-line":n==="double-line","table__cell--action":n==="action"},e),...i,children:t.jsxRuntimeExports.jsx(ne,{content:s})}));h.displayName="TableCell";const B=({currentPage:e=1,totalResults:s,resultsPerPage:n,setCurrentPage:i,className:_})=>{const p=Math.ceil(s/n);return t.jsxRuntimeExports.jsxs("div",{className:c.clsx("pagination",_),children:[t.jsxRuntimeExports.jsxs("div",{className:"pagination__info",children:["Stai visualizzando"," ",t.jsxRuntimeExports.jsx("span",{className:"pagination__info__resultsPerPage",children:n})," ","di ",s," risultati"]}),t.jsxRuntimeExports.jsxs("div",{className:"pagination__nav",children:[t.jsxRuntimeExports.jsx("button",{className:c.clsx("pagination__button",e===1&&"pagination__button--disabled"),onClick:()=>i(e-1),disabled:e===1,"aria-label":"Previous page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination__button-arrow",viewBox:"0 0 24 24",children:t.jsxRuntimeExports.jsx("path",{d:"M15 18l-6-6 6-6"})})}),Array.from({length:p},(r,d)=>d+1).map(r=>t.jsxRuntimeExports.jsx("button",{className:c.clsx("pagination__button",e===r&&"pagination__button--active"),onClick:()=>i(r),children:r},r)),t.jsxRuntimeExports.jsx("button",{className:c.clsx("pagination__button",e===p&&"pagination__button--disabled"),onClick:()=>i(e+1),disabled:e===p,"aria-label":"Next page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination__button-arrow",viewBox:"0 0 24 24",children:t.jsxRuntimeExports.jsx("path",{d:"M9 6l6 6-6 6"})})})]})]})};exports.Pagination=B;exports.Table=A;exports.TableBody=k;exports.TableCell=h;exports.TableHead=v;exports.TableHeader=w;exports.TableRow=T;
|
2
2
|
//# sourceMappingURL=index.cjs65.js.map
|
package/dist/index.cjs65.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.cjs65.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"../ActionIconText\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>({\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n });\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n setSortConfig((currentSort) => ({\n key: columnKey,\n direction:\n currentSort.key === columnKey && currentSort.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n }));\n };\n\n const startIndex = pagination ? (currentPage - 1) * resultsPerPage : 0;\n const endIndex = pagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {Object.entries(row).map(([key, value], cellIndex) => {\n if (!value) return null;\n\n if (key === \"actionData\" && isActionData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"action\"\n />\n );\n }\n if (isDoubleLineData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"double-line\"\n />\n );\n }\n if (typeof value === \"string\") {\n return (\n <TableCell key={`${key}-${cellIndex}`} content={value} />\n );\n }\n return null;\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={sortedData.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n config.iconAction;\n }}\n popupInfo={config.popupInfo}\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n setCurrentPage,\n className,\n}) => {\n const totalPages = Math.ceil(totalResults / resultsPerPage);\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {resultsPerPage}\n </span>{\" \"}\n di {totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === 1 && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage - 1)}\n disabled={currentPage === 1}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n {Array.from({ length: totalPages }, (_, i) => i + 1).map((page) => (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => setCurrentPage(page)}\n >\n {page}\n </button>\n ))}\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === totalPages && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage + 1)}\n disabled={currentPage === totalPages}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","currentSort","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","key","value","cellIndex","isActionData","TableCell","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","totalPages","_","i","page"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.cjs65.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"../ActionIconText\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex = pagination ? (currentPage - 1) * resultsPerPage : 0;\n const endIndex = pagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {Object.entries(row).map(([key, value], cellIndex) => {\n if (!value) return null;\n\n if (key === \"actionData\" && isActionData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"action\"\n />\n );\n }\n if (isDoubleLineData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"double-line\"\n />\n );\n }\n if (typeof value === \"string\") {\n return (\n <TableCell key={`${key}-${cellIndex}`} content={value} />\n );\n }\n return null;\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={sortedData.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n config.iconAction;\n }}\n popupInfo={config.popupInfo}\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n setCurrentPage,\n className,\n}) => {\n const totalPages = Math.ceil(totalResults / resultsPerPage);\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {resultsPerPage}\n </span>{\" \"}\n di {totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === 1 && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage - 1)}\n disabled={currentPage === 1}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n {Array.from({ length: totalPages }, (_, i) => i + 1).map((page) => (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => setCurrentPage(page)}\n >\n {page}\n </button>\n ))}\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === totalPages && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage + 1)}\n disabled={currentPage === totalPages}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","key","value","cellIndex","isActionData","TableCell","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","totalPages","_","i","page"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
@@ -192,7 +192,8 @@ declare type BaseArrowLinkProps = {
|
|
192
192
|
};
|
193
193
|
|
194
194
|
declare type BaseButtonProps = {
|
195
|
-
children:
|
195
|
+
children: React_2.ReactNode;
|
196
|
+
icon?: CommonIconsType;
|
196
197
|
variant?: ButtonVariant;
|
197
198
|
bg?: ColorKeys;
|
198
199
|
textColor?: ColorKeys;
|
@@ -283,7 +284,7 @@ export declare type BreadcrumbProps = {
|
|
283
284
|
|
284
285
|
declare type BreakpointSpace = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12";
|
285
286
|
|
286
|
-
export declare const Button: ({ children, variant, bg, textColor, border, size, className, disabled, loading, onClick, type, form, asLink, href, target, rel, ...props }: ButtonProps) => JSX.Element;
|
287
|
+
export declare const Button: ({ children, variant, bg, textColor, border, size, className, disabled, loading, onClick, type, form, asLink, href, target, rel, icon, ...props }: ButtonProps) => JSX.Element;
|
287
288
|
|
288
289
|
declare type ButtonAsButtonProps = BaseButtonProps & {
|
289
290
|
onClick?: () => void;
|
@@ -296,7 +297,7 @@ declare type ButtonAsLinkProps = BaseButtonProps & {
|
|
296
297
|
href: string;
|
297
298
|
onClick?: never;
|
298
299
|
type?: never;
|
299
|
-
asLink?: "a" |
|
300
|
+
asLink?: "a" | React_2.ComponentType<any>;
|
300
301
|
};
|
301
302
|
|
302
303
|
declare type ButtonProps = ButtonAsButtonProps | ButtonAsLinkProps;
|
@@ -1708,6 +1709,14 @@ export declare interface TableProps extends React_2.TableHTMLAttributes<HTMLTabl
|
|
1708
1709
|
initialCurrentPage?: number;
|
1709
1710
|
resultsPerPage?: number;
|
1710
1711
|
defaultSortDirection?: "asc" | "desc";
|
1712
|
+
setSelectedSort?: (sortConfig: {
|
1713
|
+
key: string;
|
1714
|
+
direction: "asc" | "desc";
|
1715
|
+
}) => void;
|
1716
|
+
initialSortConfig?: {
|
1717
|
+
key: string;
|
1718
|
+
direction: "asc" | "desc";
|
1719
|
+
};
|
1711
1720
|
}
|
1712
1721
|
|
1713
1722
|
export declare const TableRow: React_2.ForwardRefExoticComponent<TableRowProps & React_2.RefAttributes<HTMLTableRowElement>>;
|
package/dist/index.es213.js
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
import * as p from "react";
|
2
|
-
import { composeEventHandlers as m } from "./index.
|
3
|
-
import { composeRefs as E } from "./index.
|
4
|
-
import { createContextScope as S } from "./index.
|
5
|
-
import { useControllableState as P } from "./index.
|
6
|
-
import { Primitive as y } from "./index.
|
7
|
-
import { createMenuScope as D, Root as O, Anchor as T, Portal as j, Content as G, Group as k, Item as L, Label as K, CheckboxItem as U, RadioGroup as B, RadioItem as F, ItemIndicator as H, Separator as W, Arrow as $, SubTrigger as X, SubContent as q } from "./index.
|
8
|
-
import { useId as g } from "./index.
|
2
|
+
import { composeEventHandlers as m } from "./index.es332.js";
|
3
|
+
import { composeRefs as E } from "./index.es333.js";
|
4
|
+
import { createContextScope as S } from "./index.es334.js";
|
5
|
+
import { useControllableState as P } from "./index.es335.js";
|
6
|
+
import { Primitive as y } from "./index.es336.js";
|
7
|
+
import { createMenuScope as D, Root as O, Anchor as T, Portal as j, Content as G, Group as k, Item as L, Label as K, CheckboxItem as U, RadioGroup as B, RadioItem as F, ItemIndicator as H, Separator as W, Arrow as $, SubTrigger as X, SubContent as q } from "./index.es337.js";
|
8
|
+
import { useId as g } from "./index.es338.js";
|
9
9
|
import { j as a } from "./index.es185.js";
|
10
10
|
var M = "DropdownMenu", [z, bo] = S(
|
11
11
|
M,
|
package/dist/index.es217.js
CHANGED
@@ -3,7 +3,7 @@ import { Button as m } from "./index.es25.js";
|
|
3
3
|
import { HeaderTopBanner as y } from "./index.es21.js";
|
4
4
|
import { useState as g, useRef as w, useCallback as C, useEffect as u } from "react";
|
5
5
|
import { clsx as r } from "./index.es187.js";
|
6
|
-
import { useFocusTrap as N } from "./index.
|
6
|
+
import { useFocusTrap as N } from "./index.es339.js";
|
7
7
|
import { Container as k } from "./index.es6.js";
|
8
8
|
import './components/navigations/HeaderMobile/HeaderMobile.css';/* empty css */
|
9
9
|
import { Col as L } from "./index.es10.js";
|
package/dist/index.es224.js
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
import * as n from "react";
|
2
|
-
import { useComposedRefs as N } from "./index.
|
3
|
-
import { createContextScope as M } from "./index.
|
4
|
-
import { composeEventHandlers as S } from "./index.
|
5
|
-
import { useControllableState as O } from "./index.
|
2
|
+
import { useComposedRefs as N } from "./index.es333.js";
|
3
|
+
import { createContextScope as M } from "./index.es334.js";
|
4
|
+
import { composeEventHandlers as S } from "./index.es332.js";
|
5
|
+
import { useControllableState as O } from "./index.es335.js";
|
6
6
|
import { usePrevious as A } from "./index.es342.js";
|
7
7
|
import { useSize as B } from "./index.es343.js";
|
8
8
|
import { Presence as H } from "./index.es344.js";
|
9
|
-
import { Primitive as j } from "./index.
|
9
|
+
import { Primitive as j } from "./index.es336.js";
|
10
10
|
import { j as f } from "./index.es185.js";
|
11
11
|
var R = "Checkbox", [K, Y] = M(R), [L, q] = K(R), I = n.forwardRef(
|
12
12
|
(e, l) => {
|
package/dist/index.es235.js
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
import * as s from "react";
|
2
|
-
import { composeEventHandlers as p } from "./index.
|
3
|
-
import { useComposedRefs as C } from "./index.
|
4
|
-
import { createContextScope as B, createContext as H } from "./index.
|
5
|
-
import { useId as x } from "./index.
|
6
|
-
import { useControllableState as V } from "./index.
|
7
|
-
import { DismissableLayer as q } from "./index.
|
8
|
-
import { FocusScope as K } from "./index.
|
9
|
-
import { Portal as U } from "./index.
|
2
|
+
import { composeEventHandlers as p } from "./index.es332.js";
|
3
|
+
import { useComposedRefs as C } from "./index.es333.js";
|
4
|
+
import { createContextScope as B, createContext as H } from "./index.es334.js";
|
5
|
+
import { useId as x } from "./index.es338.js";
|
6
|
+
import { useControllableState as V } from "./index.es335.js";
|
7
|
+
import { DismissableLayer as q } from "./index.es347.js";
|
8
|
+
import { FocusScope as K } from "./index.es348.js";
|
9
|
+
import { Portal as U } from "./index.es349.js";
|
10
10
|
import { Presence as R } from "./index.es344.js";
|
11
|
-
import { Primitive as m } from "./index.
|
12
|
-
import { useFocusGuards as Y } from "./index.
|
13
|
-
import Z from "./index.
|
14
|
-
import { hideOthers as z } from "./index.
|
15
|
-
import { createSlot as J } from "./index.
|
11
|
+
import { Primitive as m } from "./index.es336.js";
|
12
|
+
import { useFocusGuards as Y } from "./index.es350.js";
|
13
|
+
import Z from "./index.es351.js";
|
14
|
+
import { hideOthers as z } from "./index.es352.js";
|
15
|
+
import { createSlot as J } from "./index.es353.js";
|
16
16
|
import { j as i } from "./index.es185.js";
|
17
17
|
var _ = "Dialog", [N, he] = B(_), [Q, u] = N(_), P = (e) => {
|
18
18
|
const {
|
package/dist/index.es25.js
CHANGED
@@ -1,32 +1,36 @@
|
|
1
|
-
import { j as
|
2
|
-
import { createColorClasses as
|
3
|
-
import { clsx as
|
1
|
+
import { j as t } from "./index.es185.js";
|
2
|
+
import { createColorClasses as I } from "./index.es198.js";
|
3
|
+
import { clsx as N } from "./index.es187.js";
|
4
4
|
import './components/ui/Button/Button.css';/* empty css */
|
5
|
-
import { Spinner as
|
6
|
-
|
5
|
+
import { Spinner as l } from "./index.es152.js";
|
6
|
+
import { Download as E } from "./index.es147.js";
|
7
|
+
import { Info as T } from "./index.es156.js";
|
8
|
+
import { Col as Z } from "./index.es10.js";
|
9
|
+
const F = ({
|
7
10
|
children: e,
|
8
|
-
variant:
|
9
|
-
bg:
|
10
|
-
textColor:
|
11
|
-
border:
|
11
|
+
variant: s,
|
12
|
+
bg: p = "primary",
|
13
|
+
textColor: i = "white",
|
14
|
+
border: f = "white",
|
12
15
|
size: c = "3",
|
13
|
-
className:
|
14
|
-
disabled:
|
16
|
+
className: j,
|
17
|
+
disabled: n,
|
15
18
|
loading: o,
|
16
19
|
onClick: b,
|
17
|
-
type:
|
18
|
-
form:
|
20
|
+
type: d = "button",
|
21
|
+
form: a = "",
|
19
22
|
asLink: x,
|
20
|
-
href:
|
21
|
-
target:
|
22
|
-
rel:
|
23
|
-
|
23
|
+
href: w,
|
24
|
+
target: C = void 0,
|
25
|
+
rel: S = void 0,
|
26
|
+
icon: r = void 0,
|
27
|
+
...u
|
24
28
|
}) => {
|
25
|
-
const
|
26
|
-
bg:
|
27
|
-
text:
|
28
|
-
border:
|
29
|
-
}),
|
29
|
+
const h = s ? "" : I({
|
30
|
+
bg: p,
|
31
|
+
text: i,
|
32
|
+
border: f
|
33
|
+
}), m = N(
|
30
34
|
"ui-button",
|
31
35
|
{
|
32
36
|
2: "fs-6 py-x12 px-x24",
|
@@ -34,49 +38,63 @@ const R = ({
|
|
34
38
|
4: "fs-6 py-x4 px-x8"
|
35
39
|
}[c],
|
36
40
|
// Apply variant class if provided
|
37
|
-
|
41
|
+
s && `ui-button-${s}`,
|
38
42
|
// Otherwise use traditional classes
|
39
|
-
!
|
43
|
+
!s && h,
|
40
44
|
{
|
41
|
-
"ui-button-disabled":
|
45
|
+
"ui-button-disabled": n || o
|
42
46
|
},
|
43
47
|
{
|
44
48
|
"ui-button-loading": o
|
45
49
|
},
|
46
|
-
|
50
|
+
j,
|
47
51
|
"fw-bold"
|
48
52
|
);
|
49
53
|
if (x) {
|
50
|
-
const
|
51
|
-
return /* @__PURE__ */
|
52
|
-
|
54
|
+
const B = x;
|
55
|
+
return /* @__PURE__ */ t.jsx(
|
56
|
+
B,
|
53
57
|
{
|
54
|
-
target:
|
55
|
-
rel:
|
56
|
-
href:
|
57
|
-
className:
|
58
|
-
...
|
58
|
+
target: C,
|
59
|
+
rel: S,
|
60
|
+
href: w,
|
61
|
+
className: m,
|
62
|
+
...u,
|
59
63
|
children: e
|
60
64
|
}
|
61
65
|
);
|
62
66
|
}
|
63
|
-
|
67
|
+
const y = () => {
|
68
|
+
switch (r) {
|
69
|
+
case "info":
|
70
|
+
return /* @__PURE__ */ t.jsx(T, {});
|
71
|
+
case "download":
|
72
|
+
return /* @__PURE__ */ t.jsx(E, {});
|
73
|
+
default:
|
74
|
+
return null;
|
75
|
+
}
|
76
|
+
};
|
77
|
+
return /* @__PURE__ */ t.jsxs(
|
64
78
|
"button",
|
65
79
|
{
|
66
|
-
type:
|
67
|
-
form:
|
68
|
-
className:
|
80
|
+
type: d,
|
81
|
+
form: a,
|
82
|
+
className: m,
|
69
83
|
onClick: b,
|
70
|
-
disabled:
|
71
|
-
...
|
84
|
+
disabled: n || o,
|
85
|
+
...u,
|
72
86
|
children: [
|
87
|
+
r && /* @__PURE__ */ t.jsxs(Z, { mr: "x8", children: [
|
88
|
+
!o && /* @__PURE__ */ t.jsx(y, {}),
|
89
|
+
o ? /* @__PURE__ */ t.jsx(l, {}) : null
|
90
|
+
] }),
|
73
91
|
e,
|
74
|
-
o ? /* @__PURE__ */
|
92
|
+
o && !r ? /* @__PURE__ */ t.jsx(l, {}) : null
|
75
93
|
]
|
76
94
|
}
|
77
95
|
);
|
78
96
|
};
|
79
97
|
export {
|
80
|
-
|
98
|
+
F as Button
|
81
99
|
};
|
82
100
|
//# sourceMappingURL=index.es25.js.map
|
package/dist/index.es25.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es25.js","sources":["../src/components/ui/Button/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\nimport { ColorKeys, createColorClasses } from \"@/theme/colors\";\nimport clsx from \"clsx\";\nimport \"./Button.scss\";\nimport { Spinner } from \"@/icons\";\n\ntype ButtonSize = \"2\" | \"3\" | \"4\";\ntype ButtonVariant = \"primary\" | \"secondary\";\n\ntype BaseButtonProps = {\n children: React.ReactNode;\n variant?: ButtonVariant;\n bg?: ColorKeys;\n textColor?: ColorKeys;\n border?: ColorKeys;\n size?: ButtonSize;\n className?: string;\n disabled?: boolean;\n loading?: boolean;\n form?: string;\n rel?: string;\n target?: string;\n};\n\ntype ButtonAsButtonProps = BaseButtonProps & {\n onClick?: () => void;\n type?: \"button\" | \"submit\" | \"reset\";\n asLink?: never;\n href?: never;\n};\n\ntype ButtonAsLinkProps = BaseButtonProps & {\n href: string;\n onClick?: never;\n type?: never;\n asLink?: \"a\" | React.ComponentType<any>;\n};\n\ntype ButtonProps = ButtonAsButtonProps | ButtonAsLinkProps;\n\nexport const Button = ({\n children,\n variant,\n bg = \"primary\",\n textColor = \"white\",\n border = \"white\",\n size = \"3\",\n className,\n disabled,\n loading,\n onClick,\n type = \"button\",\n form = \"\",\n asLink,\n href,\n target = undefined,\n rel = undefined,\n ...props\n}: ButtonProps) => {\n // Only apply color classes if no variant is specified\n const colorClasses = !variant\n ? createColorClasses({\n bg,\n text: textColor,\n border,\n })\n : \"\";\n\n const BTN_SIZES = {\n \"2\": \"fs-6 py-x12 px-x24\",\n \"3\": \"fs-7 py-x12 px-x24\",\n \"4\": \"fs-6 py-x4 px-x8\",\n };\n\n const baseClasses = clsx(\n \"ui-button\",\n BTN_SIZES[size],\n // Apply variant class if provided\n variant && `ui-button-${variant}`,\n // Otherwise use traditional classes\n !variant && colorClasses,\n {\n \"ui-button-disabled\": disabled || loading,\n },\n {\n \"ui-button-loading\": loading,\n },\n className,\n \"fw-bold\",\n );\n\n if (asLink) {\n const LinkComponent = asLink;\n return (\n <LinkComponent\n target={target}\n rel={rel}\n href={href}\n className={baseClasses}\n {...props}\n >\n {children}\n </LinkComponent>\n );\n }\n\n return (\n <button\n type={type}\n form={form}\n className={baseClasses}\n onClick={onClick}\n disabled={disabled || loading}\n {...props}\n >\n {children}\n {loading ? <Spinner /> : null}\n </button>\n );\n};\n"],"names":["Button","children","variant","bg","textColor","border","size","className","disabled","loading","onClick","type","form","asLink","href","target","rel","props","colorClasses","createColorClasses","baseClasses","clsx","LinkComponent","jsx","jsxs","Spinner"],"mappings":"
|
1
|
+
{"version":3,"file":"index.es25.js","sources":["../src/components/ui/Button/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\nimport { ColorKeys, createColorClasses } from \"@/theme/colors\";\nimport clsx from \"clsx\";\nimport \"./Button.scss\";\nimport { Download, Info, Spinner } from \"@/icons\";\nimport * as React from \"react\";\nimport { CommonIconsType } from \"@/types/icons.ts\";\nimport { Col } from \"@/components\";\n\ntype ButtonSize = \"2\" | \"3\" | \"4\";\ntype ButtonVariant = \"primary\" | \"secondary\";\n\ntype BaseButtonProps = {\n children: React.ReactNode;\n icon?: CommonIconsType;\n variant?: ButtonVariant;\n bg?: ColorKeys;\n textColor?: ColorKeys;\n border?: ColorKeys;\n size?: ButtonSize;\n className?: string;\n disabled?: boolean;\n loading?: boolean;\n form?: string;\n rel?: string;\n target?: string;\n};\n\ntype ButtonAsButtonProps = BaseButtonProps & {\n onClick?: () => void;\n type?: \"button\" | \"submit\" | \"reset\";\n asLink?: never;\n href?: never;\n};\n\ntype ButtonAsLinkProps = BaseButtonProps & {\n href: string;\n onClick?: never;\n type?: never;\n asLink?: \"a\" | React.ComponentType<any>;\n};\n\ntype ButtonProps = ButtonAsButtonProps | ButtonAsLinkProps;\n\nexport const Button = ({\n children,\n variant,\n bg = \"primary\",\n textColor = \"white\",\n border = \"white\",\n size = \"3\",\n className,\n disabled,\n loading,\n onClick,\n type = \"button\",\n form = \"\",\n asLink,\n href,\n target = undefined,\n rel = undefined,\n icon = undefined,\n ...props\n}: ButtonProps) => {\n // Only apply color classes if no variant is specified\n const colorClasses = !variant\n ? createColorClasses({\n bg,\n text: textColor,\n border,\n })\n : \"\";\n\n const BTN_SIZES = {\n \"2\": \"fs-6 py-x12 px-x24\",\n \"3\": \"fs-7 py-x12 px-x24\",\n \"4\": \"fs-6 py-x4 px-x8\",\n };\n\n const baseClasses = clsx(\n \"ui-button\",\n BTN_SIZES[size],\n // Apply variant class if provided\n variant && `ui-button-${variant}`,\n // Otherwise use traditional classes\n !variant && colorClasses,\n {\n \"ui-button-disabled\": disabled || loading,\n },\n {\n \"ui-button-loading\": loading,\n },\n className,\n \"fw-bold\",\n );\n\n if (asLink) {\n const LinkComponent = asLink;\n return (\n <LinkComponent\n target={target}\n rel={rel}\n href={href}\n className={baseClasses}\n {...props}\n >\n {children}\n </LinkComponent>\n );\n }\n\n const ButtonIcon = () => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return null;\n }\n };\n\n return (\n <button\n type={type}\n form={form}\n className={baseClasses}\n onClick={onClick}\n disabled={disabled || loading}\n {...props}\n >\n {icon && (\n <Col mr={\"x8\"}>\n {!loading && <ButtonIcon />}\n {loading ? <Spinner /> : null}\n </Col>\n )}\n\n {children}\n\n {loading && !icon ? <Spinner /> : null}\n </button>\n );\n};\n"],"names":["Button","children","variant","bg","textColor","border","size","className","disabled","loading","onClick","type","form","asLink","href","target","rel","icon","props","colorClasses","createColorClasses","baseClasses","clsx","LinkComponent","jsx","ButtonIcon","Info","Download","jsxs","Col","Spinner"],"mappings":";;;;;;;;AA4CO,MAAMA,IAAS,CAAC;AAAA,EACrB,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,IAAAC,IAAK;AAAA,EACL,WAAAC,IAAY;AAAA,EACZ,QAAAC,IAAS;AAAA,EACT,MAAAC,IAAO;AAAA,EACP,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,SAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,MAAAC,IAAO;AAAA,EACP,QAAAC;AAAA,EACA,MAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,KAAAC,IAAM;AAAA,EACN,MAAAC,IAAO;AAAA,EACP,GAAGC;AACL,MAAmB;AAEX,QAAAC,IAAgBjB,IAMlB,KALAkB,EAAmB;AAAA,IACjB,IAAAjB;AAAA,IACA,MAAMC;AAAA,IACN,QAAAC;AAAA,EACD,CAAA,GASCgB,IAAcC;AAAA,IAClB;AAAA,IAPgB;AAAA,MAChB,GAAK;AAAA,MACL,GAAK;AAAA,MACL,GAAK;AAAA,IACP,EAIYhB,CAAI;AAAA;AAAA,IAEdJ,KAAW,aAAaA,CAAO;AAAA;AAAA,IAE/B,CAACA,KAAWiB;AAAA,IACZ;AAAA,MACE,sBAAsBX,KAAYC;AAAA,IACpC;AAAA,IACA;AAAA,MACE,qBAAqBA;AAAA,IACvB;AAAA,IACAF;AAAA,IACA;AAAA,EACF;AAEA,MAAIM,GAAQ;AACV,UAAMU,IAAgBV;AAEpB,WAAAW,gBAAAA,EAAA;AAAA,MAACD;AAAA,MAAA;AAAA,QACC,QAAAR;AAAA,QACA,KAAAC;AAAA,QACA,MAAAF;AAAA,QACA,WAAWO;AAAA,QACV,GAAGH;AAAA,QAEH,UAAAjB;AAAA,MAAA;AAAA,IACH;AAAA,EAAA;AAIJ,QAAMwB,IAAa,MAAM;AACvB,YAAQR,GAAM;AAAA,MACZ,KAAK;AACH,qCAAQS,GAAK,EAAA;AAAA,MACf,KAAK;AACH,qCAAQC,GAAS,EAAA;AAAA,MACnB;AACS,eAAA;AAAA,IAAA;AAAA,EAEb;AAGE,SAAAC,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAAjB;AAAA,MACA,MAAAC;AAAA,MACA,WAAWS;AAAA,MACX,SAAAX;AAAA,MACA,UAAUF,KAAYC;AAAA,MACrB,GAAGS;AAAA,MAEH,UAAA;AAAA,QACCD,KAAAW,gBAAAA,EAAA,KAACC,GAAI,EAAA,IAAI,MACN,UAAA;AAAA,UAAC,CAAApB,2BAAYgB,GAAW,EAAA;AAAA,UACxBhB,IAAWe,gBAAAA,EAAA,IAAAM,GAAA,CAAA,CAAQ,IAAK;AAAA,QAAA,GAC3B;AAAA,QAGD7B;AAAA,QAEAQ,KAAW,CAACQ,IAAOO,gBAAAA,EAAA,IAACM,IAAQ,CAAA,IAAK;AAAA,MAAA;AAAA,IAAA;AAAA,EACpC;AAEJ;"}
|
package/dist/index.es262.js
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
import * as s from "react";
|
2
|
-
import { composeEventHandlers as T } from "./index.
|
3
|
-
import { useComposedRefs as _ } from "./index.
|
4
|
-
import { createContextScope as H } from "./index.
|
5
|
-
import { useControllableState as I } from "./index.
|
2
|
+
import { composeEventHandlers as T } from "./index.es332.js";
|
3
|
+
import { useComposedRefs as _ } from "./index.es333.js";
|
4
|
+
import { createContextScope as H } from "./index.es334.js";
|
5
|
+
import { useControllableState as I } from "./index.es335.js";
|
6
6
|
import { usePrevious as M } from "./index.es342.js";
|
7
7
|
import { useSize as N } from "./index.es343.js";
|
8
|
-
import { Primitive as w } from "./index.
|
8
|
+
import { Primitive as w } from "./index.es336.js";
|
9
9
|
import { j as p } from "./index.es185.js";
|
10
10
|
var S = "Switch", [B, J] = H(S), [q, z] = B(S), C = s.forwardRef(
|
11
11
|
(e, n) => {
|