@gbmtech/aurora-ui 0.7.34 → 0.7.35

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 (204) hide show
  1. package/dist/cjs/components/accordion/accordion.cjs +1 -1
  2. package/dist/cjs/components/alert-dialog/alert-dialog.cjs +1 -1
  3. package/dist/cjs/components/alert-dialog/alert-dialog.d.ts +1 -1
  4. package/dist/cjs/components/alert-dialog/alert-dialog.d.ts.map +1 -1
  5. package/dist/cjs/components/app-layout/app-layout-content.cjs +1 -1
  6. package/dist/cjs/components/app-layout/app-layout-filters.cjs +1 -1
  7. package/dist/cjs/components/app-layout/app-layout-header.cjs +1 -1
  8. package/dist/cjs/components/app-layout/app-layout.cjs +1 -1
  9. package/dist/cjs/components/app-layout/index.cjs +1 -1
  10. package/dist/cjs/components/app-layout/sidebar/index.cjs +1 -1
  11. package/dist/cjs/components/app-layout/sidebar/sidebar.cjs +1 -1
  12. package/dist/cjs/components/app-layout/sidebar/sidebar.d.ts.map +1 -1
  13. package/dist/cjs/components/avatar/avatar.cjs +1 -1
  14. package/dist/cjs/components/breadcrumb.cjs +1 -1
  15. package/dist/cjs/components/button/button.cjs +1 -1
  16. package/dist/cjs/components/button/button.d.ts +1 -1
  17. package/dist/cjs/components/button/button.d.ts.map +1 -1
  18. package/dist/cjs/components/calendar.cjs +1 -1
  19. package/dist/cjs/components/checkbox/checkbox.cjs +1 -1
  20. package/dist/cjs/components/combobox/index.cjs +1 -1
  21. package/dist/cjs/components/command.cjs +1 -1
  22. package/dist/cjs/components/context-menu.cjs +1 -1
  23. package/dist/cjs/components/data-table/data-table-action-bar.cjs +1 -1
  24. package/dist/cjs/components/data-table/data-table-advanced-toolbar.cjs +1 -1
  25. package/dist/cjs/components/data-table/data-table-column-header.cjs +1 -1
  26. package/dist/cjs/components/data-table/data-table-faceted-filter.cjs +1 -1
  27. package/dist/cjs/components/data-table/data-table-faceted-filter.d.ts.map +1 -1
  28. package/dist/cjs/components/data-table/data-table-filter-list.cjs +1 -1
  29. package/dist/cjs/components/data-table/data-table-filter-menu.cjs +1 -1
  30. package/dist/cjs/components/data-table/data-table-pagination.cjs +1 -1
  31. package/dist/cjs/components/data-table/data-table-range-filter.cjs +1 -1
  32. package/dist/cjs/components/data-table/data-table-range-filter.d.ts.map +1 -1
  33. package/dist/cjs/components/data-table/data-table-skeleton.cjs +1 -1
  34. package/dist/cjs/components/data-table/data-table-slider-filter.cjs +1 -1
  35. package/dist/cjs/components/data-table/data-table-sort-list.cjs +1 -1
  36. package/dist/cjs/components/data-table/data-table-toolbar.cjs +1 -1
  37. package/dist/cjs/components/data-table/data-table-view-options.cjs +1 -1
  38. package/dist/cjs/components/data-table/data-table.cjs +1 -1
  39. package/dist/cjs/components/data-table/index.cjs +1 -1
  40. package/dist/cjs/components/date-picker/date-picker.cjs +1 -1
  41. package/dist/cjs/components/date-picker-with-range.cjs +1 -1
  42. package/dist/cjs/components/date-time-picker/date-time-picker.cjs +1 -1
  43. package/dist/cjs/components/date-time-picker-with-range.cjs +1 -1
  44. package/dist/cjs/components/dialog/dialog.cjs +1 -1
  45. package/dist/cjs/components/dialog/dialog.d.ts +1 -1
  46. package/dist/cjs/components/dialog/dialog.d.ts.map +1 -1
  47. package/dist/cjs/components/dropdown-menu.cjs +1 -1
  48. package/dist/cjs/components/faceted.cjs +1 -1
  49. package/dist/cjs/components/form.cjs +1 -1
  50. package/dist/cjs/components/image-slider/image-slider.cjs +1 -1
  51. package/dist/cjs/components/input-otp/input-otp.cjs +1 -1
  52. package/dist/cjs/components/label/label.cjs +1 -1
  53. package/dist/cjs/components/label.cjs +1 -1
  54. package/dist/cjs/components/mask-input.cjs +1 -1
  55. package/dist/cjs/components/month-picker/month-picker.cjs +1 -1
  56. package/dist/cjs/components/multi-select/multi-select.cjs +1 -1
  57. package/dist/cjs/components/multi-select/multi-select.d.ts +1 -1
  58. package/dist/cjs/components/multi-select/multi-select.d.ts.map +1 -1
  59. package/dist/cjs/components/pagination.cjs +1 -1
  60. package/dist/cjs/components/pagination.d.ts +1 -1
  61. package/dist/cjs/components/pagination.d.ts.map +1 -1
  62. package/dist/cjs/components/popover.cjs +1 -1
  63. package/dist/cjs/components/radio-group/radio-group.cjs +1 -1
  64. package/dist/cjs/components/scroll-area.cjs +1 -1
  65. package/dist/cjs/components/scroll-area.d.ts +1 -1
  66. package/dist/cjs/components/scroll-area.d.ts.map +1 -1
  67. package/dist/cjs/components/select.cjs +1 -1
  68. package/dist/cjs/components/separator/index.cjs +1 -1
  69. package/dist/cjs/components/separator.cjs +1 -1
  70. package/dist/cjs/components/separator.d.ts +1 -1
  71. package/dist/cjs/components/separator.d.ts.map +1 -1
  72. package/dist/cjs/components/sheet/sheet-content-variants.cjs +1 -1
  73. package/dist/cjs/components/sheet/sheet.cjs +1 -1
  74. package/dist/cjs/components/sheet/sheet.d.ts +1 -1
  75. package/dist/cjs/components/sheet/sheet.d.ts.map +1 -1
  76. package/dist/cjs/components/skeleton/skeleton.cjs +1 -1
  77. package/dist/cjs/components/slider.cjs +1 -1
  78. package/dist/cjs/components/sortable.cjs +1 -1
  79. package/dist/cjs/components/spinner/spinner.cjs +1 -1
  80. package/dist/cjs/components/table-expandable.cjs +1 -1
  81. package/dist/cjs/components/table.cjs +1 -1
  82. package/dist/cjs/components/tabs/tabs-trigger-variants.cjs +1 -1
  83. package/dist/cjs/components/tabs/tabs-trigger-variants.d.ts +1 -1
  84. package/dist/cjs/components/tabs/tabs-trigger-variants.d.ts.map +1 -1
  85. package/dist/cjs/components/textarea/textarea.cjs +1 -1
  86. package/dist/cjs/components/title.cjs +1 -1
  87. package/dist/cjs/components/tooltip/tooltip-content-variants.cjs +1 -1
  88. package/dist/cjs/components/tooltip/tooltip.cjs +1 -1
  89. package/dist/cjs/components/tooltip/tooltip.d.ts +1 -1
  90. package/dist/cjs/components/tooltip/tooltip.d.ts.map +1 -1
  91. package/dist/cjs/index.cjs +1 -1
  92. package/dist/cjs/index.d.ts +1 -2
  93. package/dist/cjs/index.d.ts.map +1 -1
  94. package/dist/cjs/lib/index.cjs +1 -1
  95. package/dist/cjs/lib/index.d.ts +1 -1
  96. package/dist/cjs/lib/index.d.ts.map +1 -1
  97. package/dist/cjs/lib/utils.d.ts.map +1 -0
  98. package/dist/cjs/types/index.cjs +1 -1
  99. package/dist/cjs/utils/index.cjs +1 -0
  100. package/dist/cjs/utils/index.d.ts +2 -0
  101. package/dist/cjs/utils/index.d.ts.map +1 -0
  102. package/dist/esm/components/accordion/accordion.js +1 -1
  103. package/dist/esm/components/alert-dialog/alert-dialog.d.ts +1 -1
  104. package/dist/esm/components/alert-dialog/alert-dialog.d.ts.map +1 -1
  105. package/dist/esm/components/alert-dialog/alert-dialog.js +1 -1
  106. package/dist/esm/components/app-layout/app-layout-content.js +1 -1
  107. package/dist/esm/components/app-layout/app-layout-filters.js +1 -1
  108. package/dist/esm/components/app-layout/app-layout-header.js +1 -1
  109. package/dist/esm/components/app-layout/app-layout.js +1 -1
  110. package/dist/esm/components/app-layout/sidebar/sidebar.d.ts.map +1 -1
  111. package/dist/esm/components/app-layout/sidebar/sidebar.js +1 -1
  112. package/dist/esm/components/avatar/avatar.js +1 -1
  113. package/dist/esm/components/breadcrumb.js +1 -1
  114. package/dist/esm/components/button/button.d.ts +1 -1
  115. package/dist/esm/components/button/button.d.ts.map +1 -1
  116. package/dist/esm/components/button/button.js +1 -1
  117. package/dist/esm/components/calendar.js +1 -1
  118. package/dist/esm/components/checkbox/checkbox.js +1 -1
  119. package/dist/esm/components/combobox/index.js +1 -1
  120. package/dist/esm/components/command.js +1 -1
  121. package/dist/esm/components/context-menu.js +1 -1
  122. package/dist/esm/components/data-table/data-table-action-bar.js +1 -1
  123. package/dist/esm/components/data-table/data-table-advanced-toolbar.js +1 -1
  124. package/dist/esm/components/data-table/data-table-column-header.js +1 -1
  125. package/dist/esm/components/data-table/data-table-faceted-filter.d.ts.map +1 -1
  126. package/dist/esm/components/data-table/data-table-faceted-filter.js +1 -1
  127. package/dist/esm/components/data-table/data-table-filter-list.js +1 -1
  128. package/dist/esm/components/data-table/data-table-filter-menu.js +1 -1
  129. package/dist/esm/components/data-table/data-table-pagination.js +1 -1
  130. package/dist/esm/components/data-table/data-table-range-filter.d.ts.map +1 -1
  131. package/dist/esm/components/data-table/data-table-range-filter.js +1 -1
  132. package/dist/esm/components/data-table/data-table-skeleton.js +1 -1
  133. package/dist/esm/components/data-table/data-table-slider-filter.js +1 -1
  134. package/dist/esm/components/data-table/data-table-sort-list.js +1 -1
  135. package/dist/esm/components/data-table/data-table-toolbar.js +1 -1
  136. package/dist/esm/components/data-table/data-table-view-options.js +1 -1
  137. package/dist/esm/components/data-table/data-table.js +1 -1
  138. package/dist/esm/components/date-picker/date-picker.js +1 -1
  139. package/dist/esm/components/date-picker-with-range.js +1 -1
  140. package/dist/esm/components/date-time-picker/date-time-picker.js +1 -1
  141. package/dist/esm/components/date-time-picker-with-range.js +1 -1
  142. package/dist/esm/components/dialog/dialog.d.ts +1 -1
  143. package/dist/esm/components/dialog/dialog.d.ts.map +1 -1
  144. package/dist/esm/components/dialog/dialog.js +1 -1
  145. package/dist/esm/components/dropdown-menu.js +1 -1
  146. package/dist/esm/components/faceted.js +1 -1
  147. package/dist/esm/components/form.js +1 -1
  148. package/dist/esm/components/image-slider/image-slider.js +1 -1
  149. package/dist/esm/components/input-otp/input-otp.js +1 -1
  150. package/dist/esm/components/label/label.js +1 -1
  151. package/dist/esm/components/label.js +1 -1
  152. package/dist/esm/components/mask-input.js +1 -1
  153. package/dist/esm/components/month-picker/month-picker.js +1 -1
  154. package/dist/esm/components/multi-select/multi-select.d.ts +1 -1
  155. package/dist/esm/components/multi-select/multi-select.d.ts.map +1 -1
  156. package/dist/esm/components/multi-select/multi-select.js +1 -1
  157. package/dist/esm/components/pagination.d.ts +1 -1
  158. package/dist/esm/components/pagination.d.ts.map +1 -1
  159. package/dist/esm/components/pagination.js +1 -1
  160. package/dist/esm/components/popover.js +1 -1
  161. package/dist/esm/components/radio-group/radio-group.js +1 -1
  162. package/dist/esm/components/scroll-area.d.ts +1 -1
  163. package/dist/esm/components/scroll-area.d.ts.map +1 -1
  164. package/dist/esm/components/scroll-area.js +1 -1
  165. package/dist/esm/components/select.js +1 -1
  166. package/dist/esm/components/separator.d.ts +1 -1
  167. package/dist/esm/components/separator.d.ts.map +1 -1
  168. package/dist/esm/components/separator.js +1 -1
  169. package/dist/esm/components/sheet/sheet-content-variants.js +1 -1
  170. package/dist/esm/components/sheet/sheet.d.ts +1 -1
  171. package/dist/esm/components/sheet/sheet.d.ts.map +1 -1
  172. package/dist/esm/components/sheet/sheet.js +1 -1
  173. package/dist/esm/components/skeleton/skeleton.js +1 -1
  174. package/dist/esm/components/slider.js +1 -1
  175. package/dist/esm/components/sortable.js +3 -3
  176. package/dist/esm/components/spinner/spinner.js +1 -1
  177. package/dist/esm/components/table-expandable.js +1 -1
  178. package/dist/esm/components/table.js +1 -1
  179. package/dist/esm/components/tabs/tabs-trigger-variants.d.ts +1 -1
  180. package/dist/esm/components/tabs/tabs-trigger-variants.d.ts.map +1 -1
  181. package/dist/esm/components/tabs/tabs-trigger-variants.js +1 -1
  182. package/dist/esm/components/textarea/textarea.js +1 -1
  183. package/dist/esm/components/title.js +1 -1
  184. package/dist/esm/components/tooltip/tooltip-content-variants.js +1 -1
  185. package/dist/esm/components/tooltip/tooltip.d.ts +1 -1
  186. package/dist/esm/components/tooltip/tooltip.d.ts.map +1 -1
  187. package/dist/esm/components/tooltip/tooltip.js +1 -1
  188. package/dist/esm/index.d.ts +1 -2
  189. package/dist/esm/index.d.ts.map +1 -1
  190. package/dist/esm/index.js +1 -1
  191. package/dist/esm/lib/index.d.ts +1 -1
  192. package/dist/esm/lib/index.d.ts.map +1 -1
  193. package/dist/esm/lib/index.js +1 -1
  194. package/dist/esm/lib/utils.d.ts.map +1 -0
  195. package/dist/esm/utils/index.d.ts +2 -0
  196. package/dist/esm/utils/index.d.ts.map +1 -0
  197. package/dist/esm/utils/index.js +1 -0
  198. package/package.json +1 -1
  199. package/dist/cjs/utils/utils.d.ts.map +0 -1
  200. package/dist/esm/utils/utils.d.ts.map +0 -1
  201. /package/dist/cjs/{utils → lib}/utils.cjs +0 -0
  202. /package/dist/cjs/{utils → lib}/utils.d.ts +0 -0
  203. /package/dist/esm/{utils → lib}/utils.d.ts +0 -0
  204. /package/dist/esm/{utils → lib}/utils.js +0 -0
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{Fragment as e,jsx as r,jsxs as i}from"react/jsx-runtime";import{CheckIcon as a,PlusCircleIcon as l,XCircleIcon as t}from"@phosphor-icons/react";import{useCallback as n,useState as o}from"react";import{Badge as s}from"../badge/index.js";import{Button as c}from"../button/index.js";import{Command as d,CommandEmpty as m,CommandGroup as u,CommandInput as h,CommandItem as p,CommandList as f,CommandSeparator as v}from"../command.js";import{Popover as x,PopoverContent as b,PopoverTrigger as y}from"../popover.js";import{Separator as g}from"../separator.js";import{cn as N}from"../../utils/utils.js";function j({column:j,title:z,options:F,multiple:w}){let[C,S]=o(!1),V=j?.getFilterValue(),A=new Set(Array.isArray(V)?V:[]),k=n((e,r)=>{if(j)if(w){let i=new Set(A);r?i.delete(e.value):i.add(e.value);let a=Array.from(i);j.setFilterValue(a.length?a:void 0)}else j.setFilterValue(r?void 0:[e.value]),S(!1)},[j,w,A]),D=n(e=>{e?.stopPropagation(),j?.setFilterValue(void 0)},[j]);return i(x,{open:C,onOpenChange:S,children:[r(y,{asChild:!0,children:i(c,{variant:"outline",size:"sm",children:[A?.size>0?r("div",{role:"button","aria-label":`Clear ${z} filter`,tabIndex:0,onClick:D,className:"rounded-sm opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",children:r(t,{})}):r(l,{}),z,A?.size>0&&i(e,{children:[r(g,{orientation:"vertical",className:"mx-0.5 data-[orientation=vertical]:h-4"}),r(s,{variant:"secondary",className:"rounded-sm px-1 font-normal lg:hidden",children:A.size}),r("div",{className:"hidden items-center gap-1 lg:flex",children:A.size>2?i(s,{variant:"secondary",className:"rounded-sm px-1 font-normal",children:[A.size," selected"]}):F.filter(e=>A.has(e.value)).map(e=>r(s,{variant:"secondary",className:"rounded-sm px-1 font-normal",children:e.label},e.value))})]})]})}),r(b,{className:"w-[12.5rem] p-0",align:"start",children:i(d,{children:[r(h,{placeholder:z}),i(f,{className:"max-h-full",children:[r(m,{children:"No results found."}),r(u,{className:"max-h-[18.75rem] overflow-y-auto overflow-x-hidden",children:F.map(e=>{let l=A.has(e.value);return i(p,{onSelect:()=>k(e,l),children:[r("div",{className:N("flex size-4 items-center justify-center rounded-sm border border-primary",l?"bg-primary":"opacity-50 [&_svg]:invisible"),children:r(a,{})}),e.icon&&r(e.icon,{}),r("span",{className:"truncate",children:e.label}),e.count&&r("span",{className:"ml-auto font-mono text-xs",children:e.count})]},e.value)})}),A.size>0&&i(e,{children:[r(v,{}),r(u,{children:r(p,{onSelect:()=>D(),className:"justify-center text-center",children:"Limpar filtros"})})]})]})]})})]})}export{j as DataTableFacetedFilter};
2
+ import{Fragment as e,jsx as r,jsxs as i}from"react/jsx-runtime";import{CheckIcon as a,PlusCircleIcon as l,XCircleIcon as t}from"@phosphor-icons/react";import{useCallback as n,useState as o}from"react";import{Badge as s}from"../badge/index.js";import{Button as c}from"../button/index.js";import{Command as d,CommandEmpty as m,CommandGroup as u,CommandInput as h,CommandItem as p,CommandList as f,CommandSeparator as v}from"../command.js";import{Popover as x,PopoverContent as b,PopoverTrigger as y}from"../popover.js";import{Separator as g}from"../separator.js";import{cn as N}from"../../lib/utils.js";function j({column:j,title:z,options:F,multiple:w}){let[C,S]=o(!1),V=j?.getFilterValue(),A=new Set(Array.isArray(V)?V:[]),k=n((e,r)=>{if(j)if(w){let i=new Set(A);r?i.delete(e.value):i.add(e.value);let a=Array.from(i);j.setFilterValue(a.length?a:void 0)}else j.setFilterValue(r?void 0:[e.value]),S(!1)},[j,w,A]),D=n(e=>{e?.stopPropagation(),j?.setFilterValue(void 0)},[j]);return i(x,{open:C,onOpenChange:S,children:[r(y,{asChild:!0,children:i(c,{variant:"outline",size:"sm",children:[A?.size>0?r("div",{role:"button","aria-label":`Clear ${z} filter`,tabIndex:0,onClick:D,className:"rounded-sm opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",children:r(t,{})}):r(l,{}),z,A?.size>0&&i(e,{children:[r(g,{orientation:"vertical",className:"mx-0.5 data-[orientation=vertical]:h-4"}),r(s,{variant:"secondary",className:"rounded-sm px-1 font-normal lg:hidden",children:A.size}),r("div",{className:"hidden items-center gap-1 lg:flex",children:A.size>2?i(s,{variant:"secondary",className:"rounded-sm px-1 font-normal",children:[A.size," selected"]}):F.filter(e=>A.has(e.value)).map(e=>r(s,{variant:"secondary",className:"rounded-sm px-1 font-normal",children:e.label},e.value))})]})]})}),r(b,{className:"w-[12.5rem] p-0",align:"start",children:i(d,{children:[r(h,{placeholder:z}),i(f,{className:"max-h-full",children:[r(m,{children:"No results found."}),r(u,{className:"max-h-[18.75rem] overflow-y-auto overflow-x-hidden",children:F.map(e=>{let l=A.has(e.value);return i(p,{onSelect:()=>k(e,l),children:[r("div",{className:N("flex size-4 items-center justify-center rounded-sm border border-primary",l?"bg-primary":"opacity-50 [&_svg]:invisible"),children:r(a,{})}),e.icon&&r(e.icon,{}),r("span",{className:"truncate",children:e.label}),e.count&&r("span",{className:"ml-auto font-mono text-xs",children:e.count})]},e.value)})}),A.size>0&&i(e,{children:[r(v,{}),r(u,{children:r(p,{onSelect:()=>D(),className:"justify-center text-center",children:"Limpar filtros"})})]})]})]})})]})}export{j as DataTableFacetedFilter};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{CalendarBlankIcon as l,CaretUpDownIcon as r,CheckIcon as t,DotsSixVerticalIcon as i,FunnelSimpleIcon as n,TrashIcon as o}from"@phosphor-icons/react";import{parseAsStringEnum as s,useQueryState as d}from"nuqs";import{useCallback as c,useEffect as m,useId as u,useMemo as p,useRef as h,useState as f}from"react";import{Badge as v}from"../badge/index.js";import{Button as g}from"../button/index.js";import{Calendar as b}from"../calendar.js";import{Command as x,CommandEmpty as w,CommandGroup as N,CommandInput as y,CommandItem as C,CommandList as D}from"../command.js";import{DataTableRangeFilter as I}from"./data-table-range-filter.js";import{Faceted as j,FacetedBadgeList as $,FacetedContent as k,FacetedEmpty as z,FacetedGroup as O,FacetedInput as S,FacetedItem as E,FacetedList as A,FacetedTrigger as T}from"../faceted.js";import{Input as L}from"../input/index.js";import{Popover as F,PopoverContent as B,PopoverTrigger as V}from"../popover.js";import{Select as K,SelectContent as M,SelectItem as H,SelectTrigger as q,SelectValue as R}from"../select.js";import{Sortable as U,SortableContent as J,SortableItem as G,SortableItemHandle as P,SortableOverlay as Q}from"../sortable.js";import{useDebouncedCallback as W}from"../../hooks/use-debounced-callback.js";import{getDefaultFilterOperator as X,getFilterOperators as Y}from"../../lib/data-table.js";import{dataTableConfig as Z}from"../../lib/data-table-config.js";import{formatDate as _}from"../../lib/format.js";import{generateId as ee}from"../../lib/id.js";import{getFiltersStateParser as ea}from"../../lib/parsers.js";import{cn as el}from"../../utils/utils.js";let er=["backspace","delete"];function et({table:l,debounceMs:r=300,throttleMs:t=50,shallow:i=!0,...o}){let b=u(),x=u(),w=u(),[N,y]=f(!1),C=h(null),D=p(()=>l.getAllColumns().filter(e=>e.columnDef.enableColumnFilter),[l]),[I,j]=d("filters",ea(D.map(e=>e.id)).withDefault([]).withOptions({clearOnDefault:!0,shallow:i,throttleMs:t})),$=W(j,r),[k,z]=d("joinOperator",s(["e","ou"]).withDefault("e").withOptions({clearOnDefault:!0,shallow:i})),O=c(()=>{let e=D[0];e&&$([...I,{id:e.id,value:"",variant:e.columnDef.meta?.variant??"text",operator:X(e.columnDef.meta?.variant??"text"),filterId:ee({length:8})}])},[D,I,$]),S=c((e,a)=>{$(l=>l.map(l=>l.filterId===e?{...l,...a}:l))},[$]),E=c(e=>{j(I.filter(a=>a.filterId!==e)),requestAnimationFrame(()=>{C.current?.focus()})},[I,j]),A=c(()=>{j(null),z("e")},[j,z]);m(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("f"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),y(!0)),"f"===e.key.toLowerCase()&&e.shiftKey&&I.length>0&&(e.preventDefault(),E(I[I.length-1]?.filterId??"")))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[I,E]);let T=c(e=>{er.includes(e.key.toLowerCase())&&I.length>0&&(e.preventDefault(),E(I[I.length-1]?.filterId??""))},[I,E]);return a(U,{value:I,onValueChange:j,getItemValue:e=>e.filterId,children:[a(F,{open:N,onOpenChange:y,children:[e(V,{asChild:!0,children:a(g,{variant:"outline",size:"sm",onKeyDown:T,children:[e(n,{weight:"bold"}),"Filtro",I.length>0&&e(v,{variant:"secondary",className:"h-[18.24px] rounded-[3.2px] px-[5.12px] font-mono font-normal text-[10.4px]",children:I.length})]})}),a(B,{"aria-describedby":w,"aria-labelledby":x,className:"flex w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] flex-col gap-3.5 p-4 sm:min-w-[380px]",...o,children:[a("div",{className:"flex flex-col gap-1",children:[e("h4",{id:x,className:"font-medium leading-none",children:I.length>0?"Filtros":"Nenhum filtro aplicado"}),e("p",{id:w,className:el("text-gray-400 text-sm",I.length>0&&"sr-only"),children:I.length>0?"Modifique os filtros para filtrar suas linhas.":"Adicione filtros para filtrar suas linhas."})]}),I.length>0?e(J,{asChild:!0,children:e("div",{role:"list",className:"flex max-h-[300px] flex-col gap-2 overflow-y-auto p-1",children:I.map((a,l)=>e(ei,{filter:a,index:l,filterItemId:`${b}-filter-${a.filterId}`,joinOperator:k,setJoinOperator:z,columns:D,onFilterUpdate:S,onFilterRemove:E},a.filterId))})}):null,a("div",{className:"flex w-full items-center gap-2",children:[e(g,{size:"sm",className:"rounded",ref:C,onClick:O,children:"Adicionar filtro"}),I.length>0?e(g,{variant:"outline",size:"sm",className:"rounded",onClick:A,children:"Resetar filtros"}):null]})]})]}),e(Q,{children:a("div",{className:"flex items-center gap-2",children:[e("div",{className:"h-10 min-w-[72px] rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-32 rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-32 rounded-sm bg-primary/10"}),e("div",{className:"h-10 min-w-36 flex-1 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"})]})})]})}function ei({filter:n,index:s,filterItemId:d,joinOperator:m,setJoinOperator:u,columns:p,onFilterUpdate:h,onFilterRemove:v}){let[U,J]=f(!1),[Q,W]=f(!1),[ee,ea]=f(!1),et=c(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(U||Q||ee||er.includes(e.key.toLowerCase())&&(e.preventDefault(),v(n.filterId)))},[n.filterId,U,Q,ee,v]),ei=p.find(e=>e.id===n.id);if(!ei)return null;let en=`${d}-join-operator-listbox`,eo=`${d}-field-listbox`,es=`${d}-operator-listbox`,ed=`${d}-input`,ec=ei.columnDef.meta,em=Y(n.variant);return e(G,{value:n.filterId,asChild:!0,children:a("div",{role:"listitem",id:d,tabIndex:-1,className:"flex items-center gap-2",onKeyDown:et,children:[e("div",{className:"min-w-[72px] text-center",children:0===s?e("span",{className:"text-gray-400 text-sm",children:"Onde"}):1===s?a(K,{value:m,onValueChange:e=>u(e),children:[e(q,{"aria-label":"Select join operator","aria-controls":en,className:"h-10 rounded lowercase [&[data-size]]:h-10",children:e(R,{placeholder:m})}),e(M,{id:en,position:"popper",className:"min-w-(--radix-select-trigger-width) lowercase",children:Z.joinOperators.map(a=>e(H,{value:a,children:a},a))})]}):e("span",{className:"text-gray-400 text-sm",children:m})}),a(F,{open:U,onOpenChange:J,children:[e(V,{asChild:!0,children:a(g,{role:"combobox","aria-controls":eo,variant:"outline",size:"sm",className:"w-32 justify-between rounded font-normal",children:[e("span",{className:"truncate",children:p.find(e=>e.id===n.id)?.columnDef.meta?.label??"Selecione o campo"}),e(r,{className:"opacity-50"})]})}),e(B,{id:eo,align:"start",className:"w-40 origin-[var(--radix-popover-content-transform-origin)] p-0",children:a(x,{children:[e(y,{placeholder:"Buscar campo..."}),a(D,{children:[e(w,{children:"Nenhum campo encontrado."}),e(N,{children:p.map(l=>a(C,{value:l.id,onSelect:e=>{h(n.filterId,{id:e,variant:l.columnDef.meta?.variant??"text",operator:X(l.columnDef.meta?.variant??"text"),value:""}),J(!1)},children:[e("span",{className:"truncate",children:l.columnDef.meta?.label}),e(t,{className:el("ml-auto",l.id===n.id?"opacity-100":"opacity-0")})]},l.id))})]})]})})]}),a(K,{open:Q,onOpenChange:W,value:n.operator,onValueChange:e=>h(n.filterId,{operator:e,value:"isEmpty"===e||"isNotEmpty"===e?"":n.value}),children:[e(q,{"aria-controls":es,className:"h-10 w-32 rounded lowercase [&[data-size]]:h-10",children:e("div",{className:"truncate",children:e(R,{placeholder:n.operator})})}),e(M,{id:es,className:"origin-[var(--radix-select-content-transform-origin)]",children:em.map(a=>e(H,{value:a.value,className:"lowercase",children:a.label},a.value))})]}),e("div",{className:"min-w-36 flex-1",children:function({filter:r,inputId:t,column:i,columnMeta:n,onFilterUpdate:o,showValueSelector:s,setShowValueSelector:d}){if("isEmpty"===r.operator||"isNotEmpty"===r.operator)return e("div",{id:t,role:"status","aria-label":`${n?.label} filter is ${"isEmpty"===r.operator?"empty":"not empty"}`,"aria-live":"polite",className:"h-10 w-full rounded border bg-transparent dark:bg-input/30"});switch(r.variant){case"text":case"number":case"range":{if("range"===r.variant&&"isBetween"===r.operator||"isBetween"===r.operator)return e(I,{filter:r,column:i,inputId:t,onFilterUpdate:o});let a="number"===r.variant||"range"===r.variant;return e(L,{id:t,type:a?"number":r.variant,"aria-label":`${n?.label} filter value`,"aria-describedby":`${t}-description`,inputMode:a?"numeric":void 0,placeholder:n?.placeholder??"Enter a value...",className:"h-10 w-full rounded",defaultValue:"string"==typeof r.value?r.value:void 0,onChange:e=>o(r.filterId,{value:e.target.value})})}case"boolean":{if(Array.isArray(r.value))return null;let l=`${t}-listbox`;return a(K,{open:s,onOpenChange:d,value:r.value,onValueChange:e=>o(r.filterId,{value:e}),children:[e(q,{id:t,"aria-controls":l,"aria-label":`${n?.label} boolean filter`,className:"h-10 w-full rounded [&[data-size]]:h-10",children:e(R,{placeholder:r.value?"True":"False"})}),a(M,{id:l,children:[e(H,{value:"true",children:"True"}),e(H,{value:"false",children:"False"})]})]})}case"select":case"multiSelect":{let l=`${t}-listbox`,i="multiSelect"===r.variant;return a(j,{open:s,onOpenChange:d,value:i?Array.isArray(r.value)?r.value:[]:"string"==typeof r.value?r.value:void 0,onValueChange:e=>{o(r.filterId,{value:e})},multiple:i,children:[e(T,{asChild:!0,children:e(g,{id:t,"aria-controls":l,"aria-label":`${n?.label} filter value${i?"s":""}`,variant:"outline",size:"sm",className:"w-full rounded font-normal",children:e($,{options:n?.options,placeholder:n?.placeholder??`Select option${i?"s":""}...`})})}),a(k,{id:l,className:"w-[200px] origin-[var(--radix-popover-content-transform-origin)]",children:[e(S,{"aria-label":`Search ${n?.label} options`,placeholder:n?.placeholder??"Search options..."}),a(A,{children:[e(z,{children:"Nenhum resultado"}),e(O,{children:n?.options?.map(l=>a(E,{value:l.value,children:[l.icon&&e(l.icon,{}),e("span",{children:l.label}),l.count&&e("span",{className:"ml-auto font-mono text-xs",children:l.count})]},l.value))})]})]})]})}case"date":case"dateRange":{let i=`${t}-listbox`,c=Array.isArray(r.value)?r.value.filter(Boolean):[r.value,r.value].filter(Boolean),m="isBetween"===r.operator&&2===c.length?`${_(new Date(Number(c[0])))} - ${_(new Date(Number(c[1])))}`:c[0]?_(new Date(Number(c[0]))):"Escolha uma data";return a(F,{open:s,onOpenChange:d,children:[e(V,{asChild:!0,children:a(g,{id:t,"aria-controls":i,"aria-label":`${n?.label} date filter`,variant:"outline",size:"sm",className:el("w-full justify-start rounded text-left font-normal",!r.value&&"text-gray-400"),children:[e(l,{weight:"bold"}),e("span",{className:"truncate text-sm",children:m})]})}),e(B,{id:i,align:"start",className:"w-auto origin-[var(--radix-popover-content-transform-origin)] p-0",children:"isBetween"===r.operator?e(b,{"aria-label":`Select ${n?.label} date range`,mode:"range",selected:2===c.length?{from:new Date(Number(c[0])),to:new Date(Number(c[1]))}:{from:new Date,to:new Date},onSelect:e=>{o(r.filterId,{value:e?[(e.from?.getTime()??"").toString(),(e.to?.getTime()??"").toString()]:[]})}}):e(b,{"aria-label":`Select ${n?.label} date`,mode:"single",selected:c[0]?new Date(Number(c[0])):void 0,onSelect:e=>{o(r.filterId,{value:(e?.getTime()??"").toString()})}})})]})}default:return null}}({filter:n,inputId:ed,column:ei,columnMeta:ec,onFilterUpdate:h,showValueSelector:ee,setShowValueSelector:ea})}),e(g,{"aria-controls":d,variant:"outline",size:"icon",className:"size-8 rounded",onClick:()=>v(n.filterId),children:e(o,{weight:"bold"})}),e(P,{asChild:!0,children:e(g,{variant:"outline",size:"icon",className:"size-8 rounded",children:e(i,{weight:"bold"})})})]})})}export{et as DataTableFilterList};
2
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{CalendarBlankIcon as l,CaretUpDownIcon as r,CheckIcon as t,DotsSixVerticalIcon as i,FunnelSimpleIcon as n,TrashIcon as o}from"@phosphor-icons/react";import{parseAsStringEnum as s,useQueryState as d}from"nuqs";import{useCallback as c,useEffect as m,useId as u,useMemo as p,useRef as h,useState as f}from"react";import{Badge as v}from"../badge/index.js";import{Button as g}from"../button/index.js";import{Calendar as b}from"../calendar.js";import{Command as x,CommandEmpty as w,CommandGroup as N,CommandInput as y,CommandItem as C,CommandList as D}from"../command.js";import{DataTableRangeFilter as I}from"./data-table-range-filter.js";import{Faceted as j,FacetedBadgeList as $,FacetedContent as k,FacetedEmpty as z,FacetedGroup as O,FacetedInput as S,FacetedItem as E,FacetedList as A,FacetedTrigger as T}from"../faceted.js";import{Input as L}from"../input/index.js";import{Popover as F,PopoverContent as B,PopoverTrigger as V}from"../popover.js";import{Select as K,SelectContent as M,SelectItem as H,SelectTrigger as q,SelectValue as R}from"../select.js";import{Sortable as U,SortableContent as J,SortableItem as G,SortableItemHandle as P,SortableOverlay as Q}from"../sortable.js";import{useDebouncedCallback as W}from"../../hooks/use-debounced-callback.js";import{getDefaultFilterOperator as X,getFilterOperators as Y}from"../../lib/data-table.js";import{dataTableConfig as Z}from"../../lib/data-table-config.js";import{formatDate as _}from"../../lib/format.js";import{generateId as ee}from"../../lib/id.js";import{getFiltersStateParser as ea}from"../../lib/parsers.js";import{cn as el}from"../../lib/utils.js";let er=["backspace","delete"];function et({table:l,debounceMs:r=300,throttleMs:t=50,shallow:i=!0,...o}){let b=u(),x=u(),w=u(),[N,y]=f(!1),C=h(null),D=p(()=>l.getAllColumns().filter(e=>e.columnDef.enableColumnFilter),[l]),[I,j]=d("filters",ea(D.map(e=>e.id)).withDefault([]).withOptions({clearOnDefault:!0,shallow:i,throttleMs:t})),$=W(j,r),[k,z]=d("joinOperator",s(["e","ou"]).withDefault("e").withOptions({clearOnDefault:!0,shallow:i})),O=c(()=>{let e=D[0];e&&$([...I,{id:e.id,value:"",variant:e.columnDef.meta?.variant??"text",operator:X(e.columnDef.meta?.variant??"text"),filterId:ee({length:8})}])},[D,I,$]),S=c((e,a)=>{$(l=>l.map(l=>l.filterId===e?{...l,...a}:l))},[$]),E=c(e=>{j(I.filter(a=>a.filterId!==e)),requestAnimationFrame(()=>{C.current?.focus()})},[I,j]),A=c(()=>{j(null),z("e")},[j,z]);m(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("f"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),y(!0)),"f"===e.key.toLowerCase()&&e.shiftKey&&I.length>0&&(e.preventDefault(),E(I[I.length-1]?.filterId??"")))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[I,E]);let T=c(e=>{er.includes(e.key.toLowerCase())&&I.length>0&&(e.preventDefault(),E(I[I.length-1]?.filterId??""))},[I,E]);return a(U,{value:I,onValueChange:j,getItemValue:e=>e.filterId,children:[a(F,{open:N,onOpenChange:y,children:[e(V,{asChild:!0,children:a(g,{variant:"outline",size:"sm",onKeyDown:T,children:[e(n,{weight:"bold"}),"Filtro",I.length>0&&e(v,{variant:"secondary",className:"h-[18.24px] rounded-[3.2px] px-[5.12px] font-mono font-normal text-[10.4px]",children:I.length})]})}),a(B,{"aria-describedby":w,"aria-labelledby":x,className:"flex w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] flex-col gap-3.5 p-4 sm:min-w-[380px]",...o,children:[a("div",{className:"flex flex-col gap-1",children:[e("h4",{id:x,className:"font-medium leading-none",children:I.length>0?"Filtros":"Nenhum filtro aplicado"}),e("p",{id:w,className:el("text-gray-400 text-sm",I.length>0&&"sr-only"),children:I.length>0?"Modifique os filtros para filtrar suas linhas.":"Adicione filtros para filtrar suas linhas."})]}),I.length>0?e(J,{asChild:!0,children:e("div",{role:"list",className:"flex max-h-[300px] flex-col gap-2 overflow-y-auto p-1",children:I.map((a,l)=>e(ei,{filter:a,index:l,filterItemId:`${b}-filter-${a.filterId}`,joinOperator:k,setJoinOperator:z,columns:D,onFilterUpdate:S,onFilterRemove:E},a.filterId))})}):null,a("div",{className:"flex w-full items-center gap-2",children:[e(g,{size:"sm",className:"rounded",ref:C,onClick:O,children:"Adicionar filtro"}),I.length>0?e(g,{variant:"outline",size:"sm",className:"rounded",onClick:A,children:"Resetar filtros"}):null]})]})]}),e(Q,{children:a("div",{className:"flex items-center gap-2",children:[e("div",{className:"h-10 min-w-[72px] rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-32 rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-32 rounded-sm bg-primary/10"}),e("div",{className:"h-10 min-w-36 flex-1 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"})]})})]})}function ei({filter:n,index:s,filterItemId:d,joinOperator:m,setJoinOperator:u,columns:p,onFilterUpdate:h,onFilterRemove:v}){let[U,J]=f(!1),[Q,W]=f(!1),[ee,ea]=f(!1),et=c(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(U||Q||ee||er.includes(e.key.toLowerCase())&&(e.preventDefault(),v(n.filterId)))},[n.filterId,U,Q,ee,v]),ei=p.find(e=>e.id===n.id);if(!ei)return null;let en=`${d}-join-operator-listbox`,eo=`${d}-field-listbox`,es=`${d}-operator-listbox`,ed=`${d}-input`,ec=ei.columnDef.meta,em=Y(n.variant);return e(G,{value:n.filterId,asChild:!0,children:a("div",{role:"listitem",id:d,tabIndex:-1,className:"flex items-center gap-2",onKeyDown:et,children:[e("div",{className:"min-w-[72px] text-center",children:0===s?e("span",{className:"text-gray-400 text-sm",children:"Onde"}):1===s?a(K,{value:m,onValueChange:e=>u(e),children:[e(q,{"aria-label":"Select join operator","aria-controls":en,className:"h-10 rounded lowercase [&[data-size]]:h-10",children:e(R,{placeholder:m})}),e(M,{id:en,position:"popper",className:"min-w-(--radix-select-trigger-width) lowercase",children:Z.joinOperators.map(a=>e(H,{value:a,children:a},a))})]}):e("span",{className:"text-gray-400 text-sm",children:m})}),a(F,{open:U,onOpenChange:J,children:[e(V,{asChild:!0,children:a(g,{role:"combobox","aria-controls":eo,variant:"outline",size:"sm",className:"w-32 justify-between rounded font-normal",children:[e("span",{className:"truncate",children:p.find(e=>e.id===n.id)?.columnDef.meta?.label??"Selecione o campo"}),e(r,{className:"opacity-50"})]})}),e(B,{id:eo,align:"start",className:"w-40 origin-[var(--radix-popover-content-transform-origin)] p-0",children:a(x,{children:[e(y,{placeholder:"Buscar campo..."}),a(D,{children:[e(w,{children:"Nenhum campo encontrado."}),e(N,{children:p.map(l=>a(C,{value:l.id,onSelect:e=>{h(n.filterId,{id:e,variant:l.columnDef.meta?.variant??"text",operator:X(l.columnDef.meta?.variant??"text"),value:""}),J(!1)},children:[e("span",{className:"truncate",children:l.columnDef.meta?.label}),e(t,{className:el("ml-auto",l.id===n.id?"opacity-100":"opacity-0")})]},l.id))})]})]})})]}),a(K,{open:Q,onOpenChange:W,value:n.operator,onValueChange:e=>h(n.filterId,{operator:e,value:"isEmpty"===e||"isNotEmpty"===e?"":n.value}),children:[e(q,{"aria-controls":es,className:"h-10 w-32 rounded lowercase [&[data-size]]:h-10",children:e("div",{className:"truncate",children:e(R,{placeholder:n.operator})})}),e(M,{id:es,className:"origin-[var(--radix-select-content-transform-origin)]",children:em.map(a=>e(H,{value:a.value,className:"lowercase",children:a.label},a.value))})]}),e("div",{className:"min-w-36 flex-1",children:function({filter:r,inputId:t,column:i,columnMeta:n,onFilterUpdate:o,showValueSelector:s,setShowValueSelector:d}){if("isEmpty"===r.operator||"isNotEmpty"===r.operator)return e("div",{id:t,role:"status","aria-label":`${n?.label} filter is ${"isEmpty"===r.operator?"empty":"not empty"}`,"aria-live":"polite",className:"h-10 w-full rounded border bg-transparent dark:bg-input/30"});switch(r.variant){case"text":case"number":case"range":{if("range"===r.variant&&"isBetween"===r.operator||"isBetween"===r.operator)return e(I,{filter:r,column:i,inputId:t,onFilterUpdate:o});let a="number"===r.variant||"range"===r.variant;return e(L,{id:t,type:a?"number":r.variant,"aria-label":`${n?.label} filter value`,"aria-describedby":`${t}-description`,inputMode:a?"numeric":void 0,placeholder:n?.placeholder??"Enter a value...",className:"h-10 w-full rounded",defaultValue:"string"==typeof r.value?r.value:void 0,onChange:e=>o(r.filterId,{value:e.target.value})})}case"boolean":{if(Array.isArray(r.value))return null;let l=`${t}-listbox`;return a(K,{open:s,onOpenChange:d,value:r.value,onValueChange:e=>o(r.filterId,{value:e}),children:[e(q,{id:t,"aria-controls":l,"aria-label":`${n?.label} boolean filter`,className:"h-10 w-full rounded [&[data-size]]:h-10",children:e(R,{placeholder:r.value?"True":"False"})}),a(M,{id:l,children:[e(H,{value:"true",children:"True"}),e(H,{value:"false",children:"False"})]})]})}case"select":case"multiSelect":{let l=`${t}-listbox`,i="multiSelect"===r.variant;return a(j,{open:s,onOpenChange:d,value:i?Array.isArray(r.value)?r.value:[]:"string"==typeof r.value?r.value:void 0,onValueChange:e=>{o(r.filterId,{value:e})},multiple:i,children:[e(T,{asChild:!0,children:e(g,{id:t,"aria-controls":l,"aria-label":`${n?.label} filter value${i?"s":""}`,variant:"outline",size:"sm",className:"w-full rounded font-normal",children:e($,{options:n?.options,placeholder:n?.placeholder??`Select option${i?"s":""}...`})})}),a(k,{id:l,className:"w-[200px] origin-[var(--radix-popover-content-transform-origin)]",children:[e(S,{"aria-label":`Search ${n?.label} options`,placeholder:n?.placeholder??"Search options..."}),a(A,{children:[e(z,{children:"Nenhum resultado"}),e(O,{children:n?.options?.map(l=>a(E,{value:l.value,children:[l.icon&&e(l.icon,{}),e("span",{children:l.label}),l.count&&e("span",{className:"ml-auto font-mono text-xs",children:l.count})]},l.value))})]})]})]})}case"date":case"dateRange":{let i=`${t}-listbox`,c=Array.isArray(r.value)?r.value.filter(Boolean):[r.value,r.value].filter(Boolean),m="isBetween"===r.operator&&2===c.length?`${_(new Date(Number(c[0])))} - ${_(new Date(Number(c[1])))}`:c[0]?_(new Date(Number(c[0]))):"Escolha uma data";return a(F,{open:s,onOpenChange:d,children:[e(V,{asChild:!0,children:a(g,{id:t,"aria-controls":i,"aria-label":`${n?.label} date filter`,variant:"outline",size:"sm",className:el("w-full justify-start rounded text-left font-normal",!r.value&&"text-gray-400"),children:[e(l,{weight:"bold"}),e("span",{className:"truncate text-sm",children:m})]})}),e(B,{id:i,align:"start",className:"w-auto origin-[var(--radix-popover-content-transform-origin)] p-0",children:"isBetween"===r.operator?e(b,{"aria-label":`Select ${n?.label} date range`,mode:"range",selected:2===c.length?{from:new Date(Number(c[0])),to:new Date(Number(c[1]))}:{from:new Date,to:new Date},onSelect:e=>{o(r.filterId,{value:e?[(e.from?.getTime()??"").toString(),(e.to?.getTime()??"").toString()]:[]})}}):e(b,{"aria-label":`Select ${n?.label} date`,mode:"single",selected:c[0]?new Date(Number(c[0])):void 0,onSelect:e=>{o(r.filterId,{value:(e?.getTime()??"").toString()})}})})]})}default:return null}}({filter:n,inputId:ed,column:ei,columnMeta:ec,onFilterUpdate:h,showValueSelector:ee,setShowValueSelector:ea})}),e(g,{"aria-controls":d,variant:"outline",size:"icon",className:"size-8 rounded",onClick:()=>v(n.filterId),children:e(o,{weight:"bold"})}),e(P,{asChild:!0,children:e(g,{variant:"outline",size:"icon",className:"size-8 rounded",children:e(i,{weight:"bold"})})})]})})}export{et as DataTableFilterList};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{Fragment as e,jsx as n,jsxs as t}from"react/jsx-runtime";import{Calendar as a,Check as l,FunnelSimple as r,SealCheck as i,TextAlignLeft as o,X as c}from"@phosphor-icons/react";import{useQueryState as s}from"nuqs";import{useCallback as d,useEffect as u,useId as m,useMemo as p,useRef as f,useState as h}from"react";import{Button as v}from"../button/index.js";import{Calendar as g}from"../calendar.js";import{Command as b,CommandEmpty as N,CommandGroup as w,CommandInput as x,CommandItem as D,CommandList as y}from"../command.js";import{DataTableRangeFilter as S}from"./data-table-range-filter.js";import{Input as C}from"../input/index.js";import{Popover as I,PopoverContent as k,PopoverTrigger as T}from"../popover.js";import{Select as F,SelectContent as j,SelectItem as z,SelectTrigger as E,SelectValue as $}from"../select.js";import{useDebouncedCallback as L}from"../../hooks/use-debounced-callback.js";import{getDefaultFilterOperator as A,getFilterOperators as O}from"../../lib/data-table.js";import{formatDate as K}from"../../lib/format.js";import{generateId as _}from"../../lib/id.js";import{getFiltersStateParser as B}from"../../lib/parsers.js";import{cn as M}from"../../utils/utils.js";let H=["backspace","delete"];function R({table:a,debounceMs:l=300,throttleMs:i=50,shallow:o=!0,align:g="start",...S}){let C=m(),F=p(()=>a.getAllColumns().filter(e=>e.columnDef.enableColumnFilter),[a]),[j,z]=h(!1),[E,$]=h(null),[O,K]=h(""),R=f(null),U=f(null),P=d(e=>{z(e),e||setTimeout(()=>{$(null),K("")},100)},[]),G=d(e=>{H.includes(e.key.toLowerCase())&&!O&&E&&(e.preventDefault(),$(null))},[O,E]),[J,Q]=s("filters",B(F.map(e=>e.id)).withDefault([]).withOptions({clearOnDefault:!0,shallow:o,throttleMs:i})),W=L(Q,l),X=d((e,n)=>{if(!n.trim()&&e.columnDef.meta?.variant!=="boolean")return;let t=e.columnDef.meta?.variant==="multiSelect"?[n]:n;W([...J,{id:e.id,value:t,variant:e.columnDef.meta?.variant??"text",operator:A(e.columnDef.meta?.variant??"text"),filterId:_({length:8})}]),z(!1),setTimeout(()=>{$(null),K("")},100)},[J,W]),Y=d(e=>{W(J.filter(n=>n.filterId!==e)),requestAnimationFrame(()=>{R.current?.focus()})},[J,W]),Z=d((e,n)=>{W(t=>t.map(t=>t.filterId===e?{...t,...n}:t))},[W]),ee=d(()=>{W([])},[W]);u(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("f"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),z(!0)),"f"===e.key.toLowerCase()&&e.shiftKey&&!j&&J.length>0&&(e.preventDefault(),Y(J[J.length-1]?.filterId??"")))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[j,J,Y]);let en=d(e=>{H.includes(e.key.toLowerCase())&&J.length>0&&(e.preventDefault(),Y(J[J.length-1]?.filterId??""))},[J,Y]);return t("div",{className:"flex flex-wrap items-center gap-2",children:[J.map(e=>n(V,{filter:e,filterItemId:`${C}-filter-${e.filterId}`,columns:F,onFilterUpdate:Z,onFilterRemove:Y},e.filterId)),J.length>0&&n(v,{"aria-label":"Reset all filters",variant:"outline",size:"icon",className:"size-8",onClick:ee,children:n(c,{})}),t(I,{open:j,onOpenChange:P,children:[n(T,{asChild:!0,children:t(v,{"aria-label":"Open filter command menu",variant:"outline",size:J.length>0?"icon":"sm",className:M(J.length>0&&"size-8","h-10"),ref:R,onKeyDown:en,children:[n(r,{}),J.length>0?null:"Filter"]})}),n(k,{align:g,className:"w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] p-0",...S,children:t(b,{loop:!0,className:"[&_[cmdk-input-wrapper]_svg]:hidden",children:[n(x,{ref:U,placeholder:E?E.columnDef.meta?.label??E.id:"Search fields...",value:O,onValueChange:K,onKeyDown:G}),n(y,{children:E?t(e,{children:[E.columnDef.meta?.options&&n(N,{children:"No options found."}),n(q,{column:E,value:O,onSelect:e=>X(E,e)})]}):t(e,{children:[n(N,{children:"No fields found."}),n(w,{children:F.map(e=>t(D,{value:e.id,onSelect:()=>{$(e),K(""),requestAnimationFrame(()=>{U.current?.focus()})},children:[e.columnDef.meta?.icon&&n(e.columnDef.meta.icon,{}),n("span",{className:"truncate",children:e.columnDef.meta?.label??e.id})]},e.id))})]})})]})})]})]})}function V({filter:r,filterItemId:i,columns:o,onFilterUpdate:s,onFilterRemove:u}){{let[m,p]=h(!1),[f,L]=h(!1),[_,B]=h(!1),R=d(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(m||f||_||H.includes(e.key.toLowerCase())&&(e.preventDefault(),u(r.filterId)))},[r.filterId,m,f,_,u]),V=o.find(e=>e.id===r.id);if(!V)return null;let q=`${i}-operator-listbox`,U=`${i}-input`,P=V.columnDef.meta,G=O(r.variant);return t("div",{role:"listitem",id:i,className:"flex h-10 items-center rounded-md bg-background",onKeyDown:R,children:[t(I,{open:m,onOpenChange:p,children:[n(T,{asChild:!0,children:t(v,{variant:"ghost",size:"sm",className:"rounded-none rounded-l-md border border-r-0 font-normal dark:bg-input/30",children:[P?.icon&&n(P.icon,{className:"text-muted-foreground"}),P?.label??V.id]})}),n(k,{align:"start",className:"w-48 origin-[var(--radix-popover-content-transform-origin)] p-0",children:t(b,{loop:!0,children:[n(x,{placeholder:"Search fields..."}),t(y,{children:[n(N,{children:"No fields found."}),n(w,{children:o.map(e=>t(D,{value:e.id,onSelect:()=>{s(r.filterId,{id:e.id,variant:e.columnDef.meta?.variant??"text",operator:A(e.columnDef.meta?.variant??"text"),value:""}),p(!1)},children:[e.columnDef.meta?.icon&&n(e.columnDef.meta.icon,{}),n("span",{className:"truncate",children:e.columnDef.meta?.label??e.id}),n(l,{className:M("ml-auto",e.id===r.id?"opacity-100":"opacity-0")})]},e.id))})]})]})})]}),t(F,{open:f,onOpenChange:L,value:r.operator,onValueChange:e=>s(r.filterId,{operator:e,value:"isEmpty"===e||"isNotEmpty"===e?"":r.value}),children:[n(E,{"aria-controls":q,className:"h-10 rounded-none border-r-0 px-2.5 lowercase [&[data-size]]:h-10 [&_svg]:hidden",children:n($,{placeholder:r.operator})}),n(j,{id:q,className:"origin-[var(--radix-select-content-transform-origin)]",children:G.map(e=>n(z,{className:"lowercase",value:e.value,children:e.label},e.value))})]}),function({filter:r,column:i,inputId:o,onFilterUpdate:c,showValueSelector:s,setShowValueSelector:d}){if("isEmpty"===r.operator||"isNotEmpty"===r.operator)return n("div",{id:o,role:"status","aria-label":`${i.columnDef.meta?.label} filter is ${"isEmpty"===r.operator?"empty":"not empty"}`,"aria-live":"polite",className:"h-full w-16 rounded-none border bg-transparent px-1.5 py-0.5 text-muted-foreground dark:bg-input/30"});switch(r.variant){case"text":case"number":case"range":{if("range"===r.variant&&"isBetween"===r.operator||"isBetween"===r.operator)return n(S,{filter:r,column:i,inputId:o,onFilterUpdate:c,className:"size-full max-w-28 gap-0 [&_[data-slot='range-min']]:border-r-0 [&_input]:rounded-none [&_input]:px-1.5"});let e="number"===r.variant||"range"===r.variant;return n(C,{id:o,type:e?"number":"text",inputMode:e?"numeric":void 0,placeholder:i.columnDef.meta?.placeholder??"Enter value...",className:"h-full w-24 rounded-none px-1.5",defaultValue:"string"==typeof r.value?r.value:"",onChange:e=>c(r.filterId,{value:e.target.value})})}case"boolean":{let e=`${o}-listbox`;return t(F,{open:s,onOpenChange:d,value:"string"==typeof r.value?r.value:"true",onValueChange:e=>c(r.filterId,{value:e}),children:[n(E,{id:o,"aria-controls":e,className:"rounded-none bg-transparent px-1.5 py-0.5 [&_svg]:hidden",children:n($,{placeholder:r.value?"True":"False"})}),t(j,{id:e,children:[n(z,{value:"true",children:"True"}),n(z,{value:"false",children:"False"})]})]})}case"select":case"multiSelect":{let a=`${o}-listbox`,u=i.columnDef.meta?.options??[],m=Array.isArray(r.value)?r.value:[r.value],p=u.filter(e=>m.includes(e.value));return t(I,{open:s,onOpenChange:d,children:[n(T,{asChild:!0,children:n(v,{id:o,"aria-controls":a,variant:"ghost",size:"sm",className:"h-full min-w-16 rounded-none border px-1.5 font-normal dark:bg-input/30",children:0===p.length?"multiSelect"===r.variant?"Select options...":"Select option...":t(e,{children:[n("div",{className:"-space-x-2 flex items-center rtl:space-x-reverse",children:p.map(e=>e.icon?n("div",{className:"rounded-full border bg-background p-0.5",children:n(e.icon,{className:"size-3.5"})},e.value):null)}),n("span",{className:"truncate",children:p.length>1?`${p.length} selected`:p[0]?.label})]})})}),n(k,{id:a,align:"start",className:"w-48 origin-[var(--radix-popover-content-transform-origin)] p-0",children:t(b,{children:[n(x,{placeholder:"Search options..."}),t(y,{children:[n(N,{children:"No options found."}),n(w,{children:u.map(e=>t(D,{value:e.value,onSelect:()=>{let n="multiSelect"===r.variant?m.includes(e.value)?m.filter(n=>n!==e.value):[...m,e.value]:e.value;c(r.filterId,{value:n})},children:[e.icon&&n(e.icon,{}),n("span",{className:"truncate",children:e.label}),"multiSelect"===r.variant&&n(l,{className:M("ml-auto",m.includes(e.value)?"opacity-100":"opacity-0")})]},e.value))})]})]})})]})}case"date":case"dateRange":{let e=`${o}-listbox`,l=Array.isArray(r.value)?r.value.filter(Boolean):[r.value,r.value].filter(Boolean),i="isBetween"===r.operator&&2===l.length?`${K(new Date(Number(l[0])))} - ${K(new Date(Number(l[1])))}`:l[0]?K(new Date(Number(l[0]))):"Pick date...";return t(I,{open:s,onOpenChange:d,children:[n(T,{asChild:!0,children:t(v,{id:o,"aria-controls":e,variant:"ghost",size:"sm",className:M("h-full rounded-none border px-1.5 font-normal dark:bg-input/30",!r.value&&"text-muted-foreground"),children:[n(a,{className:"size-3.5"}),n("span",{className:"truncate",children:i})]})}),n(k,{id:e,align:"start",className:"w-auto origin-[var(--radix-popover-content-transform-origin)] p-0",children:"isBetween"===r.operator?n(g,{mode:"range",initialFocus:!0,selected:2===l.length?{from:new Date(Number(l[0])),to:new Date(Number(l[1]))}:{from:new Date,to:new Date},onSelect:e=>{c(r.filterId,{value:e?[(e.from?.getTime()??"").toString(),(e.to?.getTime()??"").toString()]:[]})}}):n(g,{mode:"single",initialFocus:!0,selected:l[0]?new Date(Number(l[0])):void 0,onSelect:e=>{c(r.filterId,{value:(e?.getTime()??"").toString()})}})})]})}default:return null}}({filter:r,column:V,inputId:U,onFilterUpdate:s,showValueSelector:_,setShowValueSelector:B}),n(v,{"aria-controls":i,variant:"ghost",size:"sm",className:"h-full rounded-none rounded-r-md border border-l-0 px-1.5 font-normal dark:bg-input/30",onClick:()=>u(r.filterId),children:n(c,{className:"size-3.5"})})]},r.filterId)}}function q({column:a,value:l,onSelect:r}){switch(a.columnDef.meta?.variant??"text"){case"boolean":return t(w,{children:[n(D,{value:"true",onSelect:()=>r("true"),children:"True"}),n(D,{value:"false",onSelect:()=>r("false"),children:"False"})]});case"select":case"multiSelect":return n(w,{children:a.columnDef.meta?.options?.map(e=>t(D,{value:e.value,onSelect:()=>r(e.value),children:[e.icon&&n(e.icon,{}),n("span",{className:"truncate",children:e.label}),e.count&&n("span",{className:"ml-auto font-mono text-xs",children:e.count})]},e.value))});case"date":case"dateRange":return n(g,{initialFocus:!0,mode:"single",selected:l?new Date(l):void 0,onSelect:e=>r(e?.getTime().toString()??"")});default:{let a=!l.trim();return n(w,{children:n(D,{value:l,onSelect:()=>r(l),disabled:a,children:a?t(e,{children:[n(o,{}),n("span",{children:"Type to add filter..."})]}):t(e,{children:[n(i,{}),t("span",{className:"truncate",children:['Filter by "',l,'"']})]})})})}}}export{R as DataTableFilterMenu};
2
+ import{Fragment as e,jsx as n,jsxs as t}from"react/jsx-runtime";import{Calendar as a,Check as l,FunnelSimple as r,SealCheck as i,TextAlignLeft as o,X as c}from"@phosphor-icons/react";import{useQueryState as s}from"nuqs";import{useCallback as d,useEffect as u,useId as m,useMemo as p,useRef as f,useState as h}from"react";import{Button as v}from"../button/index.js";import{Calendar as g}from"../calendar.js";import{Command as b,CommandEmpty as N,CommandGroup as w,CommandInput as x,CommandItem as D,CommandList as y}from"../command.js";import{DataTableRangeFilter as S}from"./data-table-range-filter.js";import{Input as C}from"../input/index.js";import{Popover as I,PopoverContent as k,PopoverTrigger as T}from"../popover.js";import{Select as F,SelectContent as j,SelectItem as z,SelectTrigger as E,SelectValue as $}from"../select.js";import{useDebouncedCallback as L}from"../../hooks/use-debounced-callback.js";import{getDefaultFilterOperator as A,getFilterOperators as O}from"../../lib/data-table.js";import{formatDate as K}from"../../lib/format.js";import{generateId as _}from"../../lib/id.js";import{getFiltersStateParser as B}from"../../lib/parsers.js";import{cn as M}from"../../lib/utils.js";let H=["backspace","delete"];function R({table:a,debounceMs:l=300,throttleMs:i=50,shallow:o=!0,align:g="start",...S}){let C=m(),F=p(()=>a.getAllColumns().filter(e=>e.columnDef.enableColumnFilter),[a]),[j,z]=h(!1),[E,$]=h(null),[O,K]=h(""),R=f(null),U=f(null),P=d(e=>{z(e),e||setTimeout(()=>{$(null),K("")},100)},[]),G=d(e=>{H.includes(e.key.toLowerCase())&&!O&&E&&(e.preventDefault(),$(null))},[O,E]),[J,Q]=s("filters",B(F.map(e=>e.id)).withDefault([]).withOptions({clearOnDefault:!0,shallow:o,throttleMs:i})),W=L(Q,l),X=d((e,n)=>{if(!n.trim()&&e.columnDef.meta?.variant!=="boolean")return;let t=e.columnDef.meta?.variant==="multiSelect"?[n]:n;W([...J,{id:e.id,value:t,variant:e.columnDef.meta?.variant??"text",operator:A(e.columnDef.meta?.variant??"text"),filterId:_({length:8})}]),z(!1),setTimeout(()=>{$(null),K("")},100)},[J,W]),Y=d(e=>{W(J.filter(n=>n.filterId!==e)),requestAnimationFrame(()=>{R.current?.focus()})},[J,W]),Z=d((e,n)=>{W(t=>t.map(t=>t.filterId===e?{...t,...n}:t))},[W]),ee=d(()=>{W([])},[W]);u(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("f"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),z(!0)),"f"===e.key.toLowerCase()&&e.shiftKey&&!j&&J.length>0&&(e.preventDefault(),Y(J[J.length-1]?.filterId??"")))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[j,J,Y]);let en=d(e=>{H.includes(e.key.toLowerCase())&&J.length>0&&(e.preventDefault(),Y(J[J.length-1]?.filterId??""))},[J,Y]);return t("div",{className:"flex flex-wrap items-center gap-2",children:[J.map(e=>n(V,{filter:e,filterItemId:`${C}-filter-${e.filterId}`,columns:F,onFilterUpdate:Z,onFilterRemove:Y},e.filterId)),J.length>0&&n(v,{"aria-label":"Reset all filters",variant:"outline",size:"icon",className:"size-8",onClick:ee,children:n(c,{})}),t(I,{open:j,onOpenChange:P,children:[n(T,{asChild:!0,children:t(v,{"aria-label":"Open filter command menu",variant:"outline",size:J.length>0?"icon":"sm",className:M(J.length>0&&"size-8","h-10"),ref:R,onKeyDown:en,children:[n(r,{}),J.length>0?null:"Filter"]})}),n(k,{align:g,className:"w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] p-0",...S,children:t(b,{loop:!0,className:"[&_[cmdk-input-wrapper]_svg]:hidden",children:[n(x,{ref:U,placeholder:E?E.columnDef.meta?.label??E.id:"Search fields...",value:O,onValueChange:K,onKeyDown:G}),n(y,{children:E?t(e,{children:[E.columnDef.meta?.options&&n(N,{children:"No options found."}),n(q,{column:E,value:O,onSelect:e=>X(E,e)})]}):t(e,{children:[n(N,{children:"No fields found."}),n(w,{children:F.map(e=>t(D,{value:e.id,onSelect:()=>{$(e),K(""),requestAnimationFrame(()=>{U.current?.focus()})},children:[e.columnDef.meta?.icon&&n(e.columnDef.meta.icon,{}),n("span",{className:"truncate",children:e.columnDef.meta?.label??e.id})]},e.id))})]})})]})})]})]})}function V({filter:r,filterItemId:i,columns:o,onFilterUpdate:s,onFilterRemove:u}){{let[m,p]=h(!1),[f,L]=h(!1),[_,B]=h(!1),R=d(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(m||f||_||H.includes(e.key.toLowerCase())&&(e.preventDefault(),u(r.filterId)))},[r.filterId,m,f,_,u]),V=o.find(e=>e.id===r.id);if(!V)return null;let q=`${i}-operator-listbox`,U=`${i}-input`,P=V.columnDef.meta,G=O(r.variant);return t("div",{role:"listitem",id:i,className:"flex h-10 items-center rounded-md bg-background",onKeyDown:R,children:[t(I,{open:m,onOpenChange:p,children:[n(T,{asChild:!0,children:t(v,{variant:"ghost",size:"sm",className:"rounded-none rounded-l-md border border-r-0 font-normal dark:bg-input/30",children:[P?.icon&&n(P.icon,{className:"text-muted-foreground"}),P?.label??V.id]})}),n(k,{align:"start",className:"w-48 origin-[var(--radix-popover-content-transform-origin)] p-0",children:t(b,{loop:!0,children:[n(x,{placeholder:"Search fields..."}),t(y,{children:[n(N,{children:"No fields found."}),n(w,{children:o.map(e=>t(D,{value:e.id,onSelect:()=>{s(r.filterId,{id:e.id,variant:e.columnDef.meta?.variant??"text",operator:A(e.columnDef.meta?.variant??"text"),value:""}),p(!1)},children:[e.columnDef.meta?.icon&&n(e.columnDef.meta.icon,{}),n("span",{className:"truncate",children:e.columnDef.meta?.label??e.id}),n(l,{className:M("ml-auto",e.id===r.id?"opacity-100":"opacity-0")})]},e.id))})]})]})})]}),t(F,{open:f,onOpenChange:L,value:r.operator,onValueChange:e=>s(r.filterId,{operator:e,value:"isEmpty"===e||"isNotEmpty"===e?"":r.value}),children:[n(E,{"aria-controls":q,className:"h-10 rounded-none border-r-0 px-2.5 lowercase [&[data-size]]:h-10 [&_svg]:hidden",children:n($,{placeholder:r.operator})}),n(j,{id:q,className:"origin-[var(--radix-select-content-transform-origin)]",children:G.map(e=>n(z,{className:"lowercase",value:e.value,children:e.label},e.value))})]}),function({filter:r,column:i,inputId:o,onFilterUpdate:c,showValueSelector:s,setShowValueSelector:d}){if("isEmpty"===r.operator||"isNotEmpty"===r.operator)return n("div",{id:o,role:"status","aria-label":`${i.columnDef.meta?.label} filter is ${"isEmpty"===r.operator?"empty":"not empty"}`,"aria-live":"polite",className:"h-full w-16 rounded-none border bg-transparent px-1.5 py-0.5 text-muted-foreground dark:bg-input/30"});switch(r.variant){case"text":case"number":case"range":{if("range"===r.variant&&"isBetween"===r.operator||"isBetween"===r.operator)return n(S,{filter:r,column:i,inputId:o,onFilterUpdate:c,className:"size-full max-w-28 gap-0 [&_[data-slot='range-min']]:border-r-0 [&_input]:rounded-none [&_input]:px-1.5"});let e="number"===r.variant||"range"===r.variant;return n(C,{id:o,type:e?"number":"text",inputMode:e?"numeric":void 0,placeholder:i.columnDef.meta?.placeholder??"Enter value...",className:"h-full w-24 rounded-none px-1.5",defaultValue:"string"==typeof r.value?r.value:"",onChange:e=>c(r.filterId,{value:e.target.value})})}case"boolean":{let e=`${o}-listbox`;return t(F,{open:s,onOpenChange:d,value:"string"==typeof r.value?r.value:"true",onValueChange:e=>c(r.filterId,{value:e}),children:[n(E,{id:o,"aria-controls":e,className:"rounded-none bg-transparent px-1.5 py-0.5 [&_svg]:hidden",children:n($,{placeholder:r.value?"True":"False"})}),t(j,{id:e,children:[n(z,{value:"true",children:"True"}),n(z,{value:"false",children:"False"})]})]})}case"select":case"multiSelect":{let a=`${o}-listbox`,u=i.columnDef.meta?.options??[],m=Array.isArray(r.value)?r.value:[r.value],p=u.filter(e=>m.includes(e.value));return t(I,{open:s,onOpenChange:d,children:[n(T,{asChild:!0,children:n(v,{id:o,"aria-controls":a,variant:"ghost",size:"sm",className:"h-full min-w-16 rounded-none border px-1.5 font-normal dark:bg-input/30",children:0===p.length?"multiSelect"===r.variant?"Select options...":"Select option...":t(e,{children:[n("div",{className:"-space-x-2 flex items-center rtl:space-x-reverse",children:p.map(e=>e.icon?n("div",{className:"rounded-full border bg-background p-0.5",children:n(e.icon,{className:"size-3.5"})},e.value):null)}),n("span",{className:"truncate",children:p.length>1?`${p.length} selected`:p[0]?.label})]})})}),n(k,{id:a,align:"start",className:"w-48 origin-[var(--radix-popover-content-transform-origin)] p-0",children:t(b,{children:[n(x,{placeholder:"Search options..."}),t(y,{children:[n(N,{children:"No options found."}),n(w,{children:u.map(e=>t(D,{value:e.value,onSelect:()=>{let n="multiSelect"===r.variant?m.includes(e.value)?m.filter(n=>n!==e.value):[...m,e.value]:e.value;c(r.filterId,{value:n})},children:[e.icon&&n(e.icon,{}),n("span",{className:"truncate",children:e.label}),"multiSelect"===r.variant&&n(l,{className:M("ml-auto",m.includes(e.value)?"opacity-100":"opacity-0")})]},e.value))})]})]})})]})}case"date":case"dateRange":{let e=`${o}-listbox`,l=Array.isArray(r.value)?r.value.filter(Boolean):[r.value,r.value].filter(Boolean),i="isBetween"===r.operator&&2===l.length?`${K(new Date(Number(l[0])))} - ${K(new Date(Number(l[1])))}`:l[0]?K(new Date(Number(l[0]))):"Pick date...";return t(I,{open:s,onOpenChange:d,children:[n(T,{asChild:!0,children:t(v,{id:o,"aria-controls":e,variant:"ghost",size:"sm",className:M("h-full rounded-none border px-1.5 font-normal dark:bg-input/30",!r.value&&"text-muted-foreground"),children:[n(a,{className:"size-3.5"}),n("span",{className:"truncate",children:i})]})}),n(k,{id:e,align:"start",className:"w-auto origin-[var(--radix-popover-content-transform-origin)] p-0",children:"isBetween"===r.operator?n(g,{mode:"range",initialFocus:!0,selected:2===l.length?{from:new Date(Number(l[0])),to:new Date(Number(l[1]))}:{from:new Date,to:new Date},onSelect:e=>{c(r.filterId,{value:e?[(e.from?.getTime()??"").toString(),(e.to?.getTime()??"").toString()]:[]})}}):n(g,{mode:"single",initialFocus:!0,selected:l[0]?new Date(Number(l[0])):void 0,onSelect:e=>{c(r.filterId,{value:(e?.getTime()??"").toString()})}})})]})}default:return null}}({filter:r,column:V,inputId:U,onFilterUpdate:s,showValueSelector:_,setShowValueSelector:B}),n(v,{"aria-controls":i,variant:"ghost",size:"sm",className:"h-full rounded-none rounded-r-md border border-l-0 px-1.5 font-normal dark:bg-input/30",onClick:()=>u(r.filterId),children:n(c,{className:"size-3.5"})})]},r.filterId)}}function q({column:a,value:l,onSelect:r}){switch(a.columnDef.meta?.variant??"text"){case"boolean":return t(w,{children:[n(D,{value:"true",onSelect:()=>r("true"),children:"True"}),n(D,{value:"false",onSelect:()=>r("false"),children:"False"})]});case"select":case"multiSelect":return n(w,{children:a.columnDef.meta?.options?.map(e=>t(D,{value:e.value,onSelect:()=>r(e.value),children:[e.icon&&n(e.icon,{}),n("span",{className:"truncate",children:e.label}),e.count&&n("span",{className:"ml-auto font-mono text-xs",children:e.count})]},e.value))});case"date":case"dateRange":return n(g,{initialFocus:!0,mode:"single",selected:l?new Date(l):void 0,onSelect:e=>r(e?.getTime().toString()??"")});default:{let a=!l.trim();return n(w,{children:n(D,{value:l,onSelect:()=>r(l),disabled:a,children:a?t(e,{children:[n(o,{}),n("span",{children:"Type to add filter..."})]}):t(e,{children:[n(i,{}),t("span",{className:"truncate",children:['Filter by "',l,'"']})]})})})}}}export{R as DataTableFilterMenu};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{CaretDoubleLeftIcon as i,CaretDoubleRightIcon as t,CaretLeftIcon as l,CaretRightIcon as n}from"@phosphor-icons/react";import{Button as s}from"../button/index.js";import{Select as o,SelectContent as r,SelectItem as d,SelectTrigger as c,SelectValue as g}from"../select.js";import{cn as m}from"../../utils/utils.js";function p({table:p,pageSizeOptions:u=[10,20,30,40,50],className:h,hasRowSelectionCounter:x=!1,...f}){return a("div",{className:m("flex w-full flex-col-reverse items-center justify-between gap-4 overflow-auto p-1 sm:flex-row sm:gap-8",h),...f,children:[e("div",{children:x&&a("div",{className:"flex-1 whitespace-nowrap text-muted-foreground text-sm",children:[p.getFilteredSelectedRowModel().rows.length," de"," ",p.getFilteredRowModel().rows.length," linhas selecionadas."]})}),a("div",{className:"flex flex-col-reverse items-center gap-4 sm:flex-row sm:gap-6 lg:gap-8",children:[a("div",{className:"flex items-center space-x-2",children:[e("p",{className:"whitespace-nowrap font-medium text-sm",children:"Linhas por p\xe1gina"}),a(o,{value:`${p.getState().pagination.pageSize}`,onValueChange:e=>{p.setPageSize(Number(e))},children:[e(c,{className:"h-8 w-20 rounded-md text-sm [&[data-size]]:h-8",children:e(g,{placeholder:p.getState().pagination.pageSize})}),e(r,{side:"top",children:u.map(a=>e(d,{value:`${a}`,children:a},a))})]})]}),a("div",{className:"flex items-center justify-center font-medium text-sm",children:["P\xe1gina ",p.getState().pagination.pageIndex+1," de"," ",p.getPageCount()]}),a("div",{className:"flex items-center gap-2",children:[e(s,{"aria-label":"Go to first page",variant:"outline",size:"icon",className:"hidden size-8 rounded-md lg:flex",onClick:()=>p.setPageIndex(0),disabled:!p.getCanPreviousPage(),children:e(i,{})}),e(s,{"aria-label":"Go to previous page",variant:"outline",size:"icon",className:"size-8 rounded-md",onClick:()=>p.previousPage(),disabled:!p.getCanPreviousPage(),children:e(l,{})}),e(s,{"aria-label":"Go to next page",variant:"outline",size:"icon",className:"size-8 rounded-md",onClick:()=>p.nextPage(),disabled:!p.getCanNextPage(),children:e(n,{})}),e(s,{"aria-label":"Go to last page",variant:"outline",size:"icon",className:"hidden size-8 rounded-md lg:flex",onClick:()=>p.setPageIndex(p.getPageCount()-1),disabled:!p.getCanNextPage(),children:e(t,{})})]})]})]})}export{p as DataTablePagination};
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{CaretDoubleLeftIcon as i,CaretDoubleRightIcon as t,CaretLeftIcon as l,CaretRightIcon as n}from"@phosphor-icons/react";import{Button as s}from"../button/index.js";import{Select as o,SelectContent as r,SelectItem as d,SelectTrigger as c,SelectValue as g}from"../select.js";import{cn as m}from"../../lib/utils.js";function p({table:p,pageSizeOptions:u=[10,20,30,40,50],className:h,hasRowSelectionCounter:x=!1,...f}){return a("div",{className:m("flex w-full flex-col-reverse items-center justify-between gap-4 overflow-auto p-1 sm:flex-row sm:gap-8",h),...f,children:[e("div",{children:x&&a("div",{className:"flex-1 whitespace-nowrap text-muted-foreground text-sm",children:[p.getFilteredSelectedRowModel().rows.length," de"," ",p.getFilteredRowModel().rows.length," linhas selecionadas."]})}),a("div",{className:"flex flex-col-reverse items-center gap-4 sm:flex-row sm:gap-6 lg:gap-8",children:[a("div",{className:"flex items-center space-x-2",children:[e("p",{className:"whitespace-nowrap font-medium text-sm",children:"Linhas por p\xe1gina"}),a(o,{value:`${p.getState().pagination.pageSize}`,onValueChange:e=>{p.setPageSize(Number(e))},children:[e(c,{className:"h-8 w-20 rounded-md text-sm [&[data-size]]:h-8",children:e(g,{placeholder:p.getState().pagination.pageSize})}),e(r,{side:"top",children:u.map(a=>e(d,{value:`${a}`,children:a},a))})]})]}),a("div",{className:"flex items-center justify-center font-medium text-sm",children:["P\xe1gina ",p.getState().pagination.pageIndex+1," de"," ",p.getPageCount()]}),a("div",{className:"flex items-center gap-2",children:[e(s,{"aria-label":"Go to first page",variant:"outline",size:"icon",className:"hidden size-8 rounded-md lg:flex",onClick:()=>p.setPageIndex(0),disabled:!p.getCanPreviousPage(),children:e(i,{})}),e(s,{"aria-label":"Go to previous page",variant:"outline",size:"icon",className:"size-8 rounded-md",onClick:()=>p.previousPage(),disabled:!p.getCanPreviousPage(),children:e(l,{})}),e(s,{"aria-label":"Go to next page",variant:"outline",size:"icon",className:"size-8 rounded-md",onClick:()=>p.nextPage(),disabled:!p.getCanNextPage(),children:e(n,{})}),e(s,{"aria-label":"Go to last page",variant:"outline",size:"icon",className:"hidden size-8 rounded-md lg:flex",onClick:()=>p.setPageIndex(p.getPageCount()-1),disabled:!p.getCanNextPage(),children:e(t,{})})]})]})]})}export{p as DataTablePagination};
@@ -1 +1 @@
1
- {"version":3,"file":"data-table-range-filter.d.ts","sourceRoot":"","sources":["../../../../src/components/data-table/data-table-range-filter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAG9D,UAAU,yBAAyB,CAAC,KAAK,CAAE,SAAQ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;IAC5E,MAAM,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,CACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,KAC5D,IAAI,CAAA;CACV;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,EAC1C,MAAM,EACN,MAAM,EACN,OAAO,EACP,cAAc,EACd,SAAS,EACT,GAAG,KAAK,EACT,EAAE,yBAAyB,CAAC,KAAK,CAAC,2CA+FlC"}
1
+ {"version":3,"file":"data-table-range-filter.d.ts","sourceRoot":"","sources":["../../../../src/components/data-table/data-table-range-filter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAE9D,UAAU,yBAAyB,CAAC,KAAK,CAAE,SAAQ,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;IAC5E,MAAM,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,CACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,KAC5D,IAAI,CAAA;CACV;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,EAC1C,MAAM,EACN,MAAM,EACN,OAAO,EACP,cAAc,EACd,SAAS,EACT,GAAG,KAAK,EACT,EAAE,yBAAyB,CAAC,KAAK,CAAC,2CA+FlC"}
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{useCallback as r,useMemo as l}from"react";import{Input as t}from"../input/index.js";import{cn as i}from"../../utils/utils.js";function u({filter:u,column:m,inputId:n,onFilterUpdate:o,className:d,...s}){let c=m.columnDef.meta,[v,f]=l(()=>{let e=m.columnDef.meta?.range;if(e)return e;let a=m.getFacetedMinMaxValues();return a?[a[0],a[1]]:[0,100]},[m]),g=r(e=>{if(void 0===e||""===e)return"";let a=Number(e);return Number.isNaN(a)?"":a.toLocaleString(void 0,{maximumFractionDigits:0})},[]),p=l(()=>Array.isArray(u.value)?u.value.map(g):[g(u.value),""],[u.value,g]),x=r((e,a)=>{let r=Number(e),l=Array.isArray(u.value)?u.value:["",""],t=a?l[1]??"":l[0]??"";(""===e||!Number.isNaN(r)&&(a?r>=v&&r<=(Number(t)||f):r<=f&&r>=(Number(t)||v)))&&o(u.filterId,{value:a?[e,t]:[t,e]})},[u.filterId,u.value,v,f,o]);return a("div",{"data-slot":"range",className:i("flex w-full items-center gap-2",d),...s,children:[e(t,{id:`${n}-min`,type:"number","aria-label":`${c?.label} minimum value`,"aria-valuemin":v,"aria-valuemax":f,"data-slot":"range-min",inputMode:"numeric",placeholder:v.toString(),min:v,max:f,className:"h-10 w-full rounded",defaultValue:p[0],onChange:e=>x(e.target.value,!0)}),e("span",{className:"sr-only shrink-0 text-muted-foreground",children:"to"}),e(t,{id:`${n}-max`,type:"number","aria-label":`${c?.label} maximum value`,"aria-valuemin":v,"aria-valuemax":f,"data-slot":"range-max",inputMode:"numeric",placeholder:f.toString(),min:v,max:f,className:"h-10 w-full rounded",defaultValue:p[1],onChange:e=>x(e.target.value)})]})}export{u as DataTableRangeFilter};
2
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{useCallback as r,useMemo as l}from"react";import{Input as t}from"../input/index.js";import{cn as i}from"../../lib/utils.js";function u({filter:u,column:m,inputId:n,onFilterUpdate:o,className:d,...s}){let c=m.columnDef.meta,[v,f]=l(()=>{let e=m.columnDef.meta?.range;if(e)return e;let a=m.getFacetedMinMaxValues();return a?[a[0],a[1]]:[0,100]},[m]),g=r(e=>{if(void 0===e||""===e)return"";let a=Number(e);return Number.isNaN(a)?"":a.toLocaleString(void 0,{maximumFractionDigits:0})},[]),p=l(()=>Array.isArray(u.value)?u.value.map(g):[g(u.value),""],[u.value,g]),b=r((e,a)=>{let r=Number(e),l=Array.isArray(u.value)?u.value:["",""],t=a?l[1]??"":l[0]??"";(""===e||!Number.isNaN(r)&&(a?r>=v&&r<=(Number(t)||f):r<=f&&r>=(Number(t)||v)))&&o(u.filterId,{value:a?[e,t]:[t,e]})},[u.filterId,u.value,v,f,o]);return a("div",{"data-slot":"range",className:i("flex w-full items-center gap-2",d),...s,children:[e(t,{id:`${n}-min`,type:"number","aria-label":`${c?.label} minimum value`,"aria-valuemin":v,"aria-valuemax":f,"data-slot":"range-min",inputMode:"numeric",placeholder:v.toString(),min:v,max:f,className:"h-10 w-full rounded",defaultValue:p[0],onChange:e=>b(e.target.value,!0)}),e("span",{className:"sr-only shrink-0 text-muted-foreground",children:"to"}),e(t,{id:`${n}-max`,type:"number","aria-label":`${c?.label} maximum value`,"aria-valuemin":v,"aria-valuemax":f,"data-slot":"range-max",inputMode:"numeric",placeholder:f.toString(),min:v,max:f,className:"h-10 w-full rounded",defaultValue:p[1],onChange:e=>b(e.target.value)})]})}export{u as DataTableRangeFilter};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import{Skeleton as a}from"../skeleton/index.js";import{Table as s,TableBody as r,TableCell as t,TableHead as m,TableHeader as i,TableRow as n}from"../table.js";import{cn as c}from"../../utils/utils.js";function d({columnCount:d,rowCount:h=10,filterCount:o=0,cellWidths:f=["auto"],withViewOptions:u=!0,withPagination:p=!0,shrinkZero:g=!1,className:N,...w}){let x=Array.from({length:d},(e,l)=>f[l%f.length]??"auto");return l("div",{className:c("flex w-full flex-col gap-2.5 overflow-auto",N),...w,children:[l("div",{className:"flex w-full items-center justify-between gap-2 overflow-auto p-1",children:[e("div",{className:"flex flex-1 items-center gap-2",children:o>0?Array.from({length:o}).map((l,s)=>e(a,{className:"h-7 w-[4.5rem]"},s)):null}),u?e(a,{className:"ml-auto hidden h-7 w-[4.5rem] lg:flex"}):null]}),e("div",{className:"rounded-md border",children:l(s,{children:[e(i,{children:Array.from({length:1}).map((l,s)=>e(n,{className:"hover:bg-transparent",children:Array.from({length:d}).map((l,s)=>e(m,{style:{width:x[s],minWidth:g?x[s]:"auto"},children:e(a,{className:"h-6 w-full"})},s))},s))}),e(r,{children:Array.from({length:h}).map((l,s)=>e(n,{className:"hover:bg-transparent",children:Array.from({length:d}).map((l,s)=>e(t,{style:{width:x[s],minWidth:g?x[s]:"auto"},children:e(a,{className:"h-6 w-full"})},s))},s))})]})}),p?l("div",{className:"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8",children:[e(a,{className:"h-7 w-40 shrink-0"}),l("div",{className:"flex items-center gap-4 sm:gap-6 lg:gap-8",children:[l("div",{className:"flex items-center gap-2",children:[e(a,{className:"h-7 w-24"}),e(a,{className:"h-7 w-[4.5rem]"})]}),e("div",{className:"flex items-center justify-center font-medium text-sm",children:e(a,{className:"h-7 w-20"})}),l("div",{className:"flex items-center gap-2",children:[e(a,{className:"hidden size-7 lg:block"}),e(a,{className:"size-7"}),e(a,{className:"size-7"}),e(a,{className:"hidden size-7 lg:block"})]})]})]}):null]})}export{d as DataTableSkeleton};
1
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import{Skeleton as a}from"../skeleton/index.js";import{Table as s,TableBody as r,TableCell as t,TableHead as m,TableHeader as i,TableRow as n}from"../table.js";import{cn as c}from"../../lib/utils.js";function d({columnCount:d,rowCount:h=10,filterCount:o=0,cellWidths:f=["auto"],withViewOptions:u=!0,withPagination:p=!0,shrinkZero:g=!1,className:N,...w}){let x=Array.from({length:d},(e,l)=>f[l%f.length]??"auto");return l("div",{className:c("flex w-full flex-col gap-2.5 overflow-auto",N),...w,children:[l("div",{className:"flex w-full items-center justify-between gap-2 overflow-auto p-1",children:[e("div",{className:"flex flex-1 items-center gap-2",children:o>0?Array.from({length:o}).map((l,s)=>e(a,{className:"h-7 w-[4.5rem]"},s)):null}),u?e(a,{className:"ml-auto hidden h-7 w-[4.5rem] lg:flex"}):null]}),e("div",{className:"rounded-md border",children:l(s,{children:[e(i,{children:Array.from({length:1}).map((l,s)=>e(n,{className:"hover:bg-transparent",children:Array.from({length:d}).map((l,s)=>e(m,{style:{width:x[s],minWidth:g?x[s]:"auto"},children:e(a,{className:"h-6 w-full"})},s))},s))}),e(r,{children:Array.from({length:h}).map((l,s)=>e(n,{className:"hover:bg-transparent",children:Array.from({length:d}).map((l,s)=>e(t,{style:{width:x[s],minWidth:g?x[s]:"auto"},children:e(a,{className:"h-6 w-full"})},s))},s))})]})}),p?l("div",{className:"flex w-full items-center justify-between gap-4 overflow-auto p-1 sm:gap-8",children:[e(a,{className:"h-7 w-40 shrink-0"}),l("div",{className:"flex items-center gap-4 sm:gap-6 lg:gap-8",children:[l("div",{className:"flex items-center gap-2",children:[e(a,{className:"h-7 w-24"}),e(a,{className:"h-7 w-[4.5rem]"})]}),e("div",{className:"flex items-center justify-center font-medium text-sm",children:e(a,{className:"h-7 w-20"})}),l("div",{className:"flex items-center gap-2",children:[e(a,{className:"hidden size-7 lg:block"}),e(a,{className:"size-7"}),e(a,{className:"size-7"}),e(a,{className:"hidden size-7 lg:block"})]})]})]}):null]})}export{d as DataTableSkeleton};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{Fragment as e,jsx as r,jsxs as t}from"react/jsx-runtime";import{PlusCircle as a,XCircle as i}from"@phosphor-icons/react";import{useCallback as l,useId as n,useMemo as o}from"react";import{Button as s}from"../button/index.js";import{Input as m}from"../input/index.js";import{Label as c}from"../label.js";import{Popover as u,PopoverContent as d,PopoverTrigger as p}from"../popover.js";import{Separator as h}from"../separator.js";import{Slider as f}from"../slider.js";import{cn as g}from"../../utils/utils.js";function v(e){return Array.isArray(e)&&2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]}function b({column:b,title:x}){let N=n(),y=v(b.getFilterValue())?b.getFilterValue():void 0,F=b.columnDef.meta?.range,$=b.columnDef.meta?.unit,{min:j,max:C,step:V}=o(()=>{let e=0,r=100;if(F&&v(F))[e,r]=F;else{let t=b.getFacetedMinMaxValues();if(t&&Array.isArray(t)&&2===t.length){let[a,i]=t;"number"==typeof a&&"number"==typeof i&&(e=a,r=i)}}let t=r-e;return{min:e,max:r,step:t<=20?1:t<=100?Math.ceil(t/20):Math.ceil(t/50)}},[b,F]),M=o(()=>y??[j,C],[y,j,C]),A=l(e=>e.toLocaleString(void 0,{maximumFractionDigits:0}),[]),S=l(e=>{let r=Number(e.target.value);!Number.isNaN(r)&&r>=j&&r<=M[1]&&b.setFilterValue([r,M[1]])},[b,j,M]),D=l(e=>{let r=Number(e.target.value);!Number.isNaN(r)&&r<=C&&r>=M[0]&&b.setFilterValue([M[0],r])},[b,C,M]),w=l(e=>{Array.isArray(e)&&2===e.length&&b.setFilterValue(e)},[b]),L=l(e=>{e.target instanceof HTMLDivElement&&e.stopPropagation(),b.setFilterValue(void 0)},[b]);return t(u,{children:[r(p,{asChild:!0,children:t(s,{variant:"outline",size:"sm",children:[y?r("div",{role:"button","aria-label":`Clear ${x} filter`,tabIndex:0,className:"rounded-sm opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-gray-500",onClick:L,children:r(i,{})}):r(a,{}),r("span",{children:x}),y?t(e,{children:[r(h,{orientation:"vertical",className:"mx-0.5 data-[orientation=vertical]:h-4"}),A(y[0])," -"," ",A(y[1]),$?` ${$}`:""]}):null]})}),t(d,{align:"start",className:"flex w-auto flex-col gap-4",children:[t("div",{className:"flex flex-col gap-3",children:[r("p",{className:"font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:x}),t("div",{className:"flex items-center gap-4",children:[r(c,{htmlFor:`${N}-from`,className:"sr-only",children:"From"}),t("div",{className:"relative",children:[r(m,{id:`${N}-from`,type:"number","aria-valuemin":j,"aria-valuemax":C,inputMode:"numeric",pattern:"[0-9]*",placeholder:j.toString(),min:j,max:C,value:M[0]?.toString(),onChange:S,className:g("h-10 w-24",$&&"pr-8")}),$&&r("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:$})]}),r(c,{htmlFor:`${N}-to`,className:"sr-only",children:"to"}),t("div",{className:"relative",children:[r(m,{id:`${N}-to`,type:"number","aria-valuemin":j,"aria-valuemax":C,inputMode:"numeric",pattern:"[0-9]*",placeholder:C.toString(),min:j,max:C,value:M[1]?.toString(),onChange:D,className:g("h-10 w-24",$&&"pr-8")}),$&&r("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:$})]})]}),t(c,{htmlFor:`${N}-slider`,className:"sr-only",children:[x," slider"]}),r(f,{id:`${N}-slider`,min:j,max:C,step:V,value:M,onValueChange:w})]}),r(s,{"aria-label":`Clear ${x} filter`,variant:"outline",size:"sm",onClick:L,children:"Limpar"})]})]})}export{b as DataTableSliderFilter};
2
+ import{Fragment as e,jsx as r,jsxs as t}from"react/jsx-runtime";import{PlusCircle as a,XCircle as i}from"@phosphor-icons/react";import{useCallback as l,useId as n,useMemo as o}from"react";import{Button as m}from"../button/index.js";import{Input as s}from"../input/index.js";import{Label as c}from"../label.js";import{Popover as u,PopoverContent as d,PopoverTrigger as p}from"../popover.js";import{Separator as h}from"../separator.js";import{Slider as f}from"../slider.js";import{cn as g}from"../../lib/utils.js";function b(e){return Array.isArray(e)&&2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]}function v({column:v,title:x}){let N=n(),y=b(v.getFilterValue())?v.getFilterValue():void 0,F=v.columnDef.meta?.range,$=v.columnDef.meta?.unit,{min:j,max:C,step:V}=o(()=>{let e=0,r=100;if(F&&b(F))[e,r]=F;else{let t=v.getFacetedMinMaxValues();if(t&&Array.isArray(t)&&2===t.length){let[a,i]=t;"number"==typeof a&&"number"==typeof i&&(e=a,r=i)}}let t=r-e;return{min:e,max:r,step:t<=20?1:t<=100?Math.ceil(t/20):Math.ceil(t/50)}},[v,F]),M=o(()=>y??[j,C],[y,j,C]),A=l(e=>e.toLocaleString(void 0,{maximumFractionDigits:0}),[]),S=l(e=>{let r=Number(e.target.value);!Number.isNaN(r)&&r>=j&&r<=M[1]&&v.setFilterValue([r,M[1]])},[v,j,M]),D=l(e=>{let r=Number(e.target.value);!Number.isNaN(r)&&r<=C&&r>=M[0]&&v.setFilterValue([M[0],r])},[v,C,M]),w=l(e=>{Array.isArray(e)&&2===e.length&&v.setFilterValue(e)},[v]),L=l(e=>{e.target instanceof HTMLDivElement&&e.stopPropagation(),v.setFilterValue(void 0)},[v]);return t(u,{children:[r(p,{asChild:!0,children:t(m,{variant:"outline",size:"sm",children:[y?r("div",{role:"button","aria-label":`Clear ${x} filter`,tabIndex:0,className:"rounded-sm opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-gray-500",onClick:L,children:r(i,{})}):r(a,{}),r("span",{children:x}),y?t(e,{children:[r(h,{orientation:"vertical",className:"mx-0.5 data-[orientation=vertical]:h-4"}),A(y[0])," -"," ",A(y[1]),$?` ${$}`:""]}):null]})}),t(d,{align:"start",className:"flex w-auto flex-col gap-4",children:[t("div",{className:"flex flex-col gap-3",children:[r("p",{className:"font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:x}),t("div",{className:"flex items-center gap-4",children:[r(c,{htmlFor:`${N}-from`,className:"sr-only",children:"From"}),t("div",{className:"relative",children:[r(s,{id:`${N}-from`,type:"number","aria-valuemin":j,"aria-valuemax":C,inputMode:"numeric",pattern:"[0-9]*",placeholder:j.toString(),min:j,max:C,value:M[0]?.toString(),onChange:S,className:g("h-10 w-24",$&&"pr-8")}),$&&r("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:$})]}),r(c,{htmlFor:`${N}-to`,className:"sr-only",children:"to"}),t("div",{className:"relative",children:[r(s,{id:`${N}-to`,type:"number","aria-valuemin":j,"aria-valuemax":C,inputMode:"numeric",pattern:"[0-9]*",placeholder:C.toString(),min:j,max:C,value:M[1]?.toString(),onChange:D,className:g("h-10 w-24",$&&"pr-8")}),$&&r("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:$})]})]}),t(c,{htmlFor:`${N}-slider`,className:"sr-only",children:[x," slider"]}),r(f,{id:`${N}-slider`,min:j,max:C,step:V,value:M,onValueChange:w})]}),r(m,{"aria-label":`Clear ${x} filter`,variant:"outline",size:"sm",onClick:L,children:"Limpar"})]})]})}export{v as DataTableSliderFilter};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as i}from"react/jsx-runtime";import{ArrowsDownUpIcon as n,CaretUpDownIcon as a,DotsSixVerticalIcon as r,TrashIcon as t}from"@phosphor-icons/react";import{useCallback as l,useEffect as o,useId as s,useMemo as d,useRef as c,useState as m}from"react";import{Badge as h}from"../badge/index.js";import{Button as p}from"../button/index.js";import{Command as u,CommandEmpty as g,CommandGroup as f,CommandInput as v,CommandItem as x,CommandList as w}from"../command.js";import{Popover as b,PopoverContent as N,PopoverTrigger as y}from"../popover.js";import{Select as C,SelectContent as k,SelectItem as z,SelectTrigger as L,SelectValue as j}from"../select.js";import{Sortable as S,SortableContent as D,SortableItem as T,SortableItemHandle as E,SortableOverlay as I}from"../sortable.js";import{dataTableConfig as K}from"../../lib/data-table-config.js";import{cn as M}from"../../utils/utils.js";let O=["backspace","delete"];function A({table:a,...r}){let t=s(),u=s(),g=s(),[f,v]=m(!1),x=c(null),w=a.getState().sorting,C=a.setSorting,{columnLabels:k,columns:z}=d(()=>{let e=new Map,i=new Set(w.map(e=>e.id)),n=[];for(let r of a.getAllColumns()){if(!r.getCanSort())continue;let a=r.columnDef.meta?.label??r.id;e.set(r.id,a),i.has(r.id)||n.push({id:r.id,label:a})}return{columnLabels:e,columns:n}},[w,a]),L=l(()=>{let e=z[0];e&&C(i=>[...i,{id:e.id,desc:!1}])},[z,C]),j=l((e,i)=>{C(n=>n?n.map(n=>n.id===e?{...n,...i}:n):n)},[C]),T=l(e=>{C(i=>i.filter(i=>i.id!==e))},[C]),E=l(()=>C(a.initialState.sorting),[C,a.initialState.sorting]);o(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("s"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),v(!0)),"s"===e.key.toLowerCase()&&e.shiftKey&&w.length>0&&(e.preventDefault(),E()))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[w.length,E]);let K=l(e=>{O.includes(e.key.toLowerCase())&&w.length>0&&(e.preventDefault(),E())},[w.length,E]);return i(S,{value:w,onValueChange:C,getItemValue:e=>e.id,children:[i(b,{open:f,onOpenChange:v,children:[e(y,{asChild:!0,children:i(p,{variant:"outline",size:"sm",onKeyDown:K,children:[e(n,{}),"Ordenar",w.length>0&&e(h,{variant:"secondary",className:"h-[18.24px] rounded-[3.2px] px-[5.12px] font-mono font-normal text-[10.4px]",children:w.length})]})}),i(N,{"aria-labelledby":u,"aria-describedby":g,className:"flex w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] flex-col gap-3.5 p-4 sm:min-w-[380px]",...r,children:[i("div",{className:"flex flex-col gap-1",children:[e("h4",{id:u,className:"font-medium leading-none",children:w.length>0?"Ordenar por":"Nenhuma ordena\xe7\xe3o aplicada"}),e("p",{id:g,className:M("text-gray-500 text-sm",w.length>0&&"sr-only"),children:w.length>0?"Modifique a ordena\xe7\xe3o para organizar suas linhas.":"Adicione uma ordena\xe7\xe3o para organizar suas linhas."})]}),w.length>0&&e(D,{asChild:!0,children:e("div",{role:"list",className:"flex max-h-[300px] flex-col gap-2 overflow-y-auto p-1",children:w.map(i=>e($,{sort:i,sortItemId:`${t}-sort-${i.id}`,columns:z,columnLabels:k,onSortUpdate:j,onSortRemove:T},i.id))})}),i("div",{className:"flex w-full items-center gap-2",children:[e(p,{size:"sm",className:"rounded",ref:x,onClick:L,disabled:0===z.length,children:"Adicionar"}),w.length>0&&e(p,{variant:"outline",size:"sm",className:"rounded",onClick:E,children:"Resetar"})]})]})]}),e(I,{children:i("div",{className:"flex items-center gap-2",children:[e("div",{className:"h-10 w-[180px] rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-24 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"})]})})]})}function $({sort:n,sortItemId:o,columns:s,columnLabels:d,onSortUpdate:c,onSortRemove:h}){let S=`${o}-field-listbox`,D=`${o}-field-trigger`,I=`${o}-direction-listbox`,[M,A]=m(!1),[$,H]=m(!1),V=l(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(M||$||O.includes(e.key.toLowerCase())&&(e.preventDefault(),h(n.id)))},[n.id,M,$,h]);return e(T,{value:n.id,asChild:!0,children:i("div",{role:"listitem",id:o,tabIndex:-1,className:"flex items-center gap-2",onKeyDown:V,children:[i(b,{open:M,onOpenChange:A,children:[e(y,{asChild:!0,children:i(p,{id:D,role:"combobox","aria-controls":S,variant:"outline",size:"sm",className:"w-44 justify-between rounded font-normal",children:[e("span",{className:"truncate",children:d.get(n.id)}),e(a,{className:"opacity-50"})]})}),e(N,{id:S,className:"w-[var(--radix-popover-trigger-width)] origin-[var(--radix-popover-content-transform-origin)] p-0",children:i(u,{children:[e(v,{placeholder:"Buscar campo..."}),i(w,{children:[e(g,{children:"Nenhum campo encontrado."}),e(f,{children:s.map(i=>e(x,{value:i.id,onSelect:e=>c(n.id,{id:e}),children:e("span",{className:"truncate",children:i.label})},i.id))})]})]})})]}),i(C,{open:$,onOpenChange:H,value:n.desc?"desc":"asc",onValueChange:e=>c(n.id,{desc:"desc"===e}),children:[e(L,{"aria-controls":I,className:"h-10 w-24 rounded [&[data-size]]:h-10",children:e(j,{})}),e(k,{id:I,className:"min-w-[var(--radix-select-trigger-width)] origin-[var(--radix-select-content-transform-origin)]",children:K.sortOrders.map(i=>e(z,{value:i.value,children:i.label},i.value))})]}),e(p,{"aria-controls":o,variant:"outline",size:"icon",className:"size-10 shrink-0 rounded",onClick:()=>h(n.id),children:e(t,{weight:"bold"})}),e(E,{asChild:!0,children:e(p,{variant:"outline",size:"icon",className:"size-10 shrink-0 rounded",children:e(r,{weight:"bold"})})})]})})}export{A as DataTableSortList};
2
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{ArrowsDownUpIcon as n,CaretUpDownIcon as a,DotsSixVerticalIcon as r,TrashIcon as t}from"@phosphor-icons/react";import{useCallback as l,useEffect as o,useId as s,useMemo as d,useRef as c,useState as m}from"react";import{Badge as h}from"../badge/index.js";import{Button as p}from"../button/index.js";import{Command as u,CommandEmpty as g,CommandGroup as f,CommandInput as v,CommandItem as x,CommandList as b}from"../command.js";import{Popover as w,PopoverContent as N,PopoverTrigger as y}from"../popover.js";import{Select as C,SelectContent as k,SelectItem as z,SelectTrigger as L,SelectValue as j}from"../select.js";import{Sortable as S,SortableContent as D,SortableItem as T,SortableItemHandle as E,SortableOverlay as I}from"../sortable.js";import{dataTableConfig as K}from"../../lib/data-table-config.js";import{cn as M}from"../../lib/utils.js";let O=["backspace","delete"];function A({table:a,...r}){let t=s(),u=s(),g=s(),[f,v]=m(!1),x=c(null),b=a.getState().sorting,C=a.setSorting,{columnLabels:k,columns:z}=d(()=>{let e=new Map,i=new Set(b.map(e=>e.id)),n=[];for(let r of a.getAllColumns()){if(!r.getCanSort())continue;let a=r.columnDef.meta?.label??r.id;e.set(r.id,a),i.has(r.id)||n.push({id:r.id,label:a})}return{columnLabels:e,columns:n}},[b,a]),L=l(()=>{let e=z[0];e&&C(i=>[...i,{id:e.id,desc:!1}])},[z,C]),j=l((e,i)=>{C(n=>n?n.map(n=>n.id===e?{...n,...i}:n):n)},[C]),T=l(e=>{C(i=>i.filter(i=>i.id!==e))},[C]),E=l(()=>C(a.initialState.sorting),[C,a.initialState.sorting]);o(()=>{function e(e){!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&("s"!==e.key.toLowerCase()||e.ctrlKey||e.metaKey||e.shiftKey||(e.preventDefault(),v(!0)),"s"===e.key.toLowerCase()&&e.shiftKey&&b.length>0&&(e.preventDefault(),E()))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[b.length,E]);let K=l(e=>{O.includes(e.key.toLowerCase())&&b.length>0&&(e.preventDefault(),E())},[b.length,E]);return i(S,{value:b,onValueChange:C,getItemValue:e=>e.id,children:[i(w,{open:f,onOpenChange:v,children:[e(y,{asChild:!0,children:i(p,{variant:"outline",size:"sm",onKeyDown:K,children:[e(n,{}),"Ordenar",b.length>0&&e(h,{variant:"secondary",className:"h-[18.24px] rounded-[3.2px] px-[5.12px] font-mono font-normal text-[10.4px]",children:b.length})]})}),i(N,{"aria-labelledby":u,"aria-describedby":g,className:"flex w-full max-w-[var(--radix-popover-content-available-width)] origin-[var(--radix-popover-content-transform-origin)] flex-col gap-3.5 p-4 sm:min-w-[380px]",...r,children:[i("div",{className:"flex flex-col gap-1",children:[e("h4",{id:u,className:"font-medium leading-none",children:b.length>0?"Ordenar por":"Nenhuma ordena\xe7\xe3o aplicada"}),e("p",{id:g,className:M("text-gray-500 text-sm",b.length>0&&"sr-only"),children:b.length>0?"Modifique a ordena\xe7\xe3o para organizar suas linhas.":"Adicione uma ordena\xe7\xe3o para organizar suas linhas."})]}),b.length>0&&e(D,{asChild:!0,children:e("div",{role:"list",className:"flex max-h-[300px] flex-col gap-2 overflow-y-auto p-1",children:b.map(i=>e($,{sort:i,sortItemId:`${t}-sort-${i.id}`,columns:z,columnLabels:k,onSortUpdate:j,onSortRemove:T},i.id))})}),i("div",{className:"flex w-full items-center gap-2",children:[e(p,{size:"sm",className:"rounded",ref:x,onClick:L,disabled:0===z.length,children:"Adicionar"}),b.length>0&&e(p,{variant:"outline",size:"sm",className:"rounded",onClick:E,children:"Resetar"})]})]})]}),e(I,{children:i("div",{className:"flex items-center gap-2",children:[e("div",{className:"h-10 w-[180px] rounded-sm bg-primary/10"}),e("div",{className:"h-10 w-24 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"}),e("div",{className:"size-8 shrink-0 rounded-sm bg-primary/10"})]})})]})}function $({sort:n,sortItemId:o,columns:s,columnLabels:d,onSortUpdate:c,onSortRemove:h}){let S=`${o}-field-listbox`,D=`${o}-field-trigger`,I=`${o}-direction-listbox`,[M,A]=m(!1),[$,H]=m(!1),V=l(e=>{!(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)&&(M||$||O.includes(e.key.toLowerCase())&&(e.preventDefault(),h(n.id)))},[n.id,M,$,h]);return e(T,{value:n.id,asChild:!0,children:i("div",{role:"listitem",id:o,tabIndex:-1,className:"flex items-center gap-2",onKeyDown:V,children:[i(w,{open:M,onOpenChange:A,children:[e(y,{asChild:!0,children:i(p,{id:D,role:"combobox","aria-controls":S,variant:"outline",size:"sm",className:"w-44 justify-between rounded font-normal",children:[e("span",{className:"truncate",children:d.get(n.id)}),e(a,{className:"opacity-50"})]})}),e(N,{id:S,className:"w-[var(--radix-popover-trigger-width)] origin-[var(--radix-popover-content-transform-origin)] p-0",children:i(u,{children:[e(v,{placeholder:"Buscar campo..."}),i(b,{children:[e(g,{children:"Nenhum campo encontrado."}),e(f,{children:s.map(i=>e(x,{value:i.id,onSelect:e=>c(n.id,{id:e}),children:e("span",{className:"truncate",children:i.label})},i.id))})]})]})})]}),i(C,{open:$,onOpenChange:H,value:n.desc?"desc":"asc",onValueChange:e=>c(n.id,{desc:"desc"===e}),children:[e(L,{"aria-controls":I,className:"h-10 w-24 rounded [&[data-size]]:h-10",children:e(j,{})}),e(k,{id:I,className:"min-w-[var(--radix-select-trigger-width)] origin-[var(--radix-select-content-transform-origin)]",children:K.sortOrders.map(i=>e(z,{value:i.value,children:i.label},i.value))})]}),e(p,{"aria-controls":o,variant:"outline",size:"icon",className:"size-10 shrink-0 rounded",onClick:()=>h(n.id),children:e(t,{weight:"bold"})}),e(E,{asChild:!0,children:e(p,{variant:"outline",size:"icon",className:"size-10 shrink-0 rounded",children:e(r,{weight:"bold"})})})]})})}export{A as DataTableSortList};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{XIcon as l}from"@phosphor-icons/react";import{useCallback as a,useMemo as r}from"react";import{Button as i}from"../button/index.js";import{DataTableDateFilter as n}from"./data-table-date-filter.js";import{DataTableFacetedFilter as o}from"./data-table-faceted-filter.js";import{DataTableSliderFilter as s}from"./data-table-slider-filter.js";import{DataTableViewOptions as m}from"./data-table-view-options.js";import{Input as u}from"../input/index.js";import{cn as c}from"../../utils/utils.js";function p({table:n,children:o,className:s,...u}){let p=n.getState().columnFilters.length>0,f=r(()=>n.getAllColumns().filter(e=>e.getCanFilter()),[n]),b=a(()=>{n.resetColumnFilters()},[n]);return t("div",{role:"toolbar","aria-orientation":"horizontal",className:c("flex w-full items-start justify-between gap-2",s),...u,children:[t("div",{className:"flex flex-1 flex-wrap items-center gap-2",children:[f.map(t=>e(d,{column:t},t.id)),p&&t(i,{"aria-label":"Reset filters",variant:"outline",size:"sm",onClick:b,children:[e(l,{}),"Limpar"]})]}),t("div",{className:"flex items-center gap-2",children:[o,e(m,{table:n})]})]})}function d({column:l}){{let r=l.columnDef.meta;return a(()=>{if(!r?.variant)return null;switch(r.variant){case"text":return e(u,{placeholder:r.placeholder??r.label,value:l.getFilterValue()??"",onChange:e=>l.setFilterValue(e.target.value),className:"h-9 w-40 lg:w-56",classNames:{input:"text-sm"}});case"number":return t("div",{className:"relative",children:[e(u,{type:"number",inputMode:"numeric",placeholder:r.placeholder??r.label,value:l.getFilterValue()??"",onChange:e=>l.setFilterValue(e.target.value),className:c("h-10 w-[120px]",r.unit&&"pr-8"),classNames:{input:"text-sm"}}),r.unit&&e("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:r.unit})]});case"range":return e(s,{column:l,title:r.label??l.id});case"date":case"dateRange":return e(n,{column:l,title:r.label??l.id,multiple:"dateRange"===r.variant});case"select":case"multiSelect":return e(o,{column:l,title:r.label??l.id,options:r.options??[],multiple:"multiSelect"===r.variant});default:return null}},[l,r])()}}export{p as DataTableToolbar};
2
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{XIcon as l}from"@phosphor-icons/react";import{useCallback as a,useMemo as r}from"react";import{Button as i}from"../button/index.js";import{DataTableDateFilter as n}from"./data-table-date-filter.js";import{DataTableFacetedFilter as o}from"./data-table-faceted-filter.js";import{DataTableSliderFilter as s}from"./data-table-slider-filter.js";import{DataTableViewOptions as m}from"./data-table-view-options.js";import{Input as u}from"../input/index.js";import{cn as c}from"../../lib/utils.js";function p({table:n,children:o,className:s,...u}){let p=n.getState().columnFilters.length>0,f=r(()=>n.getAllColumns().filter(e=>e.getCanFilter()),[n]),b=a(()=>{n.resetColumnFilters()},[n]);return t("div",{role:"toolbar","aria-orientation":"horizontal",className:c("flex w-full items-start justify-between gap-2",s),...u,children:[t("div",{className:"flex flex-1 flex-wrap items-center gap-2",children:[f.map(t=>e(d,{column:t},t.id)),p&&t(i,{"aria-label":"Reset filters",variant:"outline",size:"sm",onClick:b,children:[e(l,{}),"Limpar"]})]}),t("div",{className:"flex items-center gap-2",children:[o,e(m,{table:n})]})]})}function d({column:l}){{let r=l.columnDef.meta;return a(()=>{if(!r?.variant)return null;switch(r.variant){case"text":return e(u,{placeholder:r.placeholder??r.label,value:l.getFilterValue()??"",onChange:e=>l.setFilterValue(e.target.value),className:"h-9 w-40 lg:w-56",classNames:{input:"text-sm"}});case"number":return t("div",{className:"relative",children:[e(u,{type:"number",inputMode:"numeric",placeholder:r.placeholder??r.label,value:l.getFilterValue()??"",onChange:e=>l.setFilterValue(e.target.value),className:c("h-10 w-[120px]",r.unit&&"pr-8"),classNames:{input:"text-sm"}}),r.unit&&e("span",{className:"absolute top-0 right-0 bottom-0 flex items-center rounded-r-md bg-accent px-2 text-muted-foreground text-sm",children:r.unit})]});case"range":return e(s,{column:l,title:r.label??l.id});case"date":case"dateRange":return e(n,{column:l,title:r.label??l.id,multiple:"dateRange"===r.variant});case"select":case"multiSelect":return e(o,{column:l,title:r.label??l.id,options:r.options??[],multiple:"multiSelect"===r.variant});default:return null}},[l,r])()}}export{p as DataTableToolbar};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import{CaretUpDownIcon as i,CheckIcon as o,SlidersHorizontalIcon as a}from"@phosphor-icons/react";import{useMemo as r}from"react";import{Button as t}from"../button/index.js";import{Command as n,CommandEmpty as s,CommandGroup as c,CommandInput as m,CommandItem as d,CommandList as p}from"../command.js";import{Popover as u,PopoverContent as h,PopoverTrigger as f}from"../popover.js";import{cn as g}from"../../utils/utils.js";function b({table:b}){let N=r(()=>b.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()),[b]);return N.length<=0?null:l(u,{children:[e(f,{asChild:!0,children:l(t,{"aria-label":"Toggle columns",role:"combobox",variant:"outline",size:"sm",className:"ml-auto hidden lg:flex",children:[e(a,{}),"Ver",e(i,{className:"ml-auto opacity-50"})]})}),e(h,{align:"end",className:"w-44 p-0",children:l(n,{children:[e(m,{placeholder:"Buscar colunas..."}),l(p,{children:[e(s,{children:"Nenhuma coluna encontrada."}),e(c,{children:N.map(i=>l(d,{onSelect:()=>i.toggleVisibility(!i.getIsVisible()),children:[e("span",{className:"truncate",children:i.columnDef.meta?.label??i.id}),e(o,{className:g("ml-auto size-4 shrink-0",i.getIsVisible()?"opacity-100":"opacity-0")})]},i.id))})]})]})})]})}export{b as DataTableViewOptions};
2
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import{CaretUpDownIcon as i,CheckIcon as o,SlidersHorizontalIcon as a}from"@phosphor-icons/react";import{useMemo as r}from"react";import{Button as t}from"../button/index.js";import{Command as n,CommandEmpty as c,CommandGroup as s,CommandInput as m,CommandItem as d,CommandList as p}from"../command.js";import{Popover as h,PopoverContent as u,PopoverTrigger as f}from"../popover.js";import{cn as g}from"../../lib/utils.js";function b({table:b}){let N=r(()=>b.getAllColumns().filter(e=>void 0!==e.accessorFn&&e.getCanHide()),[b]);return N.length<=0?null:l(h,{children:[e(f,{asChild:!0,children:l(t,{"aria-label":"Toggle columns",role:"combobox",variant:"outline",size:"sm",className:"ml-auto hidden lg:flex",children:[e(a,{}),"Ver",e(i,{className:"ml-auto opacity-50"})]})}),e(u,{align:"end",className:"w-44 p-0",children:l(n,{children:[e(m,{placeholder:"Buscar colunas..."}),l(p,{children:[e(c,{children:"Nenhuma coluna encontrada."}),e(s,{children:N.map(i=>l(d,{onSelect:()=>i.toggleVisibility(!i.getIsVisible()),children:[e("span",{className:"truncate",children:i.columnDef.meta?.label??i.id}),e(o,{className:g("ml-auto size-4 shrink-0",i.getIsVisible()?"opacity-100":"opacity-0")})]},i.id))})]})]})})]})}export{b as DataTableViewOptions};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import{flexRender as a}from"@tanstack/react-table";import{DataTablePagination as t}from"./data-table-pagination.js";import{Table as r,TableBody as o,TableCell as i,TableHead as c,TableHeader as n,TableRow as s}from"../table.js";import{getCommonPinningStyles as d}from"../../lib/data-table.js";import{cn as m}from"../../utils/utils.js";import{ContextMenu as h,ContextMenuContent as p,ContextMenuItem as u,ContextMenuTrigger as g}from"../context-menu.js";function b({table:b,actionBar:f,onRowClick:w,contextMenuOptions:x,children:N,className:C,classNames:S,getRowClassName:j,getCellClassName:k,hasPagination:R=!0,hasPinningWithBorder:v=!1,hasRowSelectionCounter:y=!1,...D}){return l("div",{className:m("flex w-full flex-col gap-2.5 overflow-auto",C),...D,children:[N,l(r,{classNames:{wrapper:S?.table?.wrapper},children:[e(n,{className:S?.table?.header,children:b.getHeaderGroups().map(l=>e(s,{className:S?.table?.row,children:l.headers.map(l=>e(c,{colSpan:l.colSpan,style:{...d({column:l.column,withBorder:v})},className:S?.table?.head,children:l.isPlaceholder?null:a(l.column.columnDef.header,l.getContext())},l.id))},l.id))}),e(o,{children:b.getRowModel().rows?.length?b.getRowModel().rows.map(t=>l(h,{children:[e(g,{asChild:!0,children:e(s,{"data-state":t.getIsSelected()&&"selected",onClick:()=>w?.(t.original),className:m(S?.table?.row,w&&t.getIsSelected()&&"border-primary",j?.(t.original)),children:t.getVisibleCells().map(l=>e(i,{style:{...d({column:l.column,withBorder:v})},className:m(S?.table?.cell,k?.(t.original,l.column.id,l.getValue())),children:a(l.column.columnDef.cell,l.getContext())},l.id))},t.id)}),x&&e(p,{children:x(t.original).map(l=>e(u,{onClick:l.onClick,children:l.label},l.label))})]},t.id)):e(s,{children:e(i,{colSpan:b.getAllColumns().length,className:"h-24 text-center",children:"Nenhum resultado"})})})]}),l("div",{className:"flex flex-col gap-2.5",children:[R&&e(t,{table:b,hasRowSelectionCounter:y}),f&&b.getFilteredSelectedRowModel().rows.length>0&&f]})]})}export{b as DataTable};
1
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import{flexRender as a}from"@tanstack/react-table";import{DataTablePagination as t}from"./data-table-pagination.js";import{Table as r,TableBody as o,TableCell as i,TableHead as c,TableHeader as n,TableRow as d}from"../table.js";import{getCommonPinningStyles as s}from"../../lib/data-table.js";import{cn as m}from"../../lib/utils.js";import{ContextMenu as h,ContextMenuContent as p,ContextMenuItem as u,ContextMenuTrigger as g}from"../context-menu.js";function b({table:b,actionBar:f,onRowClick:w,contextMenuOptions:x,children:N,className:C,classNames:S,getRowClassName:j,getCellClassName:k,hasPagination:R=!0,hasPinningWithBorder:v=!1,hasRowSelectionCounter:y=!1,...D}){return l("div",{className:m("flex w-full flex-col gap-2.5 overflow-auto",C),...D,children:[N,l(r,{classNames:{wrapper:S?.table?.wrapper},children:[e(n,{className:S?.table?.header,children:b.getHeaderGroups().map(l=>e(d,{className:S?.table?.row,children:l.headers.map(l=>e(c,{colSpan:l.colSpan,style:{...s({column:l.column,withBorder:v})},className:S?.table?.head,children:l.isPlaceholder?null:a(l.column.columnDef.header,l.getContext())},l.id))},l.id))}),e(o,{children:b.getRowModel().rows?.length?b.getRowModel().rows.map(t=>l(h,{children:[e(g,{asChild:!0,children:e(d,{"data-state":t.getIsSelected()&&"selected",onClick:()=>w?.(t.original),className:m(S?.table?.row,w&&t.getIsSelected()&&"border-primary",j?.(t.original)),children:t.getVisibleCells().map(l=>e(i,{style:{...s({column:l.column,withBorder:v})},className:m(S?.table?.cell,k?.(t.original,l.column.id,l.getValue())),children:a(l.column.columnDef.cell,l.getContext())},l.id))},t.id)}),x&&e(p,{children:x(t.original).map(l=>e(u,{onClick:l.onClick,children:l.label},l.label))})]},t.id)):e(d,{children:e(i,{colSpan:b.getAllColumns().length,className:"h-24 text-center",children:"Nenhum resultado"})})})]}),l("div",{className:"flex flex-col gap-2.5",children:[R&&e(t,{table:b,hasRowSelectionCounter:y}),f&&b.getFilteredSelectedRowModel().rows.length>0&&f]})]})}export{b as DataTable};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CalendarBlankIcon as r}from"@phosphor-icons/react";import{format as o}from"date-fns";import{useEffect as n,useState as s}from"react";import{cn as i}from"../../utils/utils.js";import{Button as a}from"../button/index.js";import{Calendar as m}from"../calendar.js";import{Popover as d,PopoverContent as l,PopoverTrigger as c}from"../popover.js";function u({value:u,date:f,defaultValue:p,placeholder:h,className:g,disabled:x=!1,onChange:b,min:j,max:w,onMonthChange:y,...M}){let v,[D,H]=s(u||f||new Date(new Date().setHours(0,0,0,0))),[N,S]=s(u||f);return j&&(v={before:j}),w&&(v={...v,after:w}),n(()=>{S(u||f)},[u,f]),t(d,{children:[e(c,{asChild:!0,children:t(a,{variant:"outline",size:"default",className:i("min-w-60 justify-between rounded-md px-4 text-left font-normal text-sm hover:bg-background",!N&&"text-muted-foreground",g),disabled:x,children:[N?o(N,"dd/MM/yyyy"):e("span",{children:h||"Selecione a data"}),e(r,{className:"ml-4 size-4 text-foreground"})]})}),e(l,{className:"w-auto p-0",align:"start",children:e(m,{...M,mode:"single",selected:N??p,onSelect:e=>{S(e),b?.(e)},month:D,onMonthChange:e=>{e&&(e.setHours(D?.getHours()??0,D?.getMinutes()??0,D?.getSeconds()??0),y?.(e),H(e))},disabled:v})})]})}export{u as DatePicker};
2
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CalendarBlankIcon as r}from"@phosphor-icons/react";import{format as o}from"date-fns";import{useEffect as n,useState as i}from"react";import{cn as s}from"../../lib/utils.js";import{Button as a}from"../button/index.js";import{Calendar as m}from"../calendar.js";import{Popover as d,PopoverContent as l,PopoverTrigger as c}from"../popover.js";function f({value:f,date:u,defaultValue:p,placeholder:h,className:g,disabled:b=!1,onChange:x,min:j,max:w,onMonthChange:y,...M}){let v,[D,H]=i(f||u||new Date(new Date().setHours(0,0,0,0))),[N,S]=i(f||u);return j&&(v={before:j}),w&&(v={...v,after:w}),n(()=>{S(f||u)},[f,u]),t(d,{children:[e(c,{asChild:!0,children:t(a,{variant:"outline",size:"default",className:s("min-w-60 justify-between rounded-md px-4 text-left font-normal text-sm hover:bg-background",!N&&"text-muted-foreground",g),disabled:b,children:[N?o(N,"dd/MM/yyyy"):e("span",{children:h||"Selecione a data"}),e(r,{className:"ml-4 size-4 text-foreground"})]})}),e(l,{className:"w-auto p-0",align:"start",children:e(m,{...M,mode:"single",selected:N??p,onSelect:e=>{S(e),x?.(e)},month:D,onMonthChange:e=>{e&&(e.setHours(D?.getHours()??0,D?.getMinutes()??0,D?.getSeconds()??0),y?.(e),H(e))},disabled:v})})]})}export{f as DatePicker};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{Fragment as e,jsx as r,jsxs as o}from"react/jsx-runtime";import{CalendarBlankIcon as t}from"@phosphor-icons/react";import{format as n}from"date-fns";import{useState as i}from"react";import{cn as d}from"../utils/utils.js";import{Button as m}from"./button/index.js";import{Calendar as a}from"./calendar.js";import{Popover as l,PopoverContent as s,PopoverTrigger as f}from"./popover.js";function c({startDate:c,endDate:u,onChange:h,placeholder:p,className:y,disabled:g=!1,numberOfMonths:x=2,...M}){let[b,j]=i({from:c,to:u});return o(l,{children:[r(f,{asChild:!0,children:r(m,{variant:"outline",className:d("h-10 min-w-60 justify-between overflow-hidden rounded-md px-4 text-left font-normal hover:bg-background dark:hover:bg-input/50",!(b?.from||b?.to)&&"text-muted-foreground",y),disabled:g,children:o("div",{className:"flex flex-grow items-center",children:[r(t,{weight:"regular",className:"mr-2 size-4 text-foreground"}),b?.from?b.to?o(e,{children:[n(b.from,"dd/MM/yyyy")," -"," ",n(b.to,"dd/MM/yyyy")]}):n(b.from,"dd/MM/yyyy"):p||"Selecione um per\xedodo"]})})}),r(s,{className:"w-auto p-0",align:"start",children:r(a,{...M,autoFocus:!0,mode:"range",defaultMonth:b?.from,selected:b,onSelect:e=>{j(e),h?.(e)},numberOfMonths:x,disabled:g,hasMonthAndYearSelection:!1})})]})}export{c as DatePickerWithRange};
2
+ import{Fragment as e,jsx as r,jsxs as o}from"react/jsx-runtime";import{CalendarBlankIcon as t}from"@phosphor-icons/react";import{format as n}from"date-fns";import{useState as i}from"react";import{cn as d}from"../lib/utils.js";import{Button as m}from"./button/index.js";import{Calendar as a}from"./calendar.js";import{Popover as l,PopoverContent as s,PopoverTrigger as f}from"./popover.js";function c({startDate:c,endDate:u,onChange:h,placeholder:p,className:y,disabled:g=!1,numberOfMonths:b=2,...x}){let[M,j]=i({from:c,to:u});return o(l,{children:[r(f,{asChild:!0,children:r(m,{variant:"outline",className:d("h-10 min-w-60 justify-between overflow-hidden rounded-md px-4 text-left font-normal hover:bg-background dark:hover:bg-input/50",!(M?.from||M?.to)&&"text-muted-foreground",y),disabled:g,children:o("div",{className:"flex flex-grow items-center",children:[r(t,{weight:"regular",className:"mr-2 size-4 text-foreground"}),M?.from?M.to?o(e,{children:[n(M.from,"dd/MM/yyyy")," -"," ",n(M.to,"dd/MM/yyyy")]}):n(M.from,"dd/MM/yyyy"):p||"Selecione um per\xedodo"]})})}),r(s,{className:"w-auto p-0",align:"start",children:r(a,{...x,autoFocus:!0,mode:"range",defaultMonth:M?.from,selected:M,onSelect:e=>{j(e),h?.(e)},numberOfMonths:b,disabled:g,hasMonthAndYearSelection:!1})})]})}export{c as DatePickerWithRange};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{Fragment as e,jsx as r,jsxs as t}from"react/jsx-runtime";import{CalendarBlankIcon as o,XIcon as n}from"@phosphor-icons/react";import{add as i,format as l}from"date-fns";import{forwardRef as s,useEffect as a,useImperativeHandle as d,useRef as m,useState as c}from"react";import{ptBR as u}from"react-day-picker/locale";import{Button as h}from"../button/index.js";import{Popover as p,PopoverContent as f,PopoverTrigger as g}from"../popover.js";import{cn as y}from"../../utils/utils.js";import{Calendar as b}from"../calendar.js";import{TimePicker as v}from"../time-picker/index.js";let x=s(({locale:s=u,defaultPopupValue:x=new Date(new Date().setHours(0,0,0,0)),value:H,onChange:M,onBlur:N,onMonthChange:C,hourCycle:j=24,yearRange:k=50,disabled:w=!1,displayFormat:D,granularity:S="minute",placeholder:T,className:P,min:z,max:$,triggerProps:E,hasCalendarIcon:K=!0,clearable:O=!1,hasConfirmation:R=!1,...U},q)=>{let A,[B,F]=c(!1),[G,I]=c(H??x),[J,L]=c(H??void 0),[Q,V]=c(H??void 0),W=m(null);a(()=>{L(H),V(H),H&&I(H)},[H]);let X=()=>{if(R)return void V(null);M?.(null),L(null),V(null)};d(q,()=>({...W.current,value:J}),[J]);let Y={hour24:D?.hour24??`dd/MM/yyyy HH:mm${!S||"second"===S?":ss":""}`,hour12:D?.hour12??`dd/MM/yyyy hh:mm${!S||"second"===S?":ss":""} b`},Z=u,{options:_,localize:ee,formatLong:er}=s;return _&&ee&&er&&(Z={...u,options:_,localize:ee,formatLong:er}),z&&(A={before:z}),$&&(A={...A,after:$}),t(p,{open:B,onOpenChange:e=>{F(e),e||(R&&V(J),N?.(J))},children:[r(g,{disabled:w,asChild:!0,children:t(h,{variant:"outline",className:y("w-full justify-start gap-0 text-left font-normal",!J&&"text-muted-foreground",P),ref:W,...E,children:[K&&r(o,{className:"mr-2 h-4 w-4"}),J?t(e,{children:[r("span",{className:"flex-1",children:l(J,24===j?Y.hour24:Y.hour12,{locale:Z})}),O&&r("div",{role:"button",onClick:e=>{e.stopPropagation(),e.preventDefault(),X()},onKeyUp:e=>{"Enter"===e.key&&X()},children:r(n,{className:"size-4"})})]}):r("span",{children:T})]})}),t(f,{className:"w-auto p-0",children:[r(b,{mode:"single",selected:(R?Q:J)||void 0,month:G,onSelect:e=>{e&&(e.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),(e=>{if(e){if(I(e),R)return V(e);M?.(e),L(e),V(e)}})(e))},onMonthChange:e=>{if(!e)return;if(!x){e.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),C?.(e),I(e);return}let r=e.getTime()-x.getTime(),t=i(x,{days:Math.ceil(r/864e5)});t.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),C?.(t),I(t)},yearRange:k,locale:s,disabled:A,...U}),"day"!==S&&t(e,{children:[r("div",{className:"border-border border-t p-3",children:r(v,{onChange:e=>{R||(M?.(e),L(e)),V(e),e&&I(e)},date:R?Q??G:G,hourCycle:j,granularity:S})}),R&&r("div",{className:"border-border border-t p-3",children:r(h,{size:"xxs",className:"ml-auto",onClick:()=>{M?.(Q),L(Q),F(!1)},children:"Confirmar"})})]})]})]})});x.displayName="DateTimePicker";export{x as DateTimePicker};
2
+ import{Fragment as e,jsx as r,jsxs as t}from"react/jsx-runtime";import{CalendarBlankIcon as o,XIcon as n}from"@phosphor-icons/react";import{add as i,format as l}from"date-fns";import{forwardRef as s,useEffect as a,useImperativeHandle as d,useRef as m,useState as c}from"react";import{ptBR as u}from"react-day-picker/locale";import{Button as h}from"../button/index.js";import{Popover as p,PopoverContent as f,PopoverTrigger as g}from"../popover.js";import{cn as y}from"../../lib/utils.js";import{Calendar as b}from"../calendar.js";import{TimePicker as v}from"../time-picker/index.js";let x=s(({locale:s=u,defaultPopupValue:x=new Date(new Date().setHours(0,0,0,0)),value:H,onChange:M,onBlur:N,onMonthChange:C,hourCycle:j=24,yearRange:k=50,disabled:w=!1,displayFormat:D,granularity:S="minute",placeholder:T,className:P,min:z,max:$,triggerProps:E,hasCalendarIcon:K=!0,clearable:O=!1,hasConfirmation:R=!1,...U},q)=>{let A,[B,F]=c(!1),[G,I]=c(H??x),[J,L]=c(H??void 0),[Q,V]=c(H??void 0),W=m(null);a(()=>{L(H),V(H),H&&I(H)},[H]);let X=()=>{if(R)return void V(null);M?.(null),L(null),V(null)};d(q,()=>({...W.current,value:J}),[J]);let Y={hour24:D?.hour24??`dd/MM/yyyy HH:mm${!S||"second"===S?":ss":""}`,hour12:D?.hour12??`dd/MM/yyyy hh:mm${!S||"second"===S?":ss":""} b`},Z=u,{options:_,localize:ee,formatLong:er}=s;return _&&ee&&er&&(Z={...u,options:_,localize:ee,formatLong:er}),z&&(A={before:z}),$&&(A={...A,after:$}),t(p,{open:B,onOpenChange:e=>{F(e),e||(R&&V(J),N?.(J))},children:[r(g,{disabled:w,asChild:!0,children:t(h,{variant:"outline",className:y("w-full justify-start gap-0 text-left font-normal",!J&&"text-muted-foreground",P),ref:W,...E,children:[K&&r(o,{className:"mr-2 h-4 w-4"}),J?t(e,{children:[r("span",{className:"flex-1",children:l(J,24===j?Y.hour24:Y.hour12,{locale:Z})}),O&&r("div",{role:"button",onClick:e=>{e.stopPropagation(),e.preventDefault(),X()},onKeyUp:e=>{"Enter"===e.key&&X()},children:r(n,{className:"size-4"})})]}):r("span",{children:T})]})}),t(f,{className:"w-auto p-0",children:[r(b,{mode:"single",selected:(R?Q:J)||void 0,month:G,onSelect:e=>{e&&(e.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),(e=>{if(e){if(I(e),R)return V(e);M?.(e),L(e),V(e)}})(e))},onMonthChange:e=>{if(!e)return;if(!x){e.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),C?.(e),I(e);return}let r=e.getTime()-x.getTime(),t=i(x,{days:Math.ceil(r/864e5)});t.setHours(G?.getHours()??0,G?.getMinutes()??0,G?.getSeconds()??0),C?.(t),I(t)},yearRange:k,locale:s,disabled:A,...U}),"day"!==S&&t(e,{children:[r("div",{className:"border-border border-t p-3",children:r(v,{onChange:e=>{R||(M?.(e),L(e)),V(e),e&&I(e)},date:R?Q??G:G,hourCycle:j,granularity:S})}),R&&r("div",{className:"border-border border-t p-3",children:r(h,{size:"xxs",className:"ml-auto",onClick:()=>{M?.(Q),L(Q),F(!1)},children:"Confirmar"})})]})]})]})});x.displayName="DateTimePicker";export{x as DateTimePicker};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{CalendarBlankIcon as r,XIcon as t}from"@phosphor-icons/react";import{format as i}from"date-fns";import{useState as m}from"react";import{cn as n}from"../utils/utils.js";import{Button as a}from"./button/index.js";import{Calendar as l}from"./calendar.js";import{Popover as f,PopoverContent as d,PopoverTrigger as s}from"./popover.js";import{TimePicker as c}from"./time-picker/index.js";function p({startDate:p,endDate:h,onChange:y,placeholder:x,className:u,disabled:j=!1}){let[v,b]=m({from:p,to:h}),g=e=>{if(!e){b(void 0),y?.(void 0);return}b({from:e.from??v?.from,to:e.to}),y?.({from:e.from??v?.from,to:e.to})};return o(f,{children:[e(s,{asChild:!0,children:o(a,{id:"date",variant:"outline",className:n("h-12 min-w-96 justify-between px-4 text-left font-normal",!v?.from&&!v?.to&&"text-gray-400",u),disabled:j,children:[v?.from?v.to?`${i(v.from,"dd/MM/yyyy HH:mm")} - ${i(v.to,"dd/MM/yyyy HH:mm")}`:i(v.from,"dd/MM/yyyy HH:mm"):e("span",{children:x||"Selecione o per\xedodo"}),e(r,{size:20,className:"ml-2 text-gray-600"})]})}),o(d,{className:"w-auto p-0",children:[e(l,{mode:"range",selected:v,onSelect:g,numberOfMonths:2}),e("div",{className:"flex flex-col border-stroke border-t p-3",children:o("div",{className:"flex justify-between gap-4",children:[e(c,{onChange:e=>g({...v,from:e}),date:v?.from}),e(c,{onChange:e=>g({...v,to:e}),date:v?.to})]})}),e("div",{className:"flex flex-1 justify-center",children:o(a,{variant:"outline",className:"flex h-12 flex-1",onClick:()=>g(void 0),children:[e(t,{size:12})," Clear"]})})]})]})}export{p as DateTimePickerWithRange};
2
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{CalendarBlankIcon as r,XIcon as t}from"@phosphor-icons/react";import{format as i}from"date-fns";import{useState as m}from"react";import{cn as n}from"../lib/utils.js";import{Button as a}from"./button/index.js";import{Calendar as l}from"./calendar.js";import{Popover as f,PopoverContent as d,PopoverTrigger as s}from"./popover.js";import{TimePicker as c}from"./time-picker/index.js";function p({startDate:p,endDate:h,onChange:y,placeholder:x,className:u,disabled:j=!1}){let[v,b]=m({from:p,to:h}),g=e=>{if(!e){b(void 0),y?.(void 0);return}b({from:e.from??v?.from,to:e.to}),y?.({from:e.from??v?.from,to:e.to})};return o(f,{children:[e(s,{asChild:!0,children:o(a,{id:"date",variant:"outline",className:n("h-12 min-w-96 justify-between px-4 text-left font-normal",!v?.from&&!v?.to&&"text-gray-400",u),disabled:j,children:[v?.from?v.to?`${i(v.from,"dd/MM/yyyy HH:mm")} - ${i(v.to,"dd/MM/yyyy HH:mm")}`:i(v.from,"dd/MM/yyyy HH:mm"):e("span",{children:x||"Selecione o per\xedodo"}),e(r,{size:20,className:"ml-2 text-gray-600"})]})}),o(d,{className:"w-auto p-0",children:[e(l,{mode:"range",selected:v,onSelect:g,numberOfMonths:2}),e("div",{className:"flex flex-col border-stroke border-t p-3",children:o("div",{className:"flex justify-between gap-4",children:[e(c,{onChange:e=>g({...v,from:e}),date:v?.from}),e(c,{onChange:e=>g({...v,to:e}),date:v?.to})]})}),e("div",{className:"flex flex-1 justify-center",children:o(a,{variant:"outline",className:"flex h-12 flex-1",onClick:()=>g(void 0),children:[e(t,{size:12})," Clear"]})})]})]})}export{p as DateTimePickerWithRange};
@@ -1,7 +1,7 @@
1
1
  import * as DialogPrimitive from '@radix-ui/react-dialog';
2
2
  import { ComponentProps } from 'react';
3
3
  import { buttonVariants } from '../button';
4
- import { VariantProps } from '../../utils/utils';
4
+ import { VariantProps } from '../../lib/utils';
5
5
  type DialogProps = ComponentProps<typeof DialogPrimitive.Root>;
6
6
  declare function Dialog(props: DialogProps): import("react/jsx-runtime").JSX.Element;
7
7
  type DialogTriggerProps = ComponentProps<typeof DialogPrimitive.Trigger>;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/dialog/dialog.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAM,YAAY,EAAE,MAAM,eAAe,CAAA;AAMhD,KAAK,WAAW,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;AAE9D,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,2CAEjC;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;AAExE,iBAAS,aAAa,CAAC,KAAK,EAAE,kBAAkB,2CAE/C;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAA;AAEtE,iBAAS,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAEpD;AAMD,KAAK,gBAAgB,GAAG,IAAI,CAC1B,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,EAC5C,KAAK,CACN,GAAG;IACF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;IAClD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,SAAS,CAAC,CAAA;CACzD,CAAA;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,IAAI,EACJ,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,gBAAgB,2CAQlB;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;AAExE,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAWjE;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACzE,UAAU,CAAC,EAAE;QACX,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,CAAA;CACF,CAAA;AAED,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACT,EAAE,kBAAkB,2CA+BpB;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE9C,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAW/D;AAMD,KAAK,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE5C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,2CAQ3D;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE9C,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAW/D;AAMD,KAAK,gBAAgB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;AAEpE,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAW7D;AAMD,KAAK,sBAAsB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,CAAA;AAEhF,iBAAS,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,sBAAsB,2CAQzE;AAMD,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,GACd,CAAA;AACD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GACnB,CAAA"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/dialog/dialog.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAM,YAAY,EAAE,MAAM,aAAa,CAAA;AAM9C,KAAK,WAAW,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;AAE9D,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,2CAEjC;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;AAExE,iBAAS,aAAa,CAAC,KAAK,EAAE,kBAAkB,2CAE/C;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAA;AAEtE,iBAAS,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAEpD;AAMD,KAAK,gBAAgB,GAAG,IAAI,CAC1B,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,EAC5C,KAAK,CACN,GAAG;IACF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;IAClD,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC,SAAS,CAAC,CAAA;CACzD,CAAA;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,IAAI,EACJ,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,gBAAgB,2CAQlB;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;AAExE,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAWjE;AAMD,KAAK,kBAAkB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACzE,UAAU,CAAC,EAAE;QACX,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,CAAA;CACF,CAAA;AAED,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACT,EAAE,kBAAkB,2CA+BpB;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE9C,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAW/D;AAMD,KAAK,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE5C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,2CAQ3D;AAMD,KAAK,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;AAE9C,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAW/D;AAMD,KAAK,gBAAgB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;AAEpE,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,2CAW7D;AAMD,KAAK,sBAAsB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,CAAA;AAEhF,iBAAS,iBAAiB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,sBAAsB,2CAQzE;AAMD,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,aAAa,GACd,CAAA;AACD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GACnB,CAAA"}
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as a,jsxs as t}from"react/jsx-runtime";import{XIcon as e}from"@phosphor-icons/react";import{Close as o,Content as l,Description as s,Overlay as i,Portal as n,Root as r,Title as d,Trigger as c}from"@radix-ui/react-dialog";import{buttonVariants as g}from"../button/index.js";import{cn as m}from"../../utils/utils.js";function u(t){return a(r,{"data-slot":"dialog",...t})}function f(t){return a(c,{"data-slot":"dialog-trigger",...t})}function p({...t}){return a(n,{"data-slot":"dialog-portal",...t})}function x({className:t,size:e,variant:l="outline",...s}){return a(o,{className:g({className:t,size:e,variant:l}),"data-slot":"dialog-close",...s})}function N({className:t,...e}){return a(i,{className:m("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dialog-overlay",...e})}function h({children:s,className:i,classNames:n,...r}){return a(p,{children:a(N,{className:n?.overlay,children:t(l,{className:m("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=closed]:animate-out data-[state=open]:animate-in sm:max-w-lg sm:rounded-lg",i,n?.content),"data-slot":"dialog-content-wrapper",...r,children:[s,t(o,{className:g({className:["absolute top-2.5 right-2.5 size-7",n?.close],size:"icon",variant:"ghost"}),children:[a(e,{className:"size-4"}),a("span",{className:"sr-only",children:"Close"})]})]})})})}function D({className:t,...e}){return a("div",{className:m("flex flex-col space-y-1.5 text-center sm:text-left",t),"data-slot":"dialog-header",...e})}function y({className:t,...e}){return a("main",{className:m("py-2",t),"data-slot":"dialog-body",...e})}function b({className:t,...e}){return a("footer",{className:m("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),"data-slot":"dialog-footer",...e})}function z({className:t,...e}){return a(d,{className:m("font-semibold text-lg leading-none tracking-tight",t),"data-slot":"dialog-title",...e})}function v({className:t,...e}){return a(s,{className:m("text-gray-600 text-sm",t),"data-slot":"dialog-description",...e})}export{u as Dialog,y as DialogBody,x as DialogClose,h as DialogContent,v as DialogDescription,b as DialogFooter,D as DialogHeader,N as DialogOverlay,p as DialogPortal,z as DialogTitle,f as DialogTrigger};
2
+ import{jsx as a,jsxs as t}from"react/jsx-runtime";import{XIcon as e}from"@phosphor-icons/react";import{Close as o,Content as l,Description as i,Overlay as s,Portal as n,Root as r,Title as d,Trigger as c}from"@radix-ui/react-dialog";import{buttonVariants as g}from"../button/index.js";import{cn as m}from"../../lib/utils.js";function u(t){return a(r,{"data-slot":"dialog",...t})}function f(t){return a(c,{"data-slot":"dialog-trigger",...t})}function p({...t}){return a(n,{"data-slot":"dialog-portal",...t})}function x({className:t,size:e,variant:l="outline",...i}){return a(o,{className:g({className:t,size:e,variant:l}),"data-slot":"dialog-close",...i})}function N({className:t,...e}){return a(s,{className:m("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dialog-overlay",...e})}function h({children:i,className:s,classNames:n,...r}){return a(p,{children:a(N,{className:n?.overlay,children:t(l,{className:m("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=closed]:animate-out data-[state=open]:animate-in sm:max-w-lg sm:rounded-lg",s,n?.content),"data-slot":"dialog-content-wrapper",...r,children:[i,t(o,{className:g({className:["absolute top-2.5 right-2.5 size-7",n?.close],size:"icon",variant:"ghost"}),children:[a(e,{className:"size-4"}),a("span",{className:"sr-only",children:"Close"})]})]})})})}function D({className:t,...e}){return a("div",{className:m("flex flex-col space-y-1.5 text-center sm:text-left",t),"data-slot":"dialog-header",...e})}function y({className:t,...e}){return a("main",{className:m("py-2",t),"data-slot":"dialog-body",...e})}function b({className:t,...e}){return a("footer",{className:m("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),"data-slot":"dialog-footer",...e})}function z({className:t,...e}){return a(d,{className:m("font-semibold text-lg leading-none tracking-tight",t),"data-slot":"dialog-title",...e})}function v({className:t,...e}){return a(i,{className:m("text-gray-600 text-sm",t),"data-slot":"dialog-description",...e})}export{u as Dialog,y as DialogBody,x as DialogClose,h as DialogContent,v as DialogDescription,b as DialogFooter,D as DialogHeader,N as DialogOverlay,p as DialogPortal,z as DialogTitle,f as DialogTrigger};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{DotIcon as o}from"@phosphor-icons/react";import{Arrow as n,CheckboxItem as a,Content as d,Group as r,Item as s,ItemIndicator as i,Label as u,Portal as c,RadioGroup as l,RadioItem as m,Root as p,Separator as f,Sub as g,SubContent as v,SubTrigger as w,Trigger as x}from"@radix-ui/react-dropdown-menu";import{Check as b,ChevronRight as h}from"lucide-react";import{cn as z}from"../utils/utils.js";function D({...t}){return e(p,{"data-slot":"dropdown-menu",...t})}function M({...t}){return e(x,{"data-slot":"dropdown-menu-trigger",...t})}function N({...t}){return e(r,{"data-slot":"dropdown-menu-group",...t})}function y({...t}){return e(g,{"data-slot":"dropdown-menu-sub",...t})}function _({...t}){return e(l,{"data-slot":"dropdown-menu-radio-group",...t})}function k({children:o,className:n,inset:a,...d}){return t(w,{className:z("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[inset]:pl-8 data-[state=open]:text-accent-foreground",n),"data-inset":a,"data-slot":"dropdown-menu-sub-trigger",...d,children:[o,e(h,{className:"ml-auto size-4"})]})}function S({className:t,...o}){return e(c,{children:e(v,{className:z("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dropdown-menu-sub-content",...o})})}function j({className:t,sideOffset:o=4,...n}){return e(c,{children:e(d,{className:z("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dropdown-menu-content",sideOffset:o,...n})})}function C({className:t,inset:o,variant:n,...a}){return e(s,{className:z("data-[variant=destructive]:*:[svg]:!text-destructive relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[disabled]:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0",t),"data-inset":o,"data-slot":"dropdown-menu-item","data-variant":n,...a})}function I({checked:o,children:n,className:d,...r}){return t(a,{checked:o,className:z("relative flex cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",d),"data-slot":"dropdown-menu-checkbox-item",...r,children:[e("span",{className:"absolute left-2 flex items-center justify-center",children:e(i,{children:e(b,{className:"size-4"})})}),n]})}function G({children:n,className:a,...d}){return t(m,{className:z("relative flex cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",a),"data-slot":"dropdown-menu-radio-item",...d,children:[e("span",{className:"absolute left-2 flex items-center justify-center",children:e(i,{children:e(o,{className:"size-4 fill-current"})})}),n]})}function R({className:t,inset:o,...n}){return e(u,{className:z("px-2 py-1.5 font-medium text-sm data-inset:pl-8",t),"data-inset":o,"data-slot":"dropdown-menu-label",...n})}function T({className:t,...o}){return e(f,{className:z("-mx-1 my-1 h-px bg-border",t),"data-slot":"dropdown-menu-separator",...o})}function A({className:t,...o}){return e("span",{className:z("ml-auto text-muted-foreground text-xs tracking-widest",t),"data-slot":"dropdown-menu-shortcut",...o})}function L({className:t,...o}){return e(n,{className:z("fill-border",t),"data-slot":"dropdown-menu-arrow",...o})}export{D as DropdownMenu,L as DropdownMenuArrow,I as DropdownMenuCheckboxItem,j as DropdownMenuContent,N as DropdownMenuGroup,C as DropdownMenuItem,R as DropdownMenuLabel,_ as DropdownMenuRadioGroup,G as DropdownMenuRadioItem,T as DropdownMenuSeparator,A as DropdownMenuShortcut,y as DropdownMenuSub,S as DropdownMenuSubContent,k as DropdownMenuSubTrigger,M as DropdownMenuTrigger};
2
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{DotIcon as o}from"@phosphor-icons/react";import{Arrow as n,CheckboxItem as a,Content as d,Group as r,Item as s,ItemIndicator as i,Label as u,Portal as c,RadioGroup as l,RadioItem as m,Root as p,Separator as f,Sub as g,SubContent as v,SubTrigger as w,Trigger as b}from"@radix-ui/react-dropdown-menu";import{Check as x,ChevronRight as h}from"lucide-react";import{cn as z}from"../lib/utils.js";function D({...t}){return e(p,{"data-slot":"dropdown-menu",...t})}function M({...t}){return e(b,{"data-slot":"dropdown-menu-trigger",...t})}function N({...t}){return e(r,{"data-slot":"dropdown-menu-group",...t})}function y({...t}){return e(g,{"data-slot":"dropdown-menu-sub",...t})}function _({...t}){return e(l,{"data-slot":"dropdown-menu-radio-group",...t})}function k({children:o,className:n,inset:a,...d}){return t(w,{className:z("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[inset]:pl-8 data-[state=open]:text-accent-foreground",n),"data-inset":a,"data-slot":"dropdown-menu-sub-trigger",...d,children:[o,e(h,{className:"ml-auto size-4"})]})}function S({className:t,...o}){return e(c,{children:e(v,{className:z("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dropdown-menu-sub-content",...o})})}function j({className:t,sideOffset:o=4,...n}){return e(c,{children:e(d,{className:z("data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in",t),"data-slot":"dropdown-menu-content",sideOffset:o,...n})})}function C({className:t,inset:o,variant:n,...a}){return e(s,{className:z("data-[variant=destructive]:*:[svg]:!text-destructive relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[disabled]:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0",t),"data-inset":o,"data-slot":"dropdown-menu-item","data-variant":n,...a})}function I({checked:o,children:n,className:d,...r}){return t(a,{checked:o,className:z("relative flex cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",d),"data-slot":"dropdown-menu-checkbox-item",...r,children:[e("span",{className:"absolute left-2 flex items-center justify-center",children:e(i,{children:e(x,{className:"size-4"})})}),n]})}function G({children:n,className:a,...d}){return t(m,{className:z("relative flex cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",a),"data-slot":"dropdown-menu-radio-item",...d,children:[e("span",{className:"absolute left-2 flex items-center justify-center",children:e(i,{children:e(o,{className:"size-4 fill-current"})})}),n]})}function R({className:t,inset:o,...n}){return e(u,{className:z("px-2 py-1.5 font-medium text-sm data-inset:pl-8",t),"data-inset":o,"data-slot":"dropdown-menu-label",...n})}function T({className:t,...o}){return e(f,{className:z("-mx-1 my-1 h-px bg-border",t),"data-slot":"dropdown-menu-separator",...o})}function A({className:t,...o}){return e("span",{className:z("ml-auto text-muted-foreground text-xs tracking-widest",t),"data-slot":"dropdown-menu-shortcut",...o})}function L({className:t,...o}){return e(n,{className:z("fill-border",t),"data-slot":"dropdown-menu-arrow",...o})}export{D as DropdownMenu,L as DropdownMenuArrow,I as DropdownMenuCheckboxItem,j as DropdownMenuContent,N as DropdownMenuGroup,C as DropdownMenuItem,R as DropdownMenuLabel,_ as DropdownMenuRadioGroup,G as DropdownMenuRadioItem,T as DropdownMenuSeparator,A as DropdownMenuShortcut,y as DropdownMenuSub,S as DropdownMenuSubContent,k as DropdownMenuSubTrigger,M as DropdownMenuTrigger};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Check as r,ChevronsUpDown as a}from"lucide-react";import{createContext as n,useCallback as i,useContext as l,useMemo as o,useState as c}from"react";import{Badge as s}from"./badge/index.js";import{Command as d,CommandEmpty as m,CommandGroup as u,CommandInput as p,CommandItem as f,CommandList as g,CommandSeparator as h}from"./command.js";import{Popover as v,PopoverContent as y,PopoverTrigger as x}from"./popover.js";import{cn as F}from"../utils/utils.js";let N=n(null);function b(e){let t=l(N);if(!t)throw Error(`\`${e}\` must be within Faceted`);return t}function j(t){let{open:r,onOpenChange:a,value:n,onValueChange:l,children:s,multiple:d=!1,...m}=t,[u,p]=c(!1),f=void 0!==r,g=f?r:u,h=i(e=>{f||p(e),a?.(e)},[f,a]),y=i(e=>{if(l)if(d){let t=Array.isArray(n)?n:[];l(t.includes(e)?t.filter(t=>t!==e):[...t,e])}else n===e?l(void 0):l(e),requestAnimationFrame(()=>h(!1))},[d,n,l,h]),x=o(()=>({value:n,onItemSelect:y,multiple:d}),[n,y,d]);return e(N.Provider,{value:x,children:e(v,{open:g,onOpenChange:h,...m,children:s})})}function A(t){let{className:r,children:a,...n}=t;return e(x,{...n,className:F("justify-between text-left",r),children:a})}function w(r){let{options:n=[],max:l=2,placeholder:o="Select options...",className:c,badgeClassName:d,...m}=r,u=b("FacetedBadgeList"),p=Array.isArray(u.value)?u.value:[u.value].filter(Boolean),f=i(e=>{let t=n.find(t=>t.value===e);return t?.label??e},[n]);return p&&0!==p.length?e("div",{...m,className:F("flex flex-wrap items-center gap-1",c),children:p.length>l?t(s,{variant:"secondary",className:F("rounded-sm px-1 font-normal",d),children:[p.length," selected"]}):p.map(t=>e(s,{variant:"secondary",className:F("rounded-sm px-1 font-normal",d),children:e("span",{className:"truncate",children:f(t)})},t))}):t("div",{...m,className:"flex w-full items-center gap-1 text-muted-foreground",children:[o,e(a,{className:"ml-auto size-4 shrink-0 opacity-50"})]})}function I(t){let{className:r,children:a,...n}=t;return e(y,{...n,align:"start",className:F("w-[200px] origin-(--radix-popover-content-transform-origin) p-0",r),children:e(d,{children:a})})}let S=p,z=g,B=m,C=u;function L(a){let{value:n,onSelect:l,className:o,children:c,...s}=a,d=b("FacetedItem"),m=d.multiple?Array.isArray(d.value)&&d.value.includes(n):d.value===n,u=i(e=>{l?l(e):d.onItemSelect&&d.onItemSelect(e)},[l,d.onItemSelect]);return t(f,{"aria-selected":m,"data-selected":m,className:F("gap-2",o),onSelect:()=>u(n),...s,children:[e("span",{className:F("flex size-4 items-center justify-center rounded-sm border border-input",m?"bg-primary text-primary-foreground":"opacity-50 [&_svg]:invisible"),children:e(r,{className:"size-4"})}),c]})}let E=h;export{j as Faceted,w as FacetedBadgeList,I as FacetedContent,B as FacetedEmpty,C as FacetedGroup,S as FacetedInput,L as FacetedItem,z as FacetedList,E as FacetedSeparator,A as FacetedTrigger};
2
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Check as r,ChevronsUpDown as a}from"lucide-react";import{createContext as n,useCallback as i,useContext as l,useMemo as o,useState as c}from"react";import{Badge as s}from"./badge/index.js";import{Command as d,CommandEmpty as m,CommandGroup as u,CommandInput as p,CommandItem as f,CommandList as g,CommandSeparator as h}from"./command.js";import{Popover as v,PopoverContent as y,PopoverTrigger as x}from"./popover.js";import{cn as F}from"../lib/utils.js";let N=n(null);function b(e){let t=l(N);if(!t)throw Error(`\`${e}\` must be within Faceted`);return t}function j(t){let{open:r,onOpenChange:a,value:n,onValueChange:l,children:s,multiple:d=!1,...m}=t,[u,p]=c(!1),f=void 0!==r,g=f?r:u,h=i(e=>{f||p(e),a?.(e)},[f,a]),y=i(e=>{if(l)if(d){let t=Array.isArray(n)?n:[];l(t.includes(e)?t.filter(t=>t!==e):[...t,e])}else n===e?l(void 0):l(e),requestAnimationFrame(()=>h(!1))},[d,n,l,h]),x=o(()=>({value:n,onItemSelect:y,multiple:d}),[n,y,d]);return e(N.Provider,{value:x,children:e(v,{open:g,onOpenChange:h,...m,children:s})})}function A(t){let{className:r,children:a,...n}=t;return e(x,{...n,className:F("justify-between text-left",r),children:a})}function w(r){let{options:n=[],max:l=2,placeholder:o="Select options...",className:c,badgeClassName:d,...m}=r,u=b("FacetedBadgeList"),p=Array.isArray(u.value)?u.value:[u.value].filter(Boolean),f=i(e=>{let t=n.find(t=>t.value===e);return t?.label??e},[n]);return p&&0!==p.length?e("div",{...m,className:F("flex flex-wrap items-center gap-1",c),children:p.length>l?t(s,{variant:"secondary",className:F("rounded-sm px-1 font-normal",d),children:[p.length," selected"]}):p.map(t=>e(s,{variant:"secondary",className:F("rounded-sm px-1 font-normal",d),children:e("span",{className:"truncate",children:f(t)})},t))}):t("div",{...m,className:"flex w-full items-center gap-1 text-muted-foreground",children:[o,e(a,{className:"ml-auto size-4 shrink-0 opacity-50"})]})}function I(t){let{className:r,children:a,...n}=t;return e(y,{...n,align:"start",className:F("w-[200px] origin-(--radix-popover-content-transform-origin) p-0",r),children:e(d,{children:a})})}let S=p,z=g,B=m,C=u;function L(a){let{value:n,onSelect:l,className:o,children:c,...s}=a,d=b("FacetedItem"),m=d.multiple?Array.isArray(d.value)&&d.value.includes(n):d.value===n,u=i(e=>{l?l(e):d.onItemSelect&&d.onItemSelect(e)},[l,d.onItemSelect]);return t(f,{"aria-selected":m,"data-selected":m,className:F("gap-2",o),onSelect:()=>u(n),...s,children:[e("span",{className:F("flex size-4 items-center justify-center rounded-sm border border-input",m?"bg-primary text-primary-foreground":"opacity-50 [&_svg]:invisible"),children:e(r,{className:"size-4"})}),c]})}let E=h;export{j as Faceted,w as FacetedBadgeList,I as FacetedContent,B as FacetedEmpty,C as FacetedGroup,S as FacetedInput,L as FacetedItem,z as FacetedList,E as FacetedSeparator,A as FacetedTrigger};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as e}from"react/jsx-runtime";import{createContextScope as t}from"@radix-ui/react-context";import{Slot as r}from"@radix-ui/react-slot";import{useId as o}from"react";import{Controller as m,FormProvider as i,useFormContext as a,useFormState as s}from"react-hook-form";import{Label as n}from"./label.js";import{cn as l}from"../utils/utils.js";let d=i,c="FormField",[f,u]=t(c),[p,F]=f(c);function x(e,t){let{id:r}=I(e,t),{name:o}=F(e,t),{getFieldState:m}=a(),i=s({name:o}),n=m(o,i);return{id:r,name:o,formDescriptionId:`form-item-description-${r}`,formItemId:`form-item-${r}`,formMessageId:`form-item-message-${r}`,...n}}function g(t){let{__scopeFormField:r,...o}=t;return e(p,{name:o.name,scope:r,children:e(m,{...o})})}let[b,I]=f("FormItem");function h({__scopeFormField:t,className:r,...m}){return e(b,{id:o(),scope:t,children:e("div",{className:l("space-y-2",r),"data-slot":"form-item",...m})})}function v({__scopeFormField:t,...r}){let{formItemId:o,error:m}=x("FormLabel",t);return e(n,{"data-invalid":!!m||void 0,"data-slot":"form-label",htmlFor:o,...r})}function $({__scopeFormField:t,...o}){let{formDescriptionId:m,formItemId:i,formMessageId:a,error:s}=x("FormControl",t);return e(r,{"aria-describedby":s?`${m} ${a}`:m,"aria-invalid":!!s,"data-slot":"form-control",id:i,...o})}function j({__scopeFormField:t,className:r,...o}){let{formDescriptionId:m}=x(y,t);return e("p",{className:l("text-muted-foreground text-xs",r),"data-slot":"form-description",id:m,...o})}let y="FormMessage";function M({__scopeFormField:t,children:r,className:o,...m}){let{formMessageId:i,error:a}=x(y,t),s=a?.message?String(a.message):r;return s?e("p",{className:l("text-xs",a?.message?"font-medium text-destructive":"text-gray-600",o),"data-slot":"form-message",id:i,...m,children:s}):null}export{d as Form,$ as FormControl,j as FormDescription,g as FormField,h as FormItem,v as FormLabel,M as FormMessage,u as createFormFieldScope};
2
+ import{jsx as e}from"react/jsx-runtime";import{createContextScope as t}from"@radix-ui/react-context";import{Slot as r}from"@radix-ui/react-slot";import{useId as o}from"react";import{Controller as m,FormProvider as i,useFormContext as a,useFormState as s}from"react-hook-form";import{Label as n}from"./label.js";import{cn as l}from"../lib/utils.js";let d=i,c="FormField",[f,u]=t(c),[p,F]=f(c);function x(e,t){let{id:r}=I(e,t),{name:o}=F(e,t),{getFieldState:m}=a(),i=s({name:o}),n=m(o,i);return{id:r,name:o,formDescriptionId:`form-item-description-${r}`,formItemId:`form-item-${r}`,formMessageId:`form-item-message-${r}`,...n}}function g(t){let{__scopeFormField:r,...o}=t;return e(p,{name:o.name,scope:r,children:e(m,{...o})})}let[b,I]=f("FormItem");function h({__scopeFormField:t,className:r,...m}){return e(b,{id:o(),scope:t,children:e("div",{className:l("space-y-2",r),"data-slot":"form-item",...m})})}function v({__scopeFormField:t,...r}){let{formItemId:o,error:m}=x("FormLabel",t);return e(n,{"data-invalid":!!m||void 0,"data-slot":"form-label",htmlFor:o,...r})}function $({__scopeFormField:t,...o}){let{formDescriptionId:m,formItemId:i,formMessageId:a,error:s}=x("FormControl",t);return e(r,{"aria-describedby":s?`${m} ${a}`:m,"aria-invalid":!!s,"data-slot":"form-control",id:i,...o})}function j({__scopeFormField:t,className:r,...o}){let{formDescriptionId:m}=x(y,t);return e("p",{className:l("text-muted-foreground text-xs",r),"data-slot":"form-description",id:m,...o})}let y="FormMessage";function M({__scopeFormField:t,children:r,className:o,...m}){let{formMessageId:i,error:a}=x(y,t),s=a?.message?String(a.message):r;return s?e("p",{className:l("text-xs",a?.message?"font-medium text-destructive":"text-gray-600",o),"data-slot":"form-message",id:i,...m,children:s}):null}export{d as Form,$ as FormControl,j as FormDescription,g as FormField,h as FormItem,v as FormLabel,M as FormMessage,u as createFormFieldScope};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CaretLeftIcon as n,CaretRightIcon as r,MinusIcon as i,PlusIcon as a,XIcon as l}from"@phosphor-icons/react";import{Content as o,Overlay as c,Portal as s,Root as d}from"@radix-ui/react-dialog";import{useCallback as h,useEffect as u,useMemo as m,useRef as b,useState as x}from"react";import{Slider as g}from"../slider.js";import{cn as w}from"../../utils/utils.js";function p(e,t,n){return Math.min(Math.max(e,t),n)}function f({images:f,open:y,defaultOpen:v=!1,onOpenChange:k,index:N,defaultIndex:z=0,onIndexChange:j,loop:A=!0,showThumbnails:L=!0,showCounter:M=!0,showZoom:C=!0,minZoom:E=1,maxZoom:X=3,zoomStep:Y=.1,zoom:$,defaultZoom:D=1,onZoomChange:F,className:H}){let I=void 0!==y,R=void 0!==N,W=void 0!==$,[O,q]=x(v),[P,S]=x(z),[T,V]=x(D),[Z,B]=x({x:0,y:0}),[G,J]=x(!1),[K,Q]=x({x:0,y:0,panX:0,panY:0}),[U,_]=x({width:0,height:0}),[ee,et]=x({width:0,height:0}),[en,er]=x(null),ei=b(null),ea=b(null),el=b({x:0,y:0,time:0}),eo=b({x:0,y:0}),ec=I?y:O,es=W?$:T,ed=f.length?f:[],eh=ed.length,eu=eh?p(R?N:P,0,eh-1):0,em=ed[eu],eb=h(e=>{I||q(e),k?.(e)},[I,k]),ex=h(e=>{let t=p(e,0,Math.max(eh-1,0));R||S(t),j?.(t)},[R,j,eh]),eg=h(e=>{let t=p(e,E,X);W||V(t),F?.(t)},[W,X,E,F]),ew=A?eh>1:eu>0,ep=A?eh>1:eu<eh-1,ef=h(()=>{if(eh){if(0===eu){A&&ex(eh-1);return}ex(eu-1)}},[eu,A,ex,eh]),ey=h(()=>{if(eh){if(eu===eh-1){A&&ex(0);return}ex(eu+1)}},[eu,A,ex,eh]);u(()=>{if(ec)return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e);function e(e){"ArrowLeft"===e.key&&(e.preventDefault(),ef()),"ArrowRight"===e.key&&(e.preventDefault(),ey())}},[ey,ef,ec]),u(()=>{W||V(D),B({x:0,y:0})},[eu,D,W]),u(()=>{es<=1&&B({x:0,y:0})},[es]),u(()=>()=>{null!==ea.current&&cancelAnimationFrame(ea.current)},[]),u(()=>{if(!en)return;let e=new ResizeObserver(e=>{let t=e[0];t&&_({width:t.contentRect.width,height:t.contentRect.height})});return e.observe(en),()=>e.disconnect()},[en]),u(()=>{if(!ec||!ei.current)return;let e=ei.current;e.complete&&e.naturalWidth&&e.naturalHeight&&et({width:e.naturalWidth,height:e.naturalHeight})},[eu,ec]);let ev=m(()=>{if(!ee.width||!ee.height||!U.width||!U.height)return{width:0,height:0};let e=Math.min(U.width/ee.width,U.height/ee.height);return{width:ee.width*e,height:ee.height*e}},[U,ee]),ek=m(()=>{let e=ev.width*es,t=ev.height*es;return{x:Math.max(0,(e-U.width)/2),y:Math.max(0,(t-U.height)/2)}},[es,ev,U]);u(()=>{if(G)return window.addEventListener("pointermove",e),window.addEventListener("pointerup",t),window.addEventListener("pointercancel",t),()=>{window.removeEventListener("pointermove",e),window.removeEventListener("pointerup",t),window.removeEventListener("pointercancel",t)};function e(e){let t=performance.now(),n=e.clientX-K.x,r=e.clientY-K.y;B({x:p(K.panX+n,-ek.x,ek.x),y:p(K.panY+r,-ek.y,ek.y)});let i=el.current,a=t-i.time;a>0&&(eo.current={x:(e.clientX-i.x)/a*16,y:(e.clientY-i.y)/a*16}),el.current={x:e.clientX,y:e.clientY,time:t}}function t(){J(!1),null!==ea.current&&cancelAnimationFrame(ea.current),es>1&&(ea.current=requestAnimationFrame(function e(){let t=eo.current;if(.1>Math.abs(t.x)&&.1>Math.abs(t.y)){eo.current={x:0,y:0},ea.current=null;return}B(e=>({x:p(e.x+t.x,-ek.x,ek.x),y:p(e.y+t.y,-ek.y,ek.y)})),eo.current={x:.92*t.x,y:.92*t.y},ea.current=requestAnimationFrame(e)}))}},[es,K,G,ek]),u(()=>{if(0===ek.x&&0===ek.y)return void B({x:0,y:0});B(e=>({x:p(e.x,-ek.x,ek.x),y:p(e.y,-ek.y,ek.y)}))},[ek]);let eN=m(()=>ed.map((e,t)=>({...e,index:t,isActive:t===eu})),[eu,ed]);return e(d,{open:ec,onOpenChange:eb,modal:!0,children:t(s,{children:[e(c,{className:"fixed inset-0 z-50 bg-black/60 backdrop-blur-sm"}),e(o,{className:w("fixed inset-0 z-50 flex items-center justify-center p-6 outline-none",H),children:t("div",{className:"relative w-full max-w-6xl",children:[t("button",{type:"button",className:"absolute top-3 right-3 z-20 inline-flex size-9 items-center justify-center rounded-md border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",onClick:()=>eb(!1),children:[e(l,{className:"size-4"}),e("span",{className:"sr-only",children:"Fechar"})]}),e("div",{className:"relative overflow-hidden rounded-xl border border-white/10 bg-black/30 shadow-2xl",children:e("div",{ref:er,className:w("relative aspect-[16/9] w-full touch-none overflow-hidden bg-black/40",es>1?"cursor-grab active:cursor-grabbing":"cursor-default"),role:"application","aria-label":"Area de zoom e pan da imagem",onPointerDown:e=>{es<=1||(e.preventDefault(),null!==ea.current&&(cancelAnimationFrame(ea.current),ea.current=null),J(!0),Q({x:e.clientX,y:e.clientY,panX:Z.x,panY:Z.y}),el.current={x:e.clientX,y:e.clientY,time:performance.now()},eo.current={x:0,y:0})},onDoubleClick:()=>{es>1?eg(1):eg(Math.min(2,X)),B({x:0,y:0})},children:em?e("img",{ref:ei,alt:em.alt??"Imagem selecionada",src:em.src,className:w("pointer-events-none absolute top-1/2 left-1/2 select-none object-contain",G?"transition-none":"transition-transform duration-200"),style:{width:ev.width?`${ev.width}px`:"100%",height:ev.height?`${ev.height}px`:"100%",transform:`translate(calc(-50% + ${Z.x}px), calc(-50% + ${Z.y}px)) scale(${es})`,transformOrigin:"center"},draggable:!1,onLoad:e=>{let t=e.currentTarget;t.naturalWidth&&t.naturalHeight&&et({width:t.naturalWidth,height:t.naturalHeight})}}):e("div",{className:"flex h-full w-full items-center justify-center text-sm text-white/70",children:"Nenhuma imagem disponivel"})})}),t("button",{type:"button",className:w("-translate-y-1/2 absolute top-1/2 left-3 z-20 inline-flex size-10 items-center justify-center rounded-full border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",!ew&&"pointer-events-none opacity-40"),onClick:ef,children:[e(n,{className:"size-4"}),e("span",{className:"sr-only",children:"Imagem anterior"})]}),t("button",{type:"button",className:w("-translate-y-1/2 absolute top-1/2 right-3 z-20 inline-flex size-10 items-center justify-center rounded-full border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",!ep&&"pointer-events-none opacity-40"),onClick:ey,children:[e(r,{className:"size-4"}),e("span",{className:"sr-only",children:"Proxima imagem"})]}),C&&t("div",{className:"absolute bottom-3 left-3 z-20 flex items-center gap-3 rounded-lg border border-white/20 bg-black/60 px-3 py-2 text-white shadow-lg",children:[t("button",{type:"button",className:"inline-flex size-8 items-center justify-center rounded-md border border-white/20 bg-black/40 transition hover:bg-black/70",onClick:()=>eg(es-Y),disabled:es<=E,children:[e(i,{className:"size-4"}),e("span",{className:"sr-only",children:"Diminuir zoom"})]}),e("div",{className:"w-32",children:e(g,{min:E,max:X,step:Y,value:[es],onValueChange:e=>eg(e[0]??E),"aria-label":"Zoom"})}),t("button",{type:"button",className:"inline-flex size-8 items-center justify-center rounded-md border border-white/20 bg-black/40 transition hover:bg-black/70",onClick:()=>eg(es+Y),disabled:es>=X,children:[e(a,{className:"size-4"}),e("span",{className:"sr-only",children:"Aumentar zoom"})]})]}),M&&eh>0&&t("div",{className:"-translate-x-1/2 absolute bottom-4 left-1/2 z-20 rounded-full border border-white/20 bg-black/60 px-3 py-1 text-white text-xs shadow-lg",children:["Imagem ",eu+1," de ",eh]}),L&&eh>0&&e("div",{className:"absolute right-3 bottom-3 z-20 flex max-w-[55%] items-center gap-2 overflow-x-auto rounded-lg border border-white/20 bg-black/60 p-2 shadow-lg",children:eN.map(t=>e("button",{type:"button",onClick:()=>ex(t.index),className:w("relative h-10 w-14 shrink-0 overflow-hidden rounded-md border border-white/10 transition",t.isActive?"ring-2 ring-primary ring-offset-2 ring-offset-black":"opacity-70 hover:opacity-100"),children:e("img",{alt:t.alt??`Miniatura ${t.index+1}`,src:t.src,className:"h-full w-full object-cover",draggable:!1})},`${t.src}-${t.index}`))}),em?.label&&e("div",{className:"-translate-x-1/2 absolute top-3 left-1/2 z-20 rounded-full border border-white/20 bg-black/60 px-3 py-1 text-white text-xs shadow-lg",children:em.label})]})})]})})}export{f as ImageSlider};
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CaretLeftIcon as n,CaretRightIcon as r,MinusIcon as i,PlusIcon as a,XIcon as l}from"@phosphor-icons/react";import{Content as o,Overlay as c,Portal as s,Root as d}from"@radix-ui/react-dialog";import{useCallback as h,useEffect as u,useMemo as m,useRef as b,useState as x}from"react";import{Slider as g}from"../slider.js";import{cn as w}from"../../lib/utils.js";function p(e,t,n){return Math.min(Math.max(e,t),n)}function f({images:f,open:y,defaultOpen:v=!1,onOpenChange:k,index:N,defaultIndex:z=0,onIndexChange:j,loop:A=!0,showThumbnails:L=!0,showCounter:M=!0,showZoom:C=!0,minZoom:E=1,maxZoom:X=3,zoomStep:Y=.1,zoom:$,defaultZoom:D=1,onZoomChange:F,className:H}){let I=void 0!==y,R=void 0!==N,W=void 0!==$,[O,q]=x(v),[P,S]=x(z),[T,V]=x(D),[Z,B]=x({x:0,y:0}),[G,J]=x(!1),[K,Q]=x({x:0,y:0,panX:0,panY:0}),[U,_]=x({width:0,height:0}),[ee,et]=x({width:0,height:0}),[en,er]=x(null),ei=b(null),ea=b(null),el=b({x:0,y:0,time:0}),eo=b({x:0,y:0}),ec=I?y:O,es=W?$:T,ed=f.length?f:[],eh=ed.length,eu=eh?p(R?N:P,0,eh-1):0,em=ed[eu],eb=h(e=>{I||q(e),k?.(e)},[I,k]),ex=h(e=>{let t=p(e,0,Math.max(eh-1,0));R||S(t),j?.(t)},[R,j,eh]),eg=h(e=>{let t=p(e,E,X);W||V(t),F?.(t)},[W,X,E,F]),ew=A?eh>1:eu>0,ep=A?eh>1:eu<eh-1,ef=h(()=>{if(eh){if(0===eu){A&&ex(eh-1);return}ex(eu-1)}},[eu,A,ex,eh]),ey=h(()=>{if(eh){if(eu===eh-1){A&&ex(0);return}ex(eu+1)}},[eu,A,ex,eh]);u(()=>{if(ec)return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e);function e(e){"ArrowLeft"===e.key&&(e.preventDefault(),ef()),"ArrowRight"===e.key&&(e.preventDefault(),ey())}},[ey,ef,ec]),u(()=>{W||V(D),B({x:0,y:0})},[eu,D,W]),u(()=>{es<=1&&B({x:0,y:0})},[es]),u(()=>()=>{null!==ea.current&&cancelAnimationFrame(ea.current)},[]),u(()=>{if(!en)return;let e=new ResizeObserver(e=>{let t=e[0];t&&_({width:t.contentRect.width,height:t.contentRect.height})});return e.observe(en),()=>e.disconnect()},[en]),u(()=>{if(!ec||!ei.current)return;let e=ei.current;e.complete&&e.naturalWidth&&e.naturalHeight&&et({width:e.naturalWidth,height:e.naturalHeight})},[eu,ec]);let ev=m(()=>{if(!ee.width||!ee.height||!U.width||!U.height)return{width:0,height:0};let e=Math.min(U.width/ee.width,U.height/ee.height);return{width:ee.width*e,height:ee.height*e}},[U,ee]),ek=m(()=>{let e=ev.width*es,t=ev.height*es;return{x:Math.max(0,(e-U.width)/2),y:Math.max(0,(t-U.height)/2)}},[es,ev,U]);u(()=>{if(G)return window.addEventListener("pointermove",e),window.addEventListener("pointerup",t),window.addEventListener("pointercancel",t),()=>{window.removeEventListener("pointermove",e),window.removeEventListener("pointerup",t),window.removeEventListener("pointercancel",t)};function e(e){let t=performance.now(),n=e.clientX-K.x,r=e.clientY-K.y;B({x:p(K.panX+n,-ek.x,ek.x),y:p(K.panY+r,-ek.y,ek.y)});let i=el.current,a=t-i.time;a>0&&(eo.current={x:(e.clientX-i.x)/a*16,y:(e.clientY-i.y)/a*16}),el.current={x:e.clientX,y:e.clientY,time:t}}function t(){J(!1),null!==ea.current&&cancelAnimationFrame(ea.current),es>1&&(ea.current=requestAnimationFrame(function e(){let t=eo.current;if(.1>Math.abs(t.x)&&.1>Math.abs(t.y)){eo.current={x:0,y:0},ea.current=null;return}B(e=>({x:p(e.x+t.x,-ek.x,ek.x),y:p(e.y+t.y,-ek.y,ek.y)})),eo.current={x:.92*t.x,y:.92*t.y},ea.current=requestAnimationFrame(e)}))}},[es,K,G,ek]),u(()=>{if(0===ek.x&&0===ek.y)return void B({x:0,y:0});B(e=>({x:p(e.x,-ek.x,ek.x),y:p(e.y,-ek.y,ek.y)}))},[ek]);let eN=m(()=>ed.map((e,t)=>({...e,index:t,isActive:t===eu})),[eu,ed]);return e(d,{open:ec,onOpenChange:eb,modal:!0,children:t(s,{children:[e(c,{className:"fixed inset-0 z-50 bg-black/60 backdrop-blur-sm"}),e(o,{className:w("fixed inset-0 z-50 flex items-center justify-center p-6 outline-none",H),children:t("div",{className:"relative w-full max-w-6xl",children:[t("button",{type:"button",className:"absolute top-3 right-3 z-20 inline-flex size-9 items-center justify-center rounded-md border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",onClick:()=>eb(!1),children:[e(l,{className:"size-4"}),e("span",{className:"sr-only",children:"Fechar"})]}),e("div",{className:"relative overflow-hidden rounded-xl border border-white/10 bg-black/30 shadow-2xl",children:e("div",{ref:er,className:w("relative aspect-[16/9] w-full touch-none overflow-hidden bg-black/40",es>1?"cursor-grab active:cursor-grabbing":"cursor-default"),role:"application","aria-label":"Area de zoom e pan da imagem",onPointerDown:e=>{es<=1||(e.preventDefault(),null!==ea.current&&(cancelAnimationFrame(ea.current),ea.current=null),J(!0),Q({x:e.clientX,y:e.clientY,panX:Z.x,panY:Z.y}),el.current={x:e.clientX,y:e.clientY,time:performance.now()},eo.current={x:0,y:0})},onDoubleClick:()=>{es>1?eg(1):eg(Math.min(2,X)),B({x:0,y:0})},children:em?e("img",{ref:ei,alt:em.alt??"Imagem selecionada",src:em.src,className:w("pointer-events-none absolute top-1/2 left-1/2 select-none object-contain",G?"transition-none":"transition-transform duration-200"),style:{width:ev.width?`${ev.width}px`:"100%",height:ev.height?`${ev.height}px`:"100%",transform:`translate(calc(-50% + ${Z.x}px), calc(-50% + ${Z.y}px)) scale(${es})`,transformOrigin:"center"},draggable:!1,onLoad:e=>{let t=e.currentTarget;t.naturalWidth&&t.naturalHeight&&et({width:t.naturalWidth,height:t.naturalHeight})}}):e("div",{className:"flex h-full w-full items-center justify-center text-sm text-white/70",children:"Nenhuma imagem disponivel"})})}),t("button",{type:"button",className:w("-translate-y-1/2 absolute top-1/2 left-3 z-20 inline-flex size-10 items-center justify-center rounded-full border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",!ew&&"pointer-events-none opacity-40"),onClick:ef,children:[e(n,{className:"size-4"}),e("span",{className:"sr-only",children:"Imagem anterior"})]}),t("button",{type:"button",className:w("-translate-y-1/2 absolute top-1/2 right-3 z-20 inline-flex size-10 items-center justify-center rounded-full border border-white/30 bg-black/60 text-white shadow-lg transition hover:bg-black/80",!ep&&"pointer-events-none opacity-40"),onClick:ey,children:[e(r,{className:"size-4"}),e("span",{className:"sr-only",children:"Proxima imagem"})]}),C&&t("div",{className:"absolute bottom-3 left-3 z-20 flex items-center gap-3 rounded-lg border border-white/20 bg-black/60 px-3 py-2 text-white shadow-lg",children:[t("button",{type:"button",className:"inline-flex size-8 items-center justify-center rounded-md border border-white/20 bg-black/40 transition hover:bg-black/70",onClick:()=>eg(es-Y),disabled:es<=E,children:[e(i,{className:"size-4"}),e("span",{className:"sr-only",children:"Diminuir zoom"})]}),e("div",{className:"w-32",children:e(g,{min:E,max:X,step:Y,value:[es],onValueChange:e=>eg(e[0]??E),"aria-label":"Zoom"})}),t("button",{type:"button",className:"inline-flex size-8 items-center justify-center rounded-md border border-white/20 bg-black/40 transition hover:bg-black/70",onClick:()=>eg(es+Y),disabled:es>=X,children:[e(a,{className:"size-4"}),e("span",{className:"sr-only",children:"Aumentar zoom"})]})]}),M&&eh>0&&t("div",{className:"-translate-x-1/2 absolute bottom-4 left-1/2 z-20 rounded-full border border-white/20 bg-black/60 px-3 py-1 text-white text-xs shadow-lg",children:["Imagem ",eu+1," de ",eh]}),L&&eh>0&&e("div",{className:"absolute right-3 bottom-3 z-20 flex max-w-[55%] items-center gap-2 overflow-x-auto rounded-lg border border-white/20 bg-black/60 p-2 shadow-lg",children:eN.map(t=>e("button",{type:"button",onClick:()=>ex(t.index),className:w("relative h-10 w-14 shrink-0 overflow-hidden rounded-md border border-white/10 transition",t.isActive?"ring-2 ring-primary ring-offset-2 ring-offset-black":"opacity-70 hover:opacity-100"),children:e("img",{alt:t.alt??`Miniatura ${t.index+1}`,src:t.src,className:"h-full w-full object-cover",draggable:!1})},`${t.src}-${t.index}`))}),em?.label&&e("div",{className:"-translate-x-1/2 absolute top-3 left-1/2 z-20 rounded-full border border-white/20 bg-black/60 px-3 py-1 text-white text-xs shadow-lg",children:em.label})]})})]})})}export{f as ImageSlider};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as t,jsxs as e}from"react/jsx-runtime";import{MinusIcon as r}from"@phosphor-icons/react";import{OTPInput as a,OTPInputContext as i,REGEXP_ONLY_CHARS as o,REGEXP_ONLY_DIGITS as n,REGEXP_ONLY_DIGITS_AND_CHARS as s}from"input-otp";import{useContext as p}from"react";import{cn as l}from"../../utils/utils.js";function u({className:e,containerClassName:r,pattern:i,...o}){return t(a,{"aria-label":"One-time password",className:l("disabled:cursor-not-allowed",e),containerClassName:l("flex items-center gap-2 has-[:disabled]:opacity-50",r),"data-slot":"input-otp",pattern:i||s,...o})}function c({className:e,...r}){return t("div",{className:l("flex items-center gap-1",e),"data-slot":"input-otp-group",role:"group",...r})}function d({className:r,index:a,...o}){let{isActive:n,char:s,hasFakeCaret:u}=p(i).slots[a];return e("div",{className:l("relative flex h-12 w-11 items-center justify-center rounded border border-input border-y bg-card text-base shadow-sm transition-all data-[active=true]:z-10 data-[active=true]:ring-1 data-[active=true]:ring-primary",r),"data-active":n,"data-slot":"input-otp-slot",...o,children:[s,u&&t("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:t("div",{className:"h-4 w-px animate-caret-blink bg-foreground duration-1000"})})]})}function m({...e}){return t("div",{"data-slot":"input-otp-separator",...e,children:t(r,{})})}export{u as InputOTP,c as InputOTPGroup,m as InputOTPSeparator,d as InputOTPSlot,o as REGEXP_ONLY_CHARS,n as REGEXP_ONLY_DIGITS,s as REGEXP_ONLY_DIGITS_AND_CHARS};
2
+ import{jsx as t,jsxs as e}from"react/jsx-runtime";import{MinusIcon as r}from"@phosphor-icons/react";import{OTPInput as a,OTPInputContext as i,REGEXP_ONLY_CHARS as o,REGEXP_ONLY_DIGITS as n,REGEXP_ONLY_DIGITS_AND_CHARS as s}from"input-otp";import{useContext as p}from"react";import{cn as l}from"../../lib/utils.js";function u({className:e,containerClassName:r,pattern:i,...o}){return t(a,{"aria-label":"One-time password",className:l("disabled:cursor-not-allowed",e),containerClassName:l("flex items-center gap-2 has-[:disabled]:opacity-50",r),"data-slot":"input-otp",pattern:i||s,...o})}function c({className:e,...r}){return t("div",{className:l("flex items-center gap-1",e),"data-slot":"input-otp-group",role:"group",...r})}function d({className:r,index:a,...o}){let{isActive:n,char:s,hasFakeCaret:u}=p(i).slots[a];return e("div",{className:l("relative flex h-12 w-11 items-center justify-center rounded border border-input border-y bg-card text-base shadow-sm transition-all data-[active=true]:z-10 data-[active=true]:ring-1 data-[active=true]:ring-primary",r),"data-active":n,"data-slot":"input-otp-slot",...o,children:[s,u&&t("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:t("div",{className:"h-4 w-px animate-caret-blink bg-foreground duration-1000"})})]})}function m({...e}){return t("div",{"data-slot":"input-otp-separator",...e,children:t(r,{})})}export{u as InputOTP,c as InputOTPGroup,m as InputOTPSeparator,d as InputOTPSlot,o as REGEXP_ONLY_CHARS,n as REGEXP_ONLY_DIGITS,s as REGEXP_ONLY_DIGITS_AND_CHARS};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Root as a}from"@radix-ui/react-label";import{cn as i}from"../../utils/utils.js";function r({className:r,children:l,required:d=!1,...o}){return t(a,{className:i("inline-block font-medium text-foreground text-sm leading-none peer-disabled:opacity-50 peer-aria-invalid:text-destructive data-invalid:text-destructive group-data-disabled:opacity-50 peer-data-disabled:opacity-50",r),"data-slot":"label",...o,children:[l,d&&e("span",{className:"ml-1 text-primary",children:"*"})]})}export{r as Label};
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Root as a}from"@radix-ui/react-label";import{cn as i}from"../../lib/utils.js";function r({className:r,children:l,required:d=!1,...o}){return t(a,{className:i("inline-block font-medium text-foreground text-sm leading-none peer-disabled:opacity-50 peer-aria-invalid:text-destructive data-invalid:text-destructive group-data-disabled:opacity-50 peer-data-disabled:opacity-50",r),"data-slot":"label",...o,children:[l,d&&e("span",{className:"ml-1 text-primary",children:"*"})]})}export{r as Label};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Root as a}from"@radix-ui/react-label";import{cn as i}from"../utils/utils.js";function r({className:r,children:l,required:d=!1,...o}){return t(a,{className:i("inline-block font-medium text-foreground text-sm leading-none peer-disabled:opacity-50 peer-aria-invalid:text-destructive data-invalid:text-destructive group-data-disabled:opacity-50 peer-data-disabled:opacity-50",r),"data-slot":"label",...o,children:[l,d&&e("span",{className:"ml-1 text-primary",children:"*"})]})}export{r as Label};
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Root as a}from"@radix-ui/react-label";import{cn as i}from"../lib/utils.js";function r({className:r,children:l,required:d=!1,...o}){return t(a,{className:i("inline-block font-medium text-foreground text-sm leading-none peer-disabled:opacity-50 peer-aria-invalid:text-destructive data-invalid:text-destructive group-data-disabled:opacity-50 peer-data-disabled:opacity-50",r),"data-slot":"label",...o,children:[l,d&&e("span",{className:"ml-1 text-primary",children:"*"})]})}export{r as Label};
@@ -1,2 +1,2 @@
1
1
  'use client'
2
- import{jsx as t}from"react/jsx-runtime";import{useEffect as e,useState as r}from"react";import{cn as m}from"../utils/utils.js";import{Input as i}from"./input/index.js";function a({value:a,onChange:n,decimals:o=3,language:u="pt-BR",className:l,...p}){let c=10**o,[s,f]=r("");return e(()=>{"number"!=typeof a||Number.isNaN(a)||f(Math.round(a*c).toString())},[a,c]),t(i,{value:function(t){let e=Number(t)/c;return new Intl.NumberFormat(u,{style:"decimal",minimumFractionDigits:o,maximumFractionDigits:o}).format(e)}(s),onChange:function(t){let e=t.target.value,r=new Intl.NumberFormat(u).formatToParts(12345.6),m=r.find(t=>"group"===t.type)?.value||",",i=r.find(t=>"decimal"===t.type)?.value||".",a=e.replace(RegExp(`\\${m}`,"g"),"").replace(RegExp(`\\${i}`,"g"),"").replace(/\D/g,""),o=Number(a)/c;f(a),n(o)},className:m("h-10",l),...p})}export{a as MaskInput};
2
+ import{jsx as t}from"react/jsx-runtime";import{useEffect as e,useState as r}from"react";import{cn as m}from"../lib/utils.js";import{Input as i}from"./input/index.js";function a({value:a,onChange:n,decimals:o=3,language:u="pt-BR",className:l,...p}){let c=10**o,[f,s]=r("");return e(()=>{"number"!=typeof a||Number.isNaN(a)||s(Math.round(a*c).toString())},[a,c]),t(i,{value:function(t){let e=Number(t)/c;return new Intl.NumberFormat(u,{style:"decimal",minimumFractionDigits:o,maximumFractionDigits:o}).format(e)}(f),onChange:function(t){let e=t.target.value,r=new Intl.NumberFormat(u).formatToParts(12345.6),m=r.find(t=>"group"===t.type)?.value||",",i=r.find(t=>"decimal"===t.type)?.value||".",a=e.replace(RegExp(`\\${m}`,"g"),"").replace(RegExp(`\\${i}`,"g"),"").replace(/\D/g,""),o=Number(a)/c;s(a),n(o)},className:m("h-10",l),...p})}export{a as MaskInput};