@next-degree/pickle-shared-js 0.7.52 → 0.9.2

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 (107) hide show
  1. package/dist/components/jobPost/JobDescription.cjs +2 -1
  2. package/dist/components/jobPost/JobDescription.cjs.map +1 -1
  3. package/dist/components/jobPost/JobDescription.js +2 -1
  4. package/dist/components/jobPost/JobDescription.js.map +1 -1
  5. package/dist/components/jobPost/JobPost.cjs +2 -1
  6. package/dist/components/jobPost/JobPost.cjs.map +1 -1
  7. package/dist/components/jobPost/JobPost.d.cts +1 -1
  8. package/dist/components/jobPost/JobPost.d.ts +1 -1
  9. package/dist/components/jobPost/JobPost.js +2 -1
  10. package/dist/components/jobPost/JobPost.js.map +1 -1
  11. package/dist/components/primitives/command.d.cts +7 -7
  12. package/dist/components/primitives/command.d.ts +7 -7
  13. package/dist/components/primitives/input-otp.d.cts +2 -2
  14. package/dist/components/primitives/input-otp.d.ts +2 -2
  15. package/dist/components/primitives/radio-group.cjs +74 -0
  16. package/dist/components/primitives/radio-group.cjs.map +1 -0
  17. package/dist/components/primitives/radio-group.d.cts +9 -0
  18. package/dist/components/primitives/radio-group.d.ts +9 -0
  19. package/dist/components/primitives/radio-group.js +39 -0
  20. package/dist/components/primitives/radio-group.js.map +1 -0
  21. package/dist/components/ui/Button.cjs +2 -1
  22. package/dist/components/ui/Button.cjs.map +1 -1
  23. package/dist/components/ui/Button.d.cts +1 -1
  24. package/dist/components/ui/Button.d.ts +1 -1
  25. package/dist/components/ui/Button.js +2 -1
  26. package/dist/components/ui/Button.js.map +1 -1
  27. package/dist/components/ui/Checkbox.cjs +38 -13
  28. package/dist/components/ui/Checkbox.cjs.map +1 -1
  29. package/dist/components/ui/Checkbox.d.cts +2 -1
  30. package/dist/components/ui/Checkbox.d.ts +2 -1
  31. package/dist/components/ui/Checkbox.js +31 -11
  32. package/dist/components/ui/Checkbox.js.map +1 -1
  33. package/dist/components/ui/Combobox.cjs +62 -41
  34. package/dist/components/ui/Combobox.cjs.map +1 -1
  35. package/dist/components/ui/Combobox.js +53 -32
  36. package/dist/components/ui/Combobox.js.map +1 -1
  37. package/dist/components/ui/DatePicker.cjs +133 -149
  38. package/dist/components/ui/DatePicker.cjs.map +1 -1
  39. package/dist/components/ui/DatePicker.js +132 -148
  40. package/dist/components/ui/DatePicker.js.map +1 -1
  41. package/dist/components/ui/ListItem.cjs +40 -21
  42. package/dist/components/ui/ListItem.cjs.map +1 -1
  43. package/dist/components/ui/ListItem.js +36 -17
  44. package/dist/components/ui/ListItem.js.map +1 -1
  45. package/dist/components/ui/Radio.cjs +177 -0
  46. package/dist/components/ui/Radio.cjs.map +1 -0
  47. package/dist/components/ui/Radio.d.cts +27 -0
  48. package/dist/components/ui/Radio.d.ts +27 -0
  49. package/dist/components/ui/Radio.js +142 -0
  50. package/dist/components/ui/Radio.js.map +1 -0
  51. package/dist/components/ui/ReadMore.cjs +2 -1
  52. package/dist/components/ui/ReadMore.cjs.map +1 -1
  53. package/dist/components/ui/ReadMore.js +2 -1
  54. package/dist/components/ui/ReadMore.js.map +1 -1
  55. package/dist/components/ui/Select.cjs +48 -24
  56. package/dist/components/ui/Select.cjs.map +1 -1
  57. package/dist/components/ui/Select.js +49 -25
  58. package/dist/components/ui/Select.js.map +1 -1
  59. package/dist/components/ui/Switch.cjs +83 -0
  60. package/dist/components/ui/Switch.cjs.map +1 -0
  61. package/dist/components/ui/Switch.d.cts +10 -0
  62. package/dist/components/ui/Switch.d.ts +10 -0
  63. package/dist/components/ui/Switch.js +48 -0
  64. package/dist/components/ui/Switch.js.map +1 -0
  65. package/dist/components/ui/buttonShadcn.cjs +2 -9
  66. package/dist/components/ui/buttonShadcn.cjs.map +1 -1
  67. package/dist/components/ui/buttonShadcn.d.cts +2 -2
  68. package/dist/components/ui/buttonShadcn.d.ts +2 -2
  69. package/dist/components/ui/buttonShadcn.js +2 -9
  70. package/dist/components/ui/buttonShadcn.js.map +1 -1
  71. package/dist/components/ui/calendar.cjs +7 -17
  72. package/dist/components/ui/calendar.cjs.map +1 -1
  73. package/dist/components/ui/calendar.js +7 -17
  74. package/dist/components/ui/calendar.js.map +1 -1
  75. package/dist/{displayText-6TMMBOmQ.d.cts → displayText-ca_ofoAC.d.cts} +2 -2
  76. package/dist/{displayText-BCC_oy5I.d.ts → displayText-eoAHqSNz.d.ts} +2 -2
  77. package/dist/hooks/useDisplayText.d.cts +3 -3
  78. package/dist/hooks/useDisplayText.d.ts +3 -3
  79. package/dist/index.cjs +454 -327
  80. package/dist/index.cjs.map +1 -1
  81. package/dist/index.d.cts +12 -7
  82. package/dist/index.d.ts +12 -7
  83. package/dist/index.js +434 -309
  84. package/dist/index.js.map +1 -1
  85. package/dist/lib/locations.d.cts +2 -2
  86. package/dist/lib/locations.d.ts +2 -2
  87. package/dist/lib/mappings.d.cts +3 -3
  88. package/dist/lib/mappings.d.ts +3 -3
  89. package/dist/lib/salaryRange.d.cts +1 -1
  90. package/dist/lib/salaryRange.d.ts +1 -1
  91. package/dist/services/displayText.d.cts +3 -3
  92. package/dist/services/displayText.d.ts +3 -3
  93. package/dist/styles/globals.css +78 -0
  94. package/dist/styles/globals.css.map +1 -1
  95. package/dist/types/data/company_service_latest.d.cts +1 -1
  96. package/dist/types/data/company_service_latest.d.ts +1 -1
  97. package/dist/types/data/job_posting_service_latest.d.cts +1 -1
  98. package/dist/types/data/job_posting_service_latest.d.ts +1 -1
  99. package/dist/types/data/shared_pickle_output_latest.d.cts +1 -1
  100. package/dist/types/data/shared_pickle_output_latest.d.ts +1 -1
  101. package/package.json +7 -10
  102. package/dist/{company_service_latest-BUKbZgpZ.d.cts → company_service_latest-CRQFzMep.d.cts} +366 -366
  103. package/dist/{company_service_latest-BUKbZgpZ.d.ts → company_service_latest-CRQFzMep.d.ts} +366 -366
  104. package/dist/{job_posting_service_latest-2KcpupDl.d.cts → job_posting_service_latest-BOVbz68F.d.cts} +324 -324
  105. package/dist/{job_posting_service_latest-2KcpupDl.d.ts → job_posting_service_latest-BOVbz68F.d.ts} +324 -324
  106. package/dist/{shared_pickle_output_latest-D2n-PRlx.d.cts → shared_pickle_output_latest-DKOmTyYk.d.cts} +20 -20
  107. package/dist/{shared_pickle_output_latest-D2n-PRlx.d.ts → shared_pickle_output_latest-DKOmTyYk.d.ts} +20 -20
