@next-degree/pickle-shared-js 0.7.51 → 0.7.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/jobPost/JobPost.d.cts +1 -1
- package/dist/components/jobPost/JobPost.d.ts +1 -1
- package/dist/components/primitives/command.d.cts +2 -2
- package/dist/components/primitives/command.d.ts +2 -2
- package/dist/components/primitives/input-otp.d.cts +2 -2
- package/dist/components/primitives/input-otp.d.ts +2 -2
- package/dist/components/ui/buttonShadcn.d.cts +1 -1
- package/dist/components/ui/buttonShadcn.d.ts +1 -1
- package/dist/{displayText-CQRZ2fOT.d.cts → displayText-6TMMBOmQ.d.cts} +2 -2
- package/dist/{displayText-LlsLfkTS.d.ts → displayText-BCC_oy5I.d.ts} +2 -2
- package/dist/hooks/useDisplayText.d.cts +3 -3
- package/dist/hooks/useDisplayText.d.ts +3 -3
- package/dist/index.cjs +284 -96
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -4
- package/dist/index.d.ts +5 -4
- package/dist/index.js +255 -68
- 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/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 +1 -1
- package/dist/{company_service_latest-8IMr2hMZ.d.cts → company_service_latest-BUKbZgpZ.d.cts} +229 -229
- package/dist/{company_service_latest-8IMr2hMZ.d.ts → company_service_latest-BUKbZgpZ.d.ts} +229 -229
- package/dist/{job_posting_service_latest-CKITrYyz.d.cts → job_posting_service_latest-2KcpupDl.d.cts} +209 -209
- package/dist/{job_posting_service_latest-CKITrYyz.d.ts → job_posting_service_latest-2KcpupDl.d.ts} +209 -209
- package/dist/{shared_pickle_output_latest-Cwf2EMdH.d.cts → shared_pickle_output_latest-D2n-PRlx.d.cts} +17 -17
- package/dist/{shared_pickle_output_latest-Cwf2EMdH.d.ts → shared_pickle_output_latest-D2n-PRlx.d.ts} +17 -17
package/dist/index.cjs
CHANGED
|
@@ -42,6 +42,7 @@ __export(index_exports, {
|
|
|
42
42
|
CompanyService: () => company_service_latest_exports,
|
|
43
43
|
CompanyTake: () => CompanyTake,
|
|
44
44
|
Counter: () => Counter,
|
|
45
|
+
DatePicker: () => DatePicker,
|
|
45
46
|
Icon: () => Icon,
|
|
46
47
|
Input: () => Input_default,
|
|
47
48
|
InputOtp: () => InputOtp,
|
|
@@ -1690,18 +1691,204 @@ function ReadMore({ text, ...props }) {
|
|
|
1690
1691
|
] });
|
|
1691
1692
|
}
|
|
1692
1693
|
|
|
1693
|
-
// src/components/
|
|
1694
|
+
// src/components/ui/DatePicker.tsx
|
|
1695
|
+
var import_cva9 = require("cva");
|
|
1696
|
+
var import_react11 = require("react");
|
|
1697
|
+
var import_date_fns = require("date-fns");
|
|
1698
|
+
|
|
1699
|
+
// src/components/ui/calendar.tsx
|
|
1700
|
+
var import_lucide_react13 = require("lucide-react");
|
|
1701
|
+
var import_react_day_picker = require("react-day-picker");
|
|
1702
|
+
|
|
1703
|
+
// src/components/ui/buttonShadcn.tsx
|
|
1704
|
+
var React9 = __toESM(require("react"), 1);
|
|
1705
|
+
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
1706
|
+
var import_class_variance_authority = require("class-variance-authority");
|
|
1694
1707
|
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1708
|
+
var buttonVariants2 = (0, import_class_variance_authority.cva)(
|
|
1709
|
+
"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
|
+
{
|
|
1711
|
+
variants: {
|
|
1712
|
+
variant: {
|
|
1713
|
+
default: "bg-neutral-900 text-neutral-50 shadow hover:bg-neutral-900/90 dark:bg-neutral-50 dark:text-neutral-900 dark:hover:bg-neutral-50/90",
|
|
1714
|
+
destructive: "bg-red-500 text-neutral-50 shadow-sm hover:bg-red-500/90 dark:bg-red-900 dark:text-neutral-50 dark:hover:bg-red-900/90",
|
|
1715
|
+
outline: "border border-neutral-200 bg-white shadow-sm hover:bg-neutral-100 hover:text-neutral-900 dark:border-neutral-800 dark:bg-neutral-950 dark:hover:bg-neutral-800 dark:hover:text-neutral-50",
|
|
1716
|
+
secondary: "bg-neutral-100 text-neutral-900 shadow-sm hover:bg-neutral-100/80 dark:bg-neutral-800 dark:text-neutral-50 dark:hover:bg-neutral-800/80",
|
|
1717
|
+
ghost: "hover:bg-neutral-100 hover:text-neutral-900 dark:hover:bg-neutral-800 dark:hover:text-neutral-50",
|
|
1718
|
+
link: "text-neutral-900 underline-offset-4 hover:underline dark:text-neutral-50"
|
|
1719
|
+
},
|
|
1720
|
+
size: {
|
|
1721
|
+
default: "h-9 px-4 py-2",
|
|
1722
|
+
sm: "h-8 rounded-md px-3 text-xs",
|
|
1723
|
+
lg: "h-10 rounded-md px-8",
|
|
1724
|
+
icon: "h-9 w-9"
|
|
1725
|
+
}
|
|
1726
|
+
},
|
|
1727
|
+
defaultVariants: {
|
|
1728
|
+
variant: "default",
|
|
1729
|
+
size: "default"
|
|
1730
|
+
}
|
|
1731
|
+
}
|
|
1732
|
+
);
|
|
1733
|
+
var Button2 = React9.forwardRef(
|
|
1734
|
+
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
1735
|
+
const Comp = asChild ? import_react_slot3.Slot : "button";
|
|
1736
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1737
|
+
Comp,
|
|
1738
|
+
{
|
|
1739
|
+
className: cn(buttonVariants2({ variant, size, className })),
|
|
1740
|
+
ref,
|
|
1741
|
+
...props
|
|
1742
|
+
}
|
|
1743
|
+
);
|
|
1744
|
+
}
|
|
1745
|
+
);
|
|
1746
|
+
Button2.displayName = "Button";
|
|
1747
|
+
|
|
1748
|
+
// src/components/ui/calendar.tsx
|
|
1749
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1750
|
+
function Calendar({
|
|
1751
|
+
className,
|
|
1752
|
+
classNames,
|
|
1753
|
+
showOutsideDays = true,
|
|
1754
|
+
...props
|
|
1755
|
+
}) {
|
|
1756
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1757
|
+
import_react_day_picker.DayPicker,
|
|
1758
|
+
{
|
|
1759
|
+
showOutsideDays,
|
|
1760
|
+
className: cn("p-3", className),
|
|
1761
|
+
classNames: {
|
|
1762
|
+
months: "flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0",
|
|
1763
|
+
month: "space-y-4",
|
|
1764
|
+
caption: "flex justify-center pt-1 relative items-center",
|
|
1765
|
+
caption_label: "text-sm font-medium",
|
|
1766
|
+
nav: "space-x-1 flex items-center",
|
|
1767
|
+
nav_button: cn(
|
|
1768
|
+
buttonVariants2({ variant: "outline" }),
|
|
1769
|
+
"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100"
|
|
1770
|
+
),
|
|
1771
|
+
nav_button_previous: "absolute left-1",
|
|
1772
|
+
nav_button_next: "absolute right-1",
|
|
1773
|
+
table: "w-full border-collapse space-y-1",
|
|
1774
|
+
head_row: "flex",
|
|
1775
|
+
head_cell: "text-neutral-500 rounded-md w-8 font-normal text-[0.8rem] dark:text-neutral-400",
|
|
1776
|
+
row: "flex w-full mt-2",
|
|
1777
|
+
cell: cn(
|
|
1778
|
+
"relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-neutral-100 [&:has([aria-selected].day-outside)]:bg-neutral-100/50 [&:has([aria-selected].day-range-end)]:rounded-r-md dark:[&:has([aria-selected])]:bg-neutral-800 dark:[&:has([aria-selected].day-outside)]:bg-neutral-800/50",
|
|
1779
|
+
props.mode === "range" ? "[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md" : "[&:has([aria-selected])]:rounded-md"
|
|
1780
|
+
),
|
|
1781
|
+
day: cn(
|
|
1782
|
+
buttonVariants2({ variant: "ghost" }),
|
|
1783
|
+
"h-8 w-8 p-0 font-normal aria-selected:opacity-100"
|
|
1784
|
+
),
|
|
1785
|
+
day_range_start: "day-range-start",
|
|
1786
|
+
day_range_end: "day-range-end",
|
|
1787
|
+
day_selected: "bg-neutral-900 text-neutral-50 hover:bg-neutral-900 hover:text-neutral-50 focus:bg-neutral-900 focus:text-neutral-50 dark:bg-neutral-50 dark:text-neutral-900 dark:hover:bg-neutral-50 dark:hover:text-neutral-900 dark:focus:bg-neutral-50 dark:focus:text-neutral-900",
|
|
1788
|
+
day_today: "bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-50",
|
|
1789
|
+
day_outside: "day-outside text-neutral-500 aria-selected:bg-neutral-100/50 aria-selected:text-neutral-500 dark:text-neutral-400 dark:aria-selected:bg-neutral-800/50 dark:aria-selected:text-neutral-400",
|
|
1790
|
+
day_disabled: "text-neutral-500 opacity-50 dark:text-neutral-400",
|
|
1791
|
+
day_range_middle: "aria-selected:bg-neutral-100 aria-selected:text-neutral-900 dark:aria-selected:bg-neutral-800 dark:aria-selected:text-neutral-50",
|
|
1792
|
+
day_hidden: "invisible",
|
|
1793
|
+
...classNames
|
|
1794
|
+
},
|
|
1795
|
+
components: {
|
|
1796
|
+
IconLeft: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react13.ChevronLeft, { className: cn("h-4 w-4", className2), ...props2 }),
|
|
1797
|
+
IconRight: ({ className: className2, ...props2 }) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react13.ChevronRight, { className: cn("h-4 w-4", className2), ...props2 })
|
|
1798
|
+
},
|
|
1799
|
+
...props
|
|
1800
|
+
}
|
|
1801
|
+
);
|
|
1802
|
+
}
|
|
1803
|
+
Calendar.displayName = "Calendar";
|
|
1804
|
+
|
|
1805
|
+
// src/components/ui/DatePicker.tsx
|
|
1806
|
+
var import_lucide_react14 = require("lucide-react");
|
|
1807
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
1808
|
+
var DatePicker = (0, import_react11.forwardRef)(({ label, description, required, classNames, value, onChange, error }, ref) => {
|
|
1809
|
+
const [date, setDate] = (0, import_react11.useState)(null);
|
|
1810
|
+
(0, import_react11.useEffect)(() => {
|
|
1811
|
+
setDate(value ?? null);
|
|
1812
|
+
}, [value]);
|
|
1813
|
+
const handleDateSelect = (dateSelected) => {
|
|
1814
|
+
if (!dateSelected) return;
|
|
1815
|
+
onChange?.(dateSelected);
|
|
1816
|
+
setDate(dateSelected);
|
|
1817
|
+
};
|
|
1818
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: cn("flex w-auto flex-col gap-1"), children: [
|
|
1819
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1820
|
+
Label_default,
|
|
1821
|
+
{
|
|
1822
|
+
text: label,
|
|
1823
|
+
required,
|
|
1824
|
+
description,
|
|
1825
|
+
className: classNames?.label
|
|
1826
|
+
}
|
|
1827
|
+
),
|
|
1828
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Popover, { children: [
|
|
1829
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(PopoverTrigger, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: cn(datePickerStyle()), children: [
|
|
1830
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react14.Calendar, { size: 16 }),
|
|
1831
|
+
date ? (0, import_date_fns.format)(date, "MM/dd/yyyy") : "Select a date"
|
|
1832
|
+
] }) }),
|
|
1833
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(PopoverContent, { ref, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1834
|
+
Calendar,
|
|
1835
|
+
{
|
|
1836
|
+
mode: "single",
|
|
1837
|
+
selected: date || void 0,
|
|
1838
|
+
onSelect: handleDateSelect,
|
|
1839
|
+
captionLayout: "dropdown",
|
|
1840
|
+
showOutsideDays: true
|
|
1841
|
+
}
|
|
1842
|
+
) })
|
|
1843
|
+
] }),
|
|
1844
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ErrorMessage_default, { message: error })
|
|
1845
|
+
] });
|
|
1846
|
+
});
|
|
1847
|
+
var datePickerStyle = (0, import_cva9.cva)(
|
|
1848
|
+
[
|
|
1849
|
+
"placeholder:text-muted-foreground",
|
|
1850
|
+
"focus-visible:ring-ring",
|
|
1851
|
+
"inline-flex",
|
|
1852
|
+
"w-full",
|
|
1853
|
+
"h-11",
|
|
1854
|
+
"items-center",
|
|
1855
|
+
"justify-start",
|
|
1856
|
+
"gap-3",
|
|
1857
|
+
"rounded-lg",
|
|
1858
|
+
"bg-transparent",
|
|
1859
|
+
"px-3",
|
|
1860
|
+
"pt-0.5",
|
|
1861
|
+
"text-sm",
|
|
1862
|
+
"shadow-sm",
|
|
1863
|
+
"ring-grey-50",
|
|
1864
|
+
"transition-colors",
|
|
1865
|
+
"focus-visible:outline-none",
|
|
1866
|
+
"focus-visible:ring-1",
|
|
1867
|
+
"disabled:cursor-not-allowed",
|
|
1868
|
+
"disabled:opacity-50",
|
|
1869
|
+
"appearance-none",
|
|
1870
|
+
"[&::-webkit-search-cancel-button]:appearance-none",
|
|
1871
|
+
"[&::-webkit-search-decoration]:appearance-none",
|
|
1872
|
+
"[&::-webkit-search-results-button]:appearance-none",
|
|
1873
|
+
"[&::-webkit-search-results-decoration]:appearance-none",
|
|
1874
|
+
"[&::-ms-clear]:display-none",
|
|
1875
|
+
"[&::-ms-reveal]:display-none",
|
|
1876
|
+
"text-grey-80 border"
|
|
1877
|
+
]
|
|
1878
|
+
);
|
|
1879
|
+
|
|
1880
|
+
// src/components/company/CompanyBenefits.tsx
|
|
1881
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
1695
1882
|
function CompanyBenefits({ benefits }) {
|
|
1696
1883
|
if (!benefits) return null;
|
|
1697
|
-
return /* @__PURE__ */ (0,
|
|
1698
|
-
/* @__PURE__ */ (0,
|
|
1699
|
-
/* @__PURE__ */ (0,
|
|
1884
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "flex flex-col gap-2", "data-testid": "company-benefits", children: [
|
|
1885
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("h2", { className: "break-word max-w-full text-xl font-bold text-black sm:max-w-2xl md:max-w-lg", children: "Company benefits" }),
|
|
1886
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("ul", { className: "flex flex-col gap-3", children: benefits.map((benefit, i) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("li", { className: "text-base text-grey-80", children: benefit }, `${benefit}-${i}`)) })
|
|
1700
1887
|
] });
|
|
1701
1888
|
}
|
|
1702
1889
|
|
|
1703
1890
|
// src/components/company/CompanyInformation.tsx
|
|
1704
|
-
var
|
|
1891
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
1705
1892
|
function CompanyInformation({
|
|
1706
1893
|
name,
|
|
1707
1894
|
how,
|
|
@@ -1709,8 +1896,8 @@ function CompanyInformation({
|
|
|
1709
1896
|
wow,
|
|
1710
1897
|
website
|
|
1711
1898
|
}) {
|
|
1712
|
-
return /* @__PURE__ */ (0,
|
|
1713
|
-
/* @__PURE__ */ (0,
|
|
1899
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
1900
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
1714
1901
|
"h2",
|
|
1715
1902
|
{
|
|
1716
1903
|
"data-testid": "company-name",
|
|
@@ -1721,22 +1908,22 @@ function CompanyInformation({
|
|
|
1721
1908
|
]
|
|
1722
1909
|
}
|
|
1723
1910
|
),
|
|
1724
|
-
how && /* @__PURE__ */ (0,
|
|
1725
|
-
mission && /* @__PURE__ */ (0,
|
|
1726
|
-
/* @__PURE__ */ (0,
|
|
1727
|
-
/* @__PURE__ */ (0,
|
|
1728
|
-
/* @__PURE__ */ (0,
|
|
1911
|
+
how && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("p", { "data-testid": "company-information", className: "text-base text-grey-80", children: how }),
|
|
1912
|
+
mission && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex gap-2", children: [
|
|
1913
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: "\u{1F680}" }),
|
|
1914
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("p", { className: "text-base text-grey-80", children: [
|
|
1915
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "pr-1 font-bold", children: "Mission" }),
|
|
1729
1916
|
mission
|
|
1730
1917
|
] })
|
|
1731
1918
|
] }),
|
|
1732
|
-
wow && /* @__PURE__ */ (0,
|
|
1733
|
-
/* @__PURE__ */ (0,
|
|
1734
|
-
/* @__PURE__ */ (0,
|
|
1735
|
-
/* @__PURE__ */ (0,
|
|
1919
|
+
wow && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex gap-2", children: [
|
|
1920
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { children: "\u{1F31F}" }),
|
|
1921
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("p", { className: "text-base text-grey-80", children: [
|
|
1922
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "pr-1 font-bold", children: "Wow Factor" }),
|
|
1736
1923
|
wow
|
|
1737
1924
|
] })
|
|
1738
1925
|
] }),
|
|
1739
|
-
website && /* @__PURE__ */ (0,
|
|
1926
|
+
website && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1740
1927
|
LinkButton,
|
|
1741
1928
|
{
|
|
1742
1929
|
"data-testid": "company-website-link",
|
|
@@ -1750,22 +1937,22 @@ function CompanyInformation({
|
|
|
1750
1937
|
}
|
|
1751
1938
|
|
|
1752
1939
|
// src/components/company/CompanyTake.tsx
|
|
1753
|
-
var
|
|
1940
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
1754
1941
|
function CompanyTake({ content, avatarSrc }) {
|
|
1755
1942
|
if (!content) return null;
|
|
1756
|
-
return /* @__PURE__ */ (0,
|
|
1943
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
1757
1944
|
"div",
|
|
1758
1945
|
{
|
|
1759
1946
|
"data-testid": "company-take",
|
|
1760
1947
|
className: "align-center w-full justify-start rounded-2xl bg-green-90 p-6",
|
|
1761
1948
|
children: [
|
|
1762
|
-
/* @__PURE__ */ (0,
|
|
1763
|
-
/* @__PURE__ */ (0,
|
|
1764
|
-
/* @__PURE__ */ (0,
|
|
1765
|
-
/* @__PURE__ */ (0,
|
|
1766
|
-
/* @__PURE__ */ (0,
|
|
1767
|
-
/* @__PURE__ */ (0,
|
|
1768
|
-
/* @__PURE__ */ (0,
|
|
1949
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-lg font-bold text-white sm:text-xl", children: "The Real Dill \u2618\uFE0F" }),
|
|
1950
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "mt-2 flex items-center justify-start", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-normal text-grey-10", children: content }) }),
|
|
1951
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "mt-8 flex w-full items-center gap-3", children: [
|
|
1952
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Avatar, { name: "Jon Lee", src: avatarSrc }),
|
|
1953
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("div", { className: "flex flex-col flex-wrap items-start", children: [
|
|
1954
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-sm font-bold text-white", children: "Jon Lee, PT, DPT, OCS, FAAOMPT, MBA" }),
|
|
1955
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("p", { className: "text-xs font-normal text-grey-30", children: "Pickle co-founder" })
|
|
1769
1956
|
] })
|
|
1770
1957
|
] })
|
|
1771
1958
|
]
|
|
@@ -1774,51 +1961,51 @@ function CompanyTake({ content, avatarSrc }) {
|
|
|
1774
1961
|
}
|
|
1775
1962
|
|
|
1776
1963
|
// src/components/jobPost/JobDescription.tsx
|
|
1777
|
-
var
|
|
1964
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
1778
1965
|
function JobDescription({ description }) {
|
|
1779
1966
|
if (!description) return null;
|
|
1780
|
-
return /* @__PURE__ */ (0,
|
|
1781
|
-
/* @__PURE__ */ (0,
|
|
1782
|
-
/* @__PURE__ */ (0,
|
|
1967
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "flex w-full flex-col gap-2", children: [
|
|
1968
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("h3", { className: "text-xl font-bold", children: "Job Description" }),
|
|
1969
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ReadMore, { text: description })
|
|
1783
1970
|
] });
|
|
1784
1971
|
}
|
|
1785
1972
|
|
|
1786
1973
|
// src/components/jobPost/JobHeader.tsx
|
|
1787
|
-
var
|
|
1974
|
+
var import_lucide_react17 = require("lucide-react");
|
|
1788
1975
|
var import_image = __toESM(require("next/image"), 1);
|
|
1789
1976
|
|
|
1790
1977
|
// src/components/buttons/BackButton.tsx
|
|
1791
|
-
var
|
|
1978
|
+
var import_lucide_react15 = require("lucide-react");
|
|
1792
1979
|
var import_navigation2 = require("next/navigation");
|
|
1793
1980
|
|
|
1794
1981
|
// src/hooks/useWindowHistory.ts
|
|
1795
|
-
var
|
|
1982
|
+
var import_react13 = require("react");
|
|
1796
1983
|
|
|
1797
1984
|
// src/contexts/WindowHistoryProvider.tsx
|
|
1798
1985
|
var import_navigation = require("next/navigation");
|
|
1799
|
-
var
|
|
1800
|
-
var
|
|
1801
|
-
var WindowHistoryContext = (0,
|
|
1986
|
+
var import_react12 = require("react");
|
|
1987
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
1988
|
+
var WindowHistoryContext = (0, import_react12.createContext)({});
|
|
1802
1989
|
function WindowHistoryProvider({ children }) {
|
|
1803
|
-
const [history, setHistory] = (0,
|
|
1990
|
+
const [history, setHistory] = (0, import_react12.useState)([]);
|
|
1804
1991
|
const searchParams = (0, import_navigation.useSearchParams)();
|
|
1805
|
-
(0,
|
|
1992
|
+
(0, import_react12.useEffect)(() => {
|
|
1806
1993
|
setHistory(
|
|
1807
1994
|
(prev) => prev.at(-1) === window.location.href ? prev : [...prev, window.location.href]
|
|
1808
1995
|
);
|
|
1809
1996
|
}, [searchParams]);
|
|
1810
|
-
const contextValue = (0,
|
|
1811
|
-
return /* @__PURE__ */ (0,
|
|
1997
|
+
const contextValue = (0, import_react12.useMemo)(() => ({ history }), [history]);
|
|
1998
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(WindowHistoryContext.Provider, { value: contextValue, children });
|
|
1812
1999
|
}
|
|
1813
2000
|
|
|
1814
2001
|
// src/hooks/useWindowHistory.ts
|
|
1815
2002
|
function useWindowHistory() {
|
|
1816
|
-
const windowHistoryContext = (0,
|
|
2003
|
+
const windowHistoryContext = (0, import_react13.useContext)(WindowHistoryContext);
|
|
1817
2004
|
return windowHistoryContext;
|
|
1818
2005
|
}
|
|
1819
2006
|
|
|
1820
2007
|
// src/components/buttons/BackButton.tsx
|
|
1821
|
-
var
|
|
2008
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
1822
2009
|
function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
1823
2010
|
const { history } = useWindowHistory();
|
|
1824
2011
|
const router = (0, import_navigation2.useRouter)();
|
|
@@ -1831,7 +2018,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
1831
2018
|
router.push(fallbackHref ?? "/");
|
|
1832
2019
|
}
|
|
1833
2020
|
};
|
|
1834
|
-
return /* @__PURE__ */ (0,
|
|
2021
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
1835
2022
|
Icon,
|
|
1836
2023
|
{
|
|
1837
2024
|
"aria-label": "back button",
|
|
@@ -1840,38 +2027,38 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
1840
2027
|
onClick: goBack,
|
|
1841
2028
|
className,
|
|
1842
2029
|
...props,
|
|
1843
|
-
children: /* @__PURE__ */ (0,
|
|
2030
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react15.X, {})
|
|
1844
2031
|
}
|
|
1845
2032
|
);
|
|
1846
2033
|
}
|
|
1847
2034
|
|
|
1848
2035
|
// src/lib/icons.ts
|
|
1849
|
-
var
|
|
2036
|
+
var import_lucide_react16 = require("lucide-react");
|
|
1850
2037
|
var iconMap = {
|
|
1851
|
-
house:
|
|
1852
|
-
layers:
|
|
1853
|
-
users:
|
|
1854
|
-
settings:
|
|
1855
|
-
building:
|
|
1856
|
-
bell:
|
|
1857
|
-
wallet:
|
|
1858
|
-
contact:
|
|
1859
|
-
banknote:
|
|
1860
|
-
"message-square-dot":
|
|
1861
|
-
"life-buoy":
|
|
1862
|
-
"building-2":
|
|
1863
|
-
"gallery-vertical-end":
|
|
1864
|
-
"square-kanban":
|
|
1865
|
-
"briefcase-business":
|
|
1866
|
-
"circle-user":
|
|
1867
|
-
"key-round":
|
|
1868
|
-
"clock-2":
|
|
1869
|
-
"circle-user-round":
|
|
1870
|
-
"map-pin":
|
|
2038
|
+
house: import_lucide_react16.Home,
|
|
2039
|
+
layers: import_lucide_react16.Layers,
|
|
2040
|
+
users: import_lucide_react16.Users,
|
|
2041
|
+
settings: import_lucide_react16.Settings,
|
|
2042
|
+
building: import_lucide_react16.Building,
|
|
2043
|
+
bell: import_lucide_react16.Bell,
|
|
2044
|
+
wallet: import_lucide_react16.Wallet,
|
|
2045
|
+
contact: import_lucide_react16.Contact,
|
|
2046
|
+
banknote: import_lucide_react16.Banknote,
|
|
2047
|
+
"message-square-dot": import_lucide_react16.MessageSquareDot,
|
|
2048
|
+
"life-buoy": import_lucide_react16.LifeBuoy,
|
|
2049
|
+
"building-2": import_lucide_react16.Building2,
|
|
2050
|
+
"gallery-vertical-end": import_lucide_react16.GalleryVerticalEnd,
|
|
2051
|
+
"square-kanban": import_lucide_react16.SquareKanban,
|
|
2052
|
+
"briefcase-business": import_lucide_react16.BriefcaseBusiness,
|
|
2053
|
+
"circle-user": import_lucide_react16.CircleUser,
|
|
2054
|
+
"key-round": import_lucide_react16.KeyRound,
|
|
2055
|
+
"clock-2": import_lucide_react16.Clock2,
|
|
2056
|
+
"circle-user-round": import_lucide_react16.CircleUserRound,
|
|
2057
|
+
"map-pin": import_lucide_react16.MapPin
|
|
1871
2058
|
};
|
|
1872
2059
|
|
|
1873
2060
|
// src/components/jobPost/JobHeader.tsx
|
|
1874
|
-
var
|
|
2061
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
1875
2062
|
function JobHeader({
|
|
1876
2063
|
title,
|
|
1877
2064
|
subtitles,
|
|
@@ -1887,9 +2074,9 @@ function JobHeader({
|
|
|
1887
2074
|
}) {
|
|
1888
2075
|
const renderIcon = (icon) => {
|
|
1889
2076
|
const Icon2 = iconMap[icon];
|
|
1890
|
-
return /* @__PURE__ */ (0,
|
|
2077
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Icon2, { size: 18 });
|
|
1891
2078
|
};
|
|
1892
|
-
return /* @__PURE__ */ (0,
|
|
2079
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
1893
2080
|
"div",
|
|
1894
2081
|
{
|
|
1895
2082
|
"data-testid": "job-header-root",
|
|
@@ -1898,8 +2085,8 @@ function JobHeader({
|
|
|
1898
2085
|
!standalone && "rounded-3xl"
|
|
1899
2086
|
),
|
|
1900
2087
|
children: [
|
|
1901
|
-
!standalone && /* @__PURE__ */ (0,
|
|
1902
|
-
/* @__PURE__ */ (0,
|
|
2088
|
+
!standalone && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "relative flex min-h-16 w-full items-center rounded-t-3xl bg-transparent md:min-h-24 md:flex-row lg:min-h-32", children: [
|
|
2089
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1903
2090
|
import_image.default,
|
|
1904
2091
|
{
|
|
1905
2092
|
className: "h-full w-full rounded-t-3xl object-cover",
|
|
@@ -1908,7 +2095,7 @@ function JobHeader({
|
|
|
1908
2095
|
fill: true
|
|
1909
2096
|
}
|
|
1910
2097
|
),
|
|
1911
|
-
/* @__PURE__ */ (0,
|
|
2098
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1912
2099
|
BackButton,
|
|
1913
2100
|
{
|
|
1914
2101
|
acceptedRoutes: backAcceptedRoutes,
|
|
@@ -1917,12 +2104,12 @@ function JobHeader({
|
|
|
1917
2104
|
"data-testid": "job-header-back-button"
|
|
1918
2105
|
}
|
|
1919
2106
|
),
|
|
1920
|
-
/* @__PURE__ */ (0,
|
|
2107
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1921
2108
|
"div",
|
|
1922
2109
|
{
|
|
1923
2110
|
className: "absolute left-4 top-8 md:left-6 md:top-16 lg:top-24",
|
|
1924
2111
|
"data-testid": "job-header-avatar",
|
|
1925
|
-
children: /* @__PURE__ */ (0,
|
|
2112
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1926
2113
|
Avatar,
|
|
1927
2114
|
{
|
|
1928
2115
|
size: "large",
|
|
@@ -1936,9 +2123,9 @@ function JobHeader({
|
|
|
1936
2123
|
}
|
|
1937
2124
|
)
|
|
1938
2125
|
] }),
|
|
1939
|
-
/* @__PURE__ */ (0,
|
|
1940
|
-
/* @__PURE__ */ (0,
|
|
1941
|
-
standalone && /* @__PURE__ */ (0,
|
|
2126
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
|
|
2127
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col md:flex-row", children: [
|
|
2128
|
+
standalone && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "-mt-4 mr-4 md:mt-0", "data-testid": "job-header-avatar", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1942
2129
|
Avatar,
|
|
1943
2130
|
{
|
|
1944
2131
|
size: "large",
|
|
@@ -1949,26 +2136,26 @@ function JobHeader({
|
|
|
1949
2136
|
rel: "noopener noreferrer"
|
|
1950
2137
|
}
|
|
1951
2138
|
) }),
|
|
1952
|
-
/* @__PURE__ */ (0,
|
|
2139
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg", children: subtitles?.map((subtitle, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
1953
2140
|
"div",
|
|
1954
2141
|
{
|
|
1955
2142
|
"data-testid": `job-header-subtitle-${i}`,
|
|
1956
2143
|
className: "flex items-center",
|
|
1957
2144
|
children: [
|
|
1958
2145
|
subtitle,
|
|
1959
|
-
i < subtitles.length - 1 && /* @__PURE__ */ (0,
|
|
2146
|
+
i < subtitles.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_lucide_react17.Dot, { className: "mx-1 shrink-0", size: 10 })
|
|
1960
2147
|
]
|
|
1961
2148
|
},
|
|
1962
2149
|
subtitle
|
|
1963
2150
|
)) })
|
|
1964
2151
|
] }),
|
|
1965
|
-
/* @__PURE__ */ (0,
|
|
2152
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
1966
2153
|
"div",
|
|
1967
2154
|
{
|
|
1968
2155
|
"data-testid": "job-header-content",
|
|
1969
2156
|
className: "mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1",
|
|
1970
2157
|
children: [
|
|
1971
|
-
/* @__PURE__ */ (0,
|
|
2158
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1972
2159
|
"h2",
|
|
1973
2160
|
{
|
|
1974
2161
|
"data-testid": "job-header-title",
|
|
@@ -1976,7 +2163,7 @@ function JobHeader({
|
|
|
1976
2163
|
children: title
|
|
1977
2164
|
}
|
|
1978
2165
|
),
|
|
1979
|
-
!!actions && /* @__PURE__ */ (0,
|
|
2166
|
+
!!actions && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1980
2167
|
"div",
|
|
1981
2168
|
{
|
|
1982
2169
|
className: "flex w-full justify-end gap-2 md:w-auto",
|
|
@@ -1987,12 +2174,12 @@ function JobHeader({
|
|
|
1987
2174
|
]
|
|
1988
2175
|
}
|
|
1989
2176
|
),
|
|
1990
|
-
/* @__PURE__ */ (0,
|
|
2177
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1991
2178
|
"div",
|
|
1992
2179
|
{
|
|
1993
2180
|
"data-testid": "job-header-tags",
|
|
1994
2181
|
className: "flex flex-row flex-wrap items-center justify-start gap-2",
|
|
1995
|
-
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0,
|
|
2182
|
+
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
1996
2183
|
Chip_default,
|
|
1997
2184
|
{
|
|
1998
2185
|
size: "small",
|
|
@@ -2001,7 +2188,7 @@ function JobHeader({
|
|
|
2001
2188
|
"data-testid": `job-header-tag-${name}`,
|
|
2002
2189
|
children: [
|
|
2003
2190
|
renderIcon(icon),
|
|
2004
|
-
/* @__PURE__ */ (0,
|
|
2191
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { children: label })
|
|
2005
2192
|
]
|
|
2006
2193
|
},
|
|
2007
2194
|
name
|
|
@@ -2018,7 +2205,7 @@ function JobHeader({
|
|
|
2018
2205
|
var DateFns = __toESM(require("date-fns"), 1);
|
|
2019
2206
|
|
|
2020
2207
|
// src/hooks/useDisplayText.ts
|
|
2021
|
-
var
|
|
2208
|
+
var import_react14 = require("react");
|
|
2022
2209
|
|
|
2023
2210
|
// src/lib/mappings.ts
|
|
2024
2211
|
var employmentTypeDisplayText = {
|
|
@@ -2462,9 +2649,9 @@ var DisplayTextService = class {
|
|
|
2462
2649
|
|
|
2463
2650
|
// src/hooks/useDisplayText.ts
|
|
2464
2651
|
var useDisplayText = (scope, value) => {
|
|
2465
|
-
const [displayText, setDisplayText] = (0,
|
|
2466
|
-
const displayService = (0,
|
|
2467
|
-
(0,
|
|
2652
|
+
const [displayText, setDisplayText] = (0, import_react14.useState)("");
|
|
2653
|
+
const displayService = (0, import_react14.useMemo)(() => new DisplayTextService(), []);
|
|
2654
|
+
(0, import_react14.useEffect)(() => {
|
|
2468
2655
|
if (!displayService || !value) {
|
|
2469
2656
|
setDisplayText("");
|
|
2470
2657
|
return;
|
|
@@ -2603,7 +2790,7 @@ function salaryRange(salary) {
|
|
|
2603
2790
|
}
|
|
2604
2791
|
|
|
2605
2792
|
// src/components/jobPost/JobPost.tsx
|
|
2606
|
-
var
|
|
2793
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2607
2794
|
function JobPost({
|
|
2608
2795
|
job,
|
|
2609
2796
|
bannerSrc,
|
|
@@ -2647,7 +2834,7 @@ function JobPost({
|
|
|
2647
2834
|
label: formattedLocation
|
|
2648
2835
|
}
|
|
2649
2836
|
].filter((t) => !!t);
|
|
2650
|
-
return /* @__PURE__ */ (0,
|
|
2837
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
|
|
2651
2838
|
"div",
|
|
2652
2839
|
{
|
|
2653
2840
|
className: cn(
|
|
@@ -2655,7 +2842,7 @@ function JobPost({
|
|
|
2655
2842
|
!standalone && "border-1 rounded-3xl border-grey-5"
|
|
2656
2843
|
),
|
|
2657
2844
|
children: [
|
|
2658
|
-
/* @__PURE__ */ (0,
|
|
2845
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2659
2846
|
JobHeader,
|
|
2660
2847
|
{
|
|
2661
2848
|
title: job.title,
|
|
@@ -2669,16 +2856,16 @@ function JobPost({
|
|
|
2669
2856
|
tags
|
|
2670
2857
|
}
|
|
2671
2858
|
),
|
|
2672
|
-
/* @__PURE__ */ (0,
|
|
2673
|
-
/* @__PURE__ */ (0,
|
|
2674
|
-
/* @__PURE__ */ (0,
|
|
2859
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex flex-col gap-8 px-6", children: [
|
|
2860
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(JobDescription, { description: job.description }),
|
|
2861
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2675
2862
|
CompanyTake,
|
|
2676
2863
|
{
|
|
2677
2864
|
avatarSrc,
|
|
2678
2865
|
content: job.hiringOrganization?.companyNdg?.companyNdgTake
|
|
2679
2866
|
}
|
|
2680
2867
|
),
|
|
2681
|
-
/* @__PURE__ */ (0,
|
|
2868
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2682
2869
|
CompanyInformation,
|
|
2683
2870
|
{
|
|
2684
2871
|
name: job.hiringOrganization?.companyName ?? "",
|
|
@@ -2688,7 +2875,7 @@ function JobPost({
|
|
|
2688
2875
|
website: job.hiringOrganization?.companyWebsite
|
|
2689
2876
|
}
|
|
2690
2877
|
),
|
|
2691
|
-
/* @__PURE__ */ (0,
|
|
2878
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2692
2879
|
CompanyBenefits,
|
|
2693
2880
|
{
|
|
2694
2881
|
benefits: job.hiringOrganization?.companyCareers?.companyBenefits?.map((b) => b.title).filter((d) => d !== void 0)
|
|
@@ -2924,6 +3111,7 @@ var jobPostSchema = import_zod3.z.object({
|
|
|
2924
3111
|
CompanyService,
|
|
2925
3112
|
CompanyTake,
|
|
2926
3113
|
Counter,
|
|
3114
|
+
DatePicker,
|
|
2927
3115
|
Icon,
|
|
2928
3116
|
Input,
|
|
2929
3117
|
InputOtp,
|