@cavuno/board 4.11.0 → 4.13.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.
Files changed (41) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/{_spec-Ck02NvUF.d.mts → _spec-mFq9K67X.d.mts} +25 -1
  3. package/dist/{_spec-Ck02NvUF.d.ts → _spec-mFq9K67X.d.ts} +25 -1
  4. package/dist/{blog-ClwNmr_N.d.ts → blog-BJF7uypj.d.ts} +1 -1
  5. package/dist/{blog-CZUXieNu.d.mts → blog-ClPGMp-z.d.mts} +1 -1
  6. package/dist/{board-wHyyyAhT.d.mts → board-CkYDc1Lz.d.mts} +2 -2
  7. package/dist/{board-6XZx1x5M.d.ts → board-Po58Sn65.d.ts} +2 -2
  8. package/dist/{breadcrumbs-DJjtyjlf.d.mts → breadcrumbs-BSP53mOY.d.mts} +18 -6
  9. package/dist/{breadcrumbs-CPaEpS6h.d.ts → breadcrumbs-BZzQwS8O.d.ts} +18 -6
  10. package/dist/browser/cavuno-board.global.min.js +1 -1
  11. package/dist/{chunk-6454IFHS.mjs → chunk-OPMJ6YH5.mjs} +6 -3
  12. package/dist/filters.d.mts +2 -2
  13. package/dist/filters.d.ts +2 -2
  14. package/dist/format.d.mts +4 -4
  15. package/dist/format.d.ts +4 -4
  16. package/dist/format.mjs +1 -1
  17. package/dist/index.d.mts +86 -19
  18. package/dist/index.d.ts +86 -19
  19. package/dist/index.js +20 -6
  20. package/dist/index.mjs +20 -6
  21. package/dist/{jobs-iG5udM2R.d.mts → jobs-BWpm-Jf0.d.mts} +1 -1
  22. package/dist/{jobs-3BAwXBxR.d.ts → jobs-hZ3Kezhg.d.ts} +1 -1
  23. package/dist/{search-5DzB-OrD.d.mts → search-DRIGekdi.d.mts} +1 -1
  24. package/dist/{search-kfabRi5l.d.ts → search-DSLK6Cch.d.ts} +1 -1
  25. package/dist/{seo-DndU15zg.d.ts → seo-CMNJMZcT.d.ts} +1 -1
  26. package/dist/{seo-C_Mt1i-Y.d.mts → seo-D9wvr1nK.d.mts} +1 -1
  27. package/dist/seo-files.d.mts +2 -2
  28. package/dist/seo-files.d.ts +2 -2
  29. package/dist/seo.d.mts +6 -6
  30. package/dist/seo.d.ts +6 -6
  31. package/dist/seo.js +6 -3
  32. package/dist/seo.mjs +1 -1
  33. package/dist/server.d.mts +6 -6
  34. package/dist/server.d.ts +6 -6
  35. package/dist/sitemap.d.mts +6 -6
  36. package/dist/sitemap.d.ts +6 -6
  37. package/dist/suggest.d.mts +2 -2
  38. package/dist/suggest.d.ts +2 -2
  39. package/package.json +1 -1
  40. package/skills/cavuno-board-seo/JOB_AND_BREADCRUMBS.md +5 -2
  41. package/skills/manifest.json +1 -1
