@cryptlex/web-components 3.4.0 → 3.5.1

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 (164) hide show
  1. package/dist/components/data-table/column-picker.es.js.map +1 -1
  2. package/dist/components/data-table/data-table.es.js.map +1 -1
  3. package/dist/components/data-table/page-size.es.js.map +1 -1
  4. package/dist/components/data-table/paginator.es.js.map +1 -1
  5. package/dist/components/data-table/table-actions.es.js.map +1 -1
  6. package/dist/components/data-table/table-commons.es.js.map +1 -1
  7. package/dist/components/data-table/table-content.es.js.map +1 -1
  8. package/dist/components/data-table/table-utils/constants.es.js.map +1 -1
  9. package/dist/components/data-table/table-utils/createTableFetchFn.es.js.map +1 -1
  10. package/dist/components/data-table/table-utils/date.es.js.map +1 -1
  11. package/dist/components/data-table/table-utils/string.es.js.map +1 -1
  12. package/dist/components/data-table/table-utils/types.es.js.map +1 -1
  13. package/dist/components/inputs/calendar.es.js.map +1 -1
  14. package/dist/components/inputs/checkbox.es.js +1 -1
  15. package/dist/components/inputs/checkbox.es.js.map +1 -1
  16. package/dist/components/inputs/country-select.es.js.map +1 -1
  17. package/dist/components/inputs/form-field.es.js.map +1 -1
  18. package/dist/components/inputs/input-otp.es.js.map +1 -1
  19. package/dist/components/inputs/input.es.js.map +1 -1
  20. package/dist/components/inputs/license-type-select.es.js.map +1 -1
  21. package/dist/components/inputs/multi-select.es.js.map +1 -1
  22. package/dist/components/inputs/password-input.es.js.map +1 -1
  23. package/dist/components/inputs/radio-group.es.js.map +1 -1
  24. package/dist/components/inputs/search-input.es.js.map +1 -1
  25. package/dist/components/inputs/select.es.js.map +1 -1
  26. package/dist/components/inputs/textarea.es.js.map +1 -1
  27. package/dist/components/key-value-card/key-value-card.es.js.map +1 -1
  28. package/dist/components/ui/accordion.es.js.map +1 -1
  29. package/dist/components/ui/alert.es.js.map +1 -1
  30. package/dist/components/ui/avatar.es.js.map +1 -1
  31. package/dist/components/ui/badge.es.js.map +1 -1
  32. package/dist/components/ui/breadcrumb.es.js.map +1 -1
  33. package/dist/components/ui/button.es.js.map +1 -1
  34. package/dist/components/ui/card.es.js.map +1 -1
  35. package/dist/components/ui/copy-button.es.js.map +1 -1
  36. package/dist/components/ui/dialog.es.js.map +1 -1
  37. package/dist/components/ui/drawer.es.js.map +1 -1
  38. package/dist/components/ui/dropdown-menu.es.js.map +1 -1
  39. package/dist/components/ui/label.es.js.map +1 -1
  40. package/dist/components/ui/loader.es.js.map +1 -1
  41. package/dist/components/ui/pagination.es.js.map +1 -1
  42. package/dist/components/ui/popover.es.js.map +1 -1
  43. package/dist/components/ui/separator.es.js.map +1 -1
  44. package/dist/components/ui/sheet.es.js.map +1 -1
  45. package/dist/components/ui/sidebar.es.js.map +1 -1
  46. package/dist/components/ui/skeleton.es.js.map +1 -1
  47. package/dist/components/ui/sonner.es.js.map +1 -1
  48. package/dist/components/ui/static-data-table.es.js.map +1 -1
  49. package/dist/components/ui/table-page-layout.es.js.map +1 -1
  50. package/dist/components/ui/table.es.js.map +1 -1
  51. package/dist/components/ui/tabs.es.js.map +1 -1
  52. package/dist/components/ui/timeline.es.js.map +1 -1
  53. package/dist/components/ui/tooltip.es.js.map +1 -1
  54. package/dist/hooks/use-mobile.es.js.map +1 -1
  55. package/dist/node_modules/.pnpm/@date-fns_tz@1.2.0/node_modules/@date-fns/tz/date/index.es.js.map +1 -1
  56. package/dist/node_modules/.pnpm/@date-fns_tz@1.2.0/node_modules/@date-fns/tz/date/mini.es.js.map +1 -1
  57. package/dist/node_modules/.pnpm/@date-fns_tz@1.2.0/node_modules/@date-fns/tz/tzOffset/index.es.js.map +1 -1
  58. package/dist/node_modules/.pnpm/@floating-ui_core@1.7.1/node_modules/@floating-ui/core/dist/floating-ui.core.es.js.map +1 -1
  59. package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.1/node_modules/@floating-ui/dom/dist/floating-ui.dom.es.js.map +1 -1
  60. package/dist/node_modules/.pnpm/@floating-ui_react-dom@2.1.3_react-dom@19.1.0_react@19.1.0/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js.map +1 -1
  61. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.es.js.map +1 -1
  62. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.es.js.map +1 -1
  63. package/dist/node_modules/.pnpm/@radix-ui_primitive@1.1.2/node_modules/@radix-ui/primitive/dist/index.es.js.map +1 -1
  64. package/dist/node_modules/.pnpm/@radix-ui_react-accordion@1.2.11_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-accordion/dist/index.es.js.map +1 -1
  65. package/dist/node_modules/.pnpm/@radix-ui_react-arrow@1.1.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-arrow/dist/index.es.js.map +1 -1
  66. package/dist/node_modules/.pnpm/@radix-ui_react-collapsible@1.1.11_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-collapsible/dist/index.es.js.map +1 -1
  67. package/dist/node_modules/.pnpm/@radix-ui_react-collection@1.1.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-collection/dist/index.es.js.map +1 -1
  68. package/dist/node_modules/.pnpm/@radix-ui_react-compose-refs@1.1.2_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-compose-refs/dist/index.es.js.map +1 -1
  69. package/dist/node_modules/.pnpm/@radix-ui_react-context@1.1.2_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-context/dist/index.es.js.map +1 -1
  70. package/dist/node_modules/.pnpm/@radix-ui_react-dialog@1.1.14_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-dialog/dist/index.es.js.map +1 -1
  71. package/dist/node_modules/.pnpm/@radix-ui_react-dismissable-layer@1.1.10_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-dismissable-layer/dist/index.es.js.map +1 -1
  72. package/dist/node_modules/.pnpm/@radix-ui_react-dropdown-menu@2.1.15_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-dropdown-menu/dist/index.es.js.map +1 -1
  73. package/dist/node_modules/.pnpm/@radix-ui_react-focus-guards@1.1.2_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-focus-guards/dist/index.es.js.map +1 -1
  74. package/dist/node_modules/.pnpm/@radix-ui_react-focus-scope@1.1.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-focus-scope/dist/index.es.js.map +1 -1
  75. package/dist/node_modules/.pnpm/@radix-ui_react-id@1.1.1_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-id/dist/index.es.js.map +1 -1
  76. package/dist/node_modules/.pnpm/@radix-ui_react-label@2.1.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-label/dist/index.es.js.map +1 -1
  77. package/dist/node_modules/.pnpm/@radix-ui_react-menu@2.1.15_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-menu/dist/index.es.js.map +1 -1
  78. package/dist/node_modules/.pnpm/@radix-ui_react-popover@1.1.14_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-popover/dist/index.es.js.map +1 -1
  79. package/dist/node_modules/.pnpm/@radix-ui_react-popper@1.2.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-popper/dist/index.es.js.map +1 -1
  80. package/dist/node_modules/.pnpm/@radix-ui_react-portal@1.1.9_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-portal/dist/index.es.js.map +1 -1
  81. package/dist/node_modules/.pnpm/@radix-ui_react-presence@1.1.4_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-presence/dist/index.es.js.map +1 -1
  82. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.1.3_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-primitive/dist/index.es.js.map +1 -1
  83. package/dist/node_modules/.pnpm/@radix-ui_react-radio-group@1.3.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-radio-group/dist/index.es.js.map +1 -1
  84. package/dist/node_modules/.pnpm/@radix-ui_react-roving-focus@1.1.10_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-roving-focus/dist/index.es.js.map +1 -1
  85. package/dist/node_modules/.pnpm/@radix-ui_react-separator@1.1.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-separator/dist/index.es.js.map +1 -1
  86. package/dist/node_modules/.pnpm/@radix-ui_react-slot@1.2.3_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-slot/dist/index.es.js.map +1 -1
  87. package/dist/node_modules/.pnpm/@radix-ui_react-tabs@1.1.12_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-tabs/dist/index.es.js.map +1 -1
  88. package/dist/node_modules/.pnpm/@radix-ui_react-tooltip@1.2.7_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-tooltip/dist/index.es.js.map +1 -1
  89. package/dist/node_modules/.pnpm/@radix-ui_react-use-controllable-state@1.2.2_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.es.js.map +1 -1
  90. package/dist/node_modules/.pnpm/@radix-ui_react-use-escape-keydown@1.1.1_@types_react@19.1.0_react@19.1.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.es.js.map +1 -1
  91. package/dist/node_modules/.pnpm/@radix-ui_react-visually-hidden@1.2.3_@types_react-dom@19.1.0_@types_react@19.1.0_react-dom@19.1.0_react@19.1.0/node_modules/@radix-ui/react-visually-hidden/dist/index.es.js.map +1 -1
  92. package/dist/node_modules/.pnpm/aria-hidden@1.2.6/node_modules/aria-hidden/dist/es2015/index.es.js.map +1 -1
  93. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.es.js.map +1 -1
  94. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.es.js.map +1 -1
  95. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchFn.es.js.map +1 -1
  96. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.es.js.map +1 -1
  97. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/formatDistance.es.js.map +1 -1
  98. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/localize.es.js.map +1 -1
  99. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/match.es.js.map +1 -1
  100. package/dist/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US.es.js.map +1 -1
  101. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/DayPicker.es.js.map +1 -1
  102. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/classes/DateLib.es.js.map +1 -1
  103. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Chevron.es.js.map +1 -1
  104. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Day.es.js.map +1 -1
  105. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/DayButton.es.js.map +1 -1
  106. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Dropdown.es.js.map +1 -1
  107. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Month.es.js.map +1 -1
  108. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/MonthCaption.es.js.map +1 -1
  109. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/MonthsDropdown.es.js.map +1 -1
  110. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Nav.es.js.map +1 -1
  111. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/NextMonthButton.es.js.map +1 -1
  112. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/PreviousMonthButton.es.js.map +1 -1
  113. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/Weekdays.es.js.map +1 -1
  114. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/components/YearsDropdown.es.js.map +1 -1
  115. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumber.es.js.map +1 -1
  116. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.es.js.map +1 -1
  117. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getComponents.es.js.map +1 -1
  118. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getDataAttributes.es.js.map +1 -1
  119. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getDates.es.js.map +1 -1
  120. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getDays.es.js.map +1 -1
  121. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getDefaultClassNames.es.js.map +1 -1
  122. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getDisplayMonths.es.js.map +1 -1
  123. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getFocusableDate.es.js.map +1 -1
  124. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getFormatters.es.js.map +1 -1
  125. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getInitialMonth.es.js.map +1 -1
  126. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.es.js.map +1 -1
  127. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getMonths.es.js.map +1 -1
  128. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getNavMonth.es.js.map +1 -1
  129. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getNextMonth.es.js.map +1 -1
  130. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.es.js.map +1 -1
  131. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.es.js.map +1 -1
  132. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getWeekdays.es.js.map +1 -1
  133. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getWeeks.es.js.map +1 -1
  134. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/getYearOptions.es.js.map +1 -1
  135. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/helpers/startOfBroadcastWeek.es.js.map +1 -1
  136. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/selection/useMulti.es.js.map +1 -1
  137. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/selection/useRange.es.js.map +1 -1
  138. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/selection/useSingle.es.js.map +1 -1
  139. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/useAnimation.es.js.map +1 -1
  140. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/useCalendar.es.js.map +1 -1
  141. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/useFocus.es.js.map +1 -1
  142. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/utils/addToRange.es.js.map +1 -1
  143. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/utils/dateMatchModifiers.es.js.map +1 -1
  144. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.es.js.map +1 -1
  145. package/dist/node_modules/.pnpm/react-day-picker@9.7.0_react@19.1.0/node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.es.js.map +1 -1
  146. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/component.es.js.map +1 -1
  147. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.es.js.map +1 -1
  148. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/Combination.es.js.map +1 -1
  149. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.es.js.map +1 -1
  150. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/UI.es.js.map +1 -1
  151. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.es.js.map +1 -1
  152. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.1.0_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.es.js.map +1 -1
  153. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.1.0_react@19.1.0/node_modules/react-style-singleton/dist/es2015/component.es.js.map +1 -1
  154. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.1.0_react@19.1.0/node_modules/react-style-singleton/dist/es2015/hook.es.js.map +1 -1
  155. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.1.0_react@19.1.0/node_modules/react-style-singleton/dist/es2015/singleton.es.js.map +1 -1
  156. package/dist/node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.es.js.map +1 -1
  157. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.1.0_react@19.1.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.es.js.map +1 -1
  158. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.1.0_react@19.1.0/node_modules/use-callback-ref/dist/es2015/useRef.es.js.map +1 -1
  159. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.1.0_react@19.1.0/node_modules/use-sidecar/dist/es2015/exports.es.js.map +1 -1
  160. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.1.0_react@19.1.0/node_modules/use-sidecar/dist/es2015/medium.es.js.map +1 -1
  161. package/dist/utils/form-context.es.js.map +1 -1
  162. package/dist/utils/form-hook.es.js.map +1 -1
  163. package/dist/utils/index.es.js.map +1 -1
  164. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"column-picker.es.js","sources":["../../../lib/components/data-table/column-picker.tsx"],"sourcesContent":["import {\n\tButton,\n\tDropdownMenu,\n\tDropdownMenuCheckboxItem,\n\tDropdownMenuContent,\n\tDropdownMenuGroup,\n\tDropdownMenuTrigger,\n\tgetResourceDisplayName,\n} from \"@/index\";\nimport type { Column } from \"@tanstack/react-table\";\nimport { Columns3 } from \"lucide-react\";\n\nexport function ColumnPicker({\n\ttoggleAllColumnsVisible,\n\tgetIsAllColumnsVisible,\n\tgetAllColumns,\n}: {\n\ttoggleAllColumnsVisible: () => void;\n\tgetIsAllColumnsVisible: () => boolean;\n\tgetAllColumns: () => Column<any, any>[];\n}) {\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button icon={() => Columns3} variant={\"outline\"}>\n\t\t\t\t\tColumns\n\t\t\t\t</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent>\n\t\t\t\t<DropdownMenuGroup>\n\t\t\t\t\t<DropdownMenuCheckboxItem\n\t\t\t\t\t\tclassName=\"italic\"\n\t\t\t\t\t\tonSelect={(e) => {\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\ttoggleAllColumnsVisible();\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tchecked={getIsAllColumnsVisible()}\n\t\t\t\t\t>\n\t\t\t\t\t\t(Select all)\n\t\t\t\t\t</DropdownMenuCheckboxItem>\n\t\t\t\t\t{getAllColumns().map((col) => (\n\t\t\t\t\t\t<DropdownMenuCheckboxItem\n\t\t\t\t\t\t\tonSelect={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tcol.toggleVisibility();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tkey={col.id}\n\t\t\t\t\t\t\tdisabled={!col.getCanHide()}\n\t\t\t\t\t\t\tchecked={col.getIsVisible()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{col.getIsSorted()}{\" \"}\n\t\t\t\t\t\t\t{getResourceDisplayName(col.id, \"admin-portal\")}\n\t\t\t\t\t\t</DropdownMenuCheckboxItem>\n\t\t\t\t\t))}\n\t\t\t\t\t{/* TODO getResourceDisplayName needs some review here. */}\n\t\t\t\t</DropdownMenuGroup>\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n"],"names":["ColumnPicker","toggleAllColumnsVisible","getIsAllColumnsVisible","getAllColumns","DropdownMenu","jsx","DropdownMenuTrigger","Button","Columns3","DropdownMenuContent","jsxs","DropdownMenuGroup","DropdownMenuCheckboxItem","col","e","getResourceDisplayName"],"mappings":";;;;;;;;AAYO,SAASA,EAAa;AAAA,EAC5B,yBAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,eAAAC;AACD,GAIG;AACF,2BACEC,GACA,EAAA,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAoB,SAAO,IAC3B,UAAC,gBAAAD,EAAAE,GAAA,EAAO,MAAM,MAAMC,GAAU,SAAS,WAAW,UAAA,UAElD,CAAA,GACD;AAAA,IACA,gBAAAH,EAACI,GACA,EAAA,UAAA,gBAAAC,EAACC,GACA,EAAA,UAAA;AAAA,MAAA,gBAAAN;AAAA,QAACO;AAAA,QAAA;AAAA,UACA,WAAU;AAAA,UACV,UAAU,CAAC,MAAM;AAChB,cAAE,eAAe,GACOX,EAAA;AAAA,UACzB;AAAA,UACA,SAASC,EAAuB;AAAA,UAChC,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,MACCC,IAAgB,IAAI,CAACU,MACrB,gBAAAH;AAAA,QAACE;AAAA,QAAA;AAAA,UACA,UAAU,CAACE,MAAM;AAChB,YAAAA,EAAE,eAAe,GACjBD,EAAI,iBAAiB;AAAA,UACtB;AAAA,UAEA,UAAU,CAACA,EAAI,WAAW;AAAA,UAC1B,SAASA,EAAI,aAAa;AAAA,UAEzB,UAAA;AAAA,YAAAA,EAAI,YAAY;AAAA,YAAG;AAAA,YACnBE,EAAuBF,EAAI,IAAI,cAAc;AAAA,UAAA;AAAA,QAAA;AAAA,QALzCA,EAAI;AAAA,MAOV,CAAA;AAAA,IAAA,EAAA,CAEF,EACD,CAAA;AAAA,EAAA,GACD;AAEF;"}
