@next-degree/pickle-shared-js 0.9.7 → 0.10.8
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_sanity-BR1XSAj3.d.ts → company_service_sanity-BZtdt7Df.d.ts} +1996 -1996
- package/dist/{company_service_sanity-D9tvlc53.d.cts → company_service_sanity-Bedw6Mhk.d.cts} +1996 -1996
- package/dist/components/jobPost/JobPost.cjs +355 -11
- 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 +360 -11
- package/dist/components/jobPost/JobPost.js.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/buttonShadcn.d.cts +1 -1
- package/dist/components/ui/buttonShadcn.d.ts +1 -1
- package/dist/{displayText-BIzvCN9H.d.cts → displayText-4cJ7-3Mw.d.cts} +1 -1
- package/dist/{displayText-BtujjCCA.d.ts → displayText-CBIWVZVw.d.ts} +1 -1
- package/dist/hooks/useDisplayText.d.cts +2 -2
- package/dist/hooks/useDisplayText.d.ts +2 -2
- package/dist/index.cjs +675 -220
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +674 -220
- package/dist/index.js.map +1 -1
- package/dist/{job_posting_service_sanity-J281ln61.d.cts → job_posting_service_sanity-Kcoloigd.d.cts} +1897 -1897
- package/dist/{job_posting_service_sanity-DwNhHT1w.d.ts → job_posting_service_sanity-fAGLW3rj.d.ts} +1897 -1897
- package/dist/lib/locations.d.cts +1 -1
- package/dist/lib/locations.d.ts +1 -1
- package/dist/lib/mappings.d.cts +2 -2
- package/dist/lib/mappings.d.ts +2 -2
- package/dist/lib/salaryRange.cjs +355 -11
- package/dist/lib/salaryRange.cjs.map +1 -1
- package/dist/lib/salaryRange.d.cts +2 -1
- package/dist/lib/salaryRange.d.ts +2 -1
- package/dist/lib/salaryRange.js +361 -11
- package/dist/lib/salaryRange.js.map +1 -1
- package/dist/services/displayText.d.cts +2 -2
- package/dist/services/displayText.d.ts +2 -2
- 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/index.d.cts +5 -5
- package/dist/types/index.d.ts +5 -5
- package/dist/types/latest/company_service_latest.d.cts +1 -1
- package/dist/types/latest/company_service_latest.d.ts +1 -1
- package/dist/types/latest/custom/company_service_sanity.d.cts +3 -3
- package/dist/types/latest/custom/company_service_sanity.d.ts +3 -3
- package/dist/types/latest/custom/custom_sanity_models.d.cts +2 -2
- package/dist/types/latest/custom/custom_sanity_models.d.ts +2 -2
- package/dist/types/latest/custom/job_posting_service_sanity.d.cts +3 -3
- package/dist/types/latest/custom/job_posting_service_sanity.d.ts +3 -3
- package/dist/types/latest/job_posting_service_latest.d.cts +1 -1
- package/dist/types/latest/job_posting_service_latest.d.ts +1 -1
- package/dist/types/latest/shared_pickle_output_latest.d.cts +1 -1
- package/dist/types/latest/shared_pickle_output_latest.d.ts +1 -1
- package/package.json +1 -1
- package/dist/{company_service_latest-CWBnweTJ.d.cts → company_service_latest-BmiEQ4dO.d.cts} +1060 -1060
- package/dist/{company_service_latest-CWBnweTJ.d.ts → company_service_latest-BmiEQ4dO.d.ts} +1060 -1060
- package/dist/{job_posting_service_latest-duSSyFvo.d.cts → job_posting_service_latest-DOGQ9tEu.d.cts} +1 -1
- package/dist/{job_posting_service_latest-duSSyFvo.d.ts → job_posting_service_latest-DOGQ9tEu.d.ts} +1 -1
- package/dist/{job_posting_service_latest-DSpkRuDi.d.ts → job_posting_service_latest-DdsTbMSJ.d.cts} +1030 -1030
- package/dist/{job_posting_service_latest-DSpkRuDi.d.cts → job_posting_service_latest-DdsTbMSJ.d.ts} +1030 -1030
- package/dist/{shared_pickle_output_latest-CJb9E6oz.d.cts → shared_pickle_output_latest--XZhOUyE.d.cts} +38 -38
- package/dist/{shared_pickle_output_latest-CJb9E6oz.d.ts → shared_pickle_output_latest--XZhOUyE.d.ts} +38 -38
package/dist/index.js
CHANGED
|
@@ -1958,18 +1958,62 @@ var datePickerStyle = cva10([
|
|
|
1958
1958
|
"font-normal"
|
|
1959
1959
|
]);
|
|
1960
1960
|
|
|
1961
|
-
// src/components/
|
|
1961
|
+
// src/components/ui/StepTabs.tsx
|
|
1962
|
+
import * as Tabs from "@radix-ui/react-tabs";
|
|
1962
1963
|
import { jsx as jsx32, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
1964
|
+
function StepTabs({
|
|
1965
|
+
list,
|
|
1966
|
+
currentStep,
|
|
1967
|
+
setCurrentStep,
|
|
1968
|
+
children,
|
|
1969
|
+
className,
|
|
1970
|
+
defaultValue,
|
|
1971
|
+
...props
|
|
1972
|
+
}) {
|
|
1973
|
+
return /* @__PURE__ */ jsxs19(
|
|
1974
|
+
Tabs.Root,
|
|
1975
|
+
{
|
|
1976
|
+
value: currentStep,
|
|
1977
|
+
onValueChange: setCurrentStep,
|
|
1978
|
+
defaultValue: defaultValue ?? "0",
|
|
1979
|
+
className: cn("flex flex-col rounded-lg border shadow-sm", className),
|
|
1980
|
+
...props,
|
|
1981
|
+
children: [
|
|
1982
|
+
/* @__PURE__ */ jsx32(Tabs.List, { className: "flex shrink-0 border-b border-grey-20", children: children.length > 1 && list.map((item, index) => /* @__PURE__ */ jsx32(
|
|
1983
|
+
Tabs.Trigger,
|
|
1984
|
+
{
|
|
1985
|
+
className: "flex h-[45px] flex-1 cursor-default select-none items-center justify-center bg-white px-5 text-[15px] leading-none text-gray-800 outline-none first:rounded-tl-md last:rounded-tr-md hover:text-purple-100 data-[state=active]:text-purple-100 data-[state=active]:shadow-[inset_0_-1px_0_0,0_1px_0_0] data-[state=active]:shadow-current data-[state=active]:focus:relative data-[state=active]:focus:shadow-[0_0_0_2px] data-[state=active]:focus:shadow-black",
|
|
1986
|
+
value: index.toString(),
|
|
1987
|
+
children: item
|
|
1988
|
+
},
|
|
1989
|
+
`${item}-${index}`
|
|
1990
|
+
)) }),
|
|
1991
|
+
children.map((child, index) => /* @__PURE__ */ jsx32(
|
|
1992
|
+
Tabs.Content,
|
|
1993
|
+
{
|
|
1994
|
+
className: "grow rounded-b-md bg-white p-5 outline-none",
|
|
1995
|
+
value: index.toString(),
|
|
1996
|
+
children: child
|
|
1997
|
+
},
|
|
1998
|
+
index
|
|
1999
|
+
))
|
|
2000
|
+
]
|
|
2001
|
+
}
|
|
2002
|
+
);
|
|
2003
|
+
}
|
|
2004
|
+
|
|
2005
|
+
// src/components/company/CompanyBenefits.tsx
|
|
2006
|
+
import { jsx as jsx33, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
1963
2007
|
function CompanyBenefits({ benefits }) {
|
|
1964
2008
|
if (!benefits) return null;
|
|
1965
|
-
return /* @__PURE__ */
|
|
1966
|
-
/* @__PURE__ */
|
|
1967
|
-
/* @__PURE__ */
|
|
2009
|
+
return /* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-2", "data-testid": "company-benefits", children: [
|
|
2010
|
+
/* @__PURE__ */ jsx33("h2", { className: "break-word max-w-full text-xl font-bold text-black sm:max-w-2xl md:max-w-lg", children: "Company benefits" }),
|
|
2011
|
+
/* @__PURE__ */ jsx33("ul", { className: "flex flex-col gap-3", children: benefits.map((benefit, i) => /* @__PURE__ */ jsx33("li", { className: "text-base text-grey-80", children: benefit }, `${benefit}-${i}`)) })
|
|
1968
2012
|
] });
|
|
1969
2013
|
}
|
|
1970
2014
|
|
|
1971
2015
|
// src/components/company/CompanyInformation.tsx
|
|
1972
|
-
import { jsx as
|
|
2016
|
+
import { jsx as jsx34, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
1973
2017
|
function CompanyInformation({
|
|
1974
2018
|
name,
|
|
1975
2019
|
how,
|
|
@@ -1977,8 +2021,8 @@ function CompanyInformation({
|
|
|
1977
2021
|
wow,
|
|
1978
2022
|
website
|
|
1979
2023
|
}) {
|
|
1980
|
-
return /* @__PURE__ */
|
|
1981
|
-
/* @__PURE__ */
|
|
2024
|
+
return /* @__PURE__ */ jsxs21("div", { className: "flex flex-col gap-2", children: [
|
|
2025
|
+
/* @__PURE__ */ jsxs21(
|
|
1982
2026
|
"h2",
|
|
1983
2027
|
{
|
|
1984
2028
|
"data-testid": "company-name",
|
|
@@ -1989,22 +2033,22 @@ function CompanyInformation({
|
|
|
1989
2033
|
]
|
|
1990
2034
|
}
|
|
1991
2035
|
),
|
|
1992
|
-
how && /* @__PURE__ */
|
|
1993
|
-
mission && /* @__PURE__ */
|
|
1994
|
-
/* @__PURE__ */
|
|
1995
|
-
/* @__PURE__ */
|
|
1996
|
-
/* @__PURE__ */
|
|
2036
|
+
how && /* @__PURE__ */ jsx34("p", { "data-testid": "company-information", className: "text-base text-grey-80", children: how }),
|
|
2037
|
+
mission && /* @__PURE__ */ jsxs21("div", { className: "flex gap-2", children: [
|
|
2038
|
+
/* @__PURE__ */ jsx34("span", { children: "\u{1F680}" }),
|
|
2039
|
+
/* @__PURE__ */ jsxs21("p", { className: "text-base text-grey-80", children: [
|
|
2040
|
+
/* @__PURE__ */ jsx34("span", { className: "pr-1 font-bold", children: "Mission" }),
|
|
1997
2041
|
mission
|
|
1998
2042
|
] })
|
|
1999
2043
|
] }),
|
|
2000
|
-
wow && /* @__PURE__ */
|
|
2001
|
-
/* @__PURE__ */
|
|
2002
|
-
/* @__PURE__ */
|
|
2003
|
-
/* @__PURE__ */
|
|
2044
|
+
wow && /* @__PURE__ */ jsxs21("div", { className: "flex gap-2", children: [
|
|
2045
|
+
/* @__PURE__ */ jsx34("span", { children: "\u{1F31F}" }),
|
|
2046
|
+
/* @__PURE__ */ jsxs21("p", { className: "text-base text-grey-80", children: [
|
|
2047
|
+
/* @__PURE__ */ jsx34("span", { className: "pr-1 font-bold", children: "Wow Factor" }),
|
|
2004
2048
|
wow
|
|
2005
2049
|
] })
|
|
2006
2050
|
] }),
|
|
2007
|
-
website && /* @__PURE__ */
|
|
2051
|
+
website && /* @__PURE__ */ jsx34("div", { className: "pt-2", children: /* @__PURE__ */ jsx34(
|
|
2008
2052
|
LinkButton,
|
|
2009
2053
|
{
|
|
2010
2054
|
"data-testid": "company-website-link",
|
|
@@ -2018,22 +2062,22 @@ function CompanyInformation({
|
|
|
2018
2062
|
}
|
|
2019
2063
|
|
|
2020
2064
|
// src/components/company/CompanyTake.tsx
|
|
2021
|
-
import { jsx as
|
|
2065
|
+
import { jsx as jsx35, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
2022
2066
|
function CompanyTake({ content, avatarSrc }) {
|
|
2023
2067
|
if (!content) return null;
|
|
2024
|
-
return /* @__PURE__ */
|
|
2068
|
+
return /* @__PURE__ */ jsxs22(
|
|
2025
2069
|
"div",
|
|
2026
2070
|
{
|
|
2027
2071
|
"data-testid": "company-take",
|
|
2028
2072
|
className: "align-center w-full justify-start rounded-2xl bg-green-90 p-6",
|
|
2029
2073
|
children: [
|
|
2030
|
-
/* @__PURE__ */
|
|
2031
|
-
/* @__PURE__ */
|
|
2032
|
-
/* @__PURE__ */
|
|
2033
|
-
/* @__PURE__ */
|
|
2034
|
-
/* @__PURE__ */
|
|
2035
|
-
/* @__PURE__ */
|
|
2036
|
-
/* @__PURE__ */
|
|
2074
|
+
/* @__PURE__ */ jsx35("p", { className: "text-lg font-bold text-white sm:text-xl", children: "The Real Dill \u2618\uFE0F" }),
|
|
2075
|
+
/* @__PURE__ */ jsx35("div", { className: "mt-2 flex items-center justify-start", children: /* @__PURE__ */ jsx35("p", { className: "text-sm font-normal text-grey-10", children: content }) }),
|
|
2076
|
+
/* @__PURE__ */ jsxs22("div", { className: "mt-8 flex w-full items-center gap-3", children: [
|
|
2077
|
+
/* @__PURE__ */ jsx35(Avatar, { name: "Jon Lee", src: avatarSrc }),
|
|
2078
|
+
/* @__PURE__ */ jsxs22("div", { className: "flex flex-col flex-wrap items-start", children: [
|
|
2079
|
+
/* @__PURE__ */ jsx35("p", { className: "text-sm font-bold text-white", children: "Jon Lee, PT, DPT, OCS, FAAOMPT, MBA" }),
|
|
2080
|
+
/* @__PURE__ */ jsx35("p", { className: "text-xs font-normal text-grey-30", children: "Pickle co-founder" })
|
|
2037
2081
|
] })
|
|
2038
2082
|
] })
|
|
2039
2083
|
]
|
|
@@ -2042,12 +2086,12 @@ function CompanyTake({ content, avatarSrc }) {
|
|
|
2042
2086
|
}
|
|
2043
2087
|
|
|
2044
2088
|
// src/components/jobPost/JobDescription.tsx
|
|
2045
|
-
import { jsx as
|
|
2089
|
+
import { jsx as jsx36, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
2046
2090
|
function JobDescription({ description }) {
|
|
2047
2091
|
if (!description) return null;
|
|
2048
|
-
return /* @__PURE__ */
|
|
2049
|
-
/* @__PURE__ */
|
|
2050
|
-
/* @__PURE__ */
|
|
2092
|
+
return /* @__PURE__ */ jsxs23("div", { className: "flex w-full flex-col gap-2", children: [
|
|
2093
|
+
/* @__PURE__ */ jsx36("h3", { className: "text-xl font-bold", children: "Job Description" }),
|
|
2094
|
+
/* @__PURE__ */ jsx36(ReadMore, { text: description })
|
|
2051
2095
|
] });
|
|
2052
2096
|
}
|
|
2053
2097
|
|
|
@@ -2065,7 +2109,7 @@ import { useContext as useContext2 } from "react";
|
|
|
2065
2109
|
// src/contexts/WindowHistoryProvider.tsx
|
|
2066
2110
|
import { useSearchParams } from "next/navigation";
|
|
2067
2111
|
import { createContext, useEffect as useEffect7, useMemo, useState as useState7 } from "react";
|
|
2068
|
-
import { jsx as
|
|
2112
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
2069
2113
|
var WindowHistoryContext = createContext({});
|
|
2070
2114
|
function WindowHistoryProvider({ children }) {
|
|
2071
2115
|
const [history, setHistory] = useState7([]);
|
|
@@ -2076,7 +2120,7 @@ function WindowHistoryProvider({ children }) {
|
|
|
2076
2120
|
);
|
|
2077
2121
|
}, [searchParams]);
|
|
2078
2122
|
const contextValue = useMemo(() => ({ history }), [history]);
|
|
2079
|
-
return /* @__PURE__ */
|
|
2123
|
+
return /* @__PURE__ */ jsx37(WindowHistoryContext.Provider, { value: contextValue, children });
|
|
2080
2124
|
}
|
|
2081
2125
|
|
|
2082
2126
|
// src/hooks/useWindowHistory.ts
|
|
@@ -2086,7 +2130,7 @@ function useWindowHistory() {
|
|
|
2086
2130
|
}
|
|
2087
2131
|
|
|
2088
2132
|
// src/components/buttons/BackButton.tsx
|
|
2089
|
-
import { jsx as
|
|
2133
|
+
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
2090
2134
|
function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
2091
2135
|
const { history } = useWindowHistory();
|
|
2092
2136
|
const router = useRouter();
|
|
@@ -2099,7 +2143,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
2099
2143
|
router.push(fallbackHref ?? "/");
|
|
2100
2144
|
}
|
|
2101
2145
|
};
|
|
2102
|
-
return /* @__PURE__ */
|
|
2146
|
+
return /* @__PURE__ */ jsx38(
|
|
2103
2147
|
Icon,
|
|
2104
2148
|
{
|
|
2105
2149
|
"aria-label": "back button",
|
|
@@ -2108,7 +2152,7 @@ function BackButton({ acceptedRoutes, fallbackHref, className, ...props }) {
|
|
|
2108
2152
|
onClick: goBack,
|
|
2109
2153
|
className,
|
|
2110
2154
|
...props,
|
|
2111
|
-
children: /* @__PURE__ */
|
|
2155
|
+
children: /* @__PURE__ */ jsx38(X4, {})
|
|
2112
2156
|
}
|
|
2113
2157
|
);
|
|
2114
2158
|
}
|
|
@@ -2160,7 +2204,7 @@ var iconMap = {
|
|
|
2160
2204
|
};
|
|
2161
2205
|
|
|
2162
2206
|
// src/components/jobPost/JobHeader.tsx
|
|
2163
|
-
import { jsx as
|
|
2207
|
+
import { jsx as jsx39, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
2164
2208
|
function JobHeader({
|
|
2165
2209
|
title,
|
|
2166
2210
|
subtitles,
|
|
@@ -2176,9 +2220,9 @@ function JobHeader({
|
|
|
2176
2220
|
}) {
|
|
2177
2221
|
const renderIcon = (icon) => {
|
|
2178
2222
|
const Icon2 = iconMap[icon];
|
|
2179
|
-
return /* @__PURE__ */
|
|
2223
|
+
return /* @__PURE__ */ jsx39(Icon2, { size: 18 });
|
|
2180
2224
|
};
|
|
2181
|
-
return /* @__PURE__ */
|
|
2225
|
+
return /* @__PURE__ */ jsxs24(
|
|
2182
2226
|
"div",
|
|
2183
2227
|
{
|
|
2184
2228
|
"data-testid": "job-header-root",
|
|
@@ -2187,8 +2231,8 @@ function JobHeader({
|
|
|
2187
2231
|
!standalone && "rounded-3xl"
|
|
2188
2232
|
),
|
|
2189
2233
|
children: [
|
|
2190
|
-
!standalone && /* @__PURE__ */
|
|
2191
|
-
/* @__PURE__ */
|
|
2234
|
+
!standalone && /* @__PURE__ */ jsxs24("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: [
|
|
2235
|
+
/* @__PURE__ */ jsx39(
|
|
2192
2236
|
Image2,
|
|
2193
2237
|
{
|
|
2194
2238
|
className: "h-full w-full rounded-t-3xl object-cover",
|
|
@@ -2197,7 +2241,7 @@ function JobHeader({
|
|
|
2197
2241
|
fill: true
|
|
2198
2242
|
}
|
|
2199
2243
|
),
|
|
2200
|
-
/* @__PURE__ */
|
|
2244
|
+
/* @__PURE__ */ jsx39(
|
|
2201
2245
|
BackButton,
|
|
2202
2246
|
{
|
|
2203
2247
|
acceptedRoutes: backAcceptedRoutes,
|
|
@@ -2206,12 +2250,12 @@ function JobHeader({
|
|
|
2206
2250
|
"data-testid": "job-header-back-button"
|
|
2207
2251
|
}
|
|
2208
2252
|
),
|
|
2209
|
-
/* @__PURE__ */
|
|
2253
|
+
/* @__PURE__ */ jsx39(
|
|
2210
2254
|
"div",
|
|
2211
2255
|
{
|
|
2212
2256
|
className: "absolute left-4 top-8 md:left-6 md:top-16 lg:top-24",
|
|
2213
2257
|
"data-testid": "job-header-avatar",
|
|
2214
|
-
children: /* @__PURE__ */
|
|
2258
|
+
children: /* @__PURE__ */ jsx39(
|
|
2215
2259
|
Avatar,
|
|
2216
2260
|
{
|
|
2217
2261
|
size: "large",
|
|
@@ -2225,9 +2269,9 @@ function JobHeader({
|
|
|
2225
2269
|
}
|
|
2226
2270
|
)
|
|
2227
2271
|
] }),
|
|
2228
|
-
/* @__PURE__ */
|
|
2229
|
-
/* @__PURE__ */
|
|
2230
|
-
standalone && /* @__PURE__ */
|
|
2272
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex w-full flex-col items-start justify-start gap-4 px-6", children: [
|
|
2273
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex flex-col md:flex-row", children: [
|
|
2274
|
+
standalone && /* @__PURE__ */ jsx39("div", { className: "-mt-4 mr-4 md:mt-0", "data-testid": "job-header-avatar", children: /* @__PURE__ */ jsx39(
|
|
2231
2275
|
Avatar,
|
|
2232
2276
|
{
|
|
2233
2277
|
size: "large",
|
|
@@ -2238,26 +2282,26 @@ function JobHeader({
|
|
|
2238
2282
|
rel: "noopener noreferrer"
|
|
2239
2283
|
}
|
|
2240
2284
|
) }),
|
|
2241
|
-
/* @__PURE__ */
|
|
2285
|
+
/* @__PURE__ */ jsx39("div", { className: "prose mt-4 flex w-full items-center text-grey-80 lg:prose-lg", children: subtitles?.map((subtitle, i) => /* @__PURE__ */ jsxs24(
|
|
2242
2286
|
"div",
|
|
2243
2287
|
{
|
|
2244
2288
|
"data-testid": `job-header-subtitle-${i}`,
|
|
2245
2289
|
className: "flex items-center",
|
|
2246
2290
|
children: [
|
|
2247
2291
|
subtitle,
|
|
2248
|
-
i < subtitles.length - 1 && /* @__PURE__ */
|
|
2292
|
+
i < subtitles.length - 1 && /* @__PURE__ */ jsx39(Dot2, { className: "mx-1 shrink-0", size: 10 })
|
|
2249
2293
|
]
|
|
2250
2294
|
},
|
|
2251
2295
|
subtitle
|
|
2252
2296
|
)) })
|
|
2253
2297
|
] }),
|
|
2254
|
-
/* @__PURE__ */
|
|
2298
|
+
/* @__PURE__ */ jsxs24(
|
|
2255
2299
|
"div",
|
|
2256
2300
|
{
|
|
2257
2301
|
"data-testid": "job-header-content",
|
|
2258
2302
|
className: "mt-2 flex w-full flex-row flex-wrap items-center justify-between gap-1",
|
|
2259
2303
|
children: [
|
|
2260
|
-
/* @__PURE__ */
|
|
2304
|
+
/* @__PURE__ */ jsx39(
|
|
2261
2305
|
"h2",
|
|
2262
2306
|
{
|
|
2263
2307
|
"data-testid": "job-header-title",
|
|
@@ -2265,7 +2309,7 @@ function JobHeader({
|
|
|
2265
2309
|
children: title
|
|
2266
2310
|
}
|
|
2267
2311
|
),
|
|
2268
|
-
!!actions && /* @__PURE__ */
|
|
2312
|
+
!!actions && /* @__PURE__ */ jsx39(
|
|
2269
2313
|
"div",
|
|
2270
2314
|
{
|
|
2271
2315
|
className: "flex w-full justify-end gap-2 md:w-auto",
|
|
@@ -2276,12 +2320,12 @@ function JobHeader({
|
|
|
2276
2320
|
]
|
|
2277
2321
|
}
|
|
2278
2322
|
),
|
|
2279
|
-
/* @__PURE__ */
|
|
2323
|
+
/* @__PURE__ */ jsx39(
|
|
2280
2324
|
"div",
|
|
2281
2325
|
{
|
|
2282
2326
|
"data-testid": "job-header-tags",
|
|
2283
2327
|
className: "flex flex-row flex-wrap items-center justify-start gap-2",
|
|
2284
|
-
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */
|
|
2328
|
+
children: tags?.map(({ name, label, icon }) => /* @__PURE__ */ jsxs24(
|
|
2285
2329
|
Chip_default,
|
|
2286
2330
|
{
|
|
2287
2331
|
size: "small",
|
|
@@ -2290,7 +2334,7 @@ function JobHeader({
|
|
|
2290
2334
|
"data-testid": `job-header-tag-${name}`,
|
|
2291
2335
|
children: [
|
|
2292
2336
|
renderIcon(icon),
|
|
2293
|
-
/* @__PURE__ */
|
|
2337
|
+
/* @__PURE__ */ jsx39("span", { children: label })
|
|
2294
2338
|
]
|
|
2295
2339
|
},
|
|
2296
2340
|
name
|
|
@@ -2795,7 +2839,10 @@ function formattedJobLocation(job) {
|
|
|
2795
2839
|
return [address, remote].filter(Boolean).join(" | ");
|
|
2796
2840
|
}
|
|
2797
2841
|
|
|
2798
|
-
// src/types/
|
|
2842
|
+
// src/types/latest/company_service_latest.ts
|
|
2843
|
+
import { z as z2 } from "zod";
|
|
2844
|
+
|
|
2845
|
+
// src/types/latest/shared_pickle_output_latest.ts
|
|
2799
2846
|
var shared_pickle_output_latest_exports = {};
|
|
2800
2847
|
__export(shared_pickle_output_latest_exports, {
|
|
2801
2848
|
CurrencyEnum: () => CurrencyEnum,
|
|
@@ -2871,150 +2918,7 @@ var imageSchema = z.object({
|
|
|
2871
2918
|
asset: z.optional(imageAssetSchema).describe("The asset for the image")
|
|
2872
2919
|
});
|
|
2873
2920
|
|
|
2874
|
-
// src/
|
|
2875
|
-
function salaryRange(salary) {
|
|
2876
|
-
if (!salary) return null;
|
|
2877
|
-
const min = salary.minValue;
|
|
2878
|
-
const max = salary.maxValue;
|
|
2879
|
-
const single = salary.singleValue;
|
|
2880
|
-
const signs = {
|
|
2881
|
-
[CurrencyEnum.Values.USD]: "$",
|
|
2882
|
-
[CurrencyEnum.Values.GBP]: "\xA3",
|
|
2883
|
-
[CurrencyEnum.Values.EUR]: "\u20AC"
|
|
2884
|
-
};
|
|
2885
|
-
const sign = signs[salary.currency ?? CurrencyEnum.Values.USD];
|
|
2886
|
-
if (min == null && max == null && single == null) return null;
|
|
2887
|
-
if (single != null) return sign + single.toLocaleString();
|
|
2888
|
-
if (min === max) return sign + min?.toLocaleString();
|
|
2889
|
-
if (min != null && max != null)
|
|
2890
|
-
return sign + min?.toLocaleString() + " - " + sign + max?.toLocaleString();
|
|
2891
|
-
return null;
|
|
2892
|
-
}
|
|
2893
|
-
|
|
2894
|
-
// src/components/jobPost/JobPost.tsx
|
|
2895
|
-
import { jsx as jsx39, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
2896
|
-
function JobPost({
|
|
2897
|
-
job,
|
|
2898
|
-
bannerSrc,
|
|
2899
|
-
avatarSrc,
|
|
2900
|
-
standalone,
|
|
2901
|
-
avatarHref,
|
|
2902
|
-
fallbackHref,
|
|
2903
|
-
backAcceptedRoutes,
|
|
2904
|
-
actions
|
|
2905
|
-
}) {
|
|
2906
|
-
const formattedEmploymentType = useDisplayText("employmentType", job.employmentType);
|
|
2907
|
-
const formattedEmploymentLevel = useDisplayText("employmentLevel", job.employmentLevel);
|
|
2908
|
-
const formattedJobFunction = useDisplayText("jobFunction", job.jobFunction);
|
|
2909
|
-
const formattedLocation = formattedJobLocation(job);
|
|
2910
|
-
const formattedSalary = salaryRange(job.estimatedSalary);
|
|
2911
|
-
const formattedDate = DateFns.formatDistanceToNow(new Date(job.datePosted), {
|
|
2912
|
-
addSuffix: true
|
|
2913
|
-
});
|
|
2914
|
-
const tags = [
|
|
2915
|
-
!!formattedSalary && {
|
|
2916
|
-
icon: "banknote",
|
|
2917
|
-
name: "salary",
|
|
2918
|
-
label: `${formattedSalary} a year`
|
|
2919
|
-
},
|
|
2920
|
-
!!formattedEmploymentType && {
|
|
2921
|
-
icon: "briefcase-business",
|
|
2922
|
-
name: "employmentType",
|
|
2923
|
-
label: formattedEmploymentType
|
|
2924
|
-
},
|
|
2925
|
-
!!formattedEmploymentLevel && {
|
|
2926
|
-
icon: "circle-user",
|
|
2927
|
-
name: "level",
|
|
2928
|
-
label: formattedEmploymentLevel
|
|
2929
|
-
},
|
|
2930
|
-
!!formattedJobFunction && {
|
|
2931
|
-
icon: "briefcase-business",
|
|
2932
|
-
name: "jobFunction",
|
|
2933
|
-
label: formattedJobFunction
|
|
2934
|
-
},
|
|
2935
|
-
!!formattedLocation && {
|
|
2936
|
-
icon: "map-pin",
|
|
2937
|
-
name: "location",
|
|
2938
|
-
label: formattedLocation
|
|
2939
|
-
}
|
|
2940
|
-
].filter((t) => !!t);
|
|
2941
|
-
return /* @__PURE__ */ jsxs24(
|
|
2942
|
-
"div",
|
|
2943
|
-
{
|
|
2944
|
-
className: cn(
|
|
2945
|
-
"flex flex-col gap-10 pb-4",
|
|
2946
|
-
!standalone && "border-1 rounded-3xl border-grey-5"
|
|
2947
|
-
),
|
|
2948
|
-
children: [
|
|
2949
|
-
/* @__PURE__ */ jsx39(
|
|
2950
|
-
JobHeader,
|
|
2951
|
-
{
|
|
2952
|
-
title: job.title,
|
|
2953
|
-
bannerSrc,
|
|
2954
|
-
avatarName: job.hiringOrganization?.companyName,
|
|
2955
|
-
avatarSrc: job.hiringOrganization?.logo?.asset?.url,
|
|
2956
|
-
subtitles: [job.hiringOrganization?.companyName ?? "", `Posted ${formattedDate}`],
|
|
2957
|
-
actions,
|
|
2958
|
-
standalone,
|
|
2959
|
-
avatarHref,
|
|
2960
|
-
backFallbackHref: fallbackHref,
|
|
2961
|
-
backAcceptedRoutes,
|
|
2962
|
-
tags
|
|
2963
|
-
}
|
|
2964
|
-
),
|
|
2965
|
-
/* @__PURE__ */ jsxs24("div", { className: "flex flex-col gap-8 px-6", children: [
|
|
2966
|
-
/* @__PURE__ */ jsx39(JobDescription, { description: job.description }),
|
|
2967
|
-
/* @__PURE__ */ jsx39(
|
|
2968
|
-
CompanyTake,
|
|
2969
|
-
{
|
|
2970
|
-
avatarSrc,
|
|
2971
|
-
content: job.hiringOrganization?.companyNDG?.companyNDGTake
|
|
2972
|
-
}
|
|
2973
|
-
),
|
|
2974
|
-
/* @__PURE__ */ jsx39(
|
|
2975
|
-
CompanyInformation,
|
|
2976
|
-
{
|
|
2977
|
-
name: job.hiringOrganization?.companyName ?? "",
|
|
2978
|
-
how: job.hiringOrganization?.companyPhilosophy?.companyHow,
|
|
2979
|
-
mission: job.hiringOrganization?.companyPhilosophy?.companyMission,
|
|
2980
|
-
wow: job.hiringOrganization?.companyNDG?.companyWow,
|
|
2981
|
-
website: job.hiringOrganization?.companyWebsite
|
|
2982
|
-
}
|
|
2983
|
-
),
|
|
2984
|
-
/* @__PURE__ */ jsx39(
|
|
2985
|
-
CompanyBenefits,
|
|
2986
|
-
{
|
|
2987
|
-
benefits: job.hiringOrganization?.companyCareers?.companyBenefits?.map((b) => b.title).filter((d) => d !== void 0)
|
|
2988
|
-
}
|
|
2989
|
-
)
|
|
2990
|
-
] })
|
|
2991
|
-
]
|
|
2992
|
-
}
|
|
2993
|
-
);
|
|
2994
|
-
}
|
|
2995
|
-
|
|
2996
|
-
// src/types/data/company_service_latest.ts
|
|
2997
|
-
var company_service_latest_exports = {};
|
|
2998
|
-
__export(company_service_latest_exports, {
|
|
2999
|
-
CategoryEnum: () => CategoryEnum,
|
|
3000
|
-
OfficeTypeEnum: () => OfficeTypeEnum,
|
|
3001
|
-
PublishStatusEnum: () => PublishStatusEnum,
|
|
3002
|
-
TitleEnum: () => TitleEnum,
|
|
3003
|
-
TypeEnum: () => TypeEnum2,
|
|
3004
|
-
companyBenefitsSchema: () => companyBenefitsSchema,
|
|
3005
|
-
companyCareersSchema: () => companyCareersSchema,
|
|
3006
|
-
companyNdgSchema: () => companyNdgSchema,
|
|
3007
|
-
companyPhilosophySchema: () => companyPhilosophySchema,
|
|
3008
|
-
companySchema: () => companySchema,
|
|
3009
|
-
foundingInformationSchema: () => foundingInformationSchema,
|
|
3010
|
-
industrySchema: () => industrySchema,
|
|
3011
|
-
jobBoardSchema: () => jobBoardSchema,
|
|
3012
|
-
ngdMetadataSchema: () => ngdMetadataSchema,
|
|
3013
|
-
officeSchema: () => officeSchema,
|
|
3014
|
-
personSchema: () => personSchema,
|
|
3015
|
-
socialMediaSchema: () => socialMediaSchema
|
|
3016
|
-
});
|
|
3017
|
-
import { z as z2 } from "zod";
|
|
2921
|
+
// src/types/latest/company_service_latest.ts
|
|
3018
2922
|
var TypeEnum2 = z2.enum(["OFFICE"]);
|
|
3019
2923
|
var CategoryEnum = z2.enum(["FINANCIAL", "HEALTH", "PROFESSIONAL_DEVELOPMENT", "WORK_LIFE_BALANCE"]);
|
|
3020
2924
|
var TitleEnum = z2.enum(["DMD", "JD", "MBA", "MD", "MHA", "MPH", "PT", "PH_D", "RN"]);
|
|
@@ -3085,7 +2989,7 @@ var companyNdgSchema = z2.object({
|
|
|
3085
2989
|
version: z2.literal("1.0.0").default("1.0.0"),
|
|
3086
2990
|
type: z2.string().describe("Document type used for schema"),
|
|
3087
2991
|
companyWow: z2.optional(z2.string()).describe("What is the wow of this company?"),
|
|
3088
|
-
|
|
2992
|
+
companyNdgTake: z2.optional(z2.string()).describe("What is the NDG POV on this company?"),
|
|
3089
2993
|
companyBestFit: z2.optional(z2.array(z2.string())),
|
|
3090
2994
|
companyInterests: z2.optional(z2.array(z2.string()))
|
|
3091
2995
|
});
|
|
@@ -3121,7 +3025,7 @@ var companySchema = z2.object({
|
|
|
3121
3025
|
brandColor: z2.optional(z2.string()).describe("The brand color of the company"),
|
|
3122
3026
|
companyCareers: z2.optional(companyCareersSchema).describe("Career Specific Information for the company."),
|
|
3123
3027
|
companyPhilosophy: z2.optional(companyPhilosophySchema).describe("Company mission,values and how the company achieves its mission."),
|
|
3124
|
-
|
|
3028
|
+
companyNdg: z2.optional(companyNdgSchema).describe("Next Degree specific information for the company."),
|
|
3125
3029
|
foundingInfo: z2.optional(foundingInformationSchema),
|
|
3126
3030
|
headquartersLocation: z2.optional(placeSchema),
|
|
3127
3031
|
employeeEstimate: z2.optional(z2.string()),
|
|
@@ -3139,22 +3043,7 @@ var officeSchema = z2.object({
|
|
|
3139
3043
|
updatedAt: z2.optional(z2.string())
|
|
3140
3044
|
});
|
|
3141
3045
|
|
|
3142
|
-
// src/types/
|
|
3143
|
-
var job_posting_service_latest_exports = {};
|
|
3144
|
-
__export(job_posting_service_latest_exports, {
|
|
3145
|
-
BestFitEnum: () => BestFitEnum,
|
|
3146
|
-
ClinicalLicenseEnum: () => ClinicalLicenseEnum,
|
|
3147
|
-
ClinicalSettingEnum: () => ClinicalSettingEnum,
|
|
3148
|
-
ClinicalSpecialtyEnum: () => ClinicalSpecialtyEnum,
|
|
3149
|
-
EmploymentLevelEnum: () => EmploymentLevelEnum,
|
|
3150
|
-
EmploymentTypeEnum: () => EmploymentTypeEnum,
|
|
3151
|
-
JobFunctionEnum: () => JobFunctionEnum,
|
|
3152
|
-
JobLocationTypeEnum: () => JobLocationTypeEnum,
|
|
3153
|
-
PublishStatusEnum: () => PublishStatusEnum2,
|
|
3154
|
-
ShiftEnum: () => ShiftEnum,
|
|
3155
|
-
TypeEnum: () => TypeEnum3,
|
|
3156
|
-
jobPostSchema: () => jobPostSchema
|
|
3157
|
-
});
|
|
3046
|
+
// src/types/latest/job_posting_service_latest.ts
|
|
3158
3047
|
import { z as z3 } from "zod";
|
|
3159
3048
|
var TypeEnum3 = z3.enum(["JOB_POST"]);
|
|
3160
3049
|
var JobLocationTypeEnum = z3.enum(["FLOAT", "HYBRID", "ONSITE", "REMOTE"]);
|
|
@@ -3203,6 +3092,570 @@ var jobPostSchema = z3.object({
|
|
|
3203
3092
|
applicantLocationRequirements: z3.optional(z3.array(placeSchema)).describe("The geographic location(s) in which employees may be located for to be eligible for the job. The job description must clearly state that the applicant may be located in certain geographical location(s). This property is required if applicants may be located in one or more geographic locations and the job is 100% remote."),
|
|
3204
3093
|
hiringOrganization: z3.optional(companySchema).describe("The organization that is hiring for the role")
|
|
3205
3094
|
});
|
|
3095
|
+
|
|
3096
|
+
// src/types/latest/custom/company_service_sanity.ts
|
|
3097
|
+
import { z as z5 } from "zod";
|
|
3098
|
+
|
|
3099
|
+
// src/types/latest/custom/custom_sanity_models.ts
|
|
3100
|
+
import { z as z4 } from "zod";
|
|
3101
|
+
var sanityReferenceSchema = z4.object({
|
|
3102
|
+
_ref: z4.string(),
|
|
3103
|
+
_type: z4.string(),
|
|
3104
|
+
_key: z4.optional(z4.string())
|
|
3105
|
+
});
|
|
3106
|
+
var sanitySlugSchema = z4.object({
|
|
3107
|
+
current: z4.string(),
|
|
3108
|
+
_type: z4.string(),
|
|
3109
|
+
_key: z4.optional(z4.string())
|
|
3110
|
+
});
|
|
3111
|
+
|
|
3112
|
+
// src/types/latest/custom/company_service_sanity.ts
|
|
3113
|
+
var foundingInformationSchema2 = foundingInformationSchema.extend({
|
|
3114
|
+
_type: z5.string().describe("Document type used within sanity").default("companyFounding"),
|
|
3115
|
+
founders: z5.optional(z5.union([z5.array(personSchema), z5.array(sanityReferenceSchema)])).nullable(),
|
|
3116
|
+
founderList: z5.optional(z5.union([z5.array(personSchema), z5.array(sanityReferenceSchema)])).nullable()
|
|
3117
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3118
|
+
...data,
|
|
3119
|
+
type: data._type,
|
|
3120
|
+
founders: data.founders || data.founderList || void 0
|
|
3121
|
+
})).transform(({ _type, founderList, ...rest }) => rest);
|
|
3122
|
+
var companyNdgSchema2 = companyNdgSchema.extend({
|
|
3123
|
+
_type: z5.string().describe("Document type used within sanity").default("companyNDG"),
|
|
3124
|
+
companyNDGTake: z5.string().nullable().describe("What is the NDG POV on this company?")
|
|
3125
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3126
|
+
...data,
|
|
3127
|
+
type: data._type,
|
|
3128
|
+
companyNdgTake: data.companyNDGTake
|
|
3129
|
+
})).transform(({ _type, companyNDGTake, ...rest }) => rest);
|
|
3130
|
+
var ngdMetadataSchema2 = ngdMetadataSchema.extend({
|
|
3131
|
+
_type: z5.string().describe("Document type used within sanity").default("ndgMetadata")
|
|
3132
|
+
}).omit({ type: true }).transform((data) => ({
|
|
3133
|
+
...data,
|
|
3134
|
+
type: data._type
|
|
3135
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3136
|
+
var companyPhilosophySchema2 = companyPhilosophySchema.extend({
|
|
3137
|
+
_type: z5.string().describe("Document type used within sanity").default("companyPhilosophy")
|
|
3138
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3139
|
+
...data,
|
|
3140
|
+
type: data._type
|
|
3141
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3142
|
+
var companyCareersSchema2 = companyCareersSchema.extend({
|
|
3143
|
+
_type: z5.string().describe("Document type used within sanity").default("companyCareers"),
|
|
3144
|
+
companyBenefits: z5.optional(z5.array(
|
|
3145
|
+
z5.union([companyBenefitsSchema, sanityReferenceSchema])
|
|
3146
|
+
)).nullable().describe("What are the specific benefits of that company. The benefit is generic."),
|
|
3147
|
+
jobBoard: z5.union([jobBoardSchema, sanityReferenceSchema]).nullable(),
|
|
3148
|
+
jobBoardSlug: z5.optional(z5.union([z5.array(z5.string()), z5.array(sanitySlugSchema)]))
|
|
3149
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3150
|
+
...data,
|
|
3151
|
+
type: data._type
|
|
3152
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3153
|
+
var companySchema2 = companySchema.extend({
|
|
3154
|
+
_id: z5.string().describe("The NDG specific id for a job posting in form of ndg-<company_slug>-<unique-job-id>. Serves as unique identifier. Cannot be changed."),
|
|
3155
|
+
_rev: z5.string().nullable().describe("Revision number"),
|
|
3156
|
+
_type: z5.string().describe("Document type used within sanity").default("company"),
|
|
3157
|
+
_createdAt: z5.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3158
|
+
_updatedAt: z5.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3159
|
+
companyCareers: companyCareersSchema2.nullable().describe("Career Specific Information for the company."),
|
|
3160
|
+
companyPhilosophy: companyPhilosophySchema2.nullable().describe("Company mission,values and how the company achieves its mission."),
|
|
3161
|
+
companyNDG: companyNdgSchema2.nullable().describe("Next Degree specific information for the company."),
|
|
3162
|
+
foundingInfo: foundingInformationSchema2.nullable(),
|
|
3163
|
+
slug: z5.union([z5.string(), sanitySlugSchema]).describe("The NDG specific slug for a company."),
|
|
3164
|
+
ndgMetadata: ngdMetadataSchema2.nullable(),
|
|
3165
|
+
logo: z5.union([imageSchema, z5.record(z5.any())]).nullable().describe("The logo of the company"),
|
|
3166
|
+
//Deprecated Models
|
|
3167
|
+
logoImageURL: z5.optional(z5.string()).describe("The logo of the company"),
|
|
3168
|
+
industryList: z5.optional(z5.array(sanityReferenceSchema)).describe("The industry of the company")
|
|
3169
|
+
}).omit({ type: true, id: true, createdAt: true, updatedAt: true }).strict().transform((data) => ({
|
|
3170
|
+
...data,
|
|
3171
|
+
type: data._type,
|
|
3172
|
+
id: data._id,
|
|
3173
|
+
createdAt: data._createdAt,
|
|
3174
|
+
updatedAt: data._updatedAt,
|
|
3175
|
+
rev: data._rev
|
|
3176
|
+
})).transform(({ _type, _id, _rev, _createdAt, _updatedAt, ...rest }) => rest);
|
|
3177
|
+
|
|
3178
|
+
// src/types/latest/custom/job_posting_service_sanity.ts
|
|
3179
|
+
import { z as z6 } from "zod";
|
|
3180
|
+
var JobPostTypeEnum = z6.enum(["jobPost"]);
|
|
3181
|
+
var MonetaryAmountTypeEnum = z6.enum(["monetaryAmount"]);
|
|
3182
|
+
var postalAddressSchema2 = postalAddressSchema.extend({
|
|
3183
|
+
_type: z6.string().describe("Document type used within sanity").default("address")
|
|
3184
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3185
|
+
...data,
|
|
3186
|
+
type: data._type
|
|
3187
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3188
|
+
var quantitativeValueSchema2 = quantitativeValueSchema.extend({
|
|
3189
|
+
_type: z6.string().describe("Document type used within sanity").default("quantitativeValue")
|
|
3190
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3191
|
+
...data,
|
|
3192
|
+
type: data._type
|
|
3193
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3194
|
+
var monetaryAmountSchema2 = monetaryAmountSchema.extend({
|
|
3195
|
+
_type: z6.string().describe("Document type used within sanity").default("monetaryAmount"),
|
|
3196
|
+
value: quantitativeValueSchema2.optional().describe("The quantitative_value for a given salary")
|
|
3197
|
+
}).omit({ type: true }).strict().transform((data) => ({
|
|
3198
|
+
...data,
|
|
3199
|
+
type: data._type
|
|
3200
|
+
})).transform(({ _type, ...rest }) => rest);
|
|
3201
|
+
var jobPostSchema2 = jobPostSchema.extend({
|
|
3202
|
+
// Override base fields with Sanity-specific fields
|
|
3203
|
+
_id: z6.string().describe("The NDG specific id for a job posting in form of ndg-<company_slug>-<unique-job-id>. Serves as unique identifier. Cannot be changed.").regex(/^ndg-.*-.*$/),
|
|
3204
|
+
_rev: z6.string().optional().describe("Revision number"),
|
|
3205
|
+
_type: z6.string().describe("Document type used within sanity").default("jobPost"),
|
|
3206
|
+
_createdAt: z6.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3207
|
+
_updatedAt: z6.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3208
|
+
// Override fields with new schemas
|
|
3209
|
+
estimatedSalary: monetaryAmountSchema2.optional().describe("Determines the estimated salary for a given job posting"),
|
|
3210
|
+
jobLocation: postalAddressSchema2.optional().describe("Determines the primary physical location where the job is to be performed. For remote roles, use applicantLocationRequirements"),
|
|
3211
|
+
// Add Sanity-specific fields
|
|
3212
|
+
ndgMetadata: z6.record(z6.any()).optional(),
|
|
3213
|
+
ndgID: z6.string().optional(),
|
|
3214
|
+
hiringOrganization: z6.optional(z6.union([sanityReferenceSchema, companySchema])),
|
|
3215
|
+
raw: z6.record(z6.any()).optional(),
|
|
3216
|
+
isLoaded: z6.boolean().default(false),
|
|
3217
|
+
isVerified: z6.boolean().default(false),
|
|
3218
|
+
needsReview: z6.boolean().default(false),
|
|
3219
|
+
schema_version: z6.string().optional(),
|
|
3220
|
+
origin: z6.string().optional(),
|
|
3221
|
+
temp: z6.record(z6.any()).optional(),
|
|
3222
|
+
applicationType: z6.string().optional(),
|
|
3223
|
+
// Override clientId to use Sanity naming convention
|
|
3224
|
+
clientID: z6.string()
|
|
3225
|
+
}).omit({ type: true, id: true, createdAt: true, updatedAt: true, clientId: true }).transform((data) => ({
|
|
3226
|
+
...data,
|
|
3227
|
+
type: data._type,
|
|
3228
|
+
id: data._id,
|
|
3229
|
+
createdAt: data._createdAt,
|
|
3230
|
+
updatedAt: data._updatedAt,
|
|
3231
|
+
rev: data._rev
|
|
3232
|
+
})).transform(({ _type, _id, _rev, _createdAt, _updatedAt, ...rest }) => rest);
|
|
3233
|
+
|
|
3234
|
+
// src/lib/salaryRange.ts
|
|
3235
|
+
var CurrencyEnum2 = shared_pickle_output_latest_exports.CurrencyEnum;
|
|
3236
|
+
function salaryRange(salary) {
|
|
3237
|
+
if (!salary) return null;
|
|
3238
|
+
let min = salary.minValue;
|
|
3239
|
+
let max = salary.maxValue;
|
|
3240
|
+
let single = salary.singleValue;
|
|
3241
|
+
let value = salary.value;
|
|
3242
|
+
let unitText = "YEAR";
|
|
3243
|
+
const signs = {
|
|
3244
|
+
[CurrencyEnum2.Values.USD]: "$",
|
|
3245
|
+
[CurrencyEnum2.Values.GBP]: "\xA3",
|
|
3246
|
+
[CurrencyEnum2.Values.EUR]: "\u20AC"
|
|
3247
|
+
};
|
|
3248
|
+
const sign = signs[salary.currency ?? CurrencyEnum2.Values.USD];
|
|
3249
|
+
if (value != null && typeof value === "object") {
|
|
3250
|
+
min = value.minValue;
|
|
3251
|
+
max = value.maxValue;
|
|
3252
|
+
single = value.value;
|
|
3253
|
+
unitText = value.unitText;
|
|
3254
|
+
}
|
|
3255
|
+
if (unitText === "YEAR") unitText = "per year";
|
|
3256
|
+
if (unitText === "MONTH") unitText = "per month";
|
|
3257
|
+
if (unitText === "WEEK") unitText = "per week";
|
|
3258
|
+
if (unitText === "DAY") unitText = "per day";
|
|
3259
|
+
if (unitText === "PER_ACTIVITY") unitText = "per activity";
|
|
3260
|
+
if (unitText === "HOUR") unitText = "per hour";
|
|
3261
|
+
if (min == null && max == null && single == null) return null;
|
|
3262
|
+
if (single != null) return sign + single.toLocaleString() + " " + unitText;
|
|
3263
|
+
if (min === max) return sign + min?.toLocaleString() + " " + unitText;
|
|
3264
|
+
if (min != null && max != null)
|
|
3265
|
+
return sign + min?.toLocaleString() + " - " + sign + max?.toLocaleString() + " " + unitText;
|
|
3266
|
+
return null;
|
|
3267
|
+
}
|
|
3268
|
+
|
|
3269
|
+
// src/components/jobPost/JobPost.tsx
|
|
3270
|
+
import { jsx as jsx40, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
3271
|
+
function JobPost({
|
|
3272
|
+
job,
|
|
3273
|
+
bannerSrc,
|
|
3274
|
+
avatarSrc,
|
|
3275
|
+
standalone,
|
|
3276
|
+
avatarHref,
|
|
3277
|
+
fallbackHref,
|
|
3278
|
+
backAcceptedRoutes,
|
|
3279
|
+
actions
|
|
3280
|
+
}) {
|
|
3281
|
+
const formattedEmploymentType = useDisplayText("employmentType", job.employmentType);
|
|
3282
|
+
const formattedEmploymentLevel = useDisplayText("employmentLevel", job.employmentLevel);
|
|
3283
|
+
const formattedJobFunction = useDisplayText("jobFunction", job.jobFunction);
|
|
3284
|
+
const formattedLocation = formattedJobLocation(job);
|
|
3285
|
+
const formattedSalary = salaryRange(job.estimatedSalary);
|
|
3286
|
+
const formattedDate = DateFns.formatDistanceToNow(new Date(job.datePosted), {
|
|
3287
|
+
addSuffix: true
|
|
3288
|
+
});
|
|
3289
|
+
const tags = [
|
|
3290
|
+
!!formattedSalary && {
|
|
3291
|
+
icon: "banknote",
|
|
3292
|
+
name: "salary",
|
|
3293
|
+
label: `${formattedSalary} a year`
|
|
3294
|
+
},
|
|
3295
|
+
!!formattedEmploymentType && {
|
|
3296
|
+
icon: "briefcase-business",
|
|
3297
|
+
name: "employmentType",
|
|
3298
|
+
label: formattedEmploymentType
|
|
3299
|
+
},
|
|
3300
|
+
!!formattedEmploymentLevel && {
|
|
3301
|
+
icon: "circle-user",
|
|
3302
|
+
name: "level",
|
|
3303
|
+
label: formattedEmploymentLevel
|
|
3304
|
+
},
|
|
3305
|
+
!!formattedJobFunction && {
|
|
3306
|
+
icon: "briefcase-business",
|
|
3307
|
+
name: "jobFunction",
|
|
3308
|
+
label: formattedJobFunction
|
|
3309
|
+
},
|
|
3310
|
+
!!formattedLocation && {
|
|
3311
|
+
icon: "map-pin",
|
|
3312
|
+
name: "location",
|
|
3313
|
+
label: formattedLocation
|
|
3314
|
+
}
|
|
3315
|
+
].filter((t) => !!t);
|
|
3316
|
+
return /* @__PURE__ */ jsxs25(
|
|
3317
|
+
"div",
|
|
3318
|
+
{
|
|
3319
|
+
className: cn(
|
|
3320
|
+
"flex flex-col gap-10 pb-4",
|
|
3321
|
+
!standalone && "border-1 rounded-3xl border-grey-5"
|
|
3322
|
+
),
|
|
3323
|
+
children: [
|
|
3324
|
+
/* @__PURE__ */ jsx40(
|
|
3325
|
+
JobHeader,
|
|
3326
|
+
{
|
|
3327
|
+
title: job.title,
|
|
3328
|
+
bannerSrc,
|
|
3329
|
+
avatarName: job.hiringOrganization?.companyName,
|
|
3330
|
+
avatarSrc: job.hiringOrganization?.logo?.asset?.url,
|
|
3331
|
+
subtitles: [job.hiringOrganization?.companyName ?? "", `Posted ${formattedDate}`],
|
|
3332
|
+
actions,
|
|
3333
|
+
standalone,
|
|
3334
|
+
avatarHref,
|
|
3335
|
+
backFallbackHref: fallbackHref,
|
|
3336
|
+
backAcceptedRoutes,
|
|
3337
|
+
tags
|
|
3338
|
+
}
|
|
3339
|
+
),
|
|
3340
|
+
/* @__PURE__ */ jsxs25("div", { className: "flex flex-col gap-8 px-6", children: [
|
|
3341
|
+
/* @__PURE__ */ jsx40(JobDescription, { description: job.description }),
|
|
3342
|
+
/* @__PURE__ */ jsx40(
|
|
3343
|
+
CompanyTake,
|
|
3344
|
+
{
|
|
3345
|
+
avatarSrc,
|
|
3346
|
+
content: job.hiringOrganization?.companyNDG?.companyNDGTake
|
|
3347
|
+
}
|
|
3348
|
+
),
|
|
3349
|
+
/* @__PURE__ */ jsx40(
|
|
3350
|
+
CompanyInformation,
|
|
3351
|
+
{
|
|
3352
|
+
name: job.hiringOrganization?.companyName ?? "",
|
|
3353
|
+
how: job.hiringOrganization?.companyPhilosophy?.companyHow,
|
|
3354
|
+
mission: job.hiringOrganization?.companyPhilosophy?.companyMission,
|
|
3355
|
+
wow: job.hiringOrganization?.companyNDG?.companyWow,
|
|
3356
|
+
website: job.hiringOrganization?.companyWebsite
|
|
3357
|
+
}
|
|
3358
|
+
),
|
|
3359
|
+
/* @__PURE__ */ jsx40(
|
|
3360
|
+
CompanyBenefits,
|
|
3361
|
+
{
|
|
3362
|
+
benefits: job.hiringOrganization?.companyCareers?.companyBenefits?.map((b) => b.title).filter((d) => d !== void 0)
|
|
3363
|
+
}
|
|
3364
|
+
)
|
|
3365
|
+
] })
|
|
3366
|
+
]
|
|
3367
|
+
}
|
|
3368
|
+
);
|
|
3369
|
+
}
|
|
3370
|
+
|
|
3371
|
+
// src/types/data/company_service_latest.ts
|
|
3372
|
+
var company_service_latest_exports2 = {};
|
|
3373
|
+
__export(company_service_latest_exports2, {
|
|
3374
|
+
CategoryEnum: () => CategoryEnum2,
|
|
3375
|
+
OfficeTypeEnum: () => OfficeTypeEnum2,
|
|
3376
|
+
PublishStatusEnum: () => PublishStatusEnum3,
|
|
3377
|
+
TitleEnum: () => TitleEnum2,
|
|
3378
|
+
TypeEnum: () => TypeEnum5,
|
|
3379
|
+
companyBenefitsSchema: () => companyBenefitsSchema2,
|
|
3380
|
+
companyCareersSchema: () => companyCareersSchema3,
|
|
3381
|
+
companyNdgSchema: () => companyNdgSchema3,
|
|
3382
|
+
companyPhilosophySchema: () => companyPhilosophySchema3,
|
|
3383
|
+
companySchema: () => companySchema3,
|
|
3384
|
+
foundingInformationSchema: () => foundingInformationSchema3,
|
|
3385
|
+
industrySchema: () => industrySchema2,
|
|
3386
|
+
jobBoardSchema: () => jobBoardSchema2,
|
|
3387
|
+
ngdMetadataSchema: () => ngdMetadataSchema3,
|
|
3388
|
+
officeSchema: () => officeSchema2,
|
|
3389
|
+
personSchema: () => personSchema2,
|
|
3390
|
+
socialMediaSchema: () => socialMediaSchema2
|
|
3391
|
+
});
|
|
3392
|
+
import { z as z8 } from "zod";
|
|
3393
|
+
|
|
3394
|
+
// src/types/data/shared_pickle_output_latest.ts
|
|
3395
|
+
var shared_pickle_output_latest_exports2 = {};
|
|
3396
|
+
__export(shared_pickle_output_latest_exports2, {
|
|
3397
|
+
CurrencyEnum: () => CurrencyEnum3,
|
|
3398
|
+
DetailLevelEnum: () => DetailLevelEnum2,
|
|
3399
|
+
TypeEnum: () => TypeEnum4,
|
|
3400
|
+
UnitTextEnum: () => UnitTextEnum2,
|
|
3401
|
+
imageAssetSchema: () => imageAssetSchema2,
|
|
3402
|
+
imageSchema: () => imageSchema2,
|
|
3403
|
+
monetaryAmountSchema: () => monetaryAmountSchema3,
|
|
3404
|
+
placeSchema: () => placeSchema2,
|
|
3405
|
+
postalAddressSchema: () => postalAddressSchema3,
|
|
3406
|
+
quantitativeValueSchema: () => quantitativeValueSchema3
|
|
3407
|
+
});
|
|
3408
|
+
import { z as z7 } from "zod";
|
|
3409
|
+
var TypeEnum4 = z7.enum(["IMAGE"]);
|
|
3410
|
+
var DetailLevelEnum2 = z7.enum(["COUNTRY", "GEO", "LOCALITY", "POSTAL_CODE", "REGION"]);
|
|
3411
|
+
var UnitTextEnum2 = z7.enum(["DAY", "HOUR", "MONTH", "PER_ACTIVITY", "WEEK", "YEAR"]);
|
|
3412
|
+
var CurrencyEnum3 = z7.enum(["EUR", "GBP", "USD"]);
|
|
3413
|
+
var postalAddressSchema3 = z7.object({
|
|
3414
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3415
|
+
type: z7.string().describe("Document type used for schema"),
|
|
3416
|
+
addressCountry: z7.string().describe("The physical country as defined in ISO 3166 Alpha-2"),
|
|
3417
|
+
addressRegion: z7.optional(z7.string()).describe("The region in which the locality is, and which is in the country."),
|
|
3418
|
+
addressLocality: z7.optional(z7.string()).describe("The locality in which the street address is, and which is in the region. In the US this would be city."),
|
|
3419
|
+
streetAddress: z7.optional(z7.string()).describe("The street name of the address within the locality."),
|
|
3420
|
+
streetNumber: z7.optional(z7.string()).describe("The house of building number within the street."),
|
|
3421
|
+
postalCode: z7.optional(z7.string()).describe("The postal code"),
|
|
3422
|
+
description: z7.optional(z7.string()).describe("A descriptive string containing the full address.")
|
|
3423
|
+
});
|
|
3424
|
+
var placeSchema2 = z7.object({
|
|
3425
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3426
|
+
detailLevel: z7.optional(DetailLevelEnum2),
|
|
3427
|
+
latitude: z7.optional(z7.number()).describe("The latitude of a location."),
|
|
3428
|
+
longitude: z7.optional(z7.number()).describe("The longitude of a location."),
|
|
3429
|
+
address: z7.optional(postalAddressSchema3).describe("The physical place of the location")
|
|
3430
|
+
});
|
|
3431
|
+
var quantitativeValueSchema3 = z7.object({
|
|
3432
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3433
|
+
type: z7.string().describe("Document type used for schema"),
|
|
3434
|
+
value: z7.optional(z7.number()).describe("The single value for some quantity e.g 5000, if a range is needed use minValue and maxValue. Typically used for a single salary."),
|
|
3435
|
+
minValue: z7.optional(z7.number()).describe("The single minium value in a range for a quantitative_value, requires a maximum value."),
|
|
3436
|
+
maxValue: z7.optional(z7.number()).describe("The maximum value in a range for a quantitative_value, requires a minimum value."),
|
|
3437
|
+
unitText: UnitTextEnum2
|
|
3438
|
+
});
|
|
3439
|
+
var monetaryAmountSchema3 = z7.object({
|
|
3440
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3441
|
+
type: z7.string().describe("Document type used for schema"),
|
|
3442
|
+
singleValue: z7.optional(z7.number()).describe("The annualized single value for some quantity e.g 5000, if a range is needed use minValue and maxValue. Deprecated - use value.value instead."),
|
|
3443
|
+
minValue: z7.optional(z7.number()).describe("The annualized single minium value in a range for a quantitative_value. Deprecated use value.minValue"),
|
|
3444
|
+
maxValue: z7.optional(z7.number()).describe("The annualized maximum value in a range for a quantitative_value. Deprecated use value.maxValue"),
|
|
3445
|
+
value: z7.optional(quantitativeValueSchema3).describe("The quantitative_value for a given salary"),
|
|
3446
|
+
currency: z7.optional(CurrencyEnum3)
|
|
3447
|
+
});
|
|
3448
|
+
var imageAssetSchema2 = z7.object({
|
|
3449
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3450
|
+
altText: z7.optional(z7.string()).describe("The alt text for the image"),
|
|
3451
|
+
assetId: z7.optional(z7.string()).describe("The asset ID for the image"),
|
|
3452
|
+
description: z7.optional(z7.string()).describe("The description for the image"),
|
|
3453
|
+
extension: z7.optional(z7.string()).describe("The extension for the image"),
|
|
3454
|
+
label: z7.optional(z7.string()).describe("The label for the image"),
|
|
3455
|
+
mimeType: z7.optional(z7.string()).describe("The mime type for the image"),
|
|
3456
|
+
originalFilename: z7.optional(z7.string()).describe("The original filename for the image"),
|
|
3457
|
+
path: z7.optional(z7.string()).describe("The path for the image"),
|
|
3458
|
+
sha1Hash: z7.optional(z7.string()).describe("The SHA1 hash for the image"),
|
|
3459
|
+
size: z7.optional(z7.number()).describe("The size for the image"),
|
|
3460
|
+
title: z7.optional(z7.string()).describe("The title for the image"),
|
|
3461
|
+
uploadId: z7.optional(z7.string()).describe("The upload ID for the image"),
|
|
3462
|
+
url: z7.optional(z7.string()).describe("The URL for the image")
|
|
3463
|
+
});
|
|
3464
|
+
var imageSchema2 = z7.object({
|
|
3465
|
+
version: z7.literal("1.0.0").default("1.0.0"),
|
|
3466
|
+
type: z7.string().describe("Document type used for schema"),
|
|
3467
|
+
asset: z7.optional(imageAssetSchema2).describe("The asset for the image")
|
|
3468
|
+
});
|
|
3469
|
+
|
|
3470
|
+
// src/types/data/company_service_latest.ts
|
|
3471
|
+
var TypeEnum5 = z8.enum(["OFFICE"]);
|
|
3472
|
+
var CategoryEnum2 = z8.enum(["FINANCIAL", "HEALTH", "PROFESSIONAL_DEVELOPMENT", "WORK_LIFE_BALANCE"]);
|
|
3473
|
+
var TitleEnum2 = z8.enum(["DMD", "JD", "MBA", "MD", "MHA", "MPH", "PT", "PH_D", "RN"]);
|
|
3474
|
+
var PublishStatusEnum3 = z8.enum(["DRAFT", "IN_REVIEW", "PUBLISHED", "REMOVED"]);
|
|
3475
|
+
var OfficeTypeEnum2 = z8.enum(["BRANCH", "HEADQUARTERS", "SATELLITE"]);
|
|
3476
|
+
var socialMediaSchema2 = z8.object({
|
|
3477
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3478
|
+
url: z8.string().describe("The link to the social media platform"),
|
|
3479
|
+
type: z8.string().describe("The type of social media link")
|
|
3480
|
+
});
|
|
3481
|
+
var companyBenefitsSchema2 = z8.object({
|
|
3482
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3483
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3484
|
+
title: z8.string(),
|
|
3485
|
+
description: z8.optional(z8.string()),
|
|
3486
|
+
category: CategoryEnum2
|
|
3487
|
+
});
|
|
3488
|
+
var industrySchema2 = z8.lazy(() => z8.object({
|
|
3489
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3490
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3491
|
+
name: z8.string(),
|
|
3492
|
+
description: z8.optional(z8.string()).describe("A brief description of the industry"),
|
|
3493
|
+
onetIndustryId: z8.optional(z8.string()).describe("ONET industry ID"),
|
|
3494
|
+
parent: z8.optional(industrySchema2)
|
|
3495
|
+
}));
|
|
3496
|
+
var jobBoardSchema2 = z8.object({
|
|
3497
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3498
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3499
|
+
name: z8.string().describe("The name of the job board"),
|
|
3500
|
+
description: z8.string().describe("A brief description of the job board"),
|
|
3501
|
+
logo: z8.optional(imageSchema2).describe("The logo of the job board"),
|
|
3502
|
+
baseUrl: z8.optional(z8.string()).describe("The base URL of the job board")
|
|
3503
|
+
});
|
|
3504
|
+
var personSchema2 = z8.object({
|
|
3505
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3506
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3507
|
+
firstName: z8.string().describe("The first name of the person"),
|
|
3508
|
+
lastName: z8.string().describe("The last name of the person"),
|
|
3509
|
+
title: z8.optional(z8.array(z8.string())).describe("The titles of the degree of the person"),
|
|
3510
|
+
slug: z8.string().describe("person slug - should be familyname-givenname-title(s)"),
|
|
3511
|
+
jobTitle: z8.optional(z8.string()).describe("The job title of the person"),
|
|
3512
|
+
isDoctor: z8.optional(z8.boolean()).describe("Is the person a doctor"),
|
|
3513
|
+
isMedical: z8.optional(z8.boolean()).describe("Are they of a medical background?"),
|
|
3514
|
+
isScientist: z8.optional(z8.boolean()).describe("Are they a scientist?"),
|
|
3515
|
+
image: z8.optional(imageSchema2).describe("The image of the person"),
|
|
3516
|
+
email: z8.optional(z8.string()).describe("The email of the person"),
|
|
3517
|
+
socialMedia: z8.optional(z8.array(socialMediaSchema2)).describe("The social media links of the person"),
|
|
3518
|
+
telephone: z8.optional(z8.string()).describe("The telephone number of the person"),
|
|
3519
|
+
url: z8.optional(z8.string()).describe("The URL of the person"),
|
|
3520
|
+
address: z8.optional(placeSchema2).describe("The address of the person")
|
|
3521
|
+
});
|
|
3522
|
+
var companyCareersSchema3 = z8.object({
|
|
3523
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3524
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3525
|
+
careersUrl: z8.string().describe("The URL of the company careers page"),
|
|
3526
|
+
jobBoard: z8.optional(jobBoardSchema2),
|
|
3527
|
+
jobBoardSlug: z8.optional(z8.array(z8.string())),
|
|
3528
|
+
companyBenefits: z8.optional(z8.array(companyBenefitsSchema2)).describe("What are the specific benefits of that company. The benefit is generic.")
|
|
3529
|
+
});
|
|
3530
|
+
var companyPhilosophySchema3 = z8.object({
|
|
3531
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3532
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3533
|
+
companyMission: z8.optional(z8.string()).describe("The mission statement of the company."),
|
|
3534
|
+
companyHow: z8.optional(z8.string()).describe("How does the company achieve its mission"),
|
|
3535
|
+
companyCulture: z8.optional(z8.array(z8.string())).describe("What are some of the culture aspects of this company?")
|
|
3536
|
+
});
|
|
3537
|
+
var companyNdgSchema3 = z8.object({
|
|
3538
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3539
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3540
|
+
companyWow: z8.optional(z8.string()).describe("What is the wow of this company?"),
|
|
3541
|
+
companyNDGTake: z8.optional(z8.string()).describe("What is the NDG POV on this company?"),
|
|
3542
|
+
companyBestFit: z8.optional(z8.array(z8.string())),
|
|
3543
|
+
companyInterests: z8.optional(z8.array(z8.string()))
|
|
3544
|
+
});
|
|
3545
|
+
var foundingInformationSchema3 = z8.object({
|
|
3546
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3547
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3548
|
+
foundedDate: z8.optional(z8.string()),
|
|
3549
|
+
foundedCountry: z8.optional(z8.string()),
|
|
3550
|
+
foundedCity: z8.optional(z8.string()),
|
|
3551
|
+
founders: z8.optional(z8.array(personSchema2))
|
|
3552
|
+
});
|
|
3553
|
+
var ngdMetadataSchema3 = z8.object({
|
|
3554
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3555
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3556
|
+
lastScraped: z8.optional(z8.string()).describe("Date the last entity was scraped, if applicable"),
|
|
3557
|
+
scraperVersion: z8.optional(z8.string()),
|
|
3558
|
+
postProcessorVersion: z8.optional(z8.string()),
|
|
3559
|
+
uniqueRunId: z8.optional(z8.string()),
|
|
3560
|
+
postProcessorUniqueRunId: z8.optional(z8.string()),
|
|
3561
|
+
isScrapeManaged: z8.optional(z8.boolean()).default(true)
|
|
3562
|
+
});
|
|
3563
|
+
var companySchema3 = z8.object({
|
|
3564
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3565
|
+
id: z8.string().describe("The NDG specific id for a company. Cannot be changed."),
|
|
3566
|
+
createdAt: z8.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3567
|
+
updatedAt: z8.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3568
|
+
companyName: z8.string().describe("The name of the company"),
|
|
3569
|
+
slug: z8.string().describe("The NDG specific slug for a company."),
|
|
3570
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3571
|
+
logo: z8.optional(imageSchema2).describe("The logo of the company"),
|
|
3572
|
+
companyWebsite: z8.optional(z8.string()).describe("The website of the company"),
|
|
3573
|
+
socialMedia: z8.optional(z8.array(socialMediaSchema2)).describe("The social media links of the company"),
|
|
3574
|
+
brandColor: z8.optional(z8.string()).describe("The brand color of the company"),
|
|
3575
|
+
companyCareers: z8.optional(companyCareersSchema3).describe("Career Specific Information for the company."),
|
|
3576
|
+
companyPhilosophy: z8.optional(companyPhilosophySchema3).describe("Company mission,values and how the company achieves its mission."),
|
|
3577
|
+
companyNDG: z8.optional(companyNdgSchema3).describe("Next Degree specific information for the company."),
|
|
3578
|
+
foundingInfo: z8.optional(foundingInformationSchema3),
|
|
3579
|
+
headquartersLocation: z8.optional(placeSchema2),
|
|
3580
|
+
employeeEstimate: z8.optional(z8.string()),
|
|
3581
|
+
publishStatus: z8.optional(z8.string()),
|
|
3582
|
+
ngdMetadata: z8.optional(ngdMetadataSchema3)
|
|
3583
|
+
});
|
|
3584
|
+
var officeSchema2 = z8.object({
|
|
3585
|
+
version: z8.literal("1.0.0").default("1.0.0"),
|
|
3586
|
+
type: z8.string().describe("Document type used for schema"),
|
|
3587
|
+
name: z8.string().describe("Name or nickname for the office (e.g., 'NYC HQ', 'West Coast Branch')"),
|
|
3588
|
+
officeType: OfficeTypeEnum2,
|
|
3589
|
+
companyId: z8.optional(companySchema3),
|
|
3590
|
+
geoLocation: z8.optional(placeSchema2).describe("Geographical location details: coordinates + postal address"),
|
|
3591
|
+
createdAt: z8.optional(z8.string()),
|
|
3592
|
+
updatedAt: z8.optional(z8.string())
|
|
3593
|
+
});
|
|
3594
|
+
|
|
3595
|
+
// src/types/data/job_posting_service_latest.ts
|
|
3596
|
+
var job_posting_service_latest_exports2 = {};
|
|
3597
|
+
__export(job_posting_service_latest_exports2, {
|
|
3598
|
+
BestFitEnum: () => BestFitEnum2,
|
|
3599
|
+
ClinicalLicenseEnum: () => ClinicalLicenseEnum2,
|
|
3600
|
+
ClinicalSettingEnum: () => ClinicalSettingEnum2,
|
|
3601
|
+
ClinicalSpecialtyEnum: () => ClinicalSpecialtyEnum2,
|
|
3602
|
+
EmploymentLevelEnum: () => EmploymentLevelEnum2,
|
|
3603
|
+
EmploymentTypeEnum: () => EmploymentTypeEnum2,
|
|
3604
|
+
JobFunctionEnum: () => JobFunctionEnum2,
|
|
3605
|
+
JobLocationTypeEnum: () => JobLocationTypeEnum2,
|
|
3606
|
+
PublishStatusEnum: () => PublishStatusEnum4,
|
|
3607
|
+
ShiftEnum: () => ShiftEnum2,
|
|
3608
|
+
TypeEnum: () => TypeEnum6,
|
|
3609
|
+
jobPostSchema: () => jobPostSchema3
|
|
3610
|
+
});
|
|
3611
|
+
import { z as z9 } from "zod";
|
|
3612
|
+
var TypeEnum6 = z9.enum(["JOB_POST"]);
|
|
3613
|
+
var JobLocationTypeEnum2 = z9.enum(["FLOAT", "HYBRID", "ONSITE", "REMOTE"]);
|
|
3614
|
+
var EmploymentTypeEnum2 = z9.enum(["CONTRACT", "FULL_TIME", "INTERNSHIP", "OTHER", "PART_TIME", "PER_DIEM", "TEMPORARY"]);
|
|
3615
|
+
var EmploymentLevelEnum2 = z9.enum(["DIRECTOR", "ENTRY_LEVEL", "EXECUTIVE", "EXPERIENCED", "INTERN", "MANAGER"]);
|
|
3616
|
+
var JobFunctionEnum2 = z9.enum(["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"]);
|
|
3617
|
+
var PublishStatusEnum4 = z9.enum(["DRAFT", "IN_REVIEW", "PUBLISHED", "REMOVED"]);
|
|
3618
|
+
var BestFitEnum2 = z9.enum(["DENTIST", "DIETICIAN", "DOULA", "MEDICAL_ASSISTANT", "MIDWIFE", "NURSE", "OCCUPATIONAL_THERAPIST", "PHARMACIST", "PHYSICAL_THERAPIST", "PHYSICIAN", "PHYSICIAN_ASSISTANT", "PSYCHOLOGIST", "RADIOLOGIST", "SOCIAL_WORKER", "SPEECH_LANGUAGE_PATHOLOGIST", "SURGEON"]);
|
|
3619
|
+
var ClinicalLicenseEnum2 = z9.enum(["CNA", "CNM", "CNS", "COTA", "CRNA", "LPN", "LVN", "NP", "OT", "PT", "PTA", "RN"]);
|
|
3620
|
+
var ShiftEnum2 = z9.enum(["DAY", "EIGHT_HOUR", "EVENING", "FLEXIBLE", "MID_SHIFT", "MONDAY_TO_FRIDAY", "NIGHT", "ON_CALL", "TEN_HOUR", "TWELVE_HOUR", "WEEKENDS"]);
|
|
3621
|
+
var ClinicalSettingEnum2 = z9.enum(["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"]);
|
|
3622
|
+
var ClinicalSpecialtyEnum2 = z9.enum(["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"]);
|
|
3623
|
+
var jobPostSchema3 = z9.object({
|
|
3624
|
+
version: z9.literal("1.0.0").default("1.0.0"),
|
|
3625
|
+
id: z9.string().describe("The NDG specific id for a job posting in form of ndg-<company_slug>-<unique-job-id>. Serves as unique identifier. Cannot be changed."),
|
|
3626
|
+
type: z9.string().describe("Document type used for schema"),
|
|
3627
|
+
createdAt: z9.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3628
|
+
updatedAt: z9.string().datetime().describe("Time document was created. Autoset by Sanity"),
|
|
3629
|
+
dateAdded: z9.optional(z9.string().datetime()).describe("The date the job was added to the platform"),
|
|
3630
|
+
datePosted: z9.optional(z9.string().datetime()).describe("The date the job was published for public viewing"),
|
|
3631
|
+
dateRemoved: z9.optional(z9.string().datetime()).describe("The date the job was removed from public viewing"),
|
|
3632
|
+
validThrough: z9.optional(z9.string().datetime()).describe("The date the job posting is valid through. After this date it will be removed from public viewing"),
|
|
3633
|
+
vacancyCount: z9.optional(z9.number().int()).describe("The number of vacancies for a given job posting"),
|
|
3634
|
+
clientId: z9.string().describe("The ID assigned by the client to a job - normally the same as the GH / Lever / Ashby ID or internal ID"),
|
|
3635
|
+
url: z9.string().describe("The URL of the job to be displayed for users to apply with. Direct job link."),
|
|
3636
|
+
title: z9.string().describe("The title of the job post"),
|
|
3637
|
+
description: z9.string().describe("The description of the job post saved as markdown. Used for rendering the job description."),
|
|
3638
|
+
richTextDescription: z9.optional(z9.string()).describe("The description of the job post saved as rich text"),
|
|
3639
|
+
isClinical: z9.boolean().default(false).describe("Denotes if a job posting is clinical in nature or not. A role is clinical if it requires direct clinical patient care."),
|
|
3640
|
+
isRemote: z9.boolean().default(false).describe("Denotes if a job posting is remote in nature. For a posting to be 'remote' it must be 100% remote (e.g hybrid roles would denote this to false)."),
|
|
3641
|
+
isVerified: z9.boolean().default(false).describe("Denotes if a job posting has been manually verified - and thus ALL fields can be considered accurate. Can be used for DS training."),
|
|
3642
|
+
isDirectApply: z9.boolean().default(false).describe("Denotes if a job posting url is direct apply. To be direct apply a user must be able to apply to the role without logging in and under 2 clicks."),
|
|
3643
|
+
jobLocationType: z9.optional(z9.array(JobLocationTypeEnum2)),
|
|
3644
|
+
employmentType: z9.optional(z9.array(EmploymentTypeEnum2)),
|
|
3645
|
+
employmentLevel: z9.optional(EmploymentLevelEnum2),
|
|
3646
|
+
jobFunction: z9.optional(JobFunctionEnum2),
|
|
3647
|
+
publishStatus: PublishStatusEnum4,
|
|
3648
|
+
bestFit: z9.optional(z9.array(BestFitEnum2)),
|
|
3649
|
+
clinicalLicense: z9.optional(z9.array(ClinicalLicenseEnum2)),
|
|
3650
|
+
shift: z9.optional(z9.array(ShiftEnum2)),
|
|
3651
|
+
clinicalSetting: z9.optional(z9.array(ClinicalSettingEnum2)),
|
|
3652
|
+
clinicalSpecialty: z9.optional(z9.array(ClinicalSpecialtyEnum2)),
|
|
3653
|
+
estimatedSalary: z9.optional(monetaryAmountSchema3).describe("Determines the estimated salary for a given job posting"),
|
|
3654
|
+
jobLocation: z9.optional(postalAddressSchema3).describe("Determines the primary physical location where the job is to be performed. For remote roles, use applicantLocationRequirements"),
|
|
3655
|
+
applicableOffices: z9.optional(z9.array(officeSchema2)).describe("The physical location(s) in which employees may be located for to be eligible for the job. Used in conjunction with job_location_type."),
|
|
3656
|
+
applicantLocationRequirements: z9.optional(z9.array(placeSchema2)).describe("The geographic location(s) in which employees may be located for to be eligible for the job. The job description must clearly state that the applicant may be located in certain geographical location(s). This property is required if applicants may be located in one or more geographic locations and the job is 100% remote."),
|
|
3657
|
+
hiringOrganization: z9.optional(companySchema3).describe("The organization that is hiring for the role")
|
|
3658
|
+
});
|
|
3206
3659
|
export {
|
|
3207
3660
|
Avatar,
|
|
3208
3661
|
BackButton,
|
|
@@ -3213,7 +3666,7 @@ export {
|
|
|
3213
3666
|
Combobox,
|
|
3214
3667
|
CompanyBenefits,
|
|
3215
3668
|
CompanyInformation,
|
|
3216
|
-
|
|
3669
|
+
company_service_latest_exports2 as CompanyService,
|
|
3217
3670
|
CompanyTake,
|
|
3218
3671
|
Counter,
|
|
3219
3672
|
DatePicker,
|
|
@@ -3223,7 +3676,7 @@ export {
|
|
|
3223
3676
|
JobDescription,
|
|
3224
3677
|
JobHeader,
|
|
3225
3678
|
JobPost,
|
|
3226
|
-
|
|
3679
|
+
job_posting_service_latest_exports2 as JobPostService,
|
|
3227
3680
|
Label_default as Label,
|
|
3228
3681
|
LinkButton,
|
|
3229
3682
|
ListItem_default as ListItem,
|
|
@@ -3232,7 +3685,8 @@ export {
|
|
|
3232
3685
|
Radio,
|
|
3233
3686
|
ReadMore,
|
|
3234
3687
|
Select_default as Select,
|
|
3235
|
-
|
|
3688
|
+
shared_pickle_output_latest_exports2 as SharedService,
|
|
3689
|
+
StepTabs,
|
|
3236
3690
|
Switch,
|
|
3237
3691
|
WindowHistoryProvider,
|
|
3238
3692
|
cn,
|