sanity-plugin-seofields 1.7.0 → 1.8.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 (82) hide show
  1. package/README.md +3 -3
  2. package/dist/SchemaOrgJsonLdPreview-DJLkIPq4.d.cts +78 -0
  3. package/dist/SchemaOrgJsonLdPreview-DJLkIPq4.d.ts +78 -0
  4. package/dist/SeoHealthDashboard-AEKVVMUR-7NWV3C3Y.js +4 -0
  5. package/dist/SeoHealthDashboard-AEKVVMUR-7NWV3C3Y.js.map +1 -0
  6. package/dist/SeoHealthDashboard-AEKVVMUR-XWKJUH24.cjs +10 -0
  7. package/dist/SeoHealthDashboard-AEKVVMUR-XWKJUH24.cjs.map +1 -0
  8. package/dist/SeoHealthTool-2KKQJLJL.cjs +11 -0
  9. package/dist/{SeoHealthDashboard-PTUEVYZL.js.map → SeoHealthTool-2KKQJLJL.cjs.map} +1 -1
  10. package/dist/SeoHealthTool-3CUKGADZ.js +5 -0
  11. package/dist/{SeoHealthDashboard-IP5BJ322.cjs.map → SeoHealthTool-3CUKGADZ.js.map} +1 -1
  12. package/dist/{SeoPreview-WYH7NYNM.cjs → SeoPreview-3EXR6FD4.cjs} +3 -3
  13. package/dist/{SeoPreview-WYH7NYNM.cjs.map → SeoPreview-3EXR6FD4.cjs.map} +1 -1
  14. package/dist/{SeoPreview-KEGGQSPJ.js → SeoPreview-4PPAF4NO.js} +3 -3
  15. package/dist/{SeoPreview-KEGGQSPJ.js.map → SeoPreview-4PPAF4NO.js.map} +1 -1
  16. package/dist/{chunk-S367Y35J.cjs → chunk-254YHUN3.cjs} +2 -15
  17. package/dist/{chunk-S367Y35J.cjs.map → chunk-254YHUN3.cjs.map} +1 -1
  18. package/dist/{chunk-AW7OKBQQ.js → chunk-27XSYENH.js} +59 -5
  19. package/dist/chunk-27XSYENH.js.map +1 -0
  20. package/dist/{chunk-GWPOJSGW.cjs → chunk-B5IVI5LP.cjs} +821 -156
  21. package/dist/chunk-B5IVI5LP.cjs.map +1 -0
  22. package/dist/chunk-BNXMFD3T.cjs +431 -0
  23. package/dist/chunk-BNXMFD3T.cjs.map +1 -0
  24. package/dist/{chunk-2NMEKWO5.js → chunk-DDAAVRWG.js} +3 -15
  25. package/dist/{chunk-2NMEKWO5.js.map → chunk-DDAAVRWG.js.map} +1 -1
  26. package/dist/chunk-P6IOWIO2.cjs +480 -0
  27. package/dist/chunk-P6IOWIO2.cjs.map +1 -0
  28. package/dist/{chunk-FONJYVF2.js → chunk-UOCZFYYP.js} +5 -208
  29. package/dist/chunk-UOCZFYYP.js.map +1 -0
  30. package/dist/{chunk-HRKRV2X7.js → chunk-VR44E62I.js} +802 -147
  31. package/dist/chunk-VR44E62I.js.map +1 -0
  32. package/dist/chunk-WKXHX3GO.js +424 -0
  33. package/dist/chunk-WKXHX3GO.js.map +1 -0
  34. package/dist/{chunk-5YRH47VQ.cjs → chunk-XZDLJ2N6.cjs} +63 -6
  35. package/dist/chunk-XZDLJ2N6.cjs.map +1 -0
  36. package/dist/cli.js +18 -18
  37. package/dist/{component-DQ4KuQQD.d.ts → component-BzI-LHPw.d.cts} +3 -27
  38. package/dist/{component-D1sBm6ts.d.cts → component-DEXwtemT.d.ts} +3 -27
  39. package/dist/define-cli.cjs +1 -1
  40. package/dist/define-cli.js +1 -1
  41. package/dist/index.cjs +1050 -94
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.d.cts +76 -295
  44. package/dist/index.d.ts +76 -295
  45. package/dist/index.js +1009 -63
  46. package/dist/index.js.map +1 -1
  47. package/dist/next.cjs +136 -122
  48. package/dist/next.cjs.map +1 -1
  49. package/dist/next.d.cts +9 -3
  50. package/dist/next.d.ts +9 -3
  51. package/dist/next.js +38 -32
  52. package/dist/next.js.map +1 -1
  53. package/dist/schema/next.cjs +103 -95
  54. package/dist/schema/next.d.cts +4 -4
  55. package/dist/schema/next.d.ts +4 -4
  56. package/dist/schema/next.js +4 -4
  57. package/dist/schema.cjs +202 -160
  58. package/dist/schema.cjs.map +1 -1
  59. package/dist/schema.d.cts +26 -16
  60. package/dist/schema.d.ts +26 -16
  61. package/dist/schema.js +25 -7
  62. package/dist/schema.js.map +1 -1
  63. package/dist/{types-9_wbCIi9.d.ts → types-BXSCbl6p.d.cts} +29 -2
  64. package/dist/{types-_wBLg6RV.d.cts → types-B_vjMPtM.d.cts} +1 -1
  65. package/dist/{types-Bb49oRBV.d.cts → types-C19cQx5D.d.ts} +29 -2
  66. package/dist/{types-CeBULNFF.d.ts → types-CW8qFdAn.d.ts} +1 -1
  67. package/dist/{types-B91ena4g.d.cts → types-yVmQfby9.d.cts} +7 -0
  68. package/dist/{types-B91ena4g.d.ts → types-yVmQfby9.d.ts} +7 -0
  69. package/package.json +2 -1
  70. package/dist/SeoHealthDashboard-IP5BJ322.cjs +0 -10
  71. package/dist/SeoHealthDashboard-PTUEVYZL.js +0 -4
  72. package/dist/SeoHealthTool-CZZRMWQK.cjs +0 -14
  73. package/dist/SeoHealthTool-CZZRMWQK.cjs.map +0 -1
  74. package/dist/SeoHealthTool-IULT4G25.js +0 -12
  75. package/dist/SeoHealthTool-IULT4G25.js.map +0 -1
  76. package/dist/chunk-5YRH47VQ.cjs.map +0 -1
  77. package/dist/chunk-ARELX3GK.cjs +0 -689
  78. package/dist/chunk-ARELX3GK.cjs.map +0 -1
  79. package/dist/chunk-AW7OKBQQ.js.map +0 -1
  80. package/dist/chunk-FONJYVF2.js.map +0 -1
  81. package/dist/chunk-GWPOJSGW.cjs.map +0 -1
  82. package/dist/chunk-HRKRV2X7.js.map +0 -1
package/dist/schema.js CHANGED
@@ -1,11 +1,11 @@
1
- import { nameField, urlField, descriptionField, inLanguageField, polymorphicPublisher, potentialActionSearch, issnField, schemaOrgWebPage, schemaOrgPerson, schemaOrgBreadcrumbList, schemaOrgImageObject, schemaOrgArticle, schemaOrgBlogPosting, schemaOrgFAQPage, schemaOrgHowTo, schemaOrgProduct, schemaOrgOffer, schemaOrgAggregateRating, schemaOrgReview, schemaOrgBrand, schemaOrgLocalBusiness, schemaOrgPostalAddress, schemaOrgContactPoint, schemaOrgSoftwareApplication, schemaOrgWebApplication, schemaOrgEvent, schemaOrgPlace, schemaOrgVideoObject, schemaOrgCourse, schemaOrgRecipe, schemaOrgService, schemaOrgSocialMediaPosting, schemaOrgLegalService, schemaOrgCountry, schemaOrgJobPosting, schemaOrgRestaurant, schemaOrgMovie, schemaOrgBook, schemaOrgNewsArticle, schemaOrgOpinionNewsArticle, schemaOrgItemList, schemaOrgProfilePage, schemaOrgMusicRecording, schemaOrgMusicAlbum, generateSchemaType, SchemaOrgIcons } from './chunk-HRKRV2X7.js';
2
- export { IETF_LANGUAGE_OPTIONS, buildGenericJsonLd, datePublishedField, descriptionField, generateSchemaType, headlineField, inLanguageField, nameField, polymorphicAdditionalType, polymorphicArchivedAt, polymorphicAuthor, polymorphicCitation, polymorphicContentRating, polymorphicContributor, polymorphicCopyrightHolder, polymorphicCreator, polymorphicFunder, polymorphicGenre, polymorphicIdentifier, polymorphicImage, polymorphicIsBasedOn, polymorphicIsPartOf, polymorphicKeywords, polymorphicLicense, polymorphicLocationCreated, polymorphicMaintainer, polymorphicMaterial, polymorphicOwner, polymorphicPublisher, schemaOrgAggregateRating, schemaOrgArticle, schemaOrgBlogPosting, schemaOrgBook, schemaOrgBrand, schemaOrgBreadcrumbList, schemaOrgContactPoint, schemaOrgCountry, schemaOrgCourse, schemaOrgEvent, schemaOrgFAQPage, schemaOrgHowTo, schemaOrgImageObject, schemaOrgItemList, schemaOrgJobPosting, schemaOrgLegalService, schemaOrgLocalBusiness, schemaOrgMovie, schemaOrgMusicAlbum, schemaOrgMusicRecording, schemaOrgNewsArticle, schemaOrgOffer, schemaOrgOpinionNewsArticle, schemaOrgPerson, schemaOrgPlace, schemaOrgPostalAddress, schemaOrgProduct, schemaOrgProfilePage, schemaOrgRecipe, schemaOrgRestaurant, schemaOrgReview, schemaOrgService, schemaOrgSocialMediaPosting, schemaOrgSoftwareApplication, schemaOrgVideoObject, schemaOrgWebApplication, schemaOrgWebPage, urlField, withCreativeWorkCommons, withThingCommons } from './chunk-HRKRV2X7.js';
3
- import { __spreadProps, __spreadValues } from './chunk-2NMEKWO5.js';
1
+ import { nameField, urlField, descriptionField, inLanguageField, polymorphicPublisher, potentialActionSearch, issnField, schemaOrgWebPage, schemaOrgPerson, schemaOrgBreadcrumbList, schemaOrgImageObject, schemaOrgArticle, schemaOrgBlogPosting, schemaOrgFAQPage, schemaOrgHowTo, schemaOrgProduct, schemaOrgOffer, schemaOrgAggregateRating, schemaOrgReview, schemaOrgBrand, schemaOrgLocalBusiness, schemaOrgPostalAddress, schemaOrgContactPoint, schemaOrgSoftwareApplication, schemaOrgWebApplication, schemaOrgEvent, schemaOrgPlace, schemaOrgVideoObject, schemaOrgCourse, schemaOrgRecipe, schemaOrgService, schemaOrgSocialMediaPosting, schemaOrgLegalService, schemaOrgCountry, schemaOrgJobPosting, schemaOrgRestaurant, schemaOrgMovie, schemaOrgBook, schemaOrgNewsArticle, schemaOrgOpinionNewsArticle, schemaOrgItemList, schemaOrgProfilePage, schemaOrgMusicRecording, schemaOrgMusicAlbum, generateSchemaType, SchemaOrgIcons, SchemaOrgJsonLdPreview } from './chunk-VR44E62I.js';
2
+ export { IETF_LANGUAGE_OPTIONS, SchemaOrgJsonLdPreview as SchemaOrgDocumentJsonLdPreview, SchemaOrgJsonLdPreview, SchemaOrgJsonLdPreviewInput, SchemaOrgScripts, buildGenericJsonLd, buildSchemaOrgJsonLd, buildSchemaOrgJsonLds, datePublishedField, descriptionField, generateSchemaType, headlineField, inLanguageField, nameField, polymorphicAdditionalType, polymorphicArchivedAt, polymorphicAuthor, polymorphicCitation, polymorphicContentRating, polymorphicContributor, polymorphicCopyrightHolder, polymorphicCreator, polymorphicFunder, polymorphicGenre, polymorphicIdentifier, polymorphicImage, polymorphicIsBasedOn, polymorphicIsPartOf, polymorphicKeywords, polymorphicLicense, polymorphicLocationCreated, polymorphicMaintainer, polymorphicMaterial, polymorphicOwner, polymorphicPublisher, schemaOrgAggregateRating, schemaOrgArticle, schemaOrgBlogPosting, schemaOrgBook, schemaOrgBrand, schemaOrgBreadcrumbList, schemaOrgContactPoint, schemaOrgCountry, schemaOrgCourse, schemaOrgEvent, schemaOrgFAQPage, schemaOrgHowTo, schemaOrgImageObject, schemaOrgItemList, schemaOrgJobPosting, schemaOrgLegalService, schemaOrgLocalBusiness, schemaOrgMovie, schemaOrgMusicAlbum, schemaOrgMusicRecording, schemaOrgNewsArticle, schemaOrgOffer, schemaOrgOpinionNewsArticle, schemaOrgPerson, schemaOrgPlace, schemaOrgPostalAddress, schemaOrgProduct, schemaOrgProfilePage, schemaOrgRecipe, schemaOrgRestaurant, schemaOrgReview, schemaOrgService, schemaOrgSocialMediaPosting, schemaOrgSoftwareApplication, schemaOrgVideoObject, schemaOrgWebApplication, schemaOrgWebPage, urlField, withCreativeWorkCommons, withThingCommons } from './chunk-VR44E62I.js';
3
+ import { __spreadProps, __spreadValues } from './chunk-DDAAVRWG.js';
4
4
  import { AddIcon, SearchIcon } from '@sanity/icons';
5
5
  import { Stack, Button, Dialog, Box, TextInput, Card, Flex, Text, Heading, Grid } from '@sanity/ui';
6
6
  import { useState, useCallback, useMemo } from 'react';
7
- import { jsx, jsxs } from 'react/jsx-runtime';
8
- import { definePlugin, defineType } from 'sanity';
7
+ import { definePlugin, defineType, useFormValue } from 'sanity';
8
+ import { jsxs, jsx } from 'react/jsx-runtime';
9
9
 
10
10
  // src/schema/components/schemaTypeMetadata.ts
11
11
  var CATEGORY_LABELS = {
@@ -418,8 +418,23 @@ function TypeArrayFunctions(props) {
418
418
  ] });
419
419
  }
420
420
  function TypePickerInput(props) {
421
- const { renderDefault } = props;
422
- return /* @__PURE__ */ jsx(Stack, { space: 3, children: renderDefault(__spreadProps(__spreadValues({}, props), { arrayFunctions: TypeArrayFunctions })) });
421
+ var _a, _b;
422
+ const { renderDefault, schemaType } = props;
423
+ const rootDocument = (_a = useFormValue([])) != null ? _a : {};
424
+ const previewConfig = (_b = schemaType.options) == null ? void 0 : _b.schemaOrgJsonLdPreview;
425
+ const options = typeof previewConfig === "object" ? previewConfig : void 0;
426
+ const value = props.value;
427
+ return /* @__PURE__ */ jsxs(Stack, { space: 3, children: [
428
+ renderDefault(__spreadProps(__spreadValues({}, props), { arrayFunctions: TypeArrayFunctions })),
429
+ previewConfig !== false && /* @__PURE__ */ jsx(
430
+ SchemaOrgJsonLdPreview,
431
+ __spreadProps(__spreadValues({}, options), {
432
+ value: value != null ? value : null,
433
+ document: rootDocument,
434
+ fieldPreview: true
435
+ })
436
+ )
437
+ ] });
423
438
  }
424
439
 
425
440
  // src/schema/organization/schema.ts
@@ -842,6 +857,9 @@ var schemaOrg = definePlugin((config = {}) => {
842
857
  of: ALL_SCHEMA_ORG_TYPES.map((type) => ({ type })),
843
858
  components: {
844
859
  input: TypePickerInput
860
+ },
861
+ options: {
862
+ schemaOrgJsonLdPreview: c.jsonLdPreview
845
863
  }
846
864
  })