package/dist/seo.d.mts CHANGED
@@ -1,9 +1,9 @@
1
- import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-CZUXieNu.mjs';
2
- import { e as JsonLdObject } from './breadcrumbs-DJjtyjlf.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-DJjtyjlf.mjs';
4
- import './_spec-Ck02NvUF.mjs';
5
- import './board-wHyyyAhT.mjs';
6
- import './jobs-iG5udM2R.mjs';
1
+ import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-ClPGMp-z.mjs';
2
+ import { e as JsonLdObject } from './breadcrumbs-BSP53mOY.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-BSP53mOY.mjs';
4
+ import './_spec-mFq9K67X.mjs';
5
+ import './board-CkYDc1Lz.mjs';
6
+ import './jobs-BWpm-Jf0.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-ClwNmr_N.js';
2
- import { e as JsonLdObject } from './breadcrumbs-CPaEpS6h.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-CPaEpS6h.js';
4
- import './_spec-Ck02NvUF.js';
5
- import './board-6XZx1x5M.js';
6
- import './jobs-3BAwXBxR.js';
1
+ import { P as PublicBlogPostSummary, B as BlogAuthorEmbed } from './blog-BJF7uypj.js';
2
+ import { e as JsonLdObject } from './breadcrumbs-BZzQwS8O.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-BZzQwS8O.js';
4
+ import './_spec-mFq9K67X.js';
5
+ import './board-Po58Sn65.js';
6
+ import './jobs-hZ3Kezhg.js';
7
7
 