1
+ {"version":3,"file":"column-picker.es.js","sources":["../../../lib/components/data-table/column-picker.tsx"],"sourcesContent":["import {\n\tButton,\n\tDropdownMenu,\n\tDropdownMenuCheckboxItem,\n\tDropdownMenuContent,\n\tDropdownMenuGroup,\n\tDropdownMenuTrigger,\n\tgetResourceDisplayName,\n} from \"@/index\";\nimport type { Column } from \"@tanstack/react-table\";\nimport { Columns3 } from \"lucide-react\";\n\nexport function ColumnPicker({\n\ttoggleAllColumnsVisible,\n\tgetIsAllColumnsVisible,\n\tgetAllColumns,\n}: {\n\ttoggleAllColumnsVisible: () => void;\n\tgetIsAllColumnsVisible: () => boolean;\n\tgetAllColumns: () => Column<any, any>[];\n}) {\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button icon={() => Columns3} variant={\"outline\"}>\n\t\t\t\t\tColumns\n\t\t\t\t</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent>\n\t\t\t\t<DropdownMenuGroup>\n\t\t\t\t\t<DropdownMenuCheckboxItem\n\t\t\t\t\t\tclassName=\"italic\"\n\t\t\t\t\t\tonSelect={(e) => {\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\ttoggleAllColumnsVisible();\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tchecked={getIsAllColumnsVisible()}\n\t\t\t\t\t>\n\t\t\t\t\t\t(Select all)\n\t\t\t\t\t</DropdownMenuCheckboxItem>\n\t\t\t\t\t{getAllColumns().map((col) => (\n\t\t\t\t\t\t<DropdownMenuCheckboxItem\n\t\t\t\t\t\t\tonSelect={(e) => {\n\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\tcol.toggleVisibility();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tkey={col.id}\n\t\t\t\t\t\t\tdisabled={!col.getCanHide()}\n\t\t\t\t\t\t\tchecked={col.getIsVisible()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{col.getIsSorted()}{\" \"}\n\t\t\t\t\t\t\t{getResourceDisplayName(col.id, \"admin-portal\")}\n\t\t\t\t\t\t</DropdownMenuCheckboxItem>\n\t\t\t\t\t))}\n\t\t\t\t\t{/* TODO getResourceDisplayName needs some review here. */}\n\t\t\t\t</DropdownMenuGroup>\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n"],"names":["ColumnPicker","toggleAllColumnsVisible","getIsAllColumnsVisible","getAllColumns","DropdownMenu","jsx","DropdownMenuTrigger","Button","Columns3","DropdownMenuContent","jsxs","DropdownMenuGroup","DropdownMenuCheckboxItem","col","e","getResourceDisplayName"],"mappings":";;;;;;;;AAYO,SAASA,EAAa;AAAA,EAC5B,yBAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,eAAAC;AACD,GAIG;AACF,2BACEC,GAAA,EACA,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAoB,SAAO,IAC3B,UAAA,gBAAAD,EAACE,GAAA,EAAO,MAAM,MAAMC,GAAU,SAAS,WAAW,UAAA,UAAA,CAElD,GACD;AAAA,IACA,gBAAAH,EAACI,GAAA,EACA,UAAA,gBAAAC,EAACC,GAAA,EACA,UAAA;AAAA,MAAA,gBAAAN;AAAA,QAACO;AAAA,QAAA;AAAA,UACA,WAAU;AAAA,UACV,UAAU,CAAC,MAAM;AAChB,cAAE,eAAA,GACFX,EAAA;AAAA,UAAwB;AAAA,UAEzB,SAASC,EAAA;AAAA,UACT,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGAC,IAAgB,IAAI,CAACU,MACrB,gBAAAH;AAAA,QAACE;AAAA,QAAA;AAAA,UACA,UAAU,CAACE,MAAM;AAChB,YAAAA,EAAE,eAAA,GACFD,EAAI,iBAAA;AAAA,UAAiB;AAAA,UAGtB,UAAU,CAACA,EAAI,WAAA;AAAA,UACf,SAASA,EAAI,aAAA;AAAA,UAEZ,UAAA;AAAA,YAAAA,EAAI,YAAA;AAAA,YAAe;AAAA,YACnBE,EAAuBF,EAAI,IAAI,cAAc;AAAA,UAAA;AAAA,QAAA;AAAA,QALzCA,EAAI;AAAA,MAAA,CAOV;AAAA,IAAA,EAAA,CAEF,EAAA,CACD;AAAA,EAAA,GACD;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-table.es.js","sources":["../../../lib/components/data-table/data-table.tsx"],"sourcesContent":["\"use client\";\n// import { TableFilter, type FilterFormType } from '@/components/data-table/table-filter';\nimport {\n\tTABLE_CHECK_BOX_COLUMN,\n\tTABLE_DEFAULT_DATE_COLUMNS,\n\tTABLE_ID_COLUMN,\n\tTooltip,\n\tTooltipContent,\n\tTooltipProvider,\n\tTooltipTrigger,\n} from \"@/index\";\nimport { keepPreviousData, useQuery } from \"@tanstack/react-query\";\nimport {\n\ttype ColumnDef,\n\ttype ColumnFiltersState,\n\tcreateColumnHelper,\n\tgetCoreRowModel,\n\ttype PaginationState,\n\ttype SortingState,\n\tuseReactTable,\n\ttype VisibilityState,\n} from \"@tanstack/react-table\";\nimport { Info } from \"lucide-react\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { ColumnPicker } from \"./column-picker\";\nimport { PageSize } from \"./page-size\";\nimport { Paginator } from \"./paginator\";\nimport Actions from \"./table-actions\";\nimport { TableContent } from \"./table-content\";\nimport type { MetadataDto, TableActions, TableFetchFn } from \"./table-utils\";\n\n/** Reserved name for actions column */\nexport const ACTIONS_COLUMN_ID = \"Actions\";\n\n// Props type for the DataTable component\nexport interface DataTableProps<TData, TValue = any> {\n\tcolumns: ColumnDef<TData, TValue>[]; // Columns for the table\n\ttableName: string; // Table name used as query key\n\tfetchFn: TableFetchFn<TData>; // Function for fetching data from the server\n\ttableActions: TableActions;\n\t// filterableFields: FilterableProperties<TData>; // Fields that can be filtered\n\tcolumnsToHideByDefault: VisibilityState; // Columns that are hidden by default\n}\nexport function DataTable<TData extends Record<string, any>, TValue = any>({\n\tcolumns,\n\tfetchFn,\n\ttableName,\n\ttableActions,\n\tcolumnsToHideByDefault,\n\t// filterableFields,\n}: DataTableProps<TData, TValue>) {\n\t// State for managing table data and filters\n\n\t//TODO: This is later to be stored in url as params\n\tconst [tableState, setTableState] = useState({\n\t\tsorting: [] as SortingState, // Sorting state\n\t\tcolumnFilters: [] as ColumnFiltersState, // Filters for columns\n\t\tsearching: \"\", // Search query state\n\t\tcolumnVisibility: {} as VisibilityState, // Visibility of columns\n\t\trowSelection: {}, // Row selection state\n\t\tpagination: { pageIndex: 0, pageSize: 20 } as PaginationState, // Pagination state\n\t});\n\n\t// Update table state with new values\n\tconst updateTableState = (updates: Partial<typeof tableState>) => {\n\t\tsetTableState((prev) => ({ ...prev, ...updates }));\n\t};\n\n\t// Destructuring the table state for easier access\n\tconst {\n\t\tsorting,\n\t\tcolumnFilters,\n\t\tsearching,\n\t\tcolumnVisibility,\n\t\trowSelection,\n\t\tpagination,\n\t} = tableState;\n\n\t// Debounce the search query to avoid making a request on every keystroke\n\t// const [debouncedQuery] = useDebounce(searching.trim(), 300);\n\n\t// Update column visibility when columnsToHideByDefault changes\n\tuseEffect(() => {\n\t\tupdateTableState({\n\t\t\tcolumnVisibility: {\n\t\t\t\tid: false,\n\t\t\t\tupdatedAt: false,\n\t\t\t\t...columnsToHideByDefault,\n\t\t\t},\n\t\t});\n\t}, [columnsToHideByDefault]);\n\t// const [filters, setFilters] = useState<FilterFormType[]>([]);\n\n\t// const formatedFilters = useMemo(() => {\n\t// return filters.reduce((acc, filter) => {\n\t// const { property, value, operator } = filter;\n\t// if (!acc[property]) {\n\t// acc[property] = {};\n\t// }\n\t// acc[property][operator] = value;\n\t// return acc;\n\t// }, {} as Record<string, Record<string, any>>);\n\t// }, [filters]);\n\n\t// Fetch table data using the fetchFn and react-query's useQuery hook\n\tconst query = useQuery({\n\t\tqueryKey: [tableName, pagination, sorting, searching.trim()],\n\t\tqueryFn: () => fetchFn(pagination, sorting, searching.trim()),\n\t\tplaceholderData: keepPreviousData, // Keep previous data while loading new data\n\t\tretry: 0,\n\t\trefetchOnWindowFocus: false,\n\t});\n\n\t// Create column helpers for dynamic column generation\n\tconst columnHelper = createColumnHelper<TData>();\n\tconst metadataColumns = useMemo<ColumnDef<TData, TValue>[]>(() => {\n\t\tconst data = query.data?.data;\n\t\tif (!data?.length) return [];\n\t\t// set of all the keys present in a given view\n\t\tconst allMetadataKeys = new Set<string>();\n\n\t\t// Collect all unique metadata keys\n\t\tdata.forEach((row: TData) => {\n\t\t\tif (row.metadata) {\n\t\t\t\trow.metadata.forEach((meta: MetadataDto) => {\n\t\t\t\t\tallMetadataKeys.add(meta.key);\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\t// Generate columns for all unique metadata keys\n\t\treturn Array.from(allMetadataKeys).map((key) =>\n\t\t\tcolumnHelper.accessor(\n\t\t\t\t(row: TData) => {\n\t\t\t\t\t// Find the metadata object with the matching key\n\t\t\t\t\tconst metadataEntry = row.metadata?.find(\n\t\t\t\t\t\t(meta: MetadataDto) => meta.key === key,\n\t\t\t\t\t);\n\t\t\t\t\treturn metadataEntry?.value; // Return the value for the specific key\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\theader: () => (\n\t\t\t\t\t\t<TooltipProvider delayDuration={0}>\n\t\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t\t\t<span className=\"flex gap-1 items-center align-middle\">\n\t\t\t\t\t\t\t\t\t\t{key} <Info size={18} strokeWidth={\"1px\"} />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t\t\t<TooltipContent>Metadata Key</TooltipContent>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</TooltipProvider>\n\t\t\t\t\t), // Use the metadata key as the column header\n\t\t\t\t\tid: key,\n\t\t\t\t\tenableSorting: false,\n\t\t\t\t\tcell: (info) => {\n\t\t\t\t\t\tconst value = info.getValue();\n\t\t\t\t\t\t// Handle null/undefined values\n\t\t\t\t\t\tif (value === null || value === undefined) return \"\";\n\t\t\t\t\t\t// For primitive types, return the string representation\n\t\t\t\t\t\treturn String(value);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t),\n\t\t);\n\t}, [query.data?.data]);\n\n\t/**\n\t * ID,createdAt and updatedAt will be added by default for all tables\n\t * If selection is allowed, checkbox will be added\n\t * If the dto has metadata, dynamics columns for all the metadata key-value will be added(particular for a view)\n\t * If there are actions for the table, they will be placed fixed at the right side of table.\n\t */\n\tconst extendedColumns = useMemo<ColumnDef<any, any>[]>(() => {\n\t\tconst _columns = [\n\t\t\t...(tableActions.selection ? TABLE_CHECK_BOX_COLUMN : []),\n\t\t\t...TABLE_ID_COLUMN,\n\t\t\t...columns.filter((col) => col.id !== ACTIONS_COLUMN_ID),\n\t\t\t...(metadataColumns.length ? metadataColumns : []),\n\t\t\t...TABLE_DEFAULT_DATE_COLUMNS,\n\t\t\t...columns.filter((col) => col.id === ACTIONS_COLUMN_ID),\n\t\t];\n\n\t\treturn _columns;\n\t}, [columns, metadataColumns, query.data?.data, tableActions.selection]);\n\n\t// Use react-table's hook to create the table instance\n\tconst table = useReactTable({\n\t\tdata: query.data?.data ?? [],\n\t\tcolumns: extendedColumns,\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\trowCount: query.data?.total,\n\t\tmanualPagination: true, // Handle pagination manually since pagination is done server side for data tables\n\t\tonPaginationChange: (updater) => {\n\t\t\tconst newPagination =\n\t\t\t\ttypeof updater === \"function\" ? updater(pagination) : updater;\n\t\t\tupdateTableState({ pagination: newPagination });\n\t\t},\n\t\tmanualSorting: true, // Handle sorting manually since sorting is done server side for data tables\n\t\tonSortingChange: (updater) => {\n\t\t\tconst newSorting =\n\t\t\t\ttypeof updater === \"function\" ? updater(sorting) : updater;\n\t\t\t// Reset selection when sorting.\n\t\t\tupdateTableState({ sorting: newSorting, rowSelection: {} });\n\t\t},\n\t\tmanualFiltering: true, // Handle filtering manually since filtering is done server side for data tables\n\t\tonGlobalFilterChange: (updater) => {\n\t\t\tconst newFilters =\n\t\t\t\ttypeof updater === \"function\" ? updater(columnFilters) : updater;\n\t\t\tupdateTableState({ columnFilters: newFilters });\n\t\t},\n\t\tonColumnVisibilityChange: (updater) => {\n\t\t\tconst newVisibility =\n\t\t\t\ttypeof updater === \"function\" ? updater(columnVisibility) : updater;\n\t\t\tupdateTableState({ columnVisibility: newVisibility });\n\t\t},\n\t\tonRowSelectionChange: (updater) => {\n\t\t\tconst newSelection =\n\t\t\t\ttypeof updater === \"function\" ? updater(rowSelection) : updater;\n\t\t\tupdateTableState({ rowSelection: newSelection });\n\t\t},\n\t\tstate: {\n\t\t\tsorting,\n\t\t\tcolumnFilters,\n\t\t\tcolumnVisibility,\n\t\t\tpagination,\n\t\t\trowSelection,\n\t\t},\n\t\tmeta: {\n\t\t\trefetch: query.refetch,\n\t\t},\n\t});\n\n\treturn (\n\t\t<>\n\t\t\t{/* <TableFilter\n filterableProperties={{ ...filterableFields, ...DEFAULT_FILTERABLE_FIELDS }}\n filters={filters}\n onFiltersChange={setFilters}\n /> */}\n\n\t\t\t{/* Table Actions Section */}\n\t\t\t<div className=\"bg-card\">\n\t\t\t\t<Actions\n\t\t\t\t\tdataQuery={query}\n\t\t\t\t\tgetSelectedRowModel={table.getSelectedRowModel}\n\t\t\t\t\ttableActions={tableActions}\n\t\t\t\t\thandleSearching={(value) => updateTableState({ searching: value })}\n\t\t\t\t/>\n\n\t\t\t\t{/* The div here is necessary because TableContent is internally a <table> tag and does not respect width, height CSS */}\n\t\t\t\t<div className=\"w-full overflow-auto border-x\" tabIndex={0}>\n\t\t\t\t\t<TableContent\n\t\t\t\t\t\tgetRowModel={table.getRowModel}\n\t\t\t\t\t\tgetHeaderGroups={table.getHeaderGroups}\n\t\t\t\t\t\tquery={query}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{/* Table Footer Section with Pagination and Column Picker */}\n\t\t\t\t<div className=\"flex w-full justify-between border gap-4 p-4 overflow-x-auto\">\n\t\t\t\t\t<div className=\"flex gap-4\">\n\t\t\t\t\t\t<ColumnPicker\n\t\t\t\t\t\t\tgetAllColumns={table.getAllColumns}\n\t\t\t\t\t\t\tgetIsAllColumnsVisible={table.getIsAllColumnsVisible}\n\t\t\t\t\t\t\ttoggleAllColumnsVisible={table.toggleAllColumnsVisible}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PageSize\n\t\t\t\t\t\t\tsize={table.getState().pagination.pageSize}\n\t\t\t\t\t\t\tonSelect={table.setPageSize}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Paginator\n\t\t\t\t\t\tfirstPage={table.firstPage}\n\t\t\t\t\t\tpreviousPage={table.previousPage}\n\t\t\t\t\t\tgetCanNextPage={table.getCanNextPage}\n\t\t\t\t\t\tgetCanPreviousPage={table.getCanPreviousPage}\n\t\t\t\t\t\tlastPage={table.lastPage}\n\t\t\t\t\t\tnextPage={table.nextPage}\n\t\t\t\t\t\tgetState={table.getState}\n\t\t\t\t\t\trowCount={query.data?.total ?? 0}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"names":["ACTIONS_COLUMN_ID","DataTable","columns","fetchFn","tableName","tableActions","columnsToHideByDefault","tableState","setTableState","useState","updateTableState","updates","prev","sorting","columnFilters","searching","columnVisibility","rowSelection","pagination","useEffect","query","useQuery","keepPreviousData","columnHelper","createColumnHelper","metadataColumns","useMemo","data","_a","allMetadataKeys","row","meta","key","metadataEntry","jsx","TooltipProvider","Tooltip","TooltipTrigger","jsxs","Info","TooltipContent","info","value","extendedColumns","TABLE_CHECK_BOX_COLUMN","TABLE_ID_COLUMN","col","TABLE_DEFAULT_DATE_COLUMNS","_b","table","useReactTable","_c","getCoreRowModel","_d","updater","newPagination","newSorting","newFilters","newVisibility","newSelection","Fragment","Actions","TableContent","ColumnPicker","PageSize","Paginator","_e"],"mappings":"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"}
1
+ {"version":3,"file":"data-table.es.js","sources":["../../../lib/components/data-table/data-table.tsx"],"sourcesContent":["\"use client\";\n// import { TableFilter, type FilterFormType } from '@/components/data-table/table-filter';\nimport {\n\tTABLE_CHECK_BOX_COLUMN,\n\tTABLE_DEFAULT_DATE_COLUMNS,\n\tTABLE_ID_COLUMN,\n\tTooltip,\n\tTooltipContent,\n\tTooltipProvider,\n\tTooltipTrigger,\n} from \"@/index\";\nimport { keepPreviousData, useQuery } from \"@tanstack/react-query\";\nimport {\n\ttype ColumnDef,\n\ttype ColumnFiltersState,\n\tcreateColumnHelper,\n\tgetCoreRowModel,\n\ttype PaginationState,\n\ttype SortingState,\n\tuseReactTable,\n\ttype VisibilityState,\n} from \"@tanstack/react-table\";\nimport { Info } from \"lucide-react\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { ColumnPicker } from \"./column-picker\";\nimport { PageSize } from \"./page-size\";\nimport { Paginator } from \"./paginator\";\nimport Actions from \"./table-actions\";\nimport { TableContent } from \"./table-content\";\nimport type { MetadataDto, TableActions, TableFetchFn } from \"./table-utils\";\n\n/** Reserved name for actions column */\nexport const ACTIONS_COLUMN_ID = \"Actions\";\n\n// Props type for the DataTable component\nexport interface DataTableProps<TData, TValue = any> {\n\tcolumns: ColumnDef<TData, TValue>[]; // Columns for the table\n\ttableName: string; // Table name used as query key\n\tfetchFn: TableFetchFn<TData>; // Function for fetching data from the server\n\ttableActions: TableActions;\n\t// filterableFields: FilterableProperties<TData>; // Fields that can be filtered\n\tcolumnsToHideByDefault: VisibilityState; // Columns that are hidden by default\n}\nexport function DataTable<TData extends Record<string, any>, TValue = any>({\n\tcolumns,\n\tfetchFn,\n\ttableName,\n\ttableActions,\n\tcolumnsToHideByDefault,\n\t// filterableFields,\n}: DataTableProps<TData, TValue>) {\n\t// State for managing table data and filters\n\n\t//TODO: This is later to be stored in url as params\n\tconst [tableState, setTableState] = useState({\n\t\tsorting: [] as SortingState, // Sorting state\n\t\tcolumnFilters: [] as ColumnFiltersState, // Filters for columns\n\t\tsearching: \"\", // Search query state\n\t\tcolumnVisibility: {} as VisibilityState, // Visibility of columns\n\t\trowSelection: {}, // Row selection state\n\t\tpagination: { pageIndex: 0, pageSize: 20 } as PaginationState, // Pagination state\n\t});\n\n\t// Update table state with new values\n\tconst updateTableState = (updates: Partial<typeof tableState>) => {\n\t\tsetTableState((prev) => ({ ...prev, ...updates }));\n\t};\n\n\t// Destructuring the table state for easier access\n\tconst {\n\t\tsorting,\n\t\tcolumnFilters,\n\t\tsearching,\n\t\tcolumnVisibility,\n\t\trowSelection,\n\t\tpagination,\n\t} = tableState;\n\n\t// Debounce the search query to avoid making a request on every keystroke\n\t// const [debouncedQuery] = useDebounce(searching.trim(), 300);\n\n\t// Update column visibility when columnsToHideByDefault changes\n\tuseEffect(() => {\n\t\tupdateTableState({\n\t\t\tcolumnVisibility: {\n\t\t\t\tid: false,\n\t\t\t\tupdatedAt: false,\n\t\t\t\t...columnsToHideByDefault,\n\t\t\t},\n\t\t});\n\t}, [columnsToHideByDefault]);\n\t// const [filters, setFilters] = useState<FilterFormType[]>([]);\n\n\t// const formatedFilters = useMemo(() => {\n\t// return filters.reduce((acc, filter) => {\n\t// const { property, value, operator } = filter;\n\t// if (!acc[property]) {\n\t// acc[property] = {};\n\t// }\n\t// acc[property][operator] = value;\n\t// return acc;\n\t// }, {} as Record<string, Record<string, any>>);\n\t// }, [filters]);\n\n\t// Fetch table data using the fetchFn and react-query's useQuery hook\n\tconst query = useQuery({\n\t\tqueryKey: [tableName, pagination, sorting, searching.trim()],\n\t\tqueryFn: () => fetchFn(pagination, sorting, searching.trim()),\n\t\tplaceholderData: keepPreviousData, // Keep previous data while loading new data\n\t\tretry: 0,\n\t\trefetchOnWindowFocus: false,\n\t});\n\n\t// Create column helpers for dynamic column generation\n\tconst columnHelper = createColumnHelper<TData>();\n\tconst metadataColumns = useMemo<ColumnDef<TData, TValue>[]>(() => {\n\t\tconst data = query.data?.data;\n\t\tif (!data?.length) return [];\n\t\t// set of all the keys present in a given view\n\t\tconst allMetadataKeys = new Set<string>();\n\n\t\t// Collect all unique metadata keys\n\t\tdata.forEach((row: TData) => {\n\t\t\tif (row.metadata) {\n\t\t\t\trow.metadata.forEach((meta: MetadataDto) => {\n\t\t\t\t\tallMetadataKeys.add(meta.key);\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\t// Generate columns for all unique metadata keys\n\t\treturn Array.from(allMetadataKeys).map((key) =>\n\t\t\tcolumnHelper.accessor(\n\t\t\t\t(row: TData) => {\n\t\t\t\t\t// Find the metadata object with the matching key\n\t\t\t\t\tconst metadataEntry = row.metadata?.find(\n\t\t\t\t\t\t(meta: MetadataDto) => meta.key === key,\n\t\t\t\t\t);\n\t\t\t\t\treturn metadataEntry?.value; // Return the value for the specific key\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\theader: () => (\n\t\t\t\t\t\t<TooltipProvider delayDuration={0}>\n\t\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t\t\t<span className=\"flex gap-1 items-center align-middle\">\n\t\t\t\t\t\t\t\t\t\t{key} <Info size={18} strokeWidth={\"1px\"} />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t\t\t<TooltipContent>Metadata Key</TooltipContent>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</TooltipProvider>\n\t\t\t\t\t), // Use the metadata key as the column header\n\t\t\t\t\tid: key,\n\t\t\t\t\tenableSorting: false,\n\t\t\t\t\tcell: (info) => {\n\t\t\t\t\t\tconst value = info.getValue();\n\t\t\t\t\t\t// Handle null/undefined values\n\t\t\t\t\t\tif (value === null || value === undefined) return \"\";\n\t\t\t\t\t\t// For primitive types, return the string representation\n\t\t\t\t\t\treturn String(value);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t),\n\t\t);\n\t}, [query.data?.data]);\n\n\t/**\n\t * ID,createdAt and updatedAt will be added by default for all tables\n\t * If selection is allowed, checkbox will be added\n\t * If the dto has metadata, dynamics columns for all the metadata key-value will be added(particular for a view)\n\t * If there are actions for the table, they will be placed fixed at the right side of table.\n\t */\n\tconst extendedColumns = useMemo<ColumnDef<any, any>[]>(() => {\n\t\tconst _columns = [\n\t\t\t...(tableActions.selection ? TABLE_CHECK_BOX_COLUMN : []),\n\t\t\t...TABLE_ID_COLUMN,\n\t\t\t...columns.filter((col) => col.id !== ACTIONS_COLUMN_ID),\n\t\t\t...(metadataColumns.length ? metadataColumns : []),\n\t\t\t...TABLE_DEFAULT_DATE_COLUMNS,\n\t\t\t...columns.filter((col) => col.id === ACTIONS_COLUMN_ID),\n\t\t];\n\n\t\treturn _columns;\n\t}, [columns, metadataColumns, query.data?.data, tableActions.selection]);\n\n\t// Use react-table's hook to create the table instance\n\tconst table = useReactTable({\n\t\tdata: query.data?.data ?? [],\n\t\tcolumns: extendedColumns,\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\trowCount: query.data?.total,\n\t\tmanualPagination: true, // Handle pagination manually since pagination is done server side for data tables\n\t\tonPaginationChange: (updater) => {\n\t\t\tconst newPagination =\n\t\t\t\ttypeof updater === \"function\" ? updater(pagination) : updater;\n\t\t\tupdateTableState({ pagination: newPagination });\n\t\t},\n\t\tmanualSorting: true, // Handle sorting manually since sorting is done server side for data tables\n\t\tonSortingChange: (updater) => {\n\t\t\tconst newSorting =\n\t\t\t\ttypeof updater === \"function\" ? updater(sorting) : updater;\n\t\t\t// Reset selection when sorting.\n\t\t\tupdateTableState({ sorting: newSorting, rowSelection: {} });\n\t\t},\n\t\tmanualFiltering: true, // Handle filtering manually since filtering is done server side for data tables\n\t\tonGlobalFilterChange: (updater) => {\n\t\t\tconst newFilters =\n\t\t\t\ttypeof updater === \"function\" ? updater(columnFilters) : updater;\n\t\t\tupdateTableState({ columnFilters: newFilters });\n\t\t},\n\t\tonColumnVisibilityChange: (updater) => {\n\t\t\tconst newVisibility =\n\t\t\t\ttypeof updater === \"function\" ? updater(columnVisibility) : updater;\n\t\t\tupdateTableState({ columnVisibility: newVisibility });\n\t\t},\n\t\tonRowSelectionChange: (updater) => {\n\t\t\tconst newSelection =\n\t\t\t\ttypeof updater === \"function\" ? updater(rowSelection) : updater;\n\t\t\tupdateTableState({ rowSelection: newSelection });\n\t\t},\n\t\tstate: {\n\t\t\tsorting,\n\t\t\tcolumnFilters,\n\t\t\tcolumnVisibility,\n\t\t\tpagination,\n\t\t\trowSelection,\n\t\t},\n\t\tmeta: {\n\t\t\trefetch: query.refetch,\n\t\t},\n\t});\n\n\treturn (\n\t\t<>\n\t\t\t{/* <TableFilter\n filterableProperties={{ ...filterableFields, ...DEFAULT_FILTERABLE_FIELDS }}\n filters={filters}\n onFiltersChange={setFilters}\n /> */}\n\n\t\t\t{/* Table Actions Section */}\n\t\t\t<div className=\"bg-card\">\n\t\t\t\t<Actions\n\t\t\t\t\tdataQuery={query}\n\t\t\t\t\tgetSelectedRowModel={table.getSelectedRowModel}\n\t\t\t\t\ttableActions={tableActions}\n\t\t\t\t\thandleSearching={(value) => updateTableState({ searching: value })}\n\t\t\t\t/>\n\n\t\t\t\t{/* The div here is necessary because TableContent is internally a <table> tag and does not respect width, height CSS */}\n\t\t\t\t<div className=\"w-full overflow-auto border-x\" tabIndex={0}>\n\t\t\t\t\t<TableContent\n\t\t\t\t\t\tgetRowModel={table.getRowModel}\n\t\t\t\t\t\tgetHeaderGroups={table.getHeaderGroups}\n\t\t\t\t\t\tquery={query}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{/* Table Footer Section with Pagination and Column Picker */}\n\t\t\t\t<div className=\"flex w-full justify-between border gap-4 p-4 overflow-x-auto\">\n\t\t\t\t\t<div className=\"flex gap-4\">\n\t\t\t\t\t\t<ColumnPicker\n\t\t\t\t\t\t\tgetAllColumns={table.getAllColumns}\n\t\t\t\t\t\t\tgetIsAllColumnsVisible={table.getIsAllColumnsVisible}\n\t\t\t\t\t\t\ttoggleAllColumnsVisible={table.toggleAllColumnsVisible}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PageSize\n\t\t\t\t\t\t\tsize={table.getState().pagination.pageSize}\n\t\t\t\t\t\t\tonSelect={table.setPageSize}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Paginator\n\t\t\t\t\t\tfirstPage={table.firstPage}\n\t\t\t\t\t\tpreviousPage={table.previousPage}\n\t\t\t\t\t\tgetCanNextPage={table.getCanNextPage}\n\t\t\t\t\t\tgetCanPreviousPage={table.getCanPreviousPage}\n\t\t\t\t\t\tlastPage={table.lastPage}\n\t\t\t\t\t\tnextPage={table.nextPage}\n\t\t\t\t\t\tgetState={table.getState}\n\t\t\t\t\t\trowCount={query.data?.total ?? 0}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"names":["ACTIONS_COLUMN_ID","DataTable","columns","fetchFn","tableName","tableActions","columnsToHideByDefault","tableState","setTableState","useState","updateTableState","updates","prev","sorting","columnFilters","searching","columnVisibility","rowSelection","pagination","useEffect","query","useQuery","keepPreviousData","columnHelper","createColumnHelper","metadataColumns","useMemo","data","_a","allMetadataKeys","row","meta","key","metadataEntry","jsx","TooltipProvider","Tooltip","TooltipTrigger","jsxs","Info","TooltipContent","info","value","extendedColumns","TABLE_CHECK_BOX_COLUMN","TABLE_ID_COLUMN","col","TABLE_DEFAULT_DATE_COLUMNS","_b","table","useReactTable","_c","getCoreRowModel","_d","updater","newPagination","newSorting","newFilters","newVisibility","newSelection","Fragment","Actions","TableContent","ColumnPicker","PageSize","Paginator","_e"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"page-size.es.js","sources":["../../../lib/components/data-table/page-size.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuRadioGroup,\n\tDropdownMenuRadioItem,\n\tDropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\";\nimport { Menu } from \"lucide-react\";\n\nexport function PageSize({\n\tsize,\n\tonSelect,\n}: { size: number; onSelect: (v: number) => void }) {\n\t// const currentPageSize = table.getState().pagination.pageSize;\n\tconst pageSizes = [10, 20, 30, 40, 50];\n\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button icon={() => Menu} variant=\"outline\">\n\t\t\t\t\t{size}\n\t\t\t\t</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent>\n\t\t\t\t<DropdownMenuRadioGroup value={size.toString()}>\n\t\t\t\t\t{pageSizes.map((pageSize) => (\n\t\t\t\t\t\t<DropdownMenuRadioItem\n\t\t\t\t\t\t\tvalue={pageSize.toString()}\n\t\t\t\t\t\t\tonSelect={() => onSelect(pageSize)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{pageSize}\n\t\t\t\t\t\t</DropdownMenuRadioItem>\n\t\t\t\t\t))}\n\t\t\t\t</DropdownMenuRadioGroup>\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n"],"names":["PageSize","size","onSelect","pageSizes","DropdownMenu","jsx","DropdownMenuTrigger","Button","Menu","DropdownMenuContent","DropdownMenuRadioGroup","pageSize","DropdownMenuRadioItem"],"mappings":";;;;AAUO,SAASA,EAAS;AAAA,EACxB,MAAAC;AAAA,EACA,UAAAC;AACD,GAAoD;AAEnD,QAAMC,IAAY,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE;AAErC,2BACEC,GACA,EAAA,UAAA;AAAA,IAAC,gBAAAC,EAAAC,GAAA,EAAoB,SAAO,IAC3B,UAAC,gBAAAD,EAAAE,GAAA,EAAO,MAAM,MAAMC,GAAM,SAAQ,WAChC,UAAAP,EACF,CAAA,GACD;AAAA,IACA,gBAAAI,EAACI,GACA,EAAA,UAAA,gBAAAJ,EAACK,GAAuB,EAAA,OAAOT,EAAK,SAAA,GAClC,UAAAE,EAAU,IAAI,CAACQ,MACf,gBAAAN;AAAA,MAACO;AAAA,MAAA;AAAA,QACA,OAAOD,EAAS,SAAS;AAAA,QACzB,UAAU,MAAMT,EAASS,CAAQ;AAAA,QAEhC,UAAAA;AAAA,MAAA;AAAA,IAEF,CAAA,EACF,CAAA,EACD,CAAA;AAAA,EAAA,GACD;AAEF;"}
1
+ {"version":3,"file":"page-size.es.js","sources":["../../../lib/components/data-table/page-size.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuRadioGroup,\n\tDropdownMenuRadioItem,\n\tDropdownMenuTrigger,\n} from \"@/components/ui/dropdown-menu\";\nimport { Menu } from \"lucide-react\";\n\nexport function PageSize({\n\tsize,\n\tonSelect,\n}: { size: number; onSelect: (v: number) => void }) {\n\t// const currentPageSize = table.getState().pagination.pageSize;\n\tconst pageSizes = [10, 20, 30, 40, 50];\n\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<Button icon={() => Menu} variant=\"outline\">\n\t\t\t\t\t{size}\n\t\t\t\t</Button>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent>\n\t\t\t\t<DropdownMenuRadioGroup value={size.toString()}>\n\t\t\t\t\t{pageSizes.map((pageSize) => (\n\t\t\t\t\t\t<DropdownMenuRadioItem\n\t\t\t\t\t\t\tvalue={pageSize.toString()}\n\t\t\t\t\t\t\tonSelect={() => onSelect(pageSize)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{pageSize}\n\t\t\t\t\t\t</DropdownMenuRadioItem>\n\t\t\t\t\t))}\n\t\t\t\t</DropdownMenuRadioGroup>\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n"],"names":["PageSize","size","onSelect","pageSizes","DropdownMenu","jsx","DropdownMenuTrigger","Button","Menu","DropdownMenuContent","DropdownMenuRadioGroup","pageSize","DropdownMenuRadioItem"],"mappings":";;;;AAUO,SAASA,EAAS;AAAA,EACxB,MAAAC;AAAA,EACA,UAAAC;AACD,GAAoD;AAEnD,QAAMC,IAAY,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE;AAErC,2BACEC,GAAA,EACA,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAoB,SAAO,IAC3B,UAAA,gBAAAD,EAACE,GAAA,EAAO,MAAM,MAAMC,GAAM,SAAQ,WAChC,UAAAP,EAAA,CACF,GACD;AAAA,IACA,gBAAAI,EAACI,GAAA,EACA,UAAA,gBAAAJ,EAACK,GAAA,EAAuB,OAAOT,EAAK,SAAA,GAClC,UAAAE,EAAU,IAAI,CAACQ,MACf,gBAAAN;AAAA,MAACO;AAAA,MAAA;AAAA,QACA,OAAOD,EAAS,SAAA;AAAA,QAChB,UAAU,MAAMT,EAASS,CAAQ;AAAA,QAEhC,UAAAA;AAAA,MAAA;AAAA,IAAA,CAEF,GACF,EAAA,CACD;AAAA,EAAA,GACD;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"paginator.es.js","sources":["../../../lib/components/data-table/paginator.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport type { TableState } from \"@tanstack/react-table\";\nimport {\n\tChevronFirst,\n\tChevronLast,\n\tChevronLeft,\n\tChevronRight,\n} from \"lucide-react\";\n\nexport function Paginator({\n\tgetCanPreviousPage,\n\tgetCanNextPage,\n\tfirstPage,\n\tpreviousPage,\n\tnextPage,\n\tlastPage,\n\tgetState,\n\trowCount,\n}: {\n\tgetCanPreviousPage: () => boolean;\n\tgetCanNextPage: () => boolean;\n\tfirstPage: () => void;\n\tpreviousPage: () => void;\n\tnextPage: () => void;\n\tlastPage: () => void;\n\tgetState: () => TableState;\n\trowCount: number;\n}) {\n\treturn (\n\t\t<div className=\"flex items-center gap-2\">\n\t\t\t<span className=\"whitespace-nowrap caption text-muted\">\n\t\t\t\t{`${getState().pagination.pageIndex * getState().pagination.pageSize + 1} - ${Math.min(\n\t\t\t\t\t(getState().pagination.pageIndex + 1) *\n\t\t\t\t\t\tgetState().pagination.pageSize,\n\t\t\t\t\trowCount,\n\t\t\t\t)} of ${rowCount?.toLocaleString()}`}\n\t\t\t</span>\n\n\t\t\t<Button\n\t\t\t\tonClick={() => firstPage()}\n\t\t\t\tdisabled={!getCanPreviousPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronFirst}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => previousPage()}\n\t\t\t\tdisabled={!getCanPreviousPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronLeft}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => nextPage()}\n\t\t\t\tdisabled={!getCanNextPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronRight}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => lastPage()}\n\t\t\t\tdisabled={!getCanNextPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronLast}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"names":["Paginator","getCanPreviousPage","getCanNextPage","firstPage","previousPage","nextPage","lastPage","getState","rowCount","jsxs","jsx","Button","ChevronFirst","ChevronLeft","ChevronRight","ChevronLast"],"mappings":";;;AASO,SAASA,EAAU;AAAA,EACzB,oBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AACD,GASG;AAED,SAAA,gBAAAC,EAAC,OAAI,EAAA,WAAU,2BACd,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAK,EAAA,WAAU,wCACd,UAAA,GAAGH,EAAW,EAAA,WAAW,YAAYA,EAAA,EAAW,WAAW,WAAW,CAAC,MAAM,KAAK;AAAA,OACjFA,EAAW,EAAA,WAAW,YAAY,KAClCA,EAAA,EAAW,WAAW;AAAA,MACvBC;AAAA,IACA,CAAA,OAAOA,KAAA,gBAAAA,EAAU,gBAAgB,GACnC,CAAA;AAAA,IAEA,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMR,EAAU;AAAA,QACzB,UAAU,CAACF,EAAmB;AAAA,QAC9B,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMW;AAAA,MAAA;AAAA,IACb;AAAA,IACA,gBAAAF;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMP,EAAa;AAAA,QAC5B,UAAU,CAACH,EAAmB;AAAA,QAC9B,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMY;AAAA,MAAA;AAAA,IACb;AAAA,IACA,gBAAAH;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMN,EAAS;AAAA,QACxB,UAAU,CAACH,EAAe;AAAA,QAC1B,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMY;AAAA,MAAA;AAAA,IACb;AAAA,IACA,gBAAAJ;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAML,EAAS;AAAA,QACxB,UAAU,CAACJ,EAAe;AAAA,QAC1B,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMa;AAAA,MAAA;AAAA,IAAA;AAAA,EACb,GACD;AAEF;"}
1
+ {"version":3,"file":"paginator.es.js","sources":["../../../lib/components/data-table/paginator.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport type { TableState } from \"@tanstack/react-table\";\nimport {\n\tChevronFirst,\n\tChevronLast,\n\tChevronLeft,\n\tChevronRight,\n} from \"lucide-react\";\n\nexport function Paginator({\n\tgetCanPreviousPage,\n\tgetCanNextPage,\n\tfirstPage,\n\tpreviousPage,\n\tnextPage,\n\tlastPage,\n\tgetState,\n\trowCount,\n}: {\n\tgetCanPreviousPage: () => boolean;\n\tgetCanNextPage: () => boolean;\n\tfirstPage: () => void;\n\tpreviousPage: () => void;\n\tnextPage: () => void;\n\tlastPage: () => void;\n\tgetState: () => TableState;\n\trowCount: number;\n}) {\n\treturn (\n\t\t<div className=\"flex items-center gap-2\">\n\t\t\t<span className=\"whitespace-nowrap caption text-muted\">\n\t\t\t\t{`${getState().pagination.pageIndex * getState().pagination.pageSize + 1} - ${Math.min(\n\t\t\t\t\t(getState().pagination.pageIndex + 1) *\n\t\t\t\t\t\tgetState().pagination.pageSize,\n\t\t\t\t\trowCount,\n\t\t\t\t)} of ${rowCount?.toLocaleString()}`}\n\t\t\t</span>\n\n\t\t\t<Button\n\t\t\t\tonClick={() => firstPage()}\n\t\t\t\tdisabled={!getCanPreviousPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronFirst}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => previousPage()}\n\t\t\t\tdisabled={!getCanPreviousPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronLeft}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => nextPage()}\n\t\t\t\tdisabled={!getCanNextPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronRight}\n\t\t\t/>\n\t\t\t<Button\n\t\t\t\tonClick={() => lastPage()}\n\t\t\t\tdisabled={!getCanNextPage()}\n\t\t\t\tvariant=\"outline\"\n\t\t\t\tsize={\"icon\"}\n\t\t\t\ticon={() => ChevronLast}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"names":["Paginator","getCanPreviousPage","getCanNextPage","firstPage","previousPage","nextPage","lastPage","getState","rowCount","jsxs","jsx","Button","ChevronFirst","ChevronLeft","ChevronRight","ChevronLast"],"mappings":";;;AASO,SAASA,EAAU;AAAA,EACzB,oBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AACD,GASG;AACF,SACC,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BACd,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,wCACd,UAAA,GAAGH,IAAW,WAAW,YAAYA,EAAA,EAAW,WAAW,WAAW,CAAC,MAAM,KAAK;AAAA,OACjFA,IAAW,WAAW,YAAY,KAClCA,EAAA,EAAW,WAAW;AAAA,MACvBC;AAAA,IAAA,CACA,OAAOA,KAAA,gBAAAA,EAAU,gBAAgB,GAAA,CACnC;AAAA,IAEA,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMR,EAAA;AAAA,QACf,UAAU,CAACF,EAAA;AAAA,QACX,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMW;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,gBAAAF;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMP,EAAA;AAAA,QACf,UAAU,CAACH,EAAA;AAAA,QACX,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMY;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,gBAAAH;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAMN,EAAA;AAAA,QACf,UAAU,CAACH,EAAA;AAAA,QACX,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMY;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,gBAAAJ;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAAS,MAAML,EAAA;AAAA,QACf,UAAU,CAACJ,EAAA;AAAA,QACX,SAAQ;AAAA,QACR,MAAM;AAAA,QACN,MAAM,MAAMa;AAAA,MAAA;AAAA,IAAA;AAAA,EACb,GACD;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"table-actions.es.js","sources":["../../../lib/components/data-table/table-actions.tsx"],"sourcesContent":["import { RotateCw } from \"lucide-react\";\n\nimport type { TableActions } from \"@/components/data-table/table-utils/index\";\nimport { SearchInput } from \"@/components/inputs\";\nimport { Button } from \"@/components/ui/button\";\nimport type { UseQueryResult } from \"@tanstack/react-query\";\nimport type { RowModel } from \"@tanstack/react-table\";\nimport { useState } from \"react\";\n\nexport default function Actions({\n\ttableActions,\n\tgetSelectedRowModel,\n\thandleSearching,\n\tdataQuery,\n}: {\n\ttableActions: TableActions;\n\tgetSelectedRowModel: () => RowModel<any>;\n\thandleSearching: (value: string) => void;\n\tdataQuery: UseQueryResult<any, unknown>;\n}) {\n\t// const { location: { href } = {} } = useRouterState();\n\tconst [search, setSearch] = useState<string>(\"\");\n\treturn (\n\t\t<div className=\"flex bg-card justify-between my-0 p-4 border gap-4 overflow-auto\">\n\t\t\t<div className=\"flex gap-4\">\n\t\t\t\t<Button\n\t\t\t\t\tloading={dataQuery.isFetching}\n\t\t\t\t\ticon={() => RotateCw}\n\t\t\t\t\tonClick={() => dataQuery.refetch()}\n\t\t\t\t\tvariant={\"outline\"}\n\t\t\t\t\tsize={\"icon\"}\n\t\t\t\t/>\n\t\t\t\t{/* //TODO: we can show the create, delete button based on permsission */}\n\t\t\t\t{/* All the creating routes will be with url /create in host app */}\n\t\t\t\t{tableActions.create && getSelectedRowModel().rows.length === 0 && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/create`}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Plus}>\n\t\t\t\t\t// Create\n\t\t\t\t\t// </Button>{' '}\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t\t{/* All the updating routes will be with url /edit in host app */}\n\t\t\t\t{getSelectedRowModel().rows.length > 0 && tableActions.update && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/edit`} state={stateToPass}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Pencil}>\n\t\t\t\t\t// Update\n\t\t\t\t\t// </Button>\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t\t{getSelectedRowModel().rows.length > 0 && tableActions?.delete && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/delete`} state={stateToPass}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Trash} variant={'destructive'}>\n\t\t\t\t\t// Delete\n\t\t\t\t\t// </Button>\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{tableActions?.search && (\n\t\t\t\t<SearchInput\n\t\t\t\t\tvalue={search}\n\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\tsetSearch(e);\n\t\t\t\t\t\thandleSearching(e);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n"],"names":["Actions","tableActions","getSelectedRowModel","handleSearching","dataQuery","search","setSearch","useState","jsxs","jsx","Button","RotateCw","Fragment","SearchInput","e"],"mappings":";;;;;AASA,SAAwBA,EAAQ;AAAA,EAC/B,cAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,WAAAC;AACD,GAKG;AAEF,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAiB,EAAE;AAE9C,SAAA,gBAAAC,EAAC,OAAI,EAAA,WAAU,oEACd,UAAA;AAAA,IAAC,gBAAAA,EAAA,OAAA,EAAI,WAAU,cACd,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACA,SAASN,EAAU;AAAA,UACnB,MAAM,MAAMO;AAAA,UACZ,SAAS,MAAMP,EAAU,QAAQ;AAAA,UACjC,SAAS;AAAA,UACT,MAAM;AAAA,QAAA;AAAA,MACP;AAAA,MAGCH,EAAa,UAAUC,EAAoB,EAAE,KAAK,WAAW;AAAA,MAE3D,gBAAAO,EAAAG,GAAA,EAAA;AAAA,MAQFV,EAAoB,EAAE,KAAK,SAAS,KAAKD,EAAa;AAAA,MAEpD,gBAAAQ,EAAAG,GAAA,EAAA;AAAA,MAOFV,EAAoB,EAAE,KAAK,SAAS,MAAKD,KAAA,gBAAAA,EAAc;AAAA,MAErD,gBAAAQ,EAAAG,GAAA,CAAA,CAAA;AAAA,IAAA,GAOJ;AAAA,KACCX,KAAA,gBAAAA,EAAc,WACd,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACA,OAAOR;AAAA,QACP,UAAU,CAACS,MAAM;AAChB,UAAAR,EAAUQ,CAAC,GACXX,EAAgBW,CAAC;AAAA,QAAA;AAAA,MAClB;AAAA,IAAA;AAAA,EACD,GAEF;AAEF;"}
1
+ {"version":3,"file":"table-actions.es.js","sources":["../../../lib/components/data-table/table-actions.tsx"],"sourcesContent":["import { RotateCw } from \"lucide-react\";\n\nimport type { TableActions } from \"@/components/data-table/table-utils/index\";\nimport { SearchInput } from \"@/components/inputs\";\nimport { Button } from \"@/components/ui/button\";\nimport type { UseQueryResult } from \"@tanstack/react-query\";\nimport type { RowModel } from \"@tanstack/react-table\";\nimport { useState } from \"react\";\n\nexport default function Actions({\n\ttableActions,\n\tgetSelectedRowModel,\n\thandleSearching,\n\tdataQuery,\n}: {\n\ttableActions: TableActions;\n\tgetSelectedRowModel: () => RowModel<any>;\n\thandleSearching: (value: string) => void;\n\tdataQuery: UseQueryResult<any, unknown>;\n}) {\n\t// const { location: { href } = {} } = useRouterState();\n\tconst [search, setSearch] = useState<string>(\"\");\n\treturn (\n\t\t<div className=\"flex bg-card justify-between my-0 p-4 border gap-4 overflow-auto\">\n\t\t\t<div className=\"flex gap-4\">\n\t\t\t\t<Button\n\t\t\t\t\tloading={dataQuery.isFetching}\n\t\t\t\t\ticon={() => RotateCw}\n\t\t\t\t\tonClick={() => dataQuery.refetch()}\n\t\t\t\t\tvariant={\"outline\"}\n\t\t\t\t\tsize={\"icon\"}\n\t\t\t\t/>\n\t\t\t\t{/* //TODO: we can show the create, delete button based on permsission */}\n\t\t\t\t{/* All the creating routes will be with url /create in host app */}\n\t\t\t\t{tableActions.create && getSelectedRowModel().rows.length === 0 && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/create`}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Plus}>\n\t\t\t\t\t// Create\n\t\t\t\t\t// </Button>{' '}\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t\t{/* All the updating routes will be with url /edit in host app */}\n\t\t\t\t{getSelectedRowModel().rows.length > 0 && tableActions.update && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/edit`} state={stateToPass}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Pencil}>\n\t\t\t\t\t// Update\n\t\t\t\t\t// </Button>\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t\t{getSelectedRowModel().rows.length > 0 && tableActions?.delete && (\n\t\t\t\t\t// biome-ignore lint/complexity/noUselessFragments: <explanation>\n\t\t\t\t\t<></>\n\t\t\t\t\t// <Link to={`${href}/delete`} state={stateToPass}>\n\t\t\t\t\t// <Button disabled={dataQuery.isFetching} icon={() => Trash} variant={'destructive'}>\n\t\t\t\t\t// Delete\n\t\t\t\t\t// </Button>\n\t\t\t\t\t// </Link>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t{tableActions?.search && (\n\t\t\t\t<SearchInput\n\t\t\t\t\tvalue={search}\n\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\tsetSearch(e);\n\t\t\t\t\t\thandleSearching(e);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n"],"names":["Actions","tableActions","getSelectedRowModel","handleSearching","dataQuery","search","setSearch","useState","jsxs","jsx","Button","RotateCw","Fragment","SearchInput","e"],"mappings":";;;;;AASA,SAAwBA,EAAQ;AAAA,EAC/B,cAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,WAAAC;AACD,GAKG;AAEF,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAiB,EAAE;AAC/C,SACC,gBAAAC,EAAC,OAAA,EAAI,WAAU,oEACd,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,cACd,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACA,SAASN,EAAU;AAAA,UACnB,MAAM,MAAMO;AAAA,UACZ,SAAS,MAAMP,EAAU,QAAA;AAAA,UACzB,SAAS;AAAA,UACT,MAAM;AAAA,QAAA;AAAA,MAAA;AAAA,MAINH,EAAa,UAAUC,EAAA,EAAsB,KAAK,WAAW;AAAA,MAE7D,gBAAAO,EAAAG,GAAA,EAAE;AAAA,MAQFV,EAAA,EAAsB,KAAK,SAAS,KAAKD,EAAa;AAAA,MAEtD,gBAAAQ,EAAAG,GAAA,EAAE;AAAA,MAOFV,EAAA,EAAsB,KAAK,SAAS,MAAKD,KAAA,gBAAAA,EAAc;AAAA,MAEvD,gBAAAQ,EAAAG,GAAA,CAAA,CAAE;AAAA,IAAA,GAOJ;AAAA,KACCX,KAAA,gBAAAA,EAAc,WACd,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACA,OAAOR;AAAA,QACP,UAAU,CAACS,MAAM;AAChB,UAAAR,EAAUQ,CAAC,GACXX,EAAgBW,CAAC;AAAA,QAAA;AAAA,MAClB;AAAA,IAAA;AAAA,EACD,GAEF;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"table-commons.es.js","sources":["../../../lib/components/data-table/table-commons.tsx"],"sourcesContent":["import { FormatDate } from \"@/components/data-table/table-utils/index\";\nimport { Checkbox } from \"@/components/inputs\";\nimport { createColumnHelper } from \"@tanstack/react-table\";\n\nconst cH = createColumnHelper<any>();\nexport const TABLE_CHECK_BOX_COLUMN = [\n\tcH.accessor(\"checkbox\", {\n\t\theader: ({ table }) => (\n\t\t\t<Checkbox\n\t\t\t\tchecked={\n\t\t\t\t\ttable.getIsAllPageRowsSelected() || table.getIsSomePageRowsSelected()\n\t\t\t\t}\n\t\t\t\tonChange={() => table.toggleAllPageRowsSelected()}\n\t\t\t\taria-label=\"Select all\"\n\t\t\t/>\n\t\t),\n\n\t\tcell: ({ row }) => (\n\t\t\t<Checkbox\n\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\tonChange={() => row.toggleSelected()}\n\t\t\t\taria-label=\"Select row\"\n\t\t\t/>\n\t\t),\n\t\tenableSorting: false,\n\t\tenableHiding: false,\n\t}),\n];\n\nexport const TABLE_ID_COLUMN = [\n\tcH.accessor(\"id\", {\n\t\theader: () => \"ID\",\n\t}),\n];\nexport const TABLE_DEFAULT_DATE_COLUMNS = [\n\tcH.accessor(\"createdAt\", {\n\t\theader: () => \"Creation Date\",\n\t\tcell: ({ row }) => {\n\t\t\tconst date = row.getValue(\"createdAt\") satisfies\n\t\t\t\t| string\n\t\t\t\t| null\n\t\t\t\t| undefined;\n\t\t\treturn FormatDate(date);\n\t\t},\n\t\tenableHiding: false,\n\t}),\n\tcH.accessor(\"updatedAt\", {\n\t\theader: () => \"Last Updated\",\n\t\tcell: ({ row }) => {\n\t\t\tconst date = row.getValue(\"createdAt\") satisfies\n\t\t\t\t| string\n\t\t\t\t| null\n\t\t\t\t| undefined;\n\t\t\treturn FormatDate(date);\n\t\t},\n\t\tenableHiding: false,\n\t}),\n];\n"],"names":["cH","createColumnHelper","TABLE_CHECK_BOX_COLUMN","table","jsx","Checkbox","row","TABLE_ID_COLUMN","TABLE_DEFAULT_DATE_COLUMNS","date","FormatDate"],"mappings":";;;;AAIA,MAAMA,IAAKC,EAAwB,GACtBC,IAAyB;AAAA,EACrCF,EAAG,SAAS,YAAY;AAAA,IACvB,QAAQ,CAAC,EAAE,OAAAG,EAAA,MACV,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SACCF,EAAM,8BAA8BA,EAAM,0BAA0B;AAAA,QAErE,UAAU,MAAMA,EAAM,0BAA0B;AAAA,QAChD,cAAW;AAAA,MAAA;AAAA,IACZ;AAAA,IAGD,MAAM,CAAC,EAAE,KAAAG,EAAA,MACR,gBAAAF;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAASC,EAAI,cAAc;AAAA,QAC3B,UAAU,MAAMA,EAAI,eAAe;AAAA,QACnC,cAAW;AAAA,MAAA;AAAA,IACZ;AAAA,IAED,eAAe;AAAA,IACf,cAAc;AAAA,EACd,CAAA;AACF,GAEaC,IAAkB;AAAA,EAC9BP,EAAG,SAAS,MAAM;AAAA,IACjB,QAAQ,MAAM;AAAA,EACd,CAAA;AACF,GACaQ,IAA6B;AAAA,EACzCR,EAAG,SAAS,aAAa;AAAA,IACxB,QAAQ,MAAM;AAAA,IACd,MAAM,CAAC,EAAE,KAAAM,QAAU;AACZ,YAAAG,IAAOH,EAAI,SAAS,WAAW;AAIrC,aAAOI,EAAWD,CAAI;AAAA,IACvB;AAAA,IACA,cAAc;AAAA,EAAA,CACd;AAAA,EACDT,EAAG,SAAS,aAAa;AAAA,IACxB,QAAQ,MAAM;AAAA,IACd,MAAM,CAAC,EAAE,KAAAM,QAAU;AACZ,YAAAG,IAAOH,EAAI,SAAS,WAAW;AAIrC,aAAOI,EAAWD,CAAI;AAAA,IACvB;AAAA,IACA,cAAc;AAAA,EACd,CAAA;AACF;"}
1
+ {"version":3,"file":"table-commons.es.js","sources":["../../../lib/components/data-table/table-commons.tsx"],"sourcesContent":["import { FormatDate } from \"@/components/data-table/table-utils/index\";\nimport { Checkbox } from \"@/components/inputs\";\nimport { createColumnHelper } from \"@tanstack/react-table\";\n\nconst cH = createColumnHelper<any>();\nexport const TABLE_CHECK_BOX_COLUMN = [\n\tcH.accessor(\"checkbox\", {\n\t\theader: ({ table }) => (\n\t\t\t<Checkbox\n\t\t\t\tchecked={\n\t\t\t\t\ttable.getIsAllPageRowsSelected() || table.getIsSomePageRowsSelected()\n\t\t\t\t}\n\t\t\t\tonChange={() => table.toggleAllPageRowsSelected()}\n\t\t\t\taria-label=\"Select all\"\n\t\t\t/>\n\t\t),\n\n\t\tcell: ({ row }) => (\n\t\t\t<Checkbox\n\t\t\t\tchecked={row.getIsSelected()}\n\t\t\t\tonChange={() => row.toggleSelected()}\n\t\t\t\taria-label=\"Select row\"\n\t\t\t/>\n\t\t),\n\t\tenableSorting: false,\n\t\tenableHiding: false,\n\t}),\n];\n\nexport const TABLE_ID_COLUMN = [\n\tcH.accessor(\"id\", {\n\t\theader: () => \"ID\",\n\t}),\n];\nexport const TABLE_DEFAULT_DATE_COLUMNS = [\n\tcH.accessor(\"createdAt\", {\n\t\theader: () => \"Creation Date\",\n\t\tcell: ({ row }) => {\n\t\t\tconst date = row.getValue(\"createdAt\") satisfies\n\t\t\t\t| string\n\t\t\t\t| null\n\t\t\t\t| undefined;\n\t\t\treturn FormatDate(date);\n\t\t},\n\t\tenableHiding: false,\n\t}),\n\tcH.accessor(\"updatedAt\", {\n\t\theader: () => \"Last Updated\",\n\t\tcell: ({ row }) => {\n\t\t\tconst date = row.getValue(\"createdAt\") satisfies\n\t\t\t\t| string\n\t\t\t\t| null\n\t\t\t\t| undefined;\n\t\t\treturn FormatDate(date);\n\t\t},\n\t\tenableHiding: false,\n\t}),\n];\n"],"names":["cH","createColumnHelper","TABLE_CHECK_BOX_COLUMN","table","jsx","Checkbox","row","TABLE_ID_COLUMN","TABLE_DEFAULT_DATE_COLUMNS","date","FormatDate"],"mappings":";;;;AAIA,MAAMA,IAAKC,EAAA,GACEC,IAAyB;AAAA,EACrCF,EAAG,SAAS,YAAY;AAAA,IACvB,QAAQ,CAAC,EAAE,OAAAG,EAAA,MACV,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SACCF,EAAM,8BAA8BA,EAAM,0BAAA;AAAA,QAE3C,UAAU,MAAMA,EAAM,0BAAA;AAAA,QACtB,cAAW;AAAA,MAAA;AAAA,IAAA;AAAA,IAIb,MAAM,CAAC,EAAE,KAAAG,EAAA,MACR,gBAAAF;AAAA,MAACC;AAAA,MAAA;AAAA,QACA,SAASC,EAAI,cAAA;AAAA,QACb,UAAU,MAAMA,EAAI,eAAA;AAAA,QACpB,cAAW;AAAA,MAAA;AAAA,IAAA;AAAA,IAGb,eAAe;AAAA,IACf,cAAc;AAAA,EAAA,CACd;AACF,GAEaC,IAAkB;AAAA,EAC9BP,EAAG,SAAS,MAAM;AAAA,IACjB,QAAQ,MAAM;AAAA,EAAA,CACd;AACF,GACaQ,IAA6B;AAAA,EACzCR,EAAG,SAAS,aAAa;AAAA,IACxB,QAAQ,MAAM;AAAA,IACd,MAAM,CAAC,EAAE,KAAAM,QAAU;AAClB,YAAMG,IAAOH,EAAI,SAAS,WAAW;AAIrC,aAAOI,EAAWD,CAAI;AAAA,IAAA;AAAA,IAEvB,cAAc;AAAA,EAAA,CACd;AAAA,EACDT,EAAG,SAAS,aAAa;AAAA,IACxB,QAAQ,MAAM;AAAA,IACd,MAAM,CAAC,EAAE,KAAAM,QAAU;AAClB,YAAMG,IAAOH,EAAI,SAAS,WAAW;AAIrC,aAAOI,EAAWD,CAAI;AAAA,IAAA;AAAA,IAEvB,cAAc;AAAA,EAAA,CACd;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"table-content.es.js","sources":["../../../lib/components/data-table/table-content.tsx"],"sourcesContent":["import { ACTIONS_COLUMN_ID } from \"@/components/data-table/data-table\";\nimport { Button, Loader } from \"@/components/ui\";\nimport {\n\tTableBody,\n\tTableCell,\n\tTable as TableComponent,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/utils\";\nimport type { UseQueryResult } from \"@tanstack/react-query\";\nimport {\n\ttype HeaderGroup,\n\ttype RowModel,\n\tflexRender,\n} from \"@tanstack/react-table\";\nimport {\n\tArrowDownNarrowWide,\n\tArrowDownWideNarrow,\n\tArrowUpDown,\n\tInfo,\n} from \"lucide-react\";\nimport { useCallback } from \"react\";\n\nconst TableOverlay = ({\n\tchildren,\n\tclassName,\n}: { children: React.ReactNode; className?: string }) => (\n\t<div\n\t\tclassName={cn(\n\t\t\t\"absolute top-0 bg-card z-20 h-table w-full flex items-center justify-center\",\n\t\t\tclassName,\n\t\t)}\n\t>\n\t\t{children}\n\t</div>\n);\nexport function TableContent({\n\tclassName,\n\tgetHeaderGroups,\n\tgetRowModel,\n\tquery,\n}: {\n\tclassName?: string;\n\tgetRowModel: () => RowModel<any>;\n\tgetHeaderGroups: () => HeaderGroup<any>[];\n\tquery: UseQueryResult<any, unknown>;\n}) {\n\tconst isLoading = useCallback(() => {\n\t\treturn query.isLoading;\n\t}, [query]);\n\n\treturn (\n\t\t<TableComponent className={cn(\"size-full relative h-table\", className)}>\n\t\t\t{/* Table overlay with loader */}\n\t\t\t{isLoading() && (\n\t\t\t\t<TableOverlay className=\"cursor-wait\">\n\t\t\t\t\t<Loader />\n\t\t\t\t</TableOverlay>\n\t\t\t)}\n\t\t\t{/* Table overlay for empty table */}\n\t\t\t{!isLoading() && getRowModel().rows.length === 0 && (\n\t\t\t\t// Empty table\n\t\t\t\t<TableOverlay className=\"cursor-not-allowed\">\n\t\t\t\t\t{!query.isFetching &&\n\t\t\t\t\t\t(query.isError ? (\n\t\t\t\t\t\t\t<span className=\"flex gap-3 justify-center items-center\">\n\t\t\t\t\t\t\t\t{/* TODO Check for 403 explicitly!! */}\n\t\t\t\t\t\t\t\t{/* <span>{query.error}</span> */}\n\t\t\t\t\t\t\t\t<Info />\n\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\tYou don't have the required permissions. Please contact your\n\t\t\t\t\t\t\t\t\tadmin.\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) : !query.data?.data ? (\n\t\t\t\t\t\t\t<>No results found.</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>Unknown error. Please contact customer support.</>\n\t\t\t\t\t\t))}\n\t\t\t\t</TableOverlay>\n\t\t\t)}\n\t\t\t{!isLoading() && (\n\t\t\t\t<>\n\t\t\t\t\t<TableHeader className=\"sticky top-0 z-10\">\n\t\t\t\t\t\t{getHeaderGroups().map((headerGroup) => (\n\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\tclassName={`px-4 py-2 text-left text-sm font-medium bg-card whitespace-nowrap ${header.id === ACTIONS_COLUMN_ID ? \"sticky right-0 z-50 text-center\" : \"\"}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<span className=\"inline-flex items-end gap-1\">\n\t\t\t\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder\n\t\t\t\t\t\t\t\t\t\t\t\t\t? null\n\t\t\t\t\t\t\t\t\t\t\t\t\t: flexRender(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.header,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.getContext(),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t{header.column.getCanSort() && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize=\"icon\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={header.column.getToggleSortingHandler()}\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst sort = header.column.getIsSorted();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (sort === \"asc\") {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowDownNarrowWide;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (sort === \"desc\") {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowDownWideNarrow;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowUpDown;\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody className=\"flex-1 overflow-y-auto h-table relative\">\n\t\t\t\t\t\t{getRowModel().rows.length !== 0 &&\n\t\t\t\t\t\t\tgetRowModel().rows.map((row) => (\n\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\tclassName=\"transition-colors data-[state=selected]:bg-muted-foreground/30 hover:bg-muted-foreground/20\"\n\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => (\n\t\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\t\t\t\tclassName={`\n px-4 py-2 text-left text-sm whitespace-nowrap\n ${\n\t\t\t\t\t\t\t\t\t\t\tcell.column.id === ACTIONS_COLUMN_ID\n\t\t\t\t\t\t\t\t\t\t\t\t? \"sticky right-0 w-20 bg-card\"\n\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t}\n `}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{flexRender(\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.cell,\n\t\t\t\t\t\t\t\t\t\t\t\tcell.getContext(),\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</TableComponent>\n\t);\n}\n"],"names":["TableOverlay","children","className","jsx","cn","TableContent","getHeaderGroups","getRowModel","query","isLoading","useCallback","TableComponent","Loader","jsxs","Info","_a","Fragment","TableHeader","headerGroup","TableRow","header","TableHead","ACTIONS_COLUMN_ID","flexRender","Button","sort","ArrowDownNarrowWide","ArrowDownWideNarrow","ArrowUpDown","TableBody","row","cell","TableCell"],"mappings":"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"}
1
+ {"version":3,"file":"table-content.es.js","sources":["../../../lib/components/data-table/table-content.tsx"],"sourcesContent":["import { ACTIONS_COLUMN_ID } from \"@/components/data-table/data-table\";\nimport { Button, Loader } from \"@/components/ui\";\nimport {\n\tTableBody,\n\tTableCell,\n\tTable as TableComponent,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"@/components/ui/table\";\nimport { cn } from \"@/utils\";\nimport type { UseQueryResult } from \"@tanstack/react-query\";\nimport {\n\ttype HeaderGroup,\n\ttype RowModel,\n\tflexRender,\n} from \"@tanstack/react-table\";\nimport {\n\tArrowDownNarrowWide,\n\tArrowDownWideNarrow,\n\tArrowUpDown,\n\tInfo,\n} from \"lucide-react\";\nimport { useCallback } from \"react\";\n\nconst TableOverlay = ({\n\tchildren,\n\tclassName,\n}: { children: React.ReactNode; className?: string }) => (\n\t<div\n\t\tclassName={cn(\n\t\t\t\"absolute top-0 bg-card z-20 h-table w-full flex items-center justify-center\",\n\t\t\tclassName,\n\t\t)}\n\t>\n\t\t{children}\n\t</div>\n);\nexport function TableContent({\n\tclassName,\n\tgetHeaderGroups,\n\tgetRowModel,\n\tquery,\n}: {\n\tclassName?: string;\n\tgetRowModel: () => RowModel<any>;\n\tgetHeaderGroups: () => HeaderGroup<any>[];\n\tquery: UseQueryResult<any, unknown>;\n}) {\n\tconst isLoading = useCallback(() => {\n\t\treturn query.isLoading;\n\t}, [query]);\n\n\treturn (\n\t\t<TableComponent className={cn(\"size-full relative h-table\", className)}>\n\t\t\t{/* Table overlay with loader */}\n\t\t\t{isLoading() && (\n\t\t\t\t<TableOverlay className=\"cursor-wait\">\n\t\t\t\t\t<Loader />\n\t\t\t\t</TableOverlay>\n\t\t\t)}\n\t\t\t{/* Table overlay for empty table */}\n\t\t\t{!isLoading() && getRowModel().rows.length === 0 && (\n\t\t\t\t// Empty table\n\t\t\t\t<TableOverlay className=\"cursor-not-allowed\">\n\t\t\t\t\t{!query.isFetching &&\n\t\t\t\t\t\t(query.isError ? (\n\t\t\t\t\t\t\t<span className=\"flex gap-3 justify-center items-center\">\n\t\t\t\t\t\t\t\t{/* TODO Check for 403 explicitly!! */}\n\t\t\t\t\t\t\t\t{/* <span>{query.error}</span> */}\n\t\t\t\t\t\t\t\t<Info />\n\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\tYou don't have the required permissions. Please contact your\n\t\t\t\t\t\t\t\t\tadmin.\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) : !query.data?.data ? (\n\t\t\t\t\t\t\t<>No results found.</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>Unknown error. Please contact customer support.</>\n\t\t\t\t\t\t))}\n\t\t\t\t</TableOverlay>\n\t\t\t)}\n\t\t\t{!isLoading() && (\n\t\t\t\t<>\n\t\t\t\t\t<TableHeader className=\"sticky top-0 z-10\">\n\t\t\t\t\t\t{getHeaderGroups().map((headerGroup) => (\n\t\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t\t{headerGroup.headers.map((header) => (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\tclassName={`px-4 py-2 text-left text-sm font-medium bg-card whitespace-nowrap ${header.id === ACTIONS_COLUMN_ID ? \"sticky right-0 z-50 text-center\" : \"\"}`}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<span className=\"inline-flex items-end gap-1\">\n\t\t\t\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder\n\t\t\t\t\t\t\t\t\t\t\t\t\t? null\n\t\t\t\t\t\t\t\t\t\t\t\t\t: flexRender(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.header,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theader.getContext(),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t{header.column.getCanSort() && (\n\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize=\"icon\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={header.column.getToggleSortingHandler()}\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst sort = header.column.getIsSorted();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (sort === \"asc\") {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowDownNarrowWide;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (sort === \"desc\") {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowDownWideNarrow;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn ArrowUpDown;\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</TableHeader>\n\t\t\t\t\t<TableBody className=\"flex-1 overflow-y-auto h-table relative\">\n\t\t\t\t\t\t{getRowModel().rows.length !== 0 &&\n\t\t\t\t\t\t\tgetRowModel().rows.map((row) => (\n\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\tclassName=\"transition-colors data-[state=selected]:bg-muted-foreground/30 hover:bg-muted-foreground/20\"\n\t\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => (\n\t\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\t\t\t\tclassName={`\n px-4 py-2 text-left text-sm whitespace-nowrap\n ${\n\t\t\t\t\t\t\t\t\t\t\tcell.column.id === ACTIONS_COLUMN_ID\n\t\t\t\t\t\t\t\t\t\t\t\t? \"sticky right-0 w-20 bg-card\"\n\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t}\n `}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{flexRender(\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.cell,\n\t\t\t\t\t\t\t\t\t\t\t\tcell.getContext(),\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t</TableBody>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</TableComponent>\n\t);\n}\n"],"names":["TableOverlay","children","className","jsx","cn","TableContent","getHeaderGroups","getRowModel","query","isLoading","useCallback","TableComponent","Loader","jsxs","Info","_a","Fragment","TableHeader","headerGroup","TableRow","header","TableHead","ACTIONS_COLUMN_ID","flexRender","Button","sort","ArrowDownNarrowWide","ArrowDownWideNarrow","ArrowUpDown","TableBody","row","cell","TableCell"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.es.js","sources":["../../../../lib/components/data-table/table-utils/constants.ts"],"sourcesContent":["import { intervalToDuration } from \"date-fns\";\nimport { convertCamelCaseToTitleCase } from \"./string\";\n\nexport const FILTERABLE_PROPERTY_TYPES = [\n\t\"objectString\",\n\t\"string\",\n\t\"number\",\n\t\"objectNumber\",\n\t\"boolean\",\n\t\"objectDate\",\n\t\"licenseType\",\n\t\"product\",\n\t\"product-version\",\n\t\"user\",\n\t\"webhook\",\n\t\"automated-email\",\n\t\"organization\",\n\t\"country\",\n\t\"tag\",\n\t\"resource\",\n\t\"resourceId\",\n\t\"reseller\",\n\t\"role\",\n\t\"note\",\n\t\"os\",\n\t\"action\",\n] as const;\nexport type FilterablePropertyType = (typeof FILTERABLE_PROPERTY_TYPES)[number];\nexport type FilterableProperties<T> = {\n\t[K in keyof T]?: FilterablePropertyType;\n};\n\nexport const DEFAULT_FILTERABLE_FIELDS: FilterableProperties<any> = {\n\tcreatedAt: \"objectDate\",\n\tupdatedAt: \"objectDate\",\n};\nexport const FILTER_COMPARISON_OPERATORS = [\n\t\"eq\",\n\t\"ne\",\n\t\"cn\",\n\t\"nc\",\n\t\"sw\",\n\t\"ew\",\n\t\"in\",\n\t\"nin\",\n\t\"gt\",\n\t\"gte\",\n\t\"lt\",\n\t\"lte\",\n] as const;\nexport type FilterComparisonOperator =\n\t(typeof FILTER_COMPARISON_OPERATORS)[number];\nexport type OperatorsForFilterType = Record<\n\tFilterablePropertyType,\n\tFilterComparisonOperator[]\n>;\nexport const COMPARISON_OPERATOR_LABELS: Record<\n\tFilterComparisonOperator,\n\tstring\n> = {\n\teq: \"equal to\",\n\tne: \"not equal to\",\n\tcn: \"contains\",\n\tnc: \"does not contain\",\n\tsw: \"starts with\",\n\tew: \"ends with\",\n\tin: \"includes\",\n\tnin: \"does not include\",\n\tgt: \"greater than\",\n\tgte: \"greater than or equal to\",\n\tlt: \"less than\",\n\tlte: \"less than or equal to\",\n};\n\nexport const OPERATORS_FOR_FILTER_TYPE: OperatorsForFilterType = {\n\tobjectString: [\"eq\", \"ne\", \"cn\", \"nc\", \"sw\", \"ew\", \"in\", \"nin\"],\n\tobjectDate: [\"gt\", \"lt\", \"eq\"],\n\tobjectNumber: [\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\"],\n\ttag: [\"in\", \"nin\"],\n\tstring: [\"eq\"],\n\tnumber: [\"eq\"],\n\tboolean: [\"eq\"],\n\tlicenseType: [\"in\", \"nin\"],\n\tproduct: [\"in\", \"nin\"],\n\t\"product-version\": [\"in\", \"nin\"],\n\tuser: [\"eq\"],\n\treseller: [\"eq\"],\n\twebhook: [\"in\", \"nin\"],\n\t\"automated-email\": [\"in\", \"nin\"],\n\torganization: [\"eq\"],\n\tcountry: [\"in\", \"nin\"],\n\tresource: [\"in\", \"nin\"],\n\tresourceId: [\"eq\", \"ne\", \"in\", \"nin\"],\n\trole: [\"in\", \"nin\"],\n\tnote: [\"eq\", \"ne\", \"cn\", \"nc\", \"sw\", \"ew\"],\n\tos: [\"in\", \"nin\"],\n\taction: [\"in\", \"nin\"],\n};\n\n/** Application Names */\nexport type CtxProjectName =\n\t| \"admin-portal\"\n\t| \"customer-portal\"\n\t| \"internal-portal\"\n\t| \"reseller-portal\";\n// Display names specific to customer and reseller portal\nconst OTHER_PORTALS_DISPLAY_NAME: Record<string, string> = {\n\t\"product.displayName\": \"Product\",\n};\n\n/** Resource Name should ALWAYS be in singular form */\nexport const RESOURCE_NAMES = [\n\t\"access-token\",\n\t\"account\",\n\t\"activation\",\n\t\"activation-log\",\n\t\"admin-role\",\n\t\"audit-log\",\n\t\"automated-email\",\n\t\"automated-email-event-log\",\n\t\"card\",\n\t\"feature-flag\",\n\t\"invoice\",\n\t\"license\",\n\t\"license-template\",\n\t\"maintenance-policy\",\n\t\"organization\",\n\t\"plan\",\n\t\"product\",\n\t\"product-version\",\n\t\"profile\",\n\t\"release\",\n\t\"release-channel\",\n\t\"release-file\",\n\t\"release-platform\",\n\t\"report\",\n\t\"role\",\n\t\"role-claim\",\n\t\"saml-configuration\",\n\t\"segment\",\n\t\"sending-domain\",\n\t\"setting\",\n\t\"tag\",\n\t\"team-member\",\n\t\"trial\",\n\t\"trial-policy\",\n\t\"user\",\n\t\"user-group\",\n\t\"webhook\",\n\t\"webhook-event-log\",\n\t\"webhook-trigger\",\n\t\"reseller\",\n\t\"oidc-configuration\",\n\t\"organization-claim\",\n\t\"reseller-claim\",\n] as const;\nexport type ResourceName = (typeof RESOURCE_NAMES)[number];\nexport const RESOURCE_DEFINITIONS: Record<ResourceName, string> = {\n\taccount: \"Your organization account.\",\n\tproduct: \"Products are the software products you want to license\",\n\tlicense:\n\t\t\"Licenses represent a purchase of your software. These can be linked to customers, and the license key is required to use the product.\",\n\t\"access-token\": \"Access Tokens are used to authenticate your API requests.\",\n\tactivation:\n\t\t\"Activations, also known as devices/machines/seats are the devices consuming licenses.\",\n\t\"activation-log\":\n\t\t\"Activation Log is a log entry of activation/deactivation of a particular license.\",\n\ttrial:\n\t\t\"Trial/Trial Activation is a device that has activated a trial of your product.\",\n\t\"audit-log\": \"Audit logs contain all the changes made to your account.\",\n\t\"automated-email\":\n\t\t\"Automated Email allow you to send marketing emails based on events on the linked product.\",\n\t\"automated-email-event-log\":\n\t\t\"Automated email event log is the log of all the automated email events for your product.\",\n\tcard: \"The payment card for your account.\",\n\t\"feature-flag\":\n\t\t\"Feature flags define features that make up tiers for your products.\",\n\tinvoice: \"\",\n\t\"license-template\":\n\t\t\"License templates are a blueprint for the licenses you create for your customers and prevent repetition when creating licenses.\",\n\t\"maintenance-policy\":\n\t\t\"Maintenance policies represent support contracts and can be linked to licenses.\",\n\tplan: \"\",\n\t\"product-version\":\n\t\t\"Product Versions are sets of Feature Flags that define the tiers of your products.\",\n\t\"release-channel\": \"Release channel is the release channel for your product.\",\n\t\"release-file\": \"Release files are files within your created releases.\",\n\t\"release-platform\":\n\t\t'Release Platforms differentiate the target platform for your release. Common platforms include \"Windows\", \"macOS\", and \"Linux\".',\n\trelease:\n\t\t\"Releases help you to manage different versions of your app, and secure distribute it to licensed users.\",\n\treport: \"Analytics data for your account\",\n\t\"role-claim\": \"\",\n\trole: \"Roles define permissions for your team.\",\n\t\"saml-configuration\": \"\",\n\tsegment: \"Sets of filters that can be saved to filter resources.\",\n\t\"trial-policy\":\n\t\t\"Trial policies are templates for creating trials for your products.\",\n\t\"webhook-event-log\":\n\t\t\"Webhook Event Logs are logs of events that have occured on webhooks.\",\n\t\"webhook-trigger\": \"\",\n\twebhook:\n\t\t\"Webhooks are HTTP callbacks which are triggered by specific events.\",\n\torganization: \"\",\n\tprofile: \"\",\n\tsetting: \"\",\n\ttag: \"Tags allow you to manage your licenses and customers on the dashboard.\",\n\t\"team-member\": \"Team members can access the account based on their roles.\",\n\tuser: \"A user refers to your customer whom you want to license your product.\",\n\t\"sending-domain\":\n\t\t\"Allows Cryptlex to send emails on your behalf using your From Email address\",\n\t\"admin-role\": \"Roles that have type admin\",\n\t\"user-group\": \"Groups of users that you can assign licenses to.\",\n\treseller:\n\t\t\"Resellers allow you to delegate user management to third parties or partners\",\n\t\"oidc-configuration\": \"\",\n\t\"organization-claim\": \"\",\n\t\"reseller-claim\": \"\",\n};\n\nconst RESOURCE_DISPLAY_NAMES: Record<string, string> = {\n\tid: \"ID\",\n\tcreatedAt: \"Creation Date\",\n\tscopes: \"Permissions\",\n\tupdatedAt: \"Last Updated\",\n\texpiresAt: \"Expiration Date\",\n\tlastSeenAt: \"Last Seen\",\n\tos: \"OS\",\n\tosVersion: \"OS Version\",\n\tkey: \"License Key\",\n\tvmName: \"VM Name\",\n\tcontainer: \"Container\",\n\tallowedIpRange: \"Allowed IP Range\",\n\tallowedIpRanges: \"Allowed IP Ranges\",\n\tallowedIpAddresses: \"Allowed IP Addresses\",\n\tdisallowedIpAddresses: \"Disallowed IP Addresses\",\n\tallowVmActivation: \"Allow VM Activation\",\n\tdisableGeoLocation: \"Disable Geolocation\",\n\t\"user.id\": \"User ID\",\n\tuserId: \"User\",\n\tproductId: \"Product\",\n\tdownloads: \"Total Downloads\",\n\tclaims: \"Permissions\",\n\tgoogleSsoEnabled: \"Google Login Enabled\",\n\tlastAttemptedAt: \"Last Attempt Date\",\n\turl: \"URL\",\n\t\"trialPolicy.name\": \"Trial Policy Name\",\n\t\"licensePolicy.name\": \"License Template Name\",\n\tlicensePolicy: \"License Template\",\n\teventLog: \"Audit Log\",\n\tcc: \"CC Recepients\",\n\tbcc: \"BCC Recepients\",\n\tipAddress: \"IP Address\",\n\tresellerId: \"Reseller\",\n\tproductVersionId: \"Product Version\",\n\treleaseId: \"Release\",\n\tmaintenancePolicyId: \"Maintenance Policy\",\n\twebhookId: \"Webhook\",\n\tautomatedEmailId: \"Automated Email\",\n\t\"location.countryName\": \"Country\",\n\t\"location.ipAddress\": \"IP Address\",\n\t\"location.countryCode\": \"Country\",\n\torganizationId: \"Organization\",\n\t\"address.country\": \"Country\",\n\t\"address.addressLine1\": \"Address Line 1\",\n\t\"address.addressLine2\": \"Address Line 2\",\n\tresponseStatusCode: \"HTTP Status Code\",\n\tresourceId: \"Resource ID\",\n\tSso: \"SAML SSO 2.0\",\n\t\"reseller.name\": \"Reseller\",\n\tsendingDomain: \"Email Sending Domain\",\n};\nexport function getResourceDisplayName(\n\tresourceName: string,\n\tportal: CtxProjectName,\n) {\n\tif (portal !== \"admin-portal\" && resourceName in OTHER_PORTALS_DISPLAY_NAME) {\n\t\treturn OTHER_PORTALS_DISPLAY_NAME[resourceName];\n\t} else if (resourceName in RESOURCE_DISPLAY_NAMES) {\n\t\treturn RESOURCE_DISPLAY_NAMES[resourceName];\n\t} else {\n\t\treturn convertCamelCaseToTitleCase(resourceName);\n\t}\n}\n\n/**\n * Format multiple license parameters (expired, suspended, revoked) into a single status\n */\nexport function getLicenseStatus(license: any): string {\n\tconst licenseExpired =\n\t\tlicense.expiresAt && new Date(license.expiresAt) < new Date();\n\t// Status Column\n\tswitch (true) {\n\t\tcase license.revoked && license.suspended && licenseExpired:\n\t\t\treturn \"Revoked, Suspended, Expired\";\n\t\tcase license.revoked && license.suspended:\n\t\t\treturn \"Revoked, Suspended\";\n\t\tcase license.revoked && licenseExpired:\n\t\t\treturn \"Revoked, Expired\";\n\t\tcase license.suspended && licenseExpired:\n\t\t\treturn \"Suspended, Expired\";\n\t\tcase license.suspended:\n\t\t\treturn \"Suspended\";\n\t\tcase license.revoked:\n\t\t\treturn \"Revoked\";\n\t\tcase licenseExpired:\n\t\t\treturn \"Expired\";\n\t\tdefault:\n\t\t\treturn \"Active\";\n\t}\n}\n\nexport function getValidityDisplay(validity: number | undefined) {\n\tif (validity === 0 || !validity) {\n\t\treturn \"Lifetime\";\n\t} else {\n\t\treturn secondsToDuration(validity);\n\t}\n}\nexport function secondsToDuration(seconds: number): string {\n\tconst duration = intervalToDuration({\n\t\tstart: 0,\n\t\tend: seconds * 1000,\n\t});\n\n\tconst parts = [\n\t\tduration.years && `${duration.years}y`,\n\t\tduration.months && `${duration.months}m`,\n\t\tduration.days && `${duration.days}d`,\n\t\tduration.hours && `${duration.hours}h`,\n\t];\n\n\t// Filter out undefined values and join\n\treturn parts.filter(Boolean).join(\" \").trim();\n}\n\nexport function getValueFromData(\n\tdata: any,\n\taccessor: string | number | symbol,\n) {\n\tconst accessors = accessor.toString().split(\".\");\n\tlet value = data;\n\tfor (const acc of accessors) {\n\t\tvalue = value?.[acc];\n\t}\n\treturn value;\n}\nexport const ALL_OS: { [key: string]: string } = {\n\twindows: \"Windows\",\n\tmacos: \"macOS\",\n\tlinux: \"Linux\",\n\tios: \"iOS\",\n\tandroid: \"Android\",\n};\n"],"names":["FILTERABLE_PROPERTY_TYPES","DEFAULT_FILTERABLE_FIELDS","FILTER_COMPARISON_OPERATORS","COMPARISON_OPERATOR_LABELS","OPERATORS_FOR_FILTER_TYPE","OTHER_PORTALS_DISPLAY_NAME","RESOURCE_NAMES","RESOURCE_DEFINITIONS","RESOURCE_DISPLAY_NAMES","getResourceDisplayName","resourceName","portal","convertCamelCaseToTitleCase","getLicenseStatus","license","licenseExpired","getValidityDisplay","validity","secondsToDuration","seconds","duration","intervalToDuration","getValueFromData","data","accessor","accessors","value","acc","ALL_OS"],"mappings":"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"}
1
+ {"version":3,"file":"constants.es.js","sources":["../../../../lib/components/data-table/table-utils/constants.ts"],"sourcesContent":["import { intervalToDuration } from \"date-fns\";\nimport { convertCamelCaseToTitleCase } from \"./string\";\n\nexport const FILTERABLE_PROPERTY_TYPES = [\n\t\"objectString\",\n\t\"string\",\n\t\"number\",\n\t\"objectNumber\",\n\t\"boolean\",\n\t\"objectDate\",\n\t\"licenseType\",\n\t\"product\",\n\t\"product-version\",\n\t\"user\",\n\t\"webhook\",\n\t\"automated-email\",\n\t\"organization\",\n\t\"country\",\n\t\"tag\",\n\t\"resource\",\n\t\"resourceId\",\n\t\"reseller\",\n\t\"role\",\n\t\"note\",\n\t\"os\",\n\t\"action\",\n] as const;\nexport type FilterablePropertyType = (typeof FILTERABLE_PROPERTY_TYPES)[number];\nexport type FilterableProperties<T> = {\n\t[K in keyof T]?: FilterablePropertyType;\n};\n\nexport const DEFAULT_FILTERABLE_FIELDS: FilterableProperties<any> = {\n\tcreatedAt: \"objectDate\",\n\tupdatedAt: \"objectDate\",\n};\nexport const FILTER_COMPARISON_OPERATORS = [\n\t\"eq\",\n\t\"ne\",\n\t\"cn\",\n\t\"nc\",\n\t\"sw\",\n\t\"ew\",\n\t\"in\",\n\t\"nin\",\n\t\"gt\",\n\t\"gte\",\n\t\"lt\",\n\t\"lte\",\n] as const;\nexport type FilterComparisonOperator =\n\t(typeof FILTER_COMPARISON_OPERATORS)[number];\nexport type OperatorsForFilterType = Record<\n\tFilterablePropertyType,\n\tFilterComparisonOperator[]\n>;\nexport const COMPARISON_OPERATOR_LABELS: Record<\n\tFilterComparisonOperator,\n\tstring\n> = {\n\teq: \"equal to\",\n\tne: \"not equal to\",\n\tcn: \"contains\",\n\tnc: \"does not contain\",\n\tsw: \"starts with\",\n\tew: \"ends with\",\n\tin: \"includes\",\n\tnin: \"does not include\",\n\tgt: \"greater than\",\n\tgte: \"greater than or equal to\",\n\tlt: \"less than\",\n\tlte: \"less than or equal to\",\n};\n\nexport const OPERATORS_FOR_FILTER_TYPE: OperatorsForFilterType = {\n\tobjectString: [\"eq\", \"ne\", \"cn\", \"nc\", \"sw\", \"ew\", \"in\", \"nin\"],\n\tobjectDate: [\"gt\", \"lt\", \"eq\"],\n\tobjectNumber: [\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\"],\n\ttag: [\"in\", \"nin\"],\n\tstring: [\"eq\"],\n\tnumber: [\"eq\"],\n\tboolean: [\"eq\"],\n\tlicenseType: [\"in\", \"nin\"],\n\tproduct: [\"in\", \"nin\"],\n\t\"product-version\": [\"in\", \"nin\"],\n\tuser: [\"eq\"],\n\treseller: [\"eq\"],\n\twebhook: [\"in\", \"nin\"],\n\t\"automated-email\": [\"in\", \"nin\"],\n\torganization: [\"eq\"],\n\tcountry: [\"in\", \"nin\"],\n\tresource: [\"in\", \"nin\"],\n\tresourceId: [\"eq\", \"ne\", \"in\", \"nin\"],\n\trole: [\"in\", \"nin\"],\n\tnote: [\"eq\", \"ne\", \"cn\", \"nc\", \"sw\", \"ew\"],\n\tos: [\"in\", \"nin\"],\n\taction: [\"in\", \"nin\"],\n};\n\n/** Application Names */\nexport type CtxProjectName =\n\t| \"admin-portal\"\n\t| \"customer-portal\"\n\t| \"internal-portal\"\n\t| \"reseller-portal\";\n// Display names specific to customer and reseller portal\nconst OTHER_PORTALS_DISPLAY_NAME: Record<string, string> = {\n\t\"product.displayName\": \"Product\",\n};\n\n/** Resource Name should ALWAYS be in singular form */\nexport const RESOURCE_NAMES = [\n\t\"access-token\",\n\t\"account\",\n\t\"activation\",\n\t\"activation-log\",\n\t\"admin-role\",\n\t\"audit-log\",\n\t\"automated-email\",\n\t\"automated-email-event-log\",\n\t\"card\",\n\t\"feature-flag\",\n\t\"invoice\",\n\t\"license\",\n\t\"license-template\",\n\t\"maintenance-policy\",\n\t\"organization\",\n\t\"plan\",\n\t\"product\",\n\t\"product-version\",\n\t\"profile\",\n\t\"release\",\n\t\"release-channel\",\n\t\"release-file\",\n\t\"release-platform\",\n\t\"report\",\n\t\"role\",\n\t\"role-claim\",\n\t\"saml-configuration\",\n\t\"segment\",\n\t\"sending-domain\",\n\t\"setting\",\n\t\"tag\",\n\t\"team-member\",\n\t\"trial\",\n\t\"trial-policy\",\n\t\"user\",\n\t\"user-group\",\n\t\"webhook\",\n\t\"webhook-event-log\",\n\t\"webhook-trigger\",\n\t\"reseller\",\n\t\"oidc-configuration\",\n\t\"organization-claim\",\n\t\"reseller-claim\",\n] as const;\nexport type ResourceName = (typeof RESOURCE_NAMES)[number];\nexport const RESOURCE_DEFINITIONS: Record<ResourceName, string> = {\n\taccount: \"Your organization account.\",\n\tproduct: \"Products are the software products you want to license\",\n\tlicense:\n\t\t\"Licenses represent a purchase of your software. These can be linked to customers, and the license key is required to use the product.\",\n\t\"access-token\": \"Access Tokens are used to authenticate your API requests.\",\n\tactivation:\n\t\t\"Activations, also known as devices/machines/seats are the devices consuming licenses.\",\n\t\"activation-log\":\n\t\t\"Activation Log is a log entry of activation/deactivation of a particular license.\",\n\ttrial:\n\t\t\"Trial/Trial Activation is a device that has activated a trial of your product.\",\n\t\"audit-log\": \"Audit logs contain all the changes made to your account.\",\n\t\"automated-email\":\n\t\t\"Automated Email allow you to send marketing emails based on events on the linked product.\",\n\t\"automated-email-event-log\":\n\t\t\"Automated email event log is the log of all the automated email events for your product.\",\n\tcard: \"The payment card for your account.\",\n\t\"feature-flag\":\n\t\t\"Feature flags define features that make up tiers for your products.\",\n\tinvoice: \"\",\n\t\"license-template\":\n\t\t\"License templates are a blueprint for the licenses you create for your customers and prevent repetition when creating licenses.\",\n\t\"maintenance-policy\":\n\t\t\"Maintenance policies represent support contracts and can be linked to licenses.\",\n\tplan: \"\",\n\t\"product-version\":\n\t\t\"Product Versions are sets of Feature Flags that define the tiers of your products.\",\n\t\"release-channel\": \"Release channel is the release channel for your product.\",\n\t\"release-file\": \"Release files are files within your created releases.\",\n\t\"release-platform\":\n\t\t'Release Platforms differentiate the target platform for your release. Common platforms include \"Windows\", \"macOS\", and \"Linux\".',\n\trelease:\n\t\t\"Releases help you to manage different versions of your app, and secure distribute it to licensed users.\",\n\treport: \"Analytics data for your account\",\n\t\"role-claim\": \"\",\n\trole: \"Roles define permissions for your team.\",\n\t\"saml-configuration\": \"\",\n\tsegment: \"Sets of filters that can be saved to filter resources.\",\n\t\"trial-policy\":\n\t\t\"Trial policies are templates for creating trials for your products.\",\n\t\"webhook-event-log\":\n\t\t\"Webhook Event Logs are logs of events that have occured on webhooks.\",\n\t\"webhook-trigger\": \"\",\n\twebhook:\n\t\t\"Webhooks are HTTP callbacks which are triggered by specific events.\",\n\torganization: \"\",\n\tprofile: \"\",\n\tsetting: \"\",\n\ttag: \"Tags allow you to manage your licenses and customers on the dashboard.\",\n\t\"team-member\": \"Team members can access the account based on their roles.\",\n\tuser: \"A user refers to your customer whom you want to license your product.\",\n\t\"sending-domain\":\n\t\t\"Allows Cryptlex to send emails on your behalf using your From Email address\",\n\t\"admin-role\": \"Roles that have type admin\",\n\t\"user-group\": \"Groups of users that you can assign licenses to.\",\n\treseller:\n\t\t\"Resellers allow you to delegate user management to third parties or partners\",\n\t\"oidc-configuration\": \"\",\n\t\"organization-claim\": \"\",\n\t\"reseller-claim\": \"\",\n};\n\nconst RESOURCE_DISPLAY_NAMES: Record<string, string> = {\n\tid: \"ID\",\n\tcreatedAt: \"Creation Date\",\n\tscopes: \"Permissions\",\n\tupdatedAt: \"Last Updated\",\n\texpiresAt: \"Expiration Date\",\n\tlastSeenAt: \"Last Seen\",\n\tos: \"OS\",\n\tosVersion: \"OS Version\",\n\tkey: \"License Key\",\n\tvmName: \"VM Name\",\n\tcontainer: \"Container\",\n\tallowedIpRange: \"Allowed IP Range\",\n\tallowedIpRanges: \"Allowed IP Ranges\",\n\tallowedIpAddresses: \"Allowed IP Addresses\",\n\tdisallowedIpAddresses: \"Disallowed IP Addresses\",\n\tallowVmActivation: \"Allow VM Activation\",\n\tdisableGeoLocation: \"Disable Geolocation\",\n\t\"user.id\": \"User ID\",\n\tuserId: \"User\",\n\tproductId: \"Product\",\n\tdownloads: \"Total Downloads\",\n\tclaims: \"Permissions\",\n\tgoogleSsoEnabled: \"Google Login Enabled\",\n\tlastAttemptedAt: \"Last Attempt Date\",\n\turl: \"URL\",\n\t\"trialPolicy.name\": \"Trial Policy Name\",\n\t\"licensePolicy.name\": \"License Template Name\",\n\tlicensePolicy: \"License Template\",\n\teventLog: \"Audit Log\",\n\tcc: \"CC Recepients\",\n\tbcc: \"BCC Recepients\",\n\tipAddress: \"IP Address\",\n\tresellerId: \"Reseller\",\n\tproductVersionId: \"Product Version\",\n\treleaseId: \"Release\",\n\tmaintenancePolicyId: \"Maintenance Policy\",\n\twebhookId: \"Webhook\",\n\tautomatedEmailId: \"Automated Email\",\n\t\"location.countryName\": \"Country\",\n\t\"location.ipAddress\": \"IP Address\",\n\t\"location.countryCode\": \"Country\",\n\torganizationId: \"Organization\",\n\t\"address.country\": \"Country\",\n\t\"address.addressLine1\": \"Address Line 1\",\n\t\"address.addressLine2\": \"Address Line 2\",\n\tresponseStatusCode: \"HTTP Status Code\",\n\tresourceId: \"Resource ID\",\n\tSso: \"SAML SSO 2.0\",\n\t\"reseller.name\": \"Reseller\",\n\tsendingDomain: \"Email Sending Domain\",\n};\nexport function getResourceDisplayName(\n\tresourceName: string,\n\tportal: CtxProjectName,\n) {\n\tif (portal !== \"admin-portal\" && resourceName in OTHER_PORTALS_DISPLAY_NAME) {\n\t\treturn OTHER_PORTALS_DISPLAY_NAME[resourceName];\n\t} else if (resourceName in RESOURCE_DISPLAY_NAMES) {\n\t\treturn RESOURCE_DISPLAY_NAMES[resourceName];\n\t} else {\n\t\treturn convertCamelCaseToTitleCase(resourceName);\n\t}\n}\n\n/**\n * Format multiple license parameters (expired, suspended, revoked) into a single status\n */\nexport function getLicenseStatus(license: any): string {\n\tconst licenseExpired =\n\t\tlicense.expiresAt && new Date(license.expiresAt) < new Date();\n\t// Status Column\n\tswitch (true) {\n\t\tcase license.revoked && license.suspended && licenseExpired:\n\t\t\treturn \"Revoked, Suspended, Expired\";\n\t\tcase license.revoked && license.suspended:\n\t\t\treturn \"Revoked, Suspended\";\n\t\tcase license.revoked && licenseExpired:\n\t\t\treturn \"Revoked, Expired\";\n\t\tcase license.suspended && licenseExpired:\n\t\t\treturn \"Suspended, Expired\";\n\t\tcase license.suspended:\n\t\t\treturn \"Suspended\";\n\t\tcase license.revoked:\n\t\t\treturn \"Revoked\";\n\t\tcase licenseExpired:\n\t\t\treturn \"Expired\";\n\t\tdefault:\n\t\t\treturn \"Active\";\n\t}\n}\n\nexport function getValidityDisplay(validity: number | undefined) {\n\tif (validity === 0 || !validity) {\n\t\treturn \"Lifetime\";\n\t} else {\n\t\treturn secondsToDuration(validity);\n\t}\n}\nexport function secondsToDuration(seconds: number): string {\n\tconst duration = intervalToDuration({\n\t\tstart: 0,\n\t\tend: seconds * 1000,\n\t});\n\n\tconst parts = [\n\t\tduration.years && `${duration.years}y`,\n\t\tduration.months && `${duration.months}m`,\n\t\tduration.days && `${duration.days}d`,\n\t\tduration.hours && `${duration.hours}h`,\n\t];\n\n\t// Filter out undefined values and join\n\treturn parts.filter(Boolean).join(\" \").trim();\n}\n\nexport function getValueFromData(\n\tdata: any,\n\taccessor: string | number | symbol,\n) {\n\tconst accessors = accessor.toString().split(\".\");\n\tlet value = data;\n\tfor (const acc of accessors) {\n\t\tvalue = value?.[acc];\n\t}\n\treturn value;\n}\nexport const ALL_OS: { [key: string]: string } = {\n\twindows: \"Windows\",\n\tmacos: \"macOS\",\n\tlinux: \"Linux\",\n\tios: \"iOS\",\n\tandroid: \"Android\",\n};\n"],"names":["FILTERABLE_PROPERTY_TYPES","DEFAULT_FILTERABLE_FIELDS","FILTER_COMPARISON_OPERATORS","COMPARISON_OPERATOR_LABELS","OPERATORS_FOR_FILTER_TYPE","OTHER_PORTALS_DISPLAY_NAME","RESOURCE_NAMES","RESOURCE_DEFINITIONS","RESOURCE_DISPLAY_NAMES","getResourceDisplayName","resourceName","portal","convertCamelCaseToTitleCase","getLicenseStatus","license","licenseExpired","getValidityDisplay","validity","secondsToDuration","seconds","duration","intervalToDuration","getValueFromData","data","accessor","accessors","value","acc","ALL_OS"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTableFetchFn.es.js","sources":["../../../../lib/components/data-table/table-utils/createTableFetchFn.ts"],"sourcesContent":["import type { paths } from \"@cryptlex/web-api-types\";\nimport { merge } from \"lodash-es\";\nimport type createClient from \"openapi-fetch\";\nimport type { ParamsOption } from \"openapi-fetch\";\nimport type { TableFetchFn } from \"./types\";\n\ninterface Params {\n\tquery: Record<\n\t\tstring,\n\t\tstring | number | boolean | Record<string, string | number | boolean>\n\t>;\n}\n\ntype Client = ReturnType<typeof createClient<paths>>;\n\n// Helper type to extract valid GET paths\ntype GetPaths = {\n\t[P in keyof paths]: paths[P] extends { get: any } ? P : never;\n}[keyof paths];\n\nexport function createTableFetchFn<_any, Return>(\n\tctxclient: Client,\n\tpath: GetPaths,\n\t// TODO: Use generic type instead\n\tparams?: ParamsOption<any>,\n): TableFetchFn<Return> {\n\treturn async (pagination, sorting, searching) => {\n\t\tconst ab: { params: Params } = {\n\t\t\tparams: {\n\t\t\t\tquery: {\n\t\t\t\t\tpage: pagination.pageIndex + 1,\n\t\t\t\t\tlimit: pagination.pageSize,\n\t\t\t\t\tsort: generateSortParam(sorting[0]),\n\t\t\t\t\tquery: searching,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\n\t\tconst pathParams = merge(ab, params) as { params: Params };\n\n\t\treturn ctxclient.GET(path, pathParams).then((value) => {\n\t\t\tconst rowCount = Number.parseInt(\n\t\t\t\tvalue.response.headers.get(\"Pagination-Count\") || \"0\",\n\t\t\t);\n\t\t\treturn { total: rowCount, data: value.data };\n\t\t});\n\t};\n}\n\nfunction generateSortParam(\n\tsort: { id: string; desc: boolean } | undefined,\n): string {\n\tif (sort) {\n\t\tif (sort.desc) {\n\t\t\treturn `-${sort.id}`;\n\t\t} else {\n\t\t\treturn `+${sort.id}`;\n\t\t}\n\t} else {\n\t\treturn \"-createdAt\";\n\t}\n}\n"],"names":["createTableFetchFn","ctxclient","path","params","pagination","sorting","searching","ab","generateSortParam","pathParams","merge","value","sort"],"mappings":";AAoBgB,SAAAA,EACfC,GACAC,GAEAC,GACuB;AAChB,SAAA,OAAOC,GAAYC,GAASC,MAAc;AAChD,UAAMC,IAAyB;AAAA,MAC9B,QAAQ;AAAA,QACP,OAAO;AAAA,UACN,MAAMH,EAAW,YAAY;AAAA,UAC7B,OAAOA,EAAW;AAAA,UAClB,MAAMI,EAAkBH,EAAQ,CAAC,CAAC;AAAA,UAClC,OAAOC;AAAA,QAAA;AAAA,MACR;AAAA,IAEF,GAEMG,IAAaC,EAAMH,GAAIJ,CAAM;AAEnC,WAAOF,EAAU,IAAIC,GAAMO,CAAU,EAAE,KAAK,CAACE,OAIrC,EAAE,OAHQ,OAAO;AAAA,MACvBA,EAAM,SAAS,QAAQ,IAAI,kBAAkB,KAAK;AAAA,IACnD,GAC0B,MAAMA,EAAM,KAAK,EAC3C;AAAA,EACF;AACD;AAEA,SAASH,EACRI,GACS;AACT,SAAIA,IACCA,EAAK,OACD,IAAIA,EAAK,EAAE,KAEX,IAAIA,EAAK,EAAE,KAGZ;AAET;"}
1
+ {"version":3,"file":"createTableFetchFn.es.js","sources":["../../../../lib/components/data-table/table-utils/createTableFetchFn.ts"],"sourcesContent":["import type { paths } from \"@cryptlex/web-api-types\";\nimport { merge } from \"lodash-es\";\nimport type createClient from \"openapi-fetch\";\nimport type { ParamsOption } from \"openapi-fetch\";\nimport type { TableFetchFn } from \"./types\";\n\ninterface Params {\n\tquery: Record<\n\t\tstring,\n\t\tstring | number | boolean | Record<string, string | number | boolean>\n\t>;\n}\n\ntype Client = ReturnType<typeof createClient<paths>>;\n\n// Helper type to extract valid GET paths\ntype GetPaths = {\n\t[P in keyof paths]: paths[P] extends { get: any } ? P : never;\n}[keyof paths];\n\nexport function createTableFetchFn<_any, Return>(\n\tctxclient: Client,\n\tpath: GetPaths,\n\t// TODO: Use generic type instead\n\tparams?: ParamsOption<any>,\n): TableFetchFn<Return> {\n\treturn async (pagination, sorting, searching) => {\n\t\tconst ab: { params: Params } = {\n\t\t\tparams: {\n\t\t\t\tquery: {\n\t\t\t\t\tpage: pagination.pageIndex + 1,\n\t\t\t\t\tlimit: pagination.pageSize,\n\t\t\t\t\tsort: generateSortParam(sorting[0]),\n\t\t\t\t\tquery: searching,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\n\t\tconst pathParams = merge(ab, params) as { params: Params };\n\n\t\treturn ctxclient.GET(path, pathParams).then((value) => {\n\t\t\tconst rowCount = Number.parseInt(\n\t\t\t\tvalue.response.headers.get(\"Pagination-Count\") || \"0\",\n\t\t\t);\n\t\t\treturn { total: rowCount, data: value.data };\n\t\t});\n\t};\n}\n\nfunction generateSortParam(\n\tsort: { id: string; desc: boolean } | undefined,\n): string {\n\tif (sort) {\n\t\tif (sort.desc) {\n\t\t\treturn `-${sort.id}`;\n\t\t} else {\n\t\t\treturn `+${sort.id}`;\n\t\t}\n\t} else {\n\t\treturn \"-createdAt\";\n\t}\n}\n"],"names":["createTableFetchFn","ctxclient","path","params","pagination","sorting","searching","ab","generateSortParam","pathParams","merge","value","sort"],"mappings":";AAoBO,SAASA,EACfC,GACAC,GAEAC,GACuB;AACvB,SAAO,OAAOC,GAAYC,GAASC,MAAc;AAChD,UAAMC,IAAyB;AAAA,MAC9B,QAAQ;AAAA,QACP,OAAO;AAAA,UACN,MAAMH,EAAW,YAAY;AAAA,UAC7B,OAAOA,EAAW;AAAA,UAClB,MAAMI,EAAkBH,EAAQ,CAAC,CAAC;AAAA,UAClC,OAAOC;AAAA,QAAA;AAAA,MACR;AAAA,IACD,GAGKG,IAAaC,EAAMH,GAAIJ,CAAM;AAEnC,WAAOF,EAAU,IAAIC,GAAMO,CAAU,EAAE,KAAK,CAACE,OAIrC,EAAE,OAHQ,OAAO;AAAA,MACvBA,EAAM,SAAS,QAAQ,IAAI,kBAAkB,KAAK;AAAA,IAAA,GAEzB,MAAMA,EAAM,KAAA,EACtC;AAAA,EAAA;AAEH;AAEA,SAASH,EACRI,GACS;AACT,SAAIA,IACCA,EAAK,OACD,IAAIA,EAAK,EAAE,KAEX,IAAIA,EAAK,EAAE,KAGZ;AAET;"}
@@ -1 +1 @@
1
- {"version":3,"file":"date.es.js","sources":["../../../../lib/components/data-table/table-utils/date.ts"],"sourcesContent":["export function FormatDate(date: string | null | undefined) {\n\tif (!date) return null;\n\tconst _date = new Date(date);\n\treturn new Intl.DateTimeFormat(undefined, {\n\t\tdateStyle: \"medium\",\n\t\ttimeStyle: \"short\",\n\t}).format(_date);\n}\n"],"names":["FormatDate","date","_date"],"mappings":"AAAO,SAASA,EAAWC,GAAiC;AACvD,MAAA,CAACA,EAAa,QAAA;AACZ,QAAAC,IAAQ,IAAI,KAAKD,CAAI;AACpB,SAAA,IAAI,KAAK,eAAe,QAAW;AAAA,IACzC,WAAW;AAAA,IACX,WAAW;AAAA,EAAA,CACX,EAAE,OAAOC,CAAK;AAChB;"}
1
+ {"version":3,"file":"date.es.js","sources":["../../../../lib/components/data-table/table-utils/date.ts"],"sourcesContent":["export function FormatDate(date: string | null | undefined) {\n\tif (!date) return null;\n\tconst _date = new Date(date);\n\treturn new Intl.DateTimeFormat(undefined, {\n\t\tdateStyle: \"medium\",\n\t\ttimeStyle: \"short\",\n\t}).format(_date);\n}\n"],"names":["FormatDate","date","_date"],"mappings":"AAAO,SAASA,EAAWC,GAAiC;AAC3D,MAAI,CAACA,EAAM,QAAO;AAClB,QAAMC,IAAQ,IAAI,KAAKD,CAAI;AAC3B,SAAO,IAAI,KAAK,eAAe,QAAW;AAAA,IACzC,WAAW;AAAA,IACX,WAAW;AAAA,EAAA,CACX,EAAE,OAAOC,CAAK;AAChB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"string.es.js","sources":["../../../../lib/components/data-table/table-utils/string.ts"],"sourcesContent":["/**\n *\n * @param input camelCase\n * @returns title case for the camelCase string\n */\nexport function convertToTitleCase(input: string): string {\n\treturn input\n\t\t.replace(/([A-Z])/g, \" $1\") // Insert space before capital letters\n\t\t.trim() // Remove any leading/trailing spaces\n\t\t.split(\" \") // Split into words\n\t\t.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()) // Capitalize each word\n\t\t.join(\" \"); // Join back into a single string\n}\nexport function pluralizeTimes(resourceName: string, count: number) {\n\tif (count > 1) {\n\t\tif (/y$/.test(resourceName)) {\n\t\t\tif (resourceName === \"Day\") return \"Days\";\n\t\t\treturn resourceName.replace(/y$/, \"ies\");\n\t\t}\n\t\treturn resourceName.concat(\"s\");\n\t}\n\treturn resourceName;\n}\n\n/**\n * Converts a string from 'camelCase' to 'Title Case'\n * @param string String to convert to `Title Case`\n */\nexport function convertCamelCaseToTitleCase(string: string) {\n\tif (string) {\n\t\tconst spacedString = string.replace(/([A-Z])/g, \" $1\");\n\t\treturn spacedString\n\t\t\t.charAt(0)\n\t\t\t.toUpperCase()\n\t\t\t.concat(spacedString.slice(1))\n\t\t\t.replace(/\\.[a-z]/, (substr: string) => {\n\t\t\t\treturn substr.replace(\".\", \" \").toUpperCase();\n\t\t\t});\n\t}\n\treturn string;\n}\n"],"names":["convertToTitleCase","input","word","pluralizeTimes","resourceName","count","convertCamelCaseToTitleCase","string","spacedString","substr"],"mappings":"AAKO,SAASA,EAAmBC,GAAuB;AAClD,SAAAA,EACL,QAAQ,YAAY,KAAK,EACzB,KAAK,EACL,MAAM,GAAG,EACT,IAAI,CAACC,MAASA,EAAK,OAAO,CAAC,EAAE,YAAY,IAAIA,EAAK,MAAM,CAAC,EAAE,YAAY,CAAC,EACxE,KAAK,GAAG;AACX;AACgB,SAAAC,EAAeC,GAAsBC,GAAe;AACnE,SAAIA,IAAQ,IACP,KAAK,KAAKD,CAAY,IACrBA,MAAiB,QAAc,SAC5BA,EAAa,QAAQ,MAAM,KAAK,IAEjCA,EAAa,OAAO,GAAG,IAExBA;AACR;AAMO,SAASE,EAA4BC,GAAgB;AAC3D,MAAIA,GAAQ;AACX,UAAMC,IAAeD,EAAO,QAAQ,YAAY,KAAK;AACrD,WAAOC,EACL,OAAO,CAAC,EACR,YACA,EAAA,OAAOA,EAAa,MAAM,CAAC,CAAC,EAC5B,QAAQ,WAAW,CAACC,MACbA,EAAO,QAAQ,KAAK,GAAG,EAAE,YAAY,CAC5C;AAAA,EAAA;AAEI,SAAAF;AACR;"}
1
+ {"version":3,"file":"string.es.js","sources":["../../../../lib/components/data-table/table-utils/string.ts"],"sourcesContent":["/**\n *\n * @param input camelCase\n * @returns title case for the camelCase string\n */\nexport function convertToTitleCase(input: string): string {\n\treturn input\n\t\t.replace(/([A-Z])/g, \" $1\") // Insert space before capital letters\n\t\t.trim() // Remove any leading/trailing spaces\n\t\t.split(\" \") // Split into words\n\t\t.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()) // Capitalize each word\n\t\t.join(\" \"); // Join back into a single string\n}\nexport function pluralizeTimes(resourceName: string, count: number) {\n\tif (count > 1) {\n\t\tif (/y$/.test(resourceName)) {\n\t\t\tif (resourceName === \"Day\") return \"Days\";\n\t\t\treturn resourceName.replace(/y$/, \"ies\");\n\t\t}\n\t\treturn resourceName.concat(\"s\");\n\t}\n\treturn resourceName;\n}\n\n/**\n * Converts a string from 'camelCase' to 'Title Case'\n * @param string String to convert to `Title Case`\n */\nexport function convertCamelCaseToTitleCase(string: string) {\n\tif (string) {\n\t\tconst spacedString = string.replace(/([A-Z])/g, \" $1\");\n\t\treturn spacedString\n\t\t\t.charAt(0)\n\t\t\t.toUpperCase()\n\t\t\t.concat(spacedString.slice(1))\n\t\t\t.replace(/\\.[a-z]/, (substr: string) => {\n\t\t\t\treturn substr.replace(\".\", \" \").toUpperCase();\n\t\t\t});\n\t}\n\treturn string;\n}\n"],"names":["convertToTitleCase","input","word","pluralizeTimes","resourceName","count","convertCamelCaseToTitleCase","string","spacedString","substr"],"mappings":"AAKO,SAASA,EAAmBC,GAAuB;AACzD,SAAOA,EACL,QAAQ,YAAY,KAAK,EACzB,KAAA,EACA,MAAM,GAAG,EACT,IAAI,CAACC,MAASA,EAAK,OAAO,CAAC,EAAE,YAAA,IAAgBA,EAAK,MAAM,CAAC,EAAE,YAAA,CAAa,EACxE,KAAK,GAAG;AACX;AACO,SAASC,EAAeC,GAAsBC,GAAe;AACnE,SAAIA,IAAQ,IACP,KAAK,KAAKD,CAAY,IACrBA,MAAiB,QAAc,SAC5BA,EAAa,QAAQ,MAAM,KAAK,IAEjCA,EAAa,OAAO,GAAG,IAExBA;AACR;AAMO,SAASE,EAA4BC,GAAgB;AAC3D,MAAIA,GAAQ;AACX,UAAMC,IAAeD,EAAO,QAAQ,YAAY,KAAK;AACrD,WAAOC,EACL,OAAO,CAAC,EACR,cACA,OAAOA,EAAa,MAAM,CAAC,CAAC,EAC5B,QAAQ,WAAW,CAACC,MACbA,EAAO,QAAQ,KAAK,GAAG,EAAE,YAAA,CAChC;AAAA,EAAA;AAEH,SAAOF;AACR;"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.es.js","sources":["../../../../lib/components/data-table/table-utils/types.ts"],"sourcesContent":["import type { components } from \"@cryptlex/web-api-types\";\nimport type { PaginationState, SortingState } from \"@tanstack/react-table\";\n// export type RoutePath = RoutePaths<typeof routeTree>;\nexport type fieldsToDisplay = {\n\tdisplay: string;\n\taccessor: string;\n};\n[];\nexport enum DYNAMIC_INPUT_TARGET {\n\tUSER = 0,\n\tORGANIZATION = 1,\n\tRESELLER = 2,\n}\nexport type VisibilityState<T> = {\n\t[K in keyof T]?: boolean;\n};\nexport type TableActions = {\n\t/** True if reading this resource is allowed. */\n\tread: boolean;\n\n\t/** True if creation of resource from dashboard is allowed. */\n\tcreate: boolean;\n\n\t/** True if the resource can be updated */\n\tupdate: boolean;\n\n\t/** True if the resource can be deleted */\n\tdelete: boolean;\n\n\t/** True if the resource can be exported */\n\texport: boolean;\n\n\t/** True if the resource can be linked to tags. */\n\ttag: boolean;\n\n\t/** True if searching is supported. Search is defined by the `query` QueryParameter in the Web API */\n\tsearch: boolean;\n\n\t/** True if selection using checkboxes is allowed */\n\tselection: boolean;\n\n\t/** True if the resource has support for segments */\n\tsegments: boolean;\n};\n\nexport type MetadataDto = components[\"schemas\"][\"MetadataDto\"];\n\nexport type TableFetchFn<TData> = (\n\tp: PaginationState,\n\ts: SortingState,\n\tq: string,\n\t// f: any,\n) => Promise<{\n\ttotal: number;\n\tdata: TData[] | undefined;\n}>;\n/*** Type for hide some of the columns based on the dto of the particular page\n ** `id`, `updatedAt` are by default hidden\n */\nexport type DefaultVisibilityState<T> = {\n\t[K in keyof T]?: boolean;\n};\n"],"names":["DYNAMIC_INPUT_TARGET"],"mappings":"AAQY,IAAAA,sBAAAA,OACXA,EAAAA,EAAA,OAAO,CAAP,IAAA,QACAA,EAAAA,EAAA,eAAe,CAAf,IAAA,gBACAA,EAAAA,EAAA,WAAW,CAAX,IAAA,YAHWA,IAAAA,KAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"types.es.js","sources":["../../../../lib/components/data-table/table-utils/types.ts"],"sourcesContent":["import type { components } from \"@cryptlex/web-api-types\";\nimport type { PaginationState, SortingState } from \"@tanstack/react-table\";\n// export type RoutePath = RoutePaths<typeof routeTree>;\nexport type fieldsToDisplay = {\n\tdisplay: string;\n\taccessor: string;\n};\n[];\nexport enum DYNAMIC_INPUT_TARGET {\n\tUSER = 0,\n\tORGANIZATION = 1,\n\tRESELLER = 2,\n}\nexport type VisibilityState<T> = {\n\t[K in keyof T]?: boolean;\n};\nexport type TableActions = {\n\t/** True if reading this resource is allowed. */\n\tread: boolean;\n\n\t/** True if creation of resource from dashboard is allowed. */\n\tcreate: boolean;\n\n\t/** True if the resource can be updated */\n\tupdate: boolean;\n\n\t/** True if the resource can be deleted */\n\tdelete: boolean;\n\n\t/** True if the resource can be exported */\n\texport: boolean;\n\n\t/** True if the resource can be linked to tags. */\n\ttag: boolean;\n\n\t/** True if searching is supported. Search is defined by the `query` QueryParameter in the Web API */\n\tsearch: boolean;\n\n\t/** True if selection using checkboxes is allowed */\n\tselection: boolean;\n\n\t/** True if the resource has support for segments */\n\tsegments: boolean;\n};\n\nexport type MetadataDto = components[\"schemas\"][\"MetadataDto\"];\n\nexport type TableFetchFn<TData> = (\n\tp: PaginationState,\n\ts: SortingState,\n\tq: string,\n\t// f: any,\n) => Promise<{\n\ttotal: number;\n\tdata: TData[] | undefined;\n}>;\n/*** Type for hide some of the columns based on the dto of the particular page\n ** `id`, `updatedAt` are by default hidden\n */\nexport type DefaultVisibilityState<T> = {\n\t[K in keyof T]?: boolean;\n};\n"],"names":["DYNAMIC_INPUT_TARGET"],"mappings":"AAQO,IAAKA,sBAAAA,OACXA,EAAAA,EAAA,OAAO,CAAA,IAAP,QACAA,EAAAA,EAAA,eAAe,CAAA,IAAf,gBACAA,EAAAA,EAAA,WAAW,CAAA,IAAX,YAHWA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.es.js","sources":["../../../lib/components/inputs/calendar.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { DayPicker } from \"react-day-picker\";\n\nimport { buttonVariants } from \"@/components/ui/button\";\nimport { cn } from \"@/utils\";\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker>;\n\nexport function Calendar({\n\tclassName,\n\tclassNames,\n\tshowOutsideDays = true,\n\t...props\n}: CalendarProps) {\n\treturn (\n\t\t<DayPicker\n\t\t\tshowOutsideDays={showOutsideDays}\n\t\t\tclassName={cn(\"p-3\", className)}\n\t\t\tclassNames={{\n\t\t\t\tmonths: \"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0\",\n\t\t\t\tmonth: \"space-y-4\",\n\t\t\t\tcaption: \"flex justify-center pt-1 relative items-center\",\n\t\t\t\tcaption_label: \"body font-medium\",\n\t\t\t\tnav: \"space-x-1 flex items-center\",\n\t\t\t\tnav_button: cn(\n\t\t\t\t\tbuttonVariants({ variant: \"outline\" }),\n\t\t\t\t\t\"size-7 bg-transparent p-0 opacity-50 hover:opacity-100\",\n\t\t\t\t),\n\t\t\t\tnav_button_previous: \"absolute left-1\",\n\t\t\t\tnav_button_next: \"absolute right-1\",\n\t\t\t\ttable: \"w-full border-collapse space-y-1\",\n\t\t\t\thead_row: \"flex\",\n\t\t\t\thead_cell:\n\t\t\t\t\t\"text-muted-foreground rounded-md w-8 font-normal text-caption\",\n\t\t\t\trow: \"flex w-full mt-2\",\n\t\t\t\tcell: cn(\n\t\t\t\t\t\"relative p-0 text-center body focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected].day-range-end)]:rounded-r-md\",\n\t\t\t\t\tprops.mode === \"range\"\n\t\t\t\t\t\t? \"[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md\"\n\t\t\t\t\t\t: \"[&:has([aria-selected])]:rounded-md\",\n\t\t\t\t),\n\t\t\t\tday: cn(\n\t\t\t\t\tbuttonVariants({ variant: \"ghost\" }),\n\t\t\t\t\t\"size-8 p-0 font-normal aria-selected:opacity-100\",\n\t\t\t\t),\n\t\t\t\tday_range_start: \"day-range-start\",\n\t\t\t\tday_range_end: \"day-range-end\",\n\t\t\t\tday_selected:\n\t\t\t\t\t\"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground\",\n\t\t\t\tday_today: \"bg-accent text-accent-foreground\",\n\t\t\t\tday_outside:\n\t\t\t\t\t\"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30\",\n\t\t\t\tday_disabled: \"text-muted-foreground opacity-50\",\n\t\t\t\tday_range_middle:\n\t\t\t\t\t\"aria-selected:bg-accent aria-selected:text-accent-foreground\",\n\t\t\t\tday_hidden: \"invisible\",\n\t\t\t\t...classNames,\n\t\t\t}}\n\t\t\tcomponents={{\n\t\t\t\t// IconLeft: () => <ChevronLeft className=\"size-4\" />,\n\t\t\t\t// IconRight: () => <ChevronRight className=\"size-4\" />,\n\t\t\t}}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\n"],"names":["Calendar","className","classNames","showOutsideDays","props","jsx","DayPicker","cn","buttonVariants"],"mappings":";;;;AAQO,SAASA,EAAS;AAAA,EACxB,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,GAAGC;AACJ,GAAkB;AAEhB,SAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,iBAAAH;AAAA,MACA,WAAWI,EAAG,OAAON,CAAS;AAAA,MAC9B,YAAY;AAAA,QACX,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,SAAS;AAAA,QACT,eAAe;AAAA,QACf,KAAK;AAAA,QACL,YAAYM;AAAA,UACXC,EAAe,EAAE,SAAS,WAAW;AAAA,UACrC;AAAA,QACD;AAAA,QACA,qBAAqB;AAAA,QACrB,iBAAiB;AAAA,QACjB,OAAO;AAAA,QACP,UAAU;AAAA,QACV,WACC;AAAA,QACD,KAAK;AAAA,QACL,MAAMD;AAAA,UACL;AAAA,UACAH,EAAM,SAAS,UACZ,yKACA;AAAA,QACJ;AAAA,QACA,KAAKG;AAAA,UACJC,EAAe,EAAE,SAAS,SAAS;AAAA,UACnC;AAAA,QACD;AAAA,QACA,iBAAiB;AAAA,QACjB,eAAe;AAAA,QACf,cACC;AAAA,QACD,WAAW;AAAA,QACX,aACC;AAAA,QACD,cAAc;AAAA,QACd,kBACC;AAAA,QACD,YAAY;AAAA,QACZ,GAAGN;AAAA,MACJ;AAAA,MACA,YAAY;AAAA;AAAA;AAAA,MAGZ;AAAA,MACC,GAAGE;AAAA,IAAA;AAAA,EACL;AAEF;"}
1
+ {"version":3,"file":"calendar.es.js","sources":["../../../lib/components/inputs/calendar.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { DayPicker } from \"react-day-picker\";\n\nimport { buttonVariants } from \"@/components/ui/button\";\nimport { cn } from \"@/utils\";\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker>;\n\nexport function Calendar({\n\tclassName,\n\tclassNames,\n\tshowOutsideDays = true,\n\t...props\n}: CalendarProps) {\n\treturn (\n\t\t<DayPicker\n\t\t\tshowOutsideDays={showOutsideDays}\n\t\t\tclassName={cn(\"p-3\", className)}\n\t\t\tclassNames={{\n\t\t\t\tmonths: \"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0\",\n\t\t\t\tmonth: \"space-y-4\",\n\t\t\t\tcaption: \"flex justify-center pt-1 relative items-center\",\n\t\t\t\tcaption_label: \"body font-medium\",\n\t\t\t\tnav: \"space-x-1 flex items-center\",\n\t\t\t\tnav_button: cn(\n\t\t\t\t\tbuttonVariants({ variant: \"outline\" }),\n\t\t\t\t\t\"size-7 bg-transparent p-0 opacity-50 hover:opacity-100\",\n\t\t\t\t),\n\t\t\t\tnav_button_previous: \"absolute left-1\",\n\t\t\t\tnav_button_next: \"absolute right-1\",\n\t\t\t\ttable: \"w-full border-collapse space-y-1\",\n\t\t\t\thead_row: \"flex\",\n\t\t\t\thead_cell:\n\t\t\t\t\t\"text-muted-foreground rounded-md w-8 font-normal text-caption\",\n\t\t\t\trow: \"flex w-full mt-2\",\n\t\t\t\tcell: cn(\n\t\t\t\t\t\"relative p-0 text-center body focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-accent [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected].day-range-end)]:rounded-r-md\",\n\t\t\t\t\tprops.mode === \"range\"\n\t\t\t\t\t\t? \"[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md\"\n\t\t\t\t\t\t: \"[&:has([aria-selected])]:rounded-md\",\n\t\t\t\t),\n\t\t\t\tday: cn(\n\t\t\t\t\tbuttonVariants({ variant: \"ghost\" }),\n\t\t\t\t\t\"size-8 p-0 font-normal aria-selected:opacity-100\",\n\t\t\t\t),\n\t\t\t\tday_range_start: \"day-range-start\",\n\t\t\t\tday_range_end: \"day-range-end\",\n\t\t\t\tday_selected:\n\t\t\t\t\t\"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground\",\n\t\t\t\tday_today: \"bg-accent text-accent-foreground\",\n\t\t\t\tday_outside:\n\t\t\t\t\t\"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30\",\n\t\t\t\tday_disabled: \"text-muted-foreground opacity-50\",\n\t\t\t\tday_range_middle:\n\t\t\t\t\t\"aria-selected:bg-accent aria-selected:text-accent-foreground\",\n\t\t\t\tday_hidden: \"invisible\",\n\t\t\t\t...classNames,\n\t\t\t}}\n\t\t\tcomponents={{\n\t\t\t\t// IconLeft: () => <ChevronLeft className=\"size-4\" />,\n\t\t\t\t// IconRight: () => <ChevronRight className=\"size-4\" />,\n\t\t\t}}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\n"],"names":["Calendar","className","classNames","showOutsideDays","props","jsx","DayPicker","cn","buttonVariants"],"mappings":";;;;AAQO,SAASA,EAAS;AAAA,EACxB,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,GAAGC;AACJ,GAAkB;AACjB,SACC,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,iBAAAH;AAAA,MACA,WAAWI,EAAG,OAAON,CAAS;AAAA,MAC9B,YAAY;AAAA,QACX,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,SAAS;AAAA,QACT,eAAe;AAAA,QACf,KAAK;AAAA,QACL,YAAYM;AAAA,UACXC,EAAe,EAAE,SAAS,WAAW;AAAA,UACrC;AAAA,QAAA;AAAA,QAED,qBAAqB;AAAA,QACrB,iBAAiB;AAAA,QACjB,OAAO;AAAA,QACP,UAAU;AAAA,QACV,WACC;AAAA,QACD,KAAK;AAAA,QACL,MAAMD;AAAA,UACL;AAAA,UACAH,EAAM,SAAS,UACZ,yKACA;AAAA,QAAA;AAAA,QAEJ,KAAKG;AAAA,UACJC,EAAe,EAAE,SAAS,SAAS;AAAA,UACnC;AAAA,QAAA;AAAA,QAED,iBAAiB;AAAA,QACjB,eAAe;AAAA,QACf,cACC;AAAA,QACD,WAAW;AAAA,QACX,aACC;AAAA,QACD,cAAc;AAAA,QACd,kBACC;AAAA,QACD,YAAY;AAAA,QACZ,GAAGN;AAAA,MAAA;AAAA,MAEJ,YAAY;AAAA;AAAA;AAAA,MAAA;AAAA,MAIX,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -8,7 +8,7 @@ function a({ className: n, checked: e, ...r }) {
8
8
  checked: e,
9
9
  type: "checkbox",
10
10
  className: t(
11
- "appearance-none size-input border border-input bg-card checked:bg-accent rounded-none focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
11
+ "appearance-none size-input border border-input bg-card checked:bg-primary rounded-none focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
12
12
  n
13
13
  ),
14
14
  ...r
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.es.js","sources":["../../../lib/components/inputs/checkbox.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { useFieldContext } from \"@/utils/form-context\";\nimport type * as React from \"react\";\n\nexport interface CheckboxProps\n\textends Omit<React.ComponentProps<\"input\">, \"type\" | \"value\"> { }\n\nexport function Checkbox({ className, checked, ...props }: CheckboxProps) {\n\treturn (\n\t\t<>\n\t\t\t<input\n\t\t\t\tchecked={checked}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"appearance-none size-input border border-input bg-card checked:bg-accent rounded-none focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport interface TfCheckboxProps\n\textends Omit<\n\t\tReact.ComponentProps<typeof Checkbox>,\n\t\t\"onChange\" | \"onBlur\" | \"checked\"\n\t> { }\nexport function TfCheckbox({ ...props }: TfCheckboxProps) {\n\tconst field = useFieldContext<boolean>();\n\n\treturn (\n\t\t<Checkbox\n\t\t\tchecked={field.state.value}\n\t\t\tonChange={() => field.handleChange(!field.state.value)}\n\t\t\tonBlur={field.handleBlur}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\n"],"names":["Checkbox","className","checked","props","jsx","Fragment","cn","TfCheckbox","field","useFieldContext"],"mappings":";;;AAOO,SAASA,EAAS,EAAE,WAAAC,GAAW,SAAAC,GAAS,GAAGC,KAAwB;AACzE,SAEE,gBAAAC,EAAAC,GAAA,EAAA,UAAA,gBAAAD;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,SAAAF;AAAA,MACA,MAAK;AAAA,MACL,WAAWI;AAAA,QACV;AAAA,QACAL;AAAA,MACD;AAAA,MACC,GAAGE;AAAA,IAAA;AAAA,EAAA,GAEN;AAEF;AAOO,SAASI,EAAW,EAAE,GAAGJ,KAA0B;AACzD,QAAMK,IAAQC,EAAyB;AAGtC,SAAA,gBAAAL;AAAA,IAACJ;AAAA,IAAA;AAAA,MACA,SAASQ,EAAM,MAAM;AAAA,MACrB,UAAU,MAAMA,EAAM,aAAa,CAACA,EAAM,MAAM,KAAK;AAAA,MACrD,QAAQA,EAAM;AAAA,MACb,GAAGL;AAAA,IAAA;AAAA,EACL;AAEF;"}
1
+ {"version":3,"file":"checkbox.es.js","sources":["../../../lib/components/inputs/checkbox.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { useFieldContext } from \"@/utils/form-context\";\nimport type * as React from \"react\";\n\nexport interface CheckboxProps\n\textends Omit<React.ComponentProps<\"input\">, \"type\" | \"value\"> { }\n\nexport function Checkbox({ className, checked, ...props }: CheckboxProps) {\n\treturn (\n\t\t<>\n\t\t\t<input\n\t\t\t\tchecked={checked}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"appearance-none size-input border border-input bg-card checked:bg-primary rounded-none focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport interface TfCheckboxProps\n\textends Omit<\n\t\tReact.ComponentProps<typeof Checkbox>,\n\t\t\"onChange\" | \"onBlur\" | \"checked\"\n\t> { }\nexport function TfCheckbox({ ...props }: TfCheckboxProps) {\n\tconst field = useFieldContext<boolean>();\n\n\treturn (\n\t\t<Checkbox\n\t\t\tchecked={field.state.value}\n\t\t\tonChange={() => field.handleChange(!field.state.value)}\n\t\t\tonBlur={field.handleBlur}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\n"],"names":["Checkbox","className","checked","props","jsx","Fragment","cn","TfCheckbox","field","useFieldContext"],"mappings":";;;AAOO,SAASA,EAAS,EAAE,WAAAC,GAAW,SAAAC,GAAS,GAAGC,KAAwB;AACzE,SACC,gBAAAC,EAAAC,GAAA,EACC,UAAA,gBAAAD;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,SAAAF;AAAA,MACA,MAAK;AAAA,MACL,WAAWI;AAAA,QACV;AAAA,QACAL;AAAA,MAAA;AAAA,MAEA,GAAGE;AAAA,IAAA;AAAA,EAAA,GAEN;AAEF;AAOO,SAASI,EAAW,EAAE,GAAGJ,KAA0B;AACzD,QAAMK,IAAQC,EAAA;AAEd,SACC,gBAAAL;AAAA,IAACJ;AAAA,IAAA;AAAA,MACA,SAASQ,EAAM,MAAM;AAAA,MACrB,UAAU,MAAMA,EAAM,aAAa,CAACA,EAAM,MAAM,KAAK;AAAA,MACrD,QAAQA,EAAM;AAAA,MACb,GAAGL;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -1 +1 @@
1
- {"version":3,"file":"country-select.es.js","sources":["../../../lib/components/inputs/country-select.tsx"],"sourcesContent":["import {\n\tMultiSelect,\n\tTfMultiSelect,\n\ttype MultiSelectProps,\n\ttype TfMultiSelectProps,\n} from \"@/components/inputs/multi-select\";\n\n/**\n * Creates Unicode flag from a two-letter ISO country code.\n * https://stackoverflow.com/questions/24050671/how-to-put-japan-flag-character-in-a-string\n * @param {string} country — A two-letter ISO country code (case-insensitive).\n * @return {string}\n */\nfunction getCountryFlag(country: string) {\n\tfunction getRegionalIndicatorSymbol(letter: string) {\n\t\treturn String.fromCodePoint(\n\t\t\t0x1f1e6 - 65 + letter.toUpperCase().charCodeAt(0),\n\t\t);\n\t}\n\n\treturn (\n\t\tgetRegionalIndicatorSymbol(country[0]) +\n\t\tgetRegionalIndicatorSymbol(country[1])\n\t);\n}\n\nconst ALL_COUNTRIES: { [key: string]: string } = {\n\tAF: \"Afghanistan\",\n\tAX: \"Åland Islands\",\n\tAL: \"Albania\",\n\tDZ: \"Algeria\",\n\tAS: \"American Samoa\",\n\tAD: \"Andorra\",\n\tAO: \"Angola\",\n\tAI: \"Anguilla\",\n\tAQ: \"Antarctica\",\n\tAG: \"Antigua and Barbuda\",\n\tAR: \"Argentina\",\n\tAM: \"Armenia\",\n\tAW: \"Aruba\",\n\tAU: \"Australia\",\n\tAT: \"Austria\",\n\tAZ: \"Azerbaijan\",\n\tBS: \"Bahamas\",\n\tBH: \"Bahrain\",\n\tBD: \"Bangladesh\",\n\tBB: \"Barbados\",\n\tBY: \"Belarus\",\n\tBE: \"Belgium\",\n\tBZ: \"Belize\",\n\tBJ: \"Benin\",\n\tBM: \"Bermuda\",\n\tBT: \"Bhutan\",\n\tBO: \"Bolivia (Plurinational State of)\",\n\tBQ: \"Bonaire, Sint Eustatius and Saba\",\n\tBA: \"Bosnia and Herzegovina\",\n\tBW: \"Botswana\",\n\tBV: \"Bouvet Island\",\n\tBR: \"Brazil\",\n\tIO: \"British Indian Ocean Territory\",\n\tBN: \"Brunei Darussalam\",\n\tBG: \"Bulgaria\",\n\tBF: \"Burkina Faso\",\n\tBI: \"Burundi\",\n\tCV: \"Caboe Verde\",\n\tKH: \"Cambodia\",\n\tCM: \"Cameroon\",\n\tCA: \"Canada\",\n\tKY: \"Cayman Islands\",\n\tCF: \"Central African Republic\",\n\tTD: \"Chad\",\n\tCL: \"Chile\",\n\tCN: \"China\",\n\tCX: \"Christmas Island\",\n\tCC: \"Cocos (Keeling) Islands\",\n\tCO: \"Colombia\",\n\tKM: \"Comoros\",\n\tCG: \"Congo\",\n\tCD: \"Congo, Democratic Republic of the\",\n\tCK: \"Cook Islands\",\n\tCR: \"Costa Rica\",\n\tCI: \"Côte d'voire\",\n\tHR: \"Croatia\",\n\tCU: \"Cuba\",\n\tCW: \"Curaçao\",\n\tCY: \"Cyprus\",\n\tCZ: \"Czechia\",\n\tDK: \"Denmark\",\n\tDJ: \"Djibouti\",\n\tDM: \"Dominica\",\n\tDO: \"Dominican Republic\",\n\tEC: \"Ecuador\",\n\tEG: \"Egypt\",\n\tSV: \"El Salvador\",\n\tGQ: \"Equatorial Guinea\",\n\tER: \"Eritrea\",\n\tEE: \"Estonia\",\n\tSZ: \"Eswatini\",\n\tET: \"Ethiopia\",\n\tFK: \"Falkland Islands (Malvinas)\",\n\tFO: \"Faroe Islands\",\n\tFJ: \"Fiji\",\n\tFI: \"Finland\",\n\tFR: \"France\",\n\tGF: \"French Guiana\",\n\tPF: \"French Polynesia\",\n\tTF: \"French Southern Territories\",\n\tGA: \"Gabon\",\n\tGM: \"Gambia\",\n\tGE: \"Georgia\",\n\tDE: \"Germany\",\n\tGH: \"Ghana\",\n\tGI: \"Gibraltar\",\n\tGR: \"Greece\",\n\tGL: \"Greenland\",\n\tGD: \"Grenada\",\n\tGP: \"Guadeloupe\",\n\tGU: \"Guam\",\n\tGT: \"Guatemala\",\n\tGG: \"Guernsey\",\n\tGN: \"Guinea\",\n\tGW: \"Guinea-Bissau\",\n\tGY: \"Guyana\",\n\tHT: \"Haiti\",\n\tHM: \"Heard Island and Mcdonald Islands\",\n\tVA: \"Holy See\",\n\tHN: \"Honduras\",\n\tHK: \"Hong Kong\",\n\tHU: \"Hungary\",\n\tIS: \"Iceland\",\n\tIN: \"India\",\n\tID: \"Indonesia\",\n\tIR: \"Iran (Islamic Republic of)\",\n\tIQ: \"Iraq\",\n\tIE: \"Ireland\",\n\tIM: \"Isle of Man\",\n\tIL: \"Israel\",\n\tIT: \"Italy\",\n\tJM: \"Jamaica\",\n\tJP: \"Japan\",\n\tJE: \"Jersey\",\n\tJO: \"Jordan\",\n\tKZ: \"Kazakhstan\",\n\tKE: \"Kenya\",\n\tKI: \"Kiribati\",\n\tKP: \"Korea (Democratic People's Republic of)\",\n\tKR: \"Korea (Republic of)\",\n\tKW: \"Kuwait\",\n\tKG: \"Kyrgyzstan\",\n\tLA: \"Lao People's Democratic Republic\",\n\tLV: \"Latvia\",\n\tLB: \"Lebanon\",\n\tLS: \"Lesotho\",\n\tLR: \"Liberia\",\n\tLY: \"Libya\",\n\tLI: \"Liechtenstein\",\n\tLT: \"Lithuania\",\n\tLU: \"Luxembourg\",\n\tMO: \"Macao\",\n\tMG: \"Madagascar\",\n\tMW: \"Malawi\",\n\tMY: \"Malaysia\",\n\tMV: \"Maldives\",\n\tML: \"Mali\",\n\tMT: \"Malta\",\n\tMH: \"Marshall Islands\",\n\tMQ: \"Martinique\",\n\tMR: \"Mauritania\",\n\tMU: \"Mauritius\",\n\tYT: \"Mayotte\",\n\tMX: \"Mexico\",\n\tFM: \"Micronesia (Federated States of)\",\n\tMD: \"Moldova, Republic of\",\n\tMC: \"Monaco\",\n\tMN: \"Mongolia\",\n\tME: \"Montenegro\",\n\tMS: \"Montserrat\",\n\tMA: \"Morocco\",\n\tMZ: \"Mozambique\",\n\tMM: \"Myanmar\",\n\tNA: \"Namibia\",\n\tNR: \"Nauru\",\n\tNP: \"Nepal\",\n\tNL: \"Netherlands, Kingdom of the\",\n\tNC: \"New Caledonia\",\n\tNZ: \"New Zealand\",\n\tNI: \"Nicaragua\",\n\tNE: \"Niger\",\n\tNG: \"Nigeria\",\n\tNU: \"Niue\",\n\tNF: \"Norfolk Island\",\n\tMK: \"North Macedonia\",\n\tMP: \"Northern Mariana Islands\",\n\tNO: \"Norway\",\n\tOM: \"Oman\",\n\tPK: \"Pakistan\",\n\tPW: \"Palau\",\n\tPS: \"Palestine, State of\",\n\tPA: \"Panama\",\n\tPG: \"Papua New Guinea\",\n\tPY: \"Paraguay\",\n\tPE: \"Peru\",\n\tPH: \"Philippines\",\n\tPN: \"Pitcairn\",\n\tPL: \"Poland\",\n\tPT: \"Portugal\",\n\tPR: \"Puerto Rico\",\n\tQA: \"Qatar\",\n\tRE: \"Réunion\",\n\tRO: \"Romania\",\n\tRU: \"Russian Federation\",\n\tRW: \"Rwanda\",\n\tBL: \"Saint Barthélemy\",\n\tSH: \"Saint Helena, Ascension Island, Tristan da Cunha\",\n\tKN: \"Saint Kitts and Nevis\",\n\tLC: \"Saint Lucia\",\n\tMF: \"Saint Martin (French part)\",\n\tPM: \"Saint Pierre and Miquelon\",\n\tVC: \"Saint Vincent and the Grenadines\",\n\tWS: \"Samoa\",\n\tSM: \"San Marino\",\n\tST: \"Sao Tome and Principe\",\n\tSA: \"Saudi Arabia\",\n\tSN: \"Senegal\",\n\tRS: \"Serbia\",\n\tSC: \"Seychelles\",\n\tSL: \"Sierra Leone\",\n\tSG: \"Singapore\",\n\tSX: \"Sint Maarten (Dutch part)\",\n\tSK: \"Slovakia\",\n\tSI: \"Slovenia\",\n\tSB: \"Solomon Islands\",\n\tSO: \"Somalia\",\n\tZA: \"South Africa\",\n\tGS: \"South Georgia and the South Sandwich Islands\",\n\tSS: \"South Sudan\",\n\tES: \"Spain\",\n\tLK: \"Sri Lanka\",\n\tSD: \"Sudan\",\n\tSR: \"Suriname\",\n\tSJ: \"Svalbard and Jan Mayen\",\n\tSE: \"Sweden\",\n\tCH: \"Switzerland\",\n\tSY: \"Syrian Arab Republic\",\n\tTW: \"Taiwan, Province of China\",\n\tTJ: \"Tajikistan\",\n\tTZ: \"Tanzania, United Republic of\",\n\tTH: \"Thailand\",\n\tTL: \"Timor-Leste\",\n\tTG: \"Togo\",\n\tTK: \"Tokelau\",\n\tTO: \"Tonga\",\n\tTT: \"Trinidad and Tobago\",\n\tTN: \"Tunisia\",\n\tTR: \"Türkiye\",\n\tTM: \"Turkmenistan\",\n\tTC: \"Turks and Caicos Islands\",\n\tTV: \"Tuvalu\",\n\tUG: \"Uganda\",\n\tUA: \"Ukraine\",\n\tAE: \"United Arab Emirates\",\n\tGB: \"United Kingdom of Great Britain and Northern Ireland\",\n\tUM: \"United States Minor Outlying Islands\",\n\tUS: \"United States of America\",\n\tUY: \"Uruguay\",\n\tUZ: \"Uzbekistan\",\n\tVU: \"Vanuatu\",\n\tVE: \"Venezuela (Bolivarian Republic of)\",\n\tVN: \"Viet Nam\",\n\tVG: \"Virgin Islands (British)\",\n\tVI: \"Virgin Islands (U.S)\",\n\tWF: \"Wallis and Futuna\",\n\tEH: \"Western Sahara\",\n\tYE: \"Yemen\",\n\tZM: \"Zambia\",\n\tZW: \"Zimbabwe\",\n};\n\n/** Options for MultiSelect component */\nconst options = Object.entries(ALL_COUNTRIES).map((v) => {\n\treturn {\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{getCountryFlag(v[0])} {v[1]}\n\t\t\t</>\n\t\t),\n\t\tvalue: v[0],\n\t};\n});\n\nexport function CountrySelect({\n\t...props\n}: Omit<MultiSelectProps, \"options\">) {\n\treturn <MultiSelect {...props} options={options} />;\n};\n\nexport function TfCountrySelect({\n\t...props\n}: Omit<TfMultiSelectProps, \"options\">) {\n\treturn <TfMultiSelect {...props} options={options} />;\n};\n"],"names":["getCountryFlag","country","getRegionalIndicatorSymbol","letter","ALL_COUNTRIES","options","v","jsxs","Fragment","CountrySelect","props","jsx","MultiSelect","TfCountrySelect","TfMultiSelect"],"mappings":";;AAaA,SAASA,EAAeC,GAAiB;AACxC,WAASC,EAA2BC,GAAgB;AACnD,WAAO,OAAO;AAAA,MACb,SAAeA,EAAO,YAAY,EAAE,WAAW,CAAC;AAAA,IACjD;AAAA,EAAA;AAIA,SAAAD,EAA2BD,EAAQ,CAAC,CAAC,IACrCC,EAA2BD,EAAQ,CAAC,CAAC;AAEvC;AAEA,MAAMG,IAA2C;AAAA,EAChD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACL,GAGMC,IAAU,OAAO,QAAQD,CAAa,EAAE,IAAI,CAACE,OAC3C;AAAA,EACN,OAEG,gBAAAC,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAeR,EAAAM,EAAE,CAAC,CAAC;AAAA,IAAE;AAAA,IAAEA,EAAE,CAAC;AAAA,EAAA,GAC5B;AAAA,EAED,OAAOA,EAAE,CAAC;AACX,EACA;AAEM,SAASG,EAAc;AAAA,EAC7B,GAAGC;AACJ,GAAsC;AACrC,SAAQ,gBAAAC,EAAAC,GAAA,EAAa,GAAGF,GAAO,SAAAL,EAAkB,CAAA;AAClD;AAEO,SAASQ,EAAgB;AAAA,EAC/B,GAAGH;AACJ,GAAwC;AACvC,SAAQ,gBAAAC,EAAAG,GAAA,EAAe,GAAGJ,GAAO,SAAAL,EAAkB,CAAA;AACpD;"}
1
+ {"version":3,"file":"country-select.es.js","sources":["../../../lib/components/inputs/country-select.tsx"],"sourcesContent":["import {\n\tMultiSelect,\n\tTfMultiSelect,\n\ttype MultiSelectProps,\n\ttype TfMultiSelectProps,\n} from \"@/components/inputs/multi-select\";\n\n/**\n * Creates Unicode flag from a two-letter ISO country code.\n * https://stackoverflow.com/questions/24050671/how-to-put-japan-flag-character-in-a-string\n * @param {string} country — A two-letter ISO country code (case-insensitive).\n * @return {string}\n */\nfunction getCountryFlag(country: string) {\n\tfunction getRegionalIndicatorSymbol(letter: string) {\n\t\treturn String.fromCodePoint(\n\t\t\t0x1f1e6 - 65 + letter.toUpperCase().charCodeAt(0),\n\t\t);\n\t}\n\n\treturn (\n\t\tgetRegionalIndicatorSymbol(country[0]) +\n\t\tgetRegionalIndicatorSymbol(country[1])\n\t);\n}\n\nconst ALL_COUNTRIES: { [key: string]: string } = {\n\tAF: \"Afghanistan\",\n\tAX: \"Åland Islands\",\n\tAL: \"Albania\",\n\tDZ: \"Algeria\",\n\tAS: \"American Samoa\",\n\tAD: \"Andorra\",\n\tAO: \"Angola\",\n\tAI: \"Anguilla\",\n\tAQ: \"Antarctica\",\n\tAG: \"Antigua and Barbuda\",\n\tAR: \"Argentina\",\n\tAM: \"Armenia\",\n\tAW: \"Aruba\",\n\tAU: \"Australia\",\n\tAT: \"Austria\",\n\tAZ: \"Azerbaijan\",\n\tBS: \"Bahamas\",\n\tBH: \"Bahrain\",\n\tBD: \"Bangladesh\",\n\tBB: \"Barbados\",\n\tBY: \"Belarus\",\n\tBE: \"Belgium\",\n\tBZ: \"Belize\",\n\tBJ: \"Benin\",\n\tBM: \"Bermuda\",\n\tBT: \"Bhutan\",\n\tBO: \"Bolivia (Plurinational State of)\",\n\tBQ: \"Bonaire, Sint Eustatius and Saba\",\n\tBA: \"Bosnia and Herzegovina\",\n\tBW: \"Botswana\",\n\tBV: \"Bouvet Island\",\n\tBR: \"Brazil\",\n\tIO: \"British Indian Ocean Territory\",\n\tBN: \"Brunei Darussalam\",\n\tBG: \"Bulgaria\",\n\tBF: \"Burkina Faso\",\n\tBI: \"Burundi\",\n\tCV: \"Caboe Verde\",\n\tKH: \"Cambodia\",\n\tCM: \"Cameroon\",\n\tCA: \"Canada\",\n\tKY: \"Cayman Islands\",\n\tCF: \"Central African Republic\",\n\tTD: \"Chad\",\n\tCL: \"Chile\",\n\tCN: \"China\",\n\tCX: \"Christmas Island\",\n\tCC: \"Cocos (Keeling) Islands\",\n\tCO: \"Colombia\",\n\tKM: \"Comoros\",\n\tCG: \"Congo\",\n\tCD: \"Congo, Democratic Republic of the\",\n\tCK: \"Cook Islands\",\n\tCR: \"Costa Rica\",\n\tCI: \"Côte d'voire\",\n\tHR: \"Croatia\",\n\tCU: \"Cuba\",\n\tCW: \"Curaçao\",\n\tCY: \"Cyprus\",\n\tCZ: \"Czechia\",\n\tDK: \"Denmark\",\n\tDJ: \"Djibouti\",\n\tDM: \"Dominica\",\n\tDO: \"Dominican Republic\",\n\tEC: \"Ecuador\",\n\tEG: \"Egypt\",\n\tSV: \"El Salvador\",\n\tGQ: \"Equatorial Guinea\",\n\tER: \"Eritrea\",\n\tEE: \"Estonia\",\n\tSZ: \"Eswatini\",\n\tET: \"Ethiopia\",\n\tFK: \"Falkland Islands (Malvinas)\",\n\tFO: \"Faroe Islands\",\n\tFJ: \"Fiji\",\n\tFI: \"Finland\",\n\tFR: \"France\",\n\tGF: \"French Guiana\",\n\tPF: \"French Polynesia\",\n\tTF: \"French Southern Territories\",\n\tGA: \"Gabon\",\n\tGM: \"Gambia\",\n\tGE: \"Georgia\",\n\tDE: \"Germany\",\n\tGH: \"Ghana\",\n\tGI: \"Gibraltar\",\n\tGR: \"Greece\",\n\tGL: \"Greenland\",\n\tGD: \"Grenada\",\n\tGP: \"Guadeloupe\",\n\tGU: \"Guam\",\n\tGT: \"Guatemala\",\n\tGG: \"Guernsey\",\n\tGN: \"Guinea\",\n\tGW: \"Guinea-Bissau\",\n\tGY: \"Guyana\",\n\tHT: \"Haiti\",\n\tHM: \"Heard Island and Mcdonald Islands\",\n\tVA: \"Holy See\",\n\tHN: \"Honduras\",\n\tHK: \"Hong Kong\",\n\tHU: \"Hungary\",\n\tIS: \"Iceland\",\n\tIN: \"India\",\n\tID: \"Indonesia\",\n\tIR: \"Iran (Islamic Republic of)\",\n\tIQ: \"Iraq\",\n\tIE: \"Ireland\",\n\tIM: \"Isle of Man\",\n\tIL: \"Israel\",\n\tIT: \"Italy\",\n\tJM: \"Jamaica\",\n\tJP: \"Japan\",\n\tJE: \"Jersey\",\n\tJO: \"Jordan\",\n\tKZ: \"Kazakhstan\",\n\tKE: \"Kenya\",\n\tKI: \"Kiribati\",\n\tKP: \"Korea (Democratic People's Republic of)\",\n\tKR: \"Korea (Republic of)\",\n\tKW: \"Kuwait\",\n\tKG: \"Kyrgyzstan\",\n\tLA: \"Lao People's Democratic Republic\",\n\tLV: \"Latvia\",\n\tLB: \"Lebanon\",\n\tLS: \"Lesotho\",\n\tLR: \"Liberia\",\n\tLY: \"Libya\",\n\tLI: \"Liechtenstein\",\n\tLT: \"Lithuania\",\n\tLU: \"Luxembourg\",\n\tMO: \"Macao\",\n\tMG: \"Madagascar\",\n\tMW: \"Malawi\",\n\tMY: \"Malaysia\",\n\tMV: \"Maldives\",\n\tML: \"Mali\",\n\tMT: \"Malta\",\n\tMH: \"Marshall Islands\",\n\tMQ: \"Martinique\",\n\tMR: \"Mauritania\",\n\tMU: \"Mauritius\",\n\tYT: \"Mayotte\",\n\tMX: \"Mexico\",\n\tFM: \"Micronesia (Federated States of)\",\n\tMD: \"Moldova, Republic of\",\n\tMC: \"Monaco\",\n\tMN: \"Mongolia\",\n\tME: \"Montenegro\",\n\tMS: \"Montserrat\",\n\tMA: \"Morocco\",\n\tMZ: \"Mozambique\",\n\tMM: \"Myanmar\",\n\tNA: \"Namibia\",\n\tNR: \"Nauru\",\n\tNP: \"Nepal\",\n\tNL: \"Netherlands, Kingdom of the\",\n\tNC: \"New Caledonia\",\n\tNZ: \"New Zealand\",\n\tNI: \"Nicaragua\",\n\tNE: \"Niger\",\n\tNG: \"Nigeria\",\n\tNU: \"Niue\",\n\tNF: \"Norfolk Island\",\n\tMK: \"North Macedonia\",\n\tMP: \"Northern Mariana Islands\",\n\tNO: \"Norway\",\n\tOM: \"Oman\",\n\tPK: \"Pakistan\",\n\tPW: \"Palau\",\n\tPS: \"Palestine, State of\",\n\tPA: \"Panama\",\n\tPG: \"Papua New Guinea\",\n\tPY: \"Paraguay\",\n\tPE: \"Peru\",\n\tPH: \"Philippines\",\n\tPN: \"Pitcairn\",\n\tPL: \"Poland\",\n\tPT: \"Portugal\",\n\tPR: \"Puerto Rico\",\n\tQA: \"Qatar\",\n\tRE: \"Réunion\",\n\tRO: \"Romania\",\n\tRU: \"Russian Federation\",\n\tRW: \"Rwanda\",\n\tBL: \"Saint Barthélemy\",\n\tSH: \"Saint Helena, Ascension Island, Tristan da Cunha\",\n\tKN: \"Saint Kitts and Nevis\",\n\tLC: \"Saint Lucia\",\n\tMF: \"Saint Martin (French part)\",\n\tPM: \"Saint Pierre and Miquelon\",\n\tVC: \"Saint Vincent and the Grenadines\",\n\tWS: \"Samoa\",\n\tSM: \"San Marino\",\n\tST: \"Sao Tome and Principe\",\n\tSA: \"Saudi Arabia\",\n\tSN: \"Senegal\",\n\tRS: \"Serbia\",\n\tSC: \"Seychelles\",\n\tSL: \"Sierra Leone\",\n\tSG: \"Singapore\",\n\tSX: \"Sint Maarten (Dutch part)\",\n\tSK: \"Slovakia\",\n\tSI: \"Slovenia\",\n\tSB: \"Solomon Islands\",\n\tSO: \"Somalia\",\n\tZA: \"South Africa\",\n\tGS: \"South Georgia and the South Sandwich Islands\",\n\tSS: \"South Sudan\",\n\tES: \"Spain\",\n\tLK: \"Sri Lanka\",\n\tSD: \"Sudan\",\n\tSR: \"Suriname\",\n\tSJ: \"Svalbard and Jan Mayen\",\n\tSE: \"Sweden\",\n\tCH: \"Switzerland\",\n\tSY: \"Syrian Arab Republic\",\n\tTW: \"Taiwan, Province of China\",\n\tTJ: \"Tajikistan\",\n\tTZ: \"Tanzania, United Republic of\",\n\tTH: \"Thailand\",\n\tTL: \"Timor-Leste\",\n\tTG: \"Togo\",\n\tTK: \"Tokelau\",\n\tTO: \"Tonga\",\n\tTT: \"Trinidad and Tobago\",\n\tTN: \"Tunisia\",\n\tTR: \"Türkiye\",\n\tTM: \"Turkmenistan\",\n\tTC: \"Turks and Caicos Islands\",\n\tTV: \"Tuvalu\",\n\tUG: \"Uganda\",\n\tUA: \"Ukraine\",\n\tAE: \"United Arab Emirates\",\n\tGB: \"United Kingdom of Great Britain and Northern Ireland\",\n\tUM: \"United States Minor Outlying Islands\",\n\tUS: \"United States of America\",\n\tUY: \"Uruguay\",\n\tUZ: \"Uzbekistan\",\n\tVU: \"Vanuatu\",\n\tVE: \"Venezuela (Bolivarian Republic of)\",\n\tVN: \"Viet Nam\",\n\tVG: \"Virgin Islands (British)\",\n\tVI: \"Virgin Islands (U.S)\",\n\tWF: \"Wallis and Futuna\",\n\tEH: \"Western Sahara\",\n\tYE: \"Yemen\",\n\tZM: \"Zambia\",\n\tZW: \"Zimbabwe\",\n};\n\n/** Options for MultiSelect component */\nconst options = Object.entries(ALL_COUNTRIES).map((v) => {\n\treturn {\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{getCountryFlag(v[0])} {v[1]}\n\t\t\t</>\n\t\t),\n\t\tvalue: v[0],\n\t};\n});\n\nexport function CountrySelect({\n\t...props\n}: Omit<MultiSelectProps, \"options\">) {\n\treturn <MultiSelect {...props} options={options} />;\n};\n\nexport function TfCountrySelect({\n\t...props\n}: Omit<TfMultiSelectProps, \"options\">) {\n\treturn <TfMultiSelect {...props} options={options} />;\n};\n"],"names":["getCountryFlag","country","getRegionalIndicatorSymbol","letter","ALL_COUNTRIES","options","v","jsxs","Fragment","CountrySelect","props","jsx","MultiSelect","TfCountrySelect","TfMultiSelect"],"mappings":";;AAaA,SAASA,EAAeC,GAAiB;AACxC,WAASC,EAA2BC,GAAgB;AACnD,WAAO,OAAO;AAAA,MACb,SAAeA,EAAO,YAAA,EAAc,WAAW,CAAC;AAAA,IAAA;AAAA,EACjD;AAGD,SACCD,EAA2BD,EAAQ,CAAC,CAAC,IACrCC,EAA2BD,EAAQ,CAAC,CAAC;AAEvC;AAEA,MAAMG,IAA2C;AAAA,EAChD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACL,GAGMC,IAAU,OAAO,QAAQD,CAAa,EAAE,IAAI,CAACE,OAC3C;AAAA,EACN,OACC,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAAR,EAAeM,EAAE,CAAC,CAAC;AAAA,IAAE;AAAA,IAAEA,EAAE,CAAC;AAAA,EAAA,GAC5B;AAAA,EAED,OAAOA,EAAE,CAAC;AAAA,EAEX;AAEM,SAASG,EAAc;AAAA,EAC7B,GAAGC;AACJ,GAAsC;AACrC,SAAO,gBAAAC,EAACC,GAAA,EAAa,GAAGF,GAAO,SAAAL,EAAA,CAAkB;AAClD;AAEO,SAASQ,EAAgB;AAAA,EAC/B,GAAGH;AACJ,GAAwC;AACvC,SAAO,gBAAAC,EAACG,GAAA,EAAe,GAAGJ,GAAO,SAAAL,EAAA,CAAkB;AACpD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.es.js","sources":["../../../lib/components/inputs/form-field.tsx"],"sourcesContent":["import { Label } from \"@/components/ui\";\nimport { cn } from \"@/utils\";\nimport type { FieldApi } from \"@tanstack/react-form\";\nimport { CircleX, Info, type LucideIcon } from \"lucide-react\";\nimport React from \"react\";\n\ninterface BaseFormFieldProps {\n\tlabel: string;\n\tcaption?: () => string | undefined;\n}\n\ninterface FormFieldProps extends BaseFormFieldProps {\n\tfield?: FieldApi<\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany\n\t>;\n\tchildren: React.ReactNode;\n\tclassName?: string;\n}\n\n/**\n * Wrapper around form fields. Only to be used within the web-components project.\n */\nexport function FormField({\n\tfield,\n\tlabel,\n\tcaption,\n\tchildren,\n\tclassName,\n}: FormFieldProps) {\n\tconst fieldCaption = React.useCallback(() => {\n\t\treturn caption?.();\n\t}, [caption]);\n\n\treturn (\n\t\t<div className={cn(\"\", className)}>\n\t\t\t<Label htmlFor={field?.name}>{label}</Label>\n\t\t\t{children}\n\t\t\t{/* Field information (if any) */}\n\t\t\t{fieldCaption() && (\n\t\t\t\t<FieldLabel\n\t\t\t\t\ticon={Info}\n\t\t\t\t\tclassName=\"text-muted\"\n\t\t\t\t\tvalue={fieldCaption()}\n\t\t\t\t\tfieldName={field?.name}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t{/* Field errors (if any) */}\n\t\t\t{field && field.state.meta.errors.length !== 0 && (\n\t\t\t\t<FieldLabel\n\t\t\t\t\ticon={CircleX}\n\t\t\t\t\tclassName=\"text-destructive\"\n\t\t\t\t\tvalue={field?.state.meta.errors.map((e) => e?.message).join(\",\")}\n\t\t\t\t\tfieldName={field?.name}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nconst FieldLabel = ({\n\tfieldName,\n\tclassName,\n\tvalue,\n\ticon,\n}: {\n\tfieldName?: string;\n\tclassName?: string;\n\tvalue?: string;\n\ticon: LucideIcon;\n}) => {\n\tconst Icon = icon;\n\treturn (\n\t\t<label\n\t\t\thtmlFor={fieldName}\n\t\t\tclassName={cn(\n\t\t\t\tclassName,\n\t\t\t\t\"flex flex-row basis-3 gap-1 mt-2 data-[state=open]:animate-in 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=closed]:animate-out data-[state=closed]:fade-out\",\n\t\t\t)}\n\t\t>\n\t\t\t{/* Possibly the only place where icons are size-3 and not size-icon. This will change if we have more \"caption\" sized text with icons. */}\n\t\t\t<Icon className=\"size-3\" />\n\t\t\t<span className=\"caption w-full leading-none font-normal\">{value}</span>\n\t\t</label>\n\t);\n};\n"],"names":["FormField","field","label","caption","children","className","fieldCaption","React","cn","jsx","Label","FieldLabel","Info","CircleX","e","fieldName","value","icon","Icon","jsxs"],"mappings":";;;;;AAwCO,SAASA,EAAU;AAAA,EACzB,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AACD,GAAmB;AACZ,QAAAC,IAAeC,EAAM,YAAY,MAC/BJ,KAAA,gBAAAA,KACL,CAACA,CAAO,CAAC;AAEZ,2BACE,OAAI,EAAA,WAAWK,EAAG,IAAIH,CAAS,GAC/B,UAAA;AAAA,IAAA,gBAAAI,EAACC,GAAM,EAAA,SAAST,KAAA,gBAAAA,EAAO,MAAO,UAAMC,GAAA;AAAA,IACnCE;AAAA,IAEAE,EACA,KAAA,gBAAAG;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,MAAMC;AAAA,QACN,WAAU;AAAA,QACV,OAAON,EAAa;AAAA,QACpB,WAAWL,KAAA,gBAAAA,EAAO;AAAA,MAAA;AAAA,IACnB;AAAA,IAGAA,KAASA,EAAM,MAAM,KAAK,OAAO,WAAW,KAC5C,gBAAAQ;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,MAAME;AAAA,QACN,WAAU;AAAA,QACV,OAAOZ,KAAA,gBAAAA,EAAO,MAAM,KAAK,OAAO,IAAI,CAACa,MAAMA,KAAA,gBAAAA,EAAG,SAAS,KAAK;AAAA,QAC5D,WAAWb,KAAA,gBAAAA,EAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EACnB,GAEF;AAEF;AAEA,MAAMU,IAAa,CAAC;AAAA,EACnB,WAAAI;AAAA,EACA,WAAAV;AAAA,EACA,OAAAW;AAAA,EACA,MAAAC;AACD,MAKM;AACL,QAAMC,IAAOD;AAEZ,SAAA,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,SAASJ;AAAA,MACT,WAAWP;AAAA,QACVH;AAAA,QACA;AAAA,MACD;AAAA,MAGA,UAAA;AAAA,QAAC,gBAAAI,EAAAS,GAAA,EAAK,WAAU,SAAS,CAAA;AAAA,QACxB,gBAAAT,EAAA,QAAA,EAAK,WAAU,2CAA2C,UAAMO,EAAA,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAClE;AAEF;"}
1
+ {"version":3,"file":"form-field.es.js","sources":["../../../lib/components/inputs/form-field.tsx"],"sourcesContent":["import { Label } from \"@/components/ui\";\nimport { cn } from \"@/utils\";\nimport type { FieldApi } from \"@tanstack/react-form\";\nimport { CircleX, Info, type LucideIcon } from \"lucide-react\";\nimport React from \"react\";\n\ninterface BaseFormFieldProps {\n\tlabel: string;\n\tcaption?: () => string | undefined;\n}\n\ninterface FormFieldProps extends BaseFormFieldProps {\n\tfield?: FieldApi<\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany,\n\t\tany\n\t>;\n\tchildren: React.ReactNode;\n\tclassName?: string;\n}\n\n/**\n * Wrapper around form fields. Only to be used within the web-components project.\n */\nexport function FormField({\n\tfield,\n\tlabel,\n\tcaption,\n\tchildren,\n\tclassName,\n}: FormFieldProps) {\n\tconst fieldCaption = React.useCallback(() => {\n\t\treturn caption?.();\n\t}, [caption]);\n\n\treturn (\n\t\t<div className={cn(\"\", className)}>\n\t\t\t<Label htmlFor={field?.name}>{label}</Label>\n\t\t\t{children}\n\t\t\t{/* Field information (if any) */}\n\t\t\t{fieldCaption() && (\n\t\t\t\t<FieldLabel\n\t\t\t\t\ticon={Info}\n\t\t\t\t\tclassName=\"text-muted\"\n\t\t\t\t\tvalue={fieldCaption()}\n\t\t\t\t\tfieldName={field?.name}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t{/* Field errors (if any) */}\n\t\t\t{field && field.state.meta.errors.length !== 0 && (\n\t\t\t\t<FieldLabel\n\t\t\t\t\ticon={CircleX}\n\t\t\t\t\tclassName=\"text-destructive\"\n\t\t\t\t\tvalue={field?.state.meta.errors.map((e) => e?.message).join(\",\")}\n\t\t\t\t\tfieldName={field?.name}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nconst FieldLabel = ({\n\tfieldName,\n\tclassName,\n\tvalue,\n\ticon,\n}: {\n\tfieldName?: string;\n\tclassName?: string;\n\tvalue?: string;\n\ticon: LucideIcon;\n}) => {\n\tconst Icon = icon;\n\treturn (\n\t\t<label\n\t\t\thtmlFor={fieldName}\n\t\t\tclassName={cn(\n\t\t\t\tclassName,\n\t\t\t\t\"flex flex-row basis-3 gap-1 mt-2 data-[state=open]:animate-in 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=closed]:animate-out data-[state=closed]:fade-out\",\n\t\t\t)}\n\t\t>\n\t\t\t{/* Possibly the only place where icons are size-3 and not size-icon. This will change if we have more \"caption\" sized text with icons. */}\n\t\t\t<Icon className=\"size-3\" />\n\t\t\t<span className=\"caption w-full leading-none font-normal\">{value}</span>\n\t\t</label>\n\t);\n};\n"],"names":["FormField","field","label","caption","children","className","fieldCaption","React","cn","jsx","Label","FieldLabel","Info","CircleX","e","fieldName","value","icon","Icon","jsxs"],"mappings":";;;;;AAwCO,SAASA,EAAU;AAAA,EACzB,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AACD,GAAmB;AAClB,QAAMC,IAAeC,EAAM,YAAY,MAC/BJ,KAAA,gBAAAA,KACL,CAACA,CAAO,CAAC;AAEZ,2BACE,OAAA,EAAI,WAAWK,EAAG,IAAIH,CAAS,GAC/B,UAAA;AAAA,IAAA,gBAAAI,EAACC,GAAA,EAAM,SAAST,KAAA,gBAAAA,EAAO,MAAO,UAAAC,GAAM;AAAA,IACnCE;AAAA,IAEAE,OACA,gBAAAG;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,MAAMC;AAAA,QACN,WAAU;AAAA,QACV,OAAON,EAAA;AAAA,QACP,WAAWL,KAAA,gBAAAA,EAAO;AAAA,MAAA;AAAA,IAAA;AAAA,IAInBA,KAASA,EAAM,MAAM,KAAK,OAAO,WAAW,KAC5C,gBAAAQ;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,MAAME;AAAA,QACN,WAAU;AAAA,QACV,OAAOZ,KAAA,gBAAAA,EAAO,MAAM,KAAK,OAAO,IAAI,CAACa,MAAMA,KAAA,gBAAAA,EAAG,SAAS,KAAK;AAAA,QAC5D,WAAWb,KAAA,gBAAAA,EAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EACnB,GAEF;AAEF;AAEA,MAAMU,IAAa,CAAC;AAAA,EACnB,WAAAI;AAAA,EACA,WAAAV;AAAA,EACA,OAAAW;AAAA,EACA,MAAAC;AACD,MAKM;AACL,QAAMC,IAAOD;AACb,SACC,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,SAASJ;AAAA,MACT,WAAWP;AAAA,QACVH;AAAA,QACA;AAAA,MAAA;AAAA,MAID,UAAA;AAAA,QAAA,gBAAAI,EAACS,GAAA,EAAK,WAAU,SAAA,CAAS;AAAA,QACzB,gBAAAT,EAAC,QAAA,EAAK,WAAU,2CAA2C,UAAAO,EAAA,CAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGpE;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.es.js","sources":["../../../lib/components/inputs/input-otp.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { Minus } from \"lucide-react\";\nimport * as React from \"react\";\n\nexport function InputOTP({\n\tclassName,\n\tcontainerClassName,\n\t...props\n}: React.ComponentProps<typeof OTPInput>) {\n\treturn (\n\t\t<OTPInput\n\t\t\tcontainerClassName={cn(\n\t\t\t\t\"flex items-center gap-2 has-disabled:opacity-50\",\n\t\t\t\tcontainerClassName,\n\t\t\t)}\n\t\t\tclassName={cn(\"disabled:cursor-not-allowed\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function InputOTPGroup({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\">) {\n\treturn <div className={cn(\"flex items-center\", className)} {...props} />;\n}\n\nexport function InputOTPSlot({\n\tindex,\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\"> & { index: number }) {\n\tconst inputOTPContext = React.use(OTPInputContext);\n\tconst { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"relative flex h-input w-9 items-center justify-center border-2 border-input body transition-all\",\n\t\t\t\tisActive ? \"z-10 border-2 border-primary\" : \"\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{char}\n\t\t\t{hasFakeCaret && (\n\t\t\t\t<div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n\t\t\t\t\t<div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nexport function InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div role=\"separator\" {...props}>\n\t\t\t<Minus />\n\t\t</div>\n\t);\n}\n"],"names":["InputOTP","className","containerClassName","props","jsx","OTPInput","cn","InputOTPGroup","InputOTPSlot","index","inputOTPContext","React","OTPInputContext","char","hasFakeCaret","isActive","jsxs","InputOTPSeparator","Minus"],"mappings":";;;;;AAKO,SAASA,EAAS;AAAA,EACxB,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,GAAGC;AACJ,GAA0C;AAExC,SAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,oBAAoBC;AAAA,QACnB;AAAA,QACAJ;AAAA,MACD;AAAA,MACA,WAAWI,EAAG,+BAA+BL,CAAS;AAAA,MACrD,GAAGE;AAAA,IAAA;AAAA,EACL;AAEF;AAEO,SAASI,EAAc;AAAA,EAC7B,WAAAN;AAAA,EACA,GAAGE;AACJ,GAAgC;AACxB,SAAA,gBAAAC,EAAC,SAAI,WAAWE,EAAG,qBAAqBL,CAAS,GAAI,GAAGE,GAAO;AACvE;AAEO,SAASK,EAAa;AAAA,EAC5B,OAAAC;AAAA,EACA,WAAAR;AAAA,EACA,GAAGE;AACJ,GAAoD;AAC7C,QAAAO,IAAkBC,EAAM,IAAIC,CAAe,GAC3C,EAAE,MAAAC,GAAM,cAAAC,GAAc,UAAAC,EAAa,IAAAL,EAAgB,MAAMD,CAAK;AAGnE,SAAA,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAWV;AAAA,QACV;AAAA,QACAS,IAAW,kCAAkC;AAAA,QAC7Cd;AAAA,MACD;AAAA,MACC,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAU;AAAA,QACAC,uBACC,OAAI,EAAA,WAAU,yEACd,UAAC,gBAAAV,EAAA,OAAA,EAAI,WAAU,2DAA2D,CAAA,EAC3E,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEF;AAEF;AAEO,SAASa,EAAkB,EAAE,GAAGd,KAAsC;AAE3E,SAAA,gBAAAC,EAAC,SAAI,MAAK,aAAa,GAAGD,GACzB,UAAA,gBAAAC,EAACc,KAAM,EACR,CAAA;AAEF;"}
1
+ {"version":3,"file":"input-otp.es.js","sources":["../../../lib/components/inputs/input-otp.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { Minus } from \"lucide-react\";\nimport * as React from \"react\";\n\nexport function InputOTP({\n\tclassName,\n\tcontainerClassName,\n\t...props\n}: React.ComponentProps<typeof OTPInput>) {\n\treturn (\n\t\t<OTPInput\n\t\t\tcontainerClassName={cn(\n\t\t\t\t\"flex items-center gap-2 has-disabled:opacity-50\",\n\t\t\t\tcontainerClassName,\n\t\t\t)}\n\t\t\tclassName={cn(\"disabled:cursor-not-allowed\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function InputOTPGroup({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\">) {\n\treturn <div className={cn(\"flex items-center\", className)} {...props} />;\n}\n\nexport function InputOTPSlot({\n\tindex,\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\"> & { index: number }) {\n\tconst inputOTPContext = React.use(OTPInputContext);\n\tconst { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"relative flex h-input w-9 items-center justify-center border-2 border-input body transition-all\",\n\t\t\t\tisActive ? \"z-10 border-2 border-primary\" : \"\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{char}\n\t\t\t{hasFakeCaret && (\n\t\t\t\t<div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n\t\t\t\t\t<div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\nexport function InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div role=\"separator\" {...props}>\n\t\t\t<Minus />\n\t\t</div>\n\t);\n}\n"],"names":["InputOTP","className","containerClassName","props","jsx","OTPInput","cn","InputOTPGroup","InputOTPSlot","index","inputOTPContext","React","OTPInputContext","char","hasFakeCaret","isActive","jsxs","InputOTPSeparator","Minus"],"mappings":";;;;;AAKO,SAASA,EAAS;AAAA,EACxB,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,GAAGC;AACJ,GAA0C;AACzC,SACC,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,oBAAoBC;AAAA,QACnB;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,WAAWI,EAAG,+BAA+BL,CAAS;AAAA,MACrD,GAAGE;AAAA,IAAA;AAAA,EAAA;AAGP;AAEO,SAASI,EAAc;AAAA,EAC7B,WAAAN;AAAA,EACA,GAAGE;AACJ,GAAgC;AAC/B,SAAO,gBAAAC,EAAC,SAAI,WAAWE,EAAG,qBAAqBL,CAAS,GAAI,GAAGE,GAAO;AACvE;AAEO,SAASK,EAAa;AAAA,EAC5B,OAAAC;AAAA,EACA,WAAAR;AAAA,EACA,GAAGE;AACJ,GAAoD;AACnD,QAAMO,IAAkBC,EAAM,IAAIC,CAAe,GAC3C,EAAE,MAAAC,GAAM,cAAAC,GAAc,UAAAC,MAAaL,EAAgB,MAAMD,CAAK;AAEpE,SACC,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAWV;AAAA,QACV;AAAA,QACAS,IAAW,kCAAkC;AAAA,QAC7Cd;AAAA,MAAA;AAAA,MAEA,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAU;AAAA,QACAC,uBACC,OAAA,EAAI,WAAU,yEACd,UAAA,gBAAAV,EAAC,OAAA,EAAI,WAAU,2DAAA,CAA2D,EAAA,CAC3E;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIJ;AAEO,SAASa,EAAkB,EAAE,GAAGd,KAAsC;AAC5E,SACC,gBAAAC,EAAC,SAAI,MAAK,aAAa,GAAGD,GACzB,UAAA,gBAAAC,EAACc,KAAM,EAAA,CACR;AAEF;"}