package/dist/index.cjs CHANGED
@@ -34,7 +34,7 @@ __export(index_exports, {
34
34
  BackButton: () => BackButton,
35
35
  Badge: () => Badge,
36
36
  Button: () => Button,
37
- Checkbox: () => Checkbox_default,
37
+ Checkbox: () => Checkbox,
38
38
  Chip: () => Chip_default,
39
39
  Combobox: () => Combobox,
40
40
  CompanyBenefits: () => CompanyBenefits,
@@ -55,9 +55,11 @@ __export(index_exports, {
55
55
  ListItem: () => ListItem_default,
56
56
  MapComponent: () => MapComponent_default,
57
57
  PlacesQueryInput: () => PlacesQueryInput_default,
58
+ Radio: () => Radio,
58
59
  ReadMore: () => ReadMore,
59
60
  Select: () => Select_default,
60
61
  SharedService: () => shared_pickle_output_latest_exports,
62
+ Switch: () => Switch,
61
63
  WindowHistoryProvider: () => WindowHistoryProvider,
62
64
  cn: () => cn,
63
65
  fetchLocation: () => fetchLocation,
@@ -66,76 +68,11 @@ __export(index_exports, {
66
68
  });
67
69
  module.exports = __toCommonJS(index_exports);
68
70
 
69
- // src/components/ui/Checkbox.tsx
70
- var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
71
- var import_lucide_react = require("lucide-react");
72
- var import_react = require("react");
73
-
74
- // src/lib/utils.ts
75
- var import_clsx = require("clsx");
76
- var import_tailwind_merge = require("tailwind-merge");
77
- function cn(...inputs) {
78
- return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
79
- }
80
-
81
- // src/components/ui/Checkbox.tsx
82
- var import_jsx_runtime = require("react/jsx-runtime");
83
- var CheckboxToggle = (0, import_react.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
84
- CheckboxPrimitive.Root,
85
- {
86
- ref,
87
- className: cn(
88
- "group",
89
- "peer",
90
- "h-5",
91
- "w-5",
92
- "shrink-0",
93
- "rounded-md",
94
- "border",
95
- "border-grey-10",
96
- "outline",
97
- "outline-1",
98
- "outline-offset-2",
99
- "outline-transparent",
100
- "hover:border-grey-20",
101
- "focus:outline-purple-100",
102
- "active:border-green-80",
103
- "disabled:cursor-not-allowed",
104
- "disabled:opacity-50",
105
- "data-[state=checked]:bg-green-80",
106
- "data-[state=indeterminate]:bg-green-80",
107
- "data-[state=checked]:text-white",
108
- "data-[state=indeterminate]:text-primary-foreground",
109
- props.disabled && "data-[state=checked]:text-foreground bg-grey-20 data-[state=checked]:bg-grey-20",
110
- className
111
- ),
112
- ...props,
113
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: [
114
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Check, { className: "hidden h-4 w-4 group-data-[state=checked]:block" }),
115
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Minus, { className: "hidden h-4 w-4 group-data-[state=indeterminate]:block" })
116
- ] })
117
- }
118
- ));
119
- CheckboxToggle.displayName = CheckboxPrimitive.Root.displayName;
120
- var Checkbox = (0, import_react.forwardRef)(
121
- ({ classNames, children, ...props }, ref) => {
122
- const { disabled } = props;
123
- const id = props.id ?? `${props.name ?? props.value?.toString()}-checkbox`;
124
- const labelClassName = disabled ? "text-grey-40 pointer-events-none" : "";
125
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: cn("flex space-x-2", classNames?.wrapper), children: [
126
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CheckboxToggle, { id, disabled, ref, ...props }),
127
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("label", { htmlFor: id, className: cn(labelClassName, classNames?.label), children })
128
- ] });
129
- }
130
- );
131
- Checkbox.displayName = "Checkbox";
132
- var Checkbox_default = Checkbox;
133
-
134
71
  // src/components/ui/Chip.tsx
135
72
  var import_cva = require("cva");
136
- var import_tailwind_merge2 = require("tailwind-merge");
137
- var import_jsx_runtime2 = require("react/jsx-runtime");
138
- var Chip = ({ className, variant, size, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: (0, import_tailwind_merge2.twMerge)(chipVariants({ variant, size, className })), ...props });
73
+ var import_tailwind_merge = require("tailwind-merge");
74
+ var import_jsx_runtime = require("react/jsx-runtime");
75
+ var Chip = ({ className, variant, size, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: (0, import_tailwind_merge.twMerge)(chipVariants({ variant, size, className })), ...props });
139
76
  var chipVariants = (0, import_cva.cva)(["flex", "items-center", "rounded-3xl", "border", "w-fit"], {
140
77
  variants: {
141
78
  variant: {
@@ -159,28 +96,35 @@ var Chip_default = Chip;
159
96
 
160
97
  // src/components/ui/Input.tsx
161
98
  var import_cva2 = require("cva");
162
- var import_lucide_react3 = require("lucide-react");
163
- var import_react2 = require("react");
99
+ var import_lucide_react2 = require("lucide-react");
100
+ var import_react = require("react");
101
+
102
+ // src/lib/utils.ts
103
+ var import_clsx = require("clsx");
104
+ var import_tailwind_merge2 = require("tailwind-merge");
105
+ function cn(...inputs) {
106
+ return (0, import_tailwind_merge2.twMerge)((0, import_clsx.clsx)(inputs));
107
+ }
164
108
 
165
109
  // src/components/ui/ErrorMessage.tsx
166
- var import_jsx_runtime3 = require("react/jsx-runtime");
110
+ var import_jsx_runtime2 = require("react/jsx-runtime");
167
111
  function ErrorMessage({ message, className, ...props }) {
168
112
  if (!message) return null;
169
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("p", { className: cn("px-1 text-xs text-red-600", className), ...props, children: message });
113
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: cn("px-1 text-xs text-red-600", className), ...props, children: message });
170
114
  }
171
115
  var ErrorMessage_default = ErrorMessage;
172
116
 
173
117
  // src/components/ui/Label.tsx
174
- var import_lucide_react2 = require("lucide-react");
118
+ var import_lucide_react = require("lucide-react");
175
119
 
176
120
  // src/components/primitives/tooltip.tsx
177
121
  var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
178
122
  var React = __toESM(require("react"), 1);
179
- var import_jsx_runtime4 = require("react/jsx-runtime");
123
+ var import_jsx_runtime3 = require("react/jsx-runtime");
180
124
  var TooltipProvider = TooltipPrimitive.Provider;
181
125
  var Tooltip = TooltipPrimitive.Root;
182
126
  var TooltipTrigger = TooltipPrimitive.Trigger;
183
- var TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
127
+ var TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
184
128
  TooltipPrimitive.Content,
185
129
  {
186
130
  ref,
@@ -195,11 +139,11 @@ var TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props },
195
139
  TooltipContent.displayName = TooltipPrimitive.Content.displayName;
196
140
 
197
141
  // src/components/ui/Label.tsx
198
- var import_jsx_runtime5 = require("react/jsx-runtime");
142
+ var import_jsx_runtime4 = require("react/jsx-runtime");
199
143
  function Label({ text, required, description, className, ...props }) {
200
144
  if (!text) return null;
201
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex w-full flex-row gap-1", children: [
202
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
145
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex w-full flex-row gap-1", children: [
146
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
203
147
  "label",
204
148
  {
205
149
  className: cn(
@@ -209,32 +153,32 @@ function Label({ text, required, description, className, ...props }) {
209
153
  ...props,
210
154
  children: [
211
155
  text,
212
- required && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "text-red-600", children: "\xA0*" })
156
+ required && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-600", children: "\xA0*" })
213
157
  ]
214
158
  }
215
159
  ),
216
- !!description && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(Tooltip, { children: [
217
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.InfoIcon, { className: "h-4 w-4" }) }),
218
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(TooltipContent, { className: "max-w-48", children: description })
160
+ !!description && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(Tooltip, { children: [
161
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.InfoIcon, { className: "h-4 w-4" }) }),
162
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(TooltipContent, { className: "max-w-48", children: description })
219
163
  ] }) })
220
164
  ] });
221
165
  }
222
166
  var Label_default = Label;
223
167
 
224
168
  // src/components/ui/Input.tsx
225
- var import_jsx_runtime6 = require("react/jsx-runtime");
226
- var Input = (0, import_react2.forwardRef)(
169
+ var import_jsx_runtime5 = require("react/jsx-runtime");
170
+ var Input = (0, import_react.forwardRef)(
227
171
  ({ label, error, description, theme, icon, onClear, value, onChange, classNames, ...props }, ref) => {
228
172
  const handleClear = () => {
229
173
  onChange?.({ target: { value: "" } });
230
174
  onClear?.();
231
175
  };
232
- const IconComponent = icon && import_lucide_react3.icons[icon];
176
+ const IconComponent = icon && import_lucide_react2.icons[icon];
233
177
  const placeholder = props.placeholder ?? (icon === "Search" ? "Search..." : "");
234
178
  const hasIcon = !!icon;
235
179
  const iconColor = theme === "dark" ? "text-white" : "text-grey-80";
236
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "group flex w-full flex-col gap-1", "data-testid": `input-wrapper-${props.id}`, children: [
237
- label && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
180
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "group flex w-full flex-col gap-1", "data-testid": `input-wrapper-${props.id}`, children: [
181
+ label && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
238
182
  Label_default,
239
183
  {
240
184
  text: label,
@@ -244,14 +188,14 @@ var Input = (0, import_react2.forwardRef)(
244
188
  className: classNames?.label
245
189
  }
246
190
  ),
247
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "relative flex flex-row items-center", children: [
248
- IconComponent && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
191
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "relative flex flex-row items-center", children: [
192
+ IconComponent && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
249
193
  IconComponent,
250
194
  {
251
195
  className: `absolute left-3 h-4 w-4 ${iconColor} opacity-50 group-hover:opacity-100`
252
196
  }
253
197
  ),
254
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
198
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
255
199
  "input",
256
200
  {
257
201
  className: cn(inputVariants({ theme, hasIcon })),
@@ -263,8 +207,8 @@ var Input = (0, import_react2.forwardRef)(
263
207
  ...props
264
208
  }
265
209
  ),
266
- hasIcon && value && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
267
- import_lucide_react3.X,
210
+ hasIcon && value && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
211
+ import_lucide_react2.X,
268
212
  {
269
213
  className: `absolute right-3 h-4 w-4 cursor-pointer ${iconColor}`,
270
214
  onClick: handleClear,
@@ -272,7 +216,7 @@ var Input = (0, import_react2.forwardRef)(
272
216
  }
273
217
  )
274
218
  ] }),
275
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ErrorMessage_default, { message: error })
219
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ErrorMessage_default, { message: error })
276
220
  ] });
