@next-degree/pickle-shared-js 0.13.7 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/dist/{chunk-ZZCTMR2F.cjs → chunk-2YUUVN7E.cjs} +3 -3
  2. package/dist/{chunk-ZZCTMR2F.cjs.map → chunk-2YUUVN7E.cjs.map} +1 -1
  3. package/dist/{chunk-YVKKQOTE.cjs → chunk-4FETL23S.cjs} +17 -14
  4. package/dist/chunk-4FETL23S.cjs.map +1 -0
  5. package/dist/chunk-5GODYRZA.js +138 -0
  6. package/dist/chunk-5GODYRZA.js.map +1 -0
  7. package/dist/{chunk-U27VO642.js → chunk-62HL22CD.js} +12 -5
  8. package/dist/chunk-62HL22CD.js.map +1 -0
  9. package/dist/chunk-6KGXXX6X.cjs +140 -0
  10. package/dist/chunk-6KGXXX6X.cjs.map +1 -0
  11. package/dist/chunk-73JL5O6N.cjs +95 -0
  12. package/dist/chunk-73JL5O6N.cjs.map +1 -0
  13. package/dist/{chunk-6EW2D7K7.cjs → chunk-7TFFAGVB.cjs} +33 -8
  14. package/dist/chunk-7TFFAGVB.cjs.map +1 -0
  15. package/dist/{chunk-LFWX5GEE.cjs → chunk-CGCGALTZ.cjs} +6 -6
  16. package/dist/{chunk-LFWX5GEE.cjs.map → chunk-CGCGALTZ.cjs.map} +1 -1
  17. package/dist/{chunk-K76RPF2X.js → chunk-CPZFINPG.js} +3 -3
  18. package/dist/{chunk-K76RPF2X.js.map → chunk-CPZFINPG.js.map} +1 -1
  19. package/dist/{chunk-LT35HARQ.cjs → chunk-EYN3RHOF.cjs} +18 -11
  20. package/dist/chunk-EYN3RHOF.cjs.map +1 -0
  21. package/dist/{chunk-3FQTSGHL.cjs → chunk-F567WG2X.cjs} +47 -35
  22. package/dist/chunk-F567WG2X.cjs.map +1 -0
  23. package/dist/{chunk-DUVGFEGU.js → chunk-G4KDEQIL.js} +28 -18
  24. package/dist/chunk-G4KDEQIL.js.map +1 -0
  25. package/dist/chunk-IPP5X4TY.js +53 -0
  26. package/dist/chunk-IPP5X4TY.js.map +1 -0
  27. package/dist/{chunk-XGQU7BQK.js → chunk-JZLJVA4I.js} +47 -35
  28. package/dist/chunk-JZLJVA4I.js.map +1 -0
  29. package/dist/{chunk-C3DCFPJC.cjs → chunk-KBAY4F7D.cjs} +23 -16
  30. package/dist/chunk-KBAY4F7D.cjs.map +1 -0
  31. package/dist/{chunk-VB32IBQC.cjs → chunk-N7GS4DZD.cjs} +8 -6
  32. package/dist/chunk-N7GS4DZD.cjs.map +1 -0
  33. package/dist/{chunk-567FG76G.cjs → chunk-OXDKVZZ5.cjs} +4 -4
  34. package/dist/{chunk-567FG76G.cjs.map → chunk-OXDKVZZ5.cjs.map} +1 -1
  35. package/dist/{chunk-4E3ANVRR.js → chunk-OZJZVEF2.js} +3 -3
  36. package/dist/{chunk-4E3ANVRR.js.map → chunk-OZJZVEF2.js.map} +1 -1
  37. package/dist/{chunk-Z5PEOX6F.js → chunk-PU4O76IS.js} +12 -9
  38. package/dist/chunk-PU4O76IS.js.map +1 -0
  39. package/dist/chunk-PVW2B7IC.js +73 -0
  40. package/dist/chunk-PVW2B7IC.js.map +1 -0
  41. package/dist/{chunk-EV54AFL4.js → chunk-PWKRCU2K.js} +24 -7
  42. package/dist/chunk-PWKRCU2K.js.map +1 -0
  43. package/dist/{chunk-NCEXSFMC.js → chunk-QYSTBZXD.js} +3 -3
  44. package/dist/{chunk-NCEXSFMC.js.map → chunk-QYSTBZXD.js.map} +1 -1
  45. package/dist/{chunk-62OBBM7T.js → chunk-SNHRG4TY.js} +23 -16
  46. package/dist/chunk-SNHRG4TY.js.map +1 -0
  47. package/dist/{chunk-DURKKV2E.js → chunk-TXSLKNR3.js} +6 -4
  48. package/dist/chunk-TXSLKNR3.js.map +1 -0
  49. package/dist/{chunk-GHJACW4X.cjs → chunk-Z2I2265Q.cjs} +24 -7
  50. package/dist/chunk-Z2I2265Q.cjs.map +1 -0
  51. package/dist/{chunk-UW6NEKBF.cjs → chunk-ZLANEWSF.cjs} +28 -18
  52. package/dist/chunk-ZLANEWSF.cjs.map +1 -0
  53. package/dist/{company_service_sanity-DF01qvTz.d.ts → company_service_sanity-B1Xg7ISJ.d.ts} +271 -271
  54. package/dist/{company_service_sanity-Br0R7m-A.d.cts → company_service_sanity-CCbS8ElX.d.cts} +271 -271
  55. package/dist/components/jobCard/JobLocation.d.cts +1 -1
  56. package/dist/components/jobCard/JobLocation.d.ts +1 -1
  57. package/dist/components/jobPost/JobPost.cjs +6 -6
  58. package/dist/components/jobPost/JobPost.d.cts +1 -1
  59. package/dist/components/jobPost/JobPost.d.ts +1 -1
  60. package/dist/components/jobPost/JobPost.js +5 -5
  61. package/dist/components/primitives/command.cjs +10 -10
  62. package/dist/components/primitives/command.d.cts +1 -1
  63. package/dist/components/primitives/command.d.ts +1 -1
  64. package/dist/components/primitives/command.js +1 -1
  65. package/dist/components/primitives/radio-group.cjs +3 -3
  66. package/dist/components/primitives/radio-group.d.cts +9 -1
  67. package/dist/components/primitives/radio-group.d.ts +9 -1
  68. package/dist/components/primitives/radio-group.js +1 -1
  69. package/dist/components/ui/Button.d.cts +1 -1
  70. package/dist/components/ui/Button.d.ts +1 -1
  71. package/dist/components/ui/Combobox.cjs +4 -4
  72. package/dist/components/ui/Combobox.d.cts +2 -1
  73. package/dist/components/ui/Combobox.d.ts +2 -1
  74. package/dist/components/ui/Combobox.js +3 -3
  75. package/dist/components/ui/Counter.cjs +2 -2
  76. package/dist/components/ui/Counter.d.cts +2 -2
  77. package/dist/components/ui/Counter.d.ts +2 -2
  78. package/dist/components/ui/Counter.js +1 -1
  79. package/dist/components/ui/DatePicker.cjs +2 -2
  80. package/dist/components/ui/DatePicker.d.cts +8 -3
  81. package/dist/components/ui/DatePicker.d.ts +8 -3
  82. package/dist/components/ui/DatePicker.js +1 -1
  83. package/dist/components/ui/Input.cjs +2 -2
  84. package/dist/components/ui/Input.d.cts +2 -1
  85. package/dist/components/ui/Input.d.ts +2 -1
  86. package/dist/components/ui/Input.js +1 -1
  87. package/dist/components/ui/PlacesQueryInput.cjs +3 -3
  88. package/dist/components/ui/PlacesQueryInput.d.cts +3 -1
  89. package/dist/components/ui/PlacesQueryInput.d.ts +3 -1
  90. package/dist/components/ui/PlacesQueryInput.js +2 -2
  91. package/dist/components/ui/Radio.cjs +3 -3
  92. package/dist/components/ui/Radio.d.cts +4 -1
  93. package/dist/components/ui/Radio.d.ts +4 -1
  94. package/dist/components/ui/Radio.js +2 -2
  95. package/dist/components/ui/Select.cjs +2 -2
  96. package/dist/components/ui/Select.d.cts +8 -1
  97. package/dist/components/ui/Select.d.ts +8 -1
  98. package/dist/components/ui/Select.js +1 -1
  99. package/dist/components/ui/Switch.cjs +2 -2
  100. package/dist/components/ui/Switch.d.cts +7 -1
  101. package/dist/components/ui/Switch.d.ts +7 -1
  102. package/dist/components/ui/Switch.js +1 -1
  103. package/dist/components/ui/buttonShadcn.d.cts +1 -1
  104. package/dist/components/ui/buttonShadcn.d.ts +1 -1
  105. package/dist/{displayText-BDPndCI9.d.cts → displayText-Ck0qovrl.d.cts} +2 -2
  106. package/dist/{displayText-EpnIpZ38.d.ts → displayText-ClDGmi1J.d.ts} +2 -2
  107. package/dist/hooks/useDisplayText.cjs +4 -4
  108. package/dist/hooks/useDisplayText.d.cts +3 -3
  109. package/dist/hooks/useDisplayText.d.ts +3 -3
  110. package/dist/hooks/useDisplayText.js +3 -3
  111. package/dist/index.cjs +53 -53
  112. package/dist/index.d.cts +6 -6
  113. package/dist/index.d.ts +6 -6
  114. package/dist/index.js +22 -22
  115. package/dist/{job_posting_service_latest-BKz5U2Gp.d.cts → job_posting_service_latest-Bk53vj02.d.cts} +177 -177
  116. package/dist/{job_posting_service_latest-BKz5U2Gp.d.ts → job_posting_service_latest-Bk53vj02.d.ts} +177 -177
  117. package/dist/{job_posting_service_latest-B6Trs6sX.d.cts → job_posting_service_latest-DfX8Y4gB.d.cts} +177 -177
  118. package/dist/{job_posting_service_latest-B6Trs6sX.d.ts → job_posting_service_latest-DfX8Y4gB.d.ts} +177 -177
  119. package/dist/{job_posting_service_sanity-BN7XcVxU.d.cts → job_posting_service_sanity-BSxLNte3.d.cts} +357 -357
  120. package/dist/{job_posting_service_sanity-BNQsNQs2.d.ts → job_posting_service_sanity-C6aPb8kp.d.ts} +357 -357
  121. package/dist/lib/locations.d.cts +3 -3
  122. package/dist/lib/locations.d.ts +3 -3
  123. package/dist/lib/mappings.d.cts +3 -3
  124. package/dist/lib/mappings.d.ts +3 -3
  125. package/dist/lib/salaryRange.d.cts +1 -1
  126. package/dist/lib/salaryRange.d.ts +1 -1
  127. package/dist/services/displayText.cjs +3 -3
  128. package/dist/services/displayText.d.cts +3 -3
  129. package/dist/services/displayText.d.ts +3 -3
  130. package/dist/services/displayText.js +2 -2
  131. package/dist/styles/globals.css +53 -26
  132. package/dist/styles/globals.css.map +1 -1
  133. package/dist/types/data/company_service_latest.d.cts +1 -1
  134. package/dist/types/data/company_service_latest.d.ts +1 -1
  135. package/dist/types/data/job_posting_service_latest.d.cts +1 -1
  136. package/dist/types/data/job_posting_service_latest.d.ts +1 -1
  137. package/dist/types/data/shared_pickle_output_latest.d.cts +1 -1
  138. package/dist/types/data/shared_pickle_output_latest.d.ts +1 -1
  139. package/dist/types/index.d.cts +5 -5
  140. package/dist/types/index.d.ts +5 -5
  141. package/dist/types/latest/company_service_latest.d.cts +1 -1
  142. package/dist/types/latest/company_service_latest.d.ts +1 -1
  143. package/dist/types/latest/custom/company_service_sanity.d.cts +3 -3
  144. package/dist/types/latest/custom/company_service_sanity.d.ts +3 -3
  145. package/dist/types/latest/custom/job_posting_service_sanity.d.cts +3 -3
  146. package/dist/types/latest/custom/job_posting_service_sanity.d.ts +3 -3
  147. package/dist/types/latest/job_posting_service_latest.d.cts +1 -1
  148. package/dist/types/latest/job_posting_service_latest.d.ts +1 -1
  149. package/dist/types/latest/shared_pickle_output_latest.d.cts +1 -1
  150. package/dist/types/latest/shared_pickle_output_latest.d.ts +1 -1
  151. package/package.json +1 -1
  152. package/dist/chunk-2I2TWTPC.js +0 -115
  153. package/dist/chunk-2I2TWTPC.js.map +0 -1
  154. package/dist/chunk-3FQTSGHL.cjs.map +0 -1
  155. package/dist/chunk-62OBBM7T.js.map +0 -1
  156. package/dist/chunk-6EW2D7K7.cjs.map +0 -1
  157. package/dist/chunk-B7NHA4GE.js +0 -33
  158. package/dist/chunk-B7NHA4GE.js.map +0 -1
  159. package/dist/chunk-C3DCFPJC.cjs.map +0 -1
  160. package/dist/chunk-DURKKV2E.js.map +0 -1
  161. package/dist/chunk-DUVGFEGU.js.map +0 -1
  162. package/dist/chunk-EV54AFL4.js.map +0 -1
  163. package/dist/chunk-GHJACW4X.cjs.map +0 -1
  164. package/dist/chunk-LT35HARQ.cjs.map +0 -1
  165. package/dist/chunk-ORVF255B.cjs +0 -55
  166. package/dist/chunk-ORVF255B.cjs.map +0 -1
  167. package/dist/chunk-U27VO642.js.map +0 -1
  168. package/dist/chunk-U7LTIWUS.js +0 -28
  169. package/dist/chunk-U7LTIWUS.js.map +0 -1
  170. package/dist/chunk-UW6NEKBF.cjs.map +0 -1
  171. package/dist/chunk-VAHZQJTA.cjs +0 -117
  172. package/dist/chunk-VAHZQJTA.cjs.map +0 -1
  173. package/dist/chunk-VB32IBQC.cjs.map +0 -1
  174. package/dist/chunk-XGQU7BQK.js.map +0 -1
  175. package/dist/chunk-YVKKQOTE.cjs.map +0 -1
  176. package/dist/chunk-Z5PEOX6F.js.map +0 -1
  177. package/dist/{company_service_latest-C7Moeufo.d.cts → company_service_latest-CVgoQ8Mc.d.cts} +174 -174
  178. package/dist/{company_service_latest-C7Moeufo.d.ts → company_service_latest-CVgoQ8Mc.d.ts} +174 -174
  179. package/dist/{company_service_latest-CITz7F53.d.cts → company_service_latest-oWEnaiRd.d.cts} +174 -174
  180. package/dist/{company_service_latest-CITz7F53.d.ts → company_service_latest-oWEnaiRd.d.ts} +174 -174
  181. package/dist/{shared_pickle_output_latest--XZhOUyE.d.cts → shared_pickle_output_latest-BVF7Zh2H.d.cts} +11 -11
  182. package/dist/{shared_pickle_output_latest--XZhOUyE.d.ts → shared_pickle_output_latest-BVF7Zh2H.d.ts} +11 -11
  183. package/dist/{shared_pickle_output_latest-DKOmTyYk.d.cts → shared_pickle_output_latest-BjRRmT8R.d.cts} +11 -11
  184. package/dist/{shared_pickle_output_latest-DKOmTyYk.d.ts → shared_pickle_output_latest-BjRRmT8R.d.ts} +11 -11
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, r as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, a as TitleEnum, T as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, q as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, o as ngdMetadataSchema, t as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-CITz7F53.cjs';
2
+ export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, r as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, a as TitleEnum, T as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, q as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, o as ngdMetadataSchema, t as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-oWEnaiRd.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, r as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, a as TitleEnum, T as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, q as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, o as ngdMetadataSchema, t as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-CITz7F53.js';
2
+ export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, r as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, a as TitleEnum, T as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, q as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, o as ngdMetadataSchema, t as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-oWEnaiRd.js';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { B as BestFitEnum, e as ClinicalLicenseEnum, c as ClinicalSettingEnum, C as ClinicalSpecialtyEnum, a as EmploymentLevelEnum, E as EmploymentTypeEnum, b as JobFunctionEnum, d as JobLocationTypeEnum, J as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, f as jobPostSchema } from '../../job_posting_service_latest-B6Trs6sX.cjs';
2
+ export { B as BestFitEnum, e as ClinicalLicenseEnum, c as ClinicalSettingEnum, C as ClinicalSpecialtyEnum, a as EmploymentLevelEnum, E as EmploymentTypeEnum, b as JobFunctionEnum, d as JobLocationTypeEnum, J as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, f as jobPostSchema } from '../../job_posting_service_latest-DfX8Y4gB.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { B as BestFitEnum, e as ClinicalLicenseEnum, c as ClinicalSettingEnum, C as ClinicalSpecialtyEnum, a as EmploymentLevelEnum, E as EmploymentTypeEnum, b as JobFunctionEnum, d as JobLocationTypeEnum, J as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, f as jobPostSchema } from '../../job_posting_service_latest-B6Trs6sX.js';
2
+ export { B as BestFitEnum, e as ClinicalLicenseEnum, c as ClinicalSettingEnum, C as ClinicalSpecialtyEnum, a as EmploymentLevelEnum, E as EmploymentTypeEnum, b as JobFunctionEnum, d as JobLocationTypeEnum, J as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, f as jobPostSchema } from '../../job_posting_service_latest-DfX8Y4gB.js';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, i as imageAssetSchema, c as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-DKOmTyYk.cjs';
2
+ export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, i as imageAssetSchema, c as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-BjRRmT8R.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, i as imageAssetSchema, c as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-DKOmTyYk.js';
2
+ export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, i as imageAssetSchema, c as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-BjRRmT8R.js';
@@ -1,8 +1,8 @@
1
- export { c as CompanyServiceBase } from '../company_service_latest-C7Moeufo.cjs';
2
- export { j as JobPostServiceBase } from '../job_posting_service_latest-BKz5U2Gp.cjs';
3
- export { s as SharedService, s as SharedServiceBase } from '../shared_pickle_output_latest--XZhOUyE.cjs';
4
- export { c as CompanyService } from '../company_service_sanity-Br0R7m-A.cjs';
5
- export { j as JobPostService } from '../job_posting_service_sanity-BN7XcVxU.cjs';
1
+ export { c as CompanyServiceBase } from '../company_service_latest-CVgoQ8Mc.cjs';
2
+ export { j as JobPostServiceBase } from '../job_posting_service_latest-Bk53vj02.cjs';
3
+ export { s as SharedService, s as SharedServiceBase } from '../shared_pickle_output_latest-BVF7Zh2H.cjs';
4
+ export { c as CompanyService } from '../company_service_sanity-CCbS8ElX.cjs';
5
+ export { j as JobPostService } from '../job_posting_service_sanity-BSxLNte3.cjs';
6
6
  export { Place } from '../components/ui/PlacesQueryInput.cjs';
