@cavuno/board 4.0.0 → 4.1.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 +27 -0
- package/dist/{_spec-GVe6WAfT.d.mts → _spec-BZDv2dc5.d.mts} +32 -9
- package/dist/{_spec-GVe6WAfT.d.ts → _spec-BZDv2dc5.d.ts} +32 -9
- package/dist/{blog-BsmKizpd.d.ts → blog-BHx6iH3Z.d.ts} +1 -1
- package/dist/{blog-Cf64mI8A.d.mts → blog-DyDvyQrI.d.mts} +1 -1
- package/dist/{board-GGWJ4coe.d.mts → board-BF3Qao6J.d.mts} +2 -2
- package/dist/{board-DUhgiacm.d.ts → board-BTEZ0uiI.d.ts} +2 -2
- package/dist/{breadcrumbs-DiccJhk4.d.ts → breadcrumbs-SGaWth6C.d.ts} +2 -2
- package/dist/{breadcrumbs-DFKr0HzU.d.mts → breadcrumbs-icxRVydh.d.mts} +2 -2
- 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/index.d.mts +55 -11
- package/dist/index.d.ts +55 -11
- package/dist/index.js +35 -1
- package/dist/index.mjs +35 -1
- package/dist/{jobs-BuLpV8iy.d.mts → jobs-BX6d_sdd.d.mts} +1 -1
- package/dist/{jobs-QrbXOYB9.d.ts → jobs-BbLJfz1z.d.ts} +1 -1
- package/dist/{search-DdsniXQv.d.ts → search-7B-mVRNA.d.ts} +1 -1
- package/dist/{search-Cr4noJJZ.d.mts → search-OKrdAHv8.d.mts} +1 -1
- package/dist/seo.d.mts +6 -6
- package/dist/seo.d.ts +6 -6
- package/dist/server.d.mts +5 -5
- package/dist/server.d.ts +5 -5
- package/dist/sitemap.d.mts +5 -5
- package/dist/sitemap.d.ts +5 -5
- package/dist/suggest.d.mts +2 -2
- package/dist/suggest.d.ts +2 -2
- package/package.json +1 -1
- package/skills/cavuno-board-api-client/SKILL.md +42 -0
- package/skills/manifest.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
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.1.0 — 2026-08-06
|
|
7
|
+
|
|
8
|
+
- **Salary null-clears on job PATCH** (operator `PATCH /v1/jobs/:id` and
|
|
9
|
+
employer `PATCH /v1/boards/:identifier/me/companies/:slug/jobs/:id`):
|
|
10
|
+
`salaryMin`, `salaryMax`, `salaryCurrency`, and `salaryTimeframe` now
|
|
11
|
+
accept an explicit `null` meaning "clear the stored value" — the same
|
|
12
|
+
tri-state `applicationUrl` and `expiresAt` already document (value sets,
|
|
13
|
+
`null` clears, omitted leaves unchanged). Clearing also drops the derived
|
|
14
|
+
USD figures, so salary filters stop matching a job whose salary was
|
|
15
|
+
withdrawn.
|
|
16
|
+
- **Structured remote fields on `PublicJobCard`**: `remoteWorldwide`
|
|
17
|
+
(`boolean | null`) and `remoteWorkPermitCountryCodes` (`string[]`) beside
|
|
18
|
+
the pre-worded `remoteLocationLabel`, so templates can word remote
|
|
19
|
+
regions from their own catalogs instead of matching the board-language
|
|
20
|
+
`"Worldwide"` label string. Derived from the same permit selection the
|
|
21
|
+
label reads — the boolean and the label always agree.
|
|
22
|
+
- **Docs**: `Plan.name` and `Plan.description` are documented as authoring
|
|
23
|
+
defaults — the localized public string lives in the board template,
|
|
24
|
+
composed from `featureSummary`, `billingInterval`, and `talent`.
|
|
25
|
+
- **Marketing consent**: consent is a property of the board
|
|
26
|
+
user. New `board.me.marketingConsent` namespace — `retrieve()` (the
|
|
27
|
+
consent, or `null` when no decision exists), `grant()`, `withdraw()` —
|
|
28
|
+
plus the `MarketingConsent` type. The API records the decision, never
|
|
29
|
+
the prose: disclosure wording is authored by the board's own frontend.
|
|
30
|
+
- **Outbound webhooks**: webhook subscription endpoints and event types
|
|
31
|
+
join the OpenAPI contract and generated types.
|
|
32
|
+
|
|
6
33
|
## 4.0.0 — 2026-08-03
|
|
7
34
|
|
|
8
35
|
- **Lossy seams:** Resolution is fine;
|
|
@@ -205,6 +205,8 @@ interface components {
|
|
|
205
205
|
/** @description Minimum 8 characters. */
|
|
206
206
|
password: string;
|
|
207
207
|
displayName: string;
|
|
208
|
+
/** @description True only when the person ticked a marketing checkbox your UI displayed with its disclosure wording. Omit when no checkbox was shown; false and absent both record nothing. */
|
|
209
|
+
marketingConsent?: boolean;
|
|
208
210
|
};
|
|
209
211
|
BoardAuthRequestMagicLinkBody: {
|
|
210
212
|
/** Format: email */
|
|
@@ -1140,17 +1142,17 @@ interface components {
|
|
|
1140
1142
|
seniority?: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive";
|
|
1141
1143
|
/** @description Where candidates apply. Accepts an HTTPS URL, a `mailto:` URI, or a bare email address (normalized to `mailto:` form). Pass `null` to clear the stored value and switch the job to on-board (built-in) applications. Omitted means unchanged. */
|
|
1142
1144
|
applicationUrl?: string | null;
|
|
1143
|
-
/** @description Minimum salary, in `salaryCurrency` units. */
|
|
1144
|
-
salaryMin?: number;
|
|
1145
|
-
/** @description Maximum salary, in `salaryCurrency` units. */
|
|
1146
|
-
salaryMax?: number;
|
|
1147
|
-
/** @description Three-letter ISO 4217 currency code for `salaryMin` and `salaryMax`. */
|
|
1148
|
-
salaryCurrency?: string;
|
|
1145
|
+
/** @description Minimum salary, in `salaryCurrency` units. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1146
|
+
salaryMin?: number | null;
|
|
1147
|
+
/** @description Maximum salary, in `salaryCurrency` units. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1148
|
+
salaryMax?: number | null;
|
|
1149
|
+
/** @description Three-letter ISO 4217 currency code for `salaryMin` and `salaryMax`. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1150
|
+
salaryCurrency?: string | null;
|
|
1149
1151
|
/**
|
|
1150
|
-
* @description Period the `salaryMin` and `salaryMax` figures are quoted against.
|
|
1151
|
-
* @enum {string}
|
|
1152
|
+
* @description Period the `salaryMin` and `salaryMax` figures are quoted against. Pass `null` to clear the stored value; omitted means unchanged.
|
|
1153
|
+
* @enum {string|null}
|
|
1152
1154
|
*/
|
|
1153
|
-
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour";
|
|
1155
|
+
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour" | null;
|
|
1154
1156
|
/** @description Up to 100 canonical skill slugs from `GET /v1/taxonomies/skills`. Every slug must exist in this account. */
|
|
1155
1157
|
skills?: string[];
|
|
1156
1158
|
/** @description Up to 100 canonical category slugs from `GET /v1/taxonomies/categories`. Every slug must exist in this account. */
|
|
@@ -1455,6 +1457,21 @@ interface components {
|
|
|
1455
1457
|
/** @description Number of companies on the board in this market. */
|
|
1456
1458
|
companyCount: number;
|
|
1457
1459
|
};
|
|
1460
|
+
MarketingConsent: {
|
|
1461
|
+
id: string;
|
|
1462
|
+
/** @enum {string} */
|
|
1463
|
+
object: "marketing_consent";
|
|
1464
|
+
/** @enum {string} */
|
|
1465
|
+
status: "granted" | "withdrawn";
|
|
1466
|
+
source: string;
|
|
1467
|
+
/** @enum {string|null} */
|
|
1468
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
1469
|
+
/** Format: date-time */
|
|
1470
|
+
grantedAt: string | null;
|
|
1471
|
+
/** Format: date-time */
|
|
1472
|
+
withdrawnAt: string | null;
|
|
1473
|
+
revision: number;
|
|
1474
|
+
} | null;
|
|
1458
1475
|
Message: {
|
|
1459
1476
|
id: string;
|
|
1460
1477
|
/** @enum {string} */
|
|
@@ -1518,7 +1535,9 @@ interface components {
|
|
|
1518
1535
|
/** @enum {string} */
|
|
1519
1536
|
object: "plan";
|
|
1520
1537
|
id: string;
|
|
1538
|
+
/** @description The operator's authoring-default plan name, in the board's language. Board templates that localize chrome should treat this as the fallback and word plan names from `featureSummary` structure or their own catalogs. */
|
|
1521
1539
|
name: string;
|
|
1540
|
+
/** @description Authoring default: the operator's prose description in the board's language. The localized public string lives in the board template — compose it from `featureSummary`, `billingInterval`, and `talent` rather than displaying this verbatim on localized surfaces. */
|
|
1522
1541
|
description: string | null;
|
|
1523
1542
|
/** @enum {string} */
|
|
1524
1543
|
purpose: "job_posting" | "talent_access";
|
|
@@ -1913,6 +1932,10 @@ interface components {
|
|
|
1913
1932
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
1914
1933
|
/** @description Display region label for remote jobs (e.g. "United States", "Worldwide"); `null` for non-remote jobs. */
|
|
1915
1934
|
remoteLocationLabel: string | null;
|
|
1935
|
+
/** @description Structured twin of `remoteLocationLabel`’s "Worldwide" case: `true` when the remote permit selection is unrestricted (explicit worldwide, or no constraint), `false` for a constrained remote job, `null` for non-remote jobs. Word it from your own catalog instead of matching the board-language label string. */
|
|
1936
|
+
remoteWorldwide: boolean | null;
|
|
1937
|
+
/** @description ISO 3166-1 alpha-2 codes the remote permit selection covers (derived expansion, mirroring the job detail field of the same name). Empty for worldwide/unconstrained and non-remote jobs. */
|
|
1938
|
+
remoteWorkPermitCountryCodes: string[];
|
|
1916
1939
|
salaryMin: number | null;
|
|
1917
1940
|
salaryMax: number | null;
|
|
1918
1941
|
salaryCurrency: string | null;
|
|
@@ -205,6 +205,8 @@ interface components {
|
|
|
205
205
|
/** @description Minimum 8 characters. */
|
|
206
206
|
password: string;
|
|
207
207
|
displayName: string;
|
|
208
|
+
/** @description True only when the person ticked a marketing checkbox your UI displayed with its disclosure wording. Omit when no checkbox was shown; false and absent both record nothing. */
|
|
209
|
+
marketingConsent?: boolean;
|
|
208
210
|
};
|
|
209
211
|
BoardAuthRequestMagicLinkBody: {
|
|
210
212
|
/** Format: email */
|
|
@@ -1140,17 +1142,17 @@ interface components {
|
|
|
1140
1142
|
seniority?: "entry_level" | "associate" | "mid_level" | "senior" | "lead" | "principal" | "director" | "executive";
|
|
1141
1143
|
/** @description Where candidates apply. Accepts an HTTPS URL, a `mailto:` URI, or a bare email address (normalized to `mailto:` form). Pass `null` to clear the stored value and switch the job to on-board (built-in) applications. Omitted means unchanged. */
|
|
1142
1144
|
applicationUrl?: string | null;
|
|
1143
|
-
/** @description Minimum salary, in `salaryCurrency` units. */
|
|
1144
|
-
salaryMin?: number;
|
|
1145
|
-
/** @description Maximum salary, in `salaryCurrency` units. */
|
|
1146
|
-
salaryMax?: number;
|
|
1147
|
-
/** @description Three-letter ISO 4217 currency code for `salaryMin` and `salaryMax`. */
|
|
1148
|
-
salaryCurrency?: string;
|
|
1145
|
+
/** @description Minimum salary, in `salaryCurrency` units. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1146
|
+
salaryMin?: number | null;
|
|
1147
|
+
/** @description Maximum salary, in `salaryCurrency` units. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1148
|
+
salaryMax?: number | null;
|
|
1149
|
+
/** @description Three-letter ISO 4217 currency code for `salaryMin` and `salaryMax`. Pass `null` to clear the stored value; omitted means unchanged. */
|
|
1150
|
+
salaryCurrency?: string | null;
|
|
1149
1151
|
/**
|
|
1150
|
-
* @description Period the `salaryMin` and `salaryMax` figures are quoted against.
|
|
1151
|
-
* @enum {string}
|
|
1152
|
+
* @description Period the `salaryMin` and `salaryMax` figures are quoted against. Pass `null` to clear the stored value; omitted means unchanged.
|
|
1153
|
+
* @enum {string|null}
|
|
1152
1154
|
*/
|
|
1153
|
-
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour";
|
|
1155
|
+
salaryTimeframe?: "per_year" | "per_month" | "per_week" | "per_day" | "per_hour" | null;
|
|
1154
1156
|
/** @description Up to 100 canonical skill slugs from `GET /v1/taxonomies/skills`. Every slug must exist in this account. */
|
|
1155
1157
|
skills?: string[];
|
|
1156
1158
|
/** @description Up to 100 canonical category slugs from `GET /v1/taxonomies/categories`. Every slug must exist in this account. */
|
|
@@ -1455,6 +1457,21 @@ interface components {
|
|
|
1455
1457
|
/** @description Number of companies on the board in this market. */
|
|
1456
1458
|
companyCount: number;
|
|
1457
1459
|
};
|
|
1460
|
+
MarketingConsent: {
|
|
1461
|
+
id: string;
|
|
1462
|
+
/** @enum {string} */
|
|
1463
|
+
object: "marketing_consent";
|
|
1464
|
+
/** @enum {string} */
|
|
1465
|
+
status: "granted" | "withdrawn";
|
|
1466
|
+
source: string;
|
|
1467
|
+
/** @enum {string|null} */
|
|
1468
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
1469
|
+
/** Format: date-time */
|
|
1470
|
+
grantedAt: string | null;
|
|
1471
|
+
/** Format: date-time */
|
|
1472
|
+
withdrawnAt: string | null;
|
|
1473
|
+
revision: number;
|
|
1474
|
+
} | null;
|
|
1458
1475
|
Message: {
|
|
1459
1476
|
id: string;
|
|
1460
1477
|
/** @enum {string} */
|
|
@@ -1518,7 +1535,9 @@ interface components {
|
|
|
1518
1535
|
/** @enum {string} */
|
|
1519
1536
|
object: "plan";
|
|
1520
1537
|
id: string;
|
|
1538
|
+
/** @description The operator's authoring-default plan name, in the board's language. Board templates that localize chrome should treat this as the fallback and word plan names from `featureSummary` structure or their own catalogs. */
|
|
1521
1539
|
name: string;
|
|
1540
|
+
/** @description Authoring default: the operator's prose description in the board's language. The localized public string lives in the board template — compose it from `featureSummary`, `billingInterval`, and `talent` rather than displaying this verbatim on localized surfaces. */
|
|
1522
1541
|
description: string | null;
|
|
1523
1542
|
/** @enum {string} */
|
|
1524
1543
|
purpose: "job_posting" | "talent_access";
|
|
@@ -1913,6 +1932,10 @@ interface components {
|
|
|
1913
1932
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
1914
1933
|
/** @description Display region label for remote jobs (e.g. "United States", "Worldwide"); `null` for non-remote jobs. */
|
|
1915
1934
|
remoteLocationLabel: string | null;
|
|
1935
|
+
/** @description Structured twin of `remoteLocationLabel`’s "Worldwide" case: `true` when the remote permit selection is unrestricted (explicit worldwide, or no constraint), `false` for a constrained remote job, `null` for non-remote jobs. Word it from your own catalog instead of matching the board-language label string. */
|
|
1936
|
+
remoteWorldwide: boolean | null;
|
|
1937
|
+
/** @description ISO 3166-1 alpha-2 codes the remote permit selection covers (derived expansion, mirroring the job detail field of the same name). Empty for worldwide/unconstrained and non-remote jobs. */
|
|
1938
|
+
remoteWorkPermitCountryCodes: string[];
|
|
1916
1939
|
salaryMin: number | null;
|
|
1917
1940
|
salaryMax: number | null;
|
|
1918
1941
|
salaryCurrency: string | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { S as Schemas } from './_spec-
|
|
2
|
-
import { L as ListEnvelope, m as RelatedSearch } from './jobs-
|
|
1
|
+
import { S as Schemas } from './_spec-BZDv2dc5.mjs';
|
|
2
|
+
import { L as ListEnvelope, m as RelatedSearch } from './jobs-BX6d_sdd.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 { S as Schemas } from './_spec-
|
|
2
|
-
import { L as ListEnvelope, m as RelatedSearch } from './jobs-
|
|
1
|
+
import { S as Schemas } from './_spec-BZDv2dc5.js';
|
|
2
|
+
import { L as ListEnvelope, m as RelatedSearch } from './jobs-BbLJfz1z.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 { 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-BTEZ0uiI.js';
|
|
2
|
+
import { P as PublicJob } from './jobs-BbLJfz1z.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Wire enum for `salaryTimeframe`. Defined here (not re-exported from any
|
|
@@ -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-BF3Qao6J.mjs';
|
|
2
|
+
import { P as PublicJob } from './jobs-BX6d_sdd.mjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Wire enum for `salaryTimeframe`. Defined here (not re-exported from any
|
package/dist/filters.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-BX6d_sdd.mjs';
|
|
2
|
+
import './_spec-BZDv2dc5.mjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
|
package/dist/filters.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-BbLJfz1z.js';
|
|
2
|
+
import './_spec-BZDv2dc5.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
|
package/dist/format.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-
|
|
2
|
-
import { C as CustomFieldDefinition } from './board-
|
|
3
|
-
import { C as CustomFieldValues } from './jobs-
|
|
4
|
-
import './_spec-
|
|
1
|
+
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-icxRVydh.mjs';
|
|
2
|
+
import { C as CustomFieldDefinition } from './board-BF3Qao6J.mjs';
|
|
3
|
+
import { C as CustomFieldValues } from './jobs-BX6d_sdd.mjs';
|
|
4
|
+
import './_spec-BZDv2dc5.mjs';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Date display helpers in the board language (required leading parameter,
|
package/dist/format.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-
|
|
2
|
-
import { C as CustomFieldDefinition } from './board-
|
|
3
|
-
import { C as CustomFieldValues } from './jobs-
|
|
4
|
-
import './_spec-
|
|
1
|
+
export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-SGaWth6C.js';
|
|
2
|
+
import { C as CustomFieldDefinition } from './board-BTEZ0uiI.js';
|
|
3
|
+
import { C as CustomFieldValues } from './jobs-BbLJfz1z.js';
|
|
4
|
+
import './_spec-BZDv2dc5.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Date display helpers in the board language (required leading parameter,
|
package/dist/index.d.mts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { S as Schemas, c as components } from './_spec-
|
|
2
|
-
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-
|
|
3
|
-
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-
|
|
4
|
-
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-
|
|
5
|
-
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-
|
|
6
|
-
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-
|
|
7
|
-
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-
|
|
8
|
-
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-
|
|
9
|
-
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-
|
|
1
|
+
import { S as Schemas, c as components } from './_spec-BZDv2dc5.mjs';
|
|
2
|
+
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-OKrdAHv8.mjs';
|
|
3
|
+
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-OKrdAHv8.mjs';
|
|
4
|
+
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-BF3Qao6J.mjs';
|
|
5
|
+
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-BF3Qao6J.mjs';
|
|
6
|
+
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-BX6d_sdd.mjs';
|
|
7
|
+
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-BX6d_sdd.mjs';
|
|
8
|
+
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-DyDvyQrI.mjs';
|
|
9
|
+
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-DyDvyQrI.mjs';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
|
|
@@ -142,7 +142,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
|
|
|
142
142
|
* constant because the package is platform-neutral and cannot read
|
|
143
143
|
* package.json at runtime.
|
|
144
144
|
*/
|
|
145
|
-
declare const SDK_VERSION = "4.
|
|
145
|
+
declare const SDK_VERSION = "4.1.0";
|
|
146
146
|
|
|
147
147
|
type SavedJob = Schemas['SavedJob'];
|
|
148
148
|
type SavedJobsListQuery = {
|
|
@@ -459,6 +459,14 @@ type EmbedJobsQuery = {
|
|
|
459
459
|
*/
|
|
460
460
|
type BoardAccessGrant = Schemas['BoardAccessGrant'];
|
|
461
461
|
|
|
462
|
+
/**
|
|
463
|
+
* A board user's marketing-email consent, or `null` when no decision exists.
|
|
464
|
+
*
|
|
465
|
+
* Carries no disclosure text or wording version: the checkbox copy is authored
|
|
466
|
+
* by the board's own frontend, so the API records the decision, not the prose.
|
|
467
|
+
*/
|
|
468
|
+
type MarketingConsent = Schemas['MarketingConsent'];
|
|
469
|
+
|
|
462
470
|
/**
|
|
463
471
|
* The result of resolving a path against the board's configured redirects
|
|
464
472
|
* (`board.redirects.resolve()`). A headless frontend 308s to `target`, or
|
|
@@ -806,6 +814,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
806
814
|
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
807
815
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
808
816
|
remoteLocationLabel: string | null;
|
|
817
|
+
remoteWorldwide: boolean | null;
|
|
818
|
+
remoteWorkPermitCountryCodes: string[];
|
|
809
819
|
salaryMin: number | null;
|
|
810
820
|
salaryMax: number | null;
|
|
811
821
|
salaryCurrency: string | null;
|
|
@@ -903,6 +913,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
903
913
|
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
904
914
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
905
915
|
remoteLocationLabel: string | null;
|
|
916
|
+
remoteWorldwide: boolean | null;
|
|
917
|
+
remoteWorkPermitCountryCodes: string[];
|
|
906
918
|
salaryMin: number | null;
|
|
907
919
|
salaryMax: number | null;
|
|
908
920
|
salaryCurrency: string | null;
|
|
@@ -2227,6 +2239,38 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2227
2239
|
blocked: boolean;
|
|
2228
2240
|
}>;
|
|
2229
2241
|
};
|
|
2242
|
+
marketingConsent: {
|
|
2243
|
+
retrieve(options?: FetchOptions): Promise<{
|
|
2244
|
+
id: string;
|
|
2245
|
+
object: "marketing_consent";
|
|
2246
|
+
status: "granted" | "withdrawn";
|
|
2247
|
+
source: string;
|
|
2248
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2249
|
+
grantedAt: string | null;
|
|
2250
|
+
withdrawnAt: string | null;
|
|
2251
|
+
revision: number;
|
|
2252
|
+
} | null>;
|
|
2253
|
+
grant(options?: FetchOptions): Promise<{
|
|
2254
|
+
id: string;
|
|
2255
|
+
object: "marketing_consent";
|
|
2256
|
+
status: "granted" | "withdrawn";
|
|
2257
|
+
source: string;
|
|
2258
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2259
|
+
grantedAt: string | null;
|
|
2260
|
+
withdrawnAt: string | null;
|
|
2261
|
+
revision: number;
|
|
2262
|
+
} | null>;
|
|
2263
|
+
withdraw(options?: FetchOptions): Promise<{
|
|
2264
|
+
id: string;
|
|
2265
|
+
object: "marketing_consent";
|
|
2266
|
+
status: "granted" | "withdrawn";
|
|
2267
|
+
source: string;
|
|
2268
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2269
|
+
grantedAt: string | null;
|
|
2270
|
+
withdrawnAt: string | null;
|
|
2271
|
+
revision: number;
|
|
2272
|
+
} | null>;
|
|
2273
|
+
};
|
|
2230
2274
|
access: {
|
|
2231
2275
|
checkout(body: AccessCheckoutBody, options?: FetchOptions): Promise<{
|
|
2232
2276
|
object: "checkout_session";
|
|
@@ -2967,4 +3011,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2967
3011
|
};
|
|
2968
3012
|
type BoardSdk = ReturnType<typeof createBoardClient>;
|
|
2969
3013
|
|
|
2970
|
-
export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
|
3014
|
+
export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { S as Schemas, c as components } from './_spec-
|
|
2
|
-
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-
|
|
3
|
-
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-
|
|
4
|
-
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-
|
|
5
|
-
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-
|
|
6
|
-
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-
|
|
7
|
-
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-
|
|
8
|
-
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-
|
|
9
|
-
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-
|
|
1
|
+
import { S as Schemas, c as components } from './_spec-BZDv2dc5.js';
|
|
2
|
+
import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-7B-mVRNA.js';
|
|
3
|
+
export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-7B-mVRNA.js';
|
|
4
|
+
import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-BTEZ0uiI.js';
|
|
5
|
+
export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-BTEZ0uiI.js';
|
|
6
|
+
import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-BbLJfz1z.js';
|
|
7
|
+
export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-BbLJfz1z.js';
|
|
8
|
+
import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-BHx6iH3Z.js';
|
|
9
|
+
export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-BHx6iH3Z.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
|
|
@@ -142,7 +142,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
|
|
|
142
142
|
* constant because the package is platform-neutral and cannot read
|
|
143
143
|
* package.json at runtime.
|
|
144
144
|
*/
|
|
145
|
-
declare const SDK_VERSION = "4.
|
|
145
|
+
declare const SDK_VERSION = "4.1.0";
|
|
146
146
|
|
|
147
147
|
type SavedJob = Schemas['SavedJob'];
|
|
148
148
|
type SavedJobsListQuery = {
|
|
@@ -459,6 +459,14 @@ type EmbedJobsQuery = {
|
|
|
459
459
|
*/
|
|
460
460
|
type BoardAccessGrant = Schemas['BoardAccessGrant'];
|
|
461
461
|
|
|
462
|
+
/**
|
|
463
|
+
* A board user's marketing-email consent, or `null` when no decision exists.
|
|
464
|
+
*
|
|
465
|
+
* Carries no disclosure text or wording version: the checkbox copy is authored
|
|
466
|
+
* by the board's own frontend, so the API records the decision, not the prose.
|
|
467
|
+
*/
|
|
468
|
+
type MarketingConsent = Schemas['MarketingConsent'];
|
|
469
|
+
|
|
462
470
|
/**
|
|
463
471
|
* The result of resolving a path against the board's configured redirects
|
|
464
472
|
* (`board.redirects.resolve()`). A headless frontend 308s to `target`, or
|
|
@@ -806,6 +814,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
806
814
|
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
807
815
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
808
816
|
remoteLocationLabel: string | null;
|
|
817
|
+
remoteWorldwide: boolean | null;
|
|
818
|
+
remoteWorkPermitCountryCodes: string[];
|
|
809
819
|
salaryMin: number | null;
|
|
810
820
|
salaryMax: number | null;
|
|
811
821
|
salaryCurrency: string | null;
|
|
@@ -903,6 +913,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
903
913
|
employmentType: "full_time" | "part_time" | "contract" | "internship" | "temporary" | "volunteer" | "other" | null;
|
|
904
914
|
remoteOption: "on_site" | "hybrid" | "remote" | null;
|
|
905
915
|
remoteLocationLabel: string | null;
|
|
916
|
+
remoteWorldwide: boolean | null;
|
|
917
|
+
remoteWorkPermitCountryCodes: string[];
|
|
906
918
|
salaryMin: number | null;
|
|
907
919
|
salaryMax: number | null;
|
|
908
920
|
salaryCurrency: string | null;
|
|
@@ -2227,6 +2239,38 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2227
2239
|
blocked: boolean;
|
|
2228
2240
|
}>;
|
|
2229
2241
|
};
|
|
2242
|
+
marketingConsent: {
|
|
2243
|
+
retrieve(options?: FetchOptions): Promise<{
|
|
2244
|
+
id: string;
|
|
2245
|
+
object: "marketing_consent";
|
|
2246
|
+
status: "granted" | "withdrawn";
|
|
2247
|
+
source: string;
|
|
2248
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2249
|
+
grantedAt: string | null;
|
|
2250
|
+
withdrawnAt: string | null;
|
|
2251
|
+
revision: number;
|
|
2252
|
+
} | null>;
|
|
2253
|
+
grant(options?: FetchOptions): Promise<{
|
|
2254
|
+
id: string;
|
|
2255
|
+
object: "marketing_consent";
|
|
2256
|
+
status: "granted" | "withdrawn";
|
|
2257
|
+
source: string;
|
|
2258
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2259
|
+
grantedAt: string | null;
|
|
2260
|
+
withdrawnAt: string | null;
|
|
2261
|
+
revision: number;
|
|
2262
|
+
} | null>;
|
|
2263
|
+
withdraw(options?: FetchOptions): Promise<{
|
|
2264
|
+
id: string;
|
|
2265
|
+
object: "marketing_consent";
|
|
2266
|
+
status: "granted" | "withdrawn";
|
|
2267
|
+
source: string;
|
|
2268
|
+
reason: "person_request" | "operator_request" | "account_deleted" | null;
|
|
2269
|
+
grantedAt: string | null;
|
|
2270
|
+
withdrawnAt: string | null;
|
|
2271
|
+
revision: number;
|
|
2272
|
+
} | null>;
|
|
2273
|
+
};
|
|
2230
2274
|
access: {
|
|
2231
2275
|
checkout(body: AccessCheckoutBody, options?: FetchOptions): Promise<{
|
|
2232
2276
|
object: "checkout_session";
|
|
@@ -2967,4 +3011,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
|
|
|
2967
3011
|
};
|
|
2968
3012
|
type BoardSdk = ReturnType<typeof createBoardClient>;
|
|
2969
3013
|
|
|
2970
|
-
export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
|
3014
|
+
export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type MarketingConsent, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
|
package/dist/index.js
CHANGED
|
@@ -312,7 +312,7 @@ async function clearSession(storage) {
|
|
|
312
312
|
}
|
|
313
313
|
|
|
314
314
|
// src/version.ts
|
|
315
|
-
var SDK_VERSION = "4.
|
|
315
|
+
var SDK_VERSION = "4.1.0";
|
|
316
316
|
|
|
317
317
|
// src/client.ts
|
|
318
318
|
function isRawBody(body) {
|
|
@@ -2325,6 +2325,40 @@ function meNamespace(client) {
|
|
|
2325
2325
|
);
|
|
2326
2326
|
}
|
|
2327
2327
|
},
|
|
2328
|
+
/**
|
|
2329
|
+
* My marketing-email consent.
|
|
2330
|
+
*
|
|
2331
|
+
* Consent is a property of the board user, given at sign-up or from the
|
|
2332
|
+
* board's own settings page. Both surfaces render board-authored
|
|
2333
|
+
* disclosure wording — the API records the decision, never the prose, so
|
|
2334
|
+
* whatever you show beside these calls is what the person agreed to.
|
|
2335
|
+
*/
|
|
2336
|
+
marketingConsent: {
|
|
2337
|
+
/** My consent, or `null` when no decision has ever been recorded. */
|
|
2338
|
+
retrieve(options) {
|
|
2339
|
+
return client.fetch(
|
|
2340
|
+
"/me/marketing-consent",
|
|
2341
|
+
options
|
|
2342
|
+
);
|
|
2343
|
+
},
|
|
2344
|
+
/**
|
|
2345
|
+
* Grant. Call this only from a surface that displayed your disclosure
|
|
2346
|
+
* copy — nothing server-side can check that you did.
|
|
2347
|
+
*/
|
|
2348
|
+
grant(options) {
|
|
2349
|
+
return client.fetch("/me/marketing-consent/grant", {
|
|
2350
|
+
...options,
|
|
2351
|
+
method: "POST"
|
|
2352
|
+
});
|
|
2353
|
+
},
|
|
2354
|
+
/** Withdraw. Repeating it returns the same state, no new event. */
|
|
2355
|
+
withdraw(options) {
|
|
2356
|
+
return client.fetch(
|
|
2357
|
+
"/me/marketing-consent/withdraw",
|
|
2358
|
+
{ ...options, method: "POST" }
|
|
2359
|
+
);
|
|
2360
|
+
}
|
|
2361
|
+
},
|
|
2328
2362
|
/**
|
|
2329
2363
|
* The candidate job-access paywall — the authenticated money flow . Enumerate offers publicly with `board.paywall.offers()`, then
|
|
2330
2364
|
* `checkout` here; poll `retrieveCheckout` until complete and confirm with
|
package/dist/index.mjs
CHANGED
|
@@ -39,7 +39,7 @@ function toSearchParams(query) {
|
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
// src/version.ts
|
|
42
|
-
var SDK_VERSION = "4.
|
|
42
|
+
var SDK_VERSION = "4.1.0";
|
|
43
43
|
|
|
44
44
|
// src/client.ts
|
|
45
45
|
function isRawBody(body) {
|
|
@@ -2052,6 +2052,40 @@ function meNamespace(client) {
|
|
|
2052
2052
|
);
|
|
2053
2053
|
}
|
|
2054
2054
|
},
|
|
2055
|
+
/**
|
|
2056
|
+
* My marketing-email consent.
|
|
2057
|
+
*
|
|
2058
|
+
* Consent is a property of the board user, given at sign-up or from the
|
|
2059
|
+
* board's own settings page. Both surfaces render board-authored
|
|
2060
|
+
* disclosure wording — the API records the decision, never the prose, so
|
|
2061
|
+
* whatever you show beside these calls is what the person agreed to.
|
|
2062
|
+
*/
|
|
2063
|
+
marketingConsent: {
|
|
2064
|
+
/** My consent, or `null` when no decision has ever been recorded. */
|
|
2065
|
+
retrieve(options) {
|
|
2066
|
+
return client.fetch(
|
|
2067
|
+
"/me/marketing-consent",
|
|
2068
|
+
options
|
|
2069
|
+
);
|
|
2070
|
+
},
|
|
2071
|
+
/**
|
|
2072
|
+
* Grant. Call this only from a surface that displayed your disclosure
|
|
2073
|
+
* copy — nothing server-side can check that you did.
|
|
2074
|
+
*/
|
|
2075
|
+
grant(options) {
|
|
2076
|
+
return client.fetch("/me/marketing-consent/grant", {
|
|
2077
|
+
...options,
|
|
2078
|
+
method: "POST"
|
|
2079
|
+
});
|
|
2080
|
+
},
|
|
2081
|
+
/** Withdraw. Repeating it returns the same state, no new event. */
|
|
2082
|
+
withdraw(options) {
|
|
2083
|
+
return client.fetch(
|
|
2084
|
+
"/me/marketing-consent/withdraw",
|
|
2085
|
+
{ ...options, method: "POST" }
|
|
2086
|
+
);
|
|
2087
|
+
}
|
|
2088
|
+
},
|
|
2055
2089
|
/**
|
|
2056
2090
|
* The candidate job-access paywall — the authenticated money flow . Enumerate offers publicly with `board.paywall.offers()`, then
|
|
2057
2091
|
* `checkout` here; poll `retrieveCheckout` until complete and confirm with
|
package/dist/seo.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-
|
|
2
|
-
import { e as JsonLdObject } from './breadcrumbs-
|
|
3
|
-
export { A as ALL_COUNTRY_CODES, B as BreadcrumbItemInput, g as FaqItem, J as JobBreadcrumb, h as JsonLdBoard, N as NumberNotation, i as SENIORITY_ORDER, j as SalaryFaqEntry, k as SalaryJsonLdOptions, l as SalaryOccupationListOptions, b as buildJobBreadcrumbs, m as buildSalaryFaq, o as companyCategorySalaryJsonLd, p as companySalaryJsonLd, q as createBreadcrumbJsonLd, r as createJobPostingJsonLd, s as crossAxisSalaryJsonLd, t as faqJsonLd, c as formatSalaryStat, d as formatSalaryStatRange, u as itemListJsonLd, v as locationSalaryJsonLd, n as normalizeWebsiteUrl, w as skillSalaryJsonLd, x as sortBySeniority, y as titleSalaryJsonLd } from './breadcrumbs-
|
|
4
|
-
import './_spec-
|
|
5
|
-
import './board-
|
|
6
|
-
import './jobs-
|
|
1
|
+
import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-DyDvyQrI.mjs';
|
|
2
|
+
import { e as JsonLdObject } from './breadcrumbs-icxRVydh.mjs';
|
|
3
|
+
export { A as ALL_COUNTRY_CODES, B as BreadcrumbItemInput, g as FaqItem, J as JobBreadcrumb, h as JsonLdBoard, N as NumberNotation, i as SENIORITY_ORDER, j as SalaryFaqEntry, k as SalaryJsonLdOptions, l as SalaryOccupationListOptions, b as buildJobBreadcrumbs, m as buildSalaryFaq, o as companyCategorySalaryJsonLd, p as companySalaryJsonLd, q as createBreadcrumbJsonLd, r as createJobPostingJsonLd, s as crossAxisSalaryJsonLd, t as faqJsonLd, c as formatSalaryStat, d as formatSalaryStatRange, u as itemListJsonLd, v as locationSalaryJsonLd, n as normalizeWebsiteUrl, w as skillSalaryJsonLd, x as sortBySeniority, y as titleSalaryJsonLd } from './breadcrumbs-icxRVydh.mjs';
|
|
4
|
+
import './_spec-BZDv2dc5.mjs';
|
|
5
|
+
import './board-BF3Qao6J.mjs';
|
|
6
|
+
import './jobs-BX6d_sdd.mjs';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Blog structured data on the `@cavuno/board` wire types, transcribed from
|
package/dist/seo.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-
|
|
2
|
-
import { e as JsonLdObject } from './breadcrumbs-
|
|
3
|
-
export { A as ALL_COUNTRY_CODES, B as BreadcrumbItemInput, g as FaqItem, J as JobBreadcrumb, h as JsonLdBoard, N as NumberNotation, i as SENIORITY_ORDER, j as SalaryFaqEntry, k as SalaryJsonLdOptions, l as SalaryOccupationListOptions, b as buildJobBreadcrumbs, m as buildSalaryFaq, o as companyCategorySalaryJsonLd, p as companySalaryJsonLd, q as createBreadcrumbJsonLd, r as createJobPostingJsonLd, s as crossAxisSalaryJsonLd, t as faqJsonLd, c as formatSalaryStat, d as formatSalaryStatRange, u as itemListJsonLd, v as locationSalaryJsonLd, n as normalizeWebsiteUrl, w as skillSalaryJsonLd, x as sortBySeniority, y as titleSalaryJsonLd } from './breadcrumbs-
|
|
4
|
-
import './_spec-
|
|
5
|
-
import './board-
|
|
6
|
-
import './jobs-
|
|
1
|
+
import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-BHx6iH3Z.js';
|
|
2
|
+
import { e as JsonLdObject } from './breadcrumbs-SGaWth6C.js';
|
|
3
|
+
export { A as ALL_COUNTRY_CODES, B as BreadcrumbItemInput, g as FaqItem, J as JobBreadcrumb, h as JsonLdBoard, N as NumberNotation, i as SENIORITY_ORDER, j as SalaryFaqEntry, k as SalaryJsonLdOptions, l as SalaryOccupationListOptions, b as buildJobBreadcrumbs, m as buildSalaryFaq, o as companyCategorySalaryJsonLd, p as companySalaryJsonLd, q as createBreadcrumbJsonLd, r as createJobPostingJsonLd, s as crossAxisSalaryJsonLd, t as faqJsonLd, c as formatSalaryStat, d as formatSalaryStatRange, u as itemListJsonLd, v as locationSalaryJsonLd, n as normalizeWebsiteUrl, w as skillSalaryJsonLd, x as sortBySeniority, y as titleSalaryJsonLd } from './breadcrumbs-SGaWth6C.js';
|
|
4
|
+
import './_spec-BZDv2dc5.js';
|
|
5
|
+
import './board-BTEZ0uiI.js';
|
|
6
|
+
import './jobs-BbLJfz1z.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Blog structured data on the `@cavuno/board` wire types, transcribed from
|
package/dist/server.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BoardSdk } from './index.mjs';
|
|
2
|
-
import './_spec-
|
|
3
|
-
import './search-
|
|
4
|
-
import './board-
|
|
5
|
-
import './jobs-
|
|
6
|
-
import './blog-
|
|
2
|
+
import './_spec-BZDv2dc5.mjs';
|
|
3
|
+
import './search-OKrdAHv8.mjs';
|
|
4
|
+
import './board-BF3Qao6J.mjs';
|
|
5
|
+
import './jobs-BX6d_sdd.mjs';
|
|
6
|
+
import './blog-DyDvyQrI.mjs';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Session cookie codec — pure (no framework imports, no node imports) so it
|
package/dist/server.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BoardSdk } from './index.js';
|
|
2
|
-
import './_spec-
|
|
3
|
-
import './search-
|
|
4
|
-
import './board-
|
|
5
|
-
import './jobs-
|
|
6
|
-
import './blog-
|
|
2
|
+
import './_spec-BZDv2dc5.js';
|
|
3
|
+
import './search-7B-mVRNA.js';
|
|
4
|
+
import './board-BTEZ0uiI.js';
|
|
5
|
+
import './jobs-BbLJfz1z.js';
|
|
6
|
+
import './blog-BHx6iH3Z.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Session cookie codec — pure (no framework imports, no node imports) so it
|
package/dist/sitemap.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BoardSdk } from './index.mjs';
|
|
2
|
-
import './_spec-
|
|
3
|
-
import './search-
|
|
4
|
-
import './board-
|
|
5
|
-
import './jobs-
|
|
6
|
-
import './blog-
|
|
2
|
+
import './_spec-BZDv2dc5.mjs';
|
|
3
|
+
import './search-OKrdAHv8.mjs';
|
|
4
|
+
import './board-BF3Qao6J.mjs';
|
|
5
|
+
import './jobs-BX6d_sdd.mjs';
|
|
6
|
+
import './blog-DyDvyQrI.mjs';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Sitemap primitives — the pure XML + bucket-filename logic behind a board
|
package/dist/sitemap.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BoardSdk } from './index.js';
|
|
2
|
-
import './_spec-
|
|
3
|
-
import './search-
|
|
4
|
-
import './board-
|
|
5
|
-
import './jobs-
|
|
6
|
-
import './blog-
|
|
2
|
+
import './_spec-BZDv2dc5.js';
|
|
3
|
+
import './search-7B-mVRNA.js';
|
|
4
|
+
import './board-BTEZ0uiI.js';
|
|
5
|
+
import './jobs-BbLJfz1z.js';
|
|
6
|
+
import './blog-BHx6iH3Z.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Sitemap primitives — the pure XML + bucket-filename logic behind a board
|
package/dist/suggest.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-OKrdAHv8.mjs';
|
|
2
|
+
import './_spec-BZDv2dc5.mjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/suggest` — framework-agnostic headless search-suggest
|
package/dist/suggest.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-
|
|
2
|
-
import './_spec-
|
|
1
|
+
import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-7B-mVRNA.js';
|
|
2
|
+
import './_spec-BZDv2dc5.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* `@cavuno/board/suggest` — framework-agnostic headless search-suggest
|
package/package.json
CHANGED
|
@@ -60,6 +60,48 @@ A module-scoped client is safe for concurrent SSR requests when it uses the serv
|
|
|
60
60
|
|
|
61
61
|
**Complete when:** a shared server client contains no per-user state and each authenticated request supplies its own headers.
|
|
62
62
|
|
|
63
|
+
## Record marketing consent for the signed-in person
|
|
64
|
+
|
|
65
|
+
Marketing consent is a property of the board user, never a guest capture. The
|
|
66
|
+
frontend owns the checkbox wording and the privacy-policy link — render your
|
|
67
|
+
own copy beside the control; the API records the decision, not the prose.
|
|
68
|
+
Leave any checkbox unticked by default and call nothing while it stays
|
|
69
|
+
unticked: absence of a record means no consent, never a default.
|
|
70
|
+
|
|
71
|
+
At sign-up, pass the tick through the register body so consent is recorded in
|
|
72
|
+
the same transaction that creates the user:
|
|
73
|
+
|
|
74
|
+
```ts snippet
|
|
75
|
+
await board.auth.register({
|
|
76
|
+
role: 'candidate',
|
|
77
|
+
method: 'emailpass',
|
|
78
|
+
email: form.email,
|
|
79
|
+
password: form.password,
|
|
80
|
+
displayName: form.displayName,
|
|
81
|
+
marketingConsent: form.marketingChecked,
|
|
82
|
+
});
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Later, read or change only the signed-in person's own consent through the
|
|
86
|
+
authenticated `me` namespace. There is intentionally no email parameter, so a
|
|
87
|
+
frontend cannot target another person. Withdrawal is always an explicit POST —
|
|
88
|
+
never a state-changing GET, which mail scanners would follow.
|
|
89
|
+
|
|
90
|
+
```ts snippet
|
|
91
|
+
const current = await board.me.marketingConsent.retrieve();
|
|
92
|
+
if (current?.status !== 'granted') {
|
|
93
|
+
await board.me.marketingConsent.grant();
|
|
94
|
+
}
|
|
95
|
+
await board.me.marketingConsent.withdraw();
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Call `grant()` only from a surface that displayed your disclosure wording.
|
|
99
|
+
Both calls are idempotent: repeating one changes nothing and emits no event.
|
|
100
|
+
|
|
101
|
+
**Complete when:** the checkbox defaults to unticked, unticked submits
|
|
102
|
+
nothing, grant is only reachable beside rendered disclosure copy, and
|
|
103
|
+
withdrawal is never implemented as a state-changing GET.
|
|
104
|
+
|
|
63
105
|
## Use the escape hatch for an untyped endpoint
|
|
64
106
|
|
|
65
107
|
`board.client.fetch<T>(path, options)` keeps the full request pipeline while providing a response type locally.
|
package/skills/manifest.json
CHANGED