277
221
  }
278
222
  );
@@ -330,6 +274,75 @@ var Input_default = Input;
330
274
  // src/components/ui/ListItem.tsx
331
275
  var import_lucide_react4 = require("lucide-react");
332
276
  var import_lucide_react5 = require("lucide-react");
277
+
278
+ // src/components/ui/Checkbox.tsx
279
+ var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
280
+ var import_lucide_react3 = require("lucide-react");
281
+ var import_react2 = require("react");
282
+ var import_jsx_runtime6 = require("react/jsx-runtime");
283
+ var CheckboxToggle = (0, import_react2.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
284
+ CheckboxPrimitive.Root,
285
+ {
286
+ ref,
287
+ className: cn(
288
+ "group",
289
+ "peer",
290
+ "h-5",
291
+ "w-5",
292
+ "shrink-0",
293
+ "rounded-md",
294
+ "border",
295
+ "border-grey-10",
296
+ "outline",
297
+ "outline-1",
298
+ "outline-offset-2",
299
+ "outline-transparent",
300
+ "hover:border-grey-20",
301
+ "focus:outline-purple-100",
302
+ "active:border-green-80",
303
+ "disabled:cursor-not-allowed",
304
+ "disabled:opacity-50",
305
+ "data-[state=checked]:bg-green-80",
306
+ "data-[state=indeterminate]:bg-green-80",
307
+ "data-[state=checked]:text-white",
308
+ "data-[state=indeterminate]:text-primary-foreground",
309
+ props.disabled && "data-[state=checked]:text-foreground bg-grey-20 data-[state=checked]:bg-grey-20",
310
+ className
311
+ ),
312
+ ...props,
313
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: [
314
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react3.Check, { className: "hidden h-4 w-4 group-data-[state=checked]:block" }),
315
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react3.Minus, { className: "hidden h-4 w-4 group-data-[state=indeterminate]:block" })
316
+ ] })
317
+ }
318
+ ));
319
+ CheckboxToggle.displayName = CheckboxPrimitive.Root.displayName;
320
+ var Checkbox = (0, import_react2.forwardRef)(
321
+ ({ error, classNames, children, ...props }, ref) => {
322
+ const id = props.id ?? `${props.name ?? props.value?.toString()}-checkbox`;
323
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: cn("flex space-x-2", classNames?.wrapper), children: [
324
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(CheckboxToggle, { id, ref, ...props }),
325
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
326
+ "label",
327
+ {
328
+ htmlFor: id,
329
+ className: cn(
330
+ "text-sm",
331
+ props.disabled && "pointer-events-none text-grey-40",
332
+ classNames?.label
333
+ ),
334
+ children: [
335
+ children,
336
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ErrorMessage_default, { message: error, className: "mt-1" })
337
+ ]
338
+ }
339
+ )
340
+ ] });
341
+ }
342
+ );
343
+ Checkbox.displayName = "Checkbox";
344
+
345
+ // src/components/ui/ListItem.tsx
333
346
  var import_jsx_runtime7 = require("react/jsx-runtime");
334
347
  function ListItem({
335
348
  icon,
@@ -360,7 +373,7 @@ function ListItem({
360
373
  "data-state": isSelected ? "checked" : "unchecked",
361
374
  children: [
362
375
  optionIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "mr-2", children: optionIcon }),
363
- hasCheckbox && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Checkbox_default, { id: value, checked: isSelected, onClick: (e) => e.preventDefault() }),
376
+ hasCheckbox && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Checkbox, { id: value, checked: isSelected, onClick: (e) => e.preventDefault() }),
364
377
  /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { children: [
365
378
  /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { children: title }),
366
379
  /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-xs text-grey-80", children: description })
@@ -754,7 +767,18 @@ Separator.displayName = SeparatorPrimitive.Root.displayName;
754
767
  // src/components/ui/Select.tsx
755
768
  var import_jsx_runtime13 = require("react/jsx-runtime");
756
769
  var Select = (0, import_react4.forwardRef)(
757
- ({ label, options, placeholder, multiselect, description, classNames, error, id, ...props }, ref) => {
770
+ ({
771
+ label,
772
+ options,
773
+ placeholder,
774
+ multiselect,
775
+ description,
776
+ classNames,
777
+ error,
778
+ id,
779
+ children: footer,
780
+ ...props
781
+ }, ref) => {
758
782
  const { value, defaultValue, dir, className, onChange, ...rest } = props;
759
783
  const [selected, setSelected] = (0, import_react4.useState)([]);
760
784
  const [open, setOpen] = (0, import_react4.useState)(false);
@@ -843,28 +867,30 @@ var Select = (0, import_react4.forwardRef)(
843
867
  onPointerDownOutside: toggleOpen,
844
868
  onKeyDown: closeOnEscape,
845
869
  children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(SelectPrimitive.Viewport, { children: [
846
- multiselect && !!chipLabels?.length && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
847
- SelectPrimitive.Group,
848
- {
849
- className: "mb-2 flex flex-row flex-wrap gap-1 px-2",
850
- "data-testid": "selected-labels",
851
- children: chipLabels?.map(
852
- (chip) => chip && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Chip_default, { size: "small", variant: "primary", children: [
853
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { children: chip.title }),
854
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
855
- import_lucide_react9.X,
856
- {
857
- size: 18,
858
- "data-testid": `chip-remove-${chip.value}`,
859
- className: "cursor-pointer",
860
- onClick: () => handleChange(chip.value)
861
- }
862
- )
863
- ] }, chip.title)
864
- )
865
- }
866
- ),
867
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Separator, {}),
870
+ multiselect && !!chipLabels?.length && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_jsx_runtime13.Fragment, { children: [
871
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
872
+ SelectPrimitive.Group,
873
+ {
874
+ className: "mb-2 flex flex-row flex-wrap gap-1 px-2",
875
+ "data-testid": "selected-labels",
876
+ children: chipLabels?.map(
877
+ (chip) => chip && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Chip_default, { size: "small", variant: "primary", children: [
878
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { children: chip.title }),
879
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
880
+ import_lucide_react9.X,
881
+ {
882
+ size: 18,
883
+ "data-testid": `chip-remove-${chip.value}`,
884
+ className: "cursor-pointer",
885
+ onClick: () => handleChange(chip.value)
886
+ }
887
+ )
888
+ ] }, chip.title)
889
+ )
890
+ }
891
+ ),
892
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Separator, {})
893
+ ] }),
868
894
  options?.map(({ id: id2, title, value: value2 }) => /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
869
895
  SelectPrimitive.Item,
870
896
  {
@@ -885,7 +911,18 @@ var Select = (0, import_react4.forwardRef)(
885
911
  ]
886
912
  },
887
913
  id2
888
- ))
914
+ )),
915
+ !!footer && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_jsx_runtime13.Fragment, { children: [
916
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Separator, {}),
917
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
918
+ SelectPrimitive.Group,
919
+ {
920
+ className: "mt-2 flex flex-row flex-wrap gap-1 px-2",
921
+ "data-testid": "selected-labels",
922
+ children: footer
923
+ }
924
+ )
925
+ ] })
889
926
  ] })
890
927
  }
891
928
  ) })
@@ -994,12 +1031,13 @@ var import_cva5 = require("cva");
994
1031
  var import_react5 = require("react");
995
1032
  var import_jsx_runtime17 = require("react/jsx-runtime");
