@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.
- package/dist/components/jobPost/JobDescription.cjs +2 -1
- package/dist/components/jobPost/JobDescription.cjs.map +1 -1
- package/dist/components/jobPost/JobDescription.js +2 -1
- package/dist/components/jobPost/JobDescription.js.map +1 -1
- package/dist/components/jobPost/JobPost.cjs +2 -1
- package/dist/components/jobPost/JobPost.cjs.map +1 -1
- package/dist/components/jobPost/JobPost.d.cts +1 -1
- package/dist/components/jobPost/JobPost.d.ts +1 -1
- package/dist/components/jobPost/JobPost.js +2 -1
- package/dist/components/jobPost/JobPost.js.map +1 -1
- package/dist/components/primitives/command.d.cts +7 -7
- package/dist/components/primitives/command.d.ts +7 -7
- package/dist/components/primitives/input-otp.d.cts +2 -2
- package/dist/components/primitives/input-otp.d.ts +2 -2
- package/dist/components/primitives/radio-group.cjs +74 -0
- package/dist/components/primitives/radio-group.cjs.map +1 -0
- package/dist/components/primitives/radio-group.d.cts +9 -0
- package/dist/components/primitives/radio-group.d.ts +9 -0
- package/dist/components/primitives/radio-group.js +39 -0
- package/dist/components/primitives/radio-group.js.map +1 -0
- package/dist/components/ui/Button.cjs +2 -1
- package/dist/components/ui/Button.cjs.map +1 -1
- package/dist/components/ui/Button.d.cts +1 -1
- package/dist/components/ui/Button.d.ts +1 -1
- package/dist/components/ui/Button.js +2 -1
- package/dist/components/ui/Button.js.map +1 -1
- package/dist/components/ui/Checkbox.cjs +38 -13
- package/dist/components/ui/Checkbox.cjs.map +1 -1
- package/dist/components/ui/Checkbox.d.cts +2 -1
- package/dist/components/ui/Checkbox.d.ts +2 -1
- package/dist/components/ui/Checkbox.js +31 -11
- package/dist/components/ui/Checkbox.js.map +1 -1
- package/dist/components/ui/Combobox.cjs +62 -41
- package/dist/components/ui/Combobox.cjs.map +1 -1
- package/dist/components/ui/Combobox.js +53 -32
- package/dist/components/ui/Combobox.js.map +1 -1
- package/dist/components/ui/DatePicker.cjs +133 -149
- package/dist/components/ui/DatePicker.cjs.map +1 -1
- package/dist/components/ui/DatePicker.js +132 -148
- package/dist/components/ui/DatePicker.js.map +1 -1
- package/dist/components/ui/ListItem.cjs +40 -21
- package/dist/components/ui/ListItem.cjs.map +1 -1
- package/dist/components/ui/ListItem.js +36 -17
- package/dist/components/ui/ListItem.js.map +1 -1
- package/dist/components/ui/Radio.cjs +177 -0
- package/dist/components/ui/Radio.cjs.map +1 -0
- package/dist/components/ui/Radio.d.cts +27 -0
- package/dist/components/ui/Radio.d.ts +27 -0
- package/dist/components/ui/Radio.js +142 -0
- package/dist/components/ui/Radio.js.map +1 -0
- package/dist/components/ui/ReadMore.cjs +2 -1
- package/dist/components/ui/ReadMore.cjs.map +1 -1
- package/dist/components/ui/ReadMore.js +2 -1
- package/dist/components/ui/ReadMore.js.map +1 -1
- package/dist/components/ui/Select.cjs +48 -24
- package/dist/components/ui/Select.cjs.map +1 -1
- package/dist/components/ui/Select.js +49 -25
- package/dist/components/ui/Select.js.map +1 -1
- package/dist/components/ui/Switch.cjs +83 -0
- package/dist/components/ui/Switch.cjs.map +1 -0
- package/dist/components/ui/Switch.d.cts +10 -0
- package/dist/components/ui/Switch.d.ts +10 -0
- package/dist/components/ui/Switch.js +48 -0
- package/dist/components/ui/Switch.js.map +1 -0
- package/dist/components/ui/buttonShadcn.cjs +2 -9
- package/dist/components/ui/buttonShadcn.cjs.map +1 -1
- package/dist/components/ui/buttonShadcn.d.cts +2 -2
- package/dist/components/ui/buttonShadcn.d.ts +2 -2
- package/dist/components/ui/buttonShadcn.js +2 -9
- package/dist/components/ui/buttonShadcn.js.map +1 -1
- package/dist/components/ui/calendar.cjs +7 -17
- package/dist/components/ui/calendar.cjs.map +1 -1
- package/dist/components/ui/calendar.js +7 -17
- package/dist/components/ui/calendar.js.map +1 -1
- package/dist/{displayText-6TMMBOmQ.d.cts → displayText-ca_ofoAC.d.cts} +2 -2
- package/dist/{displayText-BCC_oy5I.d.ts → displayText-eoAHqSNz.d.ts} +2 -2
- package/dist/hooks/useDisplayText.d.cts +3 -3
- package/dist/hooks/useDisplayText.d.ts +3 -3
- package/dist/index.cjs +454 -327
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -7
- package/dist/index.d.ts +12 -7
- package/dist/index.js +434 -309
- package/dist/index.js.map +1 -1
- package/dist/lib/locations.d.cts +2 -2
- package/dist/lib/locations.d.ts +2 -2
- package/dist/lib/mappings.d.cts +3 -3
- package/dist/lib/mappings.d.ts +3 -3
- package/dist/lib/salaryRange.d.cts +1 -1
- package/dist/lib/salaryRange.d.ts +1 -1
- package/dist/services/displayText.d.cts +3 -3
- package/dist/services/displayText.d.ts +3 -3
- package/dist/styles/globals.css +78 -0
- package/dist/styles/globals.css.map +1 -1
- package/dist/types/data/company_service_latest.d.cts +1 -1
- package/dist/types/data/company_service_latest.d.ts +1 -1
- package/dist/types/data/job_posting_service_latest.d.cts +1 -1
- package/dist/types/data/job_posting_service_latest.d.ts +1 -1
- package/dist/types/data/shared_pickle_output_latest.d.cts +1 -1
- package/dist/types/data/shared_pickle_output_latest.d.ts +1 -1
- package/package.json +7 -10
- package/dist/{company_service_latest-BUKbZgpZ.d.cts → company_service_latest-CRQFzMep.d.cts} +366 -366
- package/dist/{company_service_latest-BUKbZgpZ.d.ts → company_service_latest-CRQFzMep.d.ts} +366 -366
- package/dist/{job_posting_service_latest-2KcpupDl.d.cts → job_posting_service_latest-BOVbz68F.d.cts} +324 -324
- package/dist/{job_posting_service_latest-2KcpupDl.d.ts → job_posting_service_latest-BOVbz68F.d.ts} +324 -324
- package/dist/{shared_pickle_output_latest-D2n-PRlx.d.cts → shared_pickle_output_latest-DKOmTyYk.d.cts} +20 -20
- 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: () =>
|
|
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
|
|
137
|
-
var
|
|
138
|
-
var Chip = ({ className, variant, size, ...props }) => /* @__PURE__ */ (0,
|
|
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
|
|
163
|
-
var
|
|
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
|
|
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,
|
|
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
|
|
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
|
|
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,
|
|
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
|
|
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,
|
|
202
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
217
|
-
/* @__PURE__ */ (0,
|
|
218
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
226
|
-
var Input = (0,
|
|
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 &&
|
|
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,
|
|
237
|
-
label && /* @__PURE__ */ (0,
|
|
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,
|
|
248
|
-
IconComponent && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
267
|
-
|
|
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,
|
|
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)(
|
|
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
|
-
({
|
|
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.
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
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
|
|
1324
|
-
var
|
|
1325
|
-
var Counter = (0,
|
|
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,
|
|
1328
|
-
(0,
|
|
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,
|
|
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,
|
|
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,
|
|
1376
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
1603
|
+
var import_react11 = require("react");
|
|
1467
1604
|
var import_tailwind_merge3 = require("tailwind-merge");
|
|
1468
|
-
var
|
|
1469
|
-
var Icon = (0,
|
|
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,
|
|
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
|
|
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
|
|
1548
|
-
var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
1590
|
-
var InputOtp = (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
1786
|
+
var import_react13 = require("react");
|
|
1650
1787
|
var import_react_markdown = __toESM(require("react-markdown"), 1);
|
|
1651
|
-
var
|
|
1788
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
1652
1789
|
function ReadMore({ text, ...props }) {
|
|
1653
|
-
const [isExpanded, setIsExpanded] = (0,
|
|
1654
|
-
const [maxWords, setMaxWords] = (0,
|
|
1655
|
-
(0,
|
|
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,
|
|
1677
|
-
/* @__PURE__ */ (0,
|
|
1678
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
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,
|
|
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
|
|
1750
|
-
function Calendar({
|
|
1751
|
-
|
|
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,
|
|
1797
|
-
IconRight: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0,
|
|
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
|
|
1807
|
-
var
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
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
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
showOutsideDays: true
|
|
1948
|
+
text: label,
|
|
1949
|
+
required,
|
|
1950
|
+
description,
|
|
1951
|
+
className: classNames?.label
|
|
1841
1952
|
}
|
|
1842
|
-
)
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
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
|
|
2006
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
1882
2007
|
function CompanyBenefits({ benefits }) {
|
|
1883
2008
|
if (!benefits) return null;
|
|
1884
|
-
return /* @__PURE__ */ (0,
|
|
1885
|
-
/* @__PURE__ */ (0,
|
|
1886
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
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,
|
|
1900
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
1912
|
-
mission && /* @__PURE__ */ (0,
|
|
1913
|
-
/* @__PURE__ */ (0,
|
|
1914
|
-
/* @__PURE__ */ (0,
|
|
1915
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
1920
|
-
/* @__PURE__ */ (0,
|
|
1921
|
-
/* @__PURE__ */ (0,
|
|
1922
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
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,
|
|
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,
|
|
1950
|
-
/* @__PURE__ */ (0,
|
|
1951
|
-
/* @__PURE__ */ (0,
|
|
1952
|
-
/* @__PURE__ */ (0,
|
|
1953
|
-
/* @__PURE__ */ (0,
|
|
1954
|
-
/* @__PURE__ */ (0,
|
|
1955
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
2089
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
1965
2090
|
function JobDescription({ description }) {
|
|
1966
2091
|
if (!description) return null;
|
|
1967
|
-
return /* @__PURE__ */ (0,
|
|
1968
|
-
/* @__PURE__ */ (0,
|
|
1969
|
-
/* @__PURE__ */ (0,
|
|
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
|
|
2107
|
+
var import_react16 = require("react");
|
|
1983
2108
|
|
|
1984
2109
|
// src/contexts/WindowHistoryProvider.tsx
|
|
1985
2110
|
var import_navigation = require("next/navigation");
|
|
1986
|
-
var
|
|
1987
|
-
var
|
|
1988
|
-
var WindowHistoryContext = (0,
|
|
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,
|
|
2115
|
+
const [history, setHistory] = (0, import_react15.useState)([]);
|
|
1991
2116
|
const searchParams = (0, import_navigation.useSearchParams)();
|
|
1992
|
-
(0,
|
|
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,
|
|
1998
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
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
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
2202
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Icon2, { size: 18 });
|
|
2078
2203
|
};
|
|
2079
|
-
return /* @__PURE__ */ (0,
|
|
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,
|
|
2089
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
2127
|
-
/* @__PURE__ */ (0,
|
|
2128
|
-
standalone && /* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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
|
|
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,
|
|
2653
|
-
const displayService = (0,
|
|
2654
|
-
(0,
|
|
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
|
|
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,
|
|
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,
|
|
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,
|
|
2860
|
-
/* @__PURE__ */ (0,
|
|
2861
|
-
/* @__PURE__ */ (0,
|
|
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,
|
|
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,
|
|
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,
|