@cavuno/board 4.45.0 → 4.48.0
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/CHANGELOG.md +64 -0
- package/dist/{_spec-CdNZDaaR.d.mts → _spec-Fw9b79TI.d.mts} +54 -4
- package/dist/{_spec-CdNZDaaR.d.ts → _spec-Fw9b79TI.d.ts} +54 -4
- package/dist/bin.mjs +1 -0
- package/dist/{blog-ZvLJ6w1Q.d.ts → blog-DldIXX6n.d.ts} +1 -1
- package/dist/{blog-uV51b4Cg.d.mts → blog-Dlyky5Eo.d.mts} +1 -1
- package/dist/{board-3JU14eF3.d.ts → board-B1Ueww2w.d.ts} +2 -2
- package/dist/{board-CJw-MJpf.d.mts → board-DkwbMZdt.d.mts} +2 -2
- package/dist/{breadcrumbs-CXvdv6Ry.d.ts → breadcrumbs-Bj8SieZi.d.mts} +5 -3
- package/dist/{breadcrumbs-BY1UMCbL.d.mts → breadcrumbs-CzFiddAt.d.ts} +5 -3
- package/dist/browser/cavuno-board.global.min.js +1 -1
- package/dist/{chunk-5KCWHENV.mjs → chunk-2KD2CWFL.mjs} +1 -1
- package/dist/{chunk-XXQCESMU.mjs → chunk-JFDWTTOQ.mjs} +5 -0
- package/dist/{chunk-KDFKVWTZ.mjs → chunk-JTFUOGWE.mjs} +3 -3
- package/dist/doctor.js +1 -0
- package/dist/doctor.mjs +1 -0
- package/dist/filters.d.mts +2 -2
- package/dist/filters.d.ts +2 -2
- package/dist/format.d.mts +4 -4
- package/dist/format.d.ts +4 -4
- package/dist/format.js +3 -2
- package/dist/format.mjs +2 -2
- package/dist/go.js +1 -0
- package/dist/go.mjs +1 -1
- package/dist/index.d.mts +73 -13
- package/dist/index.d.ts +73 -13
- package/dist/index.js +57 -23
- package/dist/index.mjs +57 -23
- package/dist/{jobs-D9ERWWda.d.mts → jobs-oSTStcbC.d.mts} +1 -1
- package/dist/{jobs-C7UvN_dW.d.ts → jobs-rnatMRvm.d.ts} +1 -1
- package/dist/paths.d.mts +7 -1
- package/dist/paths.d.ts +7 -1
- package/dist/paths.js +5 -0
- package/dist/paths.mjs +3 -1
- package/dist/route-contract.js +1 -0
- package/dist/route-contract.mjs +2 -2
- package/dist/{search-D0TFnn1x.d.ts → search-CKvtGE6t.d.ts} +1 -1
- package/dist/{search-BMSNK85o.d.mts → search-uiAE7AFt.d.mts} +1 -1
- package/dist/{seo-CYmVKHsu.d.ts → seo-C2WvBFEi.d.ts} +1 -1
- package/dist/{seo-C3WmgifR.d.mts → seo-Cz0544dX.d.mts} +1 -1
- package/dist/seo-files.d.mts +2 -2
- package/dist/seo-files.d.ts +2 -2
- package/dist/seo.d.mts +6 -6
- package/dist/seo.d.ts +6 -6
- package/dist/seo.js +3 -2
- package/dist/seo.mjs +2 -2
- package/dist/server.d.mts +6 -6
- package/dist/server.d.ts +6 -6
- package/dist/sitemap.d.mts +6 -6
- package/dist/sitemap.d.ts +6 -6
- package/dist/sitemap.js +1 -0
- package/dist/sitemap.mjs +1 -1
- package/dist/suggest.d.mts +2 -2
- package/dist/suggest.d.ts +2 -2
- package/dist/well-known.js +1 -0
- package/dist/well-known.mjs +2 -2
- package/package.json +1 -1
- package/skills/cavuno-board-job-alerts/SKILL.md +29 -1
- package/skills/cavuno-board-talent-access/SKILL.md +2 -0
- package/skills/manifest.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,70 @@
|
|
|
3
3
|
This changelog records changes that affect Board API compatibility, exported
|
|
4
4
|
types, runtime behavior, or supported integration patterns.
|
|
5
5
|
|
|
6
|
+
## 4.48.0 — 2026-10-15
|
|
7
|
+
|
|
8
|
+
- Each `placeHierarchy` entry on `board.jobs.retrieve()` has a
|
|
9
|
+
`canonicalSlug`: the slug the place's location page lives at, in the
|
|
10
|
+
board's language where that language has unique place slugs, otherwise the
|
|
11
|
+
English `slug`. `slug` and `name` are unchanged. Link breadcrumbs with
|
|
12
|
+
`canonicalSlug`; both slugs work as the jobs `location` filter.
|
|
13
|
+
- `buildJobBreadcrumbs` links place crumbs, and the category crumb nested
|
|
14
|
+
under a place, by `canonicalSlug`, so they no longer redirect on a
|
|
15
|
+
translated board.
|
|
16
|
+
- New `talentLocationPath(placeSlug)` and `BOARD_PATHS.talentLocations`
|
|
17
|
+
(`/talent/locations`) in `@cavuno/board/paths`, for talent location pages.
|
|
18
|
+
Link them with a talent place's `canonicalSlug`.
|
|
19
|
+
- Job alerts: writes accept an optional `query` (search keywords, trimmed, at
|
|
20
|
+
most 200 characters). Reads add read-only `kind` (`similar_job`, `search`
|
|
21
|
+
or `filters`) and `anchorJob` (`{ id, slug, title }` or `null`), and echo
|
|
22
|
+
`filters.query`. A similar-job alert takes no keywords: setting `query` on
|
|
23
|
+
it is a 400.
|
|
24
|
+
- Talent profiles add `lastActive`: roughly when the candidate was last
|
|
25
|
+
active on the board (`today`, `this_week`, `this_month`, `last_3_months` or
|
|
26
|
+
`over_3_months`). It is returned only to a signed-in employer on the board,
|
|
27
|
+
and only for candidates who are actively looking or open to offers;
|
|
28
|
+
otherwise it is `null`. The exact time is never exposed.
|
|
29
|
+
|
|
30
|
+
## 4.47.0 — 2026-10-14
|
|
31
|
+
|
|
32
|
+
- `board.taxonomy.places.list()` and `board.talent.places.list()` return each
|
|
33
|
+
place's board-language name and URL slug as `displayName` and
|
|
34
|
+
`canonicalSlug`. `name` and `slug` stay English. On an English board, or
|
|
35
|
+
for a place not yet translated, `displayName` is `name` and `canonicalSlug`
|
|
36
|
+
is `slug`. Link to location pages with a job place's `canonicalSlug`; pass a
|
|
37
|
+
talent place's `canonicalSlug` (or `slug`) only to `board.talent.list`'s
|
|
38
|
+
`place` filter.
|
|
39
|
+
- With `q`, both lists also match the board-language name and slug, so
|
|
40
|
+
"Londres" finds London on a French board.
|
|
41
|
+
- Deleting a company takes an optional `block=true`: the company is removed
|
|
42
|
+
and stays on the blocklist, so sourcing cannot add it back until it is
|
|
43
|
+
unblocked.
|
|
44
|
+
- Job alerts: `jobFunctions` are category and skill slugs. Display names are
|
|
45
|
+
still accepted and slugified when the alert is saved, and alerts read back
|
|
46
|
+
carry slugs.
|
|
47
|
+
|
|
48
|
+
## 4.46.0 — 2026-10-14
|
|
49
|
+
|
|
50
|
+
- New `board.talent.places.list({ q, limit })`: the places a board's
|
|
51
|
+
directory candidates live in, each with `candidateCount`, the number of
|
|
52
|
+
candidates the viewer can see there. A candidate counts in their home place
|
|
53
|
+
and every place above it, so a country counts every candidate in its
|
|
54
|
+
cities. Signed-out viewers count public profiles; a signed-in board user
|
|
55
|
+
also counts profiles visible to signed-in users. Busiest first, up to
|
|
56
|
+
`limit` (1 to 500, default 100). With `q` (2 or more characters after
|
|
57
|
+
removing accents), it returns the best name and slug matches for a location
|
|
58
|
+
search field, at most 50. Pass a place's `slug` as `board.talent.list`'s
|
|
59
|
+
`place` filter. The list follows the directory's access rules.
|
|
60
|
+
- New exported types: `TalentPlace`, `TalentPlacesListEnvelope`, `TalentPlacesQuery`.
|
|
61
|
+
- Saved searches: a list has no size limit, so `talent_list_full` is no longer
|
|
62
|
+
raised. On a list linked to a job, `members.add` is how a sourced candidate
|
|
63
|
+
is shortlisted onto that job, and `members.remove` also takes them off the
|
|
64
|
+
job while they are still at Shortlisted. Linking a list shortlists everyone
|
|
65
|
+
saved to it and saves the job's sourced people to it; a job has at most one
|
|
66
|
+
list.
|
|
67
|
+
- Deprecated: `me.companies.sourcedCandidates`. Use `talentLists.members` on the
|
|
68
|
+
job's linked list; `add` and `remove` on the old namespace forward to it.
|
|
69
|
+
|
|
6
70
|
## 4.45.0 — 2026-10-13
|
|
7
71
|
|
|
8
72
|
- `robotsBody()` and `robotsResponse()` from `@cavuno/board/seo-files` take
|
|
@@ -76,7 +76,20 @@ interface components {
|
|
|
76
76
|
/** @enum {string} */
|
|
77
77
|
frequency: "weekly";
|
|
78
78
|
isActive: boolean;
|
|
79
|
+
/**
|
|
80
|
+
* @description How the digest is filled. `similar_job`: jobs similar to `anchorJob` (subscribed from a job page). `search`: a board search for `filters.query` (subscribed from a search page, or given keywords). `filters`: jobs matching the stored filters exactly. Read-only.
|
|
81
|
+
* @enum {string}
|
|
82
|
+
*/
|
|
83
|
+
kind: "similar_job" | "search" | "filters";
|
|
84
|
+
/** @description For a `similar_job` alert, the job it was subscribed from, as it was when captured (the job may since have closed). `null` for other kinds, and for an older similar-job alert whose job has not been captured yet. Read-only. */
|
|
85
|
+
anchorJob: {
|
|
86
|
+
id: string;
|
|
87
|
+
slug: string | null;
|
|
88
|
+
title: string;
|
|
89
|
+
} | null;
|
|
79
90
|
filters: {
|
|
91
|
+
/** @description The stored keywords, or null. */
|
|
92
|
+
query: string | null;
|
|
80
93
|
jobFunctions: string[];
|
|
81
94
|
seniorityLevels: string[];
|
|
82
95
|
remoteOptions: string[];
|
|
@@ -95,6 +108,8 @@ interface components {
|
|
|
95
108
|
label?: string;
|
|
96
109
|
/** @enum {string} */
|
|
97
110
|
frequency: "weekly";
|
|
111
|
+
/** @description Free-text keywords the alert replays as a board search, stored as given (trimmed, at most 200 characters). On an update, `null` or an empty string clears the keywords, and omitting `query` keeps them as long as `jobFunctions` are unchanged. A similar-job alert (subscribed from a job page) takes no keywords: setting them is a 400. */
|
|
112
|
+
query?: string | null;
|
|
98
113
|
jobFunctions?: string[];
|
|
99
114
|
seniorityLevels?: string[];
|
|
100
115
|
remoteOptions?: string[];
|
|
@@ -2685,10 +2700,14 @@ interface components {
|
|
|
2685
2700
|
slug: string;
|
|
2686
2701
|
name: string;
|
|
2687
2702
|
}[];
|
|
2688
|
-
/** @description Place ancestor chain (country → region → city) for the breadcrumb
|
|
2703
|
+
/** @description Place ancestor chain (country → region → city) for the breadcrumb. Link each entry with `canonicalSlug`; show `name`, which is in the board's language. `slug` stays the English source slug. */
|
|
2689
2704
|
placeHierarchy: {
|
|
2705
|
+
/** @description English source slug of the place. Accepted by the jobs `location` filter. */
|
|
2690
2706
|
slug: string;
|
|
2707
|
+
/** @description Place name in the board's language (the English name where the place has no translation). */
|
|
2691
2708
|
name: string;
|
|
2709
|
+
/** @description Slug the place's location page lives at: in the board's language where that language has unique place slugs, otherwise (and for a place with no translation) the English `slug`. Link breadcrumbs to `/jobs/locations/:canonicalSlug`; the location page at the English `slug` can redirect on a translated board. Also accepted by the jobs `location` filter. */
|
|
2710
|
+
canonicalSlug: string;
|
|
2692
2711
|
}[];
|
|
2693
2712
|
/** @description Opaque, display-only custom-field values, keyed by each field's `key`. Values are the option `key`(s) for select fields, or the raw boolean/number/text otherwise. Resolve labels via the board's `customFields.job` definitions (see `GET /v1/boards/:identifier`). `{}` when the board defines no custom fields. Supports exact-value custom-field filters in job search. */
|
|
2694
2713
|
customFieldValues: {
|
|
@@ -2723,7 +2742,20 @@ interface components {
|
|
|
2723
2742
|
/** @enum {string} */
|
|
2724
2743
|
frequency: "weekly";
|
|
2725
2744
|
isActive: boolean;
|
|
2745
|
+
/**
|
|
2746
|
+
* @description How the digest is filled. `similar_job`: jobs similar to `anchorJob` (subscribed from a job page). `search`: a board search for `filters.query` (subscribed from a search page, or given keywords). `filters`: jobs matching the stored filters exactly. Read-only.
|
|
2747
|
+
* @enum {string}
|
|
2748
|
+
*/
|
|
2749
|
+
kind: "similar_job" | "search" | "filters";
|
|
2750
|
+
/** @description For a `similar_job` alert, the job it was subscribed from, as it was when captured (the job may since have closed). `null` for other kinds, and for an older similar-job alert whose job has not been captured yet. Read-only. */
|
|
2751
|
+
anchorJob: {
|
|
2752
|
+
id: string;
|
|
2753
|
+
slug: string | null;
|
|
2754
|
+
title: string;
|
|
2755
|
+
} | null;
|
|
2726
2756
|
filters: {
|
|
2757
|
+
/** @description The stored keywords. */
|
|
2758
|
+
query?: string;
|
|
2727
2759
|
jobFunctions?: string[];
|
|
2728
2760
|
seniorityLevels?: string[];
|
|
2729
2761
|
remoteOptions?: string[];
|
|
@@ -2862,9 +2894,13 @@ interface components {
|
|
|
2862
2894
|
id: string;
|
|
2863
2895
|
/** @description Parent place's `id`; `null` for a root place. */
|
|
2864
2896
|
parentId: string | null;
|
|
2865
|
-
/** @description
|
|
2897
|
+
/** @description English source slug: the key for the jobs `location` filter. `null` if unslugged. Build links with `canonicalSlug`: on a translated board, the location page at the English slug can 308-redirect. */
|
|
2866
2898
|
slug: string | null;
|
|
2899
|
+
/** @description Board-language canonical URL slug where the board language has unique place slugs; otherwise, or for an untranslated place, `slug`. `null` if unslugged. Use it for links: it resolves as the jobs `location` filter, on `GET /boards/{identifier}/places/{slug}`, and as the location page slug (`/jobs/locations/:slug`). */
|
|
2900
|
+
canonicalSlug: string | null;
|
|
2867
2901
|
name: string;
|
|
2902
|
+
/** @description Board-language name with source-name fallback. */
|
|
2903
|
+
displayName: string;
|
|
2868
2904
|
placeType: string;
|
|
2869
2905
|
countryCode: string | null;
|
|
2870
2906
|
regionCode: string | null;
|
|
@@ -2947,9 +2983,13 @@ interface components {
|
|
|
2947
2983
|
id: string;
|
|
2948
2984
|
/** @description Parent place's `id`; `null` for a root place. */
|
|
2949
2985
|
parentId: string | null;
|
|
2950
|
-
/** @description English source place slug
|
|
2986
|
+
/** @description English source place slug. Pass it as the talent directory's `place` filter. `GET /boards/{identifier}/places/{slug}` resolves it, also for a place with candidates but no jobs. */
|
|
2951
2987
|
slug: string | null;
|
|
2988
|
+
/** @description Board-language place slug where the board language has unique place slugs; otherwise, or for an untranslated place, `slug`. `null` if unslugged. Link the place's talent location page with it (`/talent/locations/{canonicalSlug}`); the talent directory's `place` filter accepts it too. `GET /boards/{identifier}/places/{slug}` resolves it, also for a place with candidates but no jobs, but that resolution's `canonicalSlug` and `redirectTo` follow the job location pages and can differ from this value: a translated slug where the board language's place slugs are not unique, or a code-based slug for a country or region with jobs. Canonicalise a talent location page against this value, not `redirectTo`. */
|
|
2989
|
+
canonicalSlug: string | null;
|
|
2952
2990
|
name: string;
|
|
2991
|
+
/** @description Board-language name with source-name fallback. */
|
|
2992
|
+
displayName: string;
|
|
2953
2993
|
placeType: string;
|
|
2954
2994
|
countryCode: string | null;
|
|
2955
2995
|
regionCode: string | null;
|
|
@@ -3612,6 +3652,11 @@ interface components {
|
|
|
3612
3652
|
[key: string]: string | number | boolean | string[];
|
|
3613
3653
|
};
|
|
3614
3654
|
objectReferences: components["schemas"]["ResolvedProfileObjectReference"][];
|
|
3655
|
+
/**
|
|
3656
|
+
* @description Roughly when the candidate was last active on the board: `today` (within 24 hours), `this_week` (7 days), `this_month` (30 days), `last_3_months` (90 days) or `over_3_months`, counted back from the request. Only returned to a signed-in employer on this board, and only when the candidate’s job search status is `actively_looking` or `open_to_offers`; `null` otherwise. The exact time is never exposed.
|
|
3657
|
+
* @enum {string|null}
|
|
3658
|
+
*/
|
|
3659
|
+
lastActive: "today" | "this_week" | "this_month" | "last_3_months" | "over_3_months" | null;
|
|
3615
3660
|
};
|
|
3616
3661
|
TalentList: {
|
|
3617
3662
|
id: string;
|
|
@@ -3623,7 +3668,7 @@ interface components {
|
|
|
3623
3668
|
createdBy: string;
|
|
3624
3669
|
createdAt: number;
|
|
3625
3670
|
updatedAt: number;
|
|
3626
|
-
/** @description People saved to this list
|
|
3671
|
+
/** @description People saved to this list. Exact and immediate; a list has no size limit. Includes anyone the members list omits for the viewer (blocked, hidden or deactivated). */
|
|
3627
3672
|
memberCount: number;
|
|
3628
3673
|
};
|
|
3629
3674
|
TalentListFilters: {
|
|
@@ -3714,6 +3759,11 @@ interface components {
|
|
|
3714
3759
|
[key: string]: string | number | boolean | string[];
|
|
3715
3760
|
};
|
|
3716
3761
|
objectReferences: components["schemas"]["ResolvedProfileObjectReference"][];
|
|
3762
|
+
/**
|
|
3763
|
+
* @description Roughly when the candidate was last active on the board: `today` (within 24 hours), `this_week` (7 days), `this_month` (30 days), `last_3_months` (90 days) or `over_3_months`, counted back from the request. Only returned to a signed-in employer on this board, and only when the candidate’s job search status is `actively_looking` or `open_to_offers`; `null` otherwise. The exact time is never exposed.
|
|
3764
|
+
* @enum {string|null}
|
|
3765
|
+
*/
|
|
3766
|
+
lastActive: "today" | "this_week" | "this_month" | "last_3_months" | "over_3_months" | null;
|
|
3717
3767
|
};
|
|
3718
3768
|
TalentUnlock: {
|
|
3719
3769
|
/** @enum {string} */
|
|
@@ -76,7 +76,20 @@ interface components {
|
|
|
76
76
|
/** @enum {string} */
|
|
77
77
|
frequency: "weekly";
|
|
78
78
|
isActive: boolean;
|
|
79
|
+
/**
|
|
80
|
+
* @description How the digest is filled. `similar_job`: jobs similar to `anchorJob` (subscribed from a job page). `search`: a board search for `filters.query` (subscribed from a search page, or given keywords). `filters`: jobs matching the stored filters exactly. Read-only.
|
|
81
|
+
* @enum {string}
|
|
82
|
+
*/
|
|
83
|
+
kind: "similar_job" | "search" | "filters";
|
|
84
|
+
/** @description For a `similar_job` alert, the job it was subscribed from, as it was when captured (the job may since have closed). `null` for other kinds, and for an older similar-job alert whose job has not been captured yet. Read-only. */
|
|
85
|
+
anchorJob: {
|
|
86
|
+
id: string;
|
|
87
|
+
slug: string | null;
|
|
88
|
+
title: string;
|
|
89
|
+
} | null;
|
|
79
90
|
filters: {
|
|
91
|
+
/** @description The stored keywords, or null. */
|
|
92
|
+
query: string | null;
|
|
80
93
|
jobFunctions: string[];
|
|
81
94
|
seniorityLevels: string[];
|
|
82
95
|
remoteOptions: string[];
|
|
@@ -95,6 +108,8 @@ interface components {
|
|
|
95
108
|
label?: string;
|
|
96
109
|
/** @enum {string} */
|
|
97
110
|
frequency: "weekly";
|
|
111
|
+
/** @description Free-text keywords the alert replays as a board search, stored as given (trimmed, at most 200 characters). On an update, `null` or an empty string clears the keywords, and omitting `query` keeps them as long as `jobFunctions` are unchanged. A similar-job alert (subscribed from a job page) takes no keywords: setting them is a 400. */
|
|
112
|
+
query?: string | null;
|
|
98
113
|
jobFunctions?: string[];
|
|
99
114
|
seniorityLevels?: string[];
|
|
100
115
|
remoteOptions?: string[];
|
|
@@ -2685,10 +2700,14 @@ interface components {
|
|
|
2685
2700
|
slug: string;
|
|
2686
2701
|
name: string;
|
|
2687
2702
|
}[];
|
|
2688
|
-
/** @description Place ancestor chain (country → region → city) for the breadcrumb
|
|
2703
|
+
/** @description Place ancestor chain (country → region → city) for the breadcrumb. Link each entry with `canonicalSlug`; show `name`, which is in the board's language. `slug` stays the English source slug. */
|
|
2689
2704
|
placeHierarchy: {
|
|
2705
|
+
/** @description English source slug of the place. Accepted by the jobs `location` filter. */
|
|
2690
2706
|
slug: string;
|
|
2707
|
+
/** @description Place name in the board's language (the English name where the place has no translation). */
|
|
2691
2708
|
name: string;
|
|
2709
|
+
/** @description Slug the place's location page lives at: in the board's language where that language has unique place slugs, otherwise (and for a place with no translation) the English `slug`. Link breadcrumbs to `/jobs/locations/:canonicalSlug`; the location page at the English `slug` can redirect on a translated board. Also accepted by the jobs `location` filter. */
|
|
2710
|
+
canonicalSlug: string;
|
|
2692
2711
|
}[];
|
|
2693
2712
|
/** @description Opaque, display-only custom-field values, keyed by each field's `key`. Values are the option `key`(s) for select fields, or the raw boolean/number/text otherwise. Resolve labels via the board's `customFields.job` definitions (see `GET /v1/boards/:identifier`). `{}` when the board defines no custom fields. Supports exact-value custom-field filters in job search. */
|
|
2694
2713
|
customFieldValues: {
|
|
@@ -2723,7 +2742,20 @@ interface components {
|
|
|
2723
2742
|
/** @enum {string} */
|
|
2724
2743
|
frequency: "weekly";
|
|
2725
2744
|
isActive: boolean;
|
|
2745
|
+
/**
|
|
2746
|
+
* @description How the digest is filled. `similar_job`: jobs similar to `anchorJob` (subscribed from a job page). `search`: a board search for `filters.query` (subscribed from a search page, or given keywords). `filters`: jobs matching the stored filters exactly. Read-only.
|
|
2747
|
+
* @enum {string}
|
|
2748
|
+
*/
|
|
2749
|
+
kind: "similar_job" | "search" | "filters";
|
|
2750
|
+
/** @description For a `similar_job` alert, the job it was subscribed from, as it was when captured (the job may since have closed). `null` for other kinds, and for an older similar-job alert whose job has not been captured yet. Read-only. */
|
|
2751
|
+
anchorJob: {
|
|
2752
|
+
id: string;
|
|
2753
|
+
slug: string | null;
|
|
2754
|
+
title: string;
|
|
2755
|
+
} | null;
|
|
2726
2756
|
filters: {
|
|
2757
|
+
/** @description The stored keywords. */
|
|
2758
|
+
query?: string;
|
|
2727
2759
|
jobFunctions?: string[];
|
|
2728
2760
|
seniorityLevels?: string[];
|
|
2729
2761
|
remoteOptions?: string[];
|
|
@@ -2862,9 +2894,13 @@ interface components {
|
|
|
2862
2894
|
id: string;
|
|
2863
2895
|
/** @description Parent place's `id`; `null` for a root place. */
|
|
2864
2896
|
parentId: string | null;
|
|
2865
|
-
/** @description
|
|
2897
|
+
/** @description English source slug: the key for the jobs `location` filter. `null` if unslugged. Build links with `canonicalSlug`: on a translated board, the location page at the English slug can 308-redirect. */
|
|
2866
2898
|
slug: string | null;
|
|
2899
|
+
/** @description Board-language canonical URL slug where the board language has unique place slugs; otherwise, or for an untranslated place, `slug`. `null` if unslugged. Use it for links: it resolves as the jobs `location` filter, on `GET /boards/{identifier}/places/{slug}`, and as the location page slug (`/jobs/locations/:slug`). */
|
|
2900
|
+
canonicalSlug: string | null;
|
|
2867
2901
|
name: string;
|
|
2902
|
+
/** @description Board-language name with source-name fallback. */
|
|
2903
|
+
displayName: string;
|
|
2868
2904
|
placeType: string;
|
|
2869
2905
|
countryCode: string | null;
|
|
2870
2906
|
regionCode: string | null;
|
|
@@ -2947,9 +2983,13 @@ interface components {
|
|
|
2947
2983
|
id: string;
|
|
2948
2984
|
/** @description Parent place's `id`; `null` for a root place. */
|
|
2949
2985
|
parentId: string | null;
|
|
2950
|
-
/** @description English source place slug
|
|
2986
|
+
/** @description English source place slug. Pass it as the talent directory's `place` filter. `GET /boards/{identifier}/places/{slug}` resolves it, also for a place with candidates but no jobs. */
|
|
2951
2987
|
slug: string | null;
|
|
2988
|
+
/** @description Board-language place slug where the board language has unique place slugs; otherwise, or for an untranslated place, `slug`. `null` if unslugged. Link the place's talent location page with it (`/talent/locations/{canonicalSlug}`); the talent directory's `place` filter accepts it too. `GET /boards/{identifier}/places/{slug}` resolves it, also for a place with candidates but no jobs, but that resolution's `canonicalSlug` and `redirectTo` follow the job location pages and can differ from this value: a translated slug where the board language's place slugs are not unique, or a code-based slug for a country or region with jobs. Canonicalise a talent location page against this value, not `redirectTo`. */
|
|
2989
|
+
canonicalSlug: string | null;
|
|
2952
2990
|
name: string;
|
|
2991
|
+
/** @description Board-language name with source-name fallback. */
|
|
2992
|
+
displayName: string;
|
|
2953
2993
|
placeType: string;
|
|
2954
2994
|
countryCode: string | null;
|
|
2955
2995
|
regionCode: string | null;
|
|
@@ -3612,6 +3652,11 @@ interface components {
|
|
|
3612
3652
|
[key: string]: string | number | boolean | string[];
|
|
3613
3653
|
};
|
|
3614
3654
|
objectReferences: components["schemas"]["ResolvedProfileObjectReference"][];
|
|
3655
|
+
/**
|
|
3656
|
+
* @description Roughly when the candidate was last active on the board: `today` (within 24 hours), `this_week` (7 days), `this_month` (30 days), `last_3_months` (90 days) or `over_3_months`, counted back from the request. Only returned to a signed-in employer on this board, and only when the candidate’s job search status is `actively_looking` or `open_to_offers`; `null` otherwise. The exact time is never exposed.
|
|
3657
|
+
* @enum {string|null}
|
|
3658
|
+
*/
|
|
3659
|
+
lastActive: "today" | "this_week" | "this_month" | "last_3_months" | "over_3_months" | null;
|
|
3615
3660
|
};
|
|
3616
3661
|
TalentList: {
|
|
3617
3662
|
id: string;
|
|
@@ -3623,7 +3668,7 @@ interface components {
|
|
|
3623
3668
|
createdBy: string;
|
|
3624
3669
|
createdAt: number;
|
|
3625
3670
|
updatedAt: number;
|
|
3626
|
-
/** @description People saved to this list
|
|
3671
|
+
/** @description People saved to this list. Exact and immediate; a list has no size limit. Includes anyone the members list omits for the viewer (blocked, hidden or deactivated). */
|
|
3627
3672
|
memberCount: number;
|
|
3628
3673
|
};
|
|
3629
3674
|
TalentListFilters: {
|
|
@@ -3714,6 +3759,11 @@ interface components {
|
|
|
3714
3759
|
[key: string]: string | number | boolean | string[];
|
|
3715
3760
|
};
|
|
3716
3761
|
objectReferences: components["schemas"]["ResolvedProfileObjectReference"][];
|
|
3762
|
+
/**
|
|
3763
|
+
* @description Roughly when the candidate was last active on the board: `today` (within 24 hours), `this_week` (7 days), `this_month` (30 days), `last_3_months` (90 days) or `over_3_months`, counted back from the request. Only returned to a signed-in employer on this board, and only when the candidate’s job search status is `actively_looking` or `open_to_offers`; `null` otherwise. The exact time is never exposed.
|
|
3764
|
+
* @enum {string|null}
|
|
3765
|
+
*/
|
|
3766
|
+
lastActive: "today" | "this_week" | "this_month" | "last_3_months" | "over_3_months" | null;
|
|
3717
3767
|
};
|
|
3718
3768
|
TalentUnlock: {
|
|
3719
3769
|
/** @enum {string} */
|
package/dist/bin.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { S as Schemas } from './_spec-
|
|
2
|
-
import { L as ListEnvelope, t as RelatedSearch, a as CustomFieldFilter, O as ObjectReferenceFilter } from './jobs-
|
|
1
|
+
import { S as Schemas } from './_spec-Fw9b79TI.js';
|
|
2
|
+
import { L as ListEnvelope, t as RelatedSearch, a as CustomFieldFilter, O as ObjectReferenceFilter } from './jobs-rnatMRvm.js';
|
|
3
3
|
|
|
4
4
|
type PublicCompany = Schemas['CompanyPublic'];
|
|
5
5
|
/** A market (sector) a company operates in — name + its source slug. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { S as Schemas } from './_spec-
|
|
2
|
-
import { L as ListEnvelope, t as RelatedSearch, a as CustomFieldFilter, O as ObjectReferenceFilter } from './jobs-
|
|
1
|
+
import { S as Schemas } from './_spec-Fw9b79TI.mjs';
|
|
2
|
+
import { L as ListEnvelope, t as RelatedSearch, a as CustomFieldFilter, O as ObjectReferenceFilter } from './jobs-oSTStcbC.mjs';
|
|
3
3
|
|
|
4
4
|
type PublicCompany = Schemas['CompanyPublic'];
|
|
5
5
|
/** A market (sector) a company operates in — name + its source slug. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { P as PublicBoard, a as CompanyCategorySalary, b as CompanySalary, L as LocationSalaryDetail, S as SkillSalaryDetail, T as TitleSalaryDetail } from './board-
|
|
2
|
-
import { P as PublicJob } from './jobs-
|
|
1
|
+
import { P as PublicBoard, a as CompanyCategorySalary, b as CompanySalary, L as LocationSalaryDetail, S as SkillSalaryDetail, T as TitleSalaryDetail } from './board-DkwbMZdt.mjs';
|
|
2
|
+
import { P as PublicJob } from './jobs-oSTStcbC.mjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Wire enum for `salaryTimeframe`. Defined here (not re-exported from any
|
|
@@ -370,7 +370,9 @@ type JobBreadcrumb = {
|
|
|
370
370
|
};
|
|
371
371
|
/**
|
|
372
372
|
* Home › Jobs › [country › region › city] › primaryCategory › Title.
|
|
373
|
-
* The place crumbs link into the listing routes
|
|
373
|
+
* The place crumbs link into the listing routes by each place's
|
|
374
|
+
* `canonicalSlug` (`/jobs/locations/:canonicalSlug`), the slug the location
|
|
375
|
+
* page lives at, so a translated board's crumbs do not redirect;
|
|
374
376
|
* the category crumb nests under the most-specific place when present
|
|
375
377
|
* (`/jobs/locations/:place/:category`), else `/jobs/:category`. The last
|
|
376
378
|
* crumb (the job title) carries no `path` — the current page. Mirrors
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { P as PublicBoard, a as CompanyCategorySalary, b as CompanySalary, L as LocationSalaryDetail, S as SkillSalaryDetail, T as TitleSalaryDetail } from './board-
|
|
2
|
-
import { P as PublicJob } from './jobs-
|
|
1
|
+
import { P as PublicBoard, a as CompanyCategorySalary, b as CompanySalary, L as LocationSalaryDetail, S as SkillSalaryDetail, T as TitleSalaryDetail } from './board-B1Ueww2w.js';
|
|
2
|
+
import { P as PublicJob } from './jobs-rnatMRvm.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Wire enum for `salaryTimeframe`. Defined here (not re-exported from any
|
|
@@ -370,7 +370,9 @@ type JobBreadcrumb = {
|
|
|
370
370
|
};
|
|
371
371
|
/**
|
|
372
372
|
* Home › Jobs › [country › region › city] › primaryCategory › Title.
|
|
373
|
-
* The place crumbs link into the listing routes
|
|
373
|
+
* The place crumbs link into the listing routes by each place's
|
|
374
|
+
* `canonicalSlug` (`/jobs/locations/:canonicalSlug`), the slug the location
|
|
375
|
+
* page lives at, so a translated board's crumbs do not redirect;
|
|
374
376
|
* the category crumb nests under the most-specific place when present
|
|
375
377
|
* (`/jobs/locations/:place/:category`), else `/jobs/:category`. The last
|
|
376
378
|
* crumb (the job title) carries no `path` — the current page. Mirrors
|