996
1033
  var Button = (0, import_react5.forwardRef)(
997
- ({ className, variant, size, asChild = false, ...props }, ref) => {
1034
+ ({ className, variant, size, asChild = false, type = "button", ...props }, ref) => {
998
1035
  const Component = asChild ? import_react_slot.Slot : "button";
999
1036
  return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1000
1037
  Component,
1001
1038
  {
1002
1039
  className: cn(buttonVariants({ variant, size, className })),
1040
+ type,
1003
1041
  ref,
1004
1042
  ...props
1005
1043
  }
@@ -1317,15 +1355,114 @@ var triggerVariants = (0, import_cva6.cva)(
1317
1355
  }
1318
1356
  );
1319
1357
 
1358
+ // src/components/ui/Switch.tsx
1359
+ var SwitchPrimitive = __toESM(require("@radix-ui/react-switch"), 1);
1360
+ var import_react7 = require("react");
1361
+ var import_jsx_runtime20 = require("react/jsx-runtime");
1362
+ var Switch = (0, import_react7.forwardRef)(
1363
+ ({ label, error, className, ...props }, ref) => {
1364
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: cn("flex items-center", props.disabled && "opacity-50"), children: [
1365
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1366
+ SwitchPrimitive.Root,
1367
+ {
1368
+ className: cn(
1369
+ "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",
1370
+ className
1371
+ ),
1372
+ ref,
1373
+ ...props,
1374
+ children: /* @__PURE__ */ (0, import_jsx_runtime20.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]" })
1375
+ }
1376
+ ),
1377
+ label && /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("label", { className: "pl-4 text-sm leading-none text-inherit", htmlFor: props.name, children: [
1378
+ label,
1379
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ErrorMessage_default, { message: error, className: "mt-1" })
1380
+ ] })
1381
+ ] });
1382
+ }
1383
+ );
1384
+ Switch.displayName = "Switch";
1385
+
1386
+ // src/components/ui/Radio.tsx
1387
+ var import_react9 = require("react");
1388
+
1389
+ // src/components/primitives/radio-group.tsx
1390
+ var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"), 1);
1391
+ var import_react8 = require("react");
1392
+ var import_jsx_runtime21 = require("react/jsx-runtime");
1393
+ var RadioGroup = (0, import_react8.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(RadioGroupPrimitive.Root, { className, ...props, ref }));
1394
+ RadioGroup.displayName = RadioGroupPrimitive.Root.displayName;
1395
+ var RadioGroupItem = (0, import_react8.forwardRef)(({ className, children, ...props }, ref) => {
1396
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "group flex flex-row items-center gap-2", children: [
1397
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1398
+ RadioGroupPrimitive.Item,
1399
+ {
1400
+ ref,
1401
+ className: cn(
1402
+ "focus-visible:ring-ring 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 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",
1403
+ className
1404
+ ),
1405
+ ...props
1406
+ }
1407
+ ),
1408
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("label", { htmlFor: props.id, className: "text-sm peer-data-[disabled]:text-grey-40", children })
1409
+ ] });
1410
+ });
1411
+ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
1412
+
1413
+ // src/components/ui/Radio.tsx
1414
+ var import_jsx_runtime22 = require("react/jsx-runtime");
1415
+ var Radio = (0, import_react9.forwardRef)(
1416
+ ({
1417
+ label,
1418
+ error,
1419
+ description,
1420
+ options,
1421
+ classNames,
1422
+ onChange: handleValueChange,
1423
+ orientation,
1424
+ ...props
1425
+ }, ref) => {
1426
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: cn("flex flex-col gap-1", classNames?.root), children: [
1427
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Label_default, { text: label, description, required: props.required }),
1428
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1429
+ RadioGroup,
1430
+ {
1431
+ ref,
1432
+ className: cn(
1433
+ "flex text-sm",
1434
+ orientation === "vertical" ? "flex-col gap-2" : "flex-row gap-4",
1435
+ classNames?.group
1436
+ ),
1437
+ onValueChange: handleValueChange,
1438
+ ...props,
1439
+ children: options?.map(({ id, title, value }) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1440
+ RadioGroupItem,
1441
+ {
1442
+ value,
1443
+ id: `radio-group-item-${title}`,
1444
+ className: classNames?.item,
1445
+ children: title
1446
+ },
1447
+ id
1448
+ ))
1449
+ }
1450
+ ),
1451
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ErrorMessage_default, { message: error })
1452
+ ] });
1453
+ }
1454
+ );
1455
+ Radio.displayName = "Radio";
1456
+
1320
1457
  // src/components/ui/Counter.tsx
1321
1458
  var import_cva7 = require("cva");
1322
1459
  var import_lucide_react11 = require("lucide-react");
1323
- var import_react7 = require("react");
1324
- var import_jsx_runtime20 = require("react/jsx-runtime");
1325
- var Counter = (0, import_react7.forwardRef)(
1460
+ var import_react10 = require("react");
1461
+ var import_jsx_runtime23 = require("react/jsx-runtime");
1462
+ var Counter = (0, import_react10.forwardRef)(
1326
1463
  ({ label, error, min, max, step = 1, description, theme, value, classNames, onChange, ...props }, ref) => {
1327
- const [count, setCount] = (0, import_react7.useState)(0);
1328
- (0, import_react7.useEffect)(() => {
1464
+ const [count, setCount] = (0, import_react10.useState)(0);
1465
+ (0, import_react10.useEffect)(() => {
1329
1466
  setCount(value ?? 0);
1330
1467
  }, [value]);
1331
1468
  const handleChange = (e) => {
@@ -1356,13 +1493,13 @@ var Counter = (0, import_react7.forwardRef)(
1356
1493
  onChange?.(newValue);
1357
1494
  setCount(newValue);
1358
1495
  };
1359
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1496
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
1360
1497
  "div",
1361
1498
  {
1362
1499
  className: cn("flex w-auto flex-col gap-1", classNames?.root),
1363
1500
  "data-testid": `counter-wrapper-${props.id}`,
1364
1501
  children: [
1365
- label && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1502
+ label && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1366
1503
  Label_default,
1367
1504
  {
1368
1505
  text: label,
@@ -1372,17 +1509,17 @@ var Counter = (0, import_react7.forwardRef)(
1372
1509
  className: classNames?.label
1373
1510
  }
1374
1511
  ),
1375
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "relative flex w-[122px] flex-row items-center", children: [
1376
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1512
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "relative flex w-[122px] flex-row items-center", children: [
1513
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1377
1514
  "button",
1378
1515
  {
1379
1516
  type: "button",
1380
1517
  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",
1381
1518
  onClick: decrement,
1382
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lucide_react11.Minus, { className: "h-4 w-4 text-green-100" })
1519
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_lucide_react11.Minus, { className: "h-4 w-4 text-green-100" })
1383
1520
  }
1384
1521
  ),
1385
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1522
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1386
1523
  "input",
1387
1524
  {
1388
1525
  className: cn(counterVariants({ theme }), classNames?.input),
@@ -1393,17 +1530,17 @@ var Counter = (0, import_react7.forwardRef)(
1393
1530
  ...props
1394
1531
  }
1395
1532
  ),
1396
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1533
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1397
1534
  "button",
1398
1535
  {
1399
1536
  type: "button",
1400
1537
  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",
1401
1538
  onClick: increment,
1402
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lucide_react11.Plus, { className: "h-4 w-4 text-green-100" })
1539
+ children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_lucide_react11.Plus, { className: "h-4 w-4 text-green-100" })
1403
1540
  }
1404
1541
  )
1405
1542
  ] }),
1406
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ErrorMessage_default, { message: error })
1543
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ErrorMessage_default, { message: error })
1407
1544
  ]
1408
1545
  }
1409
1546
  );
@@ -1463,13 +1600,13 @@ var counterVariants = (0, import_cva7.cva)(
1463
1600
  // src/components/ui/Icon.tsx
1464
1601
  var import_react_slot2 = require("@radix-ui/react-slot");
1465
1602
  var import_cva8 = require("cva");
1466
- var import_react8 = require("react");
1603
+ var import_react11 = require("react");
1467
1604
  var import_tailwind_merge3 = require("tailwind-merge");
1468
- var import_jsx_runtime21 = require("react/jsx-runtime");
1469
- var Icon = (0, import_react8.forwardRef)(
1605
+ var import_jsx_runtime24 = require("react/jsx-runtime");
1606
+ var Icon = (0, import_react11.forwardRef)(
1470
1607
  ({ variant, size, active = false, readonly = false, className, ...props }, ref) => {
1471
1608
  const Component = readonly ? import_react_slot2.Slot : "button";
1472
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1609
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
1473
1610
  Component,
1474
1611
  {
1475
1612
  className: cn(
@@ -1538,14 +1675,14 @@ var iconVariants = (0, import_cva8.cva)(
1538
1675
  );
1539
1676
 
1540
1677
  // src/components/ui/InputOtp.tsx
1541
- var import_react9 = require("react");
1678
+ var import_react12 = require("react");
1542
1679
 
1543
1680
  // src/components/primitives/input-otp.tsx
1544
1681
  var import_input_otp = require("input-otp");
1545
1682
  var import_lucide_react12 = require("lucide-react");
1546
1683
  var React8 = __toESM(require("react"), 1);
1547
- var import_jsx_runtime22 = require("react/jsx-runtime");
1548
- var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1684
+ var import_jsx_runtime25 = require("react/jsx-runtime");
1685
+ var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
1549
1686
  import_input_otp.OTPInput,
1550
1687
  {
1551
1688
  ref,
@@ -1558,12 +1695,12 @@ var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, r
1558
1695
  }
1559
1696
  ));
1560
1697
  InputOTP.displayName = "InputOTP";
1561
- var InputOTPGroup = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { ref, className: cn("flex items-center", className), ...props }));
1698
+ var InputOTPGroup = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { ref, className: cn("flex items-center", className), ...props }));
1562
1699
  InputOTPGroup.displayName = "InputOTPGroup";
