dhanasekar-ui 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/dist/chunk-2CO3UUBT.js +170 -0
  2. package/dist/chunk-2CO3UUBT.js.map +1 -0
  3. package/dist/chunk-3HGMPMXD.js +61 -0
  4. package/dist/chunk-3HGMPMXD.js.map +1 -0
  5. package/dist/chunk-46U234GX.mjs +42 -0
  6. package/dist/chunk-46U234GX.mjs.map +1 -0
  7. package/dist/chunk-5FU43BWK.mjs +121 -0
  8. package/dist/chunk-5FU43BWK.mjs.map +1 -0
  9. package/dist/chunk-7XVF6WPJ.js +108 -0
  10. package/dist/chunk-7XVF6WPJ.js.map +1 -0
  11. package/dist/{chunk-GNMGJBBO.mjs → chunk-AK3NQBYU.mjs} +3 -3
  12. package/dist/chunk-AK3NQBYU.mjs.map +1 -0
  13. package/dist/chunk-ALCHPZY6.js +149 -0
  14. package/dist/chunk-ALCHPZY6.js.map +1 -0
  15. package/dist/chunk-BNBEIMM2.mjs +61 -0
  16. package/dist/chunk-BNBEIMM2.mjs.map +1 -0
  17. package/dist/chunk-BQVXQWPS.mjs +129 -0
  18. package/dist/chunk-BQVXQWPS.mjs.map +1 -0
  19. package/dist/chunk-DBSBLGGH.js +40 -0
  20. package/dist/chunk-DBSBLGGH.js.map +1 -0
  21. package/dist/chunk-DVDVLGDJ.js +121 -0
  22. package/dist/chunk-DVDVLGDJ.js.map +1 -0
  23. package/dist/chunk-EN76JE3Y.js +64 -0
  24. package/dist/chunk-EN76JE3Y.js.map +1 -0
  25. package/dist/chunk-FLTDFXE3.mjs +170 -0
  26. package/dist/chunk-FLTDFXE3.mjs.map +1 -0
  27. package/dist/chunk-GSRVWW2G.mjs +177 -0
  28. package/dist/chunk-GSRVWW2G.mjs.map +1 -0
  29. package/dist/chunk-GZGTDLFV.js +72 -0
  30. package/dist/chunk-GZGTDLFV.js.map +1 -0
  31. package/dist/chunk-HGGQFNUJ.mjs +2 -0
  32. package/dist/chunk-HGGQFNUJ.mjs.map +1 -0
  33. package/dist/chunk-HWD2HCCH.js +129 -0
  34. package/dist/chunk-HWD2HCCH.js.map +1 -0
  35. package/dist/chunk-I6OJHQZX.mjs +2 -0
  36. package/dist/chunk-I6OJHQZX.mjs.map +1 -0
  37. package/dist/chunk-ISHUTZ36.js +42 -0
  38. package/dist/chunk-ISHUTZ36.js.map +1 -0
  39. package/dist/chunk-JC4TJWCY.mjs +97 -0
  40. package/dist/chunk-JC4TJWCY.mjs.map +1 -0
  41. package/dist/chunk-JM6DZDO3.js +87 -0
  42. package/dist/chunk-JM6DZDO3.js.map +1 -0
  43. package/dist/chunk-KUXDQANJ.mjs +72 -0
  44. package/dist/chunk-KUXDQANJ.mjs.map +1 -0
  45. package/dist/chunk-LIBHUJ27.js +2 -0
  46. package/dist/chunk-LIBHUJ27.js.map +1 -0
  47. package/dist/chunk-MALTBURB.mjs +64 -0
  48. package/dist/chunk-MALTBURB.mjs.map +1 -0
  49. package/dist/chunk-MLURKSJZ.js +2 -0
  50. package/dist/chunk-MLURKSJZ.js.map +1 -0
  51. package/dist/chunk-MOC6N23X.mjs +151 -0
  52. package/dist/chunk-MOC6N23X.mjs.map +1 -0
  53. package/dist/chunk-P5HHRCE5.js +198 -0
  54. package/dist/chunk-P5HHRCE5.js.map +1 -0
  55. package/dist/chunk-PL2R3LYL.mjs +198 -0
  56. package/dist/chunk-PL2R3LYL.mjs.map +1 -0
  57. package/dist/chunk-PPQ7NSV3.js +97 -0
  58. package/dist/chunk-PPQ7NSV3.js.map +1 -0
  59. package/dist/chunk-T3YOHFUU.js +177 -0
  60. package/dist/chunk-T3YOHFUU.js.map +1 -0
  61. package/dist/chunk-UCFS7EH2.mjs +40 -0
  62. package/dist/chunk-UCFS7EH2.mjs.map +1 -0
  63. package/dist/chunk-ULMQZANW.mjs +87 -0
  64. package/dist/chunk-ULMQZANW.mjs.map +1 -0
  65. package/dist/chunk-UYHBKE7G.mjs +108 -0
  66. package/dist/chunk-UYHBKE7G.mjs.map +1 -0
  67. package/dist/chunk-W5B5N6BW.mjs +149 -0
  68. package/dist/chunk-W5B5N6BW.mjs.map +1 -0
  69. package/dist/{chunk-6SVKDKK7.mjs → chunk-XWEEWNZK.mjs} +4 -4
  70. package/dist/chunk-XWEEWNZK.mjs.map +1 -0
  71. package/dist/{chunk-3RAQQWLW.js → chunk-YPMUFP2I.js} +4 -4
  72. package/dist/chunk-YPMUFP2I.js.map +1 -0
  73. package/dist/chunk-ZMB4U5RP.js +151 -0
  74. package/dist/chunk-ZMB4U5RP.js.map +1 -0
  75. package/dist/{chunk-2TXYJ7YE.js → chunk-ZPJSBORX.js} +3 -3
  76. package/dist/chunk-ZPJSBORX.js.map +1 -0
  77. package/dist/components/AppBar/index.d.mts +89 -0
  78. package/dist/components/AppBar/index.d.ts +89 -0
  79. package/dist/components/AppBar/index.js +2 -0
  80. package/dist/components/AppBar/index.js.map +1 -0
  81. package/dist/components/AppBar/index.mjs +2 -0
  82. package/dist/components/AppBar/index.mjs.map +1 -0
  83. package/dist/components/Box/index.d.mts +28 -0
  84. package/dist/components/Box/index.d.ts +28 -0
  85. package/dist/components/Box/index.js +2 -0
  86. package/dist/components/Box/index.js.map +1 -0
  87. package/dist/components/Box/index.mjs +2 -0
  88. package/dist/components/Box/index.mjs.map +1 -0
  89. package/dist/components/Container/index.d.mts +71 -0
  90. package/dist/components/Container/index.d.ts +71 -0
  91. package/dist/components/Container/index.js +2 -0
  92. package/dist/components/Container/index.js.map +1 -0
  93. package/dist/components/Container/index.mjs +2 -0
  94. package/dist/components/Container/index.mjs.map +1 -0
  95. package/dist/components/DateFilter/index.d.mts +8 -1
  96. package/dist/components/DateFilter/index.d.ts +8 -1
  97. package/dist/components/DateFilter/index.js +1 -1
  98. package/dist/components/DateFilter/index.mjs +1 -1
  99. package/dist/components/FileUploadField/index.d.mts +4 -2
  100. package/dist/components/FileUploadField/index.d.ts +4 -2
  101. package/dist/components/FileUploadField/index.js +1 -1
  102. package/dist/components/FileUploadField/index.mjs +1 -1
  103. package/dist/components/FormLayout/index.d.mts +8 -2
  104. package/dist/components/FormLayout/index.d.ts +8 -2
  105. package/dist/components/FormLayout/index.js +1 -1
  106. package/dist/components/FormLayout/index.mjs +1 -1
  107. package/dist/components/Grid/index.d.mts +48 -0
  108. package/dist/components/Grid/index.d.ts +48 -0
  109. package/dist/components/Grid/index.js +2 -0
  110. package/dist/components/Grid/index.js.map +1 -0
  111. package/dist/components/Grid/index.mjs +2 -0
  112. package/dist/components/Grid/index.mjs.map +1 -0
  113. package/dist/components/List/index.d.mts +98 -0
  114. package/dist/components/List/index.d.ts +98 -0
  115. package/dist/components/List/index.js +2 -0
  116. package/dist/components/List/index.js.map +1 -0
  117. package/dist/components/List/index.mjs +2 -0
  118. package/dist/components/List/index.mjs.map +1 -0
  119. package/dist/components/Navigator/index.d.mts +87 -0
  120. package/dist/components/Navigator/index.d.ts +87 -0
  121. package/dist/components/Navigator/index.js +2 -0
  122. package/dist/components/Navigator/index.js.map +1 -0
  123. package/dist/components/Navigator/index.mjs +2 -0
  124. package/dist/components/Navigator/index.mjs.map +1 -0
  125. package/dist/components/Pagination/index.d.mts +89 -0
  126. package/dist/components/Pagination/index.d.ts +89 -0
  127. package/dist/components/Pagination/index.js +2 -0
  128. package/dist/components/Pagination/index.js.map +1 -0
  129. package/dist/components/Pagination/index.mjs +2 -0
  130. package/dist/components/Pagination/index.mjs.map +1 -0
  131. package/dist/components/PdfImageUpload/index.d.mts +30 -0
  132. package/dist/components/PdfImageUpload/index.d.ts +30 -0
  133. package/dist/components/PdfImageUpload/index.js +2 -0
  134. package/dist/components/PdfImageUpload/index.js.map +1 -0
  135. package/dist/components/PdfImageUpload/index.mjs +2 -0
  136. package/dist/components/PdfImageUpload/index.mjs.map +1 -0
  137. package/dist/components/Progress/index.d.mts +52 -0
  138. package/dist/components/Progress/index.d.ts +52 -0
  139. package/dist/components/Progress/index.js +2 -0
  140. package/dist/components/Progress/index.js.map +1 -0
  141. package/dist/components/Progress/index.mjs +2 -0
  142. package/dist/components/Progress/index.mjs.map +1 -0
  143. package/dist/components/RadioGroup/index.d.mts +99 -0
  144. package/dist/components/RadioGroup/index.d.ts +99 -0
  145. package/dist/components/RadioGroup/index.js +2 -0
  146. package/dist/components/RadioGroup/index.js.map +1 -0
  147. package/dist/components/RadioGroup/index.mjs +2 -0
  148. package/dist/components/RadioGroup/index.mjs.map +1 -0
  149. package/dist/components/Skeleton/index.d.mts +45 -0
  150. package/dist/components/Skeleton/index.d.ts +45 -0
  151. package/dist/components/Skeleton/index.js +2 -0
  152. package/dist/components/Skeleton/index.js.map +1 -0
  153. package/dist/components/Skeleton/index.mjs +2 -0
  154. package/dist/components/Skeleton/index.mjs.map +1 -0
  155. package/dist/components/Slider/index.d.mts +181 -0
  156. package/dist/components/Slider/index.d.ts +181 -0
  157. package/dist/components/Slider/index.js +2 -0
  158. package/dist/components/Slider/index.js.map +1 -0
  159. package/dist/components/Slider/index.mjs +2 -0
  160. package/dist/components/Slider/index.mjs.map +1 -0
  161. package/dist/components/Snackbar/index.d.mts +80 -0
  162. package/dist/components/Snackbar/index.d.ts +80 -0
  163. package/dist/components/Snackbar/index.js +2 -0
  164. package/dist/components/Snackbar/index.js.map +1 -0
  165. package/dist/components/Snackbar/index.mjs +2 -0
  166. package/dist/components/Snackbar/index.mjs.map +1 -0
  167. package/dist/components/Text/index.d.mts +2 -1
  168. package/dist/components/Text/index.d.ts +2 -1
  169. package/dist/components/ToolBar/index.d.mts +60 -0
  170. package/dist/components/ToolBar/index.d.ts +60 -0
  171. package/dist/components/ToolBar/index.js +2 -0
  172. package/dist/components/ToolBar/index.js.map +1 -0
  173. package/dist/components/ToolBar/index.mjs +2 -0
  174. package/dist/components/ToolBar/index.mjs.map +1 -0
  175. package/dist/components/Tray/index.d.mts +140 -0
  176. package/dist/components/Tray/index.d.ts +140 -0
  177. package/dist/components/Tray/index.js +2 -0
  178. package/dist/components/Tray/index.js.map +1 -0
  179. package/dist/components/Tray/index.mjs +2 -0
  180. package/dist/components/Tray/index.mjs.map +1 -0
  181. package/dist/index.d.mts +16 -0
  182. package/dist/index.d.ts +16 -0
  183. package/dist/index.js +1 -1
  184. package/dist/index.mjs +1 -1
  185. package/dist/types-BJWJOB_w.d.mts +5 -0
  186. package/dist/types-BJWJOB_w.d.ts +5 -0
  187. package/package.json +84 -2
  188. package/dist/chunk-2TXYJ7YE.js.map +0 -1
  189. package/dist/chunk-3RAQQWLW.js.map +0 -1
  190. package/dist/chunk-6SVKDKK7.mjs.map +0 -1
  191. package/dist/chunk-GNMGJBBO.mjs.map +0 -1
  192. package/dist/chunk-ZEMR63S4.js +0 -198
  193. package/dist/chunk-ZEMR63S4.js.map +0 -1
  194. package/dist/chunk-ZY5AHZYZ.mjs +0 -198
  195. package/dist/chunk-ZY5AHZYZ.mjs.map +0 -1