7
7
  import 'zod';
8
8
  import './latest/custom/custom_sanity_models.cjs';
@@ -1,8 +1,8 @@
1
- export { c as CompanyServiceBase } from '../company_service_latest-C7Moeufo.js';
2
- export { j as JobPostServiceBase } from '../job_posting_service_latest-BKz5U2Gp.js';
3
- export { s as SharedService, s as SharedServiceBase } from '../shared_pickle_output_latest--XZhOUyE.js';
4
- export { c as CompanyService } from '../company_service_sanity-DF01qvTz.js';
5
- export { j as JobPostService } from '../job_posting_service_sanity-BNQsNQs2.js';
1
+ export { c as CompanyServiceBase } from '../company_service_latest-CVgoQ8Mc.js';
2
+ export { j as JobPostServiceBase } from '../job_posting_service_latest-Bk53vj02.js';
3
+ export { s as SharedService, s as SharedServiceBase } from '../shared_pickle_output_latest-BVF7Zh2H.js';
4
+ export { c as CompanyService } from '../company_service_sanity-B1Xg7ISJ.js';
5
+ export { j as JobPostService } from '../job_posting_service_sanity-C6aPb8kp.js';
6
6
  export { Place } from '../components/ui/PlacesQueryInput.js';
7
7
  import 'zod';
8
8
  import './latest/custom/custom_sanity_models.js';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, t as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, T as TitleEnum, a as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, r as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, q as ngdMetadataSchema, o as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-C7Moeufo.cjs';