1563
1700
  var InputOTPSlot = React8.forwardRef(({ index, error, className, ...props }, ref) => {
1564
1701
  const inputOTPContext = React8.useContext(import_input_otp.OTPInputContext);
1565
1702
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
1566
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
1703
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
1567
1704
  "div",
1568
1705
  {
1569
1706
  ref,
@@ -1576,26 +1713,26 @@ var InputOTPSlot = React8.forwardRef(({ index, error, className, ...props }, ref
1576
1713
  ...props,
1577
1714
  children: [
1578
1715
  char,
1579
- hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "h-4 w-px animate-caret-blink bg-neutral-950 duration-1000 dark:bg-neutral-50" }) })
1716
+ hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "h-4 w-px animate-caret-blink bg-neutral-950 duration-1000 dark:bg-neutral-50" }) })
1580
1717
  ]
1581
1718
  }
1582
1719
  );
1583
1720
  });
1584
1721
  InputOTPSlot.displayName = "InputOTPSlot";
1585
- var InputOTPSeparator = React8.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react12.Dot, {}) }));
1722
+ var InputOTPSeparator = React8.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react12.Dot, {}) }));
1586
1723
  InputOTPSeparator.displayName = "InputOTPSeparator";
1587
1724
 
1588
1725
  // src/components/ui/InputOtp.tsx
1589
- var import_jsx_runtime23 = require("react/jsx-runtime");
1590
- var InputOtp = (0, import_react9.forwardRef)(
1726
+ var import_jsx_runtime26 = require("react/jsx-runtime");
1727
+ var InputOtp = (0, import_react12.forwardRef)(
1591
1728
  ({ digits, label, description, error, ...props }, ref) => {
1592
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
1729
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
1593
1730
  "div",
1594
1731
  {
1595
1732
  className: "group flex w-full flex-col gap-1",
1596
1733
  "data-testid": `input-otp-wrapper-${props.id}`,
1597
1734
  children: [
1598
- label && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1735
+ label && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
1599
1736
  Label_default,
1600
1737
  {
1601
1738
  text: label,
@@ -1604,17 +1741,17 @@ var InputOtp = (0, import_react9.forwardRef)(
1604
1741
  description
1605
1742
  }
1606
1743
  ),
1607
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "relative flex flex-row items-center", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1744
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "relative flex flex-row items-center", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
1608
1745
  InputOTP,
1609
1746
  {
1610
1747
  ref,
1611
1748
  maxLength: digits,
1612
1749
  "data-testid": `input-otp-element-${props.id}`,
1613
1750
  ...props,
1614
- children: [...Array(digits)].map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(InputOTPGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(InputOTPSlot, { index, error: Boolean(error) }) }, index))
1751
+ children: [...Array(digits)].map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(InputOTPGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(InputOTPSlot, { index, error: Boolean(error) }) }, index))
1615
1752
  }
1616
1753
  ) }),
1617
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ErrorMessage_default, { message: error })
1754
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ErrorMessage_default, { message: error })
1618
1755
  ]
1619
1756
  }
1620
1757
  );
@@ -1624,7 +1761,7 @@ InputOtp.displayName = "Input";
1624
1761
 
1625
1762
  // src/components/ui/LinkButton.tsx
1626
1763
  var import_link2 = __toESM(require("next/link"), 1);