847
865
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/schema/components/schemaTypeMetadata.ts","../src/schema/components/TypePickerInput.tsx","../src/schema/organization/schema.ts","../src/schema/website/schema.ts","../src/schema/schemaOrg.ts"],"names":[],"mappings":";;;;;;;;;;AA4BO,IAAM,eAAA,GAAsD;AAAA,EACjE,OAAA,EAAS,iBAAA;AAAA,EACT,QAAA,EAAU,oBAAA;AAAA,EACV,KAAA,EAAO,OAAA;AAAA,EACP,MAAA,EAAQ,wBAAA;AAAA,EACR,UAAA,EAAY,YAAA;AAAA,EACZ,QAAA,EAAU,mBAAA;AAAA,EACV,QAAA,EAAU,UAAA;AAAA,EACV,SAAA,EAAW;AACb;AAEO,IAAM,cAAA,GAAuC;AAAA,EAClD,SAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF;AAEO,IAAM,oBAAA,GAAyC;AAAA;AAAA,EAEpD;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa,0DAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,QAAA,EAAU,CAAC,MAAA,EAAQ,UAAA,EAAY,eAAe;AAAA,GAChD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,UAAA;AAAA,IACP,WAAA,EAAa,qDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,QAAA,EAAU,CAAC,MAAA,EAAQ,OAAA,EAAS,WAAW,SAAS;AAAA,GAClD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa,mDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,MAAA,EAAQ,MAAA,EAAQ,MAAA,EAAQ,aAAa,OAAO;AAAA,GACzD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,sBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,oDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,QAAA,EAAU,CAAC,MAAA,EAAQ,MAAA,EAAQ,SAAS;AAAA,GACtC;AAAA,EACA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,UAAA;AAAA,IACP,WAAA,EAAa,sDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,QAAA,EAAU,CAAC,KAAA,EAAO,WAAA,EAAa,WAAW,MAAM;AAAA,GAClD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,QAAA;AAAA,IACP,WAAA,EAAa,4DAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,UAAA,EAAY,OAAA,EAAS,OAAA,EAAS,gBAAgB,KAAK;AAAA,GAChE;AAAA,EACA;AAAA,IACE,IAAA,EAAM,iBAAA;AAAA,IACN,KAAA,EAAO,QAAA;AAAA,IACP,WAAA,EAAa,yDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,SAAA,EAAW,MAAA,EAAQ,aAAA,EAAe,aAAa,MAAM;AAAA,GAClE;AAAA,EACA;AAAA,IACE,IAAA,EAAM,6BAAA;AAAA,IACN,KAAA,EAAO,sBAAA;AAAA,IACP,WAAA,EAAa,wDAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,QAAA,EAAU,MAAA,EAAQ,OAAA,EAAS,WAAW,UAAU;AAAA,GAC7D;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa,mDAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,UAAU,CAAC,WAAA,EAAa,MAAA,EAAQ,KAAA,EAAO,SAAS,OAAO;AAAA,GACzD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,OAAA;AAAA,IACP,WAAA,EAAa,oDAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,MAAA,EAAQ,YAAY,cAAc;AAAA,GACxD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,0BAAA;AAAA,IACN,KAAA,EAAO,kBAAA;AAAA,IACP,WAAA,EAAa,uCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,QAAA,EAAU,SAAS,SAAS;AAAA,GAClD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,iBAAA;AAAA,IACN,KAAA,EAAO,QAAA;AAAA,IACP,WAAA,EAAa,2CAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,UAAA,EAAY,aAAA,EAAe,UAAU,UAAU;AAAA,GAC5D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,OAAA;AAAA,IACP,WAAA,EAAa,iCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,OAAA,EAAS,cAAc;AAAA,GAC7C;AAAA,EACA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa,kDAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,YAAA,EAAc,cAAA,EAAgB,YAAY,SAAS;AAAA,GAChE;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,iBAAA;AAAA,IACN,KAAA,EAAO,QAAA;AAAA,IACP,WAAA,EAAa,wDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,QAAA,EAAU,CAAC,QAAA,EAAU,SAAA,EAAW,YAAY,SAAS;AAAA,GACvD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,uBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,wDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,QAAA,EAAU,CAAC,SAAA,EAAW,UAAA,EAAY,eAAe,KAAK;AAAA,GACxD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,wBAAA;AAAA,IACN,KAAA,EAAO,gBAAA;AAAA,IACP,WAAA,EAAa,mDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,UAAU,CAAC,OAAA,EAAS,YAAA,EAAc,MAAA,EAAQ,SAAS,MAAM;AAAA,GAC3D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,uBAAA;AAAA,IACN,KAAA,EAAO,eAAA;AAAA,IACP,WAAA,EAAa,qDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,OAAA,EAAS,WAAW,UAAU;AAAA,GACpD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,wBAAA;AAAA,IACN,KAAA,EAAO,gBAAA;AAAA,IACP,WAAA,EAAa,2BAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,UAAU,CAAC,SAAA,EAAW,QAAA,EAAU,KAAA,EAAO,QAAQ,SAAS;AAAA,GAC1D;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,sBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,4CAAA;AAAA,IACb,QAAA,EAAU,OAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,SAAA,EAAW,WAAW,cAAc;AAAA,GAC1D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,sBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,oDAAA;AAAA,IACb,QAAA,EAAU,OAAA;AAAA,IACV,UAAU,CAAC,OAAA,EAAS,SAAA,EAAW,OAAA,EAAS,QAAQ,MAAM;AAAA,GACxD;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,yBAAA;AAAA,IACN,KAAA,EAAO,iBAAA;AAAA,IACP,WAAA,EAAa,iDAAA;AAAA,IACb,QAAA,EAAU,YAAA;AAAA,IACV,QAAA,EAAU,CAAC,YAAA,EAAc,MAAA,EAAQ,aAAa,OAAO;AAAA,GACvD;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,OAAA;AAAA,IACP,WAAA,EAAa,6CAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,YAAA,EAAc,QAAA,EAAU,WAAW,SAAS;AAAA,GACzD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,OAAA;AAAA,IACP,WAAA,EAAa,mCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,UAAA,EAAY,YAAY,MAAM;AAAA,GACpD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,kBAAA;AAAA,IACN,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa,mEAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,SAAA,EAAW,QAAA,EAAU,aAAa,QAAQ;AAAA,GACvD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,uBAAA;AAAA,IACN,KAAA,EAAO,eAAA;AAAA,IACP,WAAA,EAAa,qDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,UAAU,CAAC,KAAA,EAAO,QAAA,EAAU,UAAA,EAAY,QAAQ,OAAO;AAAA,GACzD;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,8BAAA;AAAA,IACN,KAAA,EAAO,sBAAA;AAAA,IACP,WAAA,EAAa,gCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,UAAU,CAAC,KAAA,EAAO,MAAA,EAAQ,SAAA,EAAW,WAAW,QAAQ;AAAA,GAC1D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,yBAAA;AAAA,IACN,KAAA,EAAO,iBAAA;AAAA,IACP,WAAA,EAAa,qCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,QAAA,EAAU,CAAC,QAAA,EAAU,MAAA,EAAQ,UAAU,OAAO;AAAA,GAChD;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,iBAAA;AAAA,IACN,KAAA,EAAO,QAAA;AAAA,IACP,WAAA,EAAa,wCAAA;AAAA,IACb,QAAA,EAAU,WAAA;AAAA,IACV,UAAU,CAAC,UAAA,EAAY,OAAA,EAAS,UAAA,EAAY,YAAY,UAAU;AAAA,GACpE;AAAA;AAAA,EAGA;AAAA,IACE,IAAA,EAAM,qBAAA;AAAA,IACN,KAAA,EAAO,aAAA;AAAA,IACP,WAAA,EAAa,wDAAA;AAAA,IACb,QAAA,EAAU,QAAA;AAAA,IACV,UAAU,CAAC,KAAA,EAAO,UAAU,QAAA,EAAU,YAAA,EAAc,WAAW,MAAM;AAAA,GACvE;AAAA,EACA;AAAA,IACE,IAAA,EAAM,qBAAA;AAAA,IACN,KAAA,EAAO,YAAA;AAAA,IACP,WAAA,EAAa,uCAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,UAAU,CAAC,YAAA,EAAc,QAAA,EAAU,MAAA,EAAQ,WAAW,QAAQ;AAAA,GAChE;AAAA,EACA;AAAA,IACE,IAAA,EAAM,gBAAA;AAAA,IACN,KAAA,EAAO,OAAA;AAAA,IACP,WAAA,EAAa,6CAAA;AAAA,IACb,QAAA,EAAU,OAAA;AAAA,IACV,QAAA,EAAU,CAAC,OAAA,EAAS,MAAA,EAAQ,UAAU,gBAAgB;AAAA,GACxD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,eAAA;AAAA,IACN,KAAA,EAAO,MAAA;AAAA,IACP,WAAA,EAAa,2CAAA;AAAA,IACb,QAAA,EAAU,UAAA;AAAA,IACV,UAAU,CAAC,MAAA,EAAQ,OAAA,EAAS,aAAA,EAAe,SAAS,MAAM;AAAA,GAC5D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,sBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,wEAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,MAAA,EAAQ,YAAA,EAAc,OAAA,EAAS,SAAS,QAAQ;AAAA,GAC7D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,6BAAA;AAAA,IACN,KAAA,EAAO,sBAAA;AAAA,IACP,WAAA,EAAa,gFAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,SAAA,EAAW,WAAA,EAAa,QAAA,EAAU,cAAc,OAAO;AAAA,GACpE;AAAA,EACA;AAAA,IACE,IAAA,EAAM,mBAAA;AAAA,IACN,KAAA,EAAO,WAAA;AAAA,IACP,WAAA,EAAa,mDAAA;AAAA,IACb,QAAA,EAAU,YAAA;AAAA,IACV,QAAA,EAAU,CAAC,MAAA,EAAQ,UAAA,EAAY,SAAS,YAAY;AAAA,GACtD;AAAA,EACA;AAAA,IACE,IAAA,EAAM,sBAAA;AAAA,IACN,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,8CAAA;AAAA,IACb,QAAA,EAAU,SAAA;AAAA,IACV,UAAU,CAAC,SAAA,EAAW,OAAA,EAAS,KAAA,EAAO,UAAU,SAAS;AAAA,GAC3D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,yBAAA;AAAA,IACN,KAAA,EAAO,iBAAA;AAAA,IACP,WAAA,EAAa,oCAAA;AAAA,IACb,QAAA,EAAU,OAAA;AAAA,IACV,UAAU,CAAC,MAAA,EAAQ,OAAA,EAAS,OAAA,EAAS,aAAa,QAAQ;AAAA,GAC5D;AAAA,EACA;AAAA,IACE,IAAA,EAAM,qBAAA;AAAA,IACN,KAAA,EAAO,aAAA;AAAA,IACP,WAAA,EAAa,wCAAA;AAAA,IACb,QAAA,EAAU,OAAA;AAAA,IACV,UAAU,CAAC,OAAA,EAAS,SAAS,QAAA,EAAU,IAAA,EAAM,MAAM,SAAS;AAAA;AAEhE;AC9TA,SAAS,aAAA,CAAc,MAAsB,KAAA,EAAwB;AACnE,EAAA,MAAM,CAAA,GAAI,MAAM,WAAA,EAAY;AAC5B,EAAA,OACE,IAAA,CAAK,KAAA,CAAM,WAAA,EAAY,CAAE,QAAA,CAAS,CAAC,CAAA,IACnC,IAAA,CAAK,WAAA,CAAY,WAAA,EAAY,CAAE,QAAA,CAAS,CAAC,CAAA,IACzC,IAAA,CAAK,QAAA,CAAS,IAAA,CAAK,CAAC,EAAA,KAAO,GAAG,WAAA,EAAY,CAAE,QAAA,CAAS,CAAC,CAAC,CAAA;AAE3D;AAEA,SAAS,gBAAgB,KAAA,EAAoE;AAC3F,EAAA,MAAM,GAAA,uBAAU,GAAA,EAA0C;AAC1D,EAAA,KAAA,MAAW,OAAO,cAAA,EAAgB;AAChC,IAAA,MAAM,UAAU,KAAA,CAAM,MAAA,CAAO,CAAC,CAAA,KAAM,CAAA,CAAE,aAAa,GAAG,CAAA;AACtD,IAAA,IAAI,OAAA,CAAQ,MAAA,EAAQ,GAAA,CAAI,GAAA,CAAI,KAAK,OAAO,CAAA;AAAA,EAC1C;AACA,EAAA,OAAO,GAAA;AACT;AAKA,SAAS,mBAAmB,KAAA,EAA4D;AACtF,EAAA,MAAM,EAAC,aAAA,EAAe,UAAA,EAAY,YAAA,EAAY,GAAI,KAAA;AAClD,EAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,SAAS,KAAK,CAAA;AACtC,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,SAAS,EAAE,CAAA;AAEvC,EAAA,MAAM,OAAA,GAAU,YAAY,MAAM;AAChC,IAAA,OAAA,CAAQ,KAAK,CAAA;AACb,IAAA,SAAA,CAAU,EAAE,CAAA;AAAA,EACd,CAAA,EAAG,EAAE,CAAA;AACL,EAAA,MAAM,SAAS,WAAA,CAAY,MAAM,QAAQ,IAAI,CAAA,EAAG,EAAE,CAAA;AAClD,EAAA,MAAM,kBAAA,GAAqB,WAAA,CAAY,CAAC,CAAA,KAAqC;AAC3E,IAAA,SAAA,CAAU,CAAA,CAAE,cAAc,KAAK,CAAA;AAAA,EACjC,CAAA,EAAG,EAAE,CAAA;AAGL,EAAA,MAAM,cAAA,GAAiB,QAAQ,MAAM;AACnC,IAAA,MAAM,SAAA,GAAY,IAAI,GAAA,CAAI,UAAA,CAAW,EAAA,CAAG,IAAI,CAAC,CAAA,KAAM,CAAA,CAAE,IAAI,CAAC,CAAA;AAC1D,IAAA,OAAO,oBAAA,CAAqB,OAAO,CAAC,CAAA,KAAM,UAAU,GAAA,CAAI,CAAA,CAAE,IAAI,CAAC,CAAA;AAAA,EACjE,CAAA,EAAG,CAAC,UAAA,CAAW,EAAE,CAAC,CAAA;AAGlB,EAAA,MAAM,QAAA,GAAW,OAAA;AAAA,IACf,MAAO,MAAA,GAAS,cAAA,CAAe,MAAA,CAAO,CAAC,MAAM,aAAA,CAAc,CAAA,EAAG,MAAM,CAAC,CAAA,GAAI,cAAA;AAAA,IACzE,CAAC,gBAAgB,MAAM;AAAA,GACzB;AAEA,EAAA,MAAM,OAAA,GAAU,QAAQ,MAAM,eAAA,CAAgB,QAAQ,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AAEnE,EAAA,MAAM,YAAA,GAAe,WAAA;AAAA,IACnB,CAAC,QAAA,KAAqB;AACpB,MAAA,MAAM,UAAA,GAAa,WAAW,EAAA,CAAG,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,SAAS,QAAQ,CAAA;AAChE,MAAA,IAAI,UAAA,EAAY;AAEd,QAAA,MAAM,KAAA,GAAQ,cAAc,UAAiB,CAAA;AAC7C,QAAA,YAAA,CAAa,KAAK,CAAA;AAAA,MACpB;AACA,MAAA,OAAA,EAAQ;AAAA,IACV,CAAA;AAAA,IACA,CAAC,UAAA,CAAW,EAAA,EAAI,aAAA,EAAe,cAAc,OAAO;AAAA,GACtD;AAEA,EAAA,MAAM,eAAA,GAAkB,YAAY,CAAC,QAAA,KAAqB,aAAa,QAAQ,CAAA,EAAG,CAAC,YAAY,CAAC,CAAA;AAEhG,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAM,KAAA,EAAO,CAAA,EACZ,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,MAAA,EAAA,EAAO,MAAM,OAAA,EAAS,IAAA,EAAK,mBAAkB,IAAA,EAAK,OAAA,EAAQ,SAAS,MAAA,EAAQ,CAAA;AAAA,IAE3E,IAAA,oBACC,GAAA;AAAA,MAAC,MAAA;AAAA,MAAA;AAAA,QACC,MAAA,EAAO,qBAAA;AAAA,QACP,EAAA,EAAG,oBAAA;AAAA,QACH,OAAA;AAAA,QACA,OAAA,EAAS,GAAA;AAAA,QACT,KAAA,EAAO,CAAA;AAAA,QAEP,8BAAC,GAAA,EAAA,EAAI,OAAA,EAAS,GACZ,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAM,OAAO,CAAA,EAEZ,QAAA,EAAA;AAAA,0BAAA,GAAA;AAAA,YAAC,SAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAM,UAAA;AAAA,cACN,WAAA,EAAY,2BAAA;AAAA,cACZ,KAAA,EAAO,MAAA;AAAA,cACP,QAAA,EAAU,kBAAA;AAAA,cACV,SAAA,EAAS;AAAA;AAAA,WACX;AAAA,UAGC,OAAA,CAAQ,SAAS,CAAA,mBAChB,GAAA,CAAC,QAAK,OAAA,EAAS,CAAA,EAAG,MAAK,aAAA,EACrB,QAAA,kBAAA,GAAA,CAAC,QAAK,KAAA,EAAM,QAAA,EAAS,SAAQ,QAAA,EAC3B,QAAA,kBAAA,GAAA,CAAC,QAAK,KAAA,EAAK,IAAA,EAAC,MAAM,CAAA,EAAG,QAAA,EAAA,iCAAA,EAErB,GACF,CAAA,EACF,CAAA,uBAEC,KAAA,EAAA,EAAM,KAAA,EAAO,GACX,QAAA,EAAA,KAAA,CAAM,IAAA,CAAK,QAAQ,OAAA,EAAS,EAAE,GAAA,CAAI,CAAC,CAAC,QAAA,EAAU,KAAK,sBAClD,IAAA,CAAC,KAAA,EAAA,EAAqB,OAAO,CAAA,EAC3B,QAAA,EAAA;AAAA,4BAAA,GAAA;AAAA,cAAC,OAAA;AAAA,cAAA;AAAA,gBACC,IAAA,EAAM,CAAA;AAAA,gBACN,KAAA,EAAO,EAAC,aAAA,EAAe,WAAA,EAAa,eAAe,QAAA,EAAQ;AAAA,gBAE1D,0BAAgB,QAAQ;AAAA;AAAA,aAC3B;AAAA,4BACA,GAAA,CAAC,IAAA,EAAA,EAAK,OAAA,EAAS,CAAC,CAAA,EAAG,CAAA,EAAG,CAAC,CAAA,EAAG,GAAA,EAAK,CAAA,EAC5B,QAAA,EAAA,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,KAAS;AACnB,cAAA,MAAM,UAAA,GAAa,WAAW,EAAA,CAAG,IAAA,CAAK,CAAC,CAAA,KAAM,CAAA,CAAE,IAAA,KAAS,IAAA,CAAK,IAAI,CAAA;AACjE,cAAA,MAAM,OAAO,UAAA,IAAA,IAAA,GAAA,MAAA,GAAA,UAAA,CAAY,IAAA;AACzB,cAAA,uBACE,GAAA;AAAA,gBAAC,IAAA;AAAA,gBAAA;AAAA,kBAEC,EAAA,EAAG,QAAA;AAAA,kBACH,OAAA,EAAS,CAAA;AAAA,kBACT,MAAA,EAAQ,CAAA;AAAA,kBACR,MAAA,EAAQ,CAAA;AAAA,kBACR,IAAA,EAAK,SAAA;AAAA,kBACL,OAAA,EAAS,MAAM,eAAA,CAAgB,IAAA,CAAK,IAAI,CAAA;AAAA,kBACxC,KAAA,EAAO,EAAC,MAAA,EAAQ,SAAA,EAAW,WAAW,MAAA,EAAM;AAAA,kBAE5C,QAAA,kBAAA,IAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAK,CAAA,EAAG,OAAM,YAAA,EACjB,QAAA,EAAA;AAAA,oBAAA,IAAA,wBACE,GAAA,EAAA,EAAI,KAAA,EAAO,EAAC,UAAA,EAAY,GAAG,SAAA,EAAW,CAAA,EAAC,EACtC,QAAA,kBAAA,GAAA,CAAC,QAAK,IAAA,EAAM,CAAA,EACV,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAK,GACR,CAAA,EACF,CAAA;AAAA,oCAEF,IAAA,CAAC,KAAA,EAAA,EAAM,KAAA,EAAO,CAAA,EACZ,QAAA,EAAA;AAAA,sCAAA,GAAA,CAAC,QAAK,MAAA,EAAO,UAAA,EAAW,IAAA,EAAM,CAAA,EAC3B,eAAK,KAAA,EACR,CAAA;AAAA,0CACC,IAAA,EAAA,EAAK,KAAA,EAAK,MAAC,IAAA,EAAM,CAAA,EACf,eAAK,WAAA,EACR;AAAA,qBAAA,EACF;AAAA,mBAAA,EACF;AAAA,iBAAA;AAAA,gBAzBK,IAAA,CAAK;AAAA,eA0BZ;AAAA,YAEJ,CAAC,CAAA,EACH;AAAA,WAAA,EAAA,EA1CU,QA2CZ,CACD,CAAA,EACH;AAAA,SAAA,EAEJ,CAAA,EACF;AAAA;AAAA;AACF,GAAA,EAEJ,CAAA;AAEJ;AAoBe,SAAR,gBAAiC,KAAA,EAAgC;AACtE,EAAA,MAAM,EAAC,eAAa,GAAI,KAAA;AACxB,EAAA,uBAAO,GAAA,CAAC,KAAA,EAAA,EAAM,KAAA,EAAO,CAAA,EAAI,QAAA,EAAA,aAAA,CAAc,aAAA,CAAA,cAAA,CAAA,EAAA,EAAI,KAAA,CAAA,EAAJ,EAAW,cAAA,EAAgB,kBAAA,EAAkB,CAAC,CAAA,EAAE,CAAA;AACzF;;;AC7LO,IAAM,kBAAA,GAAuC;AAAA,EAClD,SAAA,CAAU;AAAA,IACR,KAAA,EAAO,mBAAA;AAAA,IACP,WAAA,EAAa,wCAAA;AAAA,IACb,QAAA,EAAU,EAAC,GAAA,EAAK,cAAA,EAAgB,SAAS,+CAAA;AAA+C,GACzF,CAAA;AAAA,EACD;AAAA,IACE,IAAA,EAAM,KAAA;AAAA,IACN,KAAA,EAAO,kBAAA;AAAA,IACP,IAAA,EAAM,KAAA;AAAA,IACN,WAAA,EAAa,2CAAA;AAAA,IACb,QAAA,EAAU,EAAC,GAAA,EAAK,aAAA,EAAe,SAAS,8CAAA;AAA8C,GACxF;AAAA,EACA;AAAA,IACE,IAAA,EAAM,SAAA;AAAA,IACN,KAAA,EAAO,UAAA;AAAA,IACP,IAAA,EAAM,KAAA;AAAA,IACN,WAAA,EACE;AAAA,GACJ;AAAA,EACA;AAAA,IACE,IAAA,EAAM,aAAA;AAAA,IACN,KAAA,EAAO,aAAA;AAAA,IACP,IAAA,EAAM,MAAA;AAAA,IACN,IAAA,EAAM,CAAA;AAAA,IACN,WAAA,EAAa;AAAA,GACf;AAAA,EACA;AAAA,IACE,IAAA,EAAM,eAAA;AAAA,IACN,KAAA,EAAO,gBAAA;AAAA,IACP,IAAA,EAAM,QAAA;AAAA,IACN,WAAA,EAAa;AAAA,GACf;AAAA,EACA;AAAA,IACE,IAAA,EAAM,QAAA;AAAA,IACN,KAAA,EAAO,aAAA;AAAA,IACP,IAAA,EAAM,KAAA;AAAA,IACN,WAAA,EACE,gGAAA;AAAA,IACF,eAAe,EAAC,OAAA,EAAS,CAAC,MAAA,EAAQ,OAAO,CAAA;AAAC,GAC5C;AAAA,EACA;AAAA,IACE,IAAA,EAAM,cAAA;AAAA,IACN,KAAA,EAAO,eAAA;AAAA,IACP,IAAA,EAAM,QAAA;AAAA,IACN,WAAA,EAAa,mDAAA;AAAA,IACb,MAAA,EAAQ;AAAA,MACN;AAAA,QACE,IAAA,EAAM,aAAA;AAAA,QACN,KAAA,EAAO,cAAA;AAAA,QACP,IAAA,EAAM,QAAA;AAAA,QACN,WAAA,EAAa,wDAAA;AAAA,QACb,YAAA,EAAc,kBAAA;AAAA,QACd,OAAA,EAAS;AAAA,UACP,EAAC,KAAA,EAAO,kBAAA,EAAoB,KAAA,EAAO,kBAAA,EAAkB;AAAA,UACrD,EAAC,KAAA,EAAO,OAAA,EAAS,KAAA,EAAO,OAAA,EAAO;AAAA,UAC/B,EAAC,KAAA,EAAO,mBAAA,EAAqB,KAAA,EAAO,mBAAA,EAAmB;AAAA,UACvD,EAAC,KAAA,EAAO,SAAA,EAAW,KAAA,EAAO,SAAA,EAAS;AAAA,UACnC,EAAC,KAAA,EAAO,iBAAA,EAAmB,KAAA,EAAO,iBAAA;AAAiB;AACrD,OACF;AAAA,MACA;AAAA,QACE,IAAA,EAAM,OAAA;AAAA,QACN,KAAA,EAAO,OAAA;AAAA,QACP,IAAA,EAAM,QAAA;AAAA,QACN,WAAA,EAAa;AAAA,OACf;AAAA,MACA;AAAA,QACE,IAAA,EAAM,mBAAA;AAAA,QACN,KAAA,EAAO,qBAAA;AAAA,QACP,IAAA,EAAM,OAAA;AAAA,QACN,EAAA,EAAI,CAAC,EAAC,IAAA,EAAM,UAAS,CAAA;AAAA,QACrB,WAAA,EAAa,uEAAA;AAAA,QACb,YAAA,EAAc,CAAC,SAAS;AAAA;AAC1B;AACF,GACF;AAAA,EACA;AAAA,IACE,IAAA,EAAM,YAAA;AAAA,IACN,KAAA,EAAO,aAAA;AAAA,IACP,IAAA,EAAM,OAAA;AAAA,IACN,WAAA,EAAa,sCAAA;AAAA,IACb,UAAA,EAAY,cAAA;AAAA,IACZ,MAAA,EAAQ;AAAA,MACN;AAAA,QACE,IAAA,EAAM,MAAA;AAAA,QACN,KAAA,EAAO,iBAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA;AAAA,QACE,IAAA,EAAM,KAAA;AAAA,QACN,KAAA,EAAO,gBAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA;AAAA,QACE,IAAA,EAAM,WAAA;AAAA,QACN,KAAA,EAAO,kBAAA;AAAA,QACP,IAAA,EAAM;AAAA;AACR;AACF;AAEJ,CAAA;AAoBe,SAAR,qBAAA,CACL,MAAA,GAAsC,EAAC,EACjB;AACtB,EAAA,OAAO,kBAAA;AAAA,IACL;AAAA,MACE,IAAA,EAAM,uBAAA;AAAA,MACN,KAAA,EAAO,cAAA;AAAA,MACP,MAAM,cAAA,CAAe,YAAA;AAAA,MACrB,MAAA,EAAQ,kBAAA;AAAA,MACR,uBAAuB,CAAC,QAAA,KACtB,QAAA,CAAS,IAAA,GACL,GAAG,QAAA,CAAS,IAAI,CAAA,EAAG,QAAA,CAAS,MAAM,CAAA,MAAA,EAAM,QAAA,CAAS,GAAG,CAAA,CAAA,GAAK,EAAE,CAAA,CAAA,GAC3D;AAAA,KACR;AAAA,IACA;AAAA,GACF;AACF;;;AChIO,IAAM,aAAA,GAAkC;AAAA,EAC7C,SAAA,CAAU;AAAA,IACR,KAAA,EAAO,cAAA;AAAA,IACP,WAAA,EAAa,0BAAA;AAAA,IACb,QAAA,EAAU,EAAC,GAAA,EAAK,cAAA,EAAgB,SAAS,0CAAA;AAA0C,GACpF,CAAA;AAAA,EACD,QAAA,CAAS;AAAA,IACP,KAAA,EAAO,aAAA;AAAA,IACP,WAAA,EAAa,8DAAA;AAAA,IACb,QAAA,EAAU,EAAC,GAAA,EAAK,aAAA,EAAe,SAAS,yCAAA;AAAyC,GAClF,CAAA;AAAA,EACD,gBAAA,CAAiB;AAAA,IACf,WAAA,EAAa;AAAA,GACd,CAAA;AAAA,EACD,eAAA,CAAgB,EAAC,WAAA,EAAa,iDAAA,EAAkD,CAAA;AAAA,EAChF,oBAAA,CAAqB,EAAC,WAAA,EAAa,yDAAA,EAA0D,CAAA;AAAA,EAC7F,qBAAA,CAAsB;AAAA,IACpB,WAAA,EAAa;AAAA,GACd,CAAA;AAAA,EACD,SAAA,CAAU;AAAA,IACR,WAAA,EAAa;AAAA,GACd;AACH,CAAA;AAoBe,SAAR,gBAAA,CACL,MAAA,GAAiC,EAAC,EACZ;AACtB,EAAA,OAAO,kBAAA;AAAA,IACL;AAAA,MACE,IAAA,EAAM,kBAAA;AAAA,MACN,KAAA,EAAO,SAAA;AAAA,MACP,MAAM,cAAA,CAAe,OAAA;AAAA,MACrB,MAAA,EAAQ,aAAA;AAAA,MACR,qBAAA,EAAuB,CAAC,QAAA,KAAmC;AACzD,QAAA,MAAM,OAAO,QAAA,CAAS,IAAA,GAAO,CAAA,EAAG,QAAA,CAAS,IAAI,CAAA,CAAA,GAAK,kBAAA;AAClD,QAAA,MAAM,MAAM,QAAA,CAAS,GAAA,GAAM,CAAA,MAAA,EAAM,QAAA,CAAS,GAAG,CAAA,CAAA,GAAK,EAAA;AAClD,QAAA,OAAO,CAAA,EAAG,IAAI,CAAA,EAAG,GAAG,CAAA,CAAA;AAAA,MACtB;AAAA,KACF;AAAA,IACA;AAAA,GACF;AACF;;;AC2CA,IAAM,oBAAA,GAAuB;AAAA,EAC3B,kBAAA;AAAA,EACA,uBAAA;AAAA,EACA,kBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,sBAAA;AAAA,EACA,yBAAA;AAAA,EACA,kBAAA;AAAA,EACA,gBAAA;AAAA,EACA,kBAAA;AAAA,EACA,gBAAA;AAAA,EACA,0BAAA;AAAA,EACA,iBAAA;AAAA,EACA,gBAAA;AAAA,EACA,wBAAA;AAAA,EACA,gBAAA;AAAA,EACA,gBAAA;AAAA,EACA,8BAAA;AAAA,EACA,yBAAA;AAAA,EACA,sBAAA;AAAA,EACA,iBAAA;AAAA,EACA,sBAAA;AAAA,EACA,wBAAA;AAAA,EACA,uBAAA;AAAA,EACA,iBAAA;AAAA,EACA,kBAAA;AAAA,EACA,6BAAA;AAAA,EACA,uBAAA;AAAA,EACA,kBAAA;AAAA,EACA,qBAAA;AAAA,EACA,qBAAA;AAAA,EACA,gBAAA;AAAA,EACA,eAAA;AAAA,EACA,sBAAA;AAAA,EACA,6BAAA;AAAA,EACA,mBAAA;AAAA,EACA,sBAAA;AAAA,EACA,yBAAA;AAAA,EACA;AACF,CAAA;AAIO,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,2BAAA,GAA8B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAChG,IAAA,EAAM,iDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,qBAAA,CAA4B,MAAyB,CAAC,CAAA;AACzE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,qBAAA,GAAwB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC1F,IAAA,EAAM,2CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,eAAA,CAAsB,MAAyB,CAAC,CAAA;AACnE,CAAA,CAAE;AAEK,IAAM,6BAAA,GAAgC,YAAA;AAAA,EAC3C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,mDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,uBAAA,CAA8B,MAAyB,CAAC,CAAA;AAAC,GAC5E;AACF;AAEO,IAAM,0BAAA,GAA6B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC/F,IAAA,EAAM,gDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,oBAAA,CAA2B,MAAyB,CAAC,CAAA;AACxE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,0BAAA,GAA6B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC/F,IAAA,EAAM,gDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,oBAAA,CAA2B,MAAyB,CAAC,CAAA;AACxE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,8BAAA,GAAiC,YAAA;AAAA,EAC5C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,oDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,wBAAA,CAA+B,MAAyB,CAAC,CAAA;AAAC,GAC7E;AACF;AAEO,IAAM,qBAAA,GAAwB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC1F,IAAA,EAAM,2CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,eAAA,CAAsB,MAAyB,CAAC,CAAA;AACnE,CAAA,CAAE;AAEK,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,4BAAA,GAA+B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACjG,IAAA,EAAM,kDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,sBAAA,CAA6B,MAAyB,CAAC,CAAA;AAC1E,CAAA,CAAE;AAEK,IAAM,4BAAA,GAA+B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACjG,IAAA,EAAM,kDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,sBAAA,CAA6B,MAAyB,CAAC,CAAA;AAC1E,CAAA,CAAE;AAEK,IAAM,2BAAA,GAA8B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAChG,IAAA,EAAM,iDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,qBAAA,CAA4B,MAAyB,CAAC,CAAA;AACzE,CAAA,CAAE;AAEK,IAAM,kCAAA,GAAqC,YAAA;AAAA,EAChD,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,wDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,4BAAA,CAAmC,MAAyB,CAAC,CAAA;AAAC,GACjF;AACF;AAEO,IAAM,6BAAA,GAAgC,YAAA;AAAA,EAC3C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,mDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,uBAAA,CAA8B,MAAyB,CAAC,CAAA;AAAC,GAC5E;AACF;AAEO,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,0BAAA,GAA6B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC/F,IAAA,EAAM,gDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,oBAAA,CAA2B,MAAyB,CAAC,CAAA;AACxE,CAAA,CAAE;AAEK,IAAM,qBAAA,GAAwB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC1F,IAAA,EAAM,2CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,eAAA,CAAsB,MAAyB,CAAC,CAAA;AACnE,CAAA,CAAE;AAEK,IAAM,qBAAA,GAAwB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC1F,IAAA,EAAM,2CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,eAAA,CAAsB,MAAyB,CAAC,CAAA;AACnE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,iCAAA,GAAoC,YAAA;AAAA,EAC/C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,uDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,2BAAA,CAAkC,MAAyB,CAAC,CAAA;AAAC,GAChF;AACF;AAEO,IAAM,2BAAA,GAA8B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAChG,IAAA,EAAM,iDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,qBAAA,CAA4B,MAAyB,CAAC,CAAA;AACzE,CAAA,CAAE;AAEK,IAAM,sBAAA,GAAyB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC3F,IAAA,EAAM,4CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,gBAAA,CAAuB,MAAyB,CAAC,CAAA;AACpE,CAAA,CAAE;AAEK,IAAM,yBAAA,GAA4B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC9F,IAAA,EAAM,+CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,mBAAA,CAA0B,MAAyB,CAAC,CAAA;AACvE,CAAA,CAAE;AAEK,IAAM,yBAAA,GAA4B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC9F,IAAA,EAAM,+CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,mBAAA,CAA0B,MAAyB,CAAC,CAAA;AACvE,CAAA,CAAE;AAEK,IAAM,oBAAA,GAAuB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACzF,IAAA,EAAM,0CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,cAAA,CAAqB,MAAyB,CAAC,CAAA;AAClE,CAAA,CAAE;AAEK,IAAM,mBAAA,GAAsB,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EACxF,IAAA,EAAM,yCAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,aAAA,CAAoB,MAAyB,CAAC,CAAA;AACjE,CAAA,CAAE;AAEK,IAAM,0BAAA,GAA6B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC/F,IAAA,EAAM,gDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,oBAAA,CAA2B,MAAyB,CAAC,CAAA;AACxE,CAAA,CAAE;AAEK,IAAM,iCAAA,GAAoC,YAAA;AAAA,EAC/C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,uDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,2BAAA,CAAkC,MAAyB,CAAC,CAAA;AAAC,GAChF;AACF;AAEO,IAAM,uBAAA,GAA0B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC5F,IAAA,EAAM,6CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,iBAAA,CAAwB,MAAyB,CAAC,CAAA;AACrE,CAAA,CAAE;AAEK,IAAM,0BAAA,GAA6B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC/F,IAAA,EAAM,gDAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,oBAAA,CAA2B,MAAyB,CAAC,CAAA;AACxE,CAAA,CAAE;AAEK,IAAM,6BAAA,GAAgC,YAAA;AAAA,EAC3C,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,IAChB,IAAA,EAAM,mDAAA;AAAA,IACN,QAAQ,EAAC,KAAA,EAAO,CAAC,uBAAA,CAA8B,MAAyB,CAAC,CAAA;AAAC,GAC5E;AACF;AAEO,IAAM,yBAAA,GAA4B,YAAA,CAAqC,CAAC,MAAA,GAAS,EAAC,MAAO;AAAA,EAC9F,IAAA,EAAM,+CAAA;AAAA,EACN,QAAQ,EAAC,KAAA,EAAO,CAAC,mBAAA,CAA0B,MAAyB,CAAC,CAAA;AACvE,CAAA,CAAE;AAiBK,IAAM,SAAA,GAAY,YAAA,CAA6C,CAAC,MAAA,GAAS,EAAC,KAAM;AACrF,EAAA,MAAM,CAAA,GAAI,MAAA;AACV,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,oCAAA;AAAA,IACN,MAAA,EAAQ;AAAA,MACN,KAAA,EAAO;AAAA,QACL,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,qBAAA,CAA4B,EAAE,YAAY,CAAA;AAAA,QAC1C,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,eAAA,CAAsB,EAAE,MAAM,CAAA;AAAA,QAC9B,uBAAA,CAA8B,EAAE,cAAc,CAAA;AAAA,QAC9C,oBAAA,CAA2B,EAAE,WAAW,CAAA;AAAA,QACxC,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,oBAAA,CAA2B,EAAE,WAAW,CAAA;AAAA,QACxC,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,wBAAA,CAA+B,EAAE,eAAe,CAAA;AAAA,QAChD,eAAA,CAAsB,EAAE,MAAM,CAAA;AAAA,QAC9B,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,sBAAA,CAA6B,EAAE,aAAa,CAAA;AAAA,QAC5C,sBAAA,CAA6B,EAAE,aAAa,CAAA;AAAA,QAC5C,qBAAA,CAA4B,EAAE,YAAY,CAAA;AAAA,QAC1C,4BAAA,CAAmC,EAAE,mBAAmB,CAAA;AAAA,QACxD,uBAAA,CAA8B,EAAE,cAAc,CAAA;AAAA,QAC9C,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,oBAAA,CAA2B,EAAE,WAAW,CAAA;AAAA,QACxC,eAAA,CAAsB,EAAE,MAAM,CAAA;AAAA,QAC9B,eAAA,CAAsB,EAAE,MAAM,CAAA;AAAA,QAC9B,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,2BAAA,CAAkC,EAAE,kBAAkB,CAAA;AAAA,QACtD,qBAAA,CAA4B,EAAE,YAAY,CAAA;AAAA,QAC1C,gBAAA,CAAuB,EAAE,OAAO,CAAA;AAAA,QAChC,mBAAA,CAA0B,EAAE,UAAU,CAAA;AAAA,QACtC,mBAAA,CAA0B,EAAE,UAAU,CAAA;AAAA,QACtC,cAAA,CAAqB,EAAE,KAAK,CAAA;AAAA,QAC5B,aAAA,CAAoB,EAAE,IAAI,CAAA;AAAA,QAC1B,oBAAA,CAA2B,EAAE,WAAW,CAAA;AAAA,QACxC,2BAAA,CAAkC,EAAE,kBAAkB,CAAA;AAAA,QACtD,iBAAA,CAAwB,EAAE,QAAQ,CAAA;AAAA,QAClC,oBAAA,CAA2B,EAAE,WAAW,CAAA;AAAA,QACxC,uBAAA,CAA8B,EAAE,cAAc,CAAA;AAAA,QAC9C,mBAAA,CAA0B,EAAE,UAAU,CAAA;AAAA;AAAA,QAEtC,UAAA,CAAW;AAAA,UACT,IAAA,EAAM,WAAA;AAAA,UACN,KAAA,EAAO,4BAAA;AAAA,UACP,IAAA,EAAM,OAAA;AAAA,UACN,IAAI,oBAAA,CAAqB,GAAA,CAAI,CAAC,IAAA,MAAU,EAAC,MAAI,CAAE,CAAA;AAAA,UAC/C,UAAA,EAAY;AAAA,YACV,KAAA,EAAO;AAAA;AACT,SACD;AAAA;AACH;AACF,GACF;AACF,CAAC","file":"schema.js","sourcesContent":["/**\n * Metadata for Schema.org types — used by the TypePickerInput.\n * Each entry describes a type for the visual picker UI.\n */\n\nexport type SchemaTypeCategory =\n | 'content'\n | 'commerce'\n | 'media'\n | 'people'\n | 'navigation'\n | 'location'\n | 'software'\n | 'education'\n\nexport interface SchemaTypeInfo {\n /** Internal Sanity type name, e.g. \"schemaOrgArticle\" */\n type: string\n /** Display title */\n title: string\n /** Short description shown in the picker */\n description: string\n /** Category for grouping */\n category: SchemaTypeCategory\n /** Search keywords (matched in addition to title) */\n keywords: string[]\n}\n\nexport const CATEGORY_LABELS: Record<SchemaTypeCategory, string> = {\n content: 'Content & Pages',\n commerce: 'Commerce & Reviews',\n media: 'Media',\n people: 'People & Organizations',\n navigation: 'Navigation',\n location: 'Location & Events',\n software: 'Software',\n education: 'Education',\n}\n\nexport const CATEGORY_ORDER: SchemaTypeCategory[] = [\n 'content',\n 'commerce',\n 'people',\n 'media',\n 'navigation',\n 'location',\n 'software',\n 'education',\n]\n\nexport const SCHEMA_TYPE_METADATA: SchemaTypeInfo[] = [\n // ─── Content & Pages ──────────────────────────────────────────────\n {\n type: 'schemaOrgWebsite',\n title: 'Website',\n description: 'Represents an entire website with search action support.',\n category: 'content',\n keywords: ['site', 'homepage', 'search action'],\n },\n {\n type: 'schemaOrgWebPage',\n title: 'Web Page',\n description: 'A single web page with metadata and publisher info.',\n category: 'content',\n keywords: ['page', 'about', 'contact', 'landing'],\n },\n {\n type: 'schemaOrgArticle',\n title: 'Article',\n description: 'News articles, blog posts, and editorial content.',\n category: 'content',\n keywords: ['news', 'blog', 'post', 'editorial', 'story'],\n },\n {\n type: 'schemaOrgBlogPosting',\n title: 'Blog Posting',\n description: 'Blog post with author, date, and content metadata.',\n category: 'content',\n keywords: ['blog', 'post', 'writing'],\n },\n {\n type: 'schemaOrgFAQPage',\n title: 'FAQ Page',\n description: 'Frequently asked questions with rich result support.',\n category: 'content',\n keywords: ['faq', 'questions', 'answers', 'help'],\n },\n {\n type: 'schemaOrgHowTo',\n title: 'How-To',\n description: 'Step-by-step instructions with supplies, tools, and costs.',\n category: 'content',\n keywords: ['tutorial', 'guide', 'steps', 'instructions', 'diy'],\n },\n {\n type: 'schemaOrgRecipe',\n title: 'Recipe',\n description: 'Cooking recipes with ingredients, nutrition, and times.',\n category: 'content',\n keywords: ['cooking', 'food', 'ingredients', 'nutrition', 'meal'],\n },\n {\n type: 'schemaOrgSocialMediaPosting',\n title: 'Social Media Posting',\n description: 'Social media content with shared links and engagement.',\n category: 'content',\n keywords: ['social', 'post', 'share', 'twitter', 'facebook'],\n },\n\n // ─── Commerce & Reviews ───────────────────────────────────────────\n {\n type: 'schemaOrgProduct',\n title: 'Product',\n description: 'Products with pricing, ratings, and availability.',\n category: 'commerce',\n keywords: ['ecommerce', 'shop', 'buy', 'price', 'store'],\n },\n {\n type: 'schemaOrgOffer',\n title: 'Offer',\n description: 'Pricing and availability for products or services.',\n category: 'commerce',\n keywords: ['price', 'deal', 'discount', 'availability'],\n },\n {\n type: 'schemaOrgAggregateRating',\n title: 'Aggregate Rating',\n description: 'Overall rating from multiple reviews.',\n category: 'commerce',\n keywords: ['stars', 'rating', 'score', 'average'],\n },\n {\n type: 'schemaOrgReview',\n title: 'Review',\n description: 'Individual review with rating and author.',\n category: 'commerce',\n keywords: ['feedback', 'testimonial', 'rating', 'critique'],\n },\n {\n type: 'schemaOrgBrand',\n title: 'Brand',\n description: 'Brand identity and recognition.',\n category: 'commerce',\n keywords: ['brand', 'label', 'manufacturer'],\n },\n {\n type: 'schemaOrgService',\n title: 'Service',\n description: 'Professional services with provider and catalog.',\n category: 'commerce',\n keywords: ['consulting', 'professional', 'provider', 'catalog'],\n },\n\n // ─── People & Organizations ───────────────────────────────────────\n {\n type: 'schemaOrgPerson',\n title: 'Person',\n description: 'Individual profile with contact info and social links.',\n category: 'people',\n keywords: ['author', 'profile', 'employee', 'contact'],\n },\n {\n type: 'schemaOrgOrganization',\n title: 'Organization',\n description: 'Company or organization with departments and contacts.',\n category: 'people',\n keywords: ['company', 'business', 'corporation', 'ngo'],\n },\n {\n type: 'schemaOrgLocalBusiness',\n title: 'Local Business',\n description: 'Local business with hours, location, and reviews.',\n category: 'people',\n keywords: ['store', 'restaurant', 'shop', 'local', 'maps'],\n },\n {\n type: 'schemaOrgContactPoint',\n title: 'Contact Point',\n description: 'Contact information — phone, email, languages.',\n category: 'people',\n keywords: ['phone', 'email', 'support', 'helpdesk'],\n },\n {\n type: 'schemaOrgPostalAddress',\n title: 'Postal Address',\n description: 'Physical mailing address.',\n category: 'people',\n keywords: ['address', 'street', 'zip', 'city', 'mailing'],\n },\n\n // ─── Media ────────────────────────────────────────────────────────\n {\n type: 'schemaOrgImageObject',\n title: 'Image Object',\n description: 'Image with metadata, author, and location.',\n category: 'media',\n keywords: ['photo', 'picture', 'graphic', 'illustration'],\n },\n {\n type: 'schemaOrgVideoObject',\n title: 'Video Object',\n description: 'Video with thumbnails, duration, and seek actions.',\n category: 'media',\n keywords: ['video', 'youtube', 'vimeo', 'clip', 'film'],\n },\n\n // ─── Navigation ───────────────────────────────────────────────────\n {\n type: 'schemaOrgBreadcrumbList',\n title: 'Breadcrumb List',\n description: 'Page hierarchy breadcrumb trail for navigation.',\n category: 'navigation',\n keywords: ['breadcrumb', 'path', 'hierarchy', 'trail'],\n },\n\n // ─── Location & Events ────────────────────────────────────────────\n {\n type: 'schemaOrgEvent',\n title: 'Event',\n description: 'Events with dates, location, and organizer.',\n category: 'location',\n keywords: ['conference', 'meetup', 'webinar', 'concert'],\n },\n {\n type: 'schemaOrgPlace',\n title: 'Place',\n description: 'A physical location with address.',\n category: 'location',\n keywords: ['venue', 'location', 'landmark', 'spot'],\n },\n {\n type: 'schemaOrgCountry',\n title: 'Country',\n description: 'A country (extends Place) — useful for geographic targeting.',\n category: 'location',\n keywords: ['country', 'nation', 'geography', 'region'],\n },\n {\n type: 'schemaOrgLegalService',\n title: 'Legal Service',\n description: 'Law firm or legal practice (extends LocalBusiness).',\n category: 'people',\n keywords: ['law', 'lawyer', 'attorney', 'firm', 'legal'],\n },\n\n // ─── Software ─────────────────────────────────────────────────────\n {\n type: 'schemaOrgSoftwareApplication',\n title: 'Software Application',\n description: 'Desktop or mobile application.',\n category: 'software',\n keywords: ['app', 'tool', 'program', 'desktop', 'mobile'],\n },\n {\n type: 'schemaOrgWebApplication',\n title: 'Web Application',\n description: 'Web-based application or SaaS tool.',\n category: 'software',\n keywords: ['webapp', 'saas', 'online', 'cloud'],\n },\n\n // ─── Education ────────────────────────────────────────────────────\n {\n type: 'schemaOrgCourse',\n title: 'Course',\n description: 'Educational course with provider info.',\n category: 'education',\n keywords: ['learning', 'class', 'training', 'workshop', 'tutorial'],\n },\n\n // ─── New Schema Types ──────────────────────────────────────────────\n {\n type: 'schemaOrgJobPosting',\n title: 'Job Posting',\n description: 'A job listing with salary, location, and requirements.',\n category: 'people',\n keywords: ['job', 'career', 'hiring', 'employment', 'vacancy', 'work'],\n },\n {\n type: 'schemaOrgRestaurant',\n title: 'Restaurant',\n description: 'A restaurant or dining establishment.',\n category: 'commerce',\n keywords: ['restaurant', 'dining', 'food', 'cuisine', 'eatery'],\n },\n {\n type: 'schemaOrgMovie',\n title: 'Movie',\n description: 'A movie or film with cast and crew details.',\n category: 'media',\n keywords: ['movie', 'film', 'cinema', 'motion picture'],\n },\n {\n type: 'schemaOrgBook',\n title: 'Book',\n description: 'A book, e-book, or audiobook publication.',\n category: 'commerce',\n keywords: ['book', 'ebook', 'publication', 'novel', 'isbn'],\n },\n {\n type: 'schemaOrgNewsArticle',\n title: 'News Article',\n description: 'A news story — distinct from generic Article for news publishers.',\n category: 'content',\n keywords: ['news', 'journalism', 'press', 'story', 'report'],\n },\n {\n type: 'schemaOrgOpinionNewsArticle',\n title: 'Opinion News Article',\n description: 'Opinion/editorial piece — a NewsArticle subtype that strengthens E-E-A-T.',\n category: 'content',\n keywords: ['opinion', 'editorial', 'column', 'commentary', 'op-ed'],\n },\n {\n type: 'schemaOrgItemList',\n title: 'Item List',\n description: 'An ordered or unordered list of items (carousel).',\n category: 'navigation',\n keywords: ['list', 'carousel', 'items', 'collection'],\n },\n {\n type: 'schemaOrgProfilePage',\n title: 'Profile Page',\n description: 'A profile page for a person or organization.',\n category: 'content',\n keywords: ['profile', 'about', 'bio', 'author', 'creator'],\n },\n {\n type: 'schemaOrgMusicRecording',\n title: 'Music Recording',\n description: 'An individual song or music track.',\n category: 'media',\n keywords: ['song', 'track', 'music', 'recording', 'single'],\n },\n {\n type: 'schemaOrgMusicAlbum',\n title: 'Music Album',\n description: 'A music album or collection of tracks.',\n category: 'media',\n keywords: ['album', 'music', 'record', 'lp', 'ep', 'release'],\n },\n]\n","/* eslint-disable react/jsx-no-bind */\n/**\n * TypePickerInput — a modern command-palette style selector for Sanity array types.\n *\n * Replaces the default Sanity array \"Add\" button with a searchable, categorized\n * type picker dialog. Used by the `schemaOrg` combined array type.\n */\nimport {AddIcon, SearchIcon} from '@sanity/icons'\nimport {Box, Button, Card, Dialog, Flex, Grid, Heading, Stack, Text, TextInput} from '@sanity/ui'\nimport {type ChangeEvent, type ComponentType, JSX, useCallback, useMemo, useState} from 'react'\nimport type {ArrayInputFunctionsProps, ArraySchemaType} from 'sanity'\nimport type {InputProps} from 'sanity'\n\nimport {\n CATEGORY_LABELS,\n CATEGORY_ORDER,\n SCHEMA_TYPE_METADATA,\n type SchemaTypeCategory,\n type SchemaTypeInfo,\n} from './schemaTypeMetadata'\n\n// ─── Search Helpers ───────────────────────────────────────────────────────────\n\nfunction matchesSearch(info: SchemaTypeInfo, query: string): boolean {\n const q = query.toLowerCase()\n return (\n info.title.toLowerCase().includes(q) ||\n info.description.toLowerCase().includes(q) ||\n info.keywords.some((kw) => kw.toLowerCase().includes(q))\n )\n}\n\nfunction groupByCategory(items: SchemaTypeInfo[]): Map<SchemaTypeCategory, SchemaTypeInfo[]> {\n const map = new Map<SchemaTypeCategory, SchemaTypeInfo[]>()\n for (const cat of CATEGORY_ORDER) {\n const matches = items.filter((i) => i.category === cat)\n if (matches.length) map.set(cat, matches)\n }\n return map\n}\n\n// ─── Inner ArrayFunctions Component ───────────────────────────────────────────\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction TypeArrayFunctions(props: ArrayInputFunctionsProps<any, ArraySchemaType<any>>) {\n const {onValueCreate, schemaType, onItemAppend} = props\n const [open, setOpen] = useState(false)\n const [search, setSearch] = useState('')\n\n const onClose = useCallback(() => {\n setOpen(false)\n setSearch('')\n }, [])\n const onOpen = useCallback(() => setOpen(true), [])\n const handleSearchChange = useCallback((e: ChangeEvent<HTMLInputElement>) => {\n setSearch(e.currentTarget.value)\n }, [])\n\n // Map available schema types to their metadata\n const availableTypes = useMemo(() => {\n const typeNames = new Set(schemaType.of.map((t) => t.name))\n return SCHEMA_TYPE_METADATA.filter((m) => typeNames.has(m.type))\n }, [schemaType.of])\n\n // Filter by search query\n const filtered = useMemo(\n () => (search ? availableTypes.filter((t) => matchesSearch(t, search)) : availableTypes),\n [availableTypes, search],\n )\n\n const grouped = useMemo(() => groupByCategory(filtered), [filtered])\n\n const handleSelect = useCallback(\n (typeName: string) => {\n const schemaItem = schemaType.of.find((t) => t.name === typeName)\n if (schemaItem) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const value = onValueCreate(schemaItem as any)\n onItemAppend(value)\n }\n onClose()\n },\n [schemaType.of, onValueCreate, onItemAppend, onClose],\n )\n\n const handleCardClick = useCallback((typeName: string) => handleSelect(typeName), [handleSelect])\n\n return (\n <Stack space={4}>\n <Button icon={AddIcon} text=\"Add Schema Type\" mode=\"ghost\" onClick={onOpen} />\n\n {open && (\n <Dialog\n header=\"Add Schema.org Type\"\n id=\"schema-type-picker\"\n onClose={onClose}\n zOffset={1000}\n width={1}\n >\n <Box padding={4}>\n <Stack space={4}>\n {/* Search Input */}\n <TextInput\n icon={SearchIcon}\n placeholder=\"Search schema types…\"\n value={search}\n onChange={handleSearchChange}\n autoFocus\n />\n\n {/* Type Grid by Category */}\n {grouped.size === 0 ? (\n <Card padding={4} tone=\"transparent\">\n <Flex align=\"center\" justify=\"center\">\n <Text muted size={1}>\n No matching schema types found.\n </Text>\n </Flex>\n </Card>\n ) : (\n <Stack space={5}>\n {Array.from(grouped.entries()).map(([category, types]) => (\n <Stack key={category} space={3}>\n <Heading\n size={0}\n style={{textTransform: 'uppercase', letterSpacing: '0.05em'}}\n >\n {CATEGORY_LABELS[category]}\n </Heading>\n <Grid columns={[1, 1, 2]} gap={2}>\n {types.map((info) => {\n const schemaItem = schemaType.of.find((t) => t.name === info.type)\n const Icon = schemaItem?.icon as ComponentType | undefined\n return (\n <Card\n key={info.type}\n as=\"button\"\n padding={3}\n radius={2}\n shadow={1}\n tone=\"default\"\n onClick={() => handleCardClick(info.type)}\n style={{cursor: 'pointer', textAlign: 'left'}}\n >\n <Flex gap={3} align=\"flex-start\">\n {Icon && (\n <Box style={{flexShrink: 0, marginTop: 2}}>\n <Text size={2}>\n <Icon />\n </Text>\n </Box>\n )}\n <Stack space={2}>\n <Text weight=\"semibold\" size={1}>\n {info.title}\n </Text>\n <Text muted size={0}>\n {info.description}\n </Text>\n </Stack>\n </Flex>\n </Card>\n )\n })}\n </Grid>\n </Stack>\n ))}\n </Stack>\n )}\n </Stack>\n </Box>\n </Dialog>\n )}\n </Stack>\n )\n}\n\n// ─── Public Wrapper ───────────────────────────────────────────────────────────\n\n/**\n * Custom input component for the `schemaOrg` array type.\n *\n * Wraps the default array input and injects the `TypeArrayFunctions`\n * component for a categorized, searchable type picker experience.\n *\n * @example Usage in `schemaOrg.ts`:\n * ```ts\n * defineType({\n * name: 'schemaOrg',\n * type: 'array',\n * components: { input: TypePickerInput },\n * // ...\n * })\n * ```\n */\nexport default function TypePickerInput(props: InputProps): JSX.Element {\n const {renderDefault} = props\n return <Stack space={3}>{renderDefault({...props, arrayFunctions: TypeArrayFunctions})}</Stack>\n}\n","import type {SchemaTypeDefinition} from 'sanity'\n\nimport {nameField} from '../_shared'\nimport {generateSchemaType, SchemaFieldDef, SchemaOrgConfig} from '../generator'\nimport {SchemaOrgIcons} from '../icons'\nimport type {SchemaOrgOrganizationConfig, SchemaOrgOrganizationData} from './types'\n\n// ─── Field Definitions ────────────────────────────────────────────────────────\n\nexport const organizationFields: SchemaFieldDef[] = [\n nameField({\n title: 'Organization Name',\n description: 'The official name of the organization.',\n required: {key: 'nameRequired', message: 'Organization name is required for Schema.org.'},\n }),\n {\n name: 'url',\n title: 'Organization URL',\n type: 'url',\n description: 'The full URL of the organization website.',\n required: {key: 'urlRequired', message: 'Organization URL is required for Schema.org.'},\n },\n {\n name: 'logoUrl',\n title: 'Logo URL',\n type: 'url',\n description:\n 'Direct URL to the organization logo image. Used in search results and knowledge panels.',\n },\n {\n name: 'description',\n title: 'Description',\n type: 'text',\n rows: 3,\n description: 'A short description of the organization.',\n },\n {\n name: 'alternateName',\n title: 'Alternate Name',\n type: 'string',\n description: 'An alias or alternate name for the organization.',\n },\n {\n name: 'sameAs',\n title: 'Same As URL',\n type: 'url',\n description:\n 'URLs of social media profiles and other authoritative pages (Twitter, LinkedIn, GitHub, etc.).',\n urlValidation: {schemes: ['http', 'https']},\n },\n {\n name: 'contactPoint',\n title: 'Contact Point',\n type: 'object',\n description: 'Primary contact information for the organization.',\n fields: [\n {\n name: 'contactType',\n title: 'Contact Type',\n type: 'string',\n description: 'e.g. \"customer support\", \"sales\", \"technical support\".',\n initialValue: 'customer support',\n options: [\n {title: 'Customer Support', value: 'customer support'},\n {title: 'Sales', value: 'sales'},\n {title: 'Technical Support', value: 'technical support'},\n {title: 'Billing', value: 'billing'},\n {title: 'General Inquiry', value: 'general inquiry'},\n ],\n },\n {\n name: 'email',\n title: 'Email',\n type: 'string',\n description: 'Contact email address.',\n },\n {\n name: 'availableLanguage',\n title: 'Available Languages',\n type: 'array',\n of: [{type: 'string'}],\n description: 'Languages supported by this contact point, e.g. \"English\", \"Spanish\".',\n initialValue: ['English'],\n },\n ],\n },\n {\n name: 'department',\n title: 'Departments',\n type: 'array',\n description: 'Departments within the organization.',\n jsonLdType: 'Organization',\n fields: [\n {\n name: 'name',\n title: 'Department Name',\n type: 'string',\n },\n {\n name: 'url',\n title: 'Department URL',\n type: 'url',\n },\n {\n name: 'telephone',\n title: 'Department Phone',\n type: 'string',\n },\n ],\n },\n]\n\n// ─── Schema Factory ───────────────────────────────────────────────────────────\n\n/**\n * Schema.org Organization — Sanity object type.\n *\n * @example\n * ```ts\n * import { schemaOrgOrganization } from 'sanity-plugin-seofields/schema/organization'\n *\n * // Default\n * schemaOrgOrganization()\n *\n * // Custom validation messages\n * schemaOrgOrganization({\n * validation: { nameRequired: 'Company name is required.' },\n * })\n * ```\n */\nexport default function schemaOrgOrganization(\n config: SchemaOrgOrganizationConfig = {},\n): SchemaTypeDefinition {\n return generateSchemaType(\n {\n name: 'schemaOrgOrganization',\n title: 'Organization',\n icon: SchemaOrgIcons.organization,\n fields: organizationFields,\n customPrepareSubtitle: (document: SchemaOrgOrganizationData) =>\n document.name\n ? `${document.name}${document.url ? ` · ${document.url}` : ''}`\n : 'Untitled organization',\n },\n config as SchemaOrgConfig,\n )\n}\n","import type {SchemaTypeDefinition} from 'sanity'\n\nimport {\n descriptionField,\n inLanguageField,\n issnField,\n nameField,\n polymorphicPublisher,\n potentialActionSearch,\n urlField,\n // withCreativeWorkCommons,\n} from '../_shared'\nimport {generateSchemaType, SchemaFieldDef, SchemaOrgConfig} from '../generator'\nimport {SchemaOrgIcons} from '../icons'\nimport type {SchemaOrgWebsiteConfig, SchemaOrgWebsiteData} from './types'\n\n// ─── Field Definitions ────────────────────────────────────────────────────────\n\nexport const websiteFields: SchemaFieldDef[] = [\n nameField({\n title: 'Website Name',\n description: 'The name of the website.',\n required: {key: 'nameRequired', message: 'Website name is required for Schema.org.'},\n }),\n urlField({\n title: 'Website URL',\n description: 'The full URL of the website, e.g. \"https://www.example.com\".',\n required: {key: 'urlRequired', message: 'Website URL is required for Schema.org.'},\n }),\n descriptionField({\n description: 'A short description of the website.',\n }),\n inLanguageField({description: 'The language of the website content, e.g. \"en\".'}),\n polymorphicPublisher({description: 'The organization or person that publishes this website.'}),\n potentialActionSearch({\n description: 'Enables the sitelinks search box in Google. Configure the search URL template.',\n }),\n issnField({\n description: 'The ISSN (International Standard Serial Number) of the website, if applicable.',\n }),\n]\n\n// ─── Schema Factory ───────────────────────────────────────────────────────────\n\n/**\n * Schema.org WebSite — Sanity object type.\n *\n * @example\n * ```ts\n * import { schemaOrgWebsite } from 'sanity-plugin-seofields/schema/website'\n *\n * // Default\n * schemaOrgWebsite()\n *\n * // Custom validation messages\n * schemaOrgWebsite({\n * validation: { nameRequired: 'Please enter a website name.' },\n * })\n * ```\n */\nexport default function schemaOrgWebsite(\n config: SchemaOrgWebsiteConfig = {},\n): SchemaTypeDefinition {\n return generateSchemaType(\n {\n name: 'schemaOrgWebsite',\n title: 'Website',\n icon: SchemaOrgIcons.website,\n fields: websiteFields,\n customPrepareSubtitle: (document: SchemaOrgWebsiteData) => {\n const name = document.name ? `${document.name}` : 'Untitled website'\n const url = document.url ? ` · ${document.url}` : ''\n return `${name}${url}`\n },\n },\n config as SchemaOrgConfig,\n )\n}\n","/**\n * Schema.org plugins for sanity-plugin-seofields.\n *\n * Use as Sanity plugins (in `plugins` array) rather than raw schema types.\n *\n * @example Combined — all types at once\n * ```ts\n * import { schemaOrg } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrg()],\n * })\n * ```\n *\n * @example Individual — only the types you need\n * ```ts\n * import { schemaOrgArticlePlugin, schemaOrgFAQPagePlugin } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrgArticlePlugin(), schemaOrgFAQPagePlugin()],\n * })\n * ```\n *\n * @example Then use in any document schema\n * ```ts\n * defineField({ name: 'structuredData', type: 'schemaOrg' })\n * defineField({ name: 'article', type: 'schemaOrgArticle' })\n * ```\n */\nimport {definePlugin, defineType} from 'sanity'\n\nimport schemaOrgAggregateRatingSchema from './aggregateRating/schema'\nimport schemaOrgArticleSchema from './article/schema'\nimport schemaOrgBlogPostingSchema from './blogPosting/schema'\nimport schemaOrgBookSchema from './book/schema'\nimport schemaOrgBrandSchema from './brand/schema'\nimport schemaOrgBreadcrumbListSchema from './breadcrumbList/schema'\nimport TypePickerInput from './components/TypePickerInput'\nimport schemaOrgContactPointSchema from './contactPoint/schema'\nimport schemaOrgCountrySchema from './country/schema'\nimport schemaOrgCourseSchema from './course/schema'\nimport schemaOrgEventSchema from './event/schema'\nimport schemaOrgFAQPageSchema from './faqPage/schema'\nimport type {SchemaOrgConfig} from './generator'\nimport schemaOrgHowToSchema from './howTo/schema'\nimport schemaOrgImageObjectSchema from './imageObject/schema'\nimport schemaOrgItemListSchema from './itemList/schema'\nimport schemaOrgJobPostingSchema from './jobPosting/schema'\nimport schemaOrgLegalServiceSchema from './legalService/schema'\nimport schemaOrgLocalBusinessSchema from './localBusiness/schema'\nimport schemaOrgMovieSchema from './movie/schema'\nimport schemaOrgMusicAlbumSchema from './musicAlbum/schema'\nimport schemaOrgMusicRecordingSchema from './musicRecording/schema'\nimport schemaOrgNewsArticleSchema from './newsArticle/schema'\nimport schemaOrgOfferSchema from './offer/schema'\nimport schemaOrgOpinionNewsArticleSchema from './opinionNewsArticle/schema'\nimport schemaOrgOrganizationSchema from './organization/schema'\nimport schemaOrgPersonSchema from './person/schema'\nimport schemaOrgPlaceSchema from './place/schema'\nimport schemaOrgPostalAddressSchema from './postalAddress/schema'\nimport schemaOrgProductSchema from './product/schema'\nimport schemaOrgProfilePageSchema from './profilePage/schema'\nimport schemaOrgRecipeSchema from './recipe/schema'\nimport schemaOrgRestaurantSchema from './restaurant/schema'\nimport schemaOrgReviewSchema from './review/schema'\nimport schemaOrgServiceSchema from './service/schema'\nimport schemaOrgSocialMediaPostingSchema from './socialMediaPosting/schema'\nimport schemaOrgSoftwareApplicationSchema from './softwareApplication/schema'\nimport schemaOrgVideoObjectSchema from './videoObject/schema'\nimport schemaOrgWebApplicationSchema from './webApplication/schema'\nimport schemaOrgWebPageSchema from './webPage/schema'\nimport schemaOrgWebsiteSchema from './website/schema'\n\n// ─── Combined Config ──────────────────────────────────────────────────────────\n\n/** Per-type validation overrides for the combined `schemaOrg()` plugin. */\nexport interface SchemaOrgCombinedConfig {\n website?: SchemaOrgConfig\n organization?: SchemaOrgConfig\n webPage?: SchemaOrgConfig\n person?: SchemaOrgConfig\n breadcrumbList?: SchemaOrgConfig\n imageObject?: SchemaOrgConfig\n article?: SchemaOrgConfig\n blogPosting?: SchemaOrgConfig\n faqPage?: SchemaOrgConfig\n howTo?: SchemaOrgConfig\n product?: SchemaOrgConfig\n offer?: SchemaOrgConfig\n aggregateRating?: SchemaOrgConfig\n review?: SchemaOrgConfig\n brand?: SchemaOrgConfig\n localBusiness?: SchemaOrgConfig\n postalAddress?: SchemaOrgConfig\n contactPoint?: SchemaOrgConfig\n softwareApplication?: SchemaOrgConfig\n webApplication?: SchemaOrgConfig\n event?: SchemaOrgConfig\n place?: SchemaOrgConfig\n videoObject?: SchemaOrgConfig\n course?: SchemaOrgConfig\n recipe?: SchemaOrgConfig\n service?: SchemaOrgConfig\n socialMediaPosting?: SchemaOrgConfig\n legalService?: SchemaOrgConfig\n country?: SchemaOrgConfig\n jobPosting?: SchemaOrgConfig\n restaurant?: SchemaOrgConfig\n movie?: SchemaOrgConfig\n book?: SchemaOrgConfig\n newsArticle?: SchemaOrgConfig\n opinionNewsArticle?: SchemaOrgConfig\n itemList?: SchemaOrgConfig\n profilePage?: SchemaOrgConfig\n musicRecording?: SchemaOrgConfig\n musicAlbum?: SchemaOrgConfig\n}\n\n// ─── Array type member list ───────────────────────────────────────────────────\n\nconst ALL_SCHEMA_ORG_TYPES = [\n 'schemaOrgWebsite',\n 'schemaOrgOrganization',\n 'schemaOrgWebPage',\n 'schemaOrgPerson',\n 'schemaOrgArticle',\n 'schemaOrgBlogPosting',\n 'schemaOrgBreadcrumbList',\n 'schemaOrgFAQPage',\n 'schemaOrgHowTo',\n 'schemaOrgProduct',\n 'schemaOrgOffer',\n 'schemaOrgAggregateRating',\n 'schemaOrgReview',\n 'schemaOrgBrand',\n 'schemaOrgLocalBusiness',\n 'schemaOrgEvent',\n 'schemaOrgPlace',\n 'schemaOrgSoftwareApplication',\n 'schemaOrgWebApplication',\n 'schemaOrgVideoObject',\n 'schemaOrgCourse',\n 'schemaOrgImageObject',\n 'schemaOrgPostalAddress',\n 'schemaOrgContactPoint',\n 'schemaOrgRecipe',\n 'schemaOrgService',\n 'schemaOrgSocialMediaPosting',\n 'schemaOrgLegalService',\n 'schemaOrgCountry',\n 'schemaOrgJobPosting',\n 'schemaOrgRestaurant',\n 'schemaOrgMovie',\n 'schemaOrgBook',\n 'schemaOrgNewsArticle',\n 'schemaOrgOpinionNewsArticle',\n 'schemaOrgItemList',\n 'schemaOrgProfilePage',\n 'schemaOrgMusicRecording',\n 'schemaOrgMusicAlbum',\n] as const\n\n// ─── Individual Plugins ───────────────────────────────────────────────────────\n\nexport const schemaOrgWebsitePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-website',\n schema: {types: [schemaOrgWebsiteSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOrganizationPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-organization',\n schema: {types: [schemaOrgOrganizationSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgWebPagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-webpage',\n schema: {types: [schemaOrgWebPageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPersonPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-person',\n schema: {types: [schemaOrgPersonSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBreadcrumbListPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-breadcrumblist',\n schema: {types: [schemaOrgBreadcrumbListSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgImageObjectPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-imageobject',\n schema: {types: [schemaOrgImageObjectSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgArticlePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-article',\n schema: {types: [schemaOrgArticleSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBlogPostingPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-blogposting',\n schema: {types: [schemaOrgBlogPostingSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgFAQPagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-faqpage',\n schema: {types: [schemaOrgFAQPageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgHowToPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-howto',\n schema: {types: [schemaOrgHowToSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgProductPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-product',\n schema: {types: [schemaOrgProductSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOfferPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-offer',\n schema: {types: [schemaOrgOfferSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgAggregateRatingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-aggregaterating',\n schema: {types: [schemaOrgAggregateRatingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgReviewPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-review',\n schema: {types: [schemaOrgReviewSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBrandPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-brand',\n schema: {types: [schemaOrgBrandSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgLocalBusinessPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-localbusiness',\n schema: {types: [schemaOrgLocalBusinessSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPostalAddressPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-postaladdress',\n schema: {types: [schemaOrgPostalAddressSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgContactPointPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-contactpoint',\n schema: {types: [schemaOrgContactPointSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgSoftwareApplicationPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-softwareapplication',\n schema: {types: [schemaOrgSoftwareApplicationSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgWebApplicationPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-webapplication',\n schema: {types: [schemaOrgWebApplicationSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgEventPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-event',\n schema: {types: [schemaOrgEventSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPlacePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-place',\n schema: {types: [schemaOrgPlaceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgVideoObjectPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-videoobject',\n schema: {types: [schemaOrgVideoObjectSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgCoursePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-course',\n schema: {types: [schemaOrgCourseSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgRecipePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-recipe',\n schema: {types: [schemaOrgRecipeSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgServicePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-service',\n schema: {types: [schemaOrgServiceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgSocialMediaPostingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-socialmediaposting',\n schema: {types: [schemaOrgSocialMediaPostingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgLegalServicePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-legalservice',\n schema: {types: [schemaOrgLegalServiceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgCountryPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-country',\n schema: {types: [schemaOrgCountrySchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgJobPostingPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-jobposting',\n schema: {types: [schemaOrgJobPostingSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgRestaurantPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-restaurant',\n schema: {types: [schemaOrgRestaurantSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgMoviePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-movie',\n schema: {types: [schemaOrgMovieSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBookPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-book',\n schema: {types: [schemaOrgBookSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgNewsArticlePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-newsarticle',\n schema: {types: [schemaOrgNewsArticleSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOpinionNewsArticlePlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-opinionnewsarticle',\n schema: {types: [schemaOrgOpinionNewsArticleSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgItemListPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-itemlist',\n schema: {types: [schemaOrgItemListSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgProfilePagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-profilepage',\n schema: {types: [schemaOrgProfilePageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgMusicRecordingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-musicrecording',\n schema: {types: [schemaOrgMusicRecordingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgMusicAlbumPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-musicalbum',\n schema: {types: [schemaOrgMusicAlbumSchema(config as SchemaOrgConfig)]},\n}))\n\n// ─── Combined Plugin ──────────────────────────────────────────────────────────\n\n/**\n * Registers **all** Schema.org types as a single Sanity plugin.\n * Includes a combined `schemaOrg` array type for multi-type fields.\n *\n * @example\n * ```ts\n * import { schemaOrg } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrg()],\n * })\n * ```\n */\nexport const schemaOrg = definePlugin<SchemaOrgCombinedConfig | void>((config = {}) => {\n const c = config as SchemaOrgCombinedConfig\n return {\n name: 'sanity-plugin-seofields/schema-org',\n schema: {\n types: [\n schemaOrgWebsiteSchema(c.website),\n schemaOrgOrganizationSchema(c.organization),\n schemaOrgWebPageSchema(c.webPage),\n schemaOrgPersonSchema(c.person),\n schemaOrgBreadcrumbListSchema(c.breadcrumbList),\n schemaOrgImageObjectSchema(c.imageObject),\n schemaOrgArticleSchema(c.article),\n schemaOrgBlogPostingSchema(c.blogPosting),\n schemaOrgFAQPageSchema(c.faqPage),\n schemaOrgHowToSchema(c.howTo),\n schemaOrgProductSchema(c.product),\n schemaOrgOfferSchema(c.offer),\n schemaOrgAggregateRatingSchema(c.aggregateRating),\n schemaOrgReviewSchema(c.review),\n schemaOrgBrandSchema(c.brand),\n schemaOrgLocalBusinessSchema(c.localBusiness),\n schemaOrgPostalAddressSchema(c.postalAddress),\n schemaOrgContactPointSchema(c.contactPoint),\n schemaOrgSoftwareApplicationSchema(c.softwareApplication),\n schemaOrgWebApplicationSchema(c.webApplication),\n schemaOrgEventSchema(c.event),\n schemaOrgPlaceSchema(c.place),\n schemaOrgVideoObjectSchema(c.videoObject),\n schemaOrgCourseSchema(c.course),\n schemaOrgRecipeSchema(c.recipe),\n schemaOrgServiceSchema(c.service),\n schemaOrgSocialMediaPostingSchema(c.socialMediaPosting),\n schemaOrgLegalServiceSchema(c.legalService),\n schemaOrgCountrySchema(c.country),\n schemaOrgJobPostingSchema(c.jobPosting),\n schemaOrgRestaurantSchema(c.restaurant),\n schemaOrgMovieSchema(c.movie),\n schemaOrgBookSchema(c.book),\n schemaOrgNewsArticleSchema(c.newsArticle),\n schemaOrgOpinionNewsArticleSchema(c.opinionNewsArticle),\n schemaOrgItemListSchema(c.itemList),\n schemaOrgProfilePageSchema(c.profilePage),\n schemaOrgMusicRecordingSchema(c.musicRecording),\n schemaOrgMusicAlbumSchema(c.musicAlbum),\n // Combined array type — lets editors add multiple schemas\n defineType({\n name: 'schemaOrg',\n title: 'Schema.org Structured Data',\n type: 'array',\n of: ALL_SCHEMA_ORG_TYPES.map((type) => ({type})),\n components: {\n input: TypePickerInput,\n },\n }),\n ],\n },\n }\n})\n"]}
1
+ {"version":3,"sources":["../src/schema/components/schemaTypeMetadata.ts","../src/schema/components/TypePickerInput.tsx","../src/schema/organization/schema.ts","../src/schema/website/schema.ts","../src/schema/schemaOrg.ts"],"names":[],"mappings":"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","file":"schema.js","sourcesContent":["/**\n * Metadata for Schema.org types — used by the TypePickerInput.\n * Each entry describes a type for the visual picker UI.\n */\n\nexport type SchemaTypeCategory =\n | 'content'\n | 'commerce'\n | 'media'\n | 'people'\n | 'navigation'\n | 'location'\n | 'software'\n | 'education'\n\nexport interface SchemaTypeInfo {\n /** Internal Sanity type name, e.g. \"schemaOrgArticle\" */\n type: string\n /** Display title */\n title: string\n /** Short description shown in the picker */\n description: string\n /** Category for grouping */\n category: SchemaTypeCategory\n /** Search keywords (matched in addition to title) */\n keywords: string[]\n}\n\nexport const CATEGORY_LABELS: Record<SchemaTypeCategory, string> = {\n content: 'Content & Pages',\n commerce: 'Commerce & Reviews',\n media: 'Media',\n people: 'People & Organizations',\n navigation: 'Navigation',\n location: 'Location & Events',\n software: 'Software',\n education: 'Education',\n}\n\nexport const CATEGORY_ORDER: SchemaTypeCategory[] = [\n 'content',\n 'commerce',\n 'people',\n 'media',\n 'navigation',\n 'location',\n 'software',\n 'education',\n]\n\nexport const SCHEMA_TYPE_METADATA: SchemaTypeInfo[] = [\n // ─── Content & Pages ──────────────────────────────────────────────\n {\n type: 'schemaOrgWebsite',\n title: 'Website',\n description: 'Represents an entire website with search action support.',\n category: 'content',\n keywords: ['site', 'homepage', 'search action'],\n },\n {\n type: 'schemaOrgWebPage',\n title: 'Web Page',\n description: 'A single web page with metadata and publisher info.',\n category: 'content',\n keywords: ['page', 'about', 'contact', 'landing'],\n },\n {\n type: 'schemaOrgArticle',\n title: 'Article',\n description: 'News articles, blog posts, and editorial content.',\n category: 'content',\n keywords: ['news', 'blog', 'post', 'editorial', 'story'],\n },\n {\n type: 'schemaOrgBlogPosting',\n title: 'Blog Posting',\n description: 'Blog post with author, date, and content metadata.',\n category: 'content',\n keywords: ['blog', 'post', 'writing'],\n },\n {\n type: 'schemaOrgFAQPage',\n title: 'FAQ Page',\n description: 'Frequently asked questions with rich result support.',\n category: 'content',\n keywords: ['faq', 'questions', 'answers', 'help'],\n },\n {\n type: 'schemaOrgHowTo',\n title: 'How-To',\n description: 'Step-by-step instructions with supplies, tools, and costs.',\n category: 'content',\n keywords: ['tutorial', 'guide', 'steps', 'instructions', 'diy'],\n },\n {\n type: 'schemaOrgRecipe',\n title: 'Recipe',\n description: 'Cooking recipes with ingredients, nutrition, and times.',\n category: 'content',\n keywords: ['cooking', 'food', 'ingredients', 'nutrition', 'meal'],\n },\n {\n type: 'schemaOrgSocialMediaPosting',\n title: 'Social Media Posting',\n description: 'Social media content with shared links and engagement.',\n category: 'content',\n keywords: ['social', 'post', 'share', 'twitter', 'facebook'],\n },\n\n // ─── Commerce & Reviews ───────────────────────────────────────────\n {\n type: 'schemaOrgProduct',\n title: 'Product',\n description: 'Products with pricing, ratings, and availability.',\n category: 'commerce',\n keywords: ['ecommerce', 'shop', 'buy', 'price', 'store'],\n },\n {\n type: 'schemaOrgOffer',\n title: 'Offer',\n description: 'Pricing and availability for products or services.',\n category: 'commerce',\n keywords: ['price', 'deal', 'discount', 'availability'],\n },\n {\n type: 'schemaOrgAggregateRating',\n title: 'Aggregate Rating',\n description: 'Overall rating from multiple reviews.',\n category: 'commerce',\n keywords: ['stars', 'rating', 'score', 'average'],\n },\n {\n type: 'schemaOrgReview',\n title: 'Review',\n description: 'Individual review with rating and author.',\n category: 'commerce',\n keywords: ['feedback', 'testimonial', 'rating', 'critique'],\n },\n {\n type: 'schemaOrgBrand',\n title: 'Brand',\n description: 'Brand identity and recognition.',\n category: 'commerce',\n keywords: ['brand', 'label', 'manufacturer'],\n },\n {\n type: 'schemaOrgService',\n title: 'Service',\n description: 'Professional services with provider and catalog.',\n category: 'commerce',\n keywords: ['consulting', 'professional', 'provider', 'catalog'],\n },\n\n // ─── People & Organizations ───────────────────────────────────────\n {\n type: 'schemaOrgPerson',\n title: 'Person',\n description: 'Individual profile with contact info and social links.',\n category: 'people',\n keywords: ['author', 'profile', 'employee', 'contact'],\n },\n {\n type: 'schemaOrgOrganization',\n title: 'Organization',\n description: 'Company or organization with departments and contacts.',\n category: 'people',\n keywords: ['company', 'business', 'corporation', 'ngo'],\n },\n {\n type: 'schemaOrgLocalBusiness',\n title: 'Local Business',\n description: 'Local business with hours, location, and reviews.',\n category: 'people',\n keywords: ['store', 'restaurant', 'shop', 'local', 'maps'],\n },\n {\n type: 'schemaOrgContactPoint',\n title: 'Contact Point',\n description: 'Contact information — phone, email, languages.',\n category: 'people',\n keywords: ['phone', 'email', 'support', 'helpdesk'],\n },\n {\n type: 'schemaOrgPostalAddress',\n title: 'Postal Address',\n description: 'Physical mailing address.',\n category: 'people',\n keywords: ['address', 'street', 'zip', 'city', 'mailing'],\n },\n\n // ─── Media ────────────────────────────────────────────────────────\n {\n type: 'schemaOrgImageObject',\n title: 'Image Object',\n description: 'Image with metadata, author, and location.',\n category: 'media',\n keywords: ['photo', 'picture', 'graphic', 'illustration'],\n },\n {\n type: 'schemaOrgVideoObject',\n title: 'Video Object',\n description: 'Video with thumbnails, duration, and seek actions.',\n category: 'media',\n keywords: ['video', 'youtube', 'vimeo', 'clip', 'film'],\n },\n\n // ─── Navigation ───────────────────────────────────────────────────\n {\n type: 'schemaOrgBreadcrumbList',\n title: 'Breadcrumb List',\n description: 'Page hierarchy breadcrumb trail for navigation.',\n category: 'navigation',\n keywords: ['breadcrumb', 'path', 'hierarchy', 'trail'],\n },\n\n // ─── Location & Events ────────────────────────────────────────────\n {\n type: 'schemaOrgEvent',\n title: 'Event',\n description: 'Events with dates, location, and organizer.',\n category: 'location',\n keywords: ['conference', 'meetup', 'webinar', 'concert'],\n },\n {\n type: 'schemaOrgPlace',\n title: 'Place',\n description: 'A physical location with address.',\n category: 'location',\n keywords: ['venue', 'location', 'landmark', 'spot'],\n },\n {\n type: 'schemaOrgCountry',\n title: 'Country',\n description: 'A country (extends Place) — useful for geographic targeting.',\n category: 'location',\n keywords: ['country', 'nation', 'geography', 'region'],\n },\n {\n type: 'schemaOrgLegalService',\n title: 'Legal Service',\n description: 'Law firm or legal practice (extends LocalBusiness).',\n category: 'people',\n keywords: ['law', 'lawyer', 'attorney', 'firm', 'legal'],\n },\n\n // ─── Software ─────────────────────────────────────────────────────\n {\n type: 'schemaOrgSoftwareApplication',\n title: 'Software Application',\n description: 'Desktop or mobile application.',\n category: 'software',\n keywords: ['app', 'tool', 'program', 'desktop', 'mobile'],\n },\n {\n type: 'schemaOrgWebApplication',\n title: 'Web Application',\n description: 'Web-based application or SaaS tool.',\n category: 'software',\n keywords: ['webapp', 'saas', 'online', 'cloud'],\n },\n\n // ─── Education ────────────────────────────────────────────────────\n {\n type: 'schemaOrgCourse',\n title: 'Course',\n description: 'Educational course with provider info.',\n category: 'education',\n keywords: ['learning', 'class', 'training', 'workshop', 'tutorial'],\n },\n\n // ─── New Schema Types ──────────────────────────────────────────────\n {\n type: 'schemaOrgJobPosting',\n title: 'Job Posting',\n description: 'A job listing with salary, location, and requirements.',\n category: 'people',\n keywords: ['job', 'career', 'hiring', 'employment', 'vacancy', 'work'],\n },\n {\n type: 'schemaOrgRestaurant',\n title: 'Restaurant',\n description: 'A restaurant or dining establishment.',\n category: 'commerce',\n keywords: ['restaurant', 'dining', 'food', 'cuisine', 'eatery'],\n },\n {\n type: 'schemaOrgMovie',\n title: 'Movie',\n description: 'A movie or film with cast and crew details.',\n category: 'media',\n keywords: ['movie', 'film', 'cinema', 'motion picture'],\n },\n {\n type: 'schemaOrgBook',\n title: 'Book',\n description: 'A book, e-book, or audiobook publication.',\n category: 'commerce',\n keywords: ['book', 'ebook', 'publication', 'novel', 'isbn'],\n },\n {\n type: 'schemaOrgNewsArticle',\n title: 'News Article',\n description: 'A news story — distinct from generic Article for news publishers.',\n category: 'content',\n keywords: ['news', 'journalism', 'press', 'story', 'report'],\n },\n {\n type: 'schemaOrgOpinionNewsArticle',\n title: 'Opinion News Article',\n description: 'Opinion/editorial piece — a NewsArticle subtype that strengthens E-E-A-T.',\n category: 'content',\n keywords: ['opinion', 'editorial', 'column', 'commentary', 'op-ed'],\n },\n {\n type: 'schemaOrgItemList',\n title: 'Item List',\n description: 'An ordered or unordered list of items (carousel).',\n category: 'navigation',\n keywords: ['list', 'carousel', 'items', 'collection'],\n },\n {\n type: 'schemaOrgProfilePage',\n title: 'Profile Page',\n description: 'A profile page for a person or organization.',\n category: 'content',\n keywords: ['profile', 'about', 'bio', 'author', 'creator'],\n },\n {\n type: 'schemaOrgMusicRecording',\n title: 'Music Recording',\n description: 'An individual song or music track.',\n category: 'media',\n keywords: ['song', 'track', 'music', 'recording', 'single'],\n },\n {\n type: 'schemaOrgMusicAlbum',\n title: 'Music Album',\n description: 'A music album or collection of tracks.',\n category: 'media',\n keywords: ['album', 'music', 'record', 'lp', 'ep', 'release'],\n },\n]\n","/* eslint-disable react/jsx-no-bind */\n/**\n * TypePickerInput — a modern command-palette style selector for Sanity array types.\n *\n * Replaces the default Sanity array \"Add\" button with a searchable, categorized\n * type picker dialog. Used by the `schemaOrg` combined array type.\n */\nimport {AddIcon, SearchIcon} from '@sanity/icons'\nimport {Box, Button, Card, Dialog, Flex, Grid, Heading, Stack, Text, TextInput} from '@sanity/ui'\nimport {type ChangeEvent, type ComponentType, JSX, useCallback, useMemo, useState} from 'react'\nimport type {ArrayInputFunctionsProps, ArraySchemaType} from 'sanity'\nimport type {InputProps} from 'sanity'\nimport {useFormValue} from 'sanity'\n\nimport {SchemaOrgJsonLdPreview, type SchemaOrgJsonLdPreviewOptions} from './SchemaOrgJsonLdPreview'\nimport {\n CATEGORY_LABELS,\n CATEGORY_ORDER,\n SCHEMA_TYPE_METADATA,\n type SchemaTypeCategory,\n type SchemaTypeInfo,\n} from './schemaTypeMetadata'\n\n// ─── Search Helpers ───────────────────────────────────────────────────────────\n\nfunction matchesSearch(info: SchemaTypeInfo, query: string): boolean {\n const q = query.toLowerCase()\n return (\n info.title.toLowerCase().includes(q) ||\n info.description.toLowerCase().includes(q) ||\n info.keywords.some((kw) => kw.toLowerCase().includes(q))\n )\n}\n\nfunction groupByCategory(items: SchemaTypeInfo[]): Map<SchemaTypeCategory, SchemaTypeInfo[]> {\n const map = new Map<SchemaTypeCategory, SchemaTypeInfo[]>()\n for (const cat of CATEGORY_ORDER) {\n const matches = items.filter((i) => i.category === cat)\n if (matches.length) map.set(cat, matches)\n }\n return map\n}\n\n// ─── Inner ArrayFunctions Component ───────────────────────────────────────────\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction TypeArrayFunctions(props: ArrayInputFunctionsProps<any, ArraySchemaType<any>>) {\n const {onValueCreate, schemaType, onItemAppend} = props\n const [open, setOpen] = useState(false)\n const [search, setSearch] = useState('')\n\n const onClose = useCallback(() => {\n setOpen(false)\n setSearch('')\n }, [])\n const onOpen = useCallback(() => setOpen(true), [])\n const handleSearchChange = useCallback((e: ChangeEvent<HTMLInputElement>) => {\n setSearch(e.currentTarget.value)\n }, [])\n\n // Map available schema types to their metadata\n const availableTypes = useMemo(() => {\n const typeNames = new Set(schemaType.of.map((t) => t.name))\n return SCHEMA_TYPE_METADATA.filter((m) => typeNames.has(m.type))\n }, [schemaType.of])\n\n // Filter by search query\n const filtered = useMemo(\n () => (search ? availableTypes.filter((t) => matchesSearch(t, search)) : availableTypes),\n [availableTypes, search],\n )\n\n const grouped = useMemo(() => groupByCategory(filtered), [filtered])\n\n const handleSelect = useCallback(\n (typeName: string) => {\n const schemaItem = schemaType.of.find((t) => t.name === typeName)\n if (schemaItem) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const value = onValueCreate(schemaItem as any)\n onItemAppend(value)\n }\n onClose()\n },\n [schemaType.of, onValueCreate, onItemAppend, onClose],\n )\n\n const handleCardClick = useCallback((typeName: string) => handleSelect(typeName), [handleSelect])\n\n return (\n <Stack space={4}>\n <Button icon={AddIcon} text=\"Add Schema Type\" mode=\"ghost\" onClick={onOpen} />\n\n {open && (\n <Dialog\n header=\"Add Schema.org Type\"\n id=\"schema-type-picker\"\n onClose={onClose}\n zOffset={1000}\n width={1}\n >\n <Box padding={4}>\n <Stack space={4}>\n {/* Search Input */}\n <TextInput\n icon={SearchIcon}\n placeholder=\"Search schema types…\"\n value={search}\n onChange={handleSearchChange}\n autoFocus\n />\n\n {/* Type Grid by Category */}\n {grouped.size === 0 ? (\n <Card padding={4} tone=\"transparent\">\n <Flex align=\"center\" justify=\"center\">\n <Text muted size={1}>\n No matching schema types found.\n </Text>\n </Flex>\n </Card>\n ) : (\n <Stack space={5}>\n {Array.from(grouped.entries()).map(([category, types]) => (\n <Stack key={category} space={3}>\n <Heading\n size={0}\n style={{textTransform: 'uppercase', letterSpacing: '0.05em'}}\n >\n {CATEGORY_LABELS[category]}\n </Heading>\n <Grid columns={[1, 1, 2]} gap={2}>\n {types.map((info) => {\n const schemaItem = schemaType.of.find((t) => t.name === info.type)\n const Icon = schemaItem?.icon as ComponentType | undefined\n return (\n <Card\n key={info.type}\n as=\"button\"\n padding={3}\n radius={2}\n shadow={1}\n tone=\"default\"\n onClick={() => handleCardClick(info.type)}\n style={{cursor: 'pointer', textAlign: 'left'}}\n >\n <Flex gap={3} align=\"flex-start\">\n {Icon && (\n <Box style={{flexShrink: 0, marginTop: 2}}>\n <Text size={2}>\n <Icon />\n </Text>\n </Box>\n )}\n <Stack space={2}>\n <Text weight=\"semibold\" size={1}>\n {info.title}\n </Text>\n <Text muted size={0}>\n {info.description}\n </Text>\n </Stack>\n </Flex>\n </Card>\n )\n })}\n </Grid>\n </Stack>\n ))}\n </Stack>\n )}\n </Stack>\n </Box>\n </Dialog>\n )}\n </Stack>\n )\n}\n\n// ─── Public Wrapper ───────────────────────────────────────────────────────────\n\n/**\n * Custom input component for the `schemaOrg` array type.\n *\n * Wraps the default array input and injects the `TypeArrayFunctions`\n * component for a categorized, searchable type picker experience.\n *\n * @example Usage in `schemaOrg.ts`:\n * ```ts\n * defineType({\n * name: 'schemaOrg',\n * type: 'array',\n * components: { input: TypePickerInput },\n * // ...\n * })\n * ```\n */\nexport default function TypePickerInput(props: InputProps): JSX.Element {\n const {renderDefault, schemaType} = props\n const rootDocument =\n (useFormValue([]) as ({_type?: string; _id?: string} & Record<string, unknown>) | null) ?? {}\n const previewConfig = (\n schemaType as {options?: {schemaOrgJsonLdPreview?: boolean | SchemaOrgJsonLdPreviewOptions}}\n ).options?.schemaOrgJsonLdPreview\n const options = typeof previewConfig === 'object' ? previewConfig : undefined\n const value = (props as {value?: Array<Record<string, unknown>>}).value\n\n return (\n <Stack space={3}>\n {renderDefault({...props, arrayFunctions: TypeArrayFunctions})}\n {previewConfig !== false && (\n <SchemaOrgJsonLdPreview\n {...options}\n value={value ?? null}\n document={rootDocument}\n fieldPreview\n />\n )}\n </Stack>\n )\n}\n","import type {SchemaTypeDefinition} from 'sanity'\n\nimport {nameField} from '../_shared'\nimport {generateSchemaType, SchemaFieldDef, SchemaOrgConfig} from '../generator'\nimport {SchemaOrgIcons} from '../icons'\nimport type {SchemaOrgOrganizationConfig, SchemaOrgOrganizationData} from './types'\n\n// ─── Field Definitions ────────────────────────────────────────────────────────\n\nexport const organizationFields: SchemaFieldDef[] = [\n nameField({\n title: 'Organization Name',\n description: 'The official name of the organization.',\n required: {key: 'nameRequired', message: 'Organization name is required for Schema.org.'},\n }),\n {\n name: 'url',\n title: 'Organization URL',\n type: 'url',\n description: 'The full URL of the organization website.',\n required: {key: 'urlRequired', message: 'Organization URL is required for Schema.org.'},\n },\n {\n name: 'logoUrl',\n title: 'Logo URL',\n type: 'url',\n description:\n 'Direct URL to the organization logo image. Used in search results and knowledge panels.',\n },\n {\n name: 'description',\n title: 'Description',\n type: 'text',\n rows: 3,\n description: 'A short description of the organization.',\n },\n {\n name: 'alternateName',\n title: 'Alternate Name',\n type: 'string',\n description: 'An alias or alternate name for the organization.',\n },\n {\n name: 'sameAs',\n title: 'Same As URL',\n type: 'url',\n description:\n 'URLs of social media profiles and other authoritative pages (Twitter, LinkedIn, GitHub, etc.).',\n urlValidation: {schemes: ['http', 'https']},\n },\n {\n name: 'contactPoint',\n title: 'Contact Point',\n type: 'object',\n description: 'Primary contact information for the organization.',\n fields: [\n {\n name: 'contactType',\n title: 'Contact Type',\n type: 'string',\n description: 'e.g. \"customer support\", \"sales\", \"technical support\".',\n initialValue: 'customer support',\n options: [\n {title: 'Customer Support', value: 'customer support'},\n {title: 'Sales', value: 'sales'},\n {title: 'Technical Support', value: 'technical support'},\n {title: 'Billing', value: 'billing'},\n {title: 'General Inquiry', value: 'general inquiry'},\n ],\n },\n {\n name: 'email',\n title: 'Email',\n type: 'string',\n description: 'Contact email address.',\n },\n {\n name: 'availableLanguage',\n title: 'Available Languages',\n type: 'array',\n of: [{type: 'string'}],\n description: 'Languages supported by this contact point, e.g. \"English\", \"Spanish\".',\n initialValue: ['English'],\n },\n ],\n },\n {\n name: 'department',\n title: 'Departments',\n type: 'array',\n description: 'Departments within the organization.',\n jsonLdType: 'Organization',\n fields: [\n {\n name: 'name',\n title: 'Department Name',\n type: 'string',\n },\n {\n name: 'url',\n title: 'Department URL',\n type: 'url',\n },\n {\n name: 'telephone',\n title: 'Department Phone',\n type: 'string',\n },\n ],\n },\n]\n\n// ─── Schema Factory ───────────────────────────────────────────────────────────\n\n/**\n * Schema.org Organization — Sanity object type.\n *\n * @example\n * ```ts\n * import { schemaOrgOrganization } from 'sanity-plugin-seofields/schema/organization'\n *\n * // Default\n * schemaOrgOrganization()\n *\n * // Custom validation messages\n * schemaOrgOrganization({\n * validation: { nameRequired: 'Company name is required.' },\n * })\n * ```\n */\nexport default function schemaOrgOrganization(\n config: SchemaOrgOrganizationConfig = {},\n): SchemaTypeDefinition {\n return generateSchemaType(\n {\n name: 'schemaOrgOrganization',\n title: 'Organization',\n icon: SchemaOrgIcons.organization,\n fields: organizationFields,\n customPrepareSubtitle: (document: SchemaOrgOrganizationData) =>\n document.name\n ? `${document.name}${document.url ? ` · ${document.url}` : ''}`\n : 'Untitled organization',\n },\n config as SchemaOrgConfig,\n )\n}\n","import type {SchemaTypeDefinition} from 'sanity'\n\nimport {\n descriptionField,\n inLanguageField,\n issnField,\n nameField,\n polymorphicPublisher,\n potentialActionSearch,\n urlField,\n // withCreativeWorkCommons,\n} from '../_shared'\nimport {generateSchemaType, SchemaFieldDef, SchemaOrgConfig} from '../generator'\nimport {SchemaOrgIcons} from '../icons'\nimport type {SchemaOrgWebsiteConfig, SchemaOrgWebsiteData} from './types'\n\n// ─── Field Definitions ────────────────────────────────────────────────────────\n\nexport const websiteFields: SchemaFieldDef[] = [\n nameField({\n title: 'Website Name',\n description: 'The name of the website.',\n required: {key: 'nameRequired', message: 'Website name is required for Schema.org.'},\n }),\n urlField({\n title: 'Website URL',\n description: 'The full URL of the website, e.g. \"https://www.example.com\".',\n required: {key: 'urlRequired', message: 'Website URL is required for Schema.org.'},\n }),\n descriptionField({\n description: 'A short description of the website.',\n }),\n inLanguageField({description: 'The language of the website content, e.g. \"en\".'}),\n polymorphicPublisher({description: 'The organization or person that publishes this website.'}),\n potentialActionSearch({\n description: 'Enables the sitelinks search box in Google. Configure the search URL template.',\n }),\n issnField({\n description: 'The ISSN (International Standard Serial Number) of the website, if applicable.',\n }),\n]\n\n// ─── Schema Factory ───────────────────────────────────────────────────────────\n\n/**\n * Schema.org WebSite — Sanity object type.\n *\n * @example\n * ```ts\n * import { schemaOrgWebsite } from 'sanity-plugin-seofields/schema/website'\n *\n * // Default\n * schemaOrgWebsite()\n *\n * // Custom validation messages\n * schemaOrgWebsite({\n * validation: { nameRequired: 'Please enter a website name.' },\n * })\n * ```\n */\nexport default function schemaOrgWebsite(\n config: SchemaOrgWebsiteConfig = {},\n): SchemaTypeDefinition {\n return generateSchemaType(\n {\n name: 'schemaOrgWebsite',\n title: 'Website',\n icon: SchemaOrgIcons.website,\n fields: websiteFields,\n customPrepareSubtitle: (document: SchemaOrgWebsiteData) => {\n const name = document.name ? `${document.name}` : 'Untitled website'\n const url = document.url ? ` · ${document.url}` : ''\n return `${name}${url}`\n },\n },\n config as SchemaOrgConfig,\n )\n}\n","/**\n * Schema.org plugins for sanity-plugin-seofields.\n *\n * Use as Sanity plugins (in `plugins` array) rather than raw schema types.\n *\n * @example Combined — all types at once\n * ```ts\n * import { schemaOrg } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrg()],\n * })\n * ```\n *\n * @example Individual — only the types you need\n * ```ts\n * import { schemaOrgArticlePlugin, schemaOrgFAQPagePlugin } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrgArticlePlugin(), schemaOrgFAQPagePlugin()],\n * })\n * ```\n *\n * @example Then use in any document schema\n * ```ts\n * defineField({ name: 'structuredData', type: 'schemaOrg' })\n * defineField({ name: 'article', type: 'schemaOrgArticle' })\n * ```\n */\nimport {definePlugin, defineType} from 'sanity'\n\nimport schemaOrgAggregateRatingSchema from './aggregateRating/schema'\nimport schemaOrgArticleSchema from './article/schema'\nimport schemaOrgBlogPostingSchema from './blogPosting/schema'\nimport schemaOrgBookSchema from './book/schema'\nimport schemaOrgBrandSchema from './brand/schema'\nimport schemaOrgBreadcrumbListSchema from './breadcrumbList/schema'\nimport TypePickerInput from './components/TypePickerInput'\nimport schemaOrgContactPointSchema from './contactPoint/schema'\nimport schemaOrgCountrySchema from './country/schema'\nimport schemaOrgCourseSchema from './course/schema'\nimport schemaOrgEventSchema from './event/schema'\nimport schemaOrgFAQPageSchema from './faqPage/schema'\nimport type {SchemaOrgConfig} from './generator'\nimport schemaOrgHowToSchema from './howTo/schema'\nimport schemaOrgImageObjectSchema from './imageObject/schema'\nimport schemaOrgItemListSchema from './itemList/schema'\nimport schemaOrgJobPostingSchema from './jobPosting/schema'\nimport schemaOrgLegalServiceSchema from './legalService/schema'\nimport schemaOrgLocalBusinessSchema from './localBusiness/schema'\nimport schemaOrgMovieSchema from './movie/schema'\nimport schemaOrgMusicAlbumSchema from './musicAlbum/schema'\nimport schemaOrgMusicRecordingSchema from './musicRecording/schema'\nimport schemaOrgNewsArticleSchema from './newsArticle/schema'\nimport schemaOrgOfferSchema from './offer/schema'\nimport schemaOrgOpinionNewsArticleSchema from './opinionNewsArticle/schema'\nimport schemaOrgOrganizationSchema from './organization/schema'\nimport schemaOrgPersonSchema from './person/schema'\nimport schemaOrgPlaceSchema from './place/schema'\nimport schemaOrgPostalAddressSchema from './postalAddress/schema'\nimport schemaOrgProductSchema from './product/schema'\nimport schemaOrgProfilePageSchema from './profilePage/schema'\nimport schemaOrgRecipeSchema from './recipe/schema'\nimport schemaOrgRestaurantSchema from './restaurant/schema'\nimport schemaOrgReviewSchema from './review/schema'\nimport schemaOrgServiceSchema from './service/schema'\nimport schemaOrgSocialMediaPostingSchema from './socialMediaPosting/schema'\nimport schemaOrgSoftwareApplicationSchema from './softwareApplication/schema'\nimport schemaOrgVideoObjectSchema from './videoObject/schema'\nimport schemaOrgWebApplicationSchema from './webApplication/schema'\nimport schemaOrgWebPageSchema from './webPage/schema'\nimport schemaOrgWebsiteSchema from './website/schema'\n\n// ─── Combined Config ──────────────────────────────────────────────────────────\n\n/** Per-type validation overrides for the combined `schemaOrg()` plugin. */\nexport interface SchemaOrgCombinedConfig {\n /** Configure the live JSON-LD preview shown below the combined `schemaOrg` array field. */\n jsonLdPreview?: SchemaOrgConfig['jsonLdPreview']\n website?: SchemaOrgConfig\n organization?: SchemaOrgConfig\n webPage?: SchemaOrgConfig\n person?: SchemaOrgConfig\n breadcrumbList?: SchemaOrgConfig\n imageObject?: SchemaOrgConfig\n article?: SchemaOrgConfig\n blogPosting?: SchemaOrgConfig\n faqPage?: SchemaOrgConfig\n howTo?: SchemaOrgConfig\n product?: SchemaOrgConfig\n offer?: SchemaOrgConfig\n aggregateRating?: SchemaOrgConfig\n review?: SchemaOrgConfig\n brand?: SchemaOrgConfig\n localBusiness?: SchemaOrgConfig\n postalAddress?: SchemaOrgConfig\n contactPoint?: SchemaOrgConfig\n softwareApplication?: SchemaOrgConfig\n webApplication?: SchemaOrgConfig\n event?: SchemaOrgConfig\n place?: SchemaOrgConfig\n videoObject?: SchemaOrgConfig\n course?: SchemaOrgConfig\n recipe?: SchemaOrgConfig\n service?: SchemaOrgConfig\n socialMediaPosting?: SchemaOrgConfig\n legalService?: SchemaOrgConfig\n country?: SchemaOrgConfig\n jobPosting?: SchemaOrgConfig\n restaurant?: SchemaOrgConfig\n movie?: SchemaOrgConfig\n book?: SchemaOrgConfig\n newsArticle?: SchemaOrgConfig\n opinionNewsArticle?: SchemaOrgConfig\n itemList?: SchemaOrgConfig\n profilePage?: SchemaOrgConfig\n musicRecording?: SchemaOrgConfig\n musicAlbum?: SchemaOrgConfig\n}\n\n// ─── Array type member list ───────────────────────────────────────────────────\n\nconst ALL_SCHEMA_ORG_TYPES = [\n 'schemaOrgWebsite',\n 'schemaOrgOrganization',\n 'schemaOrgWebPage',\n 'schemaOrgPerson',\n 'schemaOrgArticle',\n 'schemaOrgBlogPosting',\n 'schemaOrgBreadcrumbList',\n 'schemaOrgFAQPage',\n 'schemaOrgHowTo',\n 'schemaOrgProduct',\n 'schemaOrgOffer',\n 'schemaOrgAggregateRating',\n 'schemaOrgReview',\n 'schemaOrgBrand',\n 'schemaOrgLocalBusiness',\n 'schemaOrgEvent',\n 'schemaOrgPlace',\n 'schemaOrgSoftwareApplication',\n 'schemaOrgWebApplication',\n 'schemaOrgVideoObject',\n 'schemaOrgCourse',\n 'schemaOrgImageObject',\n 'schemaOrgPostalAddress',\n 'schemaOrgContactPoint',\n 'schemaOrgRecipe',\n 'schemaOrgService',\n 'schemaOrgSocialMediaPosting',\n 'schemaOrgLegalService',\n 'schemaOrgCountry',\n 'schemaOrgJobPosting',\n 'schemaOrgRestaurant',\n 'schemaOrgMovie',\n 'schemaOrgBook',\n 'schemaOrgNewsArticle',\n 'schemaOrgOpinionNewsArticle',\n 'schemaOrgItemList',\n 'schemaOrgProfilePage',\n 'schemaOrgMusicRecording',\n 'schemaOrgMusicAlbum',\n] as const\n\n// ─── Individual Plugins ───────────────────────────────────────────────────────\n\nexport const schemaOrgWebsitePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-website',\n schema: {types: [schemaOrgWebsiteSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOrganizationPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-organization',\n schema: {types: [schemaOrgOrganizationSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgWebPagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-webpage',\n schema: {types: [schemaOrgWebPageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPersonPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-person',\n schema: {types: [schemaOrgPersonSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBreadcrumbListPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-breadcrumblist',\n schema: {types: [schemaOrgBreadcrumbListSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgImageObjectPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-imageobject',\n schema: {types: [schemaOrgImageObjectSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgArticlePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-article',\n schema: {types: [schemaOrgArticleSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBlogPostingPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-blogposting',\n schema: {types: [schemaOrgBlogPostingSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgFAQPagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-faqpage',\n schema: {types: [schemaOrgFAQPageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgHowToPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-howto',\n schema: {types: [schemaOrgHowToSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgProductPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-product',\n schema: {types: [schemaOrgProductSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOfferPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-offer',\n schema: {types: [schemaOrgOfferSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgAggregateRatingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-aggregaterating',\n schema: {types: [schemaOrgAggregateRatingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgReviewPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-review',\n schema: {types: [schemaOrgReviewSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBrandPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-brand',\n schema: {types: [schemaOrgBrandSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgLocalBusinessPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-localbusiness',\n schema: {types: [schemaOrgLocalBusinessSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPostalAddressPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-postaladdress',\n schema: {types: [schemaOrgPostalAddressSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgContactPointPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-contactpoint',\n schema: {types: [schemaOrgContactPointSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgSoftwareApplicationPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-softwareapplication',\n schema: {types: [schemaOrgSoftwareApplicationSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgWebApplicationPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-webapplication',\n schema: {types: [schemaOrgWebApplicationSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgEventPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-event',\n schema: {types: [schemaOrgEventSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgPlacePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-place',\n schema: {types: [schemaOrgPlaceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgVideoObjectPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-videoobject',\n schema: {types: [schemaOrgVideoObjectSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgCoursePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-course',\n schema: {types: [schemaOrgCourseSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgRecipePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-recipe',\n schema: {types: [schemaOrgRecipeSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgServicePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-service',\n schema: {types: [schemaOrgServiceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgSocialMediaPostingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-socialmediaposting',\n schema: {types: [schemaOrgSocialMediaPostingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgLegalServicePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-legalservice',\n schema: {types: [schemaOrgLegalServiceSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgCountryPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-country',\n schema: {types: [schemaOrgCountrySchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgJobPostingPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-jobposting',\n schema: {types: [schemaOrgJobPostingSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgRestaurantPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-restaurant',\n schema: {types: [schemaOrgRestaurantSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgMoviePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-movie',\n schema: {types: [schemaOrgMovieSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgBookPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-book',\n schema: {types: [schemaOrgBookSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgNewsArticlePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-newsarticle',\n schema: {types: [schemaOrgNewsArticleSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgOpinionNewsArticlePlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-opinionnewsarticle',\n schema: {types: [schemaOrgOpinionNewsArticleSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgItemListPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-itemlist',\n schema: {types: [schemaOrgItemListSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgProfilePagePlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-profilepage',\n schema: {types: [schemaOrgProfilePageSchema(config as SchemaOrgConfig)]},\n}))\n\nexport const schemaOrgMusicRecordingPlugin = definePlugin<SchemaOrgConfig | void>(\n (config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-musicrecording',\n schema: {types: [schemaOrgMusicRecordingSchema(config as SchemaOrgConfig)]},\n }),\n)\n\nexport const schemaOrgMusicAlbumPlugin = definePlugin<SchemaOrgConfig | void>((config = {}) => ({\n name: 'sanity-plugin-seofields/schema-org-musicalbum',\n schema: {types: [schemaOrgMusicAlbumSchema(config as SchemaOrgConfig)]},\n}))\n\n// ─── Combined Plugin ──────────────────────────────────────────────────────────\n\n/**\n * Registers **all** Schema.org types as a single Sanity plugin.\n * Includes a combined `schemaOrg` array type for multi-type fields.\n *\n * @example\n * ```ts\n * import { schemaOrg } from 'sanity-plugin-seofields/schema'\n *\n * export default defineConfig({\n * plugins: [schemaOrg()],\n * })\n * ```\n */\nexport const schemaOrg = definePlugin<SchemaOrgCombinedConfig | void>((config = {}) => {\n const c = config as SchemaOrgCombinedConfig\n return {\n name: 'sanity-plugin-seofields/schema-org',\n schema: {\n types: [\n schemaOrgWebsiteSchema(c.website),\n schemaOrgOrganizationSchema(c.organization),\n schemaOrgWebPageSchema(c.webPage),\n schemaOrgPersonSchema(c.person),\n schemaOrgBreadcrumbListSchema(c.breadcrumbList),\n schemaOrgImageObjectSchema(c.imageObject),\n schemaOrgArticleSchema(c.article),\n schemaOrgBlogPostingSchema(c.blogPosting),\n schemaOrgFAQPageSchema(c.faqPage),\n schemaOrgHowToSchema(c.howTo),\n schemaOrgProductSchema(c.product),\n schemaOrgOfferSchema(c.offer),\n schemaOrgAggregateRatingSchema(c.aggregateRating),\n schemaOrgReviewSchema(c.review),\n schemaOrgBrandSchema(c.brand),\n schemaOrgLocalBusinessSchema(c.localBusiness),\n schemaOrgPostalAddressSchema(c.postalAddress),\n schemaOrgContactPointSchema(c.contactPoint),\n schemaOrgSoftwareApplicationSchema(c.softwareApplication),\n schemaOrgWebApplicationSchema(c.webApplication),\n schemaOrgEventSchema(c.event),\n schemaOrgPlaceSchema(c.place),\n schemaOrgVideoObjectSchema(c.videoObject),\n schemaOrgCourseSchema(c.course),\n schemaOrgRecipeSchema(c.recipe),\n schemaOrgServiceSchema(c.service),\n schemaOrgSocialMediaPostingSchema(c.socialMediaPosting),\n schemaOrgLegalServiceSchema(c.legalService),\n schemaOrgCountrySchema(c.country),\n schemaOrgJobPostingSchema(c.jobPosting),\n schemaOrgRestaurantSchema(c.restaurant),\n schemaOrgMovieSchema(c.movie),\n schemaOrgBookSchema(c.book),\n schemaOrgNewsArticleSchema(c.newsArticle),\n schemaOrgOpinionNewsArticleSchema(c.opinionNewsArticle),\n schemaOrgItemListSchema(c.itemList),\n schemaOrgProfilePageSchema(c.profilePage),\n schemaOrgMusicRecordingSchema(c.musicRecording),\n schemaOrgMusicAlbumSchema(c.musicAlbum),\n // Combined array type — lets editors add multiple schemas\n defineType({\n name: 'schemaOrg',\n title: 'Schema.org Structured Data',\n type: 'array',\n of: ALL_SCHEMA_ORG_TYPES.map((type) => ({type})),\n components: {\n input: TypePickerInput,\n },\n options: {\n schemaOrgJsonLdPreview: c.jsonLdPreview,\n } as never,\n }),\n ],\n },\n }\n})\n"]}
@@ -1,4 +1,31 @@
1
- import { b as SanityImage } from './types-B91ena4g.js';
1
+ import { JSX } from 'react';
2
+ import { b as SanityImage } from './types-yVmQfby9.cjs';
3
+
4
+ /**
5
+ * <SchemaOrgScripts> — Renders multiple Schema.org JSON-LD script tags
6
+ * from a combined `schemaOrg` array field.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * import { SchemaOrgScripts } from 'sanity-plugin-seofields/next'
11
+ *
12
+ * const data = await sanityFetch({ query: `*[_type == "settings"][0]{ structuredData }` })
13
+ *
14
+ * <SchemaOrgScripts data={data.structuredData} />
15
+ * ```
16
+ */
17
+
18
+ declare function buildSchemaOrgJsonLd(item: Record<string, unknown>): Record<string, unknown> | null;
19
+ declare function buildSchemaOrgJsonLds(data?: Array<Record<string, unknown>> | null): Array<Record<string, unknown>>;
20
+ interface SchemaOrgScriptsProps {
21
+ /** Array of Schema.org items from the combined `schemaOrg` field. */
22
+ data?: Array<Record<string, unknown>> | null;
23
+ }
24
+ /**
25
+ * Renders one `<script type="application/ld+json">` tag per Schema.org item.
26
+ * Skips items that fail validation (missing required fields).
27
+ */
28
+ declare function SchemaOrgScripts({ data }: SchemaOrgScriptsProps): JSX.Element | null;
2
29
 
3
30
  /** Copyright year: static number or dynamic (current year) */
4
31
  type SchemaOrgCopyrightYear = number | {
@@ -1230,4 +1257,4 @@ interface SchemaOrgWebsiteConfig {
1230
1257
  };
1231
1258
  }
1232
1259
 
1233
- export type { SchemaOrgEventData as $, SchemaOrgProductConfig as A, SchemaOrgProfilePageConfig as B, SchemaOrgRecipeConfig as C, SchemaOrgRestaurantConfig as D, SchemaOrgReviewConfig as E, SchemaOrgServiceConfig as F, SchemaOrgSoftwareApplicationConfig as G, SchemaOrgVideoObjectConfig as H, SchemaOrgWebApplicationConfig as I, SchemaOrgWebPageConfig as J, SchemaOrgWebsiteConfig as K, SchemaOrgAggregateRating as L, SchemaOrgAggregateRatingData as M, SchemaOrgArchivedAt as N, OrganizationContactPoint as O, SchemaOrgArticleData as P, SchemaOrgBlogPostingData as Q, SchemaOrgBookData as R, SchemaOrgAggregateRatingConfig as S, SchemaOrgBrandData as T, SchemaOrgBreadcrumbListData as U, SchemaOrgContactPointData as V, SchemaOrgContentRating as W, SchemaOrgCopyrightYear as X, SchemaOrgCountryData as Y, SchemaOrgCourseData as Z, SchemaOrgCreativeWorkData as _, SchemaOrgArticleConfig as a, SchemaOrgFAQPageData as a0, SchemaOrgHowToData as a1, SchemaOrgImageInput as a2, SchemaOrgImageObjectData as a3, SchemaOrgItemListData as a4, SchemaOrgJobPostingData as a5, SchemaOrgLegalServiceData as a6, SchemaOrgLocalBusinessData as a7, SchemaOrgMovieData as a8, SchemaOrgMusicAlbumData as a9, SchemaOrgMusicRecordingData as aa, SchemaOrgNewsArticleData as ab, SchemaOrgOfferData as ac, SchemaOrgOpinionNewsArticleData as ad, SchemaOrgOrganizationData as ae, SchemaOrgOrganizationInput as af, SchemaOrgPersonData as ag, SchemaOrgPersonOrOrganization as ah, SchemaOrgPlaceData as ai, SchemaOrgPostalAddressData as aj, SchemaOrgProductData as ak, SchemaOrgProfilePageData as al, SchemaOrgRecipeData as am, SchemaOrgRestaurantData as an, SchemaOrgReviewData as ao, SchemaOrgServiceData as ap, SchemaOrgSoftwareApplicationData as aq, SchemaOrgTextOrUrl as ar, SchemaOrgThingData as as, SchemaOrgVideoObjectData as at, SchemaOrgWebApplicationData as au, SchemaOrgWebPageData as av, SchemaOrgWebsiteData as aw, SchemaOrgBlogPostingConfig as b, SchemaOrgBookConfig as c, SchemaOrgBrandConfig as d, SchemaOrgBreadcrumbListConfig as e, SchemaOrgContactPointConfig as f, SchemaOrgCountryConfig as g, SchemaOrgCourseConfig as h, SchemaOrgEventConfig as i, SchemaOrgFAQPageConfig as j, SchemaOrgHowToConfig as k, SchemaOrgImageObjectConfig as l, SchemaOrgItemListConfig as m, SchemaOrgJobPostingConfig as n, SchemaOrgLegalServiceConfig as o, SchemaOrgLocalBusinessConfig as p, SchemaOrgMovieConfig as q, SchemaOrgMusicAlbumConfig as r, SchemaOrgMusicRecordingConfig as s, SchemaOrgNewsArticleConfig as t, SchemaOrgOfferConfig as u, SchemaOrgOpinionNewsArticleConfig as v, SchemaOrgOrganizationConfig as w, SchemaOrgPersonConfig as x, SchemaOrgPlaceConfig as y, SchemaOrgPostalAddressConfig as z };
1260
+ export { type SchemaOrgCopyrightYear as $, type SchemaOrgOrganizationConfig as A, type SchemaOrgPersonConfig as B, type SchemaOrgPlaceConfig as C, type SchemaOrgPostalAddressConfig as D, type SchemaOrgProductConfig as E, type SchemaOrgProfilePageConfig as F, type SchemaOrgRecipeConfig as G, type SchemaOrgRestaurantConfig as H, type SchemaOrgReviewConfig as I, type SchemaOrgServiceConfig as J, type SchemaOrgSoftwareApplicationConfig as K, type SchemaOrgVideoObjectConfig as L, type SchemaOrgWebApplicationConfig as M, type SchemaOrgWebPageConfig as N, type SchemaOrgWebsiteConfig as O, type OrganizationContactPoint as P, type SchemaOrgAggregateRating as Q, type SchemaOrgAggregateRatingData as R, SchemaOrgScripts as S, type SchemaOrgArchivedAt as T, type SchemaOrgArticleData as U, type SchemaOrgBlogPostingData as V, type SchemaOrgBookData as W, type SchemaOrgBrandData as X, type SchemaOrgBreadcrumbListData as Y, type SchemaOrgContactPointData as Z, type SchemaOrgContentRating as _, type SchemaOrgScriptsProps as a, type SchemaOrgCountryData as a0, type SchemaOrgCourseData as a1, type SchemaOrgCreativeWorkData as a2, type SchemaOrgEventData as a3, type SchemaOrgFAQPageData as a4, type SchemaOrgHowToData as a5, type SchemaOrgImageInput as a6, type SchemaOrgImageObjectData as a7, type SchemaOrgItemListData as a8, type SchemaOrgJobPostingData as a9, type SchemaOrgWebsiteData as aA, type SchemaOrgLegalServiceData as aa, type SchemaOrgLocalBusinessData as ab, type SchemaOrgMovieData as ac, type SchemaOrgMusicAlbumData as ad, type SchemaOrgMusicRecordingData as ae, type SchemaOrgNewsArticleData as af, type SchemaOrgOfferData as ag, type SchemaOrgOpinionNewsArticleData as ah, type SchemaOrgOrganizationData as ai, type SchemaOrgOrganizationInput as aj, type SchemaOrgPersonData as ak, type SchemaOrgPersonOrOrganization as al, type SchemaOrgPlaceData as am, type SchemaOrgPostalAddressData as an, type SchemaOrgProductData as ao, type SchemaOrgProfilePageData as ap, type SchemaOrgRecipeData as aq, type SchemaOrgRestaurantData as ar, type SchemaOrgReviewData as as, type SchemaOrgServiceData as at, type SchemaOrgSoftwareApplicationData as au, type SchemaOrgTextOrUrl as av, type SchemaOrgThingData as aw, type SchemaOrgVideoObjectData as ax, type SchemaOrgWebApplicationData as ay, type SchemaOrgWebPageData as az, buildSchemaOrgJsonLd as b, buildSchemaOrgJsonLds as c, type SchemaOrgAggregateRatingConfig as d, type SchemaOrgArticleConfig as e, type SchemaOrgBlogPostingConfig as f, type SchemaOrgBookConfig as g, type SchemaOrgBrandConfig as h, type SchemaOrgBreadcrumbListConfig as i, type SchemaOrgContactPointConfig as j, type SchemaOrgCountryConfig as k, type SchemaOrgCourseConfig as l, type SchemaOrgEventConfig as m, type SchemaOrgFAQPageConfig as n, type SchemaOrgHowToConfig as o, type SchemaOrgImageObjectConfig as p, type SchemaOrgItemListConfig as q, type SchemaOrgJobPostingConfig as r, type SchemaOrgLegalServiceConfig as s, type SchemaOrgLocalBusinessConfig as t, type SchemaOrgMovieConfig as u, type SchemaOrgMusicAlbumConfig as v, type SchemaOrgMusicRecordingConfig as w, type SchemaOrgNewsArticleConfig as x, type SchemaOrgOfferConfig as y, type SchemaOrgOpinionNewsArticleConfig as z };
@@ -1,4 +1,4 @@
1
- import { _ as SchemaOrgCreativeWorkData } from './types-Bb49oRBV.cjs';
1
+ import { a2 as SchemaOrgCreativeWorkData } from './types-BXSCbl6p.cjs';
2
2
 
3
3
  /** Shared content item nested within the SocialMediaPosting schema */
4
4
  interface SocialMediaPostingSharedContent {
@@ -1,4 +1,31 @@
1
- import { b as SanityImage } from './types-B91ena4g.cjs';
1
+ import { JSX } from 'react';
2
+ import { b as SanityImage } from './types-yVmQfby9.js';
3
+
4
+ /**
5
+ * <SchemaOrgScripts> — Renders multiple Schema.org JSON-LD script tags
6
+ * from a combined `schemaOrg` array field.
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * import { SchemaOrgScripts } from 'sanity-plugin-seofields/next'
11
+ *
12
+ * const data = await sanityFetch({ query: `*[_type == "settings"][0]{ structuredData }` })
13
+ *
14
+ * <SchemaOrgScripts data={data.structuredData} />
15
+ * ```
16
+ */
17
+
18
+ declare function buildSchemaOrgJsonLd(item: Record<string, unknown>): Record<string, unknown> | null;
19
+ declare function buildSchemaOrgJsonLds(data?: Array<Record<string, unknown>> | null): Array<Record<string, unknown>>;
20
+ interface SchemaOrgScriptsProps {
21
+ /** Array of Schema.org items from the combined `schemaOrg` field. */
22
+ data?: Array<Record<string, unknown>> | null;
23
+ }
24
+ /**
25
+ * Renders one `<script type="application/ld+json">` tag per Schema.org item.
26
+ * Skips items that fail validation (missing required fields).
27
+ */
28
+ declare function SchemaOrgScripts({ data }: SchemaOrgScriptsProps): JSX.Element | null;
2
29
 
3
30
  /** Copyright year: static number or dynamic (current year) */
4
31
  type SchemaOrgCopyrightYear = number | {
@@ -1230,4 +1257,4 @@ interface SchemaOrgWebsiteConfig {
1230
1257
  };
1231
1258
  }
1232
1259
 
1233
- export type { SchemaOrgEventData as $, SchemaOrgProductConfig as A, SchemaOrgProfilePageConfig as B, SchemaOrgRecipeConfig as C, SchemaOrgRestaurantConfig as D, SchemaOrgReviewConfig as E, SchemaOrgServiceConfig as F, SchemaOrgSoftwareApplicationConfig as G, SchemaOrgVideoObjectConfig as H, SchemaOrgWebApplicationConfig as I, SchemaOrgWebPageConfig as J, SchemaOrgWebsiteConfig as K, SchemaOrgAggregateRating as L, SchemaOrgAggregateRatingData as M, SchemaOrgArchivedAt as N, OrganizationContactPoint as O, SchemaOrgArticleData as P, SchemaOrgBlogPostingData as Q, SchemaOrgBookData as R, SchemaOrgAggregateRatingConfig as S, SchemaOrgBrandData as T, SchemaOrgBreadcrumbListData as U, SchemaOrgContactPointData as V, SchemaOrgContentRating as W, SchemaOrgCopyrightYear as X, SchemaOrgCountryData as Y, SchemaOrgCourseData as Z, SchemaOrgCreativeWorkData as _, SchemaOrgArticleConfig as a, SchemaOrgFAQPageData as a0, SchemaOrgHowToData as a1, SchemaOrgImageInput as a2, SchemaOrgImageObjectData as a3, SchemaOrgItemListData as a4, SchemaOrgJobPostingData as a5, SchemaOrgLegalServiceData as a6, SchemaOrgLocalBusinessData as a7, SchemaOrgMovieData as a8, SchemaOrgMusicAlbumData as a9, SchemaOrgMusicRecordingData as aa, SchemaOrgNewsArticleData as ab, SchemaOrgOfferData as ac, SchemaOrgOpinionNewsArticleData as ad, SchemaOrgOrganizationData as ae, SchemaOrgOrganizationInput as af, SchemaOrgPersonData as ag, SchemaOrgPersonOrOrganization as ah, SchemaOrgPlaceData as ai, SchemaOrgPostalAddressData as aj, SchemaOrgProductData as ak, SchemaOrgProfilePageData as al, SchemaOrgRecipeData as am, SchemaOrgRestaurantData as an, SchemaOrgReviewData as ao, SchemaOrgServiceData as ap, SchemaOrgSoftwareApplicationData as aq, SchemaOrgTextOrUrl as ar, SchemaOrgThingData as as, SchemaOrgVideoObjectData as at, SchemaOrgWebApplicationData as au, SchemaOrgWebPageData as av, SchemaOrgWebsiteData as aw, SchemaOrgBlogPostingConfig as b, SchemaOrgBookConfig as c, SchemaOrgBrandConfig as d, SchemaOrgBreadcrumbListConfig as e, SchemaOrgContactPointConfig as f, SchemaOrgCountryConfig as g, SchemaOrgCourseConfig as h, SchemaOrgEventConfig as i, SchemaOrgFAQPageConfig as j, SchemaOrgHowToConfig as k, SchemaOrgImageObjectConfig as l, SchemaOrgItemListConfig as m, SchemaOrgJobPostingConfig as n, SchemaOrgLegalServiceConfig as o, SchemaOrgLocalBusinessConfig as p, SchemaOrgMovieConfig as q, SchemaOrgMusicAlbumConfig as r, SchemaOrgMusicRecordingConfig as s, SchemaOrgNewsArticleConfig as t, SchemaOrgOfferConfig as u, SchemaOrgOpinionNewsArticleConfig as v, SchemaOrgOrganizationConfig as w, SchemaOrgPersonConfig as x, SchemaOrgPlaceConfig as y, SchemaOrgPostalAddressConfig as z };
1260
+ export { type SchemaOrgCopyrightYear as $, type SchemaOrgOrganizationConfig as A, type SchemaOrgPersonConfig as B, type SchemaOrgPlaceConfig as C, type SchemaOrgPostalAddressConfig as D, type SchemaOrgProductConfig as E, type SchemaOrgProfilePageConfig as F, type SchemaOrgRecipeConfig as G, type SchemaOrgRestaurantConfig as H, type SchemaOrgReviewConfig as I, type SchemaOrgServiceConfig as J, type SchemaOrgSoftwareApplicationConfig as K, type SchemaOrgVideoObjectConfig as L, type SchemaOrgWebApplicationConfig as M, type SchemaOrgWebPageConfig as N, type SchemaOrgWebsiteConfig as O, type OrganizationContactPoint as P, type SchemaOrgAggregateRating as Q, type SchemaOrgAggregateRatingData as R, SchemaOrgScripts as S, type SchemaOrgArchivedAt as T, type SchemaOrgArticleData as U, type SchemaOrgBlogPostingData as V, type SchemaOrgBookData as W, type SchemaOrgBrandData as X, type SchemaOrgBreadcrumbListData as Y, type SchemaOrgContactPointData as Z, type SchemaOrgContentRating as _, type SchemaOrgScriptsProps as a, type SchemaOrgCountryData as a0, type SchemaOrgCourseData as a1, type SchemaOrgCreativeWorkData as a2, type SchemaOrgEventData as a3, type SchemaOrgFAQPageData as a4, type SchemaOrgHowToData as a5, type SchemaOrgImageInput as a6, type SchemaOrgImageObjectData as a7, type SchemaOrgItemListData as a8, type SchemaOrgJobPostingData as a9, type SchemaOrgWebsiteData as aA, type SchemaOrgLegalServiceData as aa, type SchemaOrgLocalBusinessData as ab, type SchemaOrgMovieData as ac, type SchemaOrgMusicAlbumData as ad, type SchemaOrgMusicRecordingData as ae, type SchemaOrgNewsArticleData as af, type SchemaOrgOfferData as ag, type SchemaOrgOpinionNewsArticleData as ah, type SchemaOrgOrganizationData as ai, type SchemaOrgOrganizationInput as aj, type SchemaOrgPersonData as ak, type SchemaOrgPersonOrOrganization as al, type SchemaOrgPlaceData as am, type SchemaOrgPostalAddressData as an, type SchemaOrgProductData as ao, type SchemaOrgProfilePageData as ap, type SchemaOrgRecipeData as aq, type SchemaOrgRestaurantData as ar, type SchemaOrgReviewData as as, type SchemaOrgServiceData as at, type SchemaOrgSoftwareApplicationData as au, type SchemaOrgTextOrUrl as av, type SchemaOrgThingData as aw, type SchemaOrgVideoObjectData as ax, type SchemaOrgWebApplicationData as ay, type SchemaOrgWebPageData as az, buildSchemaOrgJsonLd as b, buildSchemaOrgJsonLds as c, type SchemaOrgAggregateRatingConfig as d, type SchemaOrgArticleConfig as e, type SchemaOrgBlogPostingConfig as f, type SchemaOrgBookConfig as g, type SchemaOrgBrandConfig as h, type SchemaOrgBreadcrumbListConfig as i, type SchemaOrgContactPointConfig as j, type SchemaOrgCountryConfig as k, type SchemaOrgCourseConfig as l, type SchemaOrgEventConfig as m, type SchemaOrgFAQPageConfig as n, type SchemaOrgHowToConfig as o, type SchemaOrgImageObjectConfig as p, type SchemaOrgItemListConfig as q, type SchemaOrgJobPostingConfig as r, type SchemaOrgLegalServiceConfig as s, type SchemaOrgLocalBusinessConfig as t, type SchemaOrgMovieConfig as u, type SchemaOrgMusicAlbumConfig as v, type SchemaOrgMusicRecordingConfig as w, type SchemaOrgNewsArticleConfig as x, type SchemaOrgOfferConfig as y, type SchemaOrgOpinionNewsArticleConfig as z };
@@ -1,4 +1,4 @@
1
- import { _ as SchemaOrgCreativeWorkData } from './types-9_wbCIi9.js';
1
+ import { a2 as SchemaOrgCreativeWorkData } from './types-C19cQx5D.js';
2
2
 
3
3
  /** Shared content item nested within the SocialMediaPosting schema */
4
4
  interface SocialMediaPostingSharedContent {
@@ -24,6 +24,8 @@ interface SanityImageWithAlt extends SanityImage {
24
24
  interface RobotsSettings {
25
25
  noIndex?: boolean;
26
26
  noFollow?: boolean;
27
+ noTranslate?: boolean;
28
+ noImageIndex?: boolean;
27
29
  }
28
30
  interface MetaAttribute {
29
31
  _type: 'metaAttribute';
@@ -67,6 +69,11 @@ interface SeoFields {
67
69
  canonicalUrl?: string;
68
70
  openGraph?: OpenGraphSettings;
69
71
  twitter?: TwitterCardSettings;
72
+ focusKeyword?: string;
73
+ hreflangs?: Array<{
74
+ locale: string;
75
+ url: string;
76
+ }>;
70
77
  }
71
78
  type SeoHealthStatus = 'excellent' | 'good' | 'fair' | 'poor' | 'missing';
72
79
  interface SeoHealthMetrics {
@@ -24,6 +24,8 @@ interface SanityImageWithAlt extends SanityImage {
24
24
  interface RobotsSettings {
25
25
  noIndex?: boolean;
26
26
  noFollow?: boolean;
27
+ noTranslate?: boolean;
28
+ noImageIndex?: boolean;
27
29
  }
28
30
  interface MetaAttribute {
29
31
  _type: 'metaAttribute';
@@ -67,6 +69,11 @@ interface SeoFields {
67
69
  canonicalUrl?: string;
68
70
  openGraph?: OpenGraphSettings;
69
71
  twitter?: TwitterCardSettings;
72
+ focusKeyword?: string;
73
+ hreflangs?: Array<{
74
+ locale: string;
75
+ url: string;
76
+ }>;
70
77
  }
71
78
  type SeoHealthStatus = 'excellent' | 'good' | 'fair' | 'poor' | 'missing';
72
79
  interface SeoHealthMetrics {