2
+ export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, t as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, T as TitleEnum, a as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, r as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, q as ngdMetadataSchema, o as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-CVgoQ8Mc.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, t as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, T as TitleEnum, a as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, r as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, q as ngdMetadataSchema, o as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-C7Moeufo.js';
2
+ export { C as CategoryEnum, d as CompanyBenefitsModel, g as CompanyCareersModel, t as CompanyModel, m as CompanyNdgModel, k as CompanyPhilosophyModel, F as FoundingInformationModel, I as IndustryModel, J as JobBoardModel, N as NgdMetadataModel, u as OfficeModel, O as OfficeTypeEnum, e as PersonModel, P as PublishStatusEnum, S as SocialMediaModel, T as TitleEnum, a as TypeEnum, b as companyBenefitsSchema, f as companyCareersSchema, l as companyNdgSchema, h as companyPhilosophySchema, r as companySchema, n as foundingInformationSchema, i as industrySchema, j as jobBoardSchema, q as ngdMetadataSchema, o as officeSchema, p as personSchema, s as socialMediaSchema } from '../../company_service_latest-CVgoQ8Mc.js';
@@ -1,4 +1,4 @@
1
1
  import 'zod';
2
- export { O as OfficeTypeEnum, P as PublishStatusEnum, T as TitleEnum, i as industrySchema, o as officeSchema, s as socialMediaSchema } from '../../../company_service_latest-C7Moeufo.cjs';
3
- export { i as imageSchema } from '../../../shared_pickle_output_latest--XZhOUyE.cjs';
4
- export { d as companyCareersSchema, a as companyNdgSchema, b as companyPhilosophySchema, e as companySchema, f as foundingInformationSchema, n as ngdMetadataSchema } from '../../../company_service_sanity-Br0R7m-A.cjs';
2
+ export { O as OfficeTypeEnum, P as PublishStatusEnum, T as TitleEnum, i as industrySchema, o as officeSchema, s as socialMediaSchema } from '../../../company_service_latest-CVgoQ8Mc.cjs';
3
+ export { i as imageSchema } from '../../../shared_pickle_output_latest-BVF7Zh2H.cjs';
4
+ export { d as companyCareersSchema, a as companyNdgSchema, b as companyPhilosophySchema, e as companySchema, f as foundingInformationSchema, n as ngdMetadataSchema } from '../../../company_service_sanity-CCbS8ElX.cjs';
@@ -1,4 +1,4 @@
1
1
  import 'zod';
2
- export { O as OfficeTypeEnum, P as PublishStatusEnum, T as TitleEnum, i as industrySchema, o as officeSchema, s as socialMediaSchema } from '../../../company_service_latest-C7Moeufo.js';
3
- export { i as imageSchema } from '../../../shared_pickle_output_latest--XZhOUyE.js';
4
- export { d as companyCareersSchema, a as companyNdgSchema, b as companyPhilosophySchema, e as companySchema, f as foundingInformationSchema, n as ngdMetadataSchema } from '../../../company_service_sanity-DF01qvTz.js';
2
+ export { O as OfficeTypeEnum, P as PublishStatusEnum, T as TitleEnum, i as industrySchema, o as officeSchema, s as socialMediaSchema } from '../../../company_service_latest-CVgoQ8Mc.js';
3
+ export { i as imageSchema } from '../../../shared_pickle_output_latest-BVF7Zh2H.js';
4
+ export { d as companyCareersSchema, a as companyNdgSchema, b as companyPhilosophySchema, e as companySchema, f as foundingInformationSchema, n as ngdMetadataSchema } from '../../../company_service_sanity-B1Xg7ISJ.js';
@@ -1,5 +1,5 @@
1
1
  export { sanityReferenceSchema } from './custom_sanity_models.cjs';
2
2
  import 'zod';
3
- export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, P as PublishStatusEnum, S as ShiftEnum } from '../../../job_posting_service_latest-BKz5U2Gp.cjs';
4
- export { C as CurrencyEnum, D as DetailLevelEnum, U as UnitTextEnum } from '../../../shared_pickle_output_latest--XZhOUyE.cjs';
5
- export { c as JobPost, J as JobPostTypeEnum, b as MonetaryAmount, M as MonetaryAmountTypeEnum, P as PostalAddress, Q as QuantitativeValue, S as SanityReference, a as jobPostSchema, m as monetaryAmountSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../../job_posting_service_sanity-BN7XcVxU.cjs';
3
+ export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, P as PublishStatusEnum, S as ShiftEnum } from '../../../job_posting_service_latest-Bk53vj02.cjs';
4
+ export { C as CurrencyEnum, D as DetailLevelEnum, U as UnitTextEnum } from '../../../shared_pickle_output_latest-BVF7Zh2H.cjs';
5
+ export { c as JobPost, J as JobPostTypeEnum, b as MonetaryAmount, M as MonetaryAmountTypeEnum, P as PostalAddress, Q as QuantitativeValue, S as SanityReference, a as jobPostSchema, m as monetaryAmountSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../../job_posting_service_sanity-BSxLNte3.cjs';
@@ -1,5 +1,5 @@
1
1
  export { sanityReferenceSchema } from './custom_sanity_models.js';
2
2
  import 'zod';
3
- export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, P as PublishStatusEnum, S as ShiftEnum } from '../../../job_posting_service_latest-BKz5U2Gp.js';
4
- export { C as CurrencyEnum, D as DetailLevelEnum, U as UnitTextEnum } from '../../../shared_pickle_output_latest--XZhOUyE.js';
5
- export { c as JobPost, J as JobPostTypeEnum, b as MonetaryAmount, M as MonetaryAmountTypeEnum, P as PostalAddress, Q as QuantitativeValue, S as SanityReference, a as jobPostSchema, m as monetaryAmountSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../../job_posting_service_sanity-BNQsNQs2.js';
3
+ export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, P as PublishStatusEnum, S as ShiftEnum } from '../../../job_posting_service_latest-Bk53vj02.js';
4
+ export { C as CurrencyEnum, D as DetailLevelEnum, U as UnitTextEnum } from '../../../shared_pickle_output_latest-BVF7Zh2H.js';
5
+ export { c as JobPost, J as JobPostTypeEnum, b as MonetaryAmount, M as MonetaryAmountTypeEnum, P as PostalAddress, Q as QuantitativeValue, S as SanityReference, a as jobPostSchema, m as monetaryAmountSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../../job_posting_service_sanity-C6aPb8kp.js';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, e as JobLocationTypeEnum, f as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, a as jobPostSchema } from '../../job_posting_service_latest-BKz5U2Gp.cjs';
2
+ export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, e as JobLocationTypeEnum, f as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, a as jobPostSchema } from '../../job_posting_service_latest-Bk53vj02.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, e as JobLocationTypeEnum, f as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, a as jobPostSchema } from '../../job_posting_service_latest-BKz5U2Gp.js';
2
+ export { B as BestFitEnum, C as ClinicalLicenseEnum, b as ClinicalSettingEnum, c as ClinicalSpecialtyEnum, E as EmploymentLevelEnum, d as EmploymentTypeEnum, J as JobFunctionEnum, e as JobLocationTypeEnum, f as JobPostModel, P as PublishStatusEnum, S as ShiftEnum, T as TypeEnum, a as jobPostSchema } from '../../job_posting_service_latest-Bk53vj02.js';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, c as imageAssetSchema, i as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest--XZhOUyE.cjs';
2
+ export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, c as imageAssetSchema, i as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-BVF7Zh2H.cjs';
@@ -1,2 +1,2 @@
1
1
  import 'zod';