1627
- var import_jsx_runtime24 = require("react/jsx-runtime");
1764
+ var import_jsx_runtime27 = require("react/jsx-runtime");
1628
1765
  var LinkButton = ({
1629
1766
  disabled = false,
1630
1767
  useAnchor = false,
@@ -1633,7 +1770,7 @@ var LinkButton = ({
1633
1770
  ...props
1634
1771
  }) => {
1635
1772
  const Component = useAnchor ? "a" : import_link2.default;
1636
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
1773
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
1637
1774
  Component,
1638
1775
  {
1639
1776
  href,
@@ -1646,13 +1783,13 @@ var LinkButton = ({
1646
1783
  };
1647
1784
 
1648
1785
  // src/components/ui/ReadMore.tsx
1649
- var import_react10 = require("react");
1786
+ var import_react13 = require("react");
1650
1787
  var import_react_markdown = __toESM(require("react-markdown"), 1);
1651
- var import_jsx_runtime25 = require("react/jsx-runtime");
1788
+ var import_jsx_runtime28 = require("react/jsx-runtime");
1652
1789
  function ReadMore({ text, ...props }) {
1653
- const [isExpanded, setIsExpanded] = (0, import_react10.useState)(false);
1654
- const [maxWords, setMaxWords] = (0, import_react10.useState)(160);
1655
- (0, import_react10.useEffect)(() => {
1790
+ const [isExpanded, setIsExpanded] = (0, import_react13.useState)(false);
1791
+ const [maxWords, setMaxWords] = (0, import_react13.useState)(160);
1792
+ (0, import_react13.useEffect)(() => {
1656
1793
  const updateMaxWords = () => {
1657
1794
  const windowWidth = window.innerWidth;
1658
1795
  if (windowWidth <= 768) {
@@ -1673,16 +1810,16 @@ function ReadMore({ text, ...props }) {
1673
1810
  }
1674
1811
  const toggleText = () => setIsExpanded(!isExpanded);
1675
1812
  const snippet = createReadMoreText(text, maxWords, isExpanded);
1676
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { ...props, children: [
1677
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { "data-testid": "read-more-text", className: "prose lg:prose-lg", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react_markdown.default, { children: snippet }) }),
1678
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
1813
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { ...props, children: [
1814
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { "data-testid": "read-more-text", className: "prose lg:prose-lg", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react_markdown.default, { children: snippet }) }),
1815
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1679
1816
  Button,
1680
1817
  {
1681
1818
  type: "button",
1682
1819
  className: "mt-2 flex items-center justify-center",
1683
1820
  variant: "link",
1684
1821
  onClick: toggleText,
1685
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("p", { className: "text-sm font-bold underline underline-offset-2", children: [
1822
+ children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("p", { className: "text-sm font-bold underline underline-offset-2", children: [
1686
1823
  "Read ",
1687
1824
  isExpanded ? "less" : "more"
1688
1825
  ] })
@@ -1693,18 +1830,19 @@ function ReadMore({ text, ...props }) {
1693
1830
 
1694
1831
  // src/components/ui/DatePicker.tsx
1695
1832
  var import_cva9 = require("cva");
1696
- var import_react11 = require("react");
1697
1833
  var import_date_fns = require("date-fns");
1834
+ var import_lucide_react14 = require("lucide-react");
1835
+ var import_react14 = require("react");
1698
1836
 
1699
1837
  // src/components/ui/calendar.tsx
1700
1838
  var import_lucide_react13 = require("lucide-react");
1701
1839
  var import_react_day_picker = require("react-day-picker");
1702
1840
 
1703
1841
  // src/components/ui/buttonShadcn.tsx
1704
- var React9 = __toESM(require("react"), 1);
1705
1842
  var import_react_slot3 = require("@radix-ui/react-slot");
1706
1843
  var import_class_variance_authority = require("class-variance-authority");
1707
- var import_jsx_runtime26 = require("react/jsx-runtime");
1844
+ var React9 = __toESM(require("react"), 1);
1845
+ var import_jsx_runtime29 = require("react/jsx-runtime");
1708
1846
  var buttonVariants2 = (0, import_class_variance_authority.cva)(
1709
1847
  "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-neutral-950 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 dark:focus-visible:ring-neutral-300",
1710
1848
  {
@@ -1733,27 +1871,15 @@ var buttonVariants2 = (0, import_class_variance_authority.cva)(
1733
1871
  var Button2 = React9.forwardRef(
1734
1872
  ({ className, variant, size, asChild = false, ...props }, ref) => {
1735
1873
  const Comp = asChild ? import_react_slot3.Slot : "button";
1736
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
1737
- Comp,
1738
- {
1739
- className: cn(buttonVariants2({ variant, size, className })),
1740
- ref,
1741
- ...props
1742
- }
1743
- );
1874
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Comp, { className: cn(buttonVariants2({ variant, size, className })), ref, ...props });
1744
1875
  }
1745
1876
  );
1746
1877
  Button2.displayName = "Button";
1747
1878
 
1748
1879
  // src/components/ui/calendar.tsx
1749
- var import_jsx_runtime27 = require("react/jsx-runtime");
1750
- function Calendar({
1751
- className,
1752
- classNames,
1753
- showOutsideDays = true,
1754
- ...props
1755
- }) {
1756
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
1880
+ var import_jsx_runtime30 = require("react/jsx-runtime");
1881
+ function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
1882
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1757
1883
  import_react_day_picker.DayPicker,
1758
1884
  {
1759
1885
  showOutsideDays,
@@ -1793,8 +1919,8 @@ function Calendar({
1793
1919
  ...classNames
1794
1920
  },
1795
1921
  components: {
1796
- IconLeft: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react13.ChevronLeft, { className: cn("h-4 w-4", className2), ...props2 }),
1797
- IconRight: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react13.ChevronRight, { className: cn("h-4 w-4", className2), ...props2 })
1922
+ IconLeft: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_lucide_react13.ChevronLeft, { className: cn("h-4 w-4", className2), ...props2 }),
1923
+ IconRight: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_lucide_react13.ChevronRight, { className: cn("h-4 w-4", className2), ...props2 })
1798
1924
  },
1799
1925
  ...props
1800
1926
  }
@@ -1803,92 +1929,91 @@ function Calendar({
1803
1929
  Calendar.displayName = "Calendar";
1804
1930
 
1805
1931
  // src/components/ui/DatePicker.tsx
1806
- var import_lucide_react14 = require("lucide-react");
1807
- var import_jsx_runtime28 = require("react/jsx-runtime");
1808
- var DatePicker = (0, import_react11.forwardRef)(({ label, description, required, classNames, value, onChange, error }, ref) => {
1809
- const [date, setDate] = (0, import_react11.useState)(null);
1810
- (0, import_react11.useEffect)(() => {
1811
- setDate(value ?? null);
1812
- }, [value]);
1813
- const handleDateSelect = (dateSelected) => {
1814
- if (!dateSelected) return;
1815
- onChange?.(dateSelected);
1816
- setDate(dateSelected);
1817
- };
1818
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: cn("flex w-auto flex-col gap-1"), children: [
1819
- label && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1820
- Label_default,
1821
- {
1822
- text: label,
1823
- required,
1824
- description,
1825
- className: classNames?.label
1826
- }
1827
- ),
1828
- /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Popover, { children: [
1829
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(PopoverTrigger, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: cn(datePickerStyle()), children: [
1830
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react14.Calendar, { size: 16 }),
1831
- date ? (0, import_date_fns.format)(date, "MM/dd/yyyy") : "Select a date"
1832
- ] }) }),
1833
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(PopoverContent, { ref, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
1834
- Calendar,
1932
+ var import_jsx_runtime31 = require("react/jsx-runtime");
1933
+ var DatePicker = (0, import_react14.forwardRef)(
1934
+ ({ label, description, required, classNames, value, onChange, error }, ref) => {
1935
+ const [date, setDate] = (0, import_react14.useState)(null);
1936
+ (0, import_react14.useEffect)(() => {
1937
+ setDate(value ?? null);
1938
+ }, [value]);
1939
+ const handleDateSelect = (dateSelected) => {
1940
+ if (!dateSelected) return;
1941
+ onChange?.(dateSelected);
1942
+ setDate(dateSelected);
1943
+ };
1944
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: cn("flex w-auto flex-col gap-1"), children: [
1945
+ label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1946
+ Label_default,
1835
1947
  {
1836
- mode: "single",
1837
- selected: date || void 0,
1838
- onSelect: handleDateSelect,
1839
- captionLayout: "dropdown",
1840
- showOutsideDays: true
1948
+ text: label,
1949
+ required,
1950
+ description,
1951
+ className: classNames?.label
1841
1952
  }
1842
- ) })
1843
- ] }),
1844
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ErrorMessage_default, { message: error })
1845
- ] });
1846
- });
1847
- var datePickerStyle = (0, import_cva9.cva)(
1848
- [
1849
- "placeholder:text-muted-foreground",
1850
- "focus-visible:ring-ring",
1851
- "inline-flex",
1852
- "w-full",
1853
- "h-11",
1854
- "items-center",
1855
- "justify-start",
1856
- "gap-3",
1857
- "rounded-lg",
1858
- "bg-transparent",
1859
- "px-3",
1860
- "pt-0.5",
1861
- "text-sm",
1862
- "shadow-sm",
1863
- "ring-grey-50",
1864
- "transition-colors",
1865
- "focus-visible:outline-none",
1866
- "focus-visible:ring-1",
1867
- "disabled:cursor-not-allowed",
1868
- "disabled:opacity-50",
1869
- "appearance-none",
1870
- "[&::-webkit-search-cancel-button]:appearance-none",
1871
- "[&::-webkit-search-decoration]:appearance-none",
1872
- "[&::-webkit-search-results-button]:appearance-none",
1873
- "[&::-webkit-search-results-decoration]:appearance-none",
1874
- "[&::-ms-clear]:display-none",
1875
- "[&::-ms-reveal]:display-none",
1876
- "text-grey-80 border"
1877
- ]
1953
+ ),
1954
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(Popover, { children: [
1955
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(PopoverTrigger, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: cn(datePickerStyle()), children: [
1956
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react14.Calendar, { size: 16 }),
1957
+ date ? (0, import_date_fns.format)(date, "MM/dd/yyyy") : "Select a date"
1958
+ ] }) }),
1959
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(PopoverContent, { ref, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1960
+ Calendar,
1961
+ {
1962
+ mode: "single",
1963
+ selected: date || void 0,
1964
+ onSelect: handleDateSelect,
1965
+ captionLayout: "dropdown",
1966
+ showOutsideDays: true
1967
+ }
1968
+ ) })
1969
+ ] }),
1970
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ErrorMessage_default, { message: error })
1971
+ ] });
1972
+ }
1878
1973
  );
1974
+ var datePickerStyle = (0, import_cva9.cva)([
1975
+ "placeholder:text-muted-foreground",
1976
+ "focus-visible:ring-ring",
1977
+ "inline-flex",
1978
+ "w-full",
1979
+ "h-11",
1980
+ "items-center",
1981
+ "justify-start",
1982
+ "gap-3",
1983
+ "rounded-lg",
1984
+ "bg-transparent",
1985
+ "px-3",
1986
+ "pt-0.5",
1987
+ "text-sm",
1988
+ "shadow-sm",
1989
+ "ring-grey-50",
1990
+ "transition-colors",
1991
+ "focus-visible:outline-none",
1992
+ "focus-visible:ring-1",
1993
+ "disabled:cursor-not-allowed",
1994
+ "disabled:opacity-50",
1995
+ "appearance-none",
1996
+ "[&::-webkit-search-cancel-button]:appearance-none",
1997
+ "[&::-webkit-search-decoration]:appearance-none",
1998
+ "[&::-webkit-search-results-button]:appearance-none",
1999
+ "[&::-webkit-search-results-decoration]:appearance-none",
2000
+ "[&::-ms-clear]:display-none",
2001
+ "[&::-ms-reveal]:display-none",
2002
+ "text-grey-80 border"
2003
+ ]);
1879
2004
 
1880
2005
  // src/components/company/CompanyBenefits.tsx
1881
- var import_jsx_runtime29 = require("react/jsx-runtime");
2006
+ var import_jsx_runtime32 = require("react/jsx-runtime");
1882
2007
  function CompanyBenefits({ benefits }) {
1883
2008
  if (!benefits) return null;
1884
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "flex flex-col gap-2", "data-testid": "company-benefits", children: [
1885
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("h2", { className: "break-word max-w-full text-xl font-bold text-black sm:max-w-2xl md:max-w-lg", children: "Company benefits" }),
1886
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("ul", { className: "flex flex-col gap-3", children: benefits.map((benefit, i) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("li", { className: "text-base text-grey-80", children: benefit }, `${benefit}-${i}`)) })
2009
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex flex-col gap-2", "data-testid": "company-benefits", children: [
2010
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("h2", { className: "break-word max-w-full text-xl font-bold text-black sm:max-w-2xl md:max-w-lg", children: "Company benefits" }),
2011
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: "flex flex-col gap-3", children: benefits.map((benefit, i) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("li", { className: "text-base text-grey-80", children: benefit }, `${benefit}-${i}`)) })
1887
2012
  ] });
