@next-degree/pickle-shared-js 0.7.52 → 0.9.3
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/README.md +4 -2
- 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 +41 -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 +39 -14
- 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 +32 -12
- package/dist/components/ui/Checkbox.js.map +1 -1
- package/dist/components/ui/Combobox.cjs +63 -42
- package/dist/components/ui/Combobox.cjs.map +1 -1
- package/dist/components/ui/Combobox.js +54 -33
- package/dist/components/ui/Combobox.js.map +1 -1
- package/dist/components/ui/DatePicker.cjs +135 -149
- package/dist/components/ui/DatePicker.cjs.map +1 -1
- package/dist/components/ui/DatePicker.d.cts +4 -0
- package/dist/components/ui/DatePicker.d.ts +4 -0
- package/dist/components/ui/DatePicker.js +134 -148
- package/dist/components/ui/DatePicker.js.map +1 -1
- package/dist/components/ui/ListItem.cjs +41 -22
- package/dist/components/ui/ListItem.cjs.map +1 -1
- package/dist/components/ui/ListItem.js +37 -18
- 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 +144 -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 +456 -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 +438 -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 && "bg-grey-20 data-[state=checked]:bg-grey-20 data-[state=checked]:text-foreground",
|
|
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
|
+
"peer aspect-square h-4 rounded-full border border-grey-10 shadow outline outline-1 outline-offset-2 outline-transparent focus:outline-none focus:outline-purple-100 focus-visible:ring-1 focus-visible:ring-ring active:border-green-80 disabled:cursor-not-allowed disabled:opacity-50 group-hover:border-grey-20 data-[state=checked]:border-4 data-[disabled]:border-grey-20 data-[state=checked]:border-green-90 data-[disabled]:bg-grey-10 data-[state=checked]:group-hover:border-green-80",
|
|
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,93 @@ 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, id, testId }, 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", { id, 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
|
-
|
|
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, { "data-testid": testId, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: cn(datePickerStyle(), classNames?.input), 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
|
+
className: classNames?.calendar
|
|
1968
|
+
}
|
|
1969
|
+
) })
|
|
1970
|
+
] }),
|
|
1971
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(ErrorMessage_default, { message: error })
|
|
1972
|
+
] });
|
|
1973
|
+
}
|
|
1878
1974
|
);
|
|
1975
|
+
var datePickerStyle = (0, import_cva9.cva)([
|
|
1976
|
+
"placeholder:text-muted-foreground",
|
|
1977
|
+
"focus-visible:ring-ring",
|
|
1978
|
+
"inline-flex",
|
|
1979
|
+
"w-full",
|
|
1980
|
+
"h-11",
|
|
1981
|
+
"items-center",
|
|
1982
|
+
"justify-start",
|
|
1983
|
+
"gap-3",
|
|
1984
|
+
"rounded-lg",
|
|
1985
|
+
"bg-transparent",
|
|
1986
|
+
"px-3",
|
|
1987
|
+
"pt-0.5",
|
|
1988
|
+
"text-sm",
|
|
1989
|
+
"shadow-sm",
|
|
1990
|
+
"ring-grey-50",
|
|
1991
|
+
"transition-colors",
|
|
1992
|
+
"focus-visible:outline-none",
|
|
1993
|
+
"focus-visible:ring-1",
|
|
1994
|
+
"disabled:cursor-not-allowed",
|
|
1995
|
+
"disabled:opacity-50",
|
|
1996
|
+
"appearance-none",
|
|
1997
|
+
"[&::-webkit-search-cancel-button]:appearance-none",
|
|
1998
|
+
"[&::-webkit-search-decoration]:appearance-none",
|
|
1999
|
+
"[&::-webkit-search-results-button]:appearance-none",
|
|
2000
|
+
"[&::-webkit-search-results-decoration]:appearance-none",
|
|
2001
|
+
"[&::-ms-clear]:display-none",
|
|
2002
|
+
"[&::-ms-reveal]:display-none",
|
|
2003
|
+
"text-grey-80 border",
|
|
2004
|
+
"font-normal"
|
|
2005
|
+
]);
|
|
1879
2006
|
|
|
1880
2007
|
// src/components/company/CompanyBenefits.tsx
|
|
1881
|
-
var
|
|
2008
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
1882
2009
|
function CompanyBenefits({ benefits }) {
|
|
1883
2010
|
if (!benefits) return null;
|
|
1884
|
-
return /* @__PURE__ */ (0,
|
|
1885
|
-
/* @__PURE__ */ (0,
|
|
1886
|
-
/* @__PURE__ */ (0,
|
|
2011
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex flex-col gap-2", "data-testid": "company-benefits", children: [
|
|
2012
|
+
/* @__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" }),
|
|
2013
|
+
/* @__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
2014
|
] });
|
|
1888
2015
|
}
|
|
1889
2016
|
|
|
1890
2017
|
// src/components/company/CompanyInformation.tsx
|
|
1891
|
-
var
|
|
2018
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
1892
2019
|
function CompanyInformation({
|
|
1893
2020
|
name,
|
|
1894
2021
|
how,
|
|
@@ -1896,8 +2023,8 @@ function CompanyInformation({
|
|
|
1896
2023
|
wow,
|
|
1897
2024
|
website
|
|
1898
2025
|
}) {
|
|
1899
|
-
return /* @__PURE__ */ (0,
|
|
1900
|
-
/* @__PURE__ */ (0,
|
|
2026
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
2027
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
1901
2028
|
"h2",
|
|
1902
2029
|
{
|
|
1903
2030
|
"data-testid": "company-name",
|
|
@@ -1908,22 +2035,22 @@ function CompanyInformation({
|
|
|
1908
2035
|
]
|
|
1909
2036
|
}
|
|
1910
2037
|
),
|
|
1911
|
-
how && /* @__PURE__ */ (0,
|
|
1912
|
-
mission && /* @__PURE__ */ (0,
|
|
1913
|
-
/* @__PURE__ */ (0,
|
|
1914
|
-
/* @__PURE__ */ (0,
|
|
1915
|
-
/* @__PURE__ */ (0,
|
|
2038
|
+
how && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("p", { "data-testid": "company-information", className: "text-base text-grey-80", children: how }),
|
|
2039
|
+
mission && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex gap-2", children: [
|
|
2040
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { children: "\u{1F680}" }),
|
|
2041
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("p", { className: "text-base text-grey-80", children: [
|
|
2042
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "pr-1 font-bold", children: "Mission" }),
|
|
1916
2043
|
mission
|
|
1917
2044
|
] })
|
|
1918
2045
|
] }),
|
|
1919
|
-
wow && /* @__PURE__ */ (0,
|
|
1920
|
-
/* @__PURE__ */ (0,
|
|
1921
|
-
/* @__PURE__ */ (0,
|
|
1922
|
-
/* @__PURE__ */ (0,
|
|
2046
|
+
wow && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex gap-2", children: [
|
|
2047
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { children: "\u{1F31F}" }),
|
|
2048
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("p", { className: "text-base text-grey-80", children: [
|
|
2049
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "pr-1 font-bold", children: "Wow Factor" }),
|
|
1923
2050
|
wow
|
|
1924
2051
|
] })
|
|
1925
2052
|
] }),
|
|
1926
|
-
website && /* @__PURE__ */ (0,
|
|
2053
|
+
website && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
1927
2054
|
LinkButton,
|
|
1928
2055
|
{
|
|
1929
2056
|
"data-testid": "company-website-link",
|
|
@@ -1937,22 +2064,22 @@ function CompanyInformation({
|
|
|
1937
2064
|
}
|
|
1938
2065
|
|
|
1939
2066
|
// src/components/company/CompanyTake.tsx
|
|
1940
|
-
var
|
|
2067
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
1941
2068
|
function CompanyTake({ content, avatarSrc }) {
|
|
1942
2069
|
if (!content) return null;
|
|
1943
|
-
return /* @__PURE__ */ (0,
|
|
2070
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
|
1944
2071
|
"div",
|
|
1945
2072
|
{
|
|
1946
2073
|
"data-testid": "company-take",
|
|
1947
2074
|
className: "align-center w-full justify-start rounded-2xl bg-green-90 p-6",
|
|
1948
2075
|
children: [
|
|
1949
|
-
/* @__PURE__ */ (0,
|
|
1950
|
-
/* @__PURE__ */ (0,
|
|
1951
|
-
/* @__PURE__ */ (0,
|
|
1952
|
-
/* @__PURE__ */ (0,
|
|
1953
|
-
/* @__PURE__ */ (0,
|
|
1954
|
-
/* @__PURE__ */ (0,
|
|
1955
|
-
/* @__PURE__ */ (0,
|
|
2076
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-lg font-bold text-white sm:text-xl", children: "The Real Dill \u2618\uFE0F" }),
|
|
2077
|
+
/* @__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 }) }),
|
|
2078
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "mt-8 flex w-full items-center gap-3", children: [
|
|
2079
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Avatar, { name: "Jon Lee", src: avatarSrc }),
|
|
2080
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex flex-col flex-wrap items-start", children: [
|
|
2081
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-sm font-bold text-white", children: "Jon Lee, PT, DPT, OCS, FAAOMPT, MBA" }),
|
|
2082
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { className: "text-xs font-normal text-grey-30", children: "Pickle co-founder" })
|
|
1956
2083
|
] })
|
|
1957
2084
|
] })
|
|
1958
2085
|
]
|
|
@@ -1961,12 +2088,12 @@ function CompanyTake({ content, avatarSrc }) {
|
|
|
1961
2088
|
}
|
|
1962
2089
|
|
|
1963
2090
|
// src/components/jobPost/JobDescription.tsx
|
|
1964
|
-
var
|
|
2091
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
1965
2092
|
function JobDescription({ description }) {
|
|
1966
2093
|
if (!description) return null;
|
|
1967
|
-
return /* @__PURE__ */ (0,
|
|
1968
|
-
/* @__PURE__ */ (0,
|
|
1969
|
-
/* @__PURE__ */ (0,
|
|
2094
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex w-full flex-col gap-2", children: [
|
|
2095
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("h3", { className: "text-xl font-bold", children: "Job Description" }),
|
|
2096
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ReadMore, { text: description })
|
|
1970
2097
|
] });
|
|
1971
2098
|
}
|
|
1972
2099
|
|
|
@@ -1979,33 +2106,33 @@ var import_lucide_react15 = require("lucide-react");
|
|
|
1979
2106
|
var import_navigation2 = require("next/navigation");
|
|
1980
2107
|
|
|
1981
2108
|
// src/hooks/useWindowHistory.ts
|
|
1982
|
-
var
|
|
2109
|
+
var import_react16 = require("react");
|
|
1983
2110
|
|
|
1984
2111
|
// src/contexts/WindowHistoryProvider.tsx
|
|
1985
2112
|
var import_navigation = require("next/navigation");
|
|
1986
|
-
var
|
|
1987
|
-
var
|
|
1988
|
-
var WindowHistoryContext = (0,
|
|
2113
|
+
var import_react15 = require("react");
|
|
2114
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2115
|
+
var WindowHistoryContext = (0, import_react15.createContext)({});
|
|
1989
2116
|
function WindowHistoryProvider({ children }) {
|
|
1990
|
-
const [history, setHistory] = (0,
|
|
2117
|
+
const [history, setHistory] = (0, import_react15.useState)([]);
|
|
1991
2118
|
const searchParams = (0, import_navigation.useSearchParams)();
|
|
1992
|
-
(0,
|
|
2119
|
+
(0, import_react15.useEffect)(() => {
|
|
1993
2120
|
setHistory(
|
|
1994
2121
|
(prev) => prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]
|
|
1995
2122
|
);
|
|
1996
2123
|
}, [searchParams]);
|
|
1997
|
-
const contextValue = (0,
|
|
1998
|
-
return /* @__PURE__ */ (0,
|
|
2124
|
+
const contextValue = (0, import_react15.useMemo)(() => ({ history }), [history]);
|
|
2125
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(WindowHistoryContext.Provider, { value: contextValue, children });
|
|
1999
2126
|
}
|
|
2000
2127
|
|
|
2001
2128
|
// src/hooks/useWindowHistory.ts
|
|
2002
2129
|
function useWindowHistory() {
|
|
2003
|
-
const windowHistoryContext = (0,
|
|
2130
|
+
const windowHistoryContext = (0, import_react16.useContext)(WindowHistoryContext);
|
|
2004
2131
|
return windowHistoryContext;
|
|
2005
2132
|
}
|
|
2006
2133
|
|
|
2007
2134
|
// src/components/buttons/BackButton.tsx
|
|
2008
|
-
var
|
|
2135
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
2009
2136
|
function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
2010
2137
|
const { history } = useWindowHistory();
|
|
2011
2138
|
const router = (0, import_navigation2.useRouter)();
|
|
@@ -2018,7 +2145,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
2018
2145
|
router.push(fallbackHref ?? "/");
|
|
2019
2146
|
}
|
|
2020
2147
|
};
|
|
2021
|
-
return /* @__PURE__ */ (0,
|
|
2148
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2022
2149
|
Icon,
|
|
2023
2150
|
{
|
|
2024
2151
|
"aria-label": "back button",
|
|
@@ -2027,7 +2154,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
2027
2154
|
onClick: goBack,
|
|
2028
2155
|
className,
|
|
2029
2156
|
...props,
|
|
2030
|
-
children: /* @__PURE__ */ (0,
|
|
2157
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_lucide_react15.X, {})
|
|
2031
2158
|
}
|
|
2032
2159
|
);
|
|
2033
2160
|
}
|
|
@@ -2058,7 +2185,7 @@ var iconMap = {
|
|
|
2058
2185
|
};
|
|
2059
2186
|
|
|
2060
2187
|
// src/components/jobPost/JobHeader.tsx
|
|
2061
|
-
var
|
|
2188
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
2062
2189
|
function JobHeader({
|
|
2063
2190
|
title,
|
|
2064
2191
|
subtitles,
|
|
@@ -2074,9 +2201,9 @@ function JobHeader({
|
|
|
2074
2201
|
}) {
|
|
2075
2202
|
const renderIcon = (icon) => {
|
|
2076
2203
|
const Icon2 = iconMap[icon];
|
|
2077
|
-
return /* @__PURE__ */ (0,
|
|
2204
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Icon2, { size: 18 });
|
|
2078
2205
|
};
|
|
2079
|
-
return /* @__PURE__ */ (0,
|
|
2206
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
2080
2207
|
"div",
|
|
2081
2208
|
{
|
|
2082
2209
|
"data-testid": "job-header-root",
|
|
@@ -2085,8 +2212,8 @@ function JobHeader({
|
|
|
2085
2212
|
!standalone && "rounded-3xl"
|
|
2086
2213
|
),
|
|
2087
2214
|
children: [
|
|
2088
|
-
!standalone && /* @__PURE__ */ (0,
|
|
2089
|
-
/* @__PURE__ */ (0,
|
|
2215
|
+
!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: [
|
|
2216
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2090
2217
|
import_image.default,
|
|
2091
2218
|
{
|
|
2092
2219
|
className: "h-full w-full rounded-t-3xl object-cover",
|
|
@@ -2095,7 +2222,7 @@ function JobHeader({
|
|
|
2095
2222
|
fill: true
|
|
2096
2223
|
}
|
|
2097
2224
|
),
|
|
2098
|
-
/* @__PURE__ */ (0,
|
|
2225
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2099
2226
|
BackButton,
|
|
2100
2227
|
{
|
|
2101
2228
|
acceptedRoutes: backAcceptedRoutes,
|
|
@@ -2104,12 +2231,12 @@ function JobHeader({
|
|
|
2104
2231
|
"data-testid": "job-header-back-button"
|
|
2105
2232
|
}
|
|
2106
2233
|
),
|
|
2107
|
-
/* @__PURE__ */ (0,
|
|
2234
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2108
2235
|
"div",
|
|
2109
2236
|
{
|
|
2110
2237
|
className: "absolute left-4 top-8 md:left-6 md:top-16 lg:top-24",
|
|
2111
2238
|
"data-testid": "job-header-avatar",
|
|
2112
|
-
children: /* @__PURE__ */ (0,
|
|
2239
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2113
2240
|
Avatar,
|
|
2114
2241
|
{
|
|
2115
2242
|
size: "large",
|
|
@@ -2123,9 +2250,9 @@ function JobHeader({
|
|
|
2123
2250
|
}
|
|
2124
2251
|
)
|
|
2125
2252
|
] }),
|
|
2126
|
-
/* @__PURE__ */ (0,
|
|
2127
|
-
/* @__PURE__ */ (0,
|
|
2128
|
-
standalone && /* @__PURE__ */ (0,
|
|
2253
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
|
|
2254
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-col md:flex-row", children: [
|
|
2255
|
+
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
2256
|
Avatar,
|
|
2130
2257
|
{
|
|
2131
2258
|
size: "large",
|
|
@@ -2136,26 +2263,26 @@ function JobHeader({
|
|
|
2136
2263
|
rel: "noopener noreferrer"
|
|
2137
2264
|
}
|
|
2138
2265
|
) }),
|
|
2139
|
-
/* @__PURE__ */ (0,
|
|
2266
|
+
/* @__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
2267
|
"div",
|
|
2141
2268
|
{
|
|
2142
2269
|
"data-testid": `job-header-subtitle-${i}`,
|
|
2143
2270
|
className: "flex items-center",
|
|
2144
2271
|
children: [
|
|
2145
2272
|
subtitle,
|
|
2146
|
-
i < subtitles.length - 1 && /* @__PURE__ */ (0,
|
|
2273
|
+
i < subtitles.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_lucide_react17.Dot, { className: "mx-1 shrink-0", size: 10 })
|
|
2147
2274
|
]
|
|
2148
2275
|
},
|
|
2149
2276
|
subtitle
|
|
2150
2277
|
)) })
|
|
2151
2278
|
] }),
|
|
2152
|
-
/* @__PURE__ */ (0,
|
|
2279
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
2153
2280
|
"div",
|
|
2154
2281
|
{
|
|
2155
2282
|
"data-testid": "job-header-content",
|
|
2156
2283
|
className: "mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1",
|
|
2157
2284
|
children: [
|
|
2158
|
-
/* @__PURE__ */ (0,
|
|
2285
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2159
2286
|
"h2",
|
|
2160
2287
|
{
|
|
2161
2288
|
"data-testid": "job-header-title",
|
|
@@ -2163,7 +2290,7 @@ function JobHeader({
|
|
|
2163
2290
|
children: title
|
|
2164
2291
|
}
|
|
2165
2292
|
),
|
|
2166
|
-
!!actions && /* @__PURE__ */ (0,
|
|
2293
|
+
!!actions && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2167
2294
|
"div",
|
|
2168
2295
|
{
|
|
2169
2296
|
className: "flex w-full justify-end gap-2 md:w-auto",
|
|
@@ -2174,12 +2301,12 @@ function JobHeader({
|
|
|
2174
2301
|
]
|
|
2175
2302
|
}
|
|
2176
2303
|
),
|
|
2177
|
-
/* @__PURE__ */ (0,
|
|
2304
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2178
2305
|
"div",
|
|
2179
2306
|
{
|
|
2180
2307
|
"data-testid": "job-header-tags",
|
|
2181
2308
|
className: "flex flex-row flex-wrap items-center justify-start gap-2",
|
|
2182
|
-
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0,
|
|
2309
|
+
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
2183
2310
|
Chip_default,
|
|
2184
2311
|
{
|
|
2185
2312
|
size: "small",
|
|
@@ -2188,7 +2315,7 @@ function JobHeader({
|
|
|
2188
2315
|
"data-testid": `job-header-tag-${name}`,
|
|
2189
2316
|
children: [
|
|
2190
2317
|
renderIcon(icon),
|
|
2191
|
-
/* @__PURE__ */ (0,
|
|
2318
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { children: label })
|
|
2192
2319
|
]
|
|
2193
2320
|
},
|
|
2194
2321
|
name
|
|
@@ -2205,7 +2332,7 @@ function JobHeader({
|
|
|
2205
2332
|
var DateFns = __toESM(require("date-fns"), 1);
|
|
2206
2333
|
|
|
2207
2334
|
// src/hooks/useDisplayText.ts
|
|
2208
|
-
var
|
|
2335
|
+
var import_react17 = require("react");
|
|
2209
2336
|
|
|
2210
2337
|
// src/lib/mappings.ts
|
|
2211
2338
|
var employmentTypeDisplayText = {
|
|
@@ -2649,9 +2776,9 @@ var DisplayTextService = class {
|
|
|
2649
2776
|
|
|
2650
2777
|
// src/hooks/useDisplayText.ts
|
|
2651
2778
|
var useDisplayText = (scope, value) => {
|
|
2652
|
-
const [displayText, setDisplayText] = (0,
|
|
2653
|
-
const displayService = (0,
|
|
2654
|
-
(0,
|
|
2779
|
+
const [displayText, setDisplayText] = (0, import_react17.useState)("");
|
|
2780
|
+
const displayService = (0, import_react17.useMemo)(() => new DisplayTextService(), []);
|
|
2781
|
+
(0, import_react17.useEffect)(() => {
|
|
2655
2782
|
if (!displayService || !value) {
|
|
2656
2783
|
setDisplayText("");
|
|
2657
2784
|
return;
|
|
@@ -2790,7 +2917,7 @@ function salaryRange(salary) {
|
|
|
2790
2917
|
}
|
|
2791
2918
|
|
|
2792
2919
|
// src/components/jobPost/JobPost.tsx
|
|
2793
|
-
var
|
|
2920
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
2794
2921
|
function JobPost({
|
|
2795
2922
|
job,
|
|
2796
2923
|
bannerSrc,
|
|
@@ -2834,7 +2961,7 @@ function JobPost({
|
|
|
2834
2961
|
label: formattedLocation
|
|
2835
2962
|
}
|
|
2836
2963
|
].filter((t) => !!t);
|
|
2837
|
-
return /* @__PURE__ */ (0,
|
|
2964
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
2838
2965
|
"div",
|
|
2839
2966
|
{
|
|
2840
2967
|
className: cn(
|
|
@@ -2842,7 +2969,7 @@ function JobPost({
|
|
|
2842
2969
|
!standalone && "border-1 rounded-3xl border-grey-5"
|
|
2843
2970
|
),
|
|
2844
2971
|
children: [
|
|
2845
|
-
/* @__PURE__ */ (0,
|
|
2972
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2846
2973
|
JobHeader,
|
|
2847
2974
|
{
|
|
2848
2975
|
title: job.title,
|
|
@@ -2856,16 +2983,16 @@ function JobPost({
|
|
|
2856
2983
|
tags
|
|
2857
2984
|
}
|
|
2858
2985
|
),
|
|
2859
|
-
/* @__PURE__ */ (0,
|
|
2860
|
-
/* @__PURE__ */ (0,
|
|
2861
|
-
/* @__PURE__ */ (0,
|
|
2986
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex flex-col gap-8 px-6", children: [
|
|
2987
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(JobDescription, { description: job.description }),
|
|
2988
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2862
2989
|
CompanyTake,
|
|
2863
2990
|
{
|
|
2864
2991
|
avatarSrc,
|
|
2865
2992
|
content: job.hiringOrganization?.companyNdg?.companyNdgTake
|
|
2866
2993
|
}
|
|
2867
2994
|
),
|
|
2868
|
-
/* @__PURE__ */ (0,
|
|
2995
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2869
2996
|
CompanyInformation,
|
|
2870
2997
|
{
|
|
2871
2998
|
name: job.hiringOrganization?.companyName ?? "",
|
|
@@ -2875,7 +3002,7 @@ function JobPost({
|
|
|
2875
3002
|
website: job.hiringOrganization?.companyWebsite
|
|
2876
3003
|
}
|
|
2877
3004
|
),
|
|
2878
|
-
/* @__PURE__ */ (0,
|
|
3005
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2879
3006
|
CompanyBenefits,
|
|
2880
3007
|
{
|
|
2881
3008
|
benefits: job.hiringOrganization?.companyCareers?.companyBenefits?.map((b) => b.title).filter((d) => d !== void 0)
|
|
@@ -3124,9 +3251,11 @@ var jobPostSchema = import_zod3.z.object({
|
|
|
3124
3251
|
ListItem,
|
|
3125
3252
|
MapComponent,
|
|
3126
3253
|
PlacesQueryInput,
|
|
3254
|
+
Radio,
|
|
3127
3255
|
ReadMore,
|
|
3128
3256
|
Select,
|
|
3129
3257
|
SharedService,
|
|
3258
|
+
Switch,
|
|
3130
3259
|
WindowHistoryProvider,
|
|
3131
3260
|
cn,
|
|
3132
3261
|
fetchLocation,
|