2
- export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, c as imageAssetSchema, i as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest--XZhOUyE.js';
2
+ export { C as CurrencyEnum, D as DetailLevelEnum, I as ImageAssetModel, d as ImageModel, M as MonetaryAmountModel, b as PlaceModel, P as PostalAddressModel, Q as QuantitativeValueModel, T as TypeEnum, U as UnitTextEnum, c as imageAssetSchema, i as imageSchema, m as monetaryAmountSchema, a as placeSchema, p as postalAddressSchema, q as quantitativeValueSchema } from '../../shared_pickle_output_latest-BVF7Zh2H.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-degree/pickle-shared-js",
3
- "version": "0.13.7",
3
+ "version": "0.14.0",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1,115 +0,0 @@
1
- import { Label_default } from './chunk-CAGLLWPR.js';
2
- import { ErrorMessage_default } from './chunk-CWTO3NXW.js';
3
- import { cn } from './chunk-2FGZQI42.js';
4
- import { cva } from 'cva';
5
- import { icons, X } from 'lucide-react';
6
- import { forwardRef } from 'react';
7
- import { jsxs, jsx } from 'react/jsx-runtime';
8
-
9
- var Input = forwardRef(
10
- ({ label, error, description, theme, icon, onClear, value, onChange, classNames, ...props }, ref) => {
11
- const handleClear = () => {
12
- onChange?.({ target: { value: "" } });
13
- onClear?.();
14
- };
15
- const IconComponent = icon && icons[icon];
16
- const placeholder = props.placeholder ?? (icon === "Search" ? "Search..." : "");
17
- const hasIcon = !!icon;
18
- const iconColor = theme === "dark" ? "text-white" : "text-grey-80";
19
- return /* @__PURE__ */ jsxs("div", { className: "group flex w-full flex-col gap-1", "data-testid": `input-wrapper-${props.id}`, children: [
20
- label && /* @__PURE__ */ jsx(
21
- Label_default,
22
- {
23
- text: label,
24
- htmlFor: props.name,
25
- required: props.required,
26
- description,
27
- className: classNames?.label
28
- }
29
- ),
30
- /* @__PURE__ */ jsxs("div", { className: "relative flex flex-row items-center", children: [
31
- IconComponent && /* @__PURE__ */ jsx(
32
- IconComponent,
33
- {
34
- className: `absolute left-3 h-4 w-4 ${iconColor} opacity-50 group-hover:opacity-100`
35
- }
36
- ),
37
- /* @__PURE__ */ jsx(
38
- "input",
39
- {
40
- className: cn(inputVariants({ theme, hasIcon })),
41
- ref,
42
- placeholder,
43
- value,
44
- onChange,
45
- "data-testid": `input-element-${props.id}`,
46
- ...props
47
- }
48
- ),
49
- hasIcon && value && /* @__PURE__ */ jsx(
50
- X,
51
- {
52
- className: `absolute right-3 h-4 w-4 cursor-pointer ${iconColor}`,
53
- onClick: handleClear,
54
- "data-testid": "clear-button"
55
- }
56
- )
57
- ] }),
58
- /* @__PURE__ */ jsx(ErrorMessage_default, { message: error })
59
- ] });
60
- }
61
- );
62
- Input.displayName = "Input";
63
- var inputVariants = cva(
64
- [
65
- "border-input",
66
- "placeholder:text-muted-foreground",
67
- "focus-visible:ring-ring",
68
- "inline-flex",
69
- "w-full",
70
- "h-11",
71
- "items-center",
72
- "justify-start",
73
- "gap-3",
74
- "rounded-lg",
75
- "bg-transparent",
76
- "px-3",
77
- "pt-0.5",
78
- "text-sm",
79
- "shadow-sm",
80
- "ring-grey-50",
81
- "transition-colors",
82
- "focus-visible:outline-none",
83
- "focus-visible:ring-1",
84
- "disabled:cursor-not-allowed",
85
- "disabled:opacity-50",
86
- "appearance-none",
87
- "[&::-webkit-search-cancel-button]:appearance-none",
88
- "[&::-webkit-search-decoration]:appearance-none",
89
- "[&::-webkit-search-results-button]:appearance-none",
90
- "[&::-webkit-search-results-decoration]:appearance-none",
91
- "[&::-ms-clear]:display-none",
92
- "[&::-ms-reveal]:display-none"
93
- ],
94
- {
95
- variants: {
96
- theme: {
97
- light: "text-grey-80 border",
98
- dark: "text-white"
99
- },
100
- hasIcon: {
101
- false: "pl-3",
102
- true: "pl-8"
103
- }
104
- },
105
- defaultVariants: {
106
- theme: "light",
107
- hasIcon: false
108
- }
109
- }
110
- );
111
- var Input_default = Input;
112
-
113
- export { Input_default };
114
- //# sourceMappingURL=chunk-2I2TWTPC.js.map
115
- //# sourceMappingURL=chunk-2I2TWTPC.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Input.tsx"],"names":[],"mappings":"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","file":"chunk-2I2TWTPC.js","sourcesContent":["import { cva, type VariantProps } from 'cva'\nimport { icons, X } from 'lucide-react'\nimport { type ChangeEvent, forwardRef, type InputHTMLAttributes } from 'react'\n\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ninterface Props extends InputHTMLAttributes<HTMLInputElement>, VariantProps<typeof inputVariants> {\n label?: string\n error?: string\n icon?: keyof typeof icons\n description?: string\n classNames?: { label?: string }\n onClear?: () => void\n}\n\n/**\n * A reusable input component that supports icons, labels, error messages, and clearing functionality.\n *\n * @example\n * // Basic usage\n * <Input\n * id=\"email\"\n * name=\"email\"\n * placeholder=\"Enter your email\"\n * />\n *\n * @example\n * // With label and error\n * <Input\n * id=\"username\"\n * label=\"Username\"\n * error=\"Username is required\"\n * required\n * />\n *\n * @example\n * // Search input with clear functionality\n * <Input\n * icon=\"Search\"\n * value={searchValue}\n * onChange={handleChange}\n * onClear={() => setSearchValue('')}\n * />\n */\nconst Input = forwardRef<HTMLInputElement, Props>(\n (\n { label, error, description, theme, icon, onClear, value, onChange, classNames, ...props },\n ref\n ) => {\n const handleClear = () => {\n onChange?.({ target: { value: '' } } as ChangeEvent<HTMLInputElement>)\n onClear?.()\n }\n\n const IconComponent = icon && icons[icon]\n\n const placeholder = props.placeholder ?? (icon === 'Search' ? 'Search...' : '')\n const hasIcon = !!icon\n\n const iconColor = theme === 'dark' ? 'text-white' : 'text-grey-80'\n\n return (\n <div className=\"group flex w-full flex-col gap-1\" data-testid={`input-wrapper-${props.id}`}>\n {label && (\n <Label\n text={label}\n htmlFor={props.name}\n required={props.required}\n description={description}\n className={classNames?.label}\n />\n )}\n <div className=\"relative flex flex-row items-center\">\n {IconComponent && (\n <IconComponent\n className={`absolute left-3 h-4 w-4 ${iconColor} opacity-50 group-hover:opacity-100`}\n />\n )}\n <input\n className={cn(inputVariants({ theme, hasIcon }))}\n ref={ref}\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n data-testid={`input-element-${props.id}`}\n {...props}\n />\n {hasIcon && value && (\n <X\n className={`absolute right-3 h-4 w-4 cursor-pointer ${iconColor}`}\n onClick={handleClear}\n data-testid=\"clear-button\"\n />\n )}\n </div>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\nInput.displayName = 'Input'\n\nconst inputVariants = cva(\n [\n 'border-input',\n 'placeholder:text-muted-foreground',\n 'focus-visible:ring-ring',\n 'inline-flex',\n 'w-full',\n 'h-11',\n 'items-center',\n 'justify-start',\n 'gap-3',\n 'rounded-lg',\n 'bg-transparent',\n 'px-3',\n 'pt-0.5',\n 'text-sm',\n 'shadow-sm',\n 'ring-grey-50',\n 'transition-colors',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n 'appearance-none',\n '[&::-webkit-search-cancel-button]:appearance-none',\n '[&::-webkit-search-decoration]:appearance-none',\n '[&::-webkit-search-results-button]:appearance-none',\n '[&::-webkit-search-results-decoration]:appearance-none',\n '[&::-ms-clear]:display-none',\n '[&::-ms-reveal]:display-none',\n ],\n {\n variants: {\n theme: {\n light: 'text-grey-80 border',\n dark: 'text-white',\n },\n hasIcon: {\n false: 'pl-3',\n true: 'pl-8',\n },\n },\n defaultVariants: {\n theme: 'light',\n hasIcon: false,\n },\n }\n)\n\nexport default Input\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/DatePicker.tsx"],"names":["forwardRef","useState","useEffect","cn","jsx","Label_default","Popover","PopoverTrigger","jsxs","CalendarIcon","format","PopoverContent","Calendar","ErrorMessage_default","cva"],"mappings":";;;;;;;;;;;;;AA6BO,IAAM,UAAa,GAAAA,gBAAA;AAAA,EACxB,CAAC,EAAE,KAAO,EAAA,WAAA,EAAa,QAAU,EAAA,UAAA,EAAY,KAAO,EAAA,QAAA,EAAU,KAAO,EAAA,EAAA,EAAI,MAAO,EAAA,EAAG,GAAQ,KAAA;AACzF,IAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAIC,eAAsB,IAAI,CAAA;AAElD,IAAAC,eAAA,CAAU,MAAM;AACd,MAAA,OAAA,CAAQ,SAAS,IAAI,CAAA;AAAA,KACvB,EAAG,CAAC,KAAK,CAAC,CAAA;AAEV,IAAM,MAAA,gBAAA,GAAmB,CAAC,YAAmC,KAAA;AAC3D,MAAA,IAAI,CAAC,YAAc,EAAA;AACnB,MAAA,QAAA,GAAW,YAAY,CAAA;AACvB,MAAA,OAAA,CAAQ,YAAY,CAAA;AAAA,KACtB;AAEA,IAAA,uCACG,KAAI,EAAA,EAAA,EAAA,EAAQ,SAAW,EAAAC,oBAAA,CAAG,4BAA4B,CACpD,EAAA,QAAA,EAAA;AAAA,MACC,KAAA,oBAAAC,cAAA;AAAA,QAACC,+BAAA;AAAA,QAAA;AAAA,UACC,IAAM,EAAA,KAAA;AAAA,UACN,QAAA;AAAA,UACA,WAAA;AAAA,UACA,WAAW,UAAY,EAAA;AAAA;AAAA,OACzB;AAAA,sCAEDC,yBACC,EAAA,EAAA,QAAA,EAAA;AAAA,wBAACF,cAAA,CAAAG,gCAAA,EAAA,EAAe,aAAa,EAAA,MAAA,EAC3B,QAAC,kBAAAC,eAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAAL,oBAAA,CAAG,eAAgB,EAAA,EAAG,UAAY,EAAA,KAAK,CACrD,EAAA,QAAA,EAAA;AAAA,0BAACC,cAAA,CAAAK,oBAAA,EAAA,EAAa,MAAM,EAAI,EAAA,CAAA;AAAA,UACvB,IAAO,GAAAC,cAAA,CAAO,IAAM,EAAA,YAAY,CAAI,GAAA;AAAA,SAAA,EACvC,CACF,EAAA,CAAA;AAAA,wBACAN,cAAA,CAACO,oCAAe,GACd,EAAA,QAAA,kBAAAP,cAAA;AAAA,UAACQ,0BAAA;AAAA,UAAA;AAAA,YACC,IAAK,EAAA,QAAA;AAAA,YACL,UAAU,IAAQ,IAAA,MAAA;AAAA,YAClB,QAAU,EAAA,gBAAA;AAAA,YACV,aAAc,EAAA,UAAA;AAAA,YACd,eAAiB,EAAA,IAAA;AAAA,YACjB,WAAW,UAAY,EAAA;AAAA;AAAA,SAE3B,EAAA;AAAA,OACF,EAAA,CAAA;AAAA,sBAEAR,cAAA,CAACS,sCAAa,EAAA,EAAA,OAAA,EAAS,KAAO,EAAA;AAAA,KAChC,EAAA,CAAA;AAAA;AAGN;AAEA,IAAM,kBAAkBC,OAAI,CAAA;AAAA,EAC1B,mCAAA;AAAA,EACA,yBAAA;AAAA,EACA,aAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AAAA,EACA,eAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,gBAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,cAAA;AAAA,EACA,mBAAA;AAAA,EACA,4BAAA;AAAA,EACA,sBAAA;AAAA,EACA,6BAAA;AAAA,EACA,qBAAA;AAAA,EACA,iBAAA;AAAA,EACA,mDAAA;AAAA,EACA,gDAAA;AAAA,EACA,oDAAA;AAAA,EACA,wDAAA;AAAA,EACA,6BAAA;AAAA,EACA,8BAAA;AAAA,EACA,qBAAA;AAAA,EACA;AACF,CAAC,CAAA","file":"chunk-3FQTSGHL.cjs","sourcesContent":["'use client'\n\nimport { cva } from 'cva'\nimport { format } from 'date-fns'\nimport { Calendar as CalendarIcon } from 'lucide-react'\nimport { forwardRef, useEffect, useState } from 'react'\n\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/primitives/popover'\nimport { Calendar } from '@/components/ui/calendar'\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ntype Props = {\n label?: string\n description?: string\n required?: boolean\n id?: string\n classNames?: {\n label?: string\n input?: string\n calendar?: string\n }\n value?: Date | null\n onChange?: (date: Date) => void\n error?: string\n testId?: string\n}\n\nexport const DatePicker = forwardRef<HTMLInputElement, Props>(\n ({ label, description, required, classNames, value, onChange, error, id, testId }, ref) => {\n const [date, setDate] = useState<Date | null>(null)\n\n useEffect(() => {\n setDate(value ?? null)\n }, [value])\n\n const handleDateSelect = (dateSelected: Date | undefined) => {\n if (!dateSelected) return\n onChange?.(dateSelected)\n setDate(dateSelected)\n }\n\n return (\n <div id={id} className={cn('flex w-auto flex-col gap-1')}>\n {label && (\n <Label\n text={label}\n required={required}\n description={description}\n className={classNames?.label}\n />\n )}\n <Popover>\n <PopoverTrigger data-testid={testId}>\n <div className={cn(datePickerStyle(), classNames?.input)}>\n <CalendarIcon size={16} />\n {date ? format(date, 'MM/dd/yyyy') : 'Select a date'}\n </div>\n </PopoverTrigger>\n <PopoverContent ref={ref}>\n <Calendar\n mode=\"single\"\n selected={date || undefined}\n onSelect={handleDateSelect}\n captionLayout=\"dropdown\"\n showOutsideDays={true}\n className={classNames?.calendar}\n />\n </PopoverContent>\n </Popover>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\n\nconst datePickerStyle = cva([\n 'placeholder:text-muted-foreground',\n 'focus-visible:ring-ring',\n 'inline-flex',\n 'w-full',\n 'h-11',\n 'items-center',\n 'justify-start',\n 'gap-3',\n 'rounded-lg',\n 'bg-transparent',\n 'px-3',\n 'pt-0.5',\n 'text-sm',\n 'shadow-sm',\n 'ring-grey-50',\n 'transition-colors',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n 'appearance-none',\n '[&::-webkit-search-cancel-button]:appearance-none',\n '[&::-webkit-search-decoration]:appearance-none',\n '[&::-webkit-search-results-button]:appearance-none',\n '[&::-webkit-search-results-decoration]:appearance-none',\n '[&::-ms-clear]:display-none',\n '[&::-ms-reveal]:display-none',\n 'text-grey-80 border',\n 'font-normal',\n])\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/primitives/command.tsx"],"names":["CommandPrimitive"],"mappings":"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","file":"chunk-62OBBM7T.js","sourcesContent":["'use client'\n\nimport { type DialogProps } from '@radix-ui/react-dialog'\nimport { Command as CommandPrimitive } from 'cmdk'\nimport { Search } from 'lucide-react'\nimport * as React from 'react'\n\nimport { Dialog, DialogContent } from '@/components/primitives/dialog'\nimport { cn } from '@/lib/utils'\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n 'flex h-full w-full flex-col overflow-hidden rounded-xl bg-white text-neutral-950',\n className\n )}\n {...props}\n />\n))\nCommand.displayName = CommandPrimitive.displayName\n\ntype CommandDialogProps = DialogProps\n\nconst CommandDialog = ({ children, ...props }: CommandDialogProps) => {\n return (\n <Dialog {...props}>\n <DialogContent className=\"overflow-hidden p-0 shadow-lg\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-neutral-500 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n )\n}\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n <div className=\"m-1 flex items-center rounded-xl border px-3\" cmdk-input-wrapper=\"\">\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n 'flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-neutral-500 disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n))\n\nCommandInput.displayName = CommandPrimitive.Input.displayName\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn('overflow-y-auto overflow-x-hidden', className)}\n {...props}\n />\n))\n\nCommandList.displayName = CommandPrimitive.List.displayName\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty ref={ref} className=\"py-6 text-center text-sm\" {...props} />\n))\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n 'overflow-hidden p-1 text-neutral-950 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-neutral-500',\n className\n )}\n {...props}\n />\n))\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 h-px bg-neutral-200', className)}\n {...props}\n />\n))\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-pointer select-none items-center rounded-xl px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-neutral-100 data-[selected=true]:text-neutral-900 data-[disabled=true]:opacity-50\",\n className\n )}\n {...props}\n />\n))\n\nCommandItem.displayName = CommandPrimitive.Item.displayName\n\nconst CommandShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn('ml-auto text-xs tracking-widest text-neutral-500', className)}\n {...props}\n />\n )\n}\nCommandShortcut.displayName = 'CommandShortcut'\n\nexport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/primitives/radio-group.tsx"],"names":["forwardRef","jsx","RadioGroupPrimitive","jsxs","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,IAAM,aAAaA,gBAGxB,CAAA,CAAC,EAAE,SAAA,EAAW,GAAG,KAAM,EAAA,EAAG,GAC1B,qBAAAC,cAAA,CAAqBC,qCAApB,EAAyB,SAAA,EAAuB,GAAG,KAAA,EAAO,KAAU,CACtE;AACD,UAAA,CAAW,cAAkCA,8BAAK,CAAA,IAAA,CAAA,WAAA;AAErC,IAAA,cAAA,GAAiBF,iBAG5B,CAAC,EAAE,WAAW,QAAU,EAAA,GAAG,KAAM,EAAA,EAAG,GAAQ,KAAA;AAC5C,EACE,uBAAAG,eAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAU,wCACb,EAAA,QAAA,EAAA;AAAA,oBAAAF,cAAA;AAAA,MAAqBC,8BAAA,CAAA,IAAA;AAAA,MAApB;AAAA,QACC,GAAA;AAAA,QACA,SAAW,EAAAE,oBAAA;AAAA,UACT,keAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG;AAAA;AAAA,KACN;AAAA,mCACC,OAAM,EAAA,EAAA,OAAA,EAAS,MAAM,EAAI,EAAA,SAAA,EAAU,6CACjC,QACH,EAAA;AAAA,GACF,EAAA,CAAA;AAEJ,CAAC;AACD,cAAA,CAAe,cAAkCF,8BAAK,CAAA,IAAA,CAAA,WAAA","file":"chunk-6EW2D7K7.cjs","sourcesContent":["'use client'\n\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\nimport {\n type ComponentPropsWithoutRef,\n type ElementRef,\n forwardRef,\n type PropsWithChildren,\n} from 'react'\n\nimport { cn } from '@/lib/utils'\n\nexport const RadioGroup = forwardRef<\n ElementRef<typeof RadioGroupPrimitive.Root>,\n ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Root className={className} {...props} ref={ref} />\n))\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\n\nexport const RadioGroupItem = forwardRef<\n ElementRef<typeof RadioGroupPrimitive.Item>,\n PropsWithChildren<ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>>\n>(({ className, children, ...props }, ref) => {\n return (\n <div className=\"group flex flex-row items-center gap-2\">\n <RadioGroupPrimitive.Item\n ref={ref}\n className={cn(\n 'peer aspect-square h-4 rounded-full border border-grey-10 shadow outline outline-1 outline-offset-2 outline-transparent focus:outline-none focus:outline-purple-100 focus-visible:ring-1 focus-visible:ring-ring active:border-green-80 disabled:cursor-not-allowed disabled:opacity-50 group-hover:border-grey-20 data-[state=checked]:border-4 data-[disabled]:border-grey-20 data-[state=checked]:border-green-90 data-[disabled]:bg-grey-10 data-[state=checked]:group-hover:border-green-80',\n className\n )}\n {...props}\n />\n <label htmlFor={props.id} className=\"text-sm peer-data-[disabled]:text-grey-40\">\n {children}\n </label>\n </div>\n )\n})\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\n"]}
@@ -1,33 +0,0 @@
1
- import { ErrorMessage_default } from './chunk-CWTO3NXW.js';
2
- import { cn } from './chunk-2FGZQI42.js';
3
- import * as SwitchPrimitive from '@radix-ui/react-switch';
4
- import { forwardRef } from 'react';
5
- import { jsxs, jsx } from 'react/jsx-runtime';
6
-
7
- var Switch = forwardRef(
8
- ({ label, error, className, ...props }, ref) => {
9
- return /* @__PURE__ */ jsxs("div", { className: cn("flex items-center", props.disabled && "opacity-50"), children: [
10
- /* @__PURE__ */ jsx(
11
- SwitchPrimitive.Root,
12
- {
13
- className: cn(
14
- "relative h-[25px] w-[42px] cursor-default rounded-full bg-grey-20 shadow-md outline-none focus:outline-purple-100 data-[state=checked]:bg-green-90",
15
- className
16
- ),
17
- ref,
18
- ...props,
19
- children: /* @__PURE__ */ jsx(SwitchPrimitive.Thumb, { className: "block h-[21px] w-[21px] translate-x-0.5 rounded-full bg-white shadow-[0_2px_2px] transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[19px]" })
20
- }
21
- ),
22
- label && /* @__PURE__ */ jsxs("label", { className: "pl-4 text-sm leading-none text-inherit", htmlFor: props.name, children: [
23
- label,
24
- /* @__PURE__ */ jsx(ErrorMessage_default, { message: error, className: "mt-1" })
25
- ] })
26
- ] });
27
- }
28
- );
29
- Switch.displayName = "Switch";
30
-
31
- export { Switch };
32
- //# sourceMappingURL=chunk-B7NHA4GE.js.map
33
- //# sourceMappingURL=chunk-B7NHA4GE.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Switch.tsx"],"names":[],"mappings":";;;;;;AAWO,IAAM,MAAS,GAAA,UAAA;AAAA,EACpB,CAAC,EAAE,KAAO,EAAA,KAAA,EAAO,WAAW,GAAG,KAAA,IAAS,GAAQ,KAAA;AAC9C,IACE,uBAAA,IAAA,CAAC,SAAI,SAAW,EAAA,EAAA,CAAG,qBAAqB,KAAM,CAAA,QAAA,IAAY,YAAY,CACpE,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,QAAiB,eAAA,CAAA,IAAA;AAAA,QAAhB;AAAA,UACC,SAAW,EAAA,EAAA;AAAA,YACT,oJAAA;AAAA,YACA;AAAA,WACF;AAAA,UACA,GAAA;AAAA,UACC,GAAG,KAAA;AAAA,UAEJ,QAAiB,kBAAA,GAAA,CAAA,eAAA,CAAA,KAAA,EAAhB,EAAsB,SAAA,EAAU,kLAAmL,EAAA;AAAA;AAAA,OACtN;AAAA,MACC,yBACE,IAAA,CAAA,OAAA,EAAA,EAAM,WAAU,wCAAyC,EAAA,OAAA,EAAS,MAAM,IACtE,EAAA,QAAA,EAAA;AAAA,QAAA,KAAA;AAAA,wBAEA,GAAA,CAAA,oBAAA,EAAA,EAAa,OAAS,EAAA,KAAA,EAAO,WAAU,MAAO,EAAA;AAAA,OACjD,EAAA;AAAA,KAEJ,EAAA,CAAA;AAAA;AAGN;AACA,MAAA,CAAO,WAAc,GAAA,QAAA","file":"chunk-B7NHA4GE.js","sourcesContent":["import * as SwitchPrimitive from '@radix-ui/react-switch'\nimport { forwardRef } from 'react'\n\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport { cn } from '@/lib/utils'\n\ninterface Props extends SwitchPrimitive.SwitchProps {\n label?: string\n error?: string\n}\n\nexport const Switch = forwardRef<HTMLButtonElement, Props>(\n ({ label, error, className, ...props }, ref) => {\n return (\n <div className={cn('flex items-center', props.disabled && 'opacity-50')}>\n <SwitchPrimitive.Root\n className={cn(\n 'relative h-[25px] w-[42px] cursor-default rounded-full bg-grey-20 shadow-md outline-none focus:outline-purple-100 data-[state=checked]:bg-green-90',\n className\n )}\n ref={ref}\n {...props}\n >\n <SwitchPrimitive.Thumb className=\"block h-[21px] w-[21px] translate-x-0.5 rounded-full bg-white shadow-[0_2px_2px] transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-[19px]\" />\n </SwitchPrimitive.Root>\n {label && (\n <label className=\"pl-4 text-sm leading-none text-inherit\" htmlFor={props.name}>\n {label}\n\n <ErrorMessage message={error} className=\"mt-1\" />\n </label>\n )}\n </div>\n )\n }\n)\nSwitch.displayName = 'Switch'\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/primitives/command.tsx"],"names":["React","jsx","CommandPrimitive","cn","Dialog","DialogContent","jsxs","Search"],"mappings":"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","file":"chunk-C3DCFPJC.cjs","sourcesContent":["'use client'\n\nimport { type DialogProps } from '@radix-ui/react-dialog'\nimport { Command as CommandPrimitive } from 'cmdk'\nimport { Search } from 'lucide-react'\nimport * as React from 'react'\n\nimport { Dialog, DialogContent } from '@/components/primitives/dialog'\nimport { cn } from '@/lib/utils'\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n 'flex h-full w-full flex-col overflow-hidden rounded-xl bg-white text-neutral-950',\n className\n )}\n {...props}\n />\n))\nCommand.displayName = CommandPrimitive.displayName\n\ntype CommandDialogProps = DialogProps\n\nconst CommandDialog = ({ children, ...props }: CommandDialogProps) => {\n return (\n <Dialog {...props}>\n <DialogContent className=\"overflow-hidden p-0 shadow-lg\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-neutral-500 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n )\n}\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n <div className=\"m-1 flex items-center rounded-xl border px-3\" cmdk-input-wrapper=\"\">\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n 'flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-neutral-500 disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n))\n\nCommandInput.displayName = CommandPrimitive.Input.displayName\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn('overflow-y-auto overflow-x-hidden', className)}\n {...props}\n />\n))\n\nCommandList.displayName = CommandPrimitive.List.displayName\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty ref={ref} className=\"py-6 text-center text-sm\" {...props} />\n))\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n 'overflow-hidden p-1 text-neutral-950 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-neutral-500',\n className\n )}\n {...props}\n />\n))\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 h-px bg-neutral-200', className)}\n {...props}\n />\n))\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-pointer select-none items-center rounded-xl px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-neutral-100 data-[selected=true]:text-neutral-900 data-[disabled=true]:opacity-50\",\n className\n )}\n {...props}\n />\n))\n\nCommandItem.displayName = CommandPrimitive.Item.displayName\n\nconst CommandShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn('ml-auto text-xs tracking-widest text-neutral-500', className)}\n {...props}\n />\n )\n}\nCommandShortcut.displayName = 'CommandShortcut'\n\nexport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Radio.tsx"],"names":[],"mappings":";;;;;;;AAmBO,IAAM,KAAQ,GAAA,UAAA;AAAA,EACnB,CACE;AAAA,IACE,KAAA;AAAA,IACA,KAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAU,EAAA,iBAAA;AAAA,IACV,WAAA;AAAA,IACA,GAAG;AAAA,KAEL,GACG,KAAA;AACH,IAAA,4BACG,KAAI,EAAA,EAAA,SAAA,EAAW,GAAG,qBAAuB,EAAA,UAAA,EAAY,IAAI,CACxD,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,iBAAM,IAAM,EAAA,KAAA,EAAO,WAA0B,EAAA,QAAA,EAAU,MAAM,QAAU,EAAA,CAAA;AAAA,sBAExE,GAAA;AAAA,QAAC,UAAA;AAAA,QAAA;AAAA,UACC,GAAA;AAAA,UACA,SAAW,EAAA,EAAA;AAAA,YACT,cAAA;AAAA,YACA,WAAA,KAAgB,aAAa,gBAAmB,GAAA,gBAAA;AAAA,YAChD,UAAY,EAAA;AAAA,WACd;AAAA,UACA,aAAe,EAAA,iBAAA;AAAA,UACd,GAAG,KAAA;AAAA,UAEH,mBAAS,GAAI,CAAA,CAAC,EAAE,EAAI,EAAA,KAAA,EAAO,OAC1B,qBAAA,GAAA;AAAA,YAAC,cAAA;AAAA,YAAA;AAAA,cAEC,KAAA;AAAA,cACA,EAAA,EAAI,oBAAoB,KAAK,CAAA,CAAA;AAAA,cAC7B,WAAW,UAAY,EAAA,IAAA;AAAA,cAEtB,QAAA,EAAA;AAAA,aAAA;AAAA,YALI;AAAA,WAOR;AAAA;AAAA,OACH;AAAA,sBAEA,GAAA,CAAC,oBAAa,EAAA,EAAA,OAAA,EAAS,KAAO,EAAA;AAAA,KAChC,EAAA,CAAA;AAAA;AAGN;AACA,KAAA,CAAM,WAAc,GAAA,OAAA","file":"chunk-DURKKV2E.js","sourcesContent":["import { type ComponentProps, forwardRef } from 'react'\n\nimport { RadioGroup, RadioGroupItem } from '@/components/primitives/radio-group'\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ntype RadioItem = { id: string | number; title: string; value: string }\ntype RadioClassNames = { root?: string; group?: string; item?: string }\ntype RadioGroupProps = Omit<ComponentProps<typeof RadioGroup>, 'onValueChange'>\nexport type RadioProps = RadioGroupProps & {\n label?: string\n error?: string\n description?: string\n classNames?: RadioClassNames\n options?: RadioItem[]\n onChange?: (value: string) => void\n}\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>(\n (\n {\n label,\n error,\n description,\n options,\n classNames,\n onChange: handleValueChange,\n orientation,\n ...props\n },\n ref\n ) => {\n return (\n <div className={cn('flex flex-col gap-1', classNames?.root)}>\n <Label text={label} description={description} required={props.required} />\n\n <RadioGroup\n ref={ref}\n className={cn(\n 'flex text-sm',\n orientation === 'vertical' ? 'flex-col gap-2' : 'flex-row gap-4',\n classNames?.group\n )}\n onValueChange={handleValueChange}\n {...props}\n >\n {options?.map(({ id, title, value }) => (\n <RadioGroupItem\n key={id}\n value={value}\n id={`radio-group-item-${title}`}\n className={classNames?.item}\n >\n {title}\n </RadioGroupItem>\n ))}\n </RadioGroup>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\nRadio.displayName = 'Radio'\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Counter.tsx"],"names":[],"mappings":"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","file":"chunk-DUVGFEGU.js","sourcesContent":["'use client'\n\nimport { cva, type VariantProps } from 'cva'\nimport { Minus, Plus } from 'lucide-react'\nimport { type ChangeEvent, forwardRef, type InputHTMLAttributes, useEffect, useState } from 'react'\n\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ntype InputProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'onChange'>\ntype CounterVariants = VariantProps<typeof counterVariants>\ntype Props = InputProps &\n CounterVariants & {\n label?: string\n value?: number\n error?: string\n min?: number\n max?: number\n step?: number\n description?: string\n classNames?: { root?: string; input?: string; label?: string }\n onChange?: (n: number) => void\n }\n\nexport const Counter = forwardRef<HTMLInputElement, Props>(\n (\n { label, error, min, max, step = 1, description, theme, value, classNames, onChange, ...props },\n ref\n ) => {\n const [count, setCount] = useState(0)\n\n useEffect(() => {\n setCount(value ?? 0)\n }, [value])\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n const newValue = parseInt(e.target.value.replace(/\\D/g, ''), 10)\n if (isNaN(newValue)) return\n if (min && newValue < min) {\n onChange?.(min)\n setCount(min)\n return\n }\n if (max && newValue > max) {\n onChange?.(max)\n setCount(max)\n return\n }\n onChange?.(newValue)\n setCount(newValue)\n }\n\n const decrement = () => {\n const proposedValue = count - step\n const newValue = Math.max(min ?? -Infinity, proposedValue)\n onChange?.(newValue)\n setCount(newValue)\n }\n\n const increment = () => {\n const proposedValue = count + step\n const newValue = Math.min(max ?? Infinity, proposedValue)\n onChange?.(newValue)\n setCount(newValue)\n }\n\n return (\n <div\n className={cn('flex w-auto flex-col gap-1', classNames?.root)}\n data-testid={`counter-wrapper-${props.id}`}\n >\n {label && (\n <Label\n text={label}\n htmlFor={props.name}\n required={props.required}\n description={description}\n className={classNames?.label}\n />\n )}\n\n <div className=\"relative flex w-[122px] flex-row items-center\">\n <button\n type=\"button\"\n className=\"absolute inset-y-0 left-1 my-auto flex h-8 w-8 cursor-pointer items-center justify-center rounded-full hover:bg-pickle-20\"\n onClick={decrement}\n >\n <Minus className=\"h-4 w-4 text-green-100\" />\n </button>\n\n <input\n className={cn(counterVariants({ theme }), classNames?.input)}\n ref={ref}\n value={count}\n onChange={handleChange}\n data-testid={`counter-element-${props.id}`}\n {...props}\n />\n\n <button\n type=\"button\"\n className=\"absolute inset-y-0 right-1 my-auto flex h-8 w-8 cursor-pointer items-center justify-center rounded-full hover:bg-pickle-20\"\n onClick={increment}\n >\n <Plus className=\"h-4 w-4 text-green-100\" />\n </button>\n </div>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\nCounter.displayName = 'Counter'\n\nconst counterVariants = cva(\n [\n 'border-input',\n 'placeholder:text-muted-foreground',\n 'focus-visible:ring-ring',\n 'inline-flex',\n 'w-[122px]',\n 'h-11',\n 'items-center',\n 'justify-start',\n 'gap-3',\n 'rounded-lg',\n 'bg-transparent',\n 'px-3',\n 'pt-0.5',\n 'text-sm',\n 'text-center',\n 'shadow-sm',\n 'ring-grey-50',\n 'transition-colors',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'disabled:cursor-not-allowed',\n 'disabled:opacity-50',\n 'appearance-none',\n '[&::-webkit-search-cancel-button]:appearance-none',\n '[&::-webkit-search-decoration]:appearance-none',\n '[&::-webkit-search-results-button]:appearance-none',\n '[&::-webkit-search-results-decoration]:appearance-none',\n '[&::-ms-clear]:display-none',\n '[&::-ms-reveal]:display-none',\n ],\n {\n variants: {\n theme: {\n light: 'text-grey-80 border',\n dark: 'text-white',\n },\n hasIcon: {\n false: 'pl-3',\n true: 'pl-8',\n },\n },\n defaultVariants: {\n theme: 'light',\n hasIcon: false,\n },\n }\n)\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Select.tsx"],"names":["value","id","description"],"mappings":"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","file":"chunk-EV54AFL4.js","sourcesContent":["'use client'\n\nimport * as SelectPrimitive from '@radix-ui/react-select'\nimport { CheckIcon, ChevronDownIcon, X } from 'lucide-react'\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type KeyboardEvent,\n useEffect,\n useRef,\n useState,\n} from 'react'\n\nimport { Separator } from '@/components/primitives/separator'\nimport Chip from '@/components/ui/Chip'\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ntype SelectContentProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\ntype RadixAlignType = SelectContentProps['align']\n\ninterface Props extends Omit<ComponentPropsWithoutRef<'select'>, 'value' | 'onChange'> {\n label?: string\n value?: string | string[]\n options?: { id: string | number; value: string; title: string; description?: string }[]\n placeholder?: string\n multiselect?: boolean\n description?: string\n error?: string\n classNames?: {\n label?: string\n trigger?: string\n content?: string\n item?: string\n checkmark?: string\n }\n dropdownAlign?: RadixAlignType\n useAnchor?: boolean\n onChange?: (value: string | string[]) => void\n onOpenChange?: (open: boolean) => void\n}\n\nconst Select = forwardRef<HTMLButtonElement, Props>(\n (\n {\n label,\n options,\n placeholder,\n multiselect,\n description,\n classNames,\n dropdownAlign = 'start',\n error,\n id,\n children: footer,\n useAnchor = true,\n ...props\n },\n ref\n ) => {\n const { value, defaultValue, dir, className, onChange, onOpenChange, ...rest } = props\n const [selected, setSelected] = useState<string[]>([])\n const [open, setOpen] = useState(false)\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (!value) return setSelected([])\n setSelected(Array.isArray(value) ? value : [value])\n }, [value])\n\n const toggleOpen = () => setOpen((prev) => !prev)\n const closeOnEscape = (event: KeyboardEvent) => event.key === 'Escape' && setOpen(false)\n const handleOnOpenChange = (isOpen: boolean) => {\n const shouldUpdate = !multiselect || isOpen\n if (shouldUpdate) {\n setOpen(isOpen)\n onOpenChange?.(isOpen)\n }\n }\n const setValueOnEnter = (event: KeyboardEvent, value: string) =>\n event.key === 'Enter' && handleChange(value)\n const getLabel = () =>\n selected.map((o) => options?.find((option) => option.value === o)?.title).join(', ')\n\n const chipLabels = selected\n ?.map((s) => options?.find(({ value }) => value === s))\n .filter(Boolean)\n\n function handleChange(newValue: string) {\n if (newValue === '' && !multiselect) return // Prevent clearing single select\n let newSelected: string[] = []\n setSelected((prev) => {\n newSelected = prev.includes(newValue)\n ? prev.filter((item) => item !== newValue)\n : [...prev, newValue]\n return multiselect ? newSelected : [newValue]\n })\n onChange?.(multiselect ? newSelected : newValue)\n }\n\n return (\n <div\n className={cn('flex w-full flex-col gap-1', className)}\n ref={containerRef}\n data-testid={`${(label ?? id)?.toLowerCase()}-select-element`}\n >\n <Label\n text={label}\n htmlFor={props.name}\n required={props.required}\n description={description}\n className={classNames?.label}\n />\n\n <SelectPrimitive.Root\n open={open}\n value={selected.join(',')}\n onOpenChange={handleOnOpenChange}\n onValueChange={multiselect ? undefined : handleChange}\n defaultValue={typeof defaultValue === 'string' ? defaultValue : undefined}\n dir={dir === 'rtl' ? 'rtl' : 'ltr'}\n {...rest}\n >\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'group flex h-11 w-full flex-row items-center justify-between gap-3 rounded-lg border px-4 py-3 text-sm font-normal focus:outline-purple-100 disabled:bg-grey-5 data-[placeholder]:text-grey-50 data-[placeholder]:disabled:text-grey-40',\n classNames?.trigger\n )}\n >\n <span className=\"truncate\">\n <SelectPrimitive.Value\n placeholder={placeholder ?? 'Select an option'}\n aria-label={getLabel()}\n >\n {getLabel()}\n </SelectPrimitive.Value>\n </span>\n\n <ChevronDownIcon\n className=\"transform text-black group-data-[state=open]:rotate-180\"\n size=\"16\"\n />\n </SelectPrimitive.Trigger>\n\n <SelectPrimitive.Portal container={useAnchor ? containerRef.current : undefined}>\n <SelectPrimitive.Content\n hideWhenDetached\n className={cn(\n 'z-10 max-h-[var(--radix-select-content-available-height)] overflow-hidden rounded-md bg-white py-2 shadow-lg',\n 'w-[var(--radix-select-trigger-width)] min-w-[var(--radix-select-trigger-width)]',\n classNames?.content\n )}\n position=\"popper\"\n align={dropdownAlign}\n sideOffset={4}\n onPointerDownOutside={toggleOpen}\n onKeyDown={closeOnEscape}\n >\n <SelectPrimitive.Viewport>\n {multiselect && !!chipLabels?.length && (\n <>\n <SelectPrimitive.Group\n className=\"mb-2 flex flex-row flex-wrap gap-1 px-2\"\n data-testid=\"selected-labels\"\n >\n {chipLabels?.map(\n (chip) =>\n chip && (\n <Chip key={chip.title} size=\"small\" variant=\"primary\">\n <span>{chip.title}</span>\n <X\n size={18}\n data-testid={`chip-remove-${chip.value}`}\n className=\"cursor-pointer\"\n onClick={() => handleChange(chip.value)}\n />\n </Chip>\n )\n )}\n </SelectPrimitive.Group>\n <Separator />\n </>\n )}\n {options?.map(({ id, title, value, description }) => (\n <SelectPrimitive.Item\n key={id}\n value={value}\n className={cn(\n 'group relative cursor-pointer px-4 py-2 text-left text-sm hover:bg-purple-50 focus:bg-purple-50 focus:outline-none data-[state=checked]:bg-purple-50 data-[state=checked]:pr-10 data-[state=checked]:text-purple-100',\n classNames?.item\n )}\n data-state={selected.includes(value) ? 'checked' : 'unchecked'}\n onKeyDown={(e) => setValueOnEnter(e, value)}\n onClick={() => handleChange(value)}\n >\n <CheckIcon\n className={cn(\n 'absolute inset-y-0 right-3 my-auto hidden w-6 text-purple-100 group-data-[state=checked]:block',\n classNames?.checkmark\n )}\n size={16}\n />\n <SelectPrimitive.ItemText>{title}</SelectPrimitive.ItemText>\n {description && (\n <span className=\"block text-sm text-grey-70\">{description}</span>\n )}\n </SelectPrimitive.Item>\n ))}\n\n {!!footer && (\n <>\n <Separator />\n <SelectPrimitive.Group\n className=\"mt-2 flex flex-row flex-wrap gap-1 px-2\"\n data-testid=\"selected-labels\"\n >\n {footer}\n </SelectPrimitive.Group>\n </>\n )}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n </SelectPrimitive.Root>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\n\nSelect.displayName = 'Select'\n\nexport default Select\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/Select.tsx"],"names":["forwardRef","useState","useRef","useEffect","value","jsxs","cn","jsx","Label_default","SelectPrimitive","ChevronDownIcon","Fragment","Chip_default","X","Separator","id","description","CheckIcon","ErrorMessage_default"],"mappings":"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","file":"chunk-GHJACW4X.cjs","sourcesContent":["'use client'\n\nimport * as SelectPrimitive from '@radix-ui/react-select'\nimport { CheckIcon, ChevronDownIcon, X } from 'lucide-react'\nimport {\n type ComponentPropsWithoutRef,\n forwardRef,\n type KeyboardEvent,\n useEffect,\n useRef,\n useState,\n} from 'react'\n\nimport { Separator } from '@/components/primitives/separator'\nimport Chip from '@/components/ui/Chip'\nimport ErrorMessage from '@/components/ui/ErrorMessage'\nimport Label from '@/components/ui/Label'\nimport { cn } from '@/lib/utils'\n\ntype SelectContentProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\ntype RadixAlignType = SelectContentProps['align']\n\ninterface Props extends Omit<ComponentPropsWithoutRef<'select'>, 'value' | 'onChange'> {\n label?: string\n value?: string | string[]\n options?: { id: string | number; value: string; title: string; description?: string }[]\n placeholder?: string\n multiselect?: boolean\n description?: string\n error?: string\n classNames?: {\n label?: string\n trigger?: string\n content?: string\n item?: string\n checkmark?: string\n }\n dropdownAlign?: RadixAlignType\n useAnchor?: boolean\n onChange?: (value: string | string[]) => void\n onOpenChange?: (open: boolean) => void\n}\n\nconst Select = forwardRef<HTMLButtonElement, Props>(\n (\n {\n label,\n options,\n placeholder,\n multiselect,\n description,\n classNames,\n dropdownAlign = 'start',\n error,\n id,\n children: footer,\n useAnchor = true,\n ...props\n },\n ref\n ) => {\n const { value, defaultValue, dir, className, onChange, onOpenChange, ...rest } = props\n const [selected, setSelected] = useState<string[]>([])\n const [open, setOpen] = useState(false)\n const containerRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (!value) return setSelected([])\n setSelected(Array.isArray(value) ? value : [value])\n }, [value])\n\n const toggleOpen = () => setOpen((prev) => !prev)\n const closeOnEscape = (event: KeyboardEvent) => event.key === 'Escape' && setOpen(false)\n const handleOnOpenChange = (isOpen: boolean) => {\n const shouldUpdate = !multiselect || isOpen\n if (shouldUpdate) {\n setOpen(isOpen)\n onOpenChange?.(isOpen)\n }\n }\n const setValueOnEnter = (event: KeyboardEvent, value: string) =>\n event.key === 'Enter' && handleChange(value)\n const getLabel = () =>\n selected.map((o) => options?.find((option) => option.value === o)?.title).join(', ')\n\n const chipLabels = selected\n ?.map((s) => options?.find(({ value }) => value === s))\n .filter(Boolean)\n\n function handleChange(newValue: string) {\n if (newValue === '' && !multiselect) return // Prevent clearing single select\n let newSelected: string[] = []\n setSelected((prev) => {\n newSelected = prev.includes(newValue)\n ? prev.filter((item) => item !== newValue)\n : [...prev, newValue]\n return multiselect ? newSelected : [newValue]\n })\n onChange?.(multiselect ? newSelected : newValue)\n }\n\n return (\n <div\n className={cn('flex w-full flex-col gap-1', className)}\n ref={containerRef}\n data-testid={`${(label ?? id)?.toLowerCase()}-select-element`}\n >\n <Label\n text={label}\n htmlFor={props.name}\n required={props.required}\n description={description}\n className={classNames?.label}\n />\n\n <SelectPrimitive.Root\n open={open}\n value={selected.join(',')}\n onOpenChange={handleOnOpenChange}\n onValueChange={multiselect ? undefined : handleChange}\n defaultValue={typeof defaultValue === 'string' ? defaultValue : undefined}\n dir={dir === 'rtl' ? 'rtl' : 'ltr'}\n {...rest}\n >\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n 'group flex h-11 w-full flex-row items-center justify-between gap-3 rounded-lg border px-4 py-3 text-sm font-normal focus:outline-purple-100 disabled:bg-grey-5 data-[placeholder]:text-grey-50 data-[placeholder]:disabled:text-grey-40',\n classNames?.trigger\n )}\n >\n <span className=\"truncate\">\n <SelectPrimitive.Value\n placeholder={placeholder ?? 'Select an option'}\n aria-label={getLabel()}\n >\n {getLabel()}\n </SelectPrimitive.Value>\n </span>\n\n <ChevronDownIcon\n className=\"transform text-black group-data-[state=open]:rotate-180\"\n size=\"16\"\n />\n </SelectPrimitive.Trigger>\n\n <SelectPrimitive.Portal container={useAnchor ? containerRef.current : undefined}>\n <SelectPrimitive.Content\n hideWhenDetached\n className={cn(\n 'z-10 max-h-[var(--radix-select-content-available-height)] overflow-hidden rounded-md bg-white py-2 shadow-lg',\n 'w-[var(--radix-select-trigger-width)] min-w-[var(--radix-select-trigger-width)]',\n classNames?.content\n )}\n position=\"popper\"\n align={dropdownAlign}\n sideOffset={4}\n onPointerDownOutside={toggleOpen}\n onKeyDown={closeOnEscape}\n >\n <SelectPrimitive.Viewport>\n {multiselect && !!chipLabels?.length && (\n <>\n <SelectPrimitive.Group\n className=\"mb-2 flex flex-row flex-wrap gap-1 px-2\"\n data-testid=\"selected-labels\"\n >\n {chipLabels?.map(\n (chip) =>\n chip && (\n <Chip key={chip.title} size=\"small\" variant=\"primary\">\n <span>{chip.title}</span>\n <X\n size={18}\n data-testid={`chip-remove-${chip.value}`}\n className=\"cursor-pointer\"\n onClick={() => handleChange(chip.value)}\n />\n </Chip>\n )\n )}\n </SelectPrimitive.Group>\n <Separator />\n </>\n )}\n {options?.map(({ id, title, value, description }) => (\n <SelectPrimitive.Item\n key={id}\n value={value}\n className={cn(\n 'group relative cursor-pointer px-4 py-2 text-left text-sm hover:bg-purple-50 focus:bg-purple-50 focus:outline-none data-[state=checked]:bg-purple-50 data-[state=checked]:pr-10 data-[state=checked]:text-purple-100',\n classNames?.item\n )}\n data-state={selected.includes(value) ? 'checked' : 'unchecked'}\n onKeyDown={(e) => setValueOnEnter(e, value)}\n onClick={() => handleChange(value)}\n >\n <CheckIcon\n className={cn(\n 'absolute inset-y-0 right-3 my-auto hidden w-6 text-purple-100 group-data-[state=checked]:block',\n classNames?.checkmark\n )}\n size={16}\n />\n <SelectPrimitive.ItemText>{title}</SelectPrimitive.ItemText>\n {description && (\n <span className=\"block text-sm text-grey-70\">{description}</span>\n )}\n </SelectPrimitive.Item>\n ))}\n\n {!!footer && (\n <>\n <Separator />\n <SelectPrimitive.Group\n className=\"mt-2 flex flex-row flex-wrap gap-1 px-2\"\n data-testid=\"selected-labels\"\n >\n {footer}\n </SelectPrimitive.Group>\n </>\n )}\n </SelectPrimitive.Viewport>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n </SelectPrimitive.Root>\n\n <ErrorMessage message={error} />\n </div>\n )\n }\n)\n\nSelect.displayName = 'Select'\n\nexport default Select\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/ui/PlacesQueryInput.tsx"],"names":["useState","useRef","useCallback","autocomplete","useEffect","jsx","cn","jsxs","Command","CommandInput","LoaderCircle","CircleX","CommandList","CommandEmpty","CommandGroup","CommandItem"],"mappings":"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","file":"chunk-LT35HARQ.cjs","sourcesContent":["'use client'\n\nimport { type PlaceAutocompleteResult } from '@googlemaps/google-maps-services-js'\nimport { CircleX, LoaderCircle } from 'lucide-react'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '@/components/primitives/command'\nimport { autocomplete } from '@/lib/google'\nimport { cn } from '@/lib/utils'\n\n/**\n * The idea is of this type is to have a more specific type for the Place object,\n * without the repos that use it having to import the PlaceAutocompleteResult type.\n * 'place_id' can be used to query the Google Places API directly for more information about the place.\n */\nexport type Place = Pick<PlaceAutocompleteResult, 'description' | 'place_id'>\n\ninterface PlacesQueryInputProps {\n apiKey: string\n selected?: Place\n onSelect: (place?: Place) => void\n className?: string\n}\n\nfunction PlacesQueryInput({\n apiKey,\n selected,\n onSelect,\n className,\n}: Readonly<PlacesQueryInputProps>) {\n const [predictions, setPredictions] = useState<PlaceAutocompleteResult[] | null>(null)\n const [input, setInput] = useState(selected?.description ?? '')\n const [isLoadingPredictions, setIsLoadingPredictions] = useState(false)\n const [shouldOpenUpward, setShouldOpenUpward] = useState(false)\n const timeoutRef = useRef<NodeJS.Timeout | null>(null)\n const inputRef = useRef<HTMLDivElement | null>(null)\n\n const debouncedAutocomplete = useCallback((value: string) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n timeoutRef.current = setTimeout(async () => {\n try {\n if (value.length > 2) {\n setIsLoadingPredictions(true)\n const fetchedPredictions = await autocomplete(value, apiKey)\n setIsLoadingPredictions(false)\n setPredictions(fetchedPredictions ?? [])\n } else {\n setPredictions(null)\n }\n } catch (error) {\n setIsLoadingPredictions(false)\n setPredictions([])\n console.error('Autocomplete error:', error)\n }\n }, 300)\n }, [])\n\n const handleInputChange = (value: string) => {\n setInput(value)\n debouncedAutocomplete(value)\n }\n\n const handleSelect = (prediction: PlaceAutocompleteResult) => {\n onSelect(prediction)\n setPredictions(null)\n setInput(prediction.description)\n }\n\n const handleClear = () => {\n onSelect()\n setPredictions(null)\n setInput('')\n }\n\n /** Close the dropdown when the input loses focus, with the timeout to allow the user to click on a prediction.\n * */\n const handleBlur = () => setTimeout(() => setPredictions(null), 200)\n\n useEffect(() => {\n const checkDropdownPosition = () => {\n if (inputRef.current) {\n const rect = inputRef.current.getBoundingClientRect()\n const windowHeight = window.innerHeight\n setShouldOpenUpward(rect.bottom + 200 > windowHeight)\n }\n }\n\n checkDropdownPosition()\n window.addEventListener('resize', checkDropdownPosition)\n return () => window.removeEventListener('resize', checkDropdownPosition)\n }, [])\n\n return (\n <div className={cn('relative w-full', className)} ref={inputRef} onBlur={handleBlur}>\n <Command>\n <div className=\"relative w-full\">\n <CommandInput\n placeholder=\"Type an address to search...\"\n value={input}\n onValueChange={handleInputChange}\n className=\"truncate pr-8\"\n />\n {isLoadingPredictions && (\n <LoaderCircle className=\"absolute inset-y-0 right-2 my-auto flex h-8 w-8 animate-spin items-center justify-center rounded-full text-green-100\" />\n )}\n {input && (\n <button\n type=\"button\"\n className=\"absolute inset-y-0 right-2 my-auto flex h-8 w-8 cursor-pointer items-center justify-center rounded-full hover:bg-pickle-20\"\n onClick={handleClear}\n >\n <CircleX className=\"h-4 w-4 text-green-100\" />\n </button>\n )}\n </div>\n {predictions && (\n <CommandList\n className={cn(\n 'absolute z-50 w-full rounded-md border bg-white shadow-lg',\n shouldOpenUpward ? 'bottom-full' : 'top-full'\n )}\n >\n <CommandEmpty>No results</CommandEmpty>\n <CommandGroup>\n {predictions.map((prediction) => (\n <CommandItem\n key={prediction.place_id}\n onSelect={() => handleSelect(prediction)}\n className=\"truncate\"\n >\n {prediction.description}\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n )}\n </Command>\n </div>\n )\n}\n\nexport default PlacesQueryInput\n"]}