1888
2013
  }
1889
2014
 
1890
2015
  // src/components/company/CompanyInformation.tsx
1891
- var import_jsx_runtime30 = require("react/jsx-runtime");
2016
+ var import_jsx_runtime33 = require("react/jsx-runtime");
1892
2017
  function CompanyInformation({
1893
2018
  name,
1894
2019
  how,
@@ -1896,8 +2021,8 @@ function CompanyInformation({
1896
2021
  wow,
1897
2022
  website
1898
2023
  }) {
1899
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex flex-col gap-2", children: [
1900
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
2024
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex flex-col gap-2", children: [
2025
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
1901
2026
  "h2",
1902
2027
  {
1903
2028
  "data-testid": "company-name",
@@ -1908,22 +2033,22 @@ function CompanyInformation({
1908
2033
  ]
1909
2034
  }
1910
2035
  ),
1911
- how && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { "data-testid": "company-information", className: "text-base text-grey-80", children: how }),
1912
- mission && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex gap-2", children: [
1913
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: "\u{1F680}" }),
1914
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("p", { className: "text-base text-grey-80", children: [
1915
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "pr-1 font-bold", children: "Mission" }),
2036
+ how && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { "data-testid": "company-information", className: "text-base text-grey-80", children: how }),
2037
+ mission && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex gap-2", children: [
2038
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { children: "\u{1F680}" }),
2039
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("p", { className: "text-base text-grey-80", children: [
2040
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "pr-1 font-bold", children: "Mission" }),
1916
2041
  mission
1917
2042
  ] })
1918
2043
  ] }),
1919
- wow && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex gap-2", children: [
1920
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: "\u{1F31F}" }),
1921
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("p", { className: "text-base text-grey-80", children: [
1922
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "pr-1 font-bold", children: "Wow Factor" }),
2044
+ wow && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex gap-2", children: [
2045
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { children: "\u{1F31F}" }),
2046
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("p", { className: "text-base text-grey-80", children: [
2047
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "pr-1 font-bold", children: "Wow Factor" }),
1923
2048
  wow
1924
2049
  ] })
1925
2050
  ] }),
1926
- website && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
2051
+ website && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1927
2052
  LinkButton,
1928
2053
  {
1929
2054
  "data-testid": "company-website-link",
@@ -1937,22 +2062,22 @@ function CompanyInformation({
1937
2062
  }
1938
2063
 
1939
2064
  // src/components/company/CompanyTake.tsx
1940
- var import_jsx_runtime31 = require("react/jsx-runtime");
2065
+ var import_jsx_runtime34 = require("react/jsx-runtime");
1941
2066
  function CompanyTake({ content, avatarSrc }) {
1942
2067
  if (!content) return null;
1943
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
2068
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
1944
2069
  "div",
1945
2070
  {
1946
2071
  "data-testid": "company-take",
1947
2072
  className: "align-center w-full justify-start rounded-2xl bg-green-90 p-6",
1948
2073
  children: [
1949
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-lg font-bold text-white sm:text-xl", children: "The Real Dill \u2618\uFE0F" }),
1950
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "mt-2 flex items-center justify-start", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-normal text-grey-10", children: content }) }),
1951
- /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "mt-8 flex w-full items-center gap-3", children: [
1952
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Avatar, { name: "Jon Lee", src: avatarSrc }),
1953
- /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col flex-wrap items-start", children: [
1954
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-bold text-white", children: "Jon Lee, PT, DPT, OCS, FAAOMPT, MBA" }),
1955
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xs font-normal text-grey-30", children: "Pickle co-founder" })
2074
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-lg font-bold text-white sm:text-xl", children: "The Real Dill \u2618\uFE0F" }),
2075
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "mt-2 flex items-center justify-start", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-sm font-normal text-grey-10", children: content }) }),
2076
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "mt-8 flex w-full items-center gap-3", children: [
2077
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Avatar, { name: "Jon Lee", src: avatarSrc }),
2078
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-col flex-wrap items-start", children: [
2079
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-sm font-bold text-white", children: "Jon Lee, PT, DPT, OCS, FAAOMPT, MBA" }),
2080
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-xs font-normal text-grey-30", children: "Pickle co-founder" })
1956
2081
  ] })
1957
2082
  ] })
1958
2083
  ]
@@ -1961,12 +2086,12 @@ function CompanyTake({ content, avatarSrc }) {
1961
2086
  }
1962
2087
 
1963
2088
  // src/components/jobPost/JobDescription.tsx
1964
- var import_jsx_runtime32 = require("react/jsx-runtime");
2089
+ var import_jsx_runtime35 = require("react/jsx-runtime");
1965
2090
  function JobDescription({ description }) {
1966
2091
  if (!description) return null;
1967
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex w-full flex-col gap-2", children: [
1968
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("h3", { className: "text-xl font-bold", children: "Job Description" }),
1969
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ReadMore, { text: description })
2092
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex w-full flex-col gap-2", children: [
2093
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("h3", { className: "text-xl font-bold", children: "Job Description" }),
2094
+ /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ReadMore, { text: description })
1970
2095
  ] });
1971
2096
  }
1972
2097
 
@@ -1979,33 +2104,33 @@ var import_lucide_react15 = require("lucide-react");
1979
2104
  var import_navigation2 = require("next/navigation");
1980
2105
 
1981
2106
  // src/hooks/useWindowHistory.ts
1982
- var import_react13 = require("react");
2107
+ var import_react16 = require("react");
1983
2108
 
1984
2109
  // src/contexts/WindowHistoryProvider.tsx
1985
2110
  var import_navigation = require("next/navigation");
1986
- var import_react12 = require("react");
1987
- var import_jsx_runtime33 = require("react/jsx-runtime");
1988
- var WindowHistoryContext = (0, import_react12.createContext)({});
2111
+ var import_react15 = require("react");
2112
+ var import_jsx_runtime36 = require("react/jsx-runtime");
2113
+ var WindowHistoryContext = (0, import_react15.createContext)({});
1989
2114
  function WindowHistoryProvider({ children }) {
1990
- const [history, setHistory] = (0, import_react12.useState)([]);
2115
+ const [history, setHistory] = (0, import_react15.useState)([]);
1991
2116
  const searchParams = (0, import_navigation.useSearchParams)();
1992
- (0, import_react12.useEffect)(() => {
2117
+ (0, import_react15.useEffect)(() => {
1993
2118
  setHistory(
1994
2119
  (prev) => prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]
1995
2120
  );
1996
2121
  }, [searchParams]);
1997
- const contextValue = (0, import_react12.useMemo)(() => ({ history }), [history]);
1998
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(WindowHistoryContext.Provider, { value: contextValue, children });
2122
+ const contextValue = (0, import_react15.useMemo)(() => ({ history }), [history]);
2123
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(WindowHistoryContext.Provider, { value: contextValue, children });
1999
2124
  }
2000
2125
 
2001
2126
  // src/hooks/useWindowHistory.ts
2002
2127
  function useWindowHistory() {
2003
- const windowHistoryContext = (0, import_react13.useContext)(WindowHistoryContext);
2128
+ const windowHistoryContext = (0, import_react16.useContext)(WindowHistoryContext);
2004
2129
  return windowHistoryContext;
2005
2130
  }
2006
2131
 
2007
2132
  // src/components/buttons/BackButton.tsx
2008
- var import_jsx_runtime34 = require("react/jsx-runtime");
2133
+ var import_jsx_runtime37 = require("react/jsx-runtime");
2009
2134
  function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
2010
2135
  const { history } = useWindowHistory();
2011
2136
  const router = (0, import_navigation2.useRouter)();
@@ -2018,7 +2143,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
2018
2143
  router.push(fallbackHref ?? "/");
2019
2144
  }
2020
2145
  };
2021
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
2146
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
2022
2147
  Icon,
2023
2148
  {
2024
2149
  "aria-label": "back button",
@@ -2027,7 +2152,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
2027
2152
  onClick: goBack,
2028
2153
  className,
2029
2154
  ...props,
2030
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react15.X, {})
2155
+ children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_lucide_react15.X, {})
2031
2156
  }
2032
2157
  );
2033
2158
  }
@@ -2058,7 +2183,7 @@ var iconMap = {
2058
2183
  };
2059
2184
 
2060
2185
  // src/components/jobPost/JobHeader.tsx