@@ -0,0 +1,177 @@
1
+ import {a}from'./chunk-547MQ4FI.mjs';import {forwardRef,useRef,useCallback,useEffect}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var E=`
2
+ /* ---- Tray (Drawer) Root ---- */
3
+ .ui-tray-root {
4
+ position: fixed;
5
+ z-index: 1200;
6
+ inset: 0;
7
+ }
8
+
9
+ .ui-tray-root--hidden {
10
+ visibility: hidden;
11
+ pointer-events: none;
12
+ }
13
+
14
+ /* ---- Backdrop ---- */
15
+ .ui-tray-backdrop {
16
+ position: fixed;
17
+ inset: 0;
18
+ z-index: -1;
19
+ background-color: rgba(0, 0, 0, 0.5);
20
+ opacity: 0;
21
+ transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1);
22
+ -webkit-tap-highlight-color: transparent;
23
+ }
24
+
25
+ .ui-tray-backdrop--visible {
26
+ opacity: 1;
27
+ }
28
+
29
+ .ui-tray-backdrop--hidden {
30
+ display: none;
31
+ }
32
+
33
+ /* ---- Paper (Drawer Surface) ---- */
34
+ .ui-tray-paper {
35
+ position: fixed;
36
+ display: flex;
37
+ flex-direction: column;
38
+ overflow-y: auto;
39
+ outline: 0;
40
+ z-index: 1200;
41
+ background-color: #ffffff;
42
+ color: #1e293b;
43
+ transition-property: transform, box-shadow;
44
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
45
+ will-change: transform;
46
+ }
47
+
48
+ /* Elevation / box-shadow */
49
+ .ui-tray-paper--elevation {
50
+ box-shadow:
51
+ 0px 8px 10px -5px rgba(0,0,0,0.08),
52
+ 0px 16px 24px 2px rgba(0,0,0,0.06),
53
+ 0px 6px 30px 5px rgba(0,0,0,0.04);
54
+ }
55
+
56
+ /* ---- Anchor: Left ---- */
57
+ .ui-tray-paper--left {
58
+ top: 0;
59
+ left: 0;
60
+ bottom: 0;
61
+ width: 280px;
62
+ max-width: 100%;
63
+ border-right: 1px solid rgba(0, 0, 0, 0.08);
64
+ transform: translateX(-100%);
65
+ }
66
+
67
+ .ui-tray-paper--left.ui-tray-paper--open {
68
+ transform: translateX(0);
69
+ }
70
+
71
+ /* ---- Anchor: Right ---- */
72
+ .ui-tray-paper--right {
73
+ top: 0;
74
+ right: 0;
75
+ bottom: 0;
76
+ width: 280px;
77
+ max-width: 100%;
78
+ border-left: 1px solid rgba(0, 0, 0, 0.08);
79
+ transform: translateX(100%);
80
+ }
81
+
82
+ .ui-tray-paper--right.ui-tray-paper--open {
83
+ transform: translateX(0);
84
+ }
85
+
86
+ /* ---- Anchor: Top ---- */
87
+ .ui-tray-paper--top {
88
+ top: 0;
89
+ left: 0;
90
+ right: 0;
91
+ height: auto;
92
+ max-height: 100%;
93
+ border-bottom: 1px solid rgba(0, 0, 0, 0.08);
94
+ transform: translateY(-100%);
95
+ }
96
+
97
+ .ui-tray-paper--top.ui-tray-paper--open {
98
+ transform: translateY(0);
99
+ }
100
+
101
+ /* ---- Anchor: Bottom ---- */
102
+ .ui-tray-paper--bottom {
103
+ bottom: 0;
104
+ left: 0;
105
+ right: 0;
106
+ height: auto;
107
+ max-height: 100%;
108
+ border-top: 1px solid rgba(0, 0, 0, 0.08);
109
+ transform: translateY(100%);
110
+ }
111
+
112
+ .ui-tray-paper--bottom.ui-tray-paper--open {
113
+ transform: translateY(0);
114
+ }
115
+
116
+ /* ---- Docked variant (permanent / persistent) ---- */
117
+ .ui-tray-docked {
118
+ position: relative;
119
+ flex-shrink: 0;
120
+ }
121
+
122
+ .ui-tray-docked .ui-tray-paper {
123
+ position: relative;
124
+ border: none;
125
+ transform: none;
126
+ transition: none;
127
+ box-shadow: none;
128
+ }
129
+
130
+ .ui-tray-docked .ui-tray-paper--left {
131
+ border-right: 1px solid rgba(0, 0, 0, 0.12);
132
+ }
133
+
134
+ .ui-tray-docked .ui-tray-paper--right {
135
+ border-left: 1px solid rgba(0, 0, 0, 0.12);
136
+ }
137
+
138
+ .ui-tray-docked .ui-tray-paper--top {
139
+ border-bottom: 1px solid rgba(0, 0, 0, 0.12);
140
+ }
141
+
142
+ .ui-tray-docked .ui-tray-paper--bottom {
143
+ border-top: 1px solid rgba(0, 0, 0, 0.12);
144
+ }
145
+
146
+ /* ---- Persistent: slide in/out ---- */
147
+ .ui-tray-persistent .ui-tray-paper {
148
+ position: relative;
149
+ transition-property: transform, width, height;
150
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
151
+ }
152
+
153
+ .ui-tray-persistent .ui-tray-paper--left,
154
+ .ui-tray-persistent .ui-tray-paper--right {
155
+ width: 0;
156
+ overflow: hidden;
157
+ }
158
+
159
+ .ui-tray-persistent .ui-tray-paper--left.ui-tray-paper--open,
160
+ .ui-tray-persistent .ui-tray-paper--right.ui-tray-paper--open {
161
+ width: 280px;
162
+ }
163
+
164
+ .ui-tray-persistent .ui-tray-paper--top,
165
+ .ui-tray-persistent .ui-tray-paper--bottom {
166
+ height: 0;
167
+ overflow: hidden;
168
+ }
169
+
170
+ .ui-tray-persistent .ui-tray-paper--top.ui-tray-paper--open,
171
+ .ui-tray-persistent .ui-tray-paper--bottom.ui-tray-paper--open {
172
+ height: auto;
173
+ }
174
+ `;function O(r){if(r<=0)return {};let t=Math.min(r,24),a=Math.round(t*1.5),i=Math.round(t*.75);return {boxShadow:`0px ${Math.round(t/2)}px ${t}px -${Math.round(t/3)}px rgba(0,0,0,0.08),
175
+ 0px ${a}px ${a+8}px 2px rgba(0,0,0,0.06),
176
+ 0px ${i}px ${i+24}px ${Math.round(i/2)}px rgba(0,0,0,0.04)`}}function v(r,t){return r?typeof r=="function"?r(t):r:{}}function j(r,t){return typeof t=="number"?`${t}ms`:t&&typeof t=="object"?r?`${t.enter??225}ms`:`${t.exit??195}ms`:r?"225ms":"195ms"}var q=forwardRef(({anchor:r="left",children:t,classes:a$1,className:i,elevation:s=16,hideBackdrop:M=false,ModalProps:A={},onClose:l,open:o=false,slotProps:c={},slots:f={},sx:y,transitionDuration:z,variant:e="temporary",...m},b)=>{let D=useRef(null),h=e==="permanent"||e==="persistent",x={anchor:r,elevation:s,open:o,variant:e},g=f.root||"div",_=f.paper||"div",C=f.backdrop||"div",k=v(c.root,x),$=v(c.paper,x),H=v(c.backdrop,x),w=useCallback(n=>{n.key==="Escape"&&o&&e==="temporary"&&l?.(n,"escapeKeyDown");},[l,o,e]);useEffect(()=>{if(o&&e==="temporary")return document.addEventListener("keydown",w),()=>document.removeEventListener("keydown",w)},[o,e,w]),useEffect(()=>{if(e==="temporary"&&o){let n=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=n;}}},[o,e]);let S=typeof y=="function"?y({}):Array.isArray(y)?Object.assign({},...y.filter(Boolean)):y,P=j(o,z),Y=a("ui-tray-paper",`ui-tray-paper--${r}`,o&&"ui-tray-paper--open",!h&&s>0&&"ui-tray-paper--elevation",a$1?.paper),B={transitionDuration:h&&e==="permanent"?"0ms":P,...s>0&&!h&&o?O(s):{},...$.style},T=jsx(_,{ref:D,className:Y,style:B,tabIndex:-1,role:e==="temporary"?"presentation":void 0,...$,children:t});if(e==="permanent")return jsxs(Fragment,{children:[jsx("style",{dangerouslySetInnerHTML:{__html:E}}),jsx(g,{ref:b,className:a("ui-tray-docked",a$1?.root,a$1?.docked,i),style:{...S},...k,...m,children:T})]});if(e==="persistent")return jsxs(Fragment,{children:[jsx("style",{dangerouslySetInnerHTML:{__html:E}}),jsx(g,{ref:b,className:a("ui-tray-docked","ui-tray-persistent",a$1?.root,a$1?.docked,i),style:{...S},...k,...m,children:T})]});let I=n=>{l?.(n,"backdropClick");};return jsxs(Fragment,{children:[jsx("style",{dangerouslySetInnerHTML:{__html:E}}),jsxs(g,{ref:b,className:a("ui-tray-root",!o&&"ui-tray-root--hidden",a$1?.root,a$1?.modal,i),role:"presentation",style:{...S},...A,...k,...m,children:[!M&&jsx(C,{className:a("ui-tray-backdrop",o&&"ui-tray-backdrop--visible",M&&"ui-tray-backdrop--hidden",a$1?.backdrop),style:{transitionDuration:P},onClick:I,"aria-hidden":"true",...H}),T]})]})});q.displayName="Tray";export{q as a};//# sourceMappingURL=chunk-GSRVWW2G.mjs.map
177
+ //# sourceMappingURL=chunk-GSRVWW2G.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Tray/Tray.tsx"],"names":["STYLES","getElevationStyle","elevation","umbra","penumbra","ambient","resolveSlotProp","slotValue","ownerState","getTransitionDuration","open","transitionDuration","Tray","forwardRef","anchor","children","classes","className","hideBackdrop","ModalProps","onClose","slotProps","slots","sx","variant","rest","ref","paperRef","useRef","isDocked","RootSlot","PaperSlot","BackdropSlot","rootSlotProps","paperSlotProps","backdropSlotProps","handleKeyDown","useCallback","e","useEffect","originalOverflow","resolvedSx","duration","paperClasses","cn","paperStyle","paperElement","jsx","jsxs","Fragment","handleBackdropClick"],"mappings":"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","file":"chunk-GSRVWW2G.mjs","sourcesContent":["'use client';\n\nimport { forwardRef, useEffect, useCallback, useRef, ElementType } from 'react';\nimport { cn } from '../../utils/cn';\nimport { TrayProps, TrayAnchor } from './types';\n\nconst STYLES = `\n /* ---- Tray (Drawer) Root ---- */\n .ui-tray-root {\n position: fixed;\n z-index: 1200;\n inset: 0;\n }\n\n .ui-tray-root--hidden {\n visibility: hidden;\n pointer-events: none;\n }\n\n /* ---- Backdrop ---- */\n .ui-tray-backdrop {\n position: fixed;\n inset: 0;\n z-index: -1;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1);\n -webkit-tap-highlight-color: transparent;\n }\n\n .ui-tray-backdrop--visible {\n opacity: 1;\n }\n\n .ui-tray-backdrop--hidden {\n display: none;\n }\n\n /* ---- Paper (Drawer Surface) ---- */\n .ui-tray-paper {\n position: fixed;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n outline: 0;\n z-index: 1200;\n background-color: #ffffff;\n color: #1e293b;\n transition-property: transform, box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n will-change: transform;\n }\n\n /* Elevation / box-shadow */\n .ui-tray-paper--elevation {\n box-shadow:\n 0px 8px 10px -5px rgba(0,0,0,0.08),\n 0px 16px 24px 2px rgba(0,0,0,0.06),\n 0px 6px 30px 5px rgba(0,0,0,0.04);\n }\n\n /* ---- Anchor: Left ---- */\n .ui-tray-paper--left {\n top: 0;\n left: 0;\n bottom: 0;\n width: 280px;\n max-width: 100%;\n border-right: 1px solid rgba(0, 0, 0, 0.08);\n transform: translateX(-100%);\n }\n\n .ui-tray-paper--left.ui-tray-paper--open {\n transform: translateX(0);\n }\n\n /* ---- Anchor: Right ---- */\n .ui-tray-paper--right {\n top: 0;\n right: 0;\n bottom: 0;\n width: 280px;\n max-width: 100%;\n border-left: 1px solid rgba(0, 0, 0, 0.08);\n transform: translateX(100%);\n }\n\n .ui-tray-paper--right.ui-tray-paper--open {\n transform: translateX(0);\n }\n\n /* ---- Anchor: Top ---- */\n .ui-tray-paper--top {\n top: 0;\n left: 0;\n right: 0;\n height: auto;\n max-height: 100%;\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\n transform: translateY(-100%);\n }\n\n .ui-tray-paper--top.ui-tray-paper--open {\n transform: translateY(0);\n }\n\n /* ---- Anchor: Bottom ---- */\n .ui-tray-paper--bottom {\n bottom: 0;\n left: 0;\n right: 0;\n height: auto;\n max-height: 100%;\n border-top: 1px solid rgba(0, 0, 0, 0.08);\n transform: translateY(100%);\n }\n\n .ui-tray-paper--bottom.ui-tray-paper--open {\n transform: translateY(0);\n }\n\n /* ---- Docked variant (permanent / persistent) ---- */\n .ui-tray-docked {\n position: relative;\n flex-shrink: 0;\n }\n\n .ui-tray-docked .ui-tray-paper {\n position: relative;\n border: none;\n transform: none;\n transition: none;\n box-shadow: none;\n }\n\n .ui-tray-docked .ui-tray-paper--left {\n border-right: 1px solid rgba(0, 0, 0, 0.12);\n }\n\n .ui-tray-docked .ui-tray-paper--right {\n border-left: 1px solid rgba(0, 0, 0, 0.12);\n }\n\n .ui-tray-docked .ui-tray-paper--top {\n border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n }\n\n .ui-tray-docked .ui-tray-paper--bottom {\n border-top: 1px solid rgba(0, 0, 0, 0.12);\n }\n\n /* ---- Persistent: slide in/out ---- */\n .ui-tray-persistent .ui-tray-paper {\n position: relative;\n transition-property: transform, width, height;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .ui-tray-persistent .ui-tray-paper--left,\n .ui-tray-persistent .ui-tray-paper--right {\n width: 0;\n overflow: hidden;\n }\n\n .ui-tray-persistent .ui-tray-paper--left.ui-tray-paper--open,\n .ui-tray-persistent .ui-tray-paper--right.ui-tray-paper--open {\n width: 280px;\n }\n\n .ui-tray-persistent .ui-tray-paper--top,\n .ui-tray-persistent .ui-tray-paper--bottom {\n height: 0;\n overflow: hidden;\n }\n\n .ui-tray-persistent .ui-tray-paper--top.ui-tray-paper--open,\n .ui-tray-persistent .ui-tray-paper--bottom.ui-tray-paper--open {\n height: auto;\n }\n`;\n\n/**\n * Compute elevation box-shadow given a numeric level (0-24).\n */\nfunction getElevationStyle(elevation: number): React.CSSProperties {\n if (elevation <= 0) return {};\n const umbra = Math.min(elevation, 24);\n const penumbra = Math.round(umbra * 1.5);\n const ambient = Math.round(umbra * 0.75);\n return {\n boxShadow: `0px ${Math.round(umbra / 2)}px ${umbra}px -${Math.round(umbra / 3)}px rgba(0,0,0,0.08),\n 0px ${penumbra}px ${penumbra + 8}px 2px rgba(0,0,0,0.06),\n 0px ${ambient}px ${ambient + 24}px ${Math.round(ambient / 2)}px rgba(0,0,0,0.04)`,\n };\n}\n\n/**\n * Resolve a slot prop that can be either an object or a function returning an object.\n */\nfunction resolveSlotProp(\n slotValue: Record<string, any> | ((ownerState: any) => Record<string, any>) | undefined,\n ownerState: any\n): Record<string, any> {\n if (!slotValue) return {};\n if (typeof slotValue === 'function') return slotValue(ownerState);\n return slotValue;\n}\n\n/**\n * Compute inline transition-duration style from the prop.\n */\nfunction getTransitionDuration(\n open: boolean,\n transitionDuration?: number | { appear?: number; enter?: number; exit?: number }\n): string {\n if (typeof transitionDuration === 'number') {\n return `${transitionDuration}ms`;\n }\n if (transitionDuration && typeof transitionDuration === 'object') {\n return open\n ? `${transitionDuration.enter ?? 225}ms`\n : `${transitionDuration.exit ?? 195}ms`;\n }\n return open ? '225ms' : '195ms';\n}\n\nexport const Tray = forwardRef<HTMLDivElement, TrayProps>(\n (\n {\n anchor = 'left',\n children,\n classes,\n className,\n elevation = 16,\n hideBackdrop = false,\n ModalProps = {},\n onClose,\n open = false,\n slotProps = {},\n slots = {},\n sx,\n transitionDuration,\n variant = 'temporary',\n ...rest\n },\n ref\n ) => {\n const paperRef = useRef<HTMLDivElement>(null);\n const isDocked = variant === 'permanent' || variant === 'persistent';\n\n // Owner state for slot prop resolution\n const ownerState = { anchor, elevation, open, variant };\n\n // ---- Slots ----\n const RootSlot: ElementType = slots.root || 'div';\n const PaperSlot: ElementType = slots.paper || 'div';\n const BackdropSlot: ElementType = slots.backdrop || 'div';\n\n // ---- Resolved slot props ----\n const rootSlotProps = resolveSlotProp(slotProps.root, ownerState);\n const paperSlotProps = resolveSlotProp(slotProps.paper, ownerState);\n const backdropSlotProps = resolveSlotProp(slotProps.backdrop, ownerState);\n\n // ---- Escape key handler ----\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === 'Escape' && open && variant === 'temporary') {\n onClose?.(e, 'escapeKeyDown');\n }\n },\n [onClose, open, variant]\n );\n\n useEffect(() => {\n if (open && variant === 'temporary') {\n document.addEventListener('keydown', handleKeyDown);\n return () => document.removeEventListener('keydown', handleKeyDown);\n }\n }, [open, variant, handleKeyDown]);\n\n // ---- Body scroll lock for temporary variant ----\n useEffect(() => {\n if (variant === 'temporary') {\n if (open) {\n const originalOverflow = document.body.style.overflow;\n document.body.style.overflow = 'hidden';\n return () => {\n document.body.style.overflow = originalOverflow;\n };\n }\n }\n }, [open, variant]);\n\n // Resolve sx\n const resolvedSx =\n typeof sx === 'function'\n ? sx({})\n : Array.isArray(sx)\n ? Object.assign({}, ...sx.filter(Boolean))\n : sx;\n\n const duration = getTransitionDuration(open, transitionDuration);\n\n // ---- Paper element ----\n const paperClasses = cn(\n 'ui-tray-paper',\n `ui-tray-paper--${anchor}`,\n open && 'ui-tray-paper--open',\n !isDocked && elevation > 0 && 'ui-tray-paper--elevation',\n classes?.paper\n );\n\n const paperStyle: React.CSSProperties = {\n transitionDuration: isDocked && variant === 'permanent' ? '0ms' : duration,\n ...(elevation > 0 && !isDocked && open ? getElevationStyle(elevation) : {}),\n ...paperSlotProps.style,\n };\n\n const paperElement = (\n <PaperSlot\n ref={paperRef}\n className={paperClasses}\n style={paperStyle}\n tabIndex={-1}\n role={variant === 'temporary' ? 'presentation' : undefined}\n {...paperSlotProps}\n >\n {children}\n </PaperSlot>\n );\n\n // ---- Permanent variant: no modal, always visible ----\n if (variant === 'permanent') {\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <RootSlot\n ref={ref}\n className={cn(\n 'ui-tray-docked',\n classes?.root,\n classes?.docked,\n className\n )}\n style={{ ...resolvedSx }}\n {...rootSlotProps}\n {...rest}\n >\n {paperElement}\n </RootSlot>\n </>\n );\n }\n\n // ---- Persistent variant: docked, slides in/out ----\n if (variant === 'persistent') {\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <RootSlot\n ref={ref}\n className={cn(\n 'ui-tray-docked',\n 'ui-tray-persistent',\n classes?.root,\n classes?.docked,\n className\n )}\n style={{ ...resolvedSx }}\n {...rootSlotProps}\n {...rest}\n >\n {paperElement}\n </RootSlot>\n </>\n );\n }\n\n // ---- Temporary variant: uses modal overlay ----\n const handleBackdropClick = (e: React.MouseEvent) => {\n onClose?.(e, 'backdropClick');\n };\n\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <RootSlot\n ref={ref}\n className={cn(\n 'ui-tray-root',\n !open && 'ui-tray-root--hidden',\n classes?.root,\n classes?.modal,\n className\n )}\n role=\"presentation\"\n style={{ ...resolvedSx }}\n {...ModalProps}\n {...rootSlotProps}\n {...rest}\n >\n {/* Backdrop */}\n {!hideBackdrop && (\n <BackdropSlot\n className={cn(\n 'ui-tray-backdrop',\n open && 'ui-tray-backdrop--visible',\n hideBackdrop && 'ui-tray-backdrop--hidden',\n classes?.backdrop\n )}\n style={{ transitionDuration: duration }}\n onClick={handleBackdropClick}\n aria-hidden=\"true\"\n {...backdropSlotProps}\n />\n )}\n\n {/* Drawer Paper */}\n {paperElement}\n </RootSlot>\n </>\n );\n }\n);\n\nTray.displayName = 'Tray';\n\nexport default Tray;\n"]}
@@ -0,0 +1,72 @@
1
+ 'use strict';var chunkMLURKSJZ_js=require('./chunk-MLURKSJZ.js'),chunkDDGBDWFC_js=require('./chunk-DDGBDWFC.js'),react=require('react'),lucideReact=require('lucide-react'),jsxRuntime=require('react/jsx-runtime');var B=`
2
+ .ui-pagination {
3
+ display: flex;
4
+ flex-wrap: wrap;
5
+ align-items: center;
6
+ padding: 0;
7
+ margin: 0;
8
+ list-style: none;
9
+ }
10
+
11
+ .ui-pagination-item {
12
+ display: flex;
13
+ align-items: center;
14
+ justify-content: center;
15
+ min-width: 32px;
16
+ height: 32px;
17
+ padding: 0 6px;
18
+ margin: 0 3px;
19
+ font-family: 'Inter', system-ui, -apple-system, sans-serif;
20
+ font-size: 14px;
21
+ font-weight: 500;
22
+ color: #334155;
23
+ background: transparent;
24
+ border: none;
25
+ cursor: pointer;
26
+ transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
27
+ outline: none;
28
+ user-select: none;
29
+ }
30
+
31
+ .ui-pagination-item--circular { border-radius: 50%; }
32
+ .ui-pagination-item--rounded { border-radius: 8px; }
33
+
34
+ /* Sizes */
35
+ .ui-pagination--small .ui-pagination-item { min-width: 26px; height: 26px; font-size: 13px; }
36
+ .ui-pagination--large .ui-pagination-item { min-width: 40px; height: 40px; font-size: 16px; }
37
+
38
+ /* Hover */
39
+ .ui-pagination-item:hover:not(.ui-pagination-item--selected):not(.ui-pagination-item--disabled):not(.ui-pagination-item--ellipsis) {
40
+ background-color: rgba(0, 0, 0, 0.04);
41
+ }
42
+
43
+ /* Selected State */
44
+ .ui-pagination-item--selected {
45
+ cursor: default;
46
+ }
47
+
48
+ /* Variants & Colors */
49
+ /* Text Variant */
50
+ .ui-pagination--text .ui-pagination-item--selected.ui-pagination--primary { background-color: #3b82f6; color: white; }
51
+ .ui-pagination--text .ui-pagination-item--selected.ui-pagination--secondary { background-color: #6366f1; color: white; }
52
+ .ui-pagination--text .ui-pagination-item--selected.ui-pagination--standard { background-color: rgba(0, 0, 0, 0.08); color: #334155; }
53
+
54
+ /* Outlined Variant */
55
+ .ui-pagination--outlined .ui-pagination-item {
56
+ border: 1px solid #e2e8f0;
57
+ }
58
+ .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--primary { border-color: #3b82f6; color: #3b82f6; background: rgba(59, 130, 246, 0.08); }
59
+ .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--secondary { border-color: #6366f1; color: #6366f1; background: rgba(99, 102, 241, 0.08); }
60
+ .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--standard { border-color: #cbd5e1; background: rgba(0, 0, 0, 0.08); }
61
+
62
+ /* Disabled State */
63
+ .ui-pagination-item--disabled {
64
+ opacity: 0.38;
65
+ cursor: default;
66
+ }
67
+
68
+ .ui-pagination-item--ellipsis {
69
+ cursor: default;
70
+ }
71
+ `,F=react.forwardRef(({count:a=1,page:u,defaultPage:y=1,onChange:x,color:z="primary",variant:v="text",shape:S="circular",size:w="medium",hideNextButton:M=false,hidePrevButton:L=false,showFirstButton:P=false,showLastButton:E=false,disabled:g=false,boundaryCount:t=1,siblingCount:c=1,className:H,style:N,sx:T,...$},I)=>{let[r,b]=react.useState(u||y);react.useEffect(()=>{u!==void 0&&b(u);},[u]);let f=(i,o)=>{g||(u===void 0&&b(o),x&&x(i,o));},d=(i,o)=>{let n=o-i+1;return Array.from({length:n},(s,e)=>i+e)},R=()=>{let i=d(1,Math.min(t,a)),o=d(Math.max(a-t+1,t+1),a),n=Math.max(Math.min(r-c,a-t-c*2-1),t+2),s=Math.min(Math.max(r+c,t+c*2+2),o.length>0?o[0]-2:a-1),e=[];return P&&e.push("first"),L||e.push("previous"),e.push(...i),n>t+2?e.push("start-ellipsis"):t+1<a-t&&e.push(t+1),e.push(...d(n,s)),s<a-t-1?e.push("end-ellipsis"):a-t>t&&e.push(a-t),e.push(...o),M||e.push("next"),E&&e.push("last"),e};return jsxRuntime.jsxs("nav",{ref:I,className:chunkDDGBDWFC_js.a("ui-pagination-root",`ui-pagination--${w}`,`ui-pagination--${v}`,H),style:{...chunkMLURKSJZ_js.a(T),...N},...$,children:[jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:B}}),jsxRuntime.jsx("ul",{className:"ui-pagination",children:R().map((i,o)=>{let n=i,s=g,e=false,m=l=>f(l,i);return i==="first"?(n=jsxRuntime.jsx(lucideReact.ChevronsLeft,{size:18}),s=g||r<=1,m=l=>f(l,1)):i==="previous"?(n=jsxRuntime.jsx(lucideReact.ChevronLeft,{size:18}),s=g||r<=1,m=l=>f(l,r-1)):i==="next"?(n=jsxRuntime.jsx(lucideReact.ChevronRight,{size:18}),s=g||r>=a,m=l=>f(l,r+1)):i==="last"?(n=jsxRuntime.jsx(lucideReact.ChevronsRight,{size:18}),s=g||r>=a,m=l=>f(l,a)):i==="start-ellipsis"||i==="end-ellipsis"?(n=jsxRuntime.jsx(lucideReact.MoreHorizontal,{size:18}),s=true):e=i===r,jsxRuntime.jsx("li",{children:jsxRuntime.jsx("button",{type:"button",disabled:s,onClick:m,className:chunkDDGBDWFC_js.a("ui-pagination-item",`ui-pagination-item--${S}`,`ui-pagination--${z}`,e&&"ui-pagination-item--selected",s&&"ui-pagination-item--disabled",(i==="start-ellipsis"||i==="end-ellipsis")&&"ui-pagination-item--ellipsis"),children:n})},o)})})]})});F.displayName="Pagination";exports.a=F;//# sourceMappingURL=chunk-GZGTDLFV.js.map
72
+ //# sourceMappingURL=chunk-GZGTDLFV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Pagination/Pagination.tsx"],"names":["STYLES","Pagination","forwardRef","count","pageProp","defaultPage","onChange","color","variant","shape","size","hideNextButton","hidePrevButton","showFirstButton","showLastButton","disabled","boundaryCount","siblingCount","className","style","sx","props","ref","page","setPage","useState","useEffect","handlePageChange","event","value","range","start","end","length","_","i","itemList","startPages","endPages","siblingsStart","siblingsEnd","items","jsxs","cn","handleSx","jsx","item","index","content","disabledItem","selected","onClick","e","ChevronsLeft","ChevronLeft","ChevronRight","ChevronsRight","MoreHorizontal"],"mappings":"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","file":"chunk-GZGTDLFV.js","sourcesContent":["'use client';\n\nimport { forwardRef, useState, useEffect } from 'react';\nimport { cn } from '../../utils/cn';\nimport { handleSx } from '../../utils/handleSx';\nimport { PaginationProps } from './Pagination.types';\nimport { ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight, MoreHorizontal } from 'lucide-react';\n\nconst STYLES = `\n .ui-pagination {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n padding: 0;\n margin: 0;\n list-style: none;\n }\n\n .ui-pagination-item {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 32px;\n height: 32px;\n padding: 0 6px;\n margin: 0 3px;\n font-family: 'Inter', system-ui, -apple-system, sans-serif;\n font-size: 14px;\n font-weight: 500;\n color: #334155;\n background: transparent;\n border: none;\n cursor: pointer;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n outline: none;\n user-select: none;\n }\n\n .ui-pagination-item--circular { border-radius: 50%; }\n .ui-pagination-item--rounded { border-radius: 8px; }\n\n /* Sizes */\n .ui-pagination--small .ui-pagination-item { min-width: 26px; height: 26px; font-size: 13px; }\n .ui-pagination--large .ui-pagination-item { min-width: 40px; height: 40px; font-size: 16px; }\n\n /* Hover */\n .ui-pagination-item:hover:not(.ui-pagination-item--selected):not(.ui-pagination-item--disabled):not(.ui-pagination-item--ellipsis) {\n background-color: rgba(0, 0, 0, 0.04);\n }\n\n /* Selected State */\n .ui-pagination-item--selected {\n cursor: default;\n }\n\n /* Variants & Colors */\n /* Text Variant */\n .ui-pagination--text .ui-pagination-item--selected.ui-pagination--primary { background-color: #3b82f6; color: white; }\n .ui-pagination--text .ui-pagination-item--selected.ui-pagination--secondary { background-color: #6366f1; color: white; }\n .ui-pagination--text .ui-pagination-item--selected.ui-pagination--standard { background-color: rgba(0, 0, 0, 0.08); color: #334155; }\n\n /* Outlined Variant */\n .ui-pagination--outlined .ui-pagination-item {\n border: 1px solid #e2e8f0;\n }\n .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--primary { border-color: #3b82f6; color: #3b82f6; background: rgba(59, 130, 246, 0.08); }\n .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--secondary { border-color: #6366f1; color: #6366f1; background: rgba(99, 102, 241, 0.08); }\n .ui-pagination--outlined .ui-pagination-item--selected.ui-pagination--standard { border-color: #cbd5e1; background: rgba(0, 0, 0, 0.08); }\n\n /* Disabled State */\n .ui-pagination-item--disabled {\n opacity: 0.38;\n cursor: default;\n }\n\n .ui-pagination-item--ellipsis {\n cursor: default;\n }\n`;\n\nexport const Pagination = forwardRef<HTMLDivElement, PaginationProps>(\n (\n {\n count = 1,\n page: pageProp,\n defaultPage = 1,\n onChange,\n color = 'primary',\n variant = 'text',\n shape = 'circular',\n size = 'medium',\n hideNextButton = false,\n hidePrevButton = false,\n showFirstButton = false,\n showLastButton = false,\n disabled = false,\n boundaryCount = 1,\n siblingCount = 1,\n className,\n style,\n sx,\n ...props\n },\n ref\n ) => {\n const [page, setPage] = useState(pageProp || defaultPage);\n\n useEffect(() => {\n if (pageProp !== undefined) {\n setPage(pageProp);\n }\n }, [pageProp]);\n\n const handlePageChange = (event: any, value: number) => {\n if (disabled) return;\n if (pageProp === undefined) {\n setPage(value);\n }\n if (onChange) {\n onChange(event, value);\n }\n };\n\n const range = (start: number, end: number) => {\n const length = end - start + 1;\n return Array.from({ length }, (_, i) => start + i);\n };\n\n const itemList = () => {\n const startPages = range(1, Math.min(boundaryCount, count));\n const endPages = range(Math.max(count - boundaryCount + 1, boundaryCount + 1), count);\n\n const siblingsStart = Math.max(\n Math.min(\n page - siblingCount,\n count - boundaryCount - siblingCount * 2 - 1,\n ),\n boundaryCount + 2,\n );\n\n const siblingsEnd = Math.min(\n Math.max(\n page + siblingCount,\n boundaryCount + siblingCount * 2 + 2,\n ),\n endPages.length > 0 ? endPages[0] - 2 : count - 1,\n );\n\n const items: any[] = [];\n\n // First Page\n if (showFirstButton) items.push('first');\n // Previous Page\n if (!hidePrevButton) items.push('previous');\n\n // Start Pages\n items.push(...startPages);\n\n // Start Ellipsis\n if (siblingsStart > boundaryCount + 2) {\n items.push('start-ellipsis');\n } else if (boundaryCount + 1 < count - boundaryCount) {\n items.push(boundaryCount + 1);\n }\n\n // Sibling Pages\n items.push(...range(siblingsStart, siblingsEnd));\n\n // End Ellipsis\n if (siblingsEnd < count - boundaryCount - 1) {\n items.push('end-ellipsis');\n } else if (count - boundaryCount > boundaryCount) {\n items.push(count - boundaryCount);\n }\n\n // End Pages\n items.push(...endPages);\n\n // Next Page\n if (!hideNextButton) items.push('next');\n // Last Page\n if (showLastButton) items.push('last');\n\n return items;\n };\n\n return (\n <nav\n ref={ref}\n className={cn(\n 'ui-pagination-root',\n `ui-pagination--${size}`,\n `ui-pagination--${variant}`,\n className\n )}\n style={{ ...handleSx(sx), ...style }}\n {...props}\n >\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <ul className=\"ui-pagination\">\n {itemList().map((item, index) => {\n let content: any = item;\n let disabledItem = disabled;\n let selected = false;\n let onClick = (e: any) => handlePageChange(e, item);\n\n if (item === 'first') {\n content = <ChevronsLeft size={18} />;\n disabledItem = disabled || page <= 1;\n onClick = (e) => handlePageChange(e, 1);\n } else if (item === 'previous') {\n content = <ChevronLeft size={18} />;\n disabledItem = disabled || page <= 1;\n onClick = (e) => handlePageChange(e, page - 1);\n } else if (item === 'next') {\n content = <ChevronRight size={18} />;\n disabledItem = disabled || page >= count;\n onClick = (e) => handlePageChange(e, page + 1);\n } else if (item === 'last') {\n content = <ChevronsRight size={18} />;\n disabledItem = disabled || page >= count;\n onClick = (e) => handlePageChange(e, count);\n } else if (item === 'start-ellipsis' || item === 'end-ellipsis') {\n content = <MoreHorizontal size={18} />;\n disabledItem = true;\n } else {\n selected = item === page;\n }\n\n return (\n <li key={index}>\n <button\n type=\"button\"\n disabled={disabledItem}\n onClick={onClick}\n className={cn(\n 'ui-pagination-item',\n `ui-pagination-item--${shape}`,\n `ui-pagination--${color}`,\n selected && 'ui-pagination-item--selected',\n disabledItem && 'ui-pagination-item--disabled',\n (item === 'start-ellipsis' || item === 'end-ellipsis') && 'ui-pagination-item--ellipsis'\n )}\n >\n {content}\n </button>\n </li>\n );\n })}\n </ul>\n </nav>\n );\n }\n);\n\nPagination.displayName = 'Pagination';\n"]}
@@ -0,0 +1,2 @@
1
+ var e=r=>typeof r=="object"&&!Array.isArray(r)&&r!==null?r:{};export{e as a};//# sourceMappingURL=chunk-HGGQFNUJ.mjs.map
2
+ //# sourceMappingURL=chunk-HGGQFNUJ.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/handleSx.ts"],"names":["handleSx","sx"],"mappings":"AAMO,IAAMA,CAAAA,CAAYC,CAAAA,EACnB,OAAOA,CAAAA,EAAO,QAAA,EAAY,CAAC,KAAA,CAAM,OAAA,CAAQA,CAAE,CAAA,EAAKA,CAAAA,GAAO,IAAA,CAClDA,EAEF","file":"chunk-HGGQFNUJ.mjs","sourcesContent":["import { CSSProperties } from 'react';\n\n/**\n * Utility to handle the sx prop, ensuring it returns a valid style object.\n * Currently supports standard CSS properties.\n */\nexport const handleSx = (sx: any): CSSProperties => {\n if (typeof sx === 'object' && !Array.isArray(sx) && sx !== null) {\n return sx as CSSProperties;\n }\n return {};\n};\n"]}
@@ -0,0 +1,129 @@
1
+ 'use strict';var chunkMLURKSJZ_js=require('./chunk-MLURKSJZ.js'),chunkDDGBDWFC_js=require('./chunk-DDGBDWFC.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var k=`
2
+ .ui-circular-progress {
3
+ display: inline-block;
4
+ color: #3b82f6;
5
+ animation: ui-circular-rotate 1.4s linear infinite;
6
+ }
7
+
8
+ .ui-circular-progress--determinate {
9
+ animation: none;
10
+ transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
11
+ }
12
+
13
+ .ui-circular-progress--primary { color: #3b82f6; }
14
+ .ui-circular-progress--secondary { color: #6366f1; }
15
+ .ui-circular-progress--error { color: #ef4444; }
16
+ .ui-circular-progress--info { color: #0ea5e9; }
17
+ .ui-circular-progress--success { color: #10b981; }
18
+ .ui-circular-progress--warning { color: #f59e0b; }
19
+ .ui-circular-progress--inherit { color: inherit; }
20
+
21
+ .ui-circular-circle {
22
+ stroke: currentColor;
23
+ stroke-linecap: round;
24
+ transition: stroke-dashoffset 300ms cubic-bezier(0.4, 0, 0.2, 1);
25
+ }
26
+
27
+ .ui-circular-progress--indeterminate .ui-circular-circle {
28
+ animation: ui-circular-dash 1.4s ease-in-out infinite;
29
+ stroke-dasharray: 80px, 200px;
30
+ stroke-dashoffset: 0;
31
+ }
32
+
33
+ @keyframes ui-circular-rotate {
34
+ 0% { transform: rotate(0deg); }
35
+ 100% { transform: rotate(360deg); }
36
+ }
37
+
38
+ @keyframes ui-circular-dash {
39
+ 0% {
40
+ stroke-dasharray: 1px, 200px;
41
+ stroke-dashoffset: 0;
42
+ }
43
+ 50% {
44
+ stroke-dasharray: 100px, 200px;
45
+ stroke-dashoffset: -15px;
46
+ }
47
+ 100% {
48
+ stroke-dasharray: 100px, 200px;
49
+ stroke-dashoffset: -125px;
50
+ }
51
+ }
52
+ `,x=react.forwardRef(({color:t="primary",variant:r="indeterminate",value:e=0,size:o=40,thickness:i=3.6,className:l,style:c,sx:u,...d},m)=>{let b={width:o,height:o,...chunkMLURKSJZ_js.a(u),...c},g=2*Math.PI*((44-i)/2),y=g-e/100*g;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:k}}),jsxRuntime.jsx("div",{ref:m,className:chunkDDGBDWFC_js.a("ui-circular-progress",`ui-circular-progress--${r}`,`ui-circular-progress--${t}`,l),style:b,role:"progressbar","aria-valuenow":r==="determinate"?Math.round(e):void 0,...d,children:jsxRuntime.jsx("svg",{viewBox:"22 22 44 44",style:{display:"block"},children:jsxRuntime.jsx("circle",{className:"ui-circular-circle",cx:"44",cy:"44",r:(44-i)/2,fill:"none",strokeWidth:i,style:r==="determinate"?{strokeDasharray:g.toFixed(3),strokeDashoffset:y.toFixed(3)}:{}})})})]})});x.displayName="CircularProgress";var S=`
53
+ .ui-linear-progress {
54
+ position: relative;
55
+ overflow: hidden;
56
+ display: block;
57
+ height: 4px;
58
+ z-index: 0;
59
+ background-color: rgba(59, 130, 246, 0.2);
60
+ border-radius: 4px;
61
+ }
62
+
63
+ .ui-linear-progress--primary { background-color: rgba(59, 130, 246, 0.2); }
64
+ .ui-linear-progress--secondary { background-color: rgba(99, 102, 241, 0.2); }
65
+ .ui-linear-progress--error { background-color: rgba(239, 104, 104, 0.2); }
66
+ .ui-linear-progress--info { background-color: rgba(14, 165, 233, 0.2); }
67
+ .ui-linear-progress--success { background-color: rgba(16, 185, 129, 0.2); }
68
+ .ui-linear-progress--warning { background-color: rgba(245, 158, 11, 0.2); }
69
+
70
+ .ui-linear-bar {
71
+ width: 100%;
72
+ position: absolute;
73
+ left: 0;
74
+ bottom: 0;
75
+ top: 0;
76
+ transition: transform 0.4s linear;
77
+ transform-origin: left;
78
+ background-color: #3b82f6;
79
+ }
80
+
81
+ .ui-linear-progress--primary .ui-linear-bar { background-color: #3b82f6; }
82
+ .ui-linear-progress--secondary .ui-linear-bar { background-color: #6366f1; }
83
+ .ui-linear-progress--error .ui-linear-bar { background-color: #ef4444; }
84
+ .ui-linear-progress--info .ui-linear-bar { background-color: #0ea5e9; }
85
+ .ui-linear-progress--success .ui-linear-bar { background-color: #10b981; }
86
+ .ui-linear-progress--warning .ui-linear-bar { background-color: #f59e0b; }
87
+
88
+ .ui-linear-progress--indeterminate .ui-linear-bar {
89
+ width: auto;
90
+ animation: ui-linear-indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
91
+ }
92
+
93
+ @keyframes ui-linear-indeterminate {
94
+ 0% {
95
+ left: -35%;
96
+ right: 100%;
97
+ }
98
+ 60% {
99
+ left: 100%;
100
+ right: -90%;
101
+ }
102
+ 100% {
103
+ left: 100%;
104
+ right: -90%;
105
+ }
106
+ }
107
+
108
+ .ui-linear-progress--indeterminate .ui-linear-bar-secondary {
109
+ display: block;
110
+ animation: ui-linear-indeterminate-secondary 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
111
+ animation-delay: 1.15s;
112
+ }
113
+
114
+ @keyframes ui-linear-indeterminate-secondary {
115
+ 0% {
116
+ left: -200%;
117
+ right: 100%;
118
+ }
119
+ 60% {
120
+ left: 107%;
121
+ right: -8%;
122
+ }
123
+ 100% {
124
+ left: 107%;
125
+ right: -8%;
126
+ }
127
+ }
128
+ `,v=react.forwardRef(({color:t="primary",variant:r="indeterminate",value:e=0,className:o,style:i,sx:l,...c},u)=>{let d=r==="determinate"?`scaleX(${e/100})`:void 0;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:S}}),jsxRuntime.jsxs("div",{ref:u,className:chunkDDGBDWFC_js.a("ui-linear-progress",`ui-linear-progress--${r}`,`ui-linear-progress--${t}`,o),style:{...chunkMLURKSJZ_js.a(l),...i},role:"progressbar","aria-valuenow":r==="determinate"?Math.round(e):void 0,...c,children:[jsxRuntime.jsx("div",{className:"ui-linear-bar",style:{transform:d}}),r==="indeterminate"&&jsxRuntime.jsx("div",{className:"ui-linear-bar ui-linear-bar-secondary"})]})]})});v.displayName="LinearProgress";exports.a=x;exports.b=v;//# sourceMappingURL=chunk-HWD2HCCH.js.map
129
+ //# sourceMappingURL=chunk-HWD2HCCH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Progress/CircularProgress.tsx","../src/components/Progress/LinearProgress.tsx"],"names":["STYLES","CircularProgress","forwardRef","color","variant","value","size","thickness","className","style","sx","props","ref","rootStyle","handleSx","circumference","offset","jsxs","Fragment","jsx","cn","LinearProgress","transform"],"mappings":"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","file":"chunk-HWD2HCCH.js","sourcesContent":["'use client';\n\nimport { forwardRef } from 'react';\nimport { cn } from '../../utils/cn';\nimport { handleSx } from '../../utils/handleSx';\nimport { CircularProgressProps } from './Progress.types';\n\nconst STYLES = `\n .ui-circular-progress {\n display: inline-block;\n color: #3b82f6;\n animation: ui-circular-rotate 1.4s linear infinite;\n }\n\n .ui-circular-progress--determinate {\n animation: none;\n transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .ui-circular-progress--primary { color: #3b82f6; }\n .ui-circular-progress--secondary { color: #6366f1; }\n .ui-circular-progress--error { color: #ef4444; }\n .ui-circular-progress--info { color: #0ea5e9; }\n .ui-circular-progress--success { color: #10b981; }\n .ui-circular-progress--warning { color: #f59e0b; }\n .ui-circular-progress--inherit { color: inherit; }\n\n .ui-circular-circle {\n stroke: currentColor;\n stroke-linecap: round;\n transition: stroke-dashoffset 300ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .ui-circular-progress--indeterminate .ui-circular-circle {\n animation: ui-circular-dash 1.4s ease-in-out infinite;\n stroke-dasharray: 80px, 200px;\n stroke-dashoffset: 0;\n }\n\n @keyframes ui-circular-rotate {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n\n @keyframes ui-circular-dash {\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n }\n`;\n\nexport const CircularProgress = forwardRef<HTMLDivElement, CircularProgressProps>(\n (\n {\n color = 'primary',\n variant = 'indeterminate',\n value = 0,\n size = 40,\n thickness = 3.6,\n className,\n style,\n sx,\n ...props\n },\n ref\n ) => {\n const rootStyle = {\n width: size,\n height: size,\n ...handleSx(sx),\n ...style,\n };\n\n const circumference = 2 * Math.PI * ((44 - thickness) / 2);\n const offset = circumference - (value / 100) * circumference;\n\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <div\n ref={ref}\n className={cn(\n 'ui-circular-progress',\n `ui-circular-progress--${variant}`,\n `ui-circular-progress--${color}`,\n className\n )}\n style={rootStyle}\n role=\"progressbar\"\n aria-valuenow={variant === 'determinate' ? Math.round(value) : undefined}\n {...props}\n >\n <svg viewBox=\"22 22 44 44\" style={{ display: 'block' }}>\n <circle\n className=\"ui-circular-circle\"\n cx=\"44\"\n cy=\"44\"\n r={(44 - thickness) / 2}\n fill=\"none\"\n strokeWidth={thickness}\n style={\n variant === 'determinate'\n ? {\n strokeDasharray: circumference.toFixed(3),\n strokeDashoffset: offset.toFixed(3),\n }\n : {}\n }\n />\n </svg>\n </div>\n </>\n );\n }\n);\n\nCircularProgress.displayName = 'CircularProgress';\n","'use client';\n\nimport { forwardRef } from 'react';\nimport { cn } from '../../utils/cn';\nimport { handleSx } from '../../utils/handleSx';\nimport { LinearProgressProps } from './Progress.types';\n\nconst STYLES = `\n .ui-linear-progress {\n position: relative;\n overflow: hidden;\n display: block;\n height: 4px;\n z-index: 0;\n background-color: rgba(59, 130, 246, 0.2);\n border-radius: 4px;\n }\n\n .ui-linear-progress--primary { background-color: rgba(59, 130, 246, 0.2); }\n .ui-linear-progress--secondary { background-color: rgba(99, 102, 241, 0.2); }\n .ui-linear-progress--error { background-color: rgba(239, 104, 104, 0.2); }\n .ui-linear-progress--info { background-color: rgba(14, 165, 233, 0.2); }\n .ui-linear-progress--success { background-color: rgba(16, 185, 129, 0.2); }\n .ui-linear-progress--warning { background-color: rgba(245, 158, 11, 0.2); }\n\n .ui-linear-bar {\n width: 100%;\n position: absolute;\n left: 0;\n bottom: 0;\n top: 0;\n transition: transform 0.4s linear;\n transform-origin: left;\n background-color: #3b82f6;\n }\n\n .ui-linear-progress--primary .ui-linear-bar { background-color: #3b82f6; }\n .ui-linear-progress--secondary .ui-linear-bar { background-color: #6366f1; }\n .ui-linear-progress--error .ui-linear-bar { background-color: #ef4444; }\n .ui-linear-progress--info .ui-linear-bar { background-color: #0ea5e9; }\n .ui-linear-progress--success .ui-linear-bar { background-color: #10b981; }\n .ui-linear-progress--warning .ui-linear-bar { background-color: #f59e0b; }\n\n .ui-linear-progress--indeterminate .ui-linear-bar {\n width: auto;\n animation: ui-linear-indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n\n @keyframes ui-linear-indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n\n .ui-linear-progress--indeterminate .ui-linear-bar-secondary {\n display: block;\n animation: ui-linear-indeterminate-secondary 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n animation-delay: 1.15s;\n }\n\n @keyframes ui-linear-indeterminate-secondary {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n`;\n\nexport const LinearProgress = forwardRef<HTMLDivElement, LinearProgressProps>(\n (\n {\n color = 'primary',\n variant = 'indeterminate',\n value = 0,\n className,\n style,\n sx,\n ...props\n },\n ref\n ) => {\n const transform = variant === 'determinate' ? `scaleX(${value / 100})` : undefined;\n\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <div\n ref={ref}\n className={cn(\n 'ui-linear-progress',\n `ui-linear-progress--${variant}`,\n `ui-linear-progress--${color}`,\n className\n )}\n style={{ ...handleSx(sx), ...style }}\n role=\"progressbar\"\n aria-valuenow={variant === 'determinate' ? Math.round(value) : undefined}\n {...props}\n >\n <div\n className=\"ui-linear-bar\"\n style={{ transform }}\n />\n {variant === 'indeterminate' && (\n <div className=\"ui-linear-bar ui-linear-bar-secondary\" />\n )}\n </div>\n </>\n );\n }\n);\n\nLinearProgress.displayName = 'LinearProgress';\n"]}
@@ -0,0 +1,2 @@
1
+ import {a}from'./chunk-547MQ4FI.mjs';import {forwardRef}from'react';import {jsx}from'react/jsx-runtime';var f={p:"padding",pt:"paddingTop",pr:"paddingRight",pb:"paddingBottom",pl:"paddingLeft",px:["paddingLeft","paddingRight"],py:["paddingTop","paddingBottom"],m:"margin",mt:"marginTop",mr:"marginRight",mb:"marginBottom",ml:"marginLeft",mx:["marginLeft","marginRight"],my:["marginTop","marginBottom"],bgcolor:"backgroundColor"},g=o=>{if(!o||typeof o!="object")return o;let t={};return Object.keys(o).forEach(e=>{let r=o[e],n=f[e];n?Array.isArray(n)?n.forEach(i=>{t[i]=r;}):t[n]=r:t[e]=r;}),t},s=o=>{if(!o)return {};let t={};return typeof o=="function"?t=o({}):Array.isArray(o)?t=o.reduce((e,r)=>!r||typeof r=="boolean"?e:typeof r=="function"?{...e,...r({})}:{...e,...r},{}):t=o,g(t)},l=forwardRef(({component:o,sx:t,className:e,children:r,...n},i)=>{let p=o||"div",m=s(t);return jsx(p,{ref:i,className:a("ui-box",e),style:m,...n,children:r})});l.displayName="Box";export{l as a};//# sourceMappingURL=chunk-I6OJHQZX.mjs.map
2
+ //# sourceMappingURL=chunk-I6OJHQZX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Box/Box.tsx"],"names":["shorthandMap","resolveShorthands","style","resolved","key","value","target","t","resolveSx","sx","rawStyle","acc","curr","Box","forwardRef","component","className","children","props","ref","Component","jsx","cn"],"mappings":"wGAMA,IAAMA,CAAAA,CAAkD,CACtD,CAAA,CAAG,SAAA,CACH,EAAA,CAAI,aACJ,EAAA,CAAI,cAAA,CACJ,EAAA,CAAI,eAAA,CACJ,EAAA,CAAI,aAAA,CACJ,GAAI,CAAC,aAAA,CAAe,cAAc,CAAA,CAClC,EAAA,CAAI,CAAC,aAAc,eAAe,CAAA,CAClC,CAAA,CAAG,QAAA,CACH,EAAA,CAAI,WAAA,CACJ,GAAI,aAAA,CACJ,EAAA,CAAI,cAAA,CACJ,EAAA,CAAI,YAAA,CACJ,EAAA,CAAI,CAAC,YAAA,CAAc,aAAa,CAAA,CAChC,EAAA,CAAI,CAAC,WAAA,CAAa,cAAc,CAAA,CAChC,OAAA,CAAS,iBACX,CAAA,CAKMC,CAAAA,CAAqBC,CAAAA,EAAoC,CAC7D,GAAI,CAACA,CAAAA,EAAS,OAAOA,CAAAA,EAAU,QAAA,CAAU,OAAOA,CAAAA,CAEhD,IAAMC,CAAAA,CAAgB,EAAC,CACvB,OAAA,MAAA,CAAO,KAAKD,CAAK,CAAA,CAAE,OAAA,CAASE,CAAAA,EAAQ,CAClC,IAAMC,EAAQH,CAAAA,CAAME,CAAG,CAAA,CACjBE,CAAAA,CAASN,CAAAA,CAAaI,CAAG,EAE3BE,CAAAA,CACE,KAAA,CAAM,OAAA,CAAQA,CAAM,CAAA,CACtBA,CAAAA,CAAO,QAASC,CAAAA,EAAM,CACpBJ,CAAAA,CAASI,CAAC,CAAA,CAAIF,EAChB,CAAC,CAAA,CAEDF,CAAAA,CAASG,CAAM,CAAA,CAAID,CAAAA,CAGrBF,CAAAA,CAASC,CAAG,CAAA,CAAIC,EAEpB,CAAC,CAAA,CACMF,CACT,CAAA,CAKMK,EAAaC,CAAAA,EAAgD,CACjE,GAAI,CAACA,CAAAA,CAAI,OAAO,EAAC,CAEjB,IAAIC,CAAAA,CAAgB,EAAC,CAErB,OAAI,OAAOD,CAAAA,EAAO,UAAA,CAChBC,CAAAA,CAAWD,CAAAA,CAAG,EAAE,EACP,KAAA,CAAM,OAAA,CAAQA,CAAE,CAAA,CACzBC,CAAAA,CAAWD,CAAAA,CAAG,OAAO,CAACE,CAAAA,CAAKC,CAAAA,GACrB,CAACA,CAAAA,EAAQ,OAAOA,GAAS,SAAA,CAAkBD,CAAAA,CAC3C,OAAOC,CAAAA,EAAS,UAAA,CACX,CAAE,GAAGD,CAAAA,CAAK,GAAGC,CAAAA,CAAK,EAAE,CAAE,EAExB,CAAE,GAAGD,CAAAA,CAAK,GAAGC,CAAK,CAAA,CACxB,EAAS,CAAA,CAEZF,CAAAA,CAAWD,CAAAA,CAGNR,CAAAA,CAAkBS,CAAQ,CACnC,CAAA,CAMaG,CAAAA,CAAMC,UAAAA,CAAW,CAC5B,CAAE,SAAA,CAAAC,EAAW,EAAA,CAAAN,CAAAA,CAAI,SAAA,CAAAO,CAAAA,CAAW,QAAA,CAAAC,CAAAA,CAAU,GAAGC,CAAM,CAAA,CAC/CC,CAAAA,GACG,CACH,IAAMC,CAAAA,CAAYL,GAAa,KAAA,CACzBb,CAAAA,CAAQM,CAAAA,CAAUC,CAAE,CAAA,CAE1B,OACEY,IAACD,CAAAA,CAAA,CACC,GAAA,CAAKD,CAAAA,CACL,SAAA,CAAWG,CAAAA,CAAG,SAAUN,CAAS,CAAA,CACjC,KAAA,CAAOd,CAAAA,CACN,GAAGgB,CAAAA,CAEH,QAAA,CAAAD,CAAAA,CACH,CAEJ,CAAC,EAEDJ,CAAAA,CAAI,WAAA,CAAc,KAAA","file":"chunk-I6OJHQZX.mjs","sourcesContent":["'use client';\n\nimport { forwardRef, ElementType } from 'react';\nimport { cn } from '../../utils/cn';\nimport { BoxProps, SxProp } from './types';\n\nconst shorthandMap: Record<string, string | string[]> = {\n p: 'padding',\n pt: 'paddingTop',\n pr: 'paddingRight',\n pb: 'paddingBottom',\n pl: 'paddingLeft',\n px: ['paddingLeft', 'paddingRight'],\n py: ['paddingTop', 'paddingBottom'],\n m: 'margin',\n mt: 'marginTop',\n mr: 'marginRight',\n mb: 'marginBottom',\n ml: 'marginLeft',\n mx: ['marginLeft', 'marginRight'],\n my: ['marginTop', 'marginBottom'],\n bgcolor: 'backgroundColor',\n};\n\n/**\n * Resolve shorthands in a style object.\n */\nconst resolveShorthands = (style: any): React.CSSProperties => {\n if (!style || typeof style !== 'object') return style;\n \n const resolved: any = {};\n Object.keys(style).forEach((key) => {\n const value = style[key];\n const target = shorthandMap[key];\n \n if (target) {\n if (Array.isArray(target)) {\n target.forEach((t) => {\n resolved[t] = value;\n });\n } else {\n resolved[target] = value;\n }\n } else {\n resolved[key] = value;\n }\n });\n return resolved;\n};\n\n/**\n * Resolve the sx prop into a React.CSSProperties object.\n */\nconst resolveSx = (sx: SxProp | undefined): React.CSSProperties => {\n if (!sx) return {};\n\n let rawStyle: any = {};\n\n if (typeof sx === 'function') {\n rawStyle = sx({});\n } else if (Array.isArray(sx)) {\n rawStyle = sx.reduce((acc, curr) => {\n if (!curr || typeof curr === 'boolean') return acc;\n if (typeof curr === 'function') {\n return { ...acc, ...curr({}) };\n }\n return { ...acc, ...curr };\n }, {} as any);\n } else {\n rawStyle = sx;\n }\n\n return resolveShorthands(rawStyle);\n};\n\n/**\n * Box is a basic building block component that provides a way to render any HTML element\n * and apply styles using the sx prop.\n */\nexport const Box = forwardRef(<T extends ElementType = 'div'>(\n { component, sx, className, children, ...props }: BoxProps<T>,\n ref: any\n) => {\n const Component = component || 'div';\n const style = resolveSx(sx);\n\n return (\n <Component\n ref={ref}\n className={cn('ui-box', className)}\n style={style}\n {...props}\n >\n {children}\n </Component>\n );\n});\n\nBox.displayName = 'Box';\n\nexport default Box;\n"]}
@@ -0,0 +1,42 @@
1
+ 'use strict';var chunkDDGBDWFC_js=require('./chunk-DDGBDWFC.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var h={p:"padding",pt:"paddingTop",pr:"paddingRight",pb:"paddingBottom",pl:"paddingLeft",px:["paddingLeft","paddingRight"],py:["paddingTop","paddingBottom"],m:"margin",mt:"marginTop",mr:"marginRight",mb:"marginBottom",ml:"marginLeft",mx:["marginLeft","marginRight"],my:["marginTop","marginBottom"],bgcolor:"backgroundColor"},b=o=>{if(!o||typeof o!="object")return o;let t={};return Object.keys(o).forEach(e=>{let r=o[e],i=h[e];i?Array.isArray(i)?i.forEach(n=>{t[n]=r;}):t[i]=r:t[e]=r;}),t},y=o=>{if(!o)return {};let t={};return typeof o=="function"?t=o({}):Array.isArray(o)?t=o.reduce((e,r)=>!r||typeof r=="boolean"?e:typeof r=="function"?{...e,...r({})}:{...e,...r},{}):t=o,b(t)},x=`
2
+ .ui-toolbar {
3
+ position: relative;
4
+ display: flex;
5
+ align-items: center;
6
+ box-sizing: border-box;
7
+ width: 100%;
8
+ }
9
+
10
+ .ui-toolbar--gutters {
11
+ padding-left: 16px;
12
+ padding-right: 16px;
13
+ }
14
+
15
+ @media (min-width: 600px) {
16
+ .ui-toolbar--gutters {
17
+ padding-left: 24px;
18
+ padding-right: 24px;
19
+ }
20
+ }
21
+
22
+ .ui-toolbar--regular {
23
+ min-height: 56px;
24
+ }
25
+
26
+ @media (min-width: 0px) and (orientation: landscape) {
27
+ .ui-toolbar--regular {
28
+ min-height: 48px;
29
+ }
30
+ }
31
+
32
+ @media (min-width: 600px) {
33
+ .ui-toolbar--regular {
34
+ min-height: 64px;
35
+ }
36
+ }
37
+
38
+ .ui-toolbar--dense {
39
+ min-height: 48px;
40
+ }
41
+ `,c=react.forwardRef(({children:o,classes:t={},component:e,disableGutters:r=false,sx:i,variant:n="regular",className:d,...g},l)=>{let m=e||"div",s=y(i),f=chunkDDGBDWFC_js.a("ui-toolbar",!r&&"ui-toolbar--gutters",`ui-toolbar--${n}`,t.root,!r&&t.gutters,n==="regular"&&t.regular,n==="dense"&&t.dense,d);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:x}}),jsxRuntime.jsx(m,{ref:l,className:f,style:s,...g,children:o})]})});c.displayName="ToolBar";exports.a=c;//# sourceMappingURL=chunk-ISHUTZ36.js.map
42
+ //# sourceMappingURL=chunk-ISHUTZ36.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ToolBar/ToolBar.tsx"],"names":["shorthandMap","resolveShorthands","style","resolved","key","value","target","t","resolveSx","sx","rawStyle","acc","curr","STYLES","ToolBar","forwardRef","children","classes","component","disableGutters","variant","className","props","ref","Component","rootClasses","cn","jsxs","Fragment","jsx"],"mappings":"gIAMA,IAAMA,EAAkD,CACtD,CAAA,CAAG,UACH,EAAA,CAAI,YAAA,CACJ,GAAI,cAAA,CACJ,EAAA,CAAI,eAAA,CACJ,EAAA,CAAI,cACJ,EAAA,CAAI,CAAC,cAAe,cAAc,CAAA,CAClC,GAAI,CAAC,YAAA,CAAc,eAAe,CAAA,CAClC,CAAA,CAAG,SACH,EAAA,CAAI,WAAA,CACJ,GAAI,aAAA,CACJ,EAAA,CAAI,eACJ,EAAA,CAAI,YAAA,CACJ,EAAA,CAAI,CAAC,aAAc,aAAa,CAAA,CAChC,GAAI,CAAC,WAAA,CAAa,cAAc,CAAA,CAChC,OAAA,CAAS,iBACX,CAAA,CAEMC,CAAAA,CAAqBC,GAAoC,CAC7D,GAAI,CAACA,CAAAA,EAAS,OAAOA,GAAU,QAAA,CAAU,OAAOA,CAAAA,CAEhD,IAAMC,EAAgB,EAAC,CACvB,cAAO,IAAA,CAAKD,CAAK,EAAE,OAAA,CAASE,CAAAA,EAAQ,CAClC,IAAMC,CAAAA,CAAQH,EAAME,CAAG,CAAA,CACjBE,EAASN,CAAAA,CAAaI,CAAG,EAE3BE,CAAAA,CACE,KAAA,CAAM,OAAA,CAAQA,CAAM,EACtBA,CAAAA,CAAO,OAAA,CAASC,GAAM,CACpBJ,CAAAA,CAASI,CAAC,CAAA,CAAIF,EAChB,CAAC,CAAA,CAEDF,CAAAA,CAASG,CAAM,CAAA,CAAID,CAAAA,CAGrBF,EAASC,CAAG,CAAA,CAAIC,EAEpB,CAAC,CAAA,CACMF,CACT,CAAA,CAEMK,EAAaC,CAAAA,EAAgD,CACjE,GAAI,CAACA,CAAAA,CAAI,OAAO,EAAC,CAEjB,IAAIC,CAAAA,CAAgB,GAEpB,OAAI,OAAOD,GAAO,UAAA,CAChBC,CAAAA,CAAWD,EAAG,EAAE,CAAA,CACP,KAAA,CAAM,QAAQA,CAAE,CAAA,CACzBC,EAAWD,CAAAA,CAAG,MAAA,CAAO,CAACE,CAAAA,CAAKC,CAAAA,GACrB,CAACA,CAAAA,EAAQ,OAAOA,GAAS,SAAA,CAAkBD,CAAAA,CAC3C,OAAOC,CAAAA,EAAS,UAAA,CACX,CAAE,GAAGD,CAAAA,CAAK,GAAGC,CAAAA,CAAK,EAAE,CAAE,EAExB,CAAE,GAAGD,EAAK,GAAGC,CAAK,EACxB,EAAS,EAEZF,CAAAA,CAAWD,CAAAA,CAGNR,EAAkBS,CAAQ,CACnC,EAEMG,CAAAA,CAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA,CAAA,CA6CFC,EAAUC,gBAAAA,CAAW,CAChC,CACE,QAAA,CAAAC,CAAAA,CACA,QAAAC,CAAAA,CAAU,GACV,SAAA,CAAAC,CAAAA,CACA,eAAAC,CAAAA,CAAiB,KAAA,CACjB,GAAAV,CAAAA,CACA,OAAA,CAAAW,EAAU,SAAA,CACV,SAAA,CAAAC,EACA,GAAGC,CACL,EACAC,CAAAA,GACG,CACH,IAAMC,CAAAA,CAAYN,CAAAA,EAAa,MACzBhB,CAAAA,CAAQM,CAAAA,CAAUC,CAAE,CAAA,CAEpBgB,CAAAA,CAAcC,mBAClB,YAAA,CACA,CAACP,GAAkB,qBAAA,CACnB,CAAA,YAAA,EAAeC,CAAO,CAAA,CAAA,CACtBH,CAAAA,CAAQ,KACR,CAACE,CAAAA,EAAkBF,EAAQ,OAAA,CAC3BG,CAAAA,GAAY,WAAaH,CAAAA,CAAQ,OAAA,CACjCG,IAAY,OAAA,EAAWH,CAAAA,CAAQ,MAC/BI,CACF,CAAA,CAEA,OACEM,eAAAA,CAAAC,mBAAAA,CAAA,CACE,QAAA,CAAA,CAAAC,cAAAA,CAAC,SAAM,uBAAA,CAAyB,CAAE,OAAQhB,CAAO,CAAA,CAAG,EACpDgB,cAAAA,CAACL,CAAAA,CAAA,CACC,GAAA,CAAKD,CAAAA,CACL,UAAWE,CAAAA,CACX,KAAA,CAAOvB,EACN,GAAGoB,CAAAA,CAEH,SAAAN,CAAAA,CACH,CAAA,CAAA,CACF,CAEJ,CAAC,EAEDF,EAAQ,WAAA,CAAc,SAAA","file":"chunk-ISHUTZ36.js","sourcesContent":["'use client';\n\nimport { forwardRef, ElementType } from 'react';\nimport { cn } from '../../utils/cn';\nimport { ToolBarProps, SxProp } from './types';\n\nconst shorthandMap: Record<string, string | string[]> = {\n p: 'padding',\n pt: 'paddingTop',\n pr: 'paddingRight',\n pb: 'paddingBottom',\n pl: 'paddingLeft',\n px: ['paddingLeft', 'paddingRight'],\n py: ['paddingTop', 'paddingBottom'],\n m: 'margin',\n mt: 'marginTop',\n mr: 'marginRight',\n mb: 'marginBottom',\n ml: 'marginLeft',\n mx: ['marginLeft', 'marginRight'],\n my: ['marginTop', 'marginBottom'],\n bgcolor: 'backgroundColor',\n};\n\nconst resolveShorthands = (style: any): React.CSSProperties => {\n if (!style || typeof style !== 'object') return style;\n \n const resolved: any = {};\n Object.keys(style).forEach((key) => {\n const value = style[key];\n const target = shorthandMap[key];\n \n if (target) {\n if (Array.isArray(target)) {\n target.forEach((t) => {\n resolved[t] = value;\n });\n } else {\n resolved[target] = value;\n }\n } else {\n resolved[key] = value;\n }\n });\n return resolved;\n};\n\nconst resolveSx = (sx: SxProp | undefined): React.CSSProperties => {\n if (!sx) return {};\n\n let rawStyle: any = {};\n\n if (typeof sx === 'function') {\n rawStyle = sx({});\n } else if (Array.isArray(sx)) {\n rawStyle = sx.reduce((acc, curr) => {\n if (!curr || typeof curr === 'boolean') return acc;\n if (typeof curr === 'function') {\n return { ...acc, ...curr({}) };\n }\n return { ...acc, ...curr };\n }, {} as any);\n } else {\n rawStyle = sx;\n }\n\n return resolveShorthands(rawStyle);\n};\n\nconst STYLES = `\n .ui-toolbar {\n position: relative;\n display: flex;\n align-items: center;\n box-sizing: border-box;\n width: 100%;\n }\n\n .ui-toolbar--gutters {\n padding-left: 16px;\n padding-right: 16px;\n }\n\n @media (min-width: 600px) {\n .ui-toolbar--gutters {\n padding-left: 24px;\n padding-right: 24px;\n }\n }\n\n .ui-toolbar--regular {\n min-height: 56px;\n }\n\n @media (min-width: 0px) and (orientation: landscape) {\n .ui-toolbar--regular {\n min-height: 48px;\n }\n }\n\n @media (min-width: 600px) {\n .ui-toolbar--regular {\n min-height: 64px;\n }\n }\n\n .ui-toolbar--dense {\n min-height: 48px;\n }\n`;\n\n/**\n * The ToolBar component is a flexible container for actions and branding.\n */\nexport const ToolBar = forwardRef(<T extends ElementType = 'div'>(\n {\n children,\n classes = {},\n component,\n disableGutters = false,\n sx,\n variant = 'regular',\n className,\n ...props\n }: ToolBarProps<T>,\n ref: any\n) => {\n const Component = component || 'div';\n const style = resolveSx(sx);\n\n const rootClasses = cn(\n 'ui-toolbar',\n !disableGutters && 'ui-toolbar--gutters',\n `ui-toolbar--${variant}`,\n classes.root,\n !disableGutters && classes.gutters,\n variant === 'regular' && classes.regular,\n variant === 'dense' && classes.dense,\n className\n );\n\n return (\n <>\n <style dangerouslySetInnerHTML={{ __html: STYLES }} />\n <Component\n ref={ref}\n className={rootClasses}\n style={style}\n {...props}\n >\n {children}\n </Component>\n </>\n );\n});\n\nToolBar.displayName = 'ToolBar';\n\nexport default ToolBar;\n"]}