8
8
  /**
9
9
  * Blog structured data on the `@cavuno/board` wire types, transcribed from
package/dist/seo.js CHANGED
@@ -282,6 +282,9 @@ function buildJobBreadcrumbs(job) {
282
282
  }
283
283
 
284
284
  // src/seo/job-posting.ts
285
+ function organizationName(job, board) {
286
+ return job.company?.name ?? board.legalName ?? board.contact?.legalName ?? board.name ?? null;
287
+ }
285
288
  var EDUCATION_TO_CREDENTIAL = {
286
289
  high_school: "high school",
287
290
  associate_degree: "associate degree",
@@ -588,13 +591,13 @@ function createJobPostingJsonLd({
588
591
  return jsonLd;
589
592
  }
590
593
  function createIdentifier(job, board) {
591
- const organizationName = job.company?.name ?? board.name ?? null;
594
+ const name = organizationName(job, board);
592
595
  const identifier = { "@type": "PropertyValue", value: job.id };
593
- if (organizationName) identifier.name = organizationName;
596
+ if (name) identifier.name = name;
594
597
  return identifier;
595
598
  }
596
599
  function createHiringOrganization(job, board) {
597
- const name = job.company?.name ?? board.name ?? null;
600
+ const name = organizationName(job, board);
598
601
  if (!name) return null;
599
602
  const organization = { "@type": "Organization", name };
600
603
  const website = job.company?.website ?? null;
package/dist/seo.mjs CHANGED
@@ -17,7 +17,7 @@ import {
17
17
  skillSalaryJsonLd,
18
18
  sortBySeniority,
19
19
  titleSalaryJsonLd
20
- } from "./chunk-6454IFHS.mjs";
20
+ } from "./chunk-OPMJ6YH5.mjs";
21
21
  import {
22
22
  boardUrl,
23
23
  jobDetailPath
package/dist/server.d.mts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { BoardSdk } from './index.mjs';
2
- import './_spec-Ck02NvUF.mjs';
3
- import './search-5DzB-OrD.mjs';
4
- import './board-wHyyyAhT.mjs';
5
- import './jobs-iG5udM2R.mjs';
6
- import './seo-C_Mt1i-Y.mjs';
7
- import './blog-CZUXieNu.mjs';
2
+ import './_spec-mFq9K67X.mjs';
3
+ import './search-DRIGekdi.mjs';
4
+ import './board-CkYDc1Lz.mjs';
5
+ import './jobs-BWpm-Jf0.mjs';
6
+ import './seo-D9wvr1nK.mjs';
7
+ import './blog-ClPGMp-z.mjs';
8
8
 
9
9
  /**
10
10
  * Session cookie codec — pure (no framework imports, no node imports) so it
package/dist/server.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { BoardSdk } from './index.js';
2
- import './_spec-Ck02NvUF.js';
3
- import './search-kfabRi5l.js';
4
- import './board-6XZx1x5M.js';
5
- import './jobs-3BAwXBxR.js';
6
- import './seo-DndU15zg.js';
7
- import './blog-ClwNmr_N.js';
2
+ import './_spec-mFq9K67X.js';
3
+ import './search-DSLK6Cch.js';
4
+ import './board-Po58Sn65.js';
5
+ import './jobs-hZ3Kezhg.js';
6
+ import './seo-CMNJMZcT.js';
7
+ import './blog-BJF7uypj.js';
8
8
 
9
9
  /**
10
10
  * Session cookie codec — pure (no framework imports, no node imports) so it
@@ -1,10 +1,10 @@
1
1
  import { BoardSdk } from './index.mjs';
2
- import './_spec-Ck02NvUF.mjs';
3
- import './search-5DzB-OrD.mjs';
4
- import './board-wHyyyAhT.mjs';
5
- import './jobs-iG5udM2R.mjs';
6
- import './seo-C_Mt1i-Y.mjs';
7
- import './blog-CZUXieNu.mjs';
2
+ import './_spec-mFq9K67X.mjs';
3
+ import './search-DRIGekdi.mjs';
4
+ import './board-CkYDc1Lz.mjs';
5
+ import './jobs-BWpm-Jf0.mjs';
6
+ import './seo-D9wvr1nK.mjs';
7
+ import './blog-ClPGMp-z.mjs';
8
8
 
9
9
  /**
10
10
  * Sitemap primitives — the pure XML + bucket-filename logic behind a board
package/dist/sitemap.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { BoardSdk } from './index.js';
2
- import './_spec-Ck02NvUF.js';
3
- import './search-kfabRi5l.js';
4
- import './board-6XZx1x5M.js';
5
- import './jobs-3BAwXBxR.js';
6
- import './seo-DndU15zg.js';
7
- import './blog-ClwNmr_N.js';
2
+ import './_spec-mFq9K67X.js';
3
+ import './search-DSLK6Cch.js';
4
+ import './board-Po58Sn65.js';
5
+ import './jobs-hZ3Kezhg.js';
6
+ import './seo-CMNJMZcT.js';
7
+ import './blog-BJF7uypj.js';
8
8
 
9
9
  /**
10
10
  * Sitemap primitives — the pure XML + bucket-filename logic behind a board
@@ -1,5 +1,5 @@
1
- import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-5DzB-OrD.mjs';
2
- import './_spec-Ck02NvUF.mjs';
1
+ import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-DRIGekdi.mjs';
2
+ import './_spec-mFq9K67X.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-kfabRi5l.js';
2
- import './_spec-Ck02NvUF.js';
1
+ import { h as SuggestionItem, b as SearchSuggestQuery, F as FetchOptions, g as SuggestResult } from './search-DSLK6Cch.js';
2
+ import './_spec-mFq9K67X.js';
3
3
 
4
4
  /**
5
5
  * `@cavuno/board/suggest` — framework-agnostic headless search-suggest
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cavuno/board",
3
- "version": "4.11.0",
3
+ "version": "4.13.0",
4
4
  "description": "Build custom job boards and careers pages with Cavuno’s TypeScript SDK.",
5
5
  "keywords": [
6
6
  "api-client",
@@ -12,12 +12,15 @@ Google requires a location signal alongside `TELECOMMUTE`.
12
12
  ```ts snippet
13
13
  import { createJobPostingJsonLd } from '@cavuno/board/seo';
14
14
 
15
- const { name, logoUrl } = await board.context();
15
+ // Pass the context straight through: it carries `contact.legalName`, which
16
+ // names the organization for a job with no company of its own. Destructuring
17
+ // to `{ name, logoUrl }` silently drops that.
18
+ const context = await board.context();
16
19
  const job = await board.jobs.retrieve('senior-chef');
17
20
 
18
21
  const jsonLd = createJobPostingJsonLd({
19
22
  job,
20
- board: { name, logoUrl },
23
+ board: context,
21
24
  shareUrl:
22
25
  `https://jobs.example.com/companies/${job.company?.slug}/jobs/${job.slug}`,
23
26
  });
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "4.11.0",
2
+ "version": "4.13.0",
3
3
  "skills": [
4
4
  {
5
5
  "name": "cavuno-board-account",