2061
- var import_jsx_runtime35 = require("react/jsx-runtime");
2186
+ var import_jsx_runtime38 = require("react/jsx-runtime");
2062
2187
  function JobHeader({
2063
2188
  title,
2064
2189
  subtitles,
@@ -2074,9 +2199,9 @@ function JobHeader({
2074
2199
  }) {
2075
2200
  const renderIcon = (icon) => {
2076
2201
  const Icon2 = iconMap[icon];
2077
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Icon2, { size: 18 });
2202
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Icon2, { size: 18 });
2078
2203
  };
2079
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
2204
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
2080
2205
  "div",
2081
2206
  {
2082
2207
  "data-testid": "job-header-root",
@@ -2085,8 +2210,8 @@ function JobHeader({
2085
2210
  !standalone && "rounded-3xl"
2086
2211
  ),
2087
2212
  children: [
2088
- !standalone && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "relative flex min-h-16 w-full items-center rounded-t-3xl bg-transparent md:min-h-24 md:flex-row lg:min-h-32", children: [
2089
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2213
+ !standalone && /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "relative flex min-h-16 w-full items-center rounded-t-3xl bg-transparent md:min-h-24 md:flex-row lg:min-h-32", children: [
2214
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2090
2215
  import_image.default,
2091
2216
  {
2092
2217
  className: "h-full w-full rounded-t-3xl object-cover",
@@ -2095,7 +2220,7 @@ function JobHeader({
2095
2220
  fill: true
2096
2221
  }
2097
2222
  ),
2098
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2223
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2099
2224
  BackButton,
2100
2225
  {
2101
2226
  acceptedRoutes: backAcceptedRoutes,
@@ -2104,12 +2229,12 @@ function JobHeader({
2104
2229
  "data-testid": "job-header-back-button"
2105
2230
  }
2106
2231
  ),
2107
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2232
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2108
2233
  "div",
2109
2234
  {
2110
2235
  className: "absolute left-4 top-8 md:left-6 md:top-16 lg:top-24",
2111
2236
  "data-testid": "job-header-avatar",
2112
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2237
+ children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2113
2238
  Avatar,
2114
2239
  {
2115
2240
  size: "large",
@@ -2123,9 +2248,9 @@ function JobHeader({
2123
2248
  }
2124
2249
  )
2125
2250
  ] }),
2126
- /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
2127
- /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col md:flex-row", children: [
2128
- standalone && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "-mt-4 mr-4 md:mt-0", "data-testid": "job-header-avatar", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2251
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
2252
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-col md:flex-row", children: [
2253
+ standalone && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "-mt-4 mr-4 md:mt-0", "data-testid": "job-header-avatar", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2129
2254
  Avatar,
2130
2255
  {
2131
2256
  size: "large",
@@ -2136,26 +2261,26 @@ function JobHeader({
2136
2261
  rel: "noopener noreferrer"
2137
2262
  }
2138
2263
  ) }),
2139
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg", children: subtitles?.map((subtitle, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
2264
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg", children: subtitles?.map((subtitle, i) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
2140
2265
  "div",
2141
2266
  {
2142
2267
  "data-testid": `job-header-subtitle-${i}`,
2143
2268
  className: "flex items-center",
2144
2269
  children: [
2145
2270
  subtitle,
2146
- i < subtitles.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_lucide_react17.Dot, { className: "mx-1 shrink-0", size: 10 })
2271
+ i < subtitles.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react17.Dot, { className: "mx-1 shrink-0", size: 10 })
2147
2272
  ]
2148
2273
  },
2149
2274
  subtitle
2150
2275
  )) })
2151
2276
  ] }),
2152
- /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
2277
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
2153
2278
  "div",
2154
2279
  {
2155
2280
  "data-testid": "job-header-content",
2156
2281
  className: "mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1",
2157
2282
  children: [
2158
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2283
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2159
2284
  "h2",
2160
2285
  {
2161
2286
  "data-testid": "job-header-title",
@@ -2163,7 +2288,7 @@ function JobHeader({
2163
2288
  children: title
2164
2289
  }
2165
2290
  ),
2166
- !!actions && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2291
+ !!actions && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2167
2292
  "div",
2168
2293
  {
2169
2294
  className: "flex w-full justify-end gap-2 md:w-auto",
@@ -2174,12 +2299,12 @@ function JobHeader({
2174
2299
  ]
2175
2300
  }
2176
2301
  ),
2177
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
2302
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
2178
2303
  "div",
2179
2304
  {
2180
2305
  "data-testid": "job-header-tags",
2181
2306
  className: "flex flex-row flex-wrap items-center justify-start gap-2",
2182
- children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
2307
+ children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
2183
2308
  Chip_default,
2184
2309
  {
2185
2310
  size: "small",
@@ -2188,7 +2313,7 @@ function JobHeader({
2188
2313
  "data-testid": `job-header-tag-${name}`,
2189
2314
  children: [
2190
2315
  renderIcon(icon),
2191
- /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { children: label })
2316
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { children: label })
2192
2317
  ]
2193
2318
  },
2194
2319
  name
@@ -2205,7 +2330,7 @@ function JobHeader({
2205
2330
  var DateFns = __toESM(require("date-fns"), 1);
2206
2331
 
2207
2332
  // src/hooks/useDisplayText.ts
2208
- var import_react14 = require("react");
2333
+ var import_react17 = require("react");
2209
2334
 
2210
2335
  // src/lib/mappings.ts
2211
2336
  var employmentTypeDisplayText = {
@@ -2649,9 +2774,9 @@ var DisplayTextService = class {
2649
2774
 
2650
2775
  // src/hooks/useDisplayText.ts
2651
2776
  var useDisplayText = (scope, value) => {
2652
- const [displayText, setDisplayText] = (0, import_react14.useState)("");
2653
- const displayService = (0, import_react14.useMemo)(() => new DisplayTextService(), []);
2654
- (0, import_react14.useEffect)(() => {
2777
+ const [displayText, setDisplayText] = (0, import_react17.useState)("");
2778
+ const displayService = (0, import_react17.useMemo)(() => new DisplayTextService(), []);
2779
+ (0, import_react17.useEffect)(() => {
2655
2780
  if (!displayService || !value) {
2656
2781
  setDisplayText("");
2657
2782
  return;
@@ -2790,7 +2915,7 @@ function salaryRange(salary) {
2790
2915
  }
2791
2916
 
2792
2917
  // src/components/jobPost/JobPost.tsx
2793
- var import_jsx_runtime36 = require("react/jsx-runtime");
2918
+ var import_jsx_runtime39 = require("react/jsx-runtime");
2794
2919
  function JobPost({
2795
2920
  job,
2796
2921
  bannerSrc,
@@ -2834,7 +2959,7 @@ function JobPost({
2834
2959
  label: formattedLocation
2835
2960
  }
2836
2961
  ].filter((t) => !!t);
2837
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
2962
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
2838
2963
  "div",
2839
2964
  {
2840
2965
  className: cn(
@@ -2842,7 +2967,7 @@ function JobPost({
2842
2967
  !standalone && "border-1 rounded-3xl border-grey-5"
2843
2968
  ),
2844
2969
  children: [
2845
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2970
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2846
2971
  JobHeader,
2847
2972
  {
2848
2973
  title: job.title,
@@ -2856,16 +2981,16 @@ function JobPost({
2856
2981
  tags
2857
2982
  }
2858
2983
  ),
2859
- /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-8 px-6", children: [
2860
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(JobDescription, { description: job.description }),
2861
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2984
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex flex-col gap-8 px-6", children: [
2985
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(JobDescription, { description: job.description }),
2986
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2862
2987
  CompanyTake,
2863
2988
  {
2864
2989
  avatarSrc,
2865
2990
  content: job.hiringOrganization?.companyNdg?.companyNdgTake
2866
2991
  }
2867
2992
  ),
2868
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
2993
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2869
2994
  CompanyInformation,
2870
2995
  {
2871
2996
  name: job.hiringOrganization?.companyName ?? "",
@@ -2875,7 +3000,7 @@ function JobPost({
2875
3000
  website: job.hiringOrganization?.companyWebsite
2876
3001
  }
2877
3002
  ),
2878
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3003
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
2879
3004
  CompanyBenefits,
2880
3005
  {
2881
3006
  benefits: job.hiringOrganization?.companyCareers?.companyBenefits?.map((b) => b.title).filter((d) => d !== void 0)
@@ -3124,9 +3249,11 @@ var jobPostSchema = import_zod3.z.object({
3124
3249
  ListItem,
3125
3250
  MapComponent,
3126
3251
  PlacesQueryInput,
3252
+ Radio,
3127
3253
  ReadMore,
3128
3254
  Select,
3129
3255
  SharedService,
3256
+ Switch,
3130
3257
  WindowHistoryProvider,
3131
3258
  cn,
3132
3259
  fetchLocation,