@next-degree/pickle-shared-js 0.5.31 → 0.6.43
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/company_service_latest-Dwf4Fkjr.d.cts +2641 -0
- package/dist/company_service_latest-Dwf4Fkjr.d.ts +2641 -0
- package/dist/components/buttons/BackButton.cjs +161 -0
- package/dist/components/buttons/BackButton.cjs.map +1 -0
- package/dist/components/buttons/BackButton.d.cts +9 -0
- package/dist/components/buttons/BackButton.d.ts +9 -0
- package/dist/components/buttons/BackButton.js +137 -0
- package/dist/components/buttons/BackButton.js.map +1 -0
- package/dist/components/company/CompanyBenefits.cjs +38 -0
- package/dist/components/company/CompanyBenefits.cjs.map +1 -0
- package/dist/components/company/CompanyBenefits.d.cts +8 -0
- package/dist/components/company/CompanyBenefits.d.ts +8 -0
- package/dist/components/company/CompanyBenefits.js +13 -0
- package/dist/components/company/CompanyBenefits.js.map +1 -0
- package/dist/components/company/CompanyInformation.cjs +112 -0
- package/dist/components/company/CompanyInformation.cjs.map +1 -0
- package/dist/components/company/CompanyInformation.d.cts +12 -0
- package/dist/components/company/CompanyInformation.d.ts +12 -0
- package/dist/components/company/CompanyInformation.js +75 -0
- package/dist/components/company/CompanyInformation.js.map +1 -0
- package/dist/components/company/CompanyTake.cjs +140 -0
- package/dist/components/company/CompanyTake.cjs.map +1 -0
- package/dist/components/company/CompanyTake.d.cts +9 -0
- package/dist/components/company/CompanyTake.d.ts +9 -0
- package/dist/components/company/CompanyTake.js +104 -0
- package/dist/components/company/CompanyTake.js.map +1 -0
- package/dist/components/jobPost/JobDescription.cjs +205 -0
- package/dist/components/jobPost/JobDescription.cjs.map +1 -0
- package/dist/components/jobPost/JobDescription.d.cts +8 -0
- package/dist/components/jobPost/JobDescription.d.ts +8 -0
- package/dist/components/jobPost/JobDescription.js +168 -0
- package/dist/components/jobPost/JobDescription.js.map +1 -0
- package/dist/components/jobPost/JobHeader.cjs +436 -0
- package/dist/components/jobPost/JobHeader.cjs.map +1 -0
- package/dist/components/jobPost/JobHeader.d.cts +26 -0
- package/dist/components/jobPost/JobHeader.d.ts +26 -0
- package/dist/components/jobPost/JobHeader.js +423 -0
- package/dist/components/jobPost/JobHeader.js.map +1 -0
- package/dist/components/jobPost/JobPost.cjs +1349 -0
- package/dist/components/jobPost/JobPost.cjs.map +1 -0
- package/dist/components/jobPost/JobPost.d.cts +16 -0
- package/dist/components/jobPost/JobPost.d.ts +16 -0
- package/dist/components/jobPost/JobPost.js +1336 -0
- package/dist/components/jobPost/JobPost.js.map +1 -0
- package/dist/components/primitives/avatar.cjs +88 -0
- package/dist/components/primitives/avatar.cjs.map +1 -0
- package/dist/components/primitives/avatar.d.cts +13 -0
- package/dist/components/primitives/avatar.d.ts +13 -0
- package/dist/components/primitives/avatar.js +52 -0
- package/dist/components/primitives/avatar.js.map +1 -0
- package/dist/components/primitives/command.d.cts +3 -3
- package/dist/components/primitives/command.d.ts +3 -3
- package/dist/components/ui/Avatar.cjs +117 -0
- package/dist/components/ui/Avatar.cjs.map +1 -0
- package/dist/components/ui/Avatar.d.cts +16 -0
- package/dist/components/ui/Avatar.d.ts +16 -0
- package/dist/components/ui/Avatar.js +79 -0
- package/dist/components/ui/Avatar.js.map +1 -0
- package/dist/components/ui/Icon.cjs +114 -0
- package/dist/components/ui/Icon.cjs.map +1 -0
- package/dist/components/ui/Icon.d.cts +15 -0
- package/dist/components/ui/Icon.d.ts +15 -0
- package/dist/components/ui/Icon.js +89 -0
- package/dist/components/ui/Icon.js.map +1 -0
- package/dist/{app/layout.cjs → components/ui/LinkButton.cjs} +25 -35
- package/dist/components/ui/LinkButton.cjs.map +1 -0
- package/dist/components/ui/LinkButton.d.cts +29 -0
- package/dist/components/ui/LinkButton.d.ts +29 -0
- package/dist/components/ui/LinkButton.js +26 -0
- package/dist/components/ui/LinkButton.js.map +1 -0
- package/dist/components/ui/ReadMore.cjs +194 -0
- package/dist/components/ui/ReadMore.cjs.map +1 -0
- package/dist/components/ui/ReadMore.d.cts +9 -0
- package/dist/components/ui/ReadMore.d.ts +9 -0
- package/dist/components/ui/ReadMore.js +160 -0
- package/dist/components/ui/ReadMore.js.map +1 -0
- package/dist/contexts/WindowHistoryProvider.cjs +48 -0
- package/dist/contexts/WindowHistoryProvider.cjs.map +1 -0
- package/dist/contexts/WindowHistoryProvider.d.cts +11 -0
- package/dist/contexts/WindowHistoryProvider.d.ts +11 -0
- package/dist/contexts/WindowHistoryProvider.js +23 -0
- package/dist/contexts/WindowHistoryProvider.js.map +1 -0
- package/dist/displayText-C1qKqRYc.d.cts +48 -0
- package/dist/displayText-D-OzRlJf.d.ts +48 -0
- package/dist/hooks/useDisplayText.cjs +502 -0
- package/dist/hooks/useDisplayText.cjs.map +1 -0
- package/dist/hooks/useDisplayText.d.cts +8 -0
- package/dist/hooks/useDisplayText.d.ts +8 -0
- package/dist/hooks/useDisplayText.js +477 -0
- package/dist/hooks/useDisplayText.js.map +1 -0
- package/dist/hooks/useWindowHistory.cjs +46 -0
- package/dist/hooks/useWindowHistory.cjs.map +1 -0
- package/dist/hooks/useWindowHistory.d.cts +7 -0
- package/dist/hooks/useWindowHistory.d.ts +7 -0
- package/dist/hooks/useWindowHistory.js +21 -0
- package/dist/hooks/useWindowHistory.js.map +1 -0
- package/dist/index.cjs +1434 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +21 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +1443 -1
- package/dist/index.js.map +1 -1
- package/dist/job_posting_service_latest-D0AsiA4a.d.cts +2789 -0
- package/dist/job_posting_service_latest-D0AsiA4a.d.ts +2789 -0
- package/dist/lib/icons.cjs +53 -0
- package/dist/lib/icons.cjs.map +1 -0
- package/dist/lib/icons.d.cts +27 -0
- package/dist/lib/icons.d.ts +27 -0
- package/dist/lib/icons.js +49 -0
- package/dist/lib/icons.js.map +1 -0
- package/dist/lib/locations.cjs +45 -0
- package/dist/lib/locations.cjs.map +1 -0
- package/dist/lib/locations.d.cts +8 -0
- package/dist/lib/locations.d.ts +8 -0
- package/dist/lib/locations.js +19 -0
- package/dist/lib/locations.js.map +1 -0
- package/dist/lib/mappings.cjs +443 -0
- package/dist/lib/mappings.cjs.map +1 -0
- package/dist/lib/mappings.d.cts +4 -0
- package/dist/lib/mappings.d.ts +4 -0
- package/dist/lib/mappings.js +409 -0
- package/dist/lib/mappings.js.map +1 -0
- package/dist/lib/salaryRange.cjs +90 -0
- package/dist/lib/salaryRange.cjs.map +1 -0
- package/dist/lib/salaryRange.d.cts +6 -0
- package/dist/lib/salaryRange.d.ts +6 -0
- package/dist/lib/salaryRange.js +63 -0
- package/dist/lib/salaryRange.js.map +1 -0
- package/dist/services/displayText.cjs +470 -0
- package/dist/services/displayText.cjs.map +1 -0
- package/dist/services/displayText.d.cts +4 -0
- package/dist/services/displayText.d.ts +4 -0
- package/dist/services/displayText.js +443 -0
- package/dist/services/displayText.js.map +1 -0
- package/dist/shared_pickle_output_latest-DX6GQoVn.d.cts +194 -0
- package/dist/shared_pickle_output_latest-DX6GQoVn.d.ts +194 -0
- package/dist/styles/globals.css +817 -0
- package/dist/styles/globals.css.map +1 -1
- package/dist/types/data/company_service_latest.cjs +228 -0
- package/dist/types/data/company_service_latest.cjs.map +1 -0
- package/dist/types/data/company_service_latest.d.cts +2 -0
- package/dist/types/data/company_service_latest.d.ts +2 -0
- package/dist/types/data/company_service_latest.js +186 -0
- package/dist/types/data/company_service_latest.js.map +1 -0
- package/dist/types/data/job_posting_service_latest.cjs +266 -0
- package/dist/types/data/job_posting_service_latest.cjs.map +1 -0
- package/dist/types/data/job_posting_service_latest.d.cts +2 -0
- package/dist/types/data/job_posting_service_latest.d.ts +2 -0
- package/dist/types/data/job_posting_service_latest.js +230 -0
- package/dist/types/data/job_posting_service_latest.js.map +1 -0
- package/dist/types/data/shared_pickle_output_latest.cjs +82 -0
- package/dist/types/data/shared_pickle_output_latest.cjs.map +1 -0
- package/dist/types/data/shared_pickle_output_latest.d.cts +2 -0
- package/dist/types/data/shared_pickle_output_latest.d.ts +2 -0
- package/dist/types/data/shared_pickle_output_latest.js +50 -0
- package/dist/types/data/shared_pickle_output_latest.js.map +1 -0
- package/dist/types/displayText.errors.cjs +44 -0
- package/dist/types/displayText.errors.cjs.map +1 -0
- package/dist/types/displayText.errors.d.cts +8 -0
- package/dist/types/displayText.errors.d.ts +8 -0
- package/dist/types/displayText.errors.js +18 -0
- package/dist/types/displayText.errors.js.map +1 -0
- package/package.json +19 -7
- package/dist/AmbitBold-3SZZPYLH.otf +0 -0
- package/dist/AmbitBoldItalic-JSHFTN4A.otf +0 -0
- package/dist/AmbitRegular-MB5U7O3L.otf +0 -0
- package/dist/app/layout.cjs.map +0 -1
- package/dist/app/layout.css +0 -1423
- package/dist/app/layout.css.map +0 -1
- package/dist/app/layout.d.cts +0 -11
- package/dist/app/layout.d.ts +0 -11
- package/dist/app/layout.js +0 -36
- package/dist/app/layout.js.map +0 -1
- package/dist/app/page.cjs +0 -1607
- package/dist/app/page.cjs.map +0 -1
- package/dist/app/page.d.cts +0 -5
- package/dist/app/page.d.ts +0 -5
- package/dist/app/page.js +0 -1581
- package/dist/app/page.js.map +0 -1
- package/dist/assets/fonts/AmbitBold.cjs +0 -3
- package/dist/assets/fonts/AmbitBold.cjs.map +0 -1
- package/dist/assets/fonts/AmbitBold.d.cts +0 -2
- package/dist/assets/fonts/AmbitBold.d.ts +0 -2
- package/dist/assets/fonts/AmbitBold.js +0 -6
- package/dist/assets/fonts/AmbitBold.js.map +0 -1
- package/dist/assets/fonts/AmbitBoldItalic.cjs +0 -3
- package/dist/assets/fonts/AmbitBoldItalic.cjs.map +0 -1
- package/dist/assets/fonts/AmbitBoldItalic.d.cts +0 -2
- package/dist/assets/fonts/AmbitBoldItalic.d.ts +0 -2
- package/dist/assets/fonts/AmbitBoldItalic.js +0 -6
- package/dist/assets/fonts/AmbitBoldItalic.js.map +0 -1
- package/dist/assets/fonts/AmbitRegular.cjs +0 -3
- package/dist/assets/fonts/AmbitRegular.cjs.map +0 -1
- package/dist/assets/fonts/AmbitRegular.d.cts +0 -2
- package/dist/assets/fonts/AmbitRegular.d.ts +0 -2
- package/dist/assets/fonts/AmbitRegular.js +0 -6
- package/dist/assets/fonts/AmbitRegular.js.map +0 -1
- package/dist/components/demos/ComboboxDemo.cjs +0 -814
- package/dist/components/demos/ComboboxDemo.cjs.map +0 -1
- package/dist/components/demos/ComboboxDemo.d.cts +0 -5
- package/dist/components/demos/ComboboxDemo.d.ts +0 -5
- package/dist/components/demos/ComboboxDemo.js +0 -786
- package/dist/components/demos/ComboboxDemo.js.map +0 -1
- package/dist/components/demos/CounterDemo.cjs +0 -270
- package/dist/components/demos/CounterDemo.cjs.map +0 -1
- package/dist/components/demos/CounterDemo.d.cts +0 -5
- package/dist/components/demos/CounterDemo.d.ts +0 -5
- package/dist/components/demos/CounterDemo.js +0 -238
- package/dist/components/demos/CounterDemo.js.map +0 -1
- package/dist/components/demos/InputDemo.cjs +0 -225
- package/dist/components/demos/InputDemo.cjs.map +0 -1
- package/dist/components/demos/InputDemo.d.cts +0 -5
- package/dist/components/demos/InputDemo.d.ts +0 -5
- package/dist/components/demos/InputDemo.js +0 -192
- package/dist/components/demos/InputDemo.js.map +0 -1
- package/dist/components/demos/MapComponentDemo.cjs +0 -129
- package/dist/components/demos/MapComponentDemo.cjs.map +0 -1
- package/dist/components/demos/MapComponentDemo.d.cts +0 -5
- package/dist/components/demos/MapComponentDemo.d.ts +0 -5
- package/dist/components/demos/MapComponentDemo.js +0 -107
- package/dist/components/demos/MapComponentDemo.js.map +0 -1
- package/dist/components/demos/PlacesQueryInputDemo.cjs +0 -341
- package/dist/components/demos/PlacesQueryInputDemo.cjs.map +0 -1
- package/dist/components/demos/PlacesQueryInputDemo.d.cts +0 -5
- package/dist/components/demos/PlacesQueryInputDemo.d.ts +0 -5
- package/dist/components/demos/PlacesQueryInputDemo.js +0 -309
- package/dist/components/demos/PlacesQueryInputDemo.js.map +0 -1
- package/dist/components/demos/SelectDemo.cjs +0 -365
- package/dist/components/demos/SelectDemo.cjs.map +0 -1
- package/dist/components/demos/SelectDemo.d.cts +0 -5
- package/dist/components/demos/SelectDemo.d.ts +0 -5
- package/dist/components/demos/SelectDemo.js +0 -337
- package/dist/components/demos/SelectDemo.js.map +0 -1
- package/dist/components/demos/index.cjs +0 -1600
- package/dist/components/demos/index.cjs.map +0 -1
- package/dist/components/demos/index.d.cts +0 -5
- package/dist/components/demos/index.d.ts +0 -5
- package/dist/components/demos/index.js +0 -1574
- package/dist/components/demos/index.js.map +0 -1
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
+
mod
|
|
28
|
+
));
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
+
|
|
31
|
+
// src/components/ui/ReadMore.tsx
|
|
32
|
+
var ReadMore_exports = {};
|
|
33
|
+
__export(ReadMore_exports, {
|
|
34
|
+
ReadMore: () => ReadMore
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(ReadMore_exports);
|
|
37
|
+
var import_react2 = require("react");
|
|
38
|
+
var import_react_markdown = __toESM(require("react-markdown"), 1);
|
|
39
|
+
|
|
40
|
+
// src/lib/utils.ts
|
|
41
|
+
var import_clsx = require("clsx");
|
|
42
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
43
|
+
function cn(...inputs) {
|
|
44
|
+
return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// src/components/ui/Button.tsx
|
|
48
|
+
var import_react_slot = require("@radix-ui/react-slot");
|
|
49
|
+
var import_cva = require("cva");
|
|
50
|
+
var import_react = require("react");
|
|
51
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
52
|
+
var Button = (0, import_react.forwardRef)(
|
|
53
|
+
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
54
|
+
const Component = asChild ? import_react_slot.Slot : "button";
|
|
55
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
56
|
+
Component,
|
|
57
|
+
{
|
|
58
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
59
|
+
ref,
|
|
60
|
+
...props
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
Button.displayName = "Button";
|
|
66
|
+
var buttonVariants = (0, import_cva.cva)(
|
|
67
|
+
[
|
|
68
|
+
"flex",
|
|
69
|
+
"items-center",
|
|
70
|
+
"justify-center",
|
|
71
|
+
"gap-2",
|
|
72
|
+
"rounded-full",
|
|
73
|
+
"font-bold",
|
|
74
|
+
"outline-2",
|
|
75
|
+
"outline-offset-2",
|
|
76
|
+
"outline-dashed",
|
|
77
|
+
"outline-transparent"
|
|
78
|
+
],
|
|
79
|
+
{
|
|
80
|
+
variants: {
|
|
81
|
+
variant: {
|
|
82
|
+
neutral: [
|
|
83
|
+
"bg-black",
|
|
84
|
+
"text-white",
|
|
85
|
+
"hover:bg-grey-90",
|
|
86
|
+
"active:bg-grey-80",
|
|
87
|
+
"focus:outline-purple-100",
|
|
88
|
+
"disabled:text-grey-40",
|
|
89
|
+
"disabled:bg-grey-10"
|
|
90
|
+
],
|
|
91
|
+
primary: [
|
|
92
|
+
"bg-pickle-100",
|
|
93
|
+
"text-black",
|
|
94
|
+
"hover:bg-pickle-80",
|
|
95
|
+
"active:bg-pickle-60",
|
|
96
|
+
"focus:outline-purple-100",
|
|
97
|
+
"disabled:text-grey-40",
|
|
98
|
+
"disabled:bg-grey-10"
|
|
99
|
+
],
|
|
100
|
+
secondary: [
|
|
101
|
+
"bg-green-80",
|
|
102
|
+
"text-white",
|
|
103
|
+
"hover:bg-green-90",
|
|
104
|
+
"active:bg-green-100",
|
|
105
|
+
"focus:outline-pickle-100",
|
|
106
|
+
"disabled:text-grey-40",
|
|
107
|
+
"disabled:bg-grey-10"
|
|
108
|
+
],
|
|
109
|
+
transparent: [
|
|
110
|
+
"text-white",
|
|
111
|
+
"hover:bg-green-80",
|
|
112
|
+
"active:bg-green-100",
|
|
113
|
+
"focus:outline-pickle-100",
|
|
114
|
+
"disabled:text-grey-40"
|
|
115
|
+
],
|
|
116
|
+
link: [
|
|
117
|
+
"leading-tight",
|
|
118
|
+
"text-black",
|
|
119
|
+
"underline",
|
|
120
|
+
"hover:text-purple-100",
|
|
121
|
+
"focus:text-black",
|
|
122
|
+
"focus:outline-purple-100",
|
|
123
|
+
"active:text-purple-80"
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
size: {
|
|
127
|
+
small: ["h-10", "text-sm", "px-4", "py-2"],
|
|
128
|
+
medium: ["h-12", "text-base", "px-6", "py-3"],
|
|
129
|
+
large: ["h-14", "text-lg", "px-8", "py-4"]
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
defaultVariants: {
|
|
133
|
+
variant: "neutral",
|
|
134
|
+
size: "medium"
|
|
135
|
+
},
|
|
136
|
+
compoundVariants: [
|
|
137
|
+
{
|
|
138
|
+
variant: "link",
|
|
139
|
+
size: "small",
|
|
140
|
+
class: ["h-3", "text-xs", "p-0"]
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
variant: "link",
|
|
144
|
+
size: "medium",
|
|
145
|
+
class: ["h-4", "text-sm", "p-0"]
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
variant: "link",
|
|
149
|
+
size: "large",
|
|
150
|
+
class: ["h-6", "text-base", "p-0"]
|
|
151
|
+
}
|
|
152
|
+
]
|
|
153
|
+
}
|
|
154
|
+
);
|
|
155
|
+
|
|
156
|
+
// src/components/ui/ReadMore.tsx
|
|
157
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
158
|
+
function ReadMore({ text, ...props }) {
|
|
159
|
+
const [isExpanded, setIsExpanded] = (0, import_react2.useState)(false);
|
|
160
|
+
const [maxWords, setMaxWords] = (0, import_react2.useState)(160);
|
|
161
|
+
(0, import_react2.useEffect)(() => {
|
|
162
|
+
const updateMaxWords = () => {
|
|
163
|
+
const windowWidth = window.innerWidth;
|
|
164
|
+
if (windowWidth <= 768) {
|
|
165
|
+
setMaxWords(50);
|
|
166
|
+
} else {
|
|
167
|
+
setMaxWords(160);
|
|
168
|
+
}
|
|
169
|
+
};
|
|
170
|
+
updateMaxWords();
|
|
171
|
+
window.addEventListener("resize", updateMaxWords);
|
|
172
|
+
return () => window.removeEventListener("resize", updateMaxWords);
|
|
173
|
+
}, []);
|
|
174
|
+
function createReadMoreText(text2, maxWords2, isExpanded2) {
|
|
175
|
+
const words = text2.split(" ");
|
|
176
|
+
const snippet2 = isExpanded2 ? text2 : words.slice(0, maxWords2).join(" ");
|
|
177
|
+
const readMoreText = isExpanded2 ? "" : "...";
|
|
178
|
+
return `${snippet2} ${readMoreText}`;
|
|
179
|
+
}
|
|
180
|
+
const toggleText = () => setIsExpanded(!isExpanded);
|
|
181
|
+
const snippet = createReadMoreText(text, maxWords, isExpanded);
|
|
182
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { ...props, children: [
|
|
183
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { "data-testid": "read-more-text", className: "prose lg:prose-lg", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_markdown.default, { children: snippet }) }),
|
|
184
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Button, { className: "mt-2 flex items-center justify-center", variant: "link", onClick: toggleText, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("p", { className: "text-sm font-bold underline underline-offset-2", children: [
|
|
185
|
+
"Read ",
|
|
186
|
+
isExpanded ? "less" : "more"
|
|
187
|
+
] }) })
|
|
188
|
+
] });
|
|
189
|
+
}
|
|
190
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
191
|
+
0 && (module.exports = {
|
|
192
|
+
ReadMore
|
|
193
|
+
});
|
|
194
|
+
//# sourceMappingURL=ReadMore.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ui/ReadMore.tsx","../../../src/lib/utils.ts","../../../src/components/ui/Button.tsx"],"sourcesContent":["'use client'\n\nimport { ComponentProps, useEffect, useState } from 'react'\nimport Markdown from 'react-markdown'\n\nimport { Button } from '@/components/ui/Button'\n\nexport type ReadMoreProps = ComponentProps<'div'> & {\n text: string\n}\n\nexport function ReadMore({ text, ...props }: Readonly<ReadMoreProps>) {\n const [isExpanded, setIsExpanded] = useState(false)\n const [maxWords, setMaxWords] = useState(160)\n\n useEffect(() => {\n const updateMaxWords = () => {\n const windowWidth = window.innerWidth\n if (windowWidth <= 768) {\n setMaxWords(50)\n } else {\n setMaxWords(160)\n }\n }\n\n updateMaxWords()\n window.addEventListener('resize', updateMaxWords)\n\n return () => window.removeEventListener('resize', updateMaxWords)\n }, [])\n\n function createReadMoreText(text: string, maxWords: number, isExpanded: boolean): string {\n const words = text.split(' ')\n\n const snippet = isExpanded ? text : words.slice(0, maxWords).join(' ')\n const readMoreText = isExpanded ? '' : '...'\n return `${snippet} ${readMoreText}`\n }\n\n const toggleText = () => setIsExpanded(!isExpanded)\n\n const snippet = createReadMoreText(text, maxWords, isExpanded)\n\n return (\n <div {...props}>\n <div data-testid=\"read-more-text\" className=\"prose lg:prose-lg\">\n <Markdown>{snippet}</Markdown>\n </div>\n <Button className=\"mt-2 flex items-center justify-center\" variant=\"link\" onClick={toggleText}>\n <p className=\"text-sm font-bold underline underline-offset-2\">\n Read {isExpanded ? 'less' : 'more'}\n </p>\n </Button>\n </div>\n )\n}\n","import { type ClassValue, clsx } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","import { cn } from '@/lib/utils'\nimport { Slot } from '@radix-ui/react-slot'\nimport { cva, type VariantProps } from 'cva'\nimport React, { forwardRef } from 'react'\n\ninterface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Component = asChild ? Slot : 'button'\n\n return (\n <Component\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n )\n }\n)\nButton.displayName = 'Button'\n\nconst buttonVariants = cva(\n [\n 'flex',\n 'items-center',\n 'justify-center',\n 'gap-2',\n 'rounded-full',\n 'font-bold',\n 'outline-2',\n 'outline-offset-2',\n 'outline-dashed',\n 'outline-transparent',\n ],\n {\n variants: {\n variant: {\n neutral: [\n 'bg-black',\n 'text-white',\n 'hover:bg-grey-90',\n 'active:bg-grey-80',\n 'focus:outline-purple-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n primary: [\n 'bg-pickle-100',\n 'text-black',\n 'hover:bg-pickle-80',\n 'active:bg-pickle-60',\n 'focus:outline-purple-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n secondary: [\n 'bg-green-80',\n 'text-white',\n 'hover:bg-green-90',\n 'active:bg-green-100',\n 'focus:outline-pickle-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n transparent: [\n 'text-white',\n 'hover:bg-green-80',\n 'active:bg-green-100',\n 'focus:outline-pickle-100',\n 'disabled:text-grey-40',\n ],\n link: [\n 'leading-tight',\n 'text-black',\n 'underline',\n 'hover:text-purple-100',\n 'focus:text-black',\n 'focus:outline-purple-100',\n 'active:text-purple-80',\n ],\n },\n size: {\n small: ['h-10', 'text-sm', 'px-4', 'py-2'],\n medium: ['h-12', 'text-base', 'px-6', 'py-3'],\n large: ['h-14', 'text-lg', 'px-8', 'py-4'],\n },\n },\n defaultVariants: {\n variant: 'neutral',\n size: 'medium',\n },\n compoundVariants: [\n {\n variant: 'link',\n size: 'small',\n class: ['h-3', 'text-xs', 'p-0'],\n },\n {\n variant: 'link',\n size: 'medium',\n class: ['h-4', 'text-sm', 'p-0'],\n },\n {\n variant: 'link',\n size: 'large',\n class: ['h-6', 'text-base', 'p-0'],\n },\n ],\n }\n)\n"],"mappings":"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","names":["import_react","import_jsx_runtime","text","maxWords","isExpanded","snippet","Markdown"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
|
|
4
|
+
type ReadMoreProps = ComponentProps<'div'> & {
|
|
5
|
+
text: string;
|
|
6
|
+
};
|
|
7
|
+
declare function ReadMore({ text, ...props }: Readonly<ReadMoreProps>): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
export { ReadMore, type ReadMoreProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ComponentProps } from 'react';
|
|
3
|
+
|
|
4
|
+
type ReadMoreProps = ComponentProps<'div'> & {
|
|
5
|
+
text: string;
|
|
6
|
+
};
|
|
7
|
+
declare function ReadMore({ text, ...props }: Readonly<ReadMoreProps>): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
export { ReadMore, type ReadMoreProps };
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/components/ui/ReadMore.tsx
|
|
4
|
+
import { useEffect, useState } from "react";
|
|
5
|
+
import Markdown from "react-markdown";
|
|
6
|
+
|
|
7
|
+
// src/lib/utils.ts
|
|
8
|
+
import { clsx } from "clsx";
|
|
9
|
+
import { twMerge } from "tailwind-merge";
|
|
10
|
+
function cn(...inputs) {
|
|
11
|
+
return twMerge(clsx(inputs));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// src/components/ui/Button.tsx
|
|
15
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
16
|
+
import { cva } from "cva";
|
|
17
|
+
import { forwardRef } from "react";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
var Button = forwardRef(
|
|
20
|
+
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
21
|
+
const Component = asChild ? Slot : "button";
|
|
22
|
+
return /* @__PURE__ */ jsx(
|
|
23
|
+
Component,
|
|
24
|
+
{
|
|
25
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
26
|
+
ref,
|
|
27
|
+
...props
|
|
28
|
+
}
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
Button.displayName = "Button";
|
|
33
|
+
var buttonVariants = cva(
|
|
34
|
+
[
|
|
35
|
+
"flex",
|
|
36
|
+
"items-center",
|
|
37
|
+
"justify-center",
|
|
38
|
+
"gap-2",
|
|
39
|
+
"rounded-full",
|
|
40
|
+
"font-bold",
|
|
41
|
+
"outline-2",
|
|
42
|
+
"outline-offset-2",
|
|
43
|
+
"outline-dashed",
|
|
44
|
+
"outline-transparent"
|
|
45
|
+
],
|
|
46
|
+
{
|
|
47
|
+
variants: {
|
|
48
|
+
variant: {
|
|
49
|
+
neutral: [
|
|
50
|
+
"bg-black",
|
|
51
|
+
"text-white",
|
|
52
|
+
"hover:bg-grey-90",
|
|
53
|
+
"active:bg-grey-80",
|
|
54
|
+
"focus:outline-purple-100",
|
|
55
|
+
"disabled:text-grey-40",
|
|
56
|
+
"disabled:bg-grey-10"
|
|
57
|
+
],
|
|
58
|
+
primary: [
|
|
59
|
+
"bg-pickle-100",
|
|
60
|
+
"text-black",
|
|
61
|
+
"hover:bg-pickle-80",
|
|
62
|
+
"active:bg-pickle-60",
|
|
63
|
+
"focus:outline-purple-100",
|
|
64
|
+
"disabled:text-grey-40",
|
|
65
|
+
"disabled:bg-grey-10"
|
|
66
|
+
],
|
|
67
|
+
secondary: [
|
|
68
|
+
"bg-green-80",
|
|
69
|
+
"text-white",
|
|
70
|
+
"hover:bg-green-90",
|
|
71
|
+
"active:bg-green-100",
|
|
72
|
+
"focus:outline-pickle-100",
|
|
73
|
+
"disabled:text-grey-40",
|
|
74
|
+
"disabled:bg-grey-10"
|
|
75
|
+
],
|
|
76
|
+
transparent: [
|
|
77
|
+
"text-white",
|
|
78
|
+
"hover:bg-green-80",
|
|
79
|
+
"active:bg-green-100",
|
|
80
|
+
"focus:outline-pickle-100",
|
|
81
|
+
"disabled:text-grey-40"
|
|
82
|
+
],
|
|
83
|
+
link: [
|
|
84
|
+
"leading-tight",
|
|
85
|
+
"text-black",
|
|
86
|
+
"underline",
|
|
87
|
+
"hover:text-purple-100",
|
|
88
|
+
"focus:text-black",
|
|
89
|
+
"focus:outline-purple-100",
|
|
90
|
+
"active:text-purple-80"
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
size: {
|
|
94
|
+
small: ["h-10", "text-sm", "px-4", "py-2"],
|
|
95
|
+
medium: ["h-12", "text-base", "px-6", "py-3"],
|
|
96
|
+
large: ["h-14", "text-lg", "px-8", "py-4"]
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
defaultVariants: {
|
|
100
|
+
variant: "neutral",
|
|
101
|
+
size: "medium"
|
|
102
|
+
},
|
|
103
|
+
compoundVariants: [
|
|
104
|
+
{
|
|
105
|
+
variant: "link",
|
|
106
|
+
size: "small",
|
|
107
|
+
class: ["h-3", "text-xs", "p-0"]
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
variant: "link",
|
|
111
|
+
size: "medium",
|
|
112
|
+
class: ["h-4", "text-sm", "p-0"]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
variant: "link",
|
|
116
|
+
size: "large",
|
|
117
|
+
class: ["h-6", "text-base", "p-0"]
|
|
118
|
+
}
|
|
119
|
+
]
|
|
120
|
+
}
|
|
121
|
+
);
|
|
122
|
+
|
|
123
|
+
// src/components/ui/ReadMore.tsx
|
|
124
|
+
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
125
|
+
function ReadMore({ text, ...props }) {
|
|
126
|
+
const [isExpanded, setIsExpanded] = useState(false);
|
|
127
|
+
const [maxWords, setMaxWords] = useState(160);
|
|
128
|
+
useEffect(() => {
|
|
129
|
+
const updateMaxWords = () => {
|
|
130
|
+
const windowWidth = window.innerWidth;
|
|
131
|
+
if (windowWidth <= 768) {
|
|
132
|
+
setMaxWords(50);
|
|
133
|
+
} else {
|
|
134
|
+
setMaxWords(160);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
updateMaxWords();
|
|
138
|
+
window.addEventListener("resize", updateMaxWords);
|
|
139
|
+
return () => window.removeEventListener("resize", updateMaxWords);
|
|
140
|
+
}, []);
|
|
141
|
+
function createReadMoreText(text2, maxWords2, isExpanded2) {
|
|
142
|
+
const words = text2.split(" ");
|
|
143
|
+
const snippet2 = isExpanded2 ? text2 : words.slice(0, maxWords2).join(" ");
|
|
144
|
+
const readMoreText = isExpanded2 ? "" : "...";
|
|
145
|
+
return `${snippet2} ${readMoreText}`;
|
|
146
|
+
}
|
|
147
|
+
const toggleText = () => setIsExpanded(!isExpanded);
|
|
148
|
+
const snippet = createReadMoreText(text, maxWords, isExpanded);
|
|
149
|
+
return /* @__PURE__ */ jsxs("div", { ...props, children: [
|
|
150
|
+
/* @__PURE__ */ jsx2("div", { "data-testid": "read-more-text", className: "prose lg:prose-lg", children: /* @__PURE__ */ jsx2(Markdown, { children: snippet }) }),
|
|
151
|
+
/* @__PURE__ */ jsx2(Button, { className: "mt-2 flex items-center justify-center", variant: "link", onClick: toggleText, children: /* @__PURE__ */ jsxs("p", { className: "text-sm font-bold underline underline-offset-2", children: [
|
|
152
|
+
"Read ",
|
|
153
|
+
isExpanded ? "less" : "more"
|
|
154
|
+
] }) })
|
|
155
|
+
] });
|
|
156
|
+
}
|
|
157
|
+
export {
|
|
158
|
+
ReadMore
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=ReadMore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ui/ReadMore.tsx","../../../src/lib/utils.ts","../../../src/components/ui/Button.tsx"],"sourcesContent":["'use client'\n\nimport { ComponentProps, useEffect, useState } from 'react'\nimport Markdown from 'react-markdown'\n\nimport { Button } from '@/components/ui/Button'\n\nexport type ReadMoreProps = ComponentProps<'div'> & {\n text: string\n}\n\nexport function ReadMore({ text, ...props }: Readonly<ReadMoreProps>) {\n const [isExpanded, setIsExpanded] = useState(false)\n const [maxWords, setMaxWords] = useState(160)\n\n useEffect(() => {\n const updateMaxWords = () => {\n const windowWidth = window.innerWidth\n if (windowWidth <= 768) {\n setMaxWords(50)\n } else {\n setMaxWords(160)\n }\n }\n\n updateMaxWords()\n window.addEventListener('resize', updateMaxWords)\n\n return () => window.removeEventListener('resize', updateMaxWords)\n }, [])\n\n function createReadMoreText(text: string, maxWords: number, isExpanded: boolean): string {\n const words = text.split(' ')\n\n const snippet = isExpanded ? text : words.slice(0, maxWords).join(' ')\n const readMoreText = isExpanded ? '' : '...'\n return `${snippet} ${readMoreText}`\n }\n\n const toggleText = () => setIsExpanded(!isExpanded)\n\n const snippet = createReadMoreText(text, maxWords, isExpanded)\n\n return (\n <div {...props}>\n <div data-testid=\"read-more-text\" className=\"prose lg:prose-lg\">\n <Markdown>{snippet}</Markdown>\n </div>\n <Button className=\"mt-2 flex items-center justify-center\" variant=\"link\" onClick={toggleText}>\n <p className=\"text-sm font-bold underline underline-offset-2\">\n Read {isExpanded ? 'less' : 'more'}\n </p>\n </Button>\n </div>\n )\n}\n","import { type ClassValue, clsx } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","import { cn } from '@/lib/utils'\nimport { Slot } from '@radix-ui/react-slot'\nimport { cva, type VariantProps } from 'cva'\nimport React, { forwardRef } from 'react'\n\ninterface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Component = asChild ? Slot : 'button'\n\n return (\n <Component\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n )\n }\n)\nButton.displayName = 'Button'\n\nconst buttonVariants = cva(\n [\n 'flex',\n 'items-center',\n 'justify-center',\n 'gap-2',\n 'rounded-full',\n 'font-bold',\n 'outline-2',\n 'outline-offset-2',\n 'outline-dashed',\n 'outline-transparent',\n ],\n {\n variants: {\n variant: {\n neutral: [\n 'bg-black',\n 'text-white',\n 'hover:bg-grey-90',\n 'active:bg-grey-80',\n 'focus:outline-purple-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n primary: [\n 'bg-pickle-100',\n 'text-black',\n 'hover:bg-pickle-80',\n 'active:bg-pickle-60',\n 'focus:outline-purple-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n secondary: [\n 'bg-green-80',\n 'text-white',\n 'hover:bg-green-90',\n 'active:bg-green-100',\n 'focus:outline-pickle-100',\n 'disabled:text-grey-40',\n 'disabled:bg-grey-10',\n ],\n transparent: [\n 'text-white',\n 'hover:bg-green-80',\n 'active:bg-green-100',\n 'focus:outline-pickle-100',\n 'disabled:text-grey-40',\n ],\n link: [\n 'leading-tight',\n 'text-black',\n 'underline',\n 'hover:text-purple-100',\n 'focus:text-black',\n 'focus:outline-purple-100',\n 'active:text-purple-80',\n ],\n },\n size: {\n small: ['h-10', 'text-sm', 'px-4', 'py-2'],\n medium: ['h-12', 'text-base', 'px-6', 'py-3'],\n large: ['h-14', 'text-lg', 'px-8', 'py-4'],\n },\n },\n defaultVariants: {\n variant: 'neutral',\n size: 'medium',\n },\n compoundVariants: [\n {\n variant: 'link',\n size: 'small',\n class: ['h-3', 'text-xs', 'p-0'],\n },\n {\n variant: 'link',\n size: 'medium',\n class: ['h-4', 'text-sm', 'p-0'],\n },\n {\n variant: 'link',\n size: 'large',\n class: ['h-6', 'text-base', 'p-0'],\n },\n ],\n }\n)\n"],"mappings":"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","names":["jsx","text","maxWords","isExpanded","snippet"]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/contexts/WindowHistoryProvider.tsx
|
|
22
|
+
var WindowHistoryProvider_exports = {};
|
|
23
|
+
__export(WindowHistoryProvider_exports, {
|
|
24
|
+
WindowHistoryContext: () => WindowHistoryContext,
|
|
25
|
+
WindowHistoryProvider: () => WindowHistoryProvider
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(WindowHistoryProvider_exports);
|
|
28
|
+
var import_navigation = require("next/navigation");
|
|
29
|
+
var import_react = require("react");
|
|
30
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
+
var WindowHistoryContext = (0, import_react.createContext)({});
|
|
32
|
+
function WindowHistoryProvider({ children }) {
|
|
33
|
+
const [history, setHistory] = (0, import_react.useState)([]);
|
|
34
|
+
const searchParams = (0, import_navigation.useSearchParams)();
|
|
35
|
+
(0, import_react.useEffect)(() => {
|
|
36
|
+
setHistory(
|
|
37
|
+
(prev) => prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]
|
|
38
|
+
);
|
|
39
|
+
}, [searchParams]);
|
|
40
|
+
const contextValue = (0, import_react.useMemo)(() => ({ history }), [history]);
|
|
41
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(WindowHistoryContext.Provider, { value: contextValue, children });
|
|
42
|
+
}
|
|
43
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
44
|
+
0 && (module.exports = {
|
|
45
|
+
WindowHistoryContext,
|
|
46
|
+
WindowHistoryProvider
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=WindowHistoryProvider.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/contexts/WindowHistoryProvider.tsx"],"sourcesContent":["'use client'\n\nimport { useSearchParams } from 'next/navigation'\nimport { createContext, type PropsWithChildren, useEffect, useMemo, useState } from 'react'\n\nexport interface WindowHistoryContextProps {\n history: string[]\n}\n\nexport const WindowHistoryContext = createContext({} as WindowHistoryContextProps)\n\nexport function WindowHistoryProvider({ children }: Readonly<PropsWithChildren>) {\n const [history, setHistory] = useState<string[]>([])\n const searchParams = useSearchParams()\n\n useEffect(() => {\n setHistory((prev) =>\n prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]\n )\n }, [searchParams])\n\n const contextValue = useMemo(() => ({ history }), [history])\n\n return (\n <WindowHistoryContext.Provider value={contextValue}>{children}</WindowHistoryContext.Provider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,wBAAgC;AAChC,mBAAoF;AAqBhF;AAfG,IAAM,2BAAuB,4BAAc,CAAC,CAA8B;AAE1E,SAAS,sBAAsB,EAAE,SAAS,GAAgC;AAC/E,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAmB,CAAC,CAAC;AACnD,QAAM,mBAAe,mCAAgB;AAErC,8BAAU,MAAM;AACd;AAAA,MAAW,CAAC,SACV,KAAK,GAAG,EAAE,MAAM,OAAO,SAAS,OAAO,OAAO,CAAC,GAAG,MAAM,OAAO,SAAS,IAAI;AAAA,IAC9E;AAAA,EACF,GAAG,CAAC,YAAY,CAAC;AAEjB,QAAM,mBAAe,sBAAQ,OAAO,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC;AAE3D,SACE,4CAAC,qBAAqB,UAArB,EAA8B,OAAO,cAAe,UAAS;AAElE;","names":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PropsWithChildren } from 'react';
|
|
4
|
+
|
|
5
|
+
interface WindowHistoryContextProps {
|
|
6
|
+
history: string[];
|
|
7
|
+
}
|
|
8
|
+
declare const WindowHistoryContext: React.Context<WindowHistoryContextProps>;
|
|
9
|
+
declare function WindowHistoryProvider({ children }: Readonly<PropsWithChildren>): react_jsx_runtime.JSX.Element;
|
|
10
|
+
|
|
11
|
+
export { WindowHistoryContext, type WindowHistoryContextProps, WindowHistoryProvider };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { PropsWithChildren } from 'react';
|
|
4
|
+
|
|
5
|
+
interface WindowHistoryContextProps {
|
|
6
|
+
history: string[];
|
|
7
|
+
}
|
|
8
|
+
declare const WindowHistoryContext: React.Context<WindowHistoryContextProps>;
|
|
9
|
+
declare function WindowHistoryProvider({ children }: Readonly<PropsWithChildren>): react_jsx_runtime.JSX.Element;
|
|
10
|
+
|
|
11
|
+
export { WindowHistoryContext, type WindowHistoryContextProps, WindowHistoryProvider };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/contexts/WindowHistoryProvider.tsx
|
|
4
|
+
import { useSearchParams } from "next/navigation";
|
|
5
|
+
import { createContext, useEffect, useMemo, useState } from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
var WindowHistoryContext = createContext({});
|
|
8
|
+
function WindowHistoryProvider({ children }) {
|
|
9
|
+
const [history, setHistory] = useState([]);
|
|
10
|
+
const searchParams = useSearchParams();
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
setHistory(
|
|
13
|
+
(prev) => prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]
|
|
14
|
+
);
|
|
15
|
+
}, [searchParams]);
|
|
16
|
+
const contextValue = useMemo(() => ({ history }), [history]);
|
|
17
|
+
return /* @__PURE__ */ jsx(WindowHistoryContext.Provider, { value: contextValue, children });
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
WindowHistoryContext,
|
|
21
|
+
WindowHistoryProvider
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=WindowHistoryProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/contexts/WindowHistoryProvider.tsx"],"sourcesContent":["'use client'\n\nimport { useSearchParams } from 'next/navigation'\nimport { createContext, type PropsWithChildren, useEffect, useMemo, useState } from 'react'\n\nexport interface WindowHistoryContextProps {\n history: string[]\n}\n\nexport const WindowHistoryContext = createContext({} as WindowHistoryContextProps)\n\nexport function WindowHistoryProvider({ children }: Readonly<PropsWithChildren>) {\n const [history, setHistory] = useState<string[]>([])\n const searchParams = useSearchParams()\n\n useEffect(() => {\n setHistory((prev) =>\n prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]\n )\n }, [searchParams])\n\n const contextValue = useMemo(() => ({ history }), [history])\n\n return (\n <WindowHistoryContext.Provider value={contextValue}>{children}</WindowHistoryContext.Provider>\n )\n}\n"],"mappings":";;;AAEA,SAAS,uBAAuB;AAChC,SAAS,eAAuC,WAAW,SAAS,gBAAgB;AAqBhF;AAfG,IAAM,uBAAuB,cAAc,CAAC,CAA8B;AAE1E,SAAS,sBAAsB,EAAE,SAAS,GAAgC;AAC/E,QAAM,CAAC,SAAS,UAAU,IAAI,SAAmB,CAAC,CAAC;AACnD,QAAM,eAAe,gBAAgB;AAErC,YAAU,MAAM;AACd;AAAA,MAAW,CAAC,SACV,KAAK,GAAG,EAAE,MAAM,OAAO,SAAS,OAAO,OAAO,CAAC,GAAG,MAAM,OAAO,SAAS,IAAI;AAAA,IAC9E;AAAA,EACF,GAAG,CAAC,YAAY,CAAC;AAEjB,QAAM,eAAe,QAAQ,OAAO,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC;AAE3D,SACE,oBAAC,qBAAqB,UAArB,EAA8B,OAAO,cAAe,UAAS;AAElE;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as zod from 'zod';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { U as UnitTextEnum, C as CurrencyEnum } from './shared_pickle_output_latest-DX6GQoVn.cjs';
|
|
4
|
+
import { E as EmploymentTypeEnum, a as EmploymentLevelEnum, b as JobFunctionEnum, B as BestFitEnum, C as ClinicalSpecialtyEnum, S as ShiftEnum, c as ClinicalSettingEnum } from './job_posting_service_latest-D0AsiA4a.cjs';
|
|
5
|
+
|
|
6
|
+
declare const employmentTypeDisplayText: DisplayTextConfig<typeof EmploymentTypeEnum>;
|
|
7
|
+
declare const unitTextDisplayText: DisplayTextConfig<typeof UnitTextEnum>;
|
|
8
|
+
declare const currencyDisplayText: DisplayTextConfig<typeof CurrencyEnum>;
|
|
9
|
+
declare const employmentLevelDisplayText: DisplayTextConfig<typeof EmploymentLevelEnum>;
|
|
10
|
+
declare const jobFunctionDisplayText: DisplayTextConfig<typeof JobFunctionEnum>;
|
|
11
|
+
declare const bestFitDisplayText: DisplayTextConfig<typeof BestFitEnum>;
|
|
12
|
+
declare const clinicalSpecialtyDisplayText: DisplayTextConfig<typeof ClinicalSpecialtyEnum>;
|
|
13
|
+
declare const shiftDisplayText: DisplayTextConfig<typeof ShiftEnum>;
|
|
14
|
+
declare const clinicalSettingDisplayText: DisplayTextConfig<typeof ClinicalSettingEnum>;
|
|
15
|
+
declare const defaultMappings: {
|
|
16
|
+
readonly employmentType: DisplayTextConfig<zod.ZodEnum<["CONTRACT", "FULL_TIME", "INTERNSHIP", "OTHER", "PART_TIME", "PER_DIEM", "TEMPORARY"]>>;
|
|
17
|
+
readonly unitText: DisplayTextConfig<zod.ZodEnum<["DAY", "HOUR", "MONTH", "PER_ACTIVITY", "WEEK", "YEAR"]>>;
|
|
18
|
+
readonly currency: DisplayTextConfig<zod.ZodEnum<["EUR", "GBP", "USD"]>>;
|
|
19
|
+
readonly employmentLevel: DisplayTextConfig<zod.ZodEnum<["DIRECTOR", "ENTRY_LEVEL", "EXECUTIVE", "EXPERIENCED", "INTERN", "MANAGER"]>>;
|
|
20
|
+
readonly jobFunction: DisplayTextConfig<zod.ZodEnum<["CLINICAL_RESEARCH", "CUSTOMER_SUCCESS", "DATA_ANALYTICS", "FINANCE_AND_AUDIT", "MARKETING", "OPERATIONS", "PEOPLE_HUMAN_RESOURCES", "PRODUCT_AND_TECH", "QUALITY_ASSURANCE_AND_OUTCOMES", "SALES_AND_BUSINESS_DEVELOPMENT", "STRATEGY_AND_CONSULTING"]>>;
|
|
21
|
+
readonly bestFit: DisplayTextConfig<zod.ZodEnum<["DENTIST", "DIETICIAN", "DOULA", "MEDICAL_ASSISTANT", "MIDWIFE", "NURSE", "OCCUPATIONAL_THERAPIST", "PHARMACIST", "PHYSICAL_THERAPIST", "PHYSICIAN", "PHYSICIAN_ASSISTANT", "PSYCHOLOGIST", "RADIOLOGIST", "SOCIAL_WORKER", "SPEECH_LANGUAGE_PATHOLOGIST", "SURGEON"]>>;
|
|
22
|
+
readonly clinicalSpecialty: DisplayTextConfig<zod.ZodEnum<["ANESTHESIOLOGY", "CARDIOLOGY", "CASE_MANAGEMENT", "CHRONIC_PAIN", "CLINICAL_ELECTROPHYSIOLOGY", "CRITICAL_AND_ACUTE_CARE", "DERMATOLOGY", "DIALYSIS", "EMERGENCY_MEDICINE", "ENDOCRINOLOGY", "ERGONOMICS", "FEEDING_EATING_AND_SWALLOWING", "GASTROENTEROLOGY", "GERIATRICS", "HAND_THERAPY", "HEMATOLOGY", "HOLISTIC_MEDICINE", "INFORMATICS", "INTERNAL_MEDICINE", "LABOR_AND_DELIVERY", "MANUAL_THERAPY", "MED_SURG", "MENTAL_HEALTH", "NEPHROLOGY", "NEUROLOGY", "ONCOLOGY", "ORTHOPEDICS", "OTOLARYNGOLOGY", "PEDIATRICS", "PHYSICAL_AND_REHABILITATION_MEDICINE", "PLASTIC_SURGERY", "PRIMARY_CARE", "PSYCHIATRY", "PULMONOLOGY", "RADIOLOGY", "SENSORY", "SPORTS", "SURGERY", "TRAUMA_MEDICINE", "URGENT_CARE", "UROLOGY", "VISION", "WOMENS_HEALTH", "WOUND_AND_BURN_CARE"]>>;
|
|
23
|
+
readonly clinicalSetting: DisplayTextConfig<zod.ZodEnum<["ACUTE_CARE", "AMBULATORY_SURGERY_CENTER", "CLINIC", "HOME_HEALTH", "HOSPITAL", "INPATIENT", "LONG_TERM_CARE", "MED_SPA", "NURSING_HOME", "OFFICE", "OUTPATIENT", "PRIVATE_PRACTICE", "REHAB_CENTER", "SCHOOL", "SKILLED_NURSING_FACILITY"]>>;
|
|
24
|
+
readonly shift: DisplayTextConfig<zod.ZodEnum<["DAY", "EIGHT_HOUR", "EVENING", "FLEXIBLE", "MID_SHIFT", "MONDAY_TO_FRIDAY", "NIGHT", "ON_CALL", "TEN_HOUR", "TWELVE_HOUR", "WEEKENDS"]>>;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
declare const SUPPORTED_LANGUAGES: readonly ["en"];
|
|
28
|
+
type SupportedLanguage = (typeof SUPPORTED_LANGUAGES)[number];
|
|
29
|
+
type ServiceMappings = typeof defaultMappings;
|
|
30
|
+
type ZodEnumValue<T> = T extends z.ZodEnum<[string, ...string[]]> ? z.infer<T> : never;
|
|
31
|
+
type DisplayTextConfig<T = string> = {
|
|
32
|
+
[K in T extends z.ZodEnum<[string, ...string[]]> ? ZodEnumValue<T> : string]: {
|
|
33
|
+
[L in SupportedLanguage]: string;
|
|
34
|
+
};
|
|
35
|
+
} & Record<string, {
|
|
36
|
+
[L in SupportedLanguage]: string;
|
|
37
|
+
}>;
|
|
38
|
+
interface IDisplayTextService {
|
|
39
|
+
getDisplayText: (scope: keyof ServiceMappings, value: string | string[], language?: SupportedLanguage) => Promise<string>;
|
|
40
|
+
}
|
|
41
|
+
declare class DisplayTextService implements IDisplayTextService {
|
|
42
|
+
private readonly defaultLanguage;
|
|
43
|
+
private readonly mappings;
|
|
44
|
+
constructor(customMappings?: Partial<ServiceMappings>);
|
|
45
|
+
getDisplayText(scope: keyof ServiceMappings, value: string | string[], language?: SupportedLanguage): Promise<string>;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export { type DisplayTextConfig as D, type IDisplayTextService as I, type ServiceMappings as S, employmentLevelDisplayText as a, bestFitDisplayText as b, currencyDisplayText as c, clinicalSpecialtyDisplayText as d, employmentTypeDisplayText as e, clinicalSettingDisplayText as f, defaultMappings as g, DisplayTextService as h, jobFunctionDisplayText as j, shiftDisplayText as s, unitTextDisplayText as u };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as zod from 'zod';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { U as UnitTextEnum, C as CurrencyEnum } from './shared_pickle_output_latest-DX6GQoVn.js';
|
|
4
|
+
import { E as EmploymentTypeEnum, a as EmploymentLevelEnum, b as JobFunctionEnum, B as BestFitEnum, C as ClinicalSpecialtyEnum, S as ShiftEnum, c as ClinicalSettingEnum } from './job_posting_service_latest-D0AsiA4a.js';
|
|
5
|
+
|
|
6
|
+
declare const employmentTypeDisplayText: DisplayTextConfig<typeof EmploymentTypeEnum>;
|
|
7
|
+
declare const unitTextDisplayText: DisplayTextConfig<typeof UnitTextEnum>;
|
|
8
|
+
declare const currencyDisplayText: DisplayTextConfig<typeof CurrencyEnum>;
|
|
9
|
+
declare const employmentLevelDisplayText: DisplayTextConfig<typeof EmploymentLevelEnum>;
|
|
10
|
+
declare const jobFunctionDisplayText: DisplayTextConfig<typeof JobFunctionEnum>;
|
|
11
|
+
declare const bestFitDisplayText: DisplayTextConfig<typeof BestFitEnum>;
|
|
12
|
+
declare const clinicalSpecialtyDisplayText: DisplayTextConfig<typeof ClinicalSpecialtyEnum>;
|
|
13
|
+
declare const shiftDisplayText: DisplayTextConfig<typeof ShiftEnum>;
|
|
14
|
+
declare const clinicalSettingDisplayText: DisplayTextConfig<typeof ClinicalSettingEnum>;
|
|
15
|
+
declare const defaultMappings: {
|
|
16
|
+
readonly employmentType: DisplayTextConfig<zod.ZodEnum<["CONTRACT", "FULL_TIME", "INTERNSHIP", "OTHER", "PART_TIME", "PER_DIEM", "TEMPORARY"]>>;
|
|
17
|
+
readonly unitText: DisplayTextConfig<zod.ZodEnum<["DAY", "HOUR", "MONTH", "PER_ACTIVITY", "WEEK", "YEAR"]>>;
|
|
18
|
+
readonly currency: DisplayTextConfig<zod.ZodEnum<["EUR", "GBP", "USD"]>>;
|
|
19
|
+
readonly employmentLevel: DisplayTextConfig<zod.ZodEnum<["DIRECTOR", "ENTRY_LEVEL", "EXECUTIVE", "EXPERIENCED", "INTERN", "MANAGER"]>>;
|
|
20
|
+
readonly jobFunction: DisplayTextConfig<zod.ZodEnum<["CLINICAL_RESEARCH", "CUSTOMER_SUCCESS", "DATA_ANALYTICS", "FINANCE_AND_AUDIT", "MARKETING", "OPERATIONS", "PEOPLE_HUMAN_RESOURCES", "PRODUCT_AND_TECH", "QUALITY_ASSURANCE_AND_OUTCOMES", "SALES_AND_BUSINESS_DEVELOPMENT", "STRATEGY_AND_CONSULTING"]>>;
|
|
21
|
+
readonly bestFit: DisplayTextConfig<zod.ZodEnum<["DENTIST", "DIETICIAN", "DOULA", "MEDICAL_ASSISTANT", "MIDWIFE", "NURSE", "OCCUPATIONAL_THERAPIST", "PHARMACIST", "PHYSICAL_THERAPIST", "PHYSICIAN", "PHYSICIAN_ASSISTANT", "PSYCHOLOGIST", "RADIOLOGIST", "SOCIAL_WORKER", "SPEECH_LANGUAGE_PATHOLOGIST", "SURGEON"]>>;
|
|
22
|
+
readonly clinicalSpecialty: DisplayTextConfig<zod.ZodEnum<["ANESTHESIOLOGY", "CARDIOLOGY", "CASE_MANAGEMENT", "CHRONIC_PAIN", "CLINICAL_ELECTROPHYSIOLOGY", "CRITICAL_AND_ACUTE_CARE", "DERMATOLOGY", "DIALYSIS", "EMERGENCY_MEDICINE", "ENDOCRINOLOGY", "ERGONOMICS", "FEEDING_EATING_AND_SWALLOWING", "GASTROENTEROLOGY", "GERIATRICS", "HAND_THERAPY", "HEMATOLOGY", "HOLISTIC_MEDICINE", "INFORMATICS", "INTERNAL_MEDICINE", "LABOR_AND_DELIVERY", "MANUAL_THERAPY", "MED_SURG", "MENTAL_HEALTH", "NEPHROLOGY", "NEUROLOGY", "ONCOLOGY", "ORTHOPEDICS", "OTOLARYNGOLOGY", "PEDIATRICS", "PHYSICAL_AND_REHABILITATION_MEDICINE", "PLASTIC_SURGERY", "PRIMARY_CARE", "PSYCHIATRY", "PULMONOLOGY", "RADIOLOGY", "SENSORY", "SPORTS", "SURGERY", "TRAUMA_MEDICINE", "URGENT_CARE", "UROLOGY", "VISION", "WOMENS_HEALTH", "WOUND_AND_BURN_CARE"]>>;
|
|
23
|
+
readonly clinicalSetting: DisplayTextConfig<zod.ZodEnum<["ACUTE_CARE", "AMBULATORY_SURGERY_CENTER", "CLINIC", "HOME_HEALTH", "HOSPITAL", "INPATIENT", "LONG_TERM_CARE", "MED_SPA", "NURSING_HOME", "OFFICE", "OUTPATIENT", "PRIVATE_PRACTICE", "REHAB_CENTER", "SCHOOL", "SKILLED_NURSING_FACILITY"]>>;
|
|
24
|
+
readonly shift: DisplayTextConfig<zod.ZodEnum<["DAY", "EIGHT_HOUR", "EVENING", "FLEXIBLE", "MID_SHIFT", "MONDAY_TO_FRIDAY", "NIGHT", "ON_CALL", "TEN_HOUR", "TWELVE_HOUR", "WEEKENDS"]>>;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
declare const SUPPORTED_LANGUAGES: readonly ["en"];
|
|
28
|
+
type SupportedLanguage = (typeof SUPPORTED_LANGUAGES)[number];
|
|
29
|
+
type ServiceMappings = typeof defaultMappings;
|
|
30
|
+
type ZodEnumValue<T> = T extends z.ZodEnum<[string, ...string[]]> ? z.infer<T> : never;
|
|
31
|
+
type DisplayTextConfig<T = string> = {
|
|
32
|
+
[K in T extends z.ZodEnum<[string, ...string[]]> ? ZodEnumValue<T> : string]: {
|
|
33
|
+
[L in SupportedLanguage]: string;
|
|
34
|
+
};
|
|
35
|
+
} & Record<string, {
|
|
36
|
+
[L in SupportedLanguage]: string;
|
|
37
|
+
}>;
|
|
38
|
+
interface IDisplayTextService {
|
|
39
|
+
getDisplayText: (scope: keyof ServiceMappings, value: string | string[], language?: SupportedLanguage) => Promise<string>;
|
|
40
|
+
}
|
|
41
|
+
declare class DisplayTextService implements IDisplayTextService {
|
|
42
|
+
private readonly defaultLanguage;
|
|
43
|
+
private readonly mappings;
|
|
44
|
+
constructor(customMappings?: Partial<ServiceMappings>);
|
|
45
|
+
getDisplayText(scope: keyof ServiceMappings, value: string | string[], language?: SupportedLanguage): Promise<string>;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export { type DisplayTextConfig as D, type IDisplayTextService as I, type ServiceMappings as S, employmentLevelDisplayText as a, bestFitDisplayText as b, currencyDisplayText as c, clinicalSpecialtyDisplayText as d, employmentTypeDisplayText as e, clinicalSettingDisplayText as f, defaultMappings as g, DisplayTextService as h, jobFunctionDisplayText as j, shiftDisplayText as s, unitTextDisplayText as u };
|