@aglyn/plugins-ai 1.0.0-beta.292 → 1.0.0-beta.293

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 (149) hide show
  1. package/package.json +17 -17
  2. package/src/lib/components/ai-site-import-job.component.js +5 -4
  3. package/src/lib/components/ai-site-import-job.component.js.map +1 -1
  4. package/src/lib/components/ai-site-import-start.component.js +3 -3
  5. package/src/lib/components/ai-site-import-start.component.js.map +1 -1
  6. package/src/lib/components/ai-site-start-card.component.d.ts +1 -1
  7. package/src/lib/components/ai-site-start-card.component.js +129 -29
  8. package/src/lib/components/ai-site-start-card.component.js.map +1 -1
  9. package/src/lib/components/ai-site-start-steps.component.d.ts +15 -3
  10. package/src/lib/components/ai-site-start-steps.component.js +42 -25
  11. package/src/lib/components/ai-site-start-steps.component.js.map +1 -1
  12. package/src/lib/components/ai-site-style-previews.d.ts +17 -0
  13. package/src/lib/components/ai-site-style-previews.js +26 -95
  14. package/src/lib/components/ai-site-style-previews.js.map +1 -1
  15. package/src/lib/declarations.server.js +22 -0
  16. package/src/lib/declarations.server.js.map +1 -1
  17. package/src/lib/jobs/ai-job-import-step.d.ts +21 -2
  18. package/src/lib/jobs/ai-job-import-step.js +179 -49
  19. package/src/lib/jobs/ai-job-import-step.js.map +1 -1
  20. package/src/lib/jobs/ai-job-layout-language.d.ts +27 -3
  21. package/src/lib/jobs/ai-job-layout-language.js +156 -113
  22. package/src/lib/jobs/ai-job-layout-language.js.map +1 -1
  23. package/src/lib/jobs/ai-job-layout-step.js +56 -17
  24. package/src/lib/jobs/ai-job-layout-step.js.map +1 -1
  25. package/src/lib/jobs/ai-job-page-language.d.ts +25 -15
  26. package/src/lib/jobs/ai-job-page-language.js +120 -66
  27. package/src/lib/jobs/ai-job-page-language.js.map +1 -1
  28. package/src/lib/jobs/ai-job-page-step.js +27 -7
  29. package/src/lib/jobs/ai-job-page-step.js.map +1 -1
  30. package/src/lib/jobs/ai-job-site-datasets.d.ts +12 -4
  31. package/src/lib/jobs/ai-job-site-datasets.js +36 -16
  32. package/src/lib/jobs/ai-job-site-datasets.js.map +1 -1
  33. package/src/lib/jobs/ai-jobs.js +6 -2
  34. package/src/lib/jobs/ai-jobs.js.map +1 -1
  35. package/src/lib/jobs/ai-layout-stock-photos.d.ts +50 -1
  36. package/src/lib/jobs/ai-layout-stock-photos.js +586 -35
  37. package/src/lib/jobs/ai-layout-stock-photos.js.map +1 -1
  38. package/src/lib/jobs/ai-site-import-compile.d.ts +147 -0
  39. package/src/lib/jobs/ai-site-import-compile.js +1143 -0
  40. package/src/lib/jobs/ai-site-import-compile.js.map +1 -0
  41. package/src/lib/jobs/ai-site-import-document.d.ts +9 -36
  42. package/src/lib/jobs/ai-site-import-document.js +23 -489
  43. package/src/lib/jobs/ai-site-import-document.js.map +1 -1
  44. package/src/lib/jobs/ai-site-import-look.d.ts +54 -7
  45. package/src/lib/jobs/ai-site-import-look.js +163 -52
  46. package/src/lib/jobs/ai-site-import-look.js.map +1 -1
  47. package/src/lib/jobs/ai-site-import-publish.d.ts +7 -1
  48. package/src/lib/jobs/ai-site-import-publish.js +19 -5
  49. package/src/lib/jobs/ai-site-import-publish.js.map +1 -1
  50. package/src/lib/jobs/ai-site-late-photos.js +4 -2
  51. package/src/lib/jobs/ai-site-late-photos.js.map +1 -1
  52. package/src/lib/jobs/ai-site-publish.d.ts +10 -1
  53. package/src/lib/jobs/ai-site-publish.js +8 -3
  54. package/src/lib/jobs/ai-site-publish.js.map +1 -1
  55. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.d.ts +23 -0
  56. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.js +677 -0
  57. package/src/lib/jobs/fixtures/ai-stock-photo-agl4092-1029-recordings.js.map +1 -0
  58. package/src/lib/layout-language/ai-layout-compiler.d.ts +26 -0
  59. package/src/lib/layout-language/ai-layout-compiler.js +677 -33
  60. package/src/lib/layout-language/ai-layout-compiler.js.map +1 -1
  61. package/src/lib/layout-language/ai-layout-frame-hollows.js +5 -1
  62. package/src/lib/layout-language/ai-layout-frame-hollows.js.map +1 -1
  63. package/src/lib/layout-language/ai-layout-frame-source.d.ts +196 -0
  64. package/src/lib/layout-language/ai-layout-frame-source.js +726 -0
  65. package/src/lib/layout-language/ai-layout-frame-source.js.map +1 -0
  66. package/src/lib/layout-language/ai-layout-frame.d.ts +22 -0
  67. package/src/lib/layout-language/ai-layout-frame.js +121 -29
  68. package/src/lib/layout-language/ai-layout-frame.js.map +1 -1
  69. package/src/lib/layout-language/ai-layout-language.d.ts +103 -37
  70. package/src/lib/layout-language/ai-layout-language.js +85 -120
  71. package/src/lib/layout-language/ai-layout-language.js.map +1 -1
  72. package/src/lib/model/ai-credit-estimate.d.ts +11 -7
  73. package/src/lib/model/ai-credit-estimate.js +11 -7
  74. package/src/lib/model/ai-credit-estimate.js.map +1 -1
  75. package/src/lib/model/ai-site-import.d.ts +307 -13
  76. package/src/lib/model/ai-site-import.js +227 -19
  77. package/src/lib/model/ai-site-import.js.map +1 -1
  78. package/src/lib/model/ai-site-look.d.ts +65 -1
  79. package/src/lib/model/ai-site-look.js +141 -23
  80. package/src/lib/model/ai-site-look.js.map +1 -1
  81. package/src/lib/model/ai-site-photos.d.ts +2 -0
  82. package/src/lib/model/ai-site-photos.js.map +1 -1
  83. package/src/lib/model/ai-site-start-steps.d.ts +4 -3
  84. package/src/lib/model/ai-site-start-steps.js +11 -3
  85. package/src/lib/model/ai-site-start-steps.js.map +1 -1
  86. package/src/lib/model/ai-site-start.d.ts +23 -2
  87. package/src/lib/model/ai-site-start.js +25 -3
  88. package/src/lib/model/ai-site-start.js.map +1 -1
  89. package/src/lib/providers/routing.d.ts +11 -0
  90. package/src/lib/providers/routing.js +23 -0
  91. package/src/lib/providers/routing.js.map +1 -1
  92. package/src/lib/runtime/ai-doctrine-validators.d.ts +4 -2
  93. package/src/lib/runtime/ai-doctrine-validators.js +7 -2
  94. package/src/lib/runtime/ai-doctrine-validators.js.map +1 -1
  95. package/src/lib/runtime/ai-icon-library.d.ts +4 -0
  96. package/src/lib/runtime/ai-icon-library.js +4 -0
  97. package/src/lib/runtime/ai-icon-library.js.map +1 -1
  98. package/src/lib/runtime/ai-node-tree.js +5 -1
  99. package/src/lib/runtime/ai-node-tree.js.map +1 -1
  100. package/src/lib/runtime/ai-palette.d.ts +2 -0
  101. package/src/lib/runtime/ai-palette.generated.js +19 -3
  102. package/src/lib/runtime/ai-palette.generated.js.map +1 -1
  103. package/src/lib/runtime/ai-palette.js +2 -1
  104. package/src/lib/runtime/ai-palette.js.map +1 -1
  105. package/src/lib/site-import/fixtures/site-layout-recordings.d.ts +50 -0
  106. package/src/lib/site-import/fixtures/site-layout-recordings.js +86 -0
  107. package/src/lib/site-import/fixtures/site-layout-recordings.js.map +1 -0
  108. package/src/lib/site-import/site-import-crawl.d.ts +18 -1
  109. package/src/lib/site-import/site-import-crawl.js +70 -10
  110. package/src/lib/site-import/site-import-crawl.js.map +1 -1
  111. package/src/lib/site-import/site-import-css.d.ts +110 -0
  112. package/src/lib/site-import/site-import-css.js +826 -0
  113. package/src/lib/site-import/site-import-css.js.map +1 -0
  114. package/src/lib/site-import/site-import-html.d.ts +116 -1
  115. package/src/lib/site-import/site-import-html.js +538 -46
  116. package/src/lib/site-import/site-import-html.js.map +1 -1
  117. package/src/lib/site-import/site-import-layout.d.ts +79 -0
  118. package/src/lib/site-import/site-import-layout.js +1608 -0
  119. package/src/lib/site-import/site-import-layout.js.map +1 -0
  120. package/src/lib/site-import/site-import-nav.d.ts +40 -0
  121. package/src/lib/site-import/site-import-nav.js +437 -0
  122. package/src/lib/site-import/site-import-nav.js.map +1 -0
  123. package/src/lib/site-import/site-import-page.d.ts +8 -1
  124. package/src/lib/site-import/site-import-page.js +24 -2
  125. package/src/lib/site-import/site-import-page.js.map +1 -1
  126. package/src/lib/assets/site-styles/beauty.webp +0 -0
  127. package/src/lib/assets/site-styles/blog.webp +0 -0
  128. package/src/lib/assets/site-styles/business.webp +0 -0
  129. package/src/lib/assets/site-styles/coming-soon.webp +0 -0
  130. package/src/lib/assets/site-styles/education.webp +0 -0
  131. package/src/lib/assets/site-styles/events.webp +0 -0
  132. package/src/lib/assets/site-styles/fitness.webp +0 -0
  133. package/src/lib/assets/site-styles/landing.webp +0 -0
  134. package/src/lib/assets/site-styles/music.webp +0 -0
  135. package/src/lib/assets/site-styles/nonprofit.webp +0 -0
  136. package/src/lib/assets/site-styles/personal.webp +0 -0
  137. package/src/lib/assets/site-styles/photography.webp +0 -0
  138. package/src/lib/assets/site-styles/portfolio.webp +0 -0
  139. package/src/lib/assets/site-styles/professional.webp +0 -0
  140. package/src/lib/assets/site-styles/realestate.webp +0 -0
  141. package/src/lib/assets/site-styles/restaurant.webp +0 -0
  142. package/src/lib/assets/site-styles/store.webp +0 -0
  143. package/src/lib/assets/site-styles/studio.webp +0 -0
  144. package/src/lib/assets/site-styles/trades.webp +0 -0
  145. package/src/lib/assets/site-styles/wellness.webp +0 -0
  146. package/src/lib/assets/site-styles/yoga.webp +0 -0
  147. package/src/lib/site-import/site-import-review.d.ts +0 -40
  148. package/src/lib/site-import/site-import-review.js +0 -149
  149. package/src/lib/site-import/site-import-review.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../libs/plugins/ai/src/lib/runtime/ai-palette.generated.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * GENERATED by libs/plugins/ai/scripts/generate-ai-palette.mts from the registered\n * plugin bundles (AGL-2905). Do not edit; re-run the generator, and\n * `npm run check:ai-palette` fails CI when this file is stale.\n */\nimport type {\n AiNodeCapability,\n AiPaletteEntry,\n AiSurface,\n AiSurfaceDefinition,\n AiSxTokens,\n} from './ai-palette'\n\n/** Every registered component, by id. */\nexport const AI_PALETTE: Record<string, AiPaletteEntry> = {\n booking: {\n pluginId: 'bookings',\n kind: 'element',\n category: 'Input',\n displayName: 'Booking',\n summary: 'Service and time picker that books appointments.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n successMessage: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n successMessage: 'text',\n },\n propFields: {\n heading: 'text-field',\n successMessage: 'text-field',\n },\n textLimits: {\n heading: 200,\n successMessage: 200,\n },\n presets: ['Booking'],\n },\n cart: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Cart',\n summary:\n 'The shopping cart — a badge icon with a slide-out drawer, or the full cart page.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['button', 'inline'],\n },\n checkoutLabel: {\n type: 'string',\n maxLength: 200,\n },\n showCoupon: {\n type: 'boolean',\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n checkoutLabel: 'text',\n emptyText: 'text',\n },\n propFields: {\n variant: 'select',\n checkoutLabel: 'text-field',\n showCoupon: 'checkbox',\n emptyText: 'text-field',\n },\n textLimits: {\n checkoutLabel: 200,\n emptyText: 200,\n },\n presets: ['Cart button', 'Cart page'],\n },\n collectionCategories: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Category Pills',\n summary: 'A pill per collection category, each filtering the listing.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n allLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n allLabel: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n allLabel: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n allLabel: 200,\n },\n presets: ['Category Pills'],\n },\n collectionEntries: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Collection Entries',\n summary: 'Repeats its children once per entry in a content collection.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n entriesLimit: {\n type: 'string',\n maxLength: 200,\n },\n filterCategory: {\n type: 'string',\n maxLength: 200,\n },\n filterTag: {\n type: 'string',\n maxLength: 200,\n },\n perPage: {\n type: 'string',\n maxLength: 200,\n },\n page: {\n type: 'string',\n maxLength: 200,\n },\n firstPageOnly: {\n type: 'boolean',\n },\n search: {\n type: 'boolean',\n },\n searchMode: {\n type: 'string',\n enum: ['filter', 'suggest'],\n },\n searchPlaceholder: {\n type: 'string',\n maxLength: 200,\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n entriesLimit: 'text',\n filterCategory: 'text',\n filterTag: 'text',\n perPage: 'text',\n page: 'text',\n searchPlaceholder: 'text',\n spacing: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n entriesLimit: 'text-field',\n filterCategory: 'text-field',\n filterTag: 'text-field',\n perPage: 'text-field',\n page: 'text-field',\n firstPageOnly: 'switch',\n search: 'switch',\n searchMode: 'select',\n searchPlaceholder: 'text-field',\n spacing: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n entriesLimit: 200,\n filterCategory: 200,\n filterTag: 200,\n perPage: 200,\n page: 200,\n searchPlaceholder: 200,\n spacing: 200,\n },\n presets: ['Collection Entries'],\n },\n collectionEntryAuthor: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Author',\n summary: 'The author card for an entry — portrait, byline and bio.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n bio: {\n type: 'string',\n maxLength: 2000,\n },\n image: {\n type: 'string',\n },\n pageUrl: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n showLinks: {\n type: 'boolean',\n },\n showBio: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n bio: 'text',\n image: 'media',\n pageUrl: 'url',\n url: 'url',\n },\n propFields: {\n name: 'text-field',\n bio: 'textarea',\n image: 'text-field',\n pageUrl: 'text-field',\n url: 'text-field',\n showLinks: 'switch',\n showBio: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n name: 200,\n bio: 2000,\n },\n presets: ['Entry Author'],\n },\n collectionEntryBody: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Body',\n summary: \"The current entry's markdown body, on an entry template.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n markdown: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n markdown: 'text',\n },\n propFields: {\n markdown: 'text-field',\n },\n textLimits: {\n markdown: 200,\n },\n presets: ['Entry Body'],\n },\n collectionEntryMeta: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Meta',\n summary: 'The byline row for an entry — author, date, category and tags.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n date: {\n type: 'string',\n maxLength: 200,\n },\n dateFormat: {\n type: 'string',\n enum: ['default', 'monthYear', 'mediumDate', 'longDate', 'iso'],\n },\n author: {\n type: 'string',\n maxLength: 200,\n },\n category: {\n type: 'string',\n maxLength: 200,\n },\n tags: {\n type: 'string',\n maxLength: 200,\n },\n avatarImage: {\n type: 'string',\n maxLength: 200,\n },\n showDate: {\n type: 'boolean',\n },\n showCategory: {\n type: 'boolean',\n },\n showTags: {\n type: 'boolean',\n },\n authorPageUrl: {\n type: 'string',\n },\n linkAuthor: {\n type: 'boolean',\n },\n showAuthor: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n date: 'text',\n author: 'text',\n category: 'text',\n tags: 'text',\n avatarImage: 'text',\n authorPageUrl: 'url',\n },\n propFields: {\n date: 'text-field',\n dateFormat: 'select',\n author: 'text-field',\n category: 'text-field',\n tags: 'text-field',\n avatarImage: 'text-field',\n showDate: 'switch',\n showCategory: 'switch',\n showTags: 'switch',\n authorPageUrl: 'text-field',\n linkAuthor: 'switch',\n showAuthor: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n date: 200,\n author: 200,\n category: 200,\n tags: 200,\n avatarImage: 200,\n },\n presets: ['Entry Meta'],\n },\n collectionRelated: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Related Posts',\n summary: \"Other entries sharing this one's category or tags.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n limit: {\n type: 'string',\n maxLength: 200,\n },\n layout: {\n type: 'string',\n enum: ['list', 'cards'],\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n showCover: {\n type: 'boolean',\n },\n headingVariant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n titleVariant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n showDate: {\n type: 'boolean',\n },\n dateFormat: {\n type: 'string',\n enum: ['default', 'monthYear', 'mediumDate', 'longDate', 'iso'],\n },\n showCategory: {\n type: 'boolean',\n },\n showExcerpt: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n limit: 'text',\n columns: 'text',\n },\n propFields: {\n heading: 'text-field',\n limit: 'text-field',\n layout: 'select',\n columns: 'text-field',\n showCover: 'switch',\n headingVariant: 'select',\n titleVariant: 'select',\n showDate: 'switch',\n dateFormat: 'select',\n showCategory: 'switch',\n showExcerpt: 'switch',\n },\n textLimits: {\n heading: 200,\n limit: 200,\n columns: 200,\n },\n presets: ['Related Posts'],\n },\n collectionSearch: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Collection Search',\n summary:\n 'A search box for a content collection, with a suggestions dropdown.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n searchPlaceholder: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n searchPlaceholder: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n searchPlaceholder: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n searchPlaceholder: 200,\n },\n presets: ['Collection Search'],\n },\n collectionShare: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Share Bar',\n summary: 'Share buttons for the current page, plus a copy link.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Share Bar'],\n },\n contentAuthorProfile: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Author Profile',\n summary:\n 'Who an author page is about — portrait, name, role, bio and links.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n bio: {\n type: 'string',\n maxLength: 2000,\n },\n image: {\n type: 'string',\n },\n jobTitle: {\n type: 'string',\n maxLength: 200,\n },\n worksFor: {\n type: 'string',\n maxLength: 200,\n },\n url: {\n type: 'string',\n },\n showLinks: {\n type: 'boolean',\n },\n showBio: {\n type: 'boolean',\n },\n showRole: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n bio: 'text',\n image: 'media',\n jobTitle: 'text',\n worksFor: 'text',\n url: 'url',\n },\n propFields: {\n name: 'text-field',\n bio: 'textarea',\n image: 'text-field',\n jobTitle: 'text-field',\n worksFor: 'text-field',\n url: 'text-field',\n showLinks: 'switch',\n showBio: 'switch',\n showRole: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n name: 200,\n bio: 2000,\n jobTitle: 200,\n worksFor: 200,\n },\n presets: ['Author Profile'],\n },\n 'custom-html': {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Custom HTML',\n summary:\n 'Your own markup, sanitised on render, or isolated in a sandboxed iframe.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 200,\n },\n css: {\n type: 'string',\n maxLength: 200,\n },\n embedMode: {\n type: 'boolean',\n },\n embedHeight: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n css: 'text',\n embedHeight: 'text',\n },\n propFields: {\n html: 'text-field',\n css: 'text-field',\n embedMode: 'checkbox',\n embedHeight: 'text-field',\n },\n textLimits: {\n html: 200,\n css: 200,\n embedHeight: 200,\n },\n presets: ['Custom HTML'],\n },\n 'customer-account': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Customer account',\n summary: 'Sign-in and account area — profile, addresses and order history.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n signedOutHeading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n signedOutHeading: 'text',\n },\n propFields: {\n signedOutHeading: 'text-field',\n },\n textLimits: {\n signedOutHeading: 200,\n },\n presets: ['Customer account'],\n },\n dataTable: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Sections & Blocks',\n displayName: 'Table',\n summary:\n 'A grid of rows and columns — a feature matrix, a spec sheet, a comparison.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n headerRow: {\n type: 'boolean',\n },\n emphasizeColumn: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n emphasizeColumn: 'text',\n },\n propFields: {\n headerRow: 'checkbox',\n emphasizeColumn: 'text-field',\n },\n textLimits: {\n emphasizeColumn: 200,\n },\n presets: ['Table'],\n },\n div: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Document',\n summary:\n 'The page itself — the outermost element every other element sits in.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'main',\n 'header',\n 'footer',\n 'nav',\n 'aside',\n 'section',\n 'article',\n ],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n component: 'select',\n },\n textLimits: {},\n presets: [],\n },\n emailButton: {\n pluginId: 'email',\n kind: 'element',\n category: 'Input',\n displayName: 'Email button',\n summary: 'A call-to-action button that survives every mail client.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n href: {\n type: 'string',\n },\n backgroundColor: {\n type: 'string',\n },\n color: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n href: 'url',\n },\n propFields: {\n children: 'text-field',\n href: 'text-field',\n backgroundColor: 'color-picker',\n color: 'color-picker',\n align: 'select',\n },\n textLimits: {\n children: 40,\n },\n presets: ['Email button'],\n },\n emailDivider: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email divider',\n summary: 'A horizontal rule between email sections.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n color: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n color: 'color-picker',\n },\n textLimits: {},\n presets: ['Email divider'],\n },\n emailHtml: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email custom HTML',\n summary: 'Hand-written HTML for an email, used as-is.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n },\n propFields: {\n html: 'textarea',\n },\n textLimits: {\n html: 2000,\n },\n presets: ['Email custom HTML'],\n },\n emailImage: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email image',\n summary: 'An email-safe image, capped at 600px wide, optionally linked.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n alt: {\n type: 'string',\n maxLength: 200,\n },\n width: {\n type: 'string',\n maxLength: 200,\n },\n href: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n alt: 'text',\n width: 'text',\n href: 'url',\n },\n propFields: {\n src: 'text-field',\n alt: 'text-field',\n width: 'text-field',\n href: 'text-field',\n align: 'select',\n },\n textLimits: {\n alt: 200,\n width: 200,\n },\n presets: ['Email image'],\n },\n emailProduct: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email product',\n summary: 'A product card resolved at send time, so it never goes stale.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n buttonLabel: {\n type: 'string',\n maxLength: 40,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n buttonLabel: 'text',\n },\n propFields: {\n buttonLabel: 'text-field',\n },\n textLimits: {\n buttonLabel: 40,\n },\n presets: ['Email product'],\n },\n emailRichtext: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email rich text',\n summary: 'An HTML fragment in an email, sanitised on render.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n },\n propFields: {\n html: 'textarea',\n },\n textLimits: {\n html: 2000,\n },\n presets: ['Email rich text'],\n },\n emailSection: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email section',\n summary: 'An email-safe band with its own background color and padding.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n backgroundColor: {\n type: 'string',\n },\n padding: {\n type: 'string',\n maxLength: 200,\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n padding: 'text',\n },\n propFields: {\n backgroundColor: 'color-picker',\n padding: 'text-field',\n align: 'select',\n },\n textLimits: {\n padding: 200,\n },\n presets: ['Email section', 'Header', 'Footer'],\n },\n emailSpacer: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email spacer',\n summary: 'Fixed vertical whitespace between email blocks.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n height: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n height: 'text',\n },\n propFields: {\n height: 'text-field',\n },\n textLimits: {\n height: 200,\n },\n presets: ['Email spacer'],\n },\n emailText: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email text',\n summary: 'A paragraph of email copy in one of the preset styles.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n variant: {\n type: 'string',\n enum: [\n 'heading',\n 'subheading',\n 'body',\n 'caption',\n 'eyebrow',\n 'details',\n 'links',\n ],\n },\n color: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n variant: 'select',\n color: 'color-picker',\n align: 'select',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Email text'],\n },\n eventList: {\n pluginId: 'events-calendar',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Event List',\n summary:\n 'Your published events, each marked up so search engines can show it.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n mode: {\n type: 'string',\n enum: ['past'],\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n mode: 'select',\n maxItems: 'text-field',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Event List'],\n },\n form: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form',\n summary:\n 'Collects its Form Fields and sends the answers to you, or into a dataset.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n formName: {\n type: 'string',\n maxLength: 200,\n },\n datasetName: {\n type: 'string',\n maxLength: 200,\n },\n submitLabel: {\n type: 'string',\n maxLength: 40,\n },\n successMessage: {\n type: 'string',\n maxLength: 200,\n },\n afterSubmit: {\n type: 'string',\n enum: ['message', 'redirect', 'reveal'],\n },\n redirectScreenId: {\n type: 'string',\n },\n redirectUrl: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n formName: 'text',\n datasetName: 'text',\n submitLabel: 'text',\n successMessage: 'text',\n redirectScreenId: 'screen',\n redirectUrl: 'url',\n },\n propFields: {\n formName: 'text-field',\n datasetName: 'text-field',\n submitLabel: 'text-field',\n successMessage: 'text-field',\n afterSubmit: 'select',\n redirectScreenId: 'screen-select',\n redirectUrl: 'text-field',\n },\n textLimits: {\n formName: 200,\n datasetName: 200,\n submitLabel: 40,\n successMessage: 200,\n },\n presets: ['Contact Form'],\n },\n formField: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Field',\n summary:\n 'One input inside a form — text, select, radio, checkbox or rating.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n fieldName: {\n type: 'string',\n maxLength: 200,\n },\n label: {\n type: 'string',\n maxLength: 200,\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n fieldType: {\n type: 'string',\n enum: [\n 'text',\n 'email',\n 'textarea',\n 'select',\n 'radio',\n 'checkbox',\n 'rating',\n ],\n },\n options: {\n type: 'string',\n maxLength: 2000,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n fieldName: 'text',\n label: 'text',\n placeholder: 'text',\n options: 'text',\n },\n propFields: {\n fieldName: 'text-field',\n label: 'text-field',\n placeholder: 'text-field',\n fieldType: 'select',\n options: 'textarea',\n required: 'switch',\n },\n textLimits: {\n fieldName: 200,\n label: 200,\n placeholder: 200,\n options: 2000,\n },\n presets: [],\n },\n formFileUpload: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'File upload',\n summary:\n 'Lets a person attach files to the form, such as a logo or a sketch.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n helperText: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n kinds: {\n type: 'string',\n enum: [\n 'images,pdf,design',\n 'images',\n 'pdf',\n 'design',\n 'images,pdf',\n 'images,design',\n 'pdf,design',\n ],\n },\n maxFiles: {\n type: 'string',\n enum: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n name: 'text',\n helperText: 'text',\n },\n propFields: {\n label: 'text-field',\n name: 'text-field',\n helperText: 'text-field',\n required: 'switch',\n kinds: 'select',\n maxFiles: 'select',\n },\n textLimits: {\n label: 200,\n name: 200,\n helperText: 200,\n },\n presets: ['File upload'],\n },\n gate: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Members gate',\n summary: 'Shows its children only to entitled members.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n teaserText: {\n type: 'string',\n maxLength: 200,\n },\n ctaLabel: {\n type: 'string',\n maxLength: 200,\n },\n ctaHref: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n teaserText: 'text',\n ctaLabel: 'text',\n ctaHref: 'text',\n },\n propFields: {\n teaserText: 'text-field',\n ctaLabel: 'text-field',\n ctaHref: 'text-field',\n },\n textLimits: {\n teaserText: 200,\n ctaLabel: 200,\n ctaHref: 200,\n },\n presets: ['Members gate'],\n },\n 'gated-video': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Members video',\n summary:\n 'A video only entitled members can play, resuming where they left off.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n videoIndex: {\n type: 'string',\n maxLength: 200,\n },\n lockedText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n videoIndex: 'text',\n lockedText: 'text',\n },\n propFields: {\n videoIndex: 'text-field',\n lockedText: 'text-field',\n },\n textLimits: {\n videoIndex: 200,\n lockedText: 200,\n },\n presets: ['Members video'],\n },\n icon: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Icon',\n summary: 'A single icon from the library, at the size and color you pick.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n iconId: {\n type: 'string',\n },\n size: {\n type: 'string',\n maxLength: 200,\n },\n color: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n size: 'text',\n color: 'text',\n },\n propFields: {\n iconId: 'icon-picker',\n size: 'text-field',\n color: 'text-field',\n },\n textLimits: {\n size: 200,\n color: 200,\n },\n presets: ['Icon'],\n },\n image: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image',\n summary:\n 'A picture from your media library or any URL, with fit, size and an optional link.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n alt: {\n type: 'string',\n maxLength: 200,\n },\n decorative: {\n type: 'boolean',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n objectFit: {\n type: 'string',\n enum: ['cover', 'contain', 'fill', 'none', 'scale-down'],\n },\n width: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n sizes: {\n type: 'string',\n maxLength: 200,\n },\n loading: {\n type: 'string',\n enum: ['lazy', 'eager'],\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxCaption: {\n type: 'string',\n maxLength: 200,\n },\n lightboxGallery: {\n type: 'string',\n maxLength: 200,\n },\n lightboxThumbnails: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n alt: 'text',\n title: 'text',\n sizes: 'text',\n lightboxCaption: 'text',\n lightboxGallery: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n screenId: 'screen',\n href: 'url',\n },\n propFields: {\n src: 'text-field',\n alt: 'text-field',\n decorative: 'switch',\n title: 'text-field',\n objectFit: 'select',\n width: 'css-dimension',\n height: 'css-dimension',\n sizes: 'text-field',\n loading: 'select',\n lightbox: 'switch',\n lightboxCaption: 'text-field',\n lightboxGallery: 'text-field',\n lightboxThumbnails: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n screenId: 'screen-select',\n href: 'text-field',\n },\n textLimits: {\n alt: 200,\n title: 200,\n sizes: 200,\n lightboxCaption: 200,\n lightboxGallery: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Image'],\n },\n languageSwitcher: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Language Switcher',\n summary: \"Links between this page's translations.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['text', 'buttons'],\n },\n uppercase: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n variant: 'select',\n uppercase: 'checkbox',\n },\n textLimits: {},\n presets: ['Language Switcher'],\n },\n layoutSlot: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Layout Slot',\n summary:\n \"Marks where each bound page's content renders inside this layout.\",\n acceptsChildren: false,\n restrictChildren: [\n 'limitedTo',\n {\n components: [],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n caption: {\n type: 'string',\n maxLength: 200,\n },\n component: {\n type: 'string',\n enum: ['main', 'div', 'section', 'article'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n caption: 'text',\n },\n propFields: {\n caption: 'text-field',\n component: 'select',\n },\n textLimits: {\n caption: 200,\n },\n presets: ['Layout Slot'],\n },\n lightbox: {\n pluginId: 'lightbox',\n kind: 'element',\n category: 'Surface',\n displayName: 'Lightbox',\n summary:\n 'Any elements in a lightbox, hidden until a \"Show an element\" interaction opens it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n },\n propFields: {\n label: 'text-field',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n },\n textLimits: {\n label: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Lightbox'],\n },\n markdown: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Markdown',\n summary: 'A whole document written as markdown.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n content: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n content: 'text',\n },\n propFields: {\n content: 'markdown',\n },\n textLimits: {\n content: 2000,\n },\n presets: ['Markdown'],\n },\n marketplacePlugin: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Plugin',\n summary:\n 'Where an installed marketplace plugin renders, in its own sandbox.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: ['Plugin'],\n },\n 'member-feed': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Member feed',\n summary: 'Updates only entitled members can see.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n emptyText: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n emptyText: 'text-field',\n maxItems: 'text-field',\n },\n textLimits: {\n heading: 200,\n emptyText: 200,\n maxItems: 200,\n },\n presets: ['Member feed'],\n },\n 'member-recovery': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Password recovery',\n summary:\n 'Forgot-password request, and the reset form the emailed link opens.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signinPath: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signinPath: 'text',\n },\n propFields: {\n heading: 'text-field',\n signinPath: 'text-field',\n },\n textLimits: {\n heading: 200,\n signinPath: 200,\n },\n presets: ['Password recovery'],\n },\n 'member-signin': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Member sign-in',\n summary: 'An email and password sign-in form for site members.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signupPath: {\n type: 'string',\n maxLength: 200,\n },\n recoveryPath: {\n type: 'string',\n maxLength: 200,\n },\n continueFallback: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signupPath: 'text',\n recoveryPath: 'text',\n continueFallback: 'text',\n },\n propFields: {\n heading: 'text-field',\n signupPath: 'text-field',\n recoveryPath: 'text-field',\n continueFallback: 'text-field',\n },\n textLimits: {\n heading: 200,\n signupPath: 200,\n recoveryPath: 200,\n continueFallback: 200,\n },\n presets: ['Member sign-in'],\n },\n 'member-signup': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Member sign-up',\n summary: 'A create-account form for site membership.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signinPath: {\n type: 'string',\n maxLength: 200,\n },\n continueFallback: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signinPath: 'text',\n continueFallback: 'text',\n },\n propFields: {\n heading: 'text-field',\n signinPath: 'text-field',\n continueFallback: 'text-field',\n },\n textLimits: {\n heading: 200,\n signinPath: 200,\n continueFallback: 200,\n },\n presets: ['Member sign-up'],\n },\n muiAccordion: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion',\n summary:\n 'Header that expands to reveal its details — FAQs, long forms, anything progressive.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiAccordionSummary', 'muiAccordionDetails'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n defaultExpanded: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n disabled: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n defaultExpanded: 'switch',\n disableGutters: 'switch',\n disabled: 'switch',\n },\n textLimits: {},\n presets: ['Accordion'],\n },\n muiAccordionDetails: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion Details',\n summary: 'The region an accordion reveals when expanded.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n muiAccordionSummary: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion Summary',\n summary: 'The clickable header row of an accordion.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n screenId: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n },\n propFields: {\n children: 'textarea',\n screenId: 'screen-select',\n },\n textLimits: {\n children: 2000,\n },\n presets: [],\n },\n muiAppBar: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'App Bar',\n summary:\n 'The bar across the top of the site — put a Toolbar Content inside it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n color: {\n type: 'string',\n enum: [\n 'default',\n 'inherit',\n 'transparent',\n 'primary',\n 'secondary',\n 'tertiary',\n ],\n },\n position: {\n type: 'string',\n enum: ['absolute', 'fixed', 'relative', 'static', 'sticky'],\n },\n shrinkOnScroll: {\n type: 'boolean',\n },\n hideOnScroll: {\n type: 'boolean',\n },\n overHero: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n color: 'select',\n position: 'select',\n shrinkOnScroll: 'switch',\n hideOnScroll: 'switch',\n overHero: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['App Bar', 'Nav Bar'],\n },\n muiBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Box',\n summary:\n 'Generic container with no styling of its own — style it from the styles panel.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'span',\n 'p',\n 'figure',\n 'figcaption',\n 'blockquote',\n 'pre',\n ],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n component: 'select',\n colorScheme: 'select',\n },\n textLimits: {},\n presets: ['Two-tone Statement', 'Box'],\n },\n muiBreadcrumbs: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Breadcrumbs',\n summary: 'Trail showing where a page sits.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n separator: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n itemsBeforeCollapse: {\n type: 'string',\n maxLength: 200,\n },\n itemsAfterCollapse: {\n type: 'string',\n maxLength: 200,\n },\n expandText: {\n type: 'string',\n maxLength: 200,\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n separator: 'text',\n maxItems: 'text',\n itemsBeforeCollapse: 'text',\n itemsAfterCollapse: 'text',\n expandText: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n separator: 'text-field',\n maxItems: 'text-field',\n itemsBeforeCollapse: 'text-field',\n itemsAfterCollapse: 'text-field',\n expandText: 'text-field',\n ariaLabel: 'text-field',\n },\n textLimits: {\n separator: 200,\n maxItems: 200,\n itemsBeforeCollapse: 200,\n itemsAfterCollapse: 200,\n expandText: 200,\n ariaLabel: 200,\n },\n presets: ['Breadcrumbs'],\n },\n muiButton: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Input',\n displayName: 'Button',\n summary:\n 'A button — or a link styled as one, if you point it at a page or URL.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n color: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'tertiary',\n 'success',\n 'error',\n 'info',\n 'warning',\n ],\n },\n disabled: {\n type: 'boolean',\n },\n fullWidth: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['inherit', 'small', 'medium', 'large'],\n },\n type: {\n type: 'string',\n enum: ['button', 'submit', 'reset'],\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined', 'contained'],\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', 'custom'],\n },\n targetName: {\n type: 'string',\n maxLength: 200,\n },\n renderAs: {\n type: 'string',\n enum: ['button', 'linkButton'],\n },\n startIconId: {\n type: 'string',\n },\n endIconId: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n href: 'url',\n targetName: 'text',\n },\n propFields: {\n children: 'textarea',\n color: 'select',\n disabled: 'switch',\n fullWidth: 'switch',\n size: 'select',\n type: 'select',\n variant: 'select',\n screenId: 'screen-select',\n href: 'text-field',\n target: 'select',\n targetName: 'text-field',\n renderAs: 'select',\n startIconId: 'icon-picker',\n endIconId: 'icon-picker',\n },\n textLimits: {\n children: 40,\n targetName: 200,\n },\n presets: ['Outlined Button'],\n },\n muiCard: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card',\n summary:\n 'Surface that groups a header, content and actions about one subject.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['elevation', 'outlined'],\n },\n elevation: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n elevation: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n variant: 'select',\n elevation: 'text-field',\n },\n textLimits: {\n ariaLabel: 200,\n elevation: 200,\n },\n presets: ['Card', 'Card Outlined'],\n },\n muiCardActions: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Actions',\n summary: 'The button row at the bottom of a card.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n disableSpacing: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n disableSpacing: 'switch',\n },\n textLimits: {},\n presets: [],\n },\n muiCardContent: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Content',\n summary: 'The padded body region of a card.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n muiCardHeader: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Header',\n summary: 'The title and subheader at the top of a card.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n maxLength: 200,\n },\n subheader: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n title: 'text',\n subheader: 'text',\n },\n propFields: {\n title: 'text-field',\n subheader: 'text-field',\n },\n textLimits: {\n title: 200,\n subheader: 200,\n },\n presets: [],\n },\n muiCheckbox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Checkbox',\n summary: 'A tick box.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n value: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n value: 'text',\n },\n propFields: {\n name: 'text-field',\n value: 'text-field',\n required: 'switch',\n },\n textLimits: {\n name: 200,\n value: 200,\n },\n presets: [],\n },\n muiContainer: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Container',\n summary: 'Centers your page content and caps how wide it gets.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n fixed: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n maxWidth: {\n type: 'string',\n enum: ['xs', 'sm', 'md', 'lg', 'xl'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n fixed: 'switch',\n disableGutters: 'switch',\n maxWidth: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Container', 'Prose Container'],\n },\n muiDatePicker: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Date Picker',\n summary: 'A date a visitor picks from a calendar.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n disablePast: {\n type: 'boolean',\n },\n disableFuture: {\n type: 'boolean',\n },\n minDate: {\n type: 'string',\n },\n maxDate: {\n type: 'string',\n },\n defaultToday: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n required: 'switch',\n disablePast: 'switch',\n disableFuture: 'switch',\n minDate: 'date-picker',\n maxDate: 'date-picker',\n defaultToday: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n ariaLabel: 200,\n },\n presets: ['Date Picker'],\n },\n muiDrawer: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Drawer',\n summary: 'A panel that slides in from an edge.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n anchor: {\n type: 'string',\n enum: ['left', 'right', 'top', 'bottom'],\n },\n width: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n anchor: 'select',\n width: 'css-dimension',\n },\n textLimits: {},\n presets: ['Drawer'],\n },\n muiDrawerToggle: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Menu Button',\n summary: \"A hamburger button that opens the page's drawer.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n ariaLabel: 'text-field',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Menu Button'],\n },\n muiFormControl: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Control',\n summary:\n 'One field’s frame: holds a Form Label, an input and Helper Text, and links the label to the input.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n fullWidth: {\n type: 'boolean',\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n fullWidth: 'switch',\n required: 'switch',\n },\n textLimits: {},\n presets: [\n 'Form Control',\n 'Text field',\n 'Email field',\n 'Message field',\n 'Dropdown field',\n 'Radio choice field',\n 'Rating field',\n 'Date field',\n 'Time field',\n 'Marketing consent',\n ],\n },\n muiFormControlLabel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Choice Label',\n summary:\n 'The words beside a Checkbox or Radio placed inside it; clicking them ticks it.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiCheckbox', 'muiRadio'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Radio', 'Choice Label', 'Checkbox'],\n },\n muiFormHelperText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Helper Text',\n summary: 'A line of guidance under a field.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Helper Text'],\n },\n muiFormLabel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Label',\n summary: 'The words that name a field, above its input.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Form Label'],\n },\n muiGrid: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Grid',\n summary: 'Responsive 12-column layout.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n container: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n },\n offset: {\n type: 'string',\n },\n fillLastRow: {\n type: 'boolean',\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n rowSpacing: {\n type: 'string',\n maxLength: 200,\n },\n columnSpacing: {\n type: 'string',\n maxLength: 200,\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n direction: {\n type: 'string',\n enum: ['row', 'row-reverse'],\n },\n wrap: {\n type: 'string',\n enum: ['wrap', 'nowrap', 'wrap-reverse'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n spacing: 'text',\n rowSpacing: 'text',\n columnSpacing: 'text',\n columns: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n container: 'switch',\n size: 'breakpoint-span',\n offset: 'breakpoint-span',\n fillLastRow: 'switch',\n spacing: 'text-field',\n rowSpacing: 'text-field',\n columnSpacing: 'text-field',\n columns: 'text-field',\n direction: 'select',\n wrap: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n spacing: 200,\n rowSpacing: 200,\n columnSpacing: 200,\n columns: 200,\n },\n presets: ['Grid', 'Grid Cell'],\n },\n muiImageList: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image List',\n summary: 'Dense grid of images — standard, quilted, masonry or woven.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiImageListItem'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['standard', 'quilted', 'masonry', 'woven'],\n },\n cols: {\n type: 'string',\n maxLength: 200,\n },\n gap: {\n type: 'string',\n maxLength: 200,\n },\n rowHeight: {\n type: 'string',\n maxLength: 200,\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxThumbnails: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n cols: 'text',\n gap: 'text',\n rowHeight: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n },\n propFields: {\n variant: 'select',\n cols: 'text-field',\n gap: 'text-field',\n rowHeight: 'text-field',\n lightbox: 'switch',\n lightboxThumbnails: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n },\n textLimits: {\n cols: 200,\n gap: 200,\n rowHeight: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Image List', 'Image List Masonry'],\n },\n muiImageListItem: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image List Item',\n summary: 'One tile of an image list, with an optional caption bar.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n maxLength: 200,\n },\n subtitle: {\n type: 'string',\n maxLength: 200,\n },\n barPosition: {\n type: 'string',\n enum: ['bottom', 'top', 'below'],\n },\n cols: {\n type: 'string',\n maxLength: 200,\n },\n rows: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n title: 'text',\n subtitle: 'text',\n cols: 'text',\n rows: 'text',\n },\n propFields: {\n title: 'text-field',\n subtitle: 'text-field',\n barPosition: 'select',\n cols: 'text-field',\n rows: 'text-field',\n },\n textLimits: {\n title: 200,\n subtitle: 200,\n cols: 200,\n rows: 200,\n },\n presets: ['Image List Item'],\n },\n muiInlineText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Inline Text',\n summary:\n 'One run of text inside a sentence — put several side by side in a paragraph to emphasize a phrase without bre…',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n element: {\n type: 'string',\n enum: ['span', 'strong', 'em', 'mark', 'small'],\n },\n tone: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'disabled',\n 'accent',\n 'accentAlt',\n 'success',\n 'warning',\n 'error',\n ],\n },\n weight: {\n type: 'string',\n enum: ['inherit', 'regular', 'medium', 'semibold', 'bold'],\n },\n decoration: {\n type: 'string',\n enum: ['inherit', 'none', 'underline', 'lineThrough'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n element: 'select',\n tone: 'select',\n weight: 'select',\n decoration: 'select',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Inline Text', 'Emphasized Text'],\n },\n muiInput: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Input',\n summary: 'A box a visitor types in: text, email, phone, link or number.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n type: {\n type: 'string',\n enum: ['text', 'email', 'tel', 'url', 'number'],\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n multiline: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n placeholder: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n type: 'select',\n placeholder: 'text-field',\n required: 'switch',\n multiline: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n placeholder: 200,\n ariaLabel: 200,\n },\n presets: ['Input'],\n },\n muiLinkBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Link Container',\n summary:\n 'Container that is itself a link — put an icon, a heading and a description inside and the whole box becomes o…',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n newTab: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n redundant: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n screenId: 'screen',\n href: 'url',\n ariaLabel: 'text',\n },\n propFields: {\n screenId: 'screen-select',\n href: 'text-field',\n newTab: 'switch',\n ariaLabel: 'text-field',\n redundant: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Link Container'],\n },\n muiList: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List',\n summary: 'Vertical list of items, optionally under a sticky heading.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiListItem'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n subheader: {\n type: 'string',\n maxLength: 200,\n },\n dense: {\n type: 'boolean',\n },\n disablePadding: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n subheader: 'text',\n },\n propFields: {\n subheader: 'text-field',\n dense: 'switch',\n disablePadding: 'switch',\n },\n textLimits: {\n subheader: 200,\n },\n presets: ['List'],\n },\n muiListItem: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List Item',\n summary: 'One row of a list.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiListItemText'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n divider: {\n type: 'boolean',\n },\n alignItems: {\n type: 'string',\n enum: ['center', 'flex-start'],\n },\n dense: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n disablePadding: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n divider: 'switch',\n alignItems: 'select',\n dense: 'switch',\n disableGutters: 'switch',\n disablePadding: 'switch',\n },\n textLimits: {},\n presets: ['List Item'],\n },\n muiListItemText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List Item Text',\n summary: 'The primary and secondary text pair inside a list row.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n primary: {\n type: 'string',\n maxLength: 2000,\n },\n secondary: {\n type: 'string',\n maxLength: 2000,\n },\n secondaryColor: {\n type: 'string',\n enum: ['textSecondary', 'inherit'],\n },\n inset: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n primary: 'text',\n secondary: 'text',\n },\n propFields: {\n primary: 'textarea',\n secondary: 'textarea',\n secondaryColor: 'select',\n inset: 'switch',\n },\n textLimits: {\n primary: 2000,\n secondary: 2000,\n },\n presets: ['List Item Text'],\n },\n muiMegaMenu: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Mega Menu',\n summary:\n 'A nav item that opens a wide panel — columns of links, promos, whatever you build.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n panelWidth: {\n type: 'string',\n enum: ['auto', 'wide', 'full'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n panelWidth: 'select',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Mega Menu'],\n },\n muiNavMenu: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Dropdown Menu',\n summary: 'A nav item that opens a dropdown of links beneath it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Dropdown Menu'],\n },\n muiPagination: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Pagination',\n summary: 'Page-number picker.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n count: {\n type: 'string',\n maxLength: 200,\n },\n defaultPage: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined'],\n },\n shape: {\n type: 'string',\n enum: ['circular', 'rounded'],\n },\n color: {\n type: 'string',\n enum: ['standard', 'primary', 'secondary', 'tertiary'],\n },\n size: {\n type: 'string',\n enum: ['medium', 'small', 'large'],\n },\n siblingCount: {\n type: 'string',\n maxLength: 200,\n },\n boundaryCount: {\n type: 'string',\n maxLength: 200,\n },\n showFirstButton: {\n type: 'boolean',\n },\n showLastButton: {\n type: 'boolean',\n },\n hidePrevButton: {\n type: 'boolean',\n },\n hideNextButton: {\n type: 'boolean',\n },\n disabled: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n count: 'text',\n defaultPage: 'text',\n siblingCount: 'text',\n boundaryCount: 'text',\n },\n propFields: {\n count: 'text-field',\n defaultPage: 'text-field',\n variant: 'select',\n shape: 'select',\n color: 'select',\n size: 'select',\n siblingCount: 'text-field',\n boundaryCount: 'text-field',\n showFirstButton: 'switch',\n showLastButton: 'switch',\n hidePrevButton: 'switch',\n hideNextButton: 'switch',\n disabled: 'switch',\n },\n textLimits: {\n count: 200,\n defaultPage: 200,\n siblingCount: 200,\n boundaryCount: 200,\n },\n presets: ['Pagination'],\n },\n muiPaper: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Paper',\n summary: 'Themed surface with a shadow or an outline.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['elevation', 'outlined'],\n },\n elevation: {\n type: 'string',\n maxLength: 200,\n },\n square: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n elevation: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n variant: 'select',\n elevation: 'text-field',\n square: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n elevation: 200,\n },\n presets: ['Paper', 'Paper Outlined'],\n },\n muiRadio: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Radio',\n summary: 'One choice in a Radio Group.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n value: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n value: 'text',\n },\n propFields: {\n value: 'text-field',\n required: 'switch',\n },\n textLimits: {\n value: 200,\n },\n presets: [],\n },\n muiRadioGroup: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Radio Group',\n summary: 'A set of Radio choices; one may be picked.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n row: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n },\n propFields: {\n name: 'text-field',\n row: 'switch',\n },\n textLimits: {\n name: 200,\n },\n presets: ['Radio Group'],\n },\n muiRating: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Rating',\n summary: 'Stars a visitor picks; sends the number chosen.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n max: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n max: 'text',\n },\n propFields: {\n name: 'text-field',\n max: 'text-field',\n },\n textLimits: {\n name: 200,\n max: 200,\n },\n presets: ['Rating'],\n },\n muiScreenLink: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Page Link',\n summary: 'Links to another page by id, so it survives a slug change.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', 'custom'],\n },\n targetName: {\n type: 'string',\n maxLength: 200,\n },\n renderAs: {\n type: 'string',\n enum: ['button', 'link', 'linkButton'],\n },\n color: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'tertiary',\n 'success',\n 'error',\n 'info',\n 'warning',\n ],\n },\n size: {\n type: 'string',\n enum: ['inherit', 'small', 'medium', 'large'],\n },\n fullWidth: {\n type: 'boolean',\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined', 'contained'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n href: 'url',\n targetName: 'text',\n },\n propFields: {\n children: 'textarea',\n screenId: 'screen-select',\n href: 'text-field',\n target: 'select',\n targetName: 'text-field',\n renderAs: 'select',\n color: 'select',\n size: 'select',\n fullWidth: 'switch',\n variant: 'select',\n },\n textLimits: {\n children: 40,\n targetName: 200,\n },\n presets: ['Page Link'],\n },\n muiSelect: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Select',\n summary: 'A dropdown of Select Options; one may be picked.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiSelectOption'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n placeholder: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n placeholder: 'text-field',\n required: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n placeholder: 200,\n ariaLabel: 200,\n },\n presets: ['Select'],\n },\n muiSelectOption: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Select Option',\n summary: 'One choice in a Select.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n value: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n value: 'text',\n },\n propFields: {\n children: 'textarea',\n value: 'text-field',\n },\n textLimits: {\n children: 2000,\n value: 200,\n },\n presets: ['Select Option'],\n },\n muiStack: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Stack',\n summary:\n 'Lays children out in a row or column with even spacing — the workhorse for most layouts.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n direction: {\n type: 'string',\n enum: ['column', 'column-reverse', 'row', 'row-reverse'],\n },\n justifyContent: {\n type: 'string',\n enum: [\n 'flex-start',\n 'center',\n 'flex-end',\n 'space-between',\n 'space-around',\n 'space-evenly',\n ],\n },\n alignItems: {\n type: 'string',\n enum: ['stretch', 'flex-start', 'center', 'flex-end', 'baseline'],\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n useFlexGap: {\n type: 'boolean',\n },\n flexWrap: {\n type: 'string',\n enum: ['nowrap', 'wrap', 'wrap-reverse'],\n },\n divider: {\n type: 'string',\n enum: ['line', 'dashed'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n spacing: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n direction: 'select',\n justifyContent: 'select',\n alignItems: 'select',\n spacing: 'text-field',\n useFlexGap: 'switch',\n flexWrap: 'select',\n divider: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n spacing: 200,\n },\n presets: [\n 'Image Gallery',\n 'Testimonials',\n 'Pricing Table',\n 'FAQ',\n 'Announcement Bar',\n 'Hero',\n 'Feature Grid',\n 'Image + Text',\n 'Call to Action',\n 'Dropdown Panel',\n 'Mobile Nav',\n 'Stack Horizontal',\n 'Stack Vertical',\n 'Contact Section',\n 'Product page',\n ],\n },\n muiTabPanel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Tab Panel',\n summary: 'The content shown under one tab.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Tab Panel'],\n },\n muiTabs: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Tabs',\n summary:\n 'Tab strip whose Tab Panel children each name the tab that reveals them.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiTabPanel'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n labels: {\n type: 'string',\n maxLength: 2000,\n },\n tabLink1: {\n type: 'string',\n },\n tabLink2: {\n type: 'string',\n },\n tabLink3: {\n type: 'string',\n },\n tabLink4: {\n type: 'string',\n },\n tabLink5: {\n type: 'string',\n },\n tabLink6: {\n type: 'string',\n },\n tabLink7: {\n type: 'string',\n },\n tabLink8: {\n type: 'string',\n },\n opensOn: {\n type: 'string',\n },\n orientation: {\n type: 'string',\n enum: ['horizontal', 'vertical'],\n },\n variant: {\n type: 'string',\n enum: ['standard', 'scrollable', 'fullWidth'],\n },\n ssrPanels: {\n type: 'boolean',\n },\n centered: {\n type: 'boolean',\n },\n textColor: {\n type: 'string',\n enum: ['primary', 'secondary', 'inherit'],\n },\n indicatorColor: {\n type: 'string',\n enum: ['primary', 'secondary', 'tertiary'],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n labels: 'text',\n tabLink1: 'screen',\n tabLink2: 'screen',\n tabLink3: 'screen',\n tabLink4: 'screen',\n tabLink5: 'screen',\n tabLink6: 'screen',\n tabLink7: 'screen',\n tabLink8: 'screen',\n ariaLabel: 'text',\n },\n propFields: {\n labels: 'textarea',\n tabLink1: 'screen-select',\n tabLink2: 'screen-select',\n tabLink3: 'screen-select',\n tabLink4: 'screen-select',\n tabLink5: 'screen-select',\n tabLink6: 'screen-select',\n tabLink7: 'screen-select',\n tabLink8: 'screen-select',\n opensOn: 'select',\n orientation: 'select',\n variant: 'select',\n ssrPanels: 'switch',\n centered: 'switch',\n textColor: 'select',\n indicatorColor: 'select',\n ariaLabel: 'text-field',\n },\n textLimits: {\n labels: 2000,\n ariaLabel: 200,\n },\n presets: ['Tabs'],\n },\n muiTimePicker: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Time Picker',\n summary: 'A time of day a visitor picks from a clock.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n minutesStep: {\n type: 'string',\n enum: ['1', '5', '10', '15', '30'],\n },\n minTime: {\n type: 'string',\n },\n maxTime: {\n type: 'string',\n },\n clock: {\n type: 'string',\n enum: ['auto', '12', '24'],\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n required: 'switch',\n minutesStep: 'select',\n minTime: 'time-picker',\n maxTime: 'time-picker',\n clock: 'select',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n ariaLabel: 200,\n },\n presets: ['Time Picker'],\n },\n muiToolbar: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Toolbar Content',\n summary: 'The content row inside an App Bar — brand, links, actions.',\n acceptsChildren: true,\n restrictParent: [\n 'limitedTo',\n {\n components: ['muiAppBar'],\n plugins: ['mui'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n disableGutters: {\n type: 'boolean',\n },\n variant: {\n type: 'string',\n enum: ['dense', 'regular'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n disableGutters: 'switch',\n variant: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Toolbar Content'],\n },\n muiTypography: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Typography',\n summary: \"A block of text in one of the theme's type styles.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n variant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n component: {\n type: 'string',\n enum: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'div', 'span'],\n },\n align: {\n type: 'string',\n enum: ['inherit', 'left', 'center', 'right', 'justify'],\n },\n noWrap: {\n type: 'boolean',\n },\n gutterBottom: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n variant: 'select',\n component: 'select',\n align: 'select',\n noWrap: 'switch',\n gutterBottom: 'switch',\n },\n textLimits: {\n children: 2000,\n },\n presets: [\n 'Display XL',\n 'Heading 1',\n 'Heading 2',\n 'Heading 3',\n 'Heading 4',\n 'Heading 5',\n 'Heading 6',\n 'Subtitle 1',\n 'Subtitle 2',\n 'Body 1',\n 'Body 2',\n 'Lede',\n 'Overline',\n 'Caption',\n 'Body compact',\n 'Micro',\n ],\n },\n musicPlayer: {\n pluginId: 'music',\n kind: 'element',\n category: 'Media',\n displayName: 'Music player',\n summary:\n 'Plays your own tracks from your media library, one or a playlist.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['musicTrack'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n src: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n artist: {\n type: 'string',\n maxLength: 200,\n },\n image: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n src: 'media',\n title: 'text',\n artist: 'text',\n image: 'media',\n },\n propFields: {\n heading: 'text-field',\n src: 'text-field',\n title: 'text-field',\n artist: 'text-field',\n image: 'text-field',\n },\n textLimits: {\n heading: 200,\n title: 200,\n artist: 200,\n },\n presets: ['Music player', 'Music playlist'],\n },\n musicTrack: {\n pluginId: 'music',\n kind: 'element',\n category: 'Media',\n displayName: 'Track',\n summary: 'One track of a music player’s playlist.',\n acceptsChildren: false,\n restrictParent: [\n 'limitedTo',\n {\n components: ['musicPlayer'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n artist: {\n type: 'string',\n maxLength: 200,\n },\n image: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n title: 'text',\n artist: 'text',\n image: 'media',\n },\n propFields: {\n src: 'text-field',\n title: 'text-field',\n artist: 'text-field',\n image: 'text-field',\n },\n textLimits: {\n title: 200,\n artist: 200,\n },\n presets: ['Track'],\n },\n 'newsletter-signup': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Newsletter signup',\n summary: 'A consented email capture that writes straight into contacts.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n buttonLabel: {\n type: 'string',\n maxLength: 40,\n },\n successText: {\n type: 'string',\n maxLength: 200,\n },\n listId: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n buttonLabel: 'text',\n successText: 'text',\n listId: 'text',\n },\n propFields: {\n heading: 'text-field',\n buttonLabel: 'text-field',\n successText: 'text-field',\n listId: 'text-field',\n },\n textLimits: {\n heading: 200,\n buttonLabel: 40,\n successText: 200,\n listId: 200,\n },\n presets: ['Newsletter signup'],\n },\n 'order-status': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Order status',\n summary:\n 'A buyer’s order, shipments and tracking, opened from the link in their order emails.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Order status'],\n },\n product: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product',\n summary: 'A single product card with a buy button, priced on the server.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n productId: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n priceUsd: {\n type: 'string',\n maxLength: 200,\n },\n description: {\n type: 'string',\n maxLength: 200,\n },\n imageUrl: {\n type: 'string',\n },\n buyLabel: {\n type: 'string',\n maxLength: 200,\n },\n showCoupon: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n productId: 'text',\n name: 'text',\n priceUsd: 'text',\n description: 'text',\n imageUrl: 'url',\n buyLabel: 'text',\n },\n propFields: {\n productId: 'text-field',\n name: 'text-field',\n priceUsd: 'text-field',\n description: 'text-field',\n imageUrl: 'text-field',\n buyLabel: 'text-field',\n showCoupon: 'checkbox',\n },\n textLimits: {\n productId: 200,\n name: 200,\n priceUsd: 200,\n description: 200,\n buyLabel: 200,\n },\n presets: ['Product'],\n },\n 'product-detail': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product detail',\n summary: \"One product's gallery, options and buy button.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n slug: {\n type: 'string',\n maxLength: 200,\n },\n buyLabel: {\n type: 'string',\n maxLength: 200,\n },\n hideDescription: {\n type: 'boolean',\n },\n showCoupon: {\n type: 'boolean',\n },\n showDetails: {\n type: 'boolean',\n },\n showShipping: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n slug: 'text',\n buyLabel: 'text',\n },\n propFields: {\n slug: 'text-field',\n buyLabel: 'text-field',\n hideDescription: 'checkbox',\n showCoupon: 'checkbox',\n showDetails: 'checkbox',\n showShipping: 'checkbox',\n },\n textLimits: {\n slug: 200,\n buyLabel: 200,\n },\n presets: ['Product detail'],\n },\n 'product-grid': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product grid',\n summary:\n 'Your catalog as a grid, with optional search, category chips, sort and paging.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n source: {\n type: 'string',\n enum: ['all', 'collection', 'category', 'tag'],\n },\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n categorySlug: {\n type: 'string',\n maxLength: 200,\n },\n tag: {\n type: 'string',\n maxLength: 200,\n },\n sort: {\n type: 'string',\n enum: ['name', 'price-asc', 'price-desc', 'newest'],\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n emptyTitle: {\n type: 'string',\n maxLength: 200,\n },\n emptyActionLabel: {\n type: 'string',\n maxLength: 200,\n },\n emptyActionHref: {\n type: 'string',\n maxLength: 200,\n },\n showFilters: {\n type: 'boolean',\n },\n showSearch: {\n type: 'boolean',\n },\n showCategories: {\n type: 'boolean',\n },\n showSort: {\n type: 'boolean',\n },\n showTypeFilter: {\n type: 'boolean',\n },\n showPriceFilter: {\n type: 'boolean',\n },\n pageSize: {\n type: 'string',\n maxLength: 200,\n },\n cardStyle: {\n type: 'string',\n enum: ['outlined', 'photo'],\n },\n quickAdd: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n categorySlug: 'text',\n tag: 'text',\n columns: 'text',\n maxItems: 'text',\n emptyText: 'text',\n emptyTitle: 'text',\n emptyActionLabel: 'text',\n emptyActionHref: 'text',\n pageSize: 'text',\n },\n propFields: {\n source: 'select',\n collectionSlug: 'text-field',\n categorySlug: 'text-field',\n tag: 'text-field',\n sort: 'select',\n columns: 'text-field',\n maxItems: 'text-field',\n emptyText: 'text-field',\n emptyTitle: 'text-field',\n emptyActionLabel: 'text-field',\n emptyActionHref: 'text-field',\n showFilters: 'checkbox',\n showSearch: 'checkbox',\n showCategories: 'checkbox',\n showSort: 'checkbox',\n showTypeFilter: 'checkbox',\n showPriceFilter: 'checkbox',\n pageSize: 'text-field',\n cardStyle: 'select',\n quickAdd: 'checkbox',\n },\n textLimits: {\n collectionSlug: 200,\n categorySlug: 200,\n tag: 200,\n columns: 200,\n maxItems: 200,\n emptyText: 200,\n emptyTitle: 200,\n emptyActionLabel: 200,\n emptyActionHref: 200,\n pageSize: 200,\n },\n presets: ['Product grid', 'Shop catalog'],\n },\n 'product-options-field': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Forms',\n displayName: 'Product and options',\n summary:\n 'A form field: the person picks one of your products and its options, such as size and finish.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n name: 'text',\n },\n propFields: {\n label: 'text-field',\n name: 'text-field',\n required: 'switch',\n },\n textLimits: {\n label: 200,\n name: 200,\n },\n presets: ['Product and options'],\n },\n 'product-reviews': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product reviews',\n summary:\n 'Approved reviews with verified-buyer badges, and a form for customers who bought the product to add one.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n scope: {\n type: 'string',\n enum: ['product', 'store'],\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n headingLevel: {\n type: 'string',\n enum: ['2', '3', '4'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n scope: 'select',\n maxItems: 'text-field',\n headingLevel: 'select',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Product reviews'],\n },\n 'quote-page': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Quote',\n summary:\n 'A customer’s quote and its Pay button, opened from the pay link a business sends.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Quote'],\n },\n 'related-products': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Related products',\n summary:\n 'An upsell strip — your manual picks, or what people buy together.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n layout: {\n type: 'string',\n enum: ['strip', 'grid'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n maxItems: 'text-field',\n layout: 'select',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Related products'],\n },\n 'reservation-widget': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Reservation widget',\n summary:\n 'A date-range booking with a live quote and a deposit taken up front.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n resourceId: {\n type: 'string',\n maxLength: 200,\n },\n reserveLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n resourceId: 'text',\n reserveLabel: 'text',\n },\n propFields: {\n resourceId: 'text-field',\n reserveLabel: 'text-field',\n },\n textLimits: {\n resourceId: 200,\n reserveLabel: 200,\n },\n presets: ['Reservation widget'],\n },\n 'return-request': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Return request',\n summary:\n 'The buyer’s return form for one order, opened from their account or the order’s status page.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Return request'],\n },\n reusableInstance: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Reusable Component',\n summary: 'Where a reusable component is placed.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n searchBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Search Box',\n summary: \"A search field that opens the site's search page.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n defaultValue: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n placeholder: 'text',\n defaultValue: 'text',\n },\n propFields: {\n placeholder: 'text-field',\n defaultValue: 'text-field',\n },\n textLimits: {\n placeholder: 200,\n defaultValue: 200,\n },\n presets: ['Search Box'],\n },\n section: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Section',\n summary:\n 'Groups components inside a semantic HTML element (section, article, nav, …).',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n element: {\n type: 'string',\n enum: [\n 'section',\n 'div',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n underHeader: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n element: 'select',\n ariaLabel: 'text-field',\n colorScheme: 'select',\n underHeader: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Footer', 'Section'],\n },\n socialLinks: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Social Links',\n summary: 'A row of icon links to whichever social profiles you fill in.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n twitter: {\n type: 'string',\n maxLength: 200,\n },\n instagram: {\n type: 'string',\n maxLength: 200,\n },\n facebook: {\n type: 'string',\n maxLength: 200,\n },\n linkedin: {\n type: 'string',\n maxLength: 200,\n },\n youtube: {\n type: 'string',\n maxLength: 200,\n },\n github: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n twitter: 'text',\n instagram: 'text',\n facebook: 'text',\n linkedin: 'text',\n youtube: 'text',\n github: 'text',\n },\n propFields: {\n twitter: 'text-field',\n instagram: 'text-field',\n facebook: 'text-field',\n linkedin: 'text-field',\n youtube: 'text-field',\n github: 'text-field',\n },\n textLimits: {\n twitter: 200,\n instagram: 200,\n facebook: 200,\n linkedin: 200,\n youtube: 200,\n github: 200,\n },\n presets: ['Social Links'],\n },\n tableOfContents: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Table of Contents',\n summary: \"An on-this-page list linking to a Markdown element's headings.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n depth: {\n type: 'string',\n enum: ['3', '2'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n depth: 'select',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Table of Contents'],\n },\n themeModeSwitcher: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Input',\n displayName: 'Theme mode switcher',\n summary:\n 'Lets visitors override the site theme with light, dark, or device default.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['icon', 'toggle'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n variant: 'select',\n },\n textLimits: {},\n presets: ['Theme mode switcher'],\n },\n video: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Video',\n summary: 'Plays a video file from your media library or any URL.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n poster: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n description: {\n type: 'string',\n maxLength: 2000,\n },\n uploadDate: {\n type: 'string',\n maxLength: 200,\n },\n durationSeconds: {\n type: 'string',\n maxLength: 200,\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n loadPlayer: {\n type: 'boolean',\n },\n preload: {\n type: 'string',\n enum: ['none', 'metadata', 'auto'],\n },\n controls: {\n type: 'boolean',\n },\n autoPlay: {\n type: 'boolean',\n },\n loop: {\n type: 'boolean',\n },\n muted: {\n type: 'boolean',\n },\n playsInline: {\n type: 'boolean',\n },\n captionsSrc: {\n type: 'string',\n maxLength: 200,\n },\n captionsLabel: {\n type: 'string',\n maxLength: 200,\n },\n captionsLang: {\n type: 'string',\n maxLength: 200,\n },\n width: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n poster: 'media',\n title: 'text',\n description: 'text',\n uploadDate: 'text',\n durationSeconds: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n captionsSrc: 'text',\n captionsLabel: 'text',\n captionsLang: 'text',\n },\n propFields: {\n src: 'text-field',\n poster: 'text-field',\n title: 'text-field',\n description: 'textarea',\n uploadDate: 'text-field',\n durationSeconds: 'text-field',\n lightbox: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n loadPlayer: 'switch',\n preload: 'select',\n controls: 'checkbox',\n autoPlay: 'checkbox',\n loop: 'checkbox',\n muted: 'checkbox',\n playsInline: 'checkbox',\n captionsSrc: 'text-field',\n captionsLabel: 'text-field',\n captionsLang: 'text-field',\n width: 'css-dimension',\n height: 'css-dimension',\n },\n textLimits: {\n title: 200,\n description: 2000,\n uploadDate: 200,\n durationSeconds: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n captionsSrc: 200,\n captionsLabel: 200,\n captionsLang: 200,\n },\n presets: ['Video'],\n },\n videoEmbed: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Video',\n summary: \"Embeds a YouTube or Vimeo player from the video's URL.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n url: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n url: 'url',\n },\n propFields: {\n url: 'text-field',\n height: 'css-dimension',\n },\n textLimits: {},\n presets: ['Video'],\n },\n wishlist: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Wishlist',\n summary: 'Products a visitor saved, linking back to their pages.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n emptyText: 'text',\n },\n propFields: {\n heading: 'text-field',\n emptyText: 'text-field',\n },\n textLimits: {\n heading: 200,\n emptyText: 200,\n },\n presets: ['Wishlist'],\n },\n}\n\n/** What every node can do, whatever its componentId. */\nexport const AI_NODE_CAPABILITIES: Record<string, AiNodeCapability> = {\n repeat: {\n id: 'repeat',\n displayName: 'Repeat',\n summary: 'Renders an element once per record of the data it repeats over.',\n propsSchema: {\n type: 'object',\n properties: {\n repeatSelf: {\n type: 'string',\n enum: ['false', 'true'],\n },\n repeatLimit: {\n type: 'string',\n maxLength: 200,\n },\n repeatFilter: {\n type: 'string',\n maxLength: 200,\n },\n repeatSort: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n repeatLimit: 'text',\n repeatFilter: 'text',\n repeatSort: 'text',\n },\n propFields: {\n repeatSelf: 'select',\n repeatLimit: 'text-field',\n repeatFilter: 'text-field',\n repeatSort: 'text-field',\n },\n textLimits: {\n repeatLimit: 200,\n repeatFilter: 200,\n repeatSort: 200,\n },\n childrenOnlyProps: ['repeatSelf'],\n omittedProps: [],\n },\n}\n\n/** Attribute field kinds this palette declares nowhere, and so turned away. */\nexport const AI_UNDECLARED_FIELD_KINDS: readonly string[] = [\n 'category-select',\n 'collection-select',\n 'data-table',\n 'dataset-field-select',\n 'dataset-select',\n 'form-select',\n 'node-select',\n 'plugin-select',\n 'plugin-settings',\n 'product-select',\n]\n\n/** The root and the allowed component ids of each surface. */\nexport const AI_SURFACES: Record<AiSurface, AiSurfaceDefinition> = {\n screen: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'image',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n codeOnly: [\n 'icon',\n 'product-grid',\n 'product-reviews',\n 'newsletter-signup',\n 'eventList',\n ],\n },\n email: {\n root: 'div',\n allow: [\n 'emailButton',\n 'emailDivider',\n 'emailImage',\n 'emailProduct',\n 'emailSection',\n 'emailSpacer',\n 'emailText',\n ],\n },\n form: {\n root: 'form',\n allow: [\n 'form',\n 'muiButton',\n 'muiCheckbox',\n 'muiDatePicker',\n 'muiFormControl',\n 'muiFormControlLabel',\n 'muiFormHelperText',\n 'muiFormLabel',\n 'muiInput',\n 'muiRadio',\n 'muiRadioGroup',\n 'muiRating',\n 'muiSelect',\n 'muiSelectOption',\n 'muiTimePicker',\n ],\n },\n layout: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'image',\n 'layoutSlot',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n codeOnly: ['icon', 'muiDrawer', 'muiDrawerToggle', 'cart'],\n },\n component: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'icon',\n 'image',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n },\n}\n\n/** Theme vocabulary an `sx` value may name. */\nexport const AI_SX_TOKENS: AiSxTokens = {\n palette: [\n 'action.active',\n 'action.disabled',\n 'action.disabledBackground',\n 'action.focus',\n 'action.hover',\n 'action.selected',\n 'background.default',\n 'background.paper',\n 'common.black',\n 'common.white',\n 'divider',\n 'error.contrastText',\n 'error.dark',\n 'error.hover',\n 'error.hoverText',\n 'error.light',\n 'error.main',\n 'grey.100',\n 'grey.200',\n 'grey.300',\n 'grey.400',\n 'grey.50',\n 'grey.500',\n 'grey.600',\n 'grey.700',\n 'grey.800',\n 'grey.900',\n 'grey.A100',\n 'grey.A200',\n 'grey.A400',\n 'grey.A700',\n 'info.contrastText',\n 'info.dark',\n 'info.hover',\n 'info.hoverText',\n 'info.light',\n 'info.main',\n 'inputOutline',\n 'primary.contrastText',\n 'primary.dark',\n 'primary.hover',\n 'primary.hoverText',\n 'primary.light',\n 'primary.main',\n 'secondary.contrastText',\n 'secondary.dark',\n 'secondary.hover',\n 'secondary.hoverText',\n 'secondary.light',\n 'secondary.main',\n 'success.contrastText',\n 'success.dark',\n 'success.hover',\n 'success.hoverText',\n 'success.light',\n 'success.main',\n 'surface.contrastText',\n 'surface.dark',\n 'surface.hover',\n 'surface.light',\n 'surface.main',\n 'svgBackground.active',\n 'svgBackground.focus',\n 'svgBackground.hover',\n 'svgBackground.main',\n 'svgFilled.active',\n 'svgFilled.focus',\n 'svgFilled.hover',\n 'svgFilled.main',\n 'svgStroke.active',\n 'svgStroke.focus',\n 'svgStroke.hover',\n 'svgStroke.main',\n 'tertiary.contrastText',\n 'tertiary.dark',\n 'tertiary.hover',\n 'tertiary.hoverText',\n 'tertiary.light',\n 'tertiary.main',\n 'text.disabled',\n 'text.primary',\n 'text.secondary',\n 'tint.primary',\n 'tint.secondary',\n 'tint.tertiary',\n 'warning.contrastText',\n 'warning.dark',\n 'warning.hover',\n 'warning.hoverText',\n 'warning.light',\n 'warning.main',\n ],\n breakpoints: ['xs', 'sm', 'md', 'lg', 'xl'],\n typographyVariants: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n}\n\n/** Props only the platform's code sets (AGL-3660): stored, never described to a model. */\nexport const AI_CODE_ONLY_PROPS: Readonly<Record<string, readonly string[]>> = {\n section: ['underHeader'],\n muiAppBar: ['overHero'],\n}\n\n/** The prompt catalog of each surface. */\nexport const AI_PALETTE_CATALOG: Record<AiSurface, string> = {\n screen:\n \"Surface: screen. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n email:\n 'Surface: email. Root: the document wrapper (componentId \"div\", id \"_@_\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- emailButton: A call-to-action button that survives every mail client. — leaf — children=text≤40, href=url, backgroundColor=string, color=string, align=left|center|right\\n- emailDivider: A horizontal rule between email sections. — leaf — color=string\\n- emailImage: An email-safe image, capped at 600px wide, optionally linked. — leaf — src=media, alt=text≤200, width=text≤200, href=url, align=left|center|right\\n- emailProduct: A product card resolved at send time, so it never goes stale. — leaf — buttonLabel=text≤40\\n- emailSection: An email-safe band with its own background color and padding. — holds any — backgroundColor=string, padding=text≤200, align=left|center|right\\n- emailSpacer: Fixed vertical whitespace between email blocks. — leaf — height=text≤200\\n- emailText: A paragraph of email copy in one of the preset styles. — leaf — children=text≤2000, variant=heading|subheading|body|caption|eyebrow|details|…, color=string, align=left|center|right\\nNamed blocks to imitate: Header (emailSection); Footer (emailSection).',\n form: 'Surface: form. Root: one \"form\" node.\\nElements (id (name): purpose — children — props; * = required):\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCheckbox (Checkbox): A tick box. — leaf — name=text≤200, value=text≤200, required=boolean\\n- muiDatePicker (Date Picker): A date a visitor picks from a calendar. — leaf — name=text≤200, minDate=string, maxDate=string, size=medium|small, ariaLabel=text≤200\\n- muiFormControl (Form Control): One field’s frame: holds a Form Label, an input and Helper Text, and links the label to the input. — holds any — fullWidth=boolean, required=boolean\\n- muiFormControlLabel (Choice Label): The words beside a Checkbox or Radio placed inside it; clicking them ticks it. — holds only muiCheckbox|muiRadio — label=text≤200\\n- muiFormHelperText (Helper Text): A line of guidance under a field. — leaf — children=text≤2000\\n- muiFormLabel (Form Label): The words that name a field, above its input. — leaf — children=text≤2000\\n- muiInput (Input): A box a visitor types in: text, email, phone, link or number. — leaf — name=text≤200, type=text|email|tel|url|number, placeholder=text≤200, size=medium|small, ariaLabel=text≤200\\n- muiRadio (Radio): One choice in a Radio Group. — leaf — value=text≤200, required=boolean\\n- muiRadioGroup (Radio Group): A set of Radio choices; one may be picked. — holds any — name=text≤200, row=boolean\\n- muiRating (Rating): Stars a visitor picks; sends the number chosen. — leaf — name=text≤200, max=text≤200\\n- muiSelect (Select): A dropdown of Select Options; one may be picked. — holds only muiSelectOption — name=text≤200, placeholder=text≤200, required=boolean, size=medium|small, ariaLabel=text≤200\\n- muiSelectOption (Select Option): One choice in a Select. — leaf — children=text≤2000, value=text≤200\\n- muiTimePicker (Time Picker): A time of day a visitor picks from a clock. — leaf — name=text≤200, minutesStep=1|5|10|15|30, minTime=string, clock=auto|12|24, size=medium|small\\nNamed blocks to imitate: Select (muiSelect); Radio Group (muiRadioGroup); Radio (muiFormControlLabel); Choice Label (muiFormControlLabel); Text field (muiFormControl); Email field (muiFormControl); Message field (muiFormControl); Dropdown field (muiFormControl); Radio choice field (muiFormControl); Checkbox (muiFormControlLabel); Rating field (muiFormControl); Date field (muiFormControl); Time field (muiFormControl); Contact Form (form); Marketing consent (muiFormControl).',\n layout:\n \"Surface: layout. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- layoutSlot: Marks where each bound page's content renders inside this layout. — leaf — caption=text≤200, component=main|div|section|article\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n component:\n \"Surface: component. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- icon: A single icon from the library, at the size and color you pick. — leaf — iconId=string, size=text≤200, color=text≤200\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n}\n"],"names":["AI_PALETTE","booking","pluginId","kind","category","displayName","summary","acceptsChildren","propsSchema","type","properties","heading","maxLength","successMessage","required","additionalProperties","propRoles","propFields","textLimits","presets","cart","variant","enum","checkoutLabel","showCoupon","emptyText","collectionCategories","collectionSlug","allLabel","collectionEntries","entriesLimit","filterCategory","filterTag","perPage","page","firstPageOnly","search","searchMode","searchPlaceholder","spacing","collectionEntryAuthor","name","bio","image","pageUrl","url","showLinks","showBio","showAvatar","collectionEntryBody","markdown","collectionEntryMeta","date","dateFormat","author","tags","avatarImage","showDate","showCategory","showTags","authorPageUrl","linkAuthor","showAuthor","collectionRelated","limit","layout","columns","showCover","headingVariant","titleVariant","showExcerpt","collectionSearch","collectionShare","contentAuthorProfile","jobTitle","worksFor","showRole","html","css","embedMode","embedHeight","signedOutHeading","dataTable","headerRow","emphasizeColumn","div","component","emailButton","children","href","backgroundColor","color","align","emailDivider","emailHtml","emailImage","src","alt","width","emailProduct","buttonLabel","emailRichtext","emailSection","padding","emailSpacer","height","emailText","eventList","mode","maxItems","form","formName","datasetName","submitLabel","afterSubmit","redirectScreenId","redirectUrl","formField","fieldName","label","placeholder","fieldType","options","formFileUpload","helperText","kinds","maxFiles","gate","teaserText","ctaLabel","ctaHref","videoIndex","lockedText","icon","iconId","size","decorative","title","objectFit","sizes","loading","lightbox","lightboxCaption","lightboxGallery","lightboxThumbnails","lightboxBackdropColor","lightboxBackdropOpacity","lightboxBackdropBlur","lightboxMaxWidth","lightboxMaxHeight","lightboxPadding","lightboxRadius","lightboxCloseStyle","lightboxClosePosition","lightboxCaptionPlacement","lightboxTransition","lightboxCloseOnBackdrop","lightboxCloseOnEscape","screenId","languageSwitcher","uppercase","layoutSlot","restrictChildren","components","caption","content","marketplacePlugin","signinPath","signupPath","recoveryPath","continueFallback","muiAccordion","defaultExpanded","disableGutters","disabled","muiAccordionDetails","muiAccordionSummary","muiAppBar","ariaLabel","position","shrinkOnScroll","hideOnScroll","overHero","muiBox","colorScheme","muiBreadcrumbs","separator","itemsBeforeCollapse","itemsAfterCollapse","expandText","muiButton","fullWidth","target","targetName","renderAs","startIconId","endIconId","muiCard","elevation","muiCardActions","disableSpacing","muiCardContent","muiCardHeader","subheader","muiCheckbox","value","muiContainer","fixed","maxWidth","muiDatePicker","disablePast","disableFuture","minDate","maxDate","defaultToday","muiDrawer","anchor","muiDrawerToggle","muiFormControl","muiFormControlLabel","muiFormHelperText","muiFormLabel","muiGrid","container","offset","fillLastRow","rowSpacing","columnSpacing","direction","wrap","muiImageList","cols","gap","rowHeight","muiImageListItem","subtitle","barPosition","rows","muiInlineText","element","tone","weight","decoration","muiInput","multiline","muiLinkBox","newTab","redundant","muiList","dense","disablePadding","muiListItem","divider","alignItems","muiListItemText","primary","secondary","secondaryColor","inset","muiMegaMenu","panelWidth","muiNavMenu","muiPagination","count","defaultPage","shape","siblingCount","boundaryCount","showFirstButton","showLastButton","hidePrevButton","hideNextButton","muiPaper","square","muiRadio","muiRadioGroup","row","muiRating","max","muiScreenLink","muiSelect","muiSelectOption","muiStack","justifyContent","useFlexGap","flexWrap","muiTabPanel","muiTabs","labels","tabLink1","tabLink2","tabLink3","tabLink4","tabLink5","tabLink6","tabLink7","tabLink8","opensOn","orientation","ssrPanels","centered","textColor","indicatorColor","muiTimePicker","minutesStep","minTime","maxTime","clock","muiToolbar","restrictParent","plugins","muiTypography","noWrap","gutterBottom","musicPlayer","artist","musicTrack","successText","listId","product","productId","priceUsd","description","imageUrl","buyLabel","slug","hideDescription","showDetails","showShipping","source","categorySlug","tag","sort","emptyTitle","emptyActionLabel","emptyActionHref","showFilters","showSearch","showCategories","showSort","showTypeFilter","showPriceFilter","pageSize","cardStyle","quickAdd","scope","headingLevel","resourceId","reserveLabel","reusableInstance","searchBox","defaultValue","section","underHeader","socialLinks","twitter","instagram","facebook","linkedin","youtube","github","tableOfContents","depth","themeModeSwitcher","video","poster","uploadDate","durationSeconds","loadPlayer","preload","controls","autoPlay","loop","muted","playsInline","captionsSrc","captionsLabel","captionsLang","videoEmbed","wishlist","AI_NODE_CAPABILITIES","repeat","id","repeatSelf","repeatLimit","repeatFilter","repeatSort","childrenOnlyProps","omittedProps","AI_UNDECLARED_FIELD_KINDS","AI_SURFACES","screen","root","allow","codeOnly","email","AI_SX_TOKENS","palette","breakpoints","typographyVariants","AI_CODE_ONLY_PROPS","AI_PALETTE_CATALOG"],"mappings":"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d3D,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACA+C,cAAc;oBACZ5D,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAmC,UAAU;oBACRhD,MAAM;gBACR;gBACA4C,YAAY;oBACV5C,MAAM;oBACNa,MAAM;wBAAC;wBAAW;wBAAa;wBAAc;wBAAY;qBAAM;gBACjE;gBACAoC,cAAc;oBACZjD,MAAM;gBACR;gBACA6D,aAAa;oBACX7D,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTL,SAAS;YACTqD,OAAO;YACPE,SAAS;QACX;QACAjD,YAAY;YACVN,SAAS;YACTqD,OAAO;YACPC,QAAQ;YACRC,SAAS;YACTC,WAAW;YACXC,gBAAgB;YAChBC,cAAc;YACdZ,UAAU;YACVJ,YAAY;YACZK,cAAc;YACdY,aAAa;QACf;QACApD,YAAY;YACVP,SAAS;YACTqD,OAAO;YACPE,SAAS;QACX;QACA/C,SAAS;YAAC;SAAgB;IAC5B;IACAoD,kBAAkB;QAChBrE,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACViB,gBAAgB;oBACdlB,MAAM;oBACNG,WAAW;gBACb;gBACA0B,mBAAmB;oBACjB7B,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTW,gBAAgB;YAChBW,mBAAmB;QACrB;QACArB,YAAY;YACVU,gBAAgB;YAChBW,mBAAmB;QACrB;QACApB,YAAY;YACVS,gBAAgB;YAChBW,mBAAmB;QACrB;QACAnB,SAAS;YAAC;SAAoB;IAChC;IACAqD,iBAAiB;QACftE,U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ACZC,sBAAsB;QACxB;QACAC,WAAW;YACT+F,UAAU;YACVC,aAAa;YACbC,aAAa;YACbpG,gBAAgB;YAChBsG,kBAAkB;YAClBC,aAAa;QACf;QACAnG,YAAY;YACV8F,UAAU;YACVC,aAAa;YACbC,aAAa;YACbpG,gBAAgB;YAChBqG,aAAa;YACbC,kBAAkB;YAClBC,aAAa;QACf;QACAlG,YAAY;YACV6F,UAAU;YACVC,aAAa;YACbC,aAAa;YACbpG,gBAAgB;QAClB;QACAM,SAAS;YAAC;SAAe;IAC3B;IACAkG,WAAW;QACTnH,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV4G,WAAW;oBACT7G,MAAM;oBACNG,WAAW;gBACb;gBACA2G,OAAO;oBACL9G,MAAM;oBACNG,WAAW;gBACb;gBACA4G,aAAa;oBACX/G,MAAM;oBACNG,WAAW;gBACb;gBACA6G,WAAW;oBACThH,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAoG,SAAS;oBACPjH,MAAM;oBACNG,WAAW;gBACb;gBACAE,UAAU;oBACRL,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTsG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbE,SAAS;QACX;QACAzG,YAAY;YACVqG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbC,WAAW;YACXC,SAAS;YACT5G,UAAU;QACZ;QACAI,YAAY;YACVoG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbE,SAAS;QACX;QACAvG,SAAS,EAAE;IACb;IACAwG,gBAAgB;QACdzH,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV6G,OAAO;oBACL9G,MAAM;oBACNG,WAAW;gBACb;gBACA6B,MAAM;oBACJhC,MAAM;oBACNG,WAAW;gBACb;gBACAgH,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ACZ;QACAI,YAAY,CAAC;QACbC,SAAS;YACP;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAwM,qBAAqB;QACnBzN,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjB2J,kBAAkB;YAChB;YACA;gBACEC,YAAY;oBAAC;oBAAe;iBAAW;YACzC;SACD;QACD3J,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV6G,OAAO;oBACL9G,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTuG,OAAO;QACT;QACAtG,YAAY;YACVsG,OAAO;QACT;QACArG,YAAY;YACVqG,OAAO;QACT;QACApG,SAAS;YAAC;YAAS;YAAgB;SAAW;IAChD;IACAyM,mBAAmB;QACjB1N,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SAAS;QACTC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV8E,UAAU;oBACR/E,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTwE,UAAU;QACZ;QACAvE,YAAY;YACVuE,UAAU;QACZ;QACAtE,YAAY;YACVsE,UAAU;QACZ;QACArE,SAAS;YAAC;SAAc;IAC1B;IACA0M,cAAc;QACZ3N,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SAAS;QACTC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV8E,UAAU;oBACR/E,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTwE,UAAU;QACZ;QACAvE,YAAY;YACVuE,UAAU;QACZ;QACAtE,YAAY;YACVsE,UAAU;QACZ;QACArE,SAAS;YAAC;SAAa;IACzB;IACA2M,SAAS;QACP5N,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SAAS;QACTC,iBAAiB;QACjB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gBACjC;YACF;YACAR,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTkK,WAAW;YACX3I,SAAS;QACX;QACAtB,YAAY;YACVqE,WAAW;YACX4F,WAAW;YACXkD,WAAW;YACXuD,gBAAgB;YAChB9B,YAAY;YACZtN,SAAS;YACTqP,YAAY;YACZC,UAAU;YACVjC,SAAS;YACTpE,aAAa;QACf;QACAtK,YAAY;YACVgK,WAAW;YACX3I,SAAS;QACX;QACApB,SAAS;YACP;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA2Q,aAAa;QACX5R,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SAAS;QACTC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV6G,OAAO;oBACL9G,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTuG,OAAO;QACT;QACAtG,YAAY;YACVsG,OAAO;QACT;QACArG,YAAY;YACVqG,OAAO;QACT;QACApG,SAAS;YAAC;SAAY;IACxB;IACA4Q,SAAS;QACP7R,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjB2J,kBAAkB;YAChB;YACA;gBACEC,YAAY;oBAAC;iBAAc;YAC7B;SACD;QACD3J,aAAa;YACXC,MAAM;YACNC,YAAY;gBACVsR,QAAQ;oBACNvR,MAAM;oBACNG,WAAW;gBACb;gBACAqR,UAAU;oBACRxR,MAAM;gBACR;gBACAyR,UAAU;oBACRzR,MAAM;gBACR;gBACA0R,UAAU;oBACR1R,MAAM;gBACR;gBACA2R,UAAU;oBACR3R,MAAM;gBACR;gBACA4R,UAAU;oBACR5R,MAAM;gBACR;gBACA6R,UAAU;oBACR7R,MAAM;gBACR;gBACA8R,UAAU;oBACR9R,MAAM;gBACR;gBACA+R,UAAU;oBACR/R,MAAM;gBACR;gBACAgS,SAAS;oBACPhS,MAAM;gBACR;gBACAiS,aAAa;oB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;gBACb;gBACAS,SAAS;oBACPZ,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAgE,WAAW;oBACT7E,MAAM;oBACNa,MAAM;wBAAC;wBAAM;wBAAM;wBAAM;wBAAM;wBAAM;wBAAM;wBAAK;wBAAO;qBAAO;gBAChE;gBACAsE,OAAO;oBACLnF,MAAM;oBACNa,MAAM;wBAAC;wBAAW;wBAAQ;wBAAU;wBAAS;qBAAU;gBACzD;gBACAkS,QAAQ;oBACN/S,MAAM;gBACR;gBACAgT,cAAc;oBACZhT,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTwE,UAAU;QACZ;QACAvE,YAAY;YACVuE,UAAU;YACVnE,SAAS;YACTiE,WAAW;YACXM,OAAO;YACP4N,QAAQ;YACRC,cAAc;QAChB;QACAvS,YAAY;YACVsE,UAAU;QACZ;QACArE,SAAS;YACP;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAuS,aAAa;QACXxT,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjB2J,kBAAkB;YAChB;YACA;gBACEC,YAAY;oBAAC;iBAAa;YAC5B;SACD;QACD3J,aAAa;YACXC,MAAM;YACNC,YAAY;gBACVC,SAAS;oBACPF,MAAM;oBACNG,WAAW;gBACb;gBACAoF,KAAK;oBACHvF,MAAM;gBACR;gBACAgI,OAAO;oBACLhI,MAAM;oBACNG,WAAW;gBACb;gBACA+S,QAAQ;oBACNlT,MAAM;oBACNG,WAAW;gBACb;gBACA+B,OAAO;oBACLlC,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTL,SAAS;YACTqF,KAAK;YACLyC,OAAO;YACPkL,QAAQ;YACRhR,OAAO;QACT;QACA1B,YAAY;YACVN,SAAS;YACT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NC,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QACDC,UAAU;YACR;YACA;YACA;YACA;YACA;SACD;IACH;IACAC,OAAO;QACLH,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA3R,MAAM;QACJ0R,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAxU,QAAQ;QACNuU,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QACDC,UAAU;YAAC;YAAQ;YAAa;YAAmB;SAAO;IAC5D;IACApT,WAAW;QACTkT,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;AACF,EAAC;AAED,6CAA6C,GAC7C,OAAO,MAAMG,eAA2B;IACtCC,SAAS;QACP;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IACDC,aAAa;QAAC;QAAM;QAAM;QAAM;QAAM;KAAK;IAC3CC,oBAAoB;QAClB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;AACH,EAAC;AAED,wFAAwF,GACxF,OAAO,MAAMC,qBAAkE;IAC7EhD,SAAS;QAAC;KAAc;IACxB/K,WAAW;QAAC;KAAW;AACzB,EAAC;AAED,wCAAwC,GACxC,OAAO,MAAMgO,qBAAgD;IAC3DV,QACE;IACFI,OACE;IACF7R,MAAM;IACN7C,QACE;IACFqB,WACE;AACJ,EAAC"}
1
+ {"version":3,"sources":["../../../../../../../libs/plugins/ai/src/lib/runtime/ai-palette.generated.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * GENERATED by libs/plugins/ai/scripts/generate-ai-palette.mts from the registered\n * plugin bundles (AGL-2905). Do not edit; re-run the generator, and\n * `npm run check:ai-palette` fails CI when this file is stale.\n */\nimport type {\n AiNodeCapability,\n AiPaletteEntry,\n AiSurface,\n AiSurfaceDefinition,\n AiSxTokens,\n} from './ai-palette'\n\n/** Every registered component, by id. */\nexport const AI_PALETTE: Record<string, AiPaletteEntry> = {\n booking: {\n pluginId: 'bookings',\n kind: 'element',\n category: 'Input',\n displayName: 'Booking',\n summary: 'Service and time picker that books appointments.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n successMessage: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n successMessage: 'text',\n },\n propFields: {\n heading: 'text-field',\n successMessage: 'text-field',\n },\n textLimits: {\n heading: 200,\n successMessage: 200,\n },\n presets: ['Booking'],\n },\n cart: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Cart',\n summary:\n 'The shopping cart — a badge icon with a slide-out drawer, or the full cart page.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['button', 'inline'],\n },\n checkoutLabel: {\n type: 'string',\n maxLength: 200,\n },\n showCoupon: {\n type: 'boolean',\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n checkoutLabel: 'text',\n emptyText: 'text',\n },\n propFields: {\n variant: 'select',\n checkoutLabel: 'text-field',\n showCoupon: 'checkbox',\n emptyText: 'text-field',\n },\n textLimits: {\n checkoutLabel: 200,\n emptyText: 200,\n },\n presets: ['Cart button', 'Cart page'],\n },\n collectionCategories: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Category Pills',\n summary: 'A pill per collection category, each filtering the listing.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n allLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n allLabel: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n allLabel: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n allLabel: 200,\n },\n presets: ['Category Pills'],\n },\n collectionEntries: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Collection Entries',\n summary: 'Repeats its children once per entry in a content collection.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n entriesLimit: {\n type: 'string',\n maxLength: 200,\n },\n filterCategory: {\n type: 'string',\n maxLength: 200,\n },\n filterTag: {\n type: 'string',\n maxLength: 200,\n },\n perPage: {\n type: 'string',\n maxLength: 200,\n },\n page: {\n type: 'string',\n maxLength: 200,\n },\n firstPageOnly: {\n type: 'boolean',\n },\n search: {\n type: 'boolean',\n },\n searchMode: {\n type: 'string',\n enum: ['filter', 'suggest'],\n },\n searchPlaceholder: {\n type: 'string',\n maxLength: 200,\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n entriesLimit: 'text',\n filterCategory: 'text',\n filterTag: 'text',\n perPage: 'text',\n page: 'text',\n searchPlaceholder: 'text',\n spacing: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n entriesLimit: 'text-field',\n filterCategory: 'text-field',\n filterTag: 'text-field',\n perPage: 'text-field',\n page: 'text-field',\n firstPageOnly: 'switch',\n search: 'switch',\n searchMode: 'select',\n searchPlaceholder: 'text-field',\n spacing: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n entriesLimit: 200,\n filterCategory: 200,\n filterTag: 200,\n perPage: 200,\n page: 200,\n searchPlaceholder: 200,\n spacing: 200,\n },\n presets: ['Collection Entries'],\n },\n collectionEntryAuthor: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Author',\n summary: 'The author card for an entry — portrait, byline and bio.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n bio: {\n type: 'string',\n maxLength: 2000,\n },\n image: {\n type: 'string',\n },\n pageUrl: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n showLinks: {\n type: 'boolean',\n },\n showBio: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n bio: 'text',\n image: 'media',\n pageUrl: 'url',\n url: 'url',\n },\n propFields: {\n name: 'text-field',\n bio: 'textarea',\n image: 'text-field',\n pageUrl: 'text-field',\n url: 'text-field',\n showLinks: 'switch',\n showBio: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n name: 200,\n bio: 2000,\n },\n presets: ['Entry Author'],\n },\n collectionEntryBody: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Body',\n summary: \"The current entry's markdown body, on an entry template.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n markdown: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n markdown: 'text',\n },\n propFields: {\n markdown: 'text-field',\n },\n textLimits: {\n markdown: 200,\n },\n presets: ['Entry Body'],\n },\n collectionEntryMeta: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Entry Meta',\n summary: 'The byline row for an entry — author, date, category and tags.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n date: {\n type: 'string',\n maxLength: 200,\n },\n dateFormat: {\n type: 'string',\n enum: ['default', 'monthYear', 'mediumDate', 'longDate', 'iso'],\n },\n author: {\n type: 'string',\n maxLength: 200,\n },\n category: {\n type: 'string',\n maxLength: 200,\n },\n tags: {\n type: 'string',\n maxLength: 200,\n },\n avatarImage: {\n type: 'string',\n maxLength: 200,\n },\n showDate: {\n type: 'boolean',\n },\n showCategory: {\n type: 'boolean',\n },\n showTags: {\n type: 'boolean',\n },\n authorPageUrl: {\n type: 'string',\n },\n linkAuthor: {\n type: 'boolean',\n },\n showAuthor: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n date: 'text',\n author: 'text',\n category: 'text',\n tags: 'text',\n avatarImage: 'text',\n authorPageUrl: 'url',\n },\n propFields: {\n date: 'text-field',\n dateFormat: 'select',\n author: 'text-field',\n category: 'text-field',\n tags: 'text-field',\n avatarImage: 'text-field',\n showDate: 'switch',\n showCategory: 'switch',\n showTags: 'switch',\n authorPageUrl: 'text-field',\n linkAuthor: 'switch',\n showAuthor: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n date: 200,\n author: 200,\n category: 200,\n tags: 200,\n avatarImage: 200,\n },\n presets: ['Entry Meta'],\n },\n collectionRelated: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Related Posts',\n summary: \"Other entries sharing this one's category or tags.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n limit: {\n type: 'string',\n maxLength: 200,\n },\n layout: {\n type: 'string',\n enum: ['list', 'cards'],\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n showCover: {\n type: 'boolean',\n },\n headingVariant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n titleVariant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n showDate: {\n type: 'boolean',\n },\n dateFormat: {\n type: 'string',\n enum: ['default', 'monthYear', 'mediumDate', 'longDate', 'iso'],\n },\n showCategory: {\n type: 'boolean',\n },\n showExcerpt: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n limit: 'text',\n columns: 'text',\n },\n propFields: {\n heading: 'text-field',\n limit: 'text-field',\n layout: 'select',\n columns: 'text-field',\n showCover: 'switch',\n headingVariant: 'select',\n titleVariant: 'select',\n showDate: 'switch',\n dateFormat: 'select',\n showCategory: 'switch',\n showExcerpt: 'switch',\n },\n textLimits: {\n heading: 200,\n limit: 200,\n columns: 200,\n },\n presets: ['Related Posts'],\n },\n collectionSearch: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Collection Search',\n summary:\n 'A search box for a content collection, with a suggestions dropdown.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n searchPlaceholder: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n searchPlaceholder: 'text',\n },\n propFields: {\n collectionSlug: 'text-field',\n searchPlaceholder: 'text-field',\n },\n textLimits: {\n collectionSlug: 200,\n searchPlaceholder: 200,\n },\n presets: ['Collection Search'],\n },\n collectionShare: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Share Bar',\n summary: 'Share buttons for the current page, plus a copy link.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Share Bar'],\n },\n contentAuthorProfile: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Author Profile',\n summary:\n 'Who an author page is about — portrait, name, role, bio and links.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n bio: {\n type: 'string',\n maxLength: 2000,\n },\n image: {\n type: 'string',\n },\n jobTitle: {\n type: 'string',\n maxLength: 200,\n },\n worksFor: {\n type: 'string',\n maxLength: 200,\n },\n url: {\n type: 'string',\n },\n showLinks: {\n type: 'boolean',\n },\n showBio: {\n type: 'boolean',\n },\n showRole: {\n type: 'boolean',\n },\n showAvatar: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n bio: 'text',\n image: 'media',\n jobTitle: 'text',\n worksFor: 'text',\n url: 'url',\n },\n propFields: {\n name: 'text-field',\n bio: 'textarea',\n image: 'text-field',\n jobTitle: 'text-field',\n worksFor: 'text-field',\n url: 'text-field',\n showLinks: 'switch',\n showBio: 'switch',\n showRole: 'switch',\n showAvatar: 'switch',\n },\n textLimits: {\n name: 200,\n bio: 2000,\n jobTitle: 200,\n worksFor: 200,\n },\n presets: ['Author Profile'],\n },\n 'custom-html': {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Custom HTML',\n summary:\n 'Your own markup, sanitised on render, or isolated in a sandboxed iframe.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 200,\n },\n css: {\n type: 'string',\n maxLength: 200,\n },\n embedMode: {\n type: 'boolean',\n },\n embedHeight: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n css: 'text',\n embedHeight: 'text',\n },\n propFields: {\n html: 'text-field',\n css: 'text-field',\n embedMode: 'checkbox',\n embedHeight: 'text-field',\n },\n textLimits: {\n html: 200,\n css: 200,\n embedHeight: 200,\n },\n presets: ['Custom HTML'],\n },\n 'customer-account': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Customer account',\n summary: 'Sign-in and account area — profile, addresses and order history.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n signedOutHeading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n signedOutHeading: 'text',\n },\n propFields: {\n signedOutHeading: 'text-field',\n },\n textLimits: {\n signedOutHeading: 200,\n },\n presets: ['Customer account'],\n },\n dataTable: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Sections & Blocks',\n displayName: 'Table',\n summary:\n 'A grid of rows and columns — a feature matrix, a spec sheet, a comparison.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n rows: {\n type: 'string',\n maxLength: 20000,\n },\n headerRow: {\n type: 'boolean',\n },\n emphasizeColumn: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n rows: 'text',\n emphasizeColumn: 'text',\n },\n propFields: {\n rows: 'data-table',\n headerRow: 'checkbox',\n emphasizeColumn: 'text-field',\n },\n textLimits: {\n rows: 20000,\n emphasizeColumn: 200,\n },\n presets: ['Table'],\n },\n div: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Document',\n summary:\n 'The page itself — the outermost element every other element sits in.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'main',\n 'header',\n 'footer',\n 'nav',\n 'aside',\n 'section',\n 'article',\n ],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n component: 'select',\n },\n textLimits: {},\n presets: [],\n },\n emailButton: {\n pluginId: 'email',\n kind: 'element',\n category: 'Input',\n displayName: 'Email button',\n summary: 'A call-to-action button that survives every mail client.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n href: {\n type: 'string',\n },\n backgroundColor: {\n type: 'string',\n },\n color: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n href: 'url',\n },\n propFields: {\n children: 'text-field',\n href: 'text-field',\n backgroundColor: 'color-picker',\n color: 'color-picker',\n align: 'select',\n },\n textLimits: {\n children: 40,\n },\n presets: ['Email button'],\n },\n emailDivider: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email divider',\n summary: 'A horizontal rule between email sections.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n color: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n color: 'color-picker',\n },\n textLimits: {},\n presets: ['Email divider'],\n },\n emailHtml: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email custom HTML',\n summary: 'Hand-written HTML for an email, used as-is.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n },\n propFields: {\n html: 'textarea',\n },\n textLimits: {\n html: 2000,\n },\n presets: ['Email custom HTML'],\n },\n emailImage: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email image',\n summary: 'An email-safe image, capped at 600px wide, optionally linked.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n alt: {\n type: 'string',\n maxLength: 200,\n },\n width: {\n type: 'string',\n maxLength: 200,\n },\n href: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n alt: 'text',\n width: 'text',\n href: 'url',\n },\n propFields: {\n src: 'text-field',\n alt: 'text-field',\n width: 'text-field',\n href: 'text-field',\n align: 'select',\n },\n textLimits: {\n alt: 200,\n width: 200,\n },\n presets: ['Email image'],\n },\n emailProduct: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email product',\n summary: 'A product card resolved at send time, so it never goes stale.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n buttonLabel: {\n type: 'string',\n maxLength: 40,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n buttonLabel: 'text',\n },\n propFields: {\n buttonLabel: 'text-field',\n },\n textLimits: {\n buttonLabel: 40,\n },\n presets: ['Email product'],\n },\n emailRichtext: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email rich text',\n summary: 'An HTML fragment in an email, sanitised on render.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n html: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n html: 'text',\n },\n propFields: {\n html: 'textarea',\n },\n textLimits: {\n html: 2000,\n },\n presets: ['Email rich text'],\n },\n emailSection: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email section',\n summary: 'An email-safe band with its own background color and padding.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n backgroundColor: {\n type: 'string',\n },\n padding: {\n type: 'string',\n maxLength: 200,\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n padding: 'text',\n },\n propFields: {\n backgroundColor: 'color-picker',\n padding: 'text-field',\n align: 'select',\n },\n textLimits: {\n padding: 200,\n },\n presets: ['Email section', 'Header', 'Footer'],\n },\n emailSpacer: {\n pluginId: 'email',\n kind: 'element',\n category: 'Layout',\n displayName: 'Email spacer',\n summary: 'Fixed vertical whitespace between email blocks.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n height: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n height: 'text',\n },\n propFields: {\n height: 'text-field',\n },\n textLimits: {\n height: 200,\n },\n presets: ['Email spacer'],\n },\n emailText: {\n pluginId: 'email',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Email text',\n summary: 'A paragraph of email copy in one of the preset styles.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n variant: {\n type: 'string',\n enum: [\n 'heading',\n 'subheading',\n 'body',\n 'caption',\n 'eyebrow',\n 'details',\n 'links',\n ],\n },\n color: {\n type: 'string',\n },\n align: {\n type: 'string',\n enum: ['left', 'center', 'right'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n variant: 'select',\n color: 'color-picker',\n align: 'select',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Email text'],\n },\n eventList: {\n pluginId: 'events-calendar',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Event List',\n summary:\n 'Your published events, each marked up so search engines can show it.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n mode: {\n type: 'string',\n enum: ['past'],\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n mode: 'select',\n maxItems: 'text-field',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Event List'],\n },\n form: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form',\n summary:\n 'Collects its Form Fields and sends the answers to you, or into a dataset.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n formName: {\n type: 'string',\n maxLength: 200,\n },\n datasetName: {\n type: 'string',\n maxLength: 200,\n },\n submitLabel: {\n type: 'string',\n maxLength: 40,\n },\n successMessage: {\n type: 'string',\n maxLength: 200,\n },\n afterSubmit: {\n type: 'string',\n enum: ['message', 'redirect', 'reveal'],\n },\n redirectScreenId: {\n type: 'string',\n },\n redirectUrl: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n formName: 'text',\n datasetName: 'text',\n submitLabel: 'text',\n successMessage: 'text',\n redirectScreenId: 'screen',\n redirectUrl: 'url',\n },\n propFields: {\n formName: 'text-field',\n datasetName: 'text-field',\n submitLabel: 'text-field',\n successMessage: 'text-field',\n afterSubmit: 'select',\n redirectScreenId: 'screen-select',\n redirectUrl: 'text-field',\n },\n textLimits: {\n formName: 200,\n datasetName: 200,\n submitLabel: 40,\n successMessage: 200,\n },\n presets: ['Contact Form'],\n },\n formField: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Field',\n summary:\n 'One input inside a form — text, select, radio, checkbox or rating.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n fieldName: {\n type: 'string',\n maxLength: 200,\n },\n label: {\n type: 'string',\n maxLength: 200,\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n fieldType: {\n type: 'string',\n enum: [\n 'text',\n 'email',\n 'textarea',\n 'select',\n 'radio',\n 'checkbox',\n 'rating',\n ],\n },\n options: {\n type: 'string',\n maxLength: 2000,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n fieldName: 'text',\n label: 'text',\n placeholder: 'text',\n options: 'text',\n },\n propFields: {\n fieldName: 'text-field',\n label: 'text-field',\n placeholder: 'text-field',\n fieldType: 'select',\n options: 'textarea',\n required: 'switch',\n },\n textLimits: {\n fieldName: 200,\n label: 200,\n placeholder: 200,\n options: 2000,\n },\n presets: [],\n },\n formFileUpload: {\n pluginId: 'forms',\n kind: 'element',\n category: 'Forms',\n displayName: 'File upload',\n summary:\n 'Lets a person attach files to the form, such as a logo or a sketch.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n helperText: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n kinds: {\n type: 'string',\n enum: [\n 'images,pdf,design',\n 'images',\n 'pdf',\n 'design',\n 'images,pdf',\n 'images,design',\n 'pdf,design',\n ],\n },\n maxFiles: {\n type: 'string',\n enum: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n name: 'text',\n helperText: 'text',\n },\n propFields: {\n label: 'text-field',\n name: 'text-field',\n helperText: 'text-field',\n required: 'switch',\n kinds: 'select',\n maxFiles: 'select',\n },\n textLimits: {\n label: 200,\n name: 200,\n helperText: 200,\n },\n presets: ['File upload'],\n },\n gate: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Members gate',\n summary: 'Shows its children only to entitled members.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n teaserText: {\n type: 'string',\n maxLength: 200,\n },\n ctaLabel: {\n type: 'string',\n maxLength: 200,\n },\n ctaHref: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n teaserText: 'text',\n ctaLabel: 'text',\n ctaHref: 'text',\n },\n propFields: {\n teaserText: 'text-field',\n ctaLabel: 'text-field',\n ctaHref: 'text-field',\n },\n textLimits: {\n teaserText: 200,\n ctaLabel: 200,\n ctaHref: 200,\n },\n presets: ['Members gate'],\n },\n 'gated-video': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Members video',\n summary:\n 'A video only entitled members can play, resuming where they left off.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n videoIndex: {\n type: 'string',\n maxLength: 200,\n },\n lockedText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n videoIndex: 'text',\n lockedText: 'text',\n },\n propFields: {\n videoIndex: 'text-field',\n lockedText: 'text-field',\n },\n textLimits: {\n videoIndex: 200,\n lockedText: 200,\n },\n presets: ['Members video'],\n },\n icon: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Icon',\n summary: 'A single icon from the library, at the size and color you pick.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n iconId: {\n type: 'string',\n },\n size: {\n type: 'string',\n maxLength: 200,\n },\n color: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n size: 'text',\n color: 'text',\n },\n propFields: {\n iconId: 'icon-picker',\n size: 'text-field',\n color: 'text-field',\n },\n textLimits: {\n size: 200,\n color: 200,\n },\n presets: ['Icon'],\n },\n image: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image',\n summary:\n 'A picture from your media library or any URL, with fit, size and an optional link.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n alt: {\n type: 'string',\n maxLength: 200,\n },\n decorative: {\n type: 'boolean',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n objectFit: {\n type: 'string',\n enum: ['cover', 'contain', 'fill', 'none', 'scale-down'],\n },\n width: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n sizes: {\n type: 'string',\n maxLength: 200,\n },\n loading: {\n type: 'string',\n enum: ['lazy', 'eager'],\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxCaption: {\n type: 'string',\n maxLength: 200,\n },\n lightboxGallery: {\n type: 'string',\n maxLength: 200,\n },\n lightboxThumbnails: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n alt: 'text',\n title: 'text',\n sizes: 'text',\n lightboxCaption: 'text',\n lightboxGallery: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n screenId: 'screen',\n href: 'url',\n },\n propFields: {\n src: 'text-field',\n alt: 'text-field',\n decorative: 'switch',\n title: 'text-field',\n objectFit: 'select',\n width: 'css-dimension',\n height: 'css-dimension',\n sizes: 'text-field',\n loading: 'select',\n lightbox: 'switch',\n lightboxCaption: 'text-field',\n lightboxGallery: 'text-field',\n lightboxThumbnails: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n screenId: 'screen-select',\n href: 'text-field',\n },\n textLimits: {\n alt: 200,\n title: 200,\n sizes: 200,\n lightboxCaption: 200,\n lightboxGallery: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Image'],\n },\n languageSwitcher: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Language Switcher',\n summary: \"Links between this page's translations.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['text', 'buttons'],\n },\n uppercase: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n variant: 'select',\n uppercase: 'checkbox',\n },\n textLimits: {},\n presets: ['Language Switcher'],\n },\n layoutSlot: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Layout Slot',\n summary:\n \"Marks where each bound page's content renders inside this layout.\",\n acceptsChildren: false,\n restrictChildren: [\n 'limitedTo',\n {\n components: [],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n caption: {\n type: 'string',\n maxLength: 200,\n },\n component: {\n type: 'string',\n enum: ['main', 'div', 'section', 'article'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n caption: 'text',\n },\n propFields: {\n caption: 'text-field',\n component: 'select',\n },\n textLimits: {\n caption: 200,\n },\n presets: ['Layout Slot'],\n },\n lightbox: {\n pluginId: 'lightbox',\n kind: 'element',\n category: 'Surface',\n displayName: 'Lightbox',\n summary:\n 'Any elements in a lightbox, hidden until a \"Show an element\" interaction opens it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n },\n propFields: {\n label: 'text-field',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n },\n textLimits: {\n label: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Lightbox'],\n },\n markdown: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Markdown',\n summary: 'A whole document written as markdown.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n content: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n content: 'text',\n },\n propFields: {\n content: 'markdown',\n },\n textLimits: {\n content: 2000,\n },\n presets: ['Markdown'],\n },\n marketplacePlugin: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'Plugin',\n summary:\n 'Where an installed marketplace plugin renders, in its own sandbox.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: ['Plugin'],\n },\n 'member-feed': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Member feed',\n summary: 'Updates only entitled members can see.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n emptyText: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n emptyText: 'text-field',\n maxItems: 'text-field',\n },\n textLimits: {\n heading: 200,\n emptyText: 200,\n maxItems: 200,\n },\n presets: ['Member feed'],\n },\n 'member-recovery': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Password recovery',\n summary:\n 'Forgot-password request, and the reset form the emailed link opens.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signinPath: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signinPath: 'text',\n },\n propFields: {\n heading: 'text-field',\n signinPath: 'text-field',\n },\n textLimits: {\n heading: 200,\n signinPath: 200,\n },\n presets: ['Password recovery'],\n },\n 'member-signin': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Member sign-in',\n summary: 'An email and password sign-in form for site members.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signupPath: {\n type: 'string',\n maxLength: 200,\n },\n recoveryPath: {\n type: 'string',\n maxLength: 200,\n },\n continueFallback: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signupPath: 'text',\n recoveryPath: 'text',\n continueFallback: 'text',\n },\n propFields: {\n heading: 'text-field',\n signupPath: 'text-field',\n recoveryPath: 'text-field',\n continueFallback: 'text-field',\n },\n textLimits: {\n heading: 200,\n signupPath: 200,\n recoveryPath: 200,\n continueFallback: 200,\n },\n presets: ['Member sign-in'],\n },\n 'member-signup': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Members',\n displayName: 'Member sign-up',\n summary: 'A create-account form for site membership.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n signinPath: {\n type: 'string',\n maxLength: 200,\n },\n continueFallback: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n signinPath: 'text',\n continueFallback: 'text',\n },\n propFields: {\n heading: 'text-field',\n signinPath: 'text-field',\n continueFallback: 'text-field',\n },\n textLimits: {\n heading: 200,\n signinPath: 200,\n continueFallback: 200,\n },\n presets: ['Member sign-up'],\n },\n muiAccordion: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion',\n summary:\n 'Header that expands to reveal its details — FAQs, long forms, anything progressive.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiAccordionSummary', 'muiAccordionDetails'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n defaultExpanded: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n disabled: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n defaultExpanded: 'switch',\n disableGutters: 'switch',\n disabled: 'switch',\n },\n textLimits: {},\n presets: ['Accordion'],\n },\n muiAccordionDetails: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion Details',\n summary: 'The region an accordion reveals when expanded.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n muiAccordionSummary: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Accordion Summary',\n summary: 'The clickable header row of an accordion.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n screenId: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n },\n propFields: {\n children: 'textarea',\n screenId: 'screen-select',\n },\n textLimits: {\n children: 2000,\n },\n presets: [],\n },\n muiAppBar: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'App Bar',\n summary:\n 'The bar across the top of the site — put a Toolbar Content inside it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n color: {\n type: 'string',\n enum: [\n 'default',\n 'inherit',\n 'transparent',\n 'primary',\n 'secondary',\n 'tertiary',\n ],\n },\n position: {\n type: 'string',\n enum: ['absolute', 'fixed', 'relative', 'static', 'sticky'],\n },\n shrinkOnScroll: {\n type: 'boolean',\n },\n hideOnScroll: {\n type: 'boolean',\n },\n overHero: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n color: 'select',\n position: 'select',\n shrinkOnScroll: 'switch',\n hideOnScroll: 'switch',\n overHero: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['App Bar', 'Nav Bar'],\n },\n muiBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Box',\n summary:\n 'Generic container with no styling of its own — style it from the styles panel.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'span',\n 'p',\n 'figure',\n 'figcaption',\n 'blockquote',\n 'pre',\n ],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n component: 'select',\n colorScheme: 'select',\n },\n textLimits: {},\n presets: ['Two-tone Statement', 'Box'],\n },\n muiBreadcrumbs: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Breadcrumbs',\n summary: 'Trail showing where a page sits.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n separator: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n itemsBeforeCollapse: {\n type: 'string',\n maxLength: 200,\n },\n itemsAfterCollapse: {\n type: 'string',\n maxLength: 200,\n },\n expandText: {\n type: 'string',\n maxLength: 200,\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n separator: 'text',\n maxItems: 'text',\n itemsBeforeCollapse: 'text',\n itemsAfterCollapse: 'text',\n expandText: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n separator: 'text-field',\n maxItems: 'text-field',\n itemsBeforeCollapse: 'text-field',\n itemsAfterCollapse: 'text-field',\n expandText: 'text-field',\n ariaLabel: 'text-field',\n },\n textLimits: {\n separator: 200,\n maxItems: 200,\n itemsBeforeCollapse: 200,\n itemsAfterCollapse: 200,\n expandText: 200,\n ariaLabel: 200,\n },\n presets: ['Breadcrumbs'],\n },\n muiButton: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Input',\n displayName: 'Button',\n summary:\n 'A button — or a link styled as one, if you point it at a page or URL.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n color: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'tertiary',\n 'success',\n 'error',\n 'info',\n 'warning',\n ],\n },\n disabled: {\n type: 'boolean',\n },\n fullWidth: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['inherit', 'small', 'medium', 'large'],\n },\n type: {\n type: 'string',\n enum: ['button', 'submit', 'reset'],\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined', 'contained'],\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', 'custom'],\n },\n targetName: {\n type: 'string',\n maxLength: 200,\n },\n renderAs: {\n type: 'string',\n enum: ['button', 'linkButton'],\n },\n startIconId: {\n type: 'string',\n },\n endIconId: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n href: 'url',\n targetName: 'text',\n },\n propFields: {\n children: 'textarea',\n color: 'select',\n disabled: 'switch',\n fullWidth: 'switch',\n size: 'select',\n type: 'select',\n variant: 'select',\n screenId: 'screen-select',\n href: 'text-field',\n target: 'select',\n targetName: 'text-field',\n renderAs: 'select',\n startIconId: 'icon-picker',\n endIconId: 'icon-picker',\n },\n textLimits: {\n children: 40,\n targetName: 200,\n },\n presets: ['Outlined Button'],\n },\n muiCard: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card',\n summary:\n 'Surface that groups a header, content and actions about one subject.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['elevation', 'outlined'],\n },\n elevation: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n elevation: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n variant: 'select',\n elevation: 'text-field',\n },\n textLimits: {\n ariaLabel: 200,\n elevation: 200,\n },\n presets: ['Card', 'Card Outlined'],\n },\n muiCardActions: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Actions',\n summary: 'The button row at the bottom of a card.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n disableSpacing: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n disableSpacing: 'switch',\n },\n textLimits: {},\n presets: [],\n },\n muiCardContent: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Content',\n summary: 'The padded body region of a card.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n muiCardHeader: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Card Header',\n summary: 'The title and subheader at the top of a card.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n maxLength: 200,\n },\n subheader: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n title: 'text',\n subheader: 'text',\n },\n propFields: {\n title: 'text-field',\n subheader: 'text-field',\n },\n textLimits: {\n title: 200,\n subheader: 200,\n },\n presets: [],\n },\n muiCheckbox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Checkbox',\n summary: 'A tick box.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n value: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n value: 'text',\n },\n propFields: {\n name: 'text-field',\n value: 'text-field',\n required: 'switch',\n },\n textLimits: {\n name: 200,\n value: 200,\n },\n presets: [],\n },\n muiContainer: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Container',\n summary: 'Centers your page content and caps how wide it gets.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n fixed: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n maxWidth: {\n type: 'string',\n enum: ['xs', 'sm', 'md', 'lg', 'xl'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n fixed: 'switch',\n disableGutters: 'switch',\n maxWidth: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Container', 'Prose Container'],\n },\n muiDatePicker: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Date Picker',\n summary: 'A date a visitor picks from a calendar.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n disablePast: {\n type: 'boolean',\n },\n disableFuture: {\n type: 'boolean',\n },\n minDate: {\n type: 'string',\n },\n maxDate: {\n type: 'string',\n },\n defaultToday: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n required: 'switch',\n disablePast: 'switch',\n disableFuture: 'switch',\n minDate: 'date-picker',\n maxDate: 'date-picker',\n defaultToday: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n ariaLabel: 200,\n },\n presets: ['Date Picker'],\n },\n muiDrawer: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Drawer',\n summary: 'A panel that slides in from an edge.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n anchor: {\n type: 'string',\n enum: ['left', 'right', 'top', 'bottom'],\n },\n width: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n anchor: 'select',\n width: 'css-dimension',\n },\n textLimits: {},\n presets: ['Drawer'],\n },\n muiDrawerToggle: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Menu Button',\n summary: \"A hamburger button that opens the page's drawer.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n ariaLabel: 'text-field',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Menu Button'],\n },\n muiFormControl: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Control',\n summary:\n 'One field’s frame: holds a Form Label, an input and Helper Text, and links the label to the input.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n fullWidth: {\n type: 'boolean',\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n fullWidth: 'switch',\n required: 'switch',\n },\n textLimits: {},\n presets: [\n 'Form Control',\n 'Text field',\n 'Email field',\n 'Message field',\n 'Dropdown field',\n 'Radio choice field',\n 'Rating field',\n 'Date field',\n 'Time field',\n 'Marketing consent',\n ],\n },\n muiFormControlLabel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Choice Label',\n summary:\n 'The words beside a Checkbox or Radio placed inside it; clicking them ticks it.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiCheckbox', 'muiRadio'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Radio', 'Choice Label', 'Checkbox'],\n },\n muiFormHelperText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Helper Text',\n summary: 'A line of guidance under a field.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Helper Text'],\n },\n muiFormLabel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Form Label',\n summary: 'The words that name a field, above its input.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Form Label'],\n },\n muiGrid: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Grid',\n summary: 'Responsive 12-column layout.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n container: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n },\n offset: {\n type: 'string',\n },\n fillLastRow: {\n type: 'boolean',\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n rowSpacing: {\n type: 'string',\n maxLength: 200,\n },\n columnSpacing: {\n type: 'string',\n maxLength: 200,\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n direction: {\n type: 'string',\n enum: ['row', 'row-reverse'],\n },\n wrap: {\n type: 'string',\n enum: ['wrap', 'nowrap', 'wrap-reverse'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n spacing: 'text',\n rowSpacing: 'text',\n columnSpacing: 'text',\n columns: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n container: 'switch',\n size: 'breakpoint-span',\n offset: 'breakpoint-span',\n fillLastRow: 'switch',\n spacing: 'text-field',\n rowSpacing: 'text-field',\n columnSpacing: 'text-field',\n columns: 'text-field',\n direction: 'select',\n wrap: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n spacing: 200,\n rowSpacing: 200,\n columnSpacing: 200,\n columns: 200,\n },\n presets: ['Grid', 'Grid Cell'],\n },\n muiImageList: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image List',\n summary: 'Dense grid of images — standard, quilted, masonry or woven.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiImageListItem'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['standard', 'quilted', 'masonry', 'woven'],\n },\n cols: {\n type: 'string',\n maxLength: 200,\n },\n gap: {\n type: 'string',\n maxLength: 200,\n },\n rowHeight: {\n type: 'string',\n maxLength: 200,\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxThumbnails: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n cols: 'text',\n gap: 'text',\n rowHeight: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n },\n propFields: {\n variant: 'select',\n cols: 'text-field',\n gap: 'text-field',\n rowHeight: 'text-field',\n lightbox: 'switch',\n lightboxThumbnails: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n },\n textLimits: {\n cols: 200,\n gap: 200,\n rowHeight: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n },\n presets: ['Image List', 'Image List Masonry'],\n },\n muiImageListItem: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Image List Item',\n summary: 'One tile of an image list, with an optional caption bar.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n maxLength: 200,\n },\n subtitle: {\n type: 'string',\n maxLength: 200,\n },\n barPosition: {\n type: 'string',\n enum: ['bottom', 'top', 'below'],\n },\n cols: {\n type: 'string',\n maxLength: 200,\n },\n rows: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n title: 'text',\n subtitle: 'text',\n cols: 'text',\n rows: 'text',\n },\n propFields: {\n title: 'text-field',\n subtitle: 'text-field',\n barPosition: 'select',\n cols: 'text-field',\n rows: 'text-field',\n },\n textLimits: {\n title: 200,\n subtitle: 200,\n cols: 200,\n rows: 200,\n },\n presets: ['Image List Item'],\n },\n muiInlineText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Inline Text',\n summary:\n 'One run of text inside a sentence — put several side by side in a paragraph to emphasize a phrase without bre…',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n element: {\n type: 'string',\n enum: ['span', 'strong', 'em', 'mark', 'small'],\n },\n tone: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'disabled',\n 'accent',\n 'accentAlt',\n 'success',\n 'warning',\n 'error',\n ],\n },\n weight: {\n type: 'string',\n enum: ['inherit', 'regular', 'medium', 'semibold', 'bold'],\n },\n decoration: {\n type: 'string',\n enum: ['inherit', 'none', 'underline', 'lineThrough'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n element: 'select',\n tone: 'select',\n weight: 'select',\n decoration: 'select',\n },\n textLimits: {\n children: 2000,\n },\n presets: ['Inline Text', 'Emphasized Text'],\n },\n muiInput: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Input',\n summary: 'A box a visitor types in: text, email, phone, link or number.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n type: {\n type: 'string',\n enum: ['text', 'email', 'tel', 'url', 'number'],\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n multiline: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n placeholder: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n type: 'select',\n placeholder: 'text-field',\n required: 'switch',\n multiline: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n placeholder: 200,\n ariaLabel: 200,\n },\n presets: ['Input'],\n },\n muiLinkBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Link Container',\n summary:\n 'Container that is itself a link — put an icon, a heading and a description inside and the whole box becomes o…',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n newTab: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n redundant: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n screenId: 'screen',\n href: 'url',\n ariaLabel: 'text',\n },\n propFields: {\n screenId: 'screen-select',\n href: 'text-field',\n newTab: 'switch',\n ariaLabel: 'text-field',\n redundant: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Link Container'],\n },\n muiList: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List',\n summary: 'Vertical list of items, optionally under a sticky heading.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiListItem'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n subheader: {\n type: 'string',\n maxLength: 200,\n },\n dense: {\n type: 'boolean',\n },\n disablePadding: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n subheader: 'text',\n },\n propFields: {\n subheader: 'text-field',\n dense: 'switch',\n disablePadding: 'switch',\n },\n textLimits: {\n subheader: 200,\n },\n presets: ['List'],\n },\n muiListItem: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List Item',\n summary: 'One row of a list.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiListItemText'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n divider: {\n type: 'boolean',\n },\n alignItems: {\n type: 'string',\n enum: ['center', 'flex-start'],\n },\n dense: {\n type: 'boolean',\n },\n disableGutters: {\n type: 'boolean',\n },\n disablePadding: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n divider: 'switch',\n alignItems: 'select',\n dense: 'switch',\n disableGutters: 'switch',\n disablePadding: 'switch',\n },\n textLimits: {},\n presets: ['List Item'],\n },\n muiListItemText: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Data Display',\n displayName: 'List Item Text',\n summary: 'The primary and secondary text pair inside a list row.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n primary: {\n type: 'string',\n maxLength: 2000,\n },\n secondary: {\n type: 'string',\n maxLength: 2000,\n },\n secondaryColor: {\n type: 'string',\n enum: ['textSecondary', 'inherit'],\n },\n inset: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n primary: 'text',\n secondary: 'text',\n },\n propFields: {\n primary: 'textarea',\n secondary: 'textarea',\n secondaryColor: 'select',\n inset: 'switch',\n },\n textLimits: {\n primary: 2000,\n secondary: 2000,\n },\n presets: ['List Item Text'],\n },\n muiMegaMenu: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Mega Menu',\n summary:\n 'A nav item that opens a wide panel — columns of links, promos, whatever you build.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n panelWidth: {\n type: 'string',\n enum: ['auto', 'wide', 'full'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n panelWidth: 'select',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Mega Menu'],\n },\n muiNavMenu: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Dropdown Menu',\n summary: 'A nav item that opens a dropdown of links beneath it.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Dropdown Menu'],\n },\n muiPagination: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Pagination',\n summary: 'Page-number picker.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n count: {\n type: 'string',\n maxLength: 200,\n },\n defaultPage: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined'],\n },\n shape: {\n type: 'string',\n enum: ['circular', 'rounded'],\n },\n color: {\n type: 'string',\n enum: ['standard', 'primary', 'secondary', 'tertiary'],\n },\n size: {\n type: 'string',\n enum: ['medium', 'small', 'large'],\n },\n siblingCount: {\n type: 'string',\n maxLength: 200,\n },\n boundaryCount: {\n type: 'string',\n maxLength: 200,\n },\n showFirstButton: {\n type: 'boolean',\n },\n showLastButton: {\n type: 'boolean',\n },\n hidePrevButton: {\n type: 'boolean',\n },\n hideNextButton: {\n type: 'boolean',\n },\n disabled: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n count: 'text',\n defaultPage: 'text',\n siblingCount: 'text',\n boundaryCount: 'text',\n },\n propFields: {\n count: 'text-field',\n defaultPage: 'text-field',\n variant: 'select',\n shape: 'select',\n color: 'select',\n size: 'select',\n siblingCount: 'text-field',\n boundaryCount: 'text-field',\n showFirstButton: 'switch',\n showLastButton: 'switch',\n hidePrevButton: 'switch',\n hideNextButton: 'switch',\n disabled: 'switch',\n },\n textLimits: {\n count: 200,\n defaultPage: 200,\n siblingCount: 200,\n boundaryCount: 200,\n },\n presets: ['Pagination'],\n },\n muiPaper: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Paper',\n summary: 'Themed surface with a shadow or an outline.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n variant: {\n type: 'string',\n enum: ['elevation', 'outlined'],\n },\n elevation: {\n type: 'string',\n maxLength: 200,\n },\n square: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n elevation: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n variant: 'select',\n elevation: 'text-field',\n square: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n elevation: 200,\n },\n presets: ['Paper', 'Paper Outlined'],\n },\n muiRadio: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Radio',\n summary: 'One choice in a Radio Group.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n value: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n value: 'text',\n },\n propFields: {\n value: 'text-field',\n required: 'switch',\n },\n textLimits: {\n value: 200,\n },\n presets: [],\n },\n muiRadioGroup: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Radio Group',\n summary: 'A set of Radio choices; one may be picked.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n row: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n },\n propFields: {\n name: 'text-field',\n row: 'switch',\n },\n textLimits: {\n name: 200,\n },\n presets: ['Radio Group'],\n },\n muiRating: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Rating',\n summary: 'Stars a visitor picks; sends the number chosen.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n max: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n max: 'text',\n },\n propFields: {\n name: 'text-field',\n max: 'text-field',\n },\n textLimits: {\n name: 200,\n max: 200,\n },\n presets: ['Rating'],\n },\n muiScreenLink: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Page Link',\n summary: 'Links to another page by id, so it survives a slug change.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 40,\n },\n screenId: {\n type: 'string',\n },\n href: {\n type: 'string',\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', 'custom'],\n },\n targetName: {\n type: 'string',\n maxLength: 200,\n },\n renderAs: {\n type: 'string',\n enum: ['button', 'link', 'linkButton'],\n },\n color: {\n type: 'string',\n enum: [\n 'inherit',\n 'primary',\n 'secondary',\n 'tertiary',\n 'success',\n 'error',\n 'info',\n 'warning',\n ],\n },\n size: {\n type: 'string',\n enum: ['inherit', 'small', 'medium', 'large'],\n },\n fullWidth: {\n type: 'boolean',\n },\n variant: {\n type: 'string',\n enum: ['text', 'outlined', 'contained'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n screenId: 'screen',\n href: 'url',\n targetName: 'text',\n },\n propFields: {\n children: 'textarea',\n screenId: 'screen-select',\n href: 'text-field',\n target: 'select',\n targetName: 'text-field',\n renderAs: 'select',\n color: 'select',\n size: 'select',\n fullWidth: 'switch',\n variant: 'select',\n },\n textLimits: {\n children: 40,\n targetName: 200,\n },\n presets: ['Page Link'],\n },\n muiSelect: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Select',\n summary: 'A dropdown of Select Options; one may be picked.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiSelectOption'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n placeholder: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n placeholder: 'text-field',\n required: 'switch',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n placeholder: 200,\n ariaLabel: 200,\n },\n presets: ['Select'],\n },\n muiSelectOption: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Select Option',\n summary: 'One choice in a Select.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n value: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n value: 'text',\n },\n propFields: {\n children: 'textarea',\n value: 'text-field',\n },\n textLimits: {\n children: 2000,\n value: 200,\n },\n presets: ['Select Option'],\n },\n muiStack: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Stack',\n summary:\n 'Lays children out in a row or column with even spacing — the workhorse for most layouts.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n direction: {\n type: 'string',\n enum: ['column', 'column-reverse', 'row', 'row-reverse'],\n },\n justifyContent: {\n type: 'string',\n enum: [\n 'flex-start',\n 'center',\n 'flex-end',\n 'space-between',\n 'space-around',\n 'space-evenly',\n ],\n },\n alignItems: {\n type: 'string',\n enum: ['stretch', 'flex-start', 'center', 'flex-end', 'baseline'],\n },\n spacing: {\n type: 'string',\n maxLength: 200,\n },\n useFlexGap: {\n type: 'boolean',\n },\n flexWrap: {\n type: 'string',\n enum: ['nowrap', 'wrap', 'wrap-reverse'],\n },\n divider: {\n type: 'string',\n enum: ['line', 'dashed'],\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n spacing: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n direction: 'select',\n justifyContent: 'select',\n alignItems: 'select',\n spacing: 'text-field',\n useFlexGap: 'switch',\n flexWrap: 'select',\n divider: 'select',\n colorScheme: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n spacing: 200,\n },\n presets: [\n 'Image Gallery',\n 'Testimonials',\n 'Pricing Table',\n 'FAQ',\n 'Announcement Bar',\n 'Hero',\n 'Feature Grid',\n 'Image + Text',\n 'Call to Action',\n 'Dropdown Panel',\n 'Mobile Nav',\n 'Stack Horizontal',\n 'Stack Vertical',\n 'Contact Section',\n 'Product page',\n ],\n },\n muiTabPanel: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Tab Panel',\n summary: 'The content shown under one tab.',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n },\n propFields: {\n label: 'text-field',\n },\n textLimits: {\n label: 200,\n },\n presets: ['Tab Panel'],\n },\n muiTabs: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Tabs',\n summary:\n 'Tab strip whose Tab Panel children each name the tab that reveals them.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['muiTabPanel'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n labels: {\n type: 'string',\n maxLength: 2000,\n },\n tabLink1: {\n type: 'string',\n },\n tabLink2: {\n type: 'string',\n },\n tabLink3: {\n type: 'string',\n },\n tabLink4: {\n type: 'string',\n },\n tabLink5: {\n type: 'string',\n },\n tabLink6: {\n type: 'string',\n },\n tabLink7: {\n type: 'string',\n },\n tabLink8: {\n type: 'string',\n },\n opensOn: {\n type: 'string',\n },\n orientation: {\n type: 'string',\n enum: ['horizontal', 'vertical'],\n },\n variant: {\n type: 'string',\n enum: ['standard', 'scrollable', 'fullWidth'],\n },\n ssrPanels: {\n type: 'boolean',\n },\n centered: {\n type: 'boolean',\n },\n textColor: {\n type: 'string',\n enum: ['primary', 'secondary', 'inherit'],\n },\n indicatorColor: {\n type: 'string',\n enum: ['primary', 'secondary', 'tertiary'],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n labels: 'text',\n tabLink1: 'screen',\n tabLink2: 'screen',\n tabLink3: 'screen',\n tabLink4: 'screen',\n tabLink5: 'screen',\n tabLink6: 'screen',\n tabLink7: 'screen',\n tabLink8: 'screen',\n ariaLabel: 'text',\n },\n propFields: {\n labels: 'textarea',\n tabLink1: 'screen-select',\n tabLink2: 'screen-select',\n tabLink3: 'screen-select',\n tabLink4: 'screen-select',\n tabLink5: 'screen-select',\n tabLink6: 'screen-select',\n tabLink7: 'screen-select',\n tabLink8: 'screen-select',\n opensOn: 'select',\n orientation: 'select',\n variant: 'select',\n ssrPanels: 'switch',\n centered: 'switch',\n textColor: 'select',\n indicatorColor: 'select',\n ariaLabel: 'text-field',\n },\n textLimits: {\n labels: 2000,\n ariaLabel: 200,\n },\n presets: ['Tabs'],\n },\n muiTimePicker: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Time Picker',\n summary: 'A time of day a visitor picks from a clock.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n minutesStep: {\n type: 'string',\n enum: ['1', '5', '10', '15', '30'],\n },\n minTime: {\n type: 'string',\n },\n maxTime: {\n type: 'string',\n },\n clock: {\n type: 'string',\n enum: ['auto', '12', '24'],\n },\n size: {\n type: 'string',\n enum: ['medium', 'small'],\n },\n fullWidth: {\n type: 'boolean',\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n name: 'text',\n ariaLabel: 'text',\n },\n propFields: {\n name: 'text-field',\n required: 'switch',\n minutesStep: 'select',\n minTime: 'time-picker',\n maxTime: 'time-picker',\n clock: 'select',\n size: 'select',\n fullWidth: 'switch',\n ariaLabel: 'text-field',\n },\n textLimits: {\n name: 200,\n ariaLabel: 200,\n },\n presets: ['Time Picker'],\n },\n muiToolbar: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Toolbar Content',\n summary: 'The content row inside an App Bar — brand, links, actions.',\n acceptsChildren: true,\n restrictParent: [\n 'limitedTo',\n {\n components: ['muiAppBar'],\n plugins: ['mui'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n component: {\n type: 'string',\n enum: [\n 'div',\n 'section',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n disableGutters: {\n type: 'boolean',\n },\n variant: {\n type: 'string',\n enum: ['dense', 'regular'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n component: 'select',\n ariaLabel: 'text-field',\n disableGutters: 'switch',\n variant: 'select',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Toolbar Content'],\n },\n muiTypography: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Text',\n displayName: 'Typography',\n summary: \"A block of text in one of the theme's type styles.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n children: {\n type: 'string',\n maxLength: 2000,\n },\n variant: {\n type: 'string',\n enum: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n },\n component: {\n type: 'string',\n enum: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'div', 'span'],\n },\n align: {\n type: 'string',\n enum: ['inherit', 'left', 'center', 'right', 'justify'],\n },\n noWrap: {\n type: 'boolean',\n },\n gutterBottom: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n children: 'text',\n },\n propFields: {\n children: 'textarea',\n variant: 'select',\n component: 'select',\n align: 'select',\n noWrap: 'switch',\n gutterBottom: 'switch',\n },\n textLimits: {\n children: 2000,\n },\n presets: [\n 'Display XL',\n 'Heading 1',\n 'Heading 2',\n 'Heading 3',\n 'Heading 4',\n 'Heading 5',\n 'Heading 6',\n 'Subtitle 1',\n 'Subtitle 2',\n 'Body 1',\n 'Body 2',\n 'Lede',\n 'Overline',\n 'Caption',\n 'Body compact',\n 'Micro',\n ],\n },\n musicPlayer: {\n pluginId: 'music',\n kind: 'element',\n category: 'Media',\n displayName: 'Music player',\n summary:\n 'Plays your own tracks from your media library, one or a playlist.',\n acceptsChildren: true,\n restrictChildren: [\n 'limitedTo',\n {\n components: ['musicTrack'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n src: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n artist: {\n type: 'string',\n maxLength: 200,\n },\n image: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n src: 'media',\n title: 'text',\n artist: 'text',\n image: 'media',\n },\n propFields: {\n heading: 'text-field',\n src: 'text-field',\n title: 'text-field',\n artist: 'text-field',\n image: 'text-field',\n },\n textLimits: {\n heading: 200,\n title: 200,\n artist: 200,\n },\n presets: ['Music player', 'Music playlist'],\n },\n musicTrack: {\n pluginId: 'music',\n kind: 'element',\n category: 'Media',\n displayName: 'Track',\n summary: 'One track of a music player’s playlist.',\n acceptsChildren: false,\n restrictParent: [\n 'limitedTo',\n {\n components: ['musicPlayer'],\n },\n ],\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n artist: {\n type: 'string',\n maxLength: 200,\n },\n image: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n title: 'text',\n artist: 'text',\n image: 'media',\n },\n propFields: {\n src: 'text-field',\n title: 'text-field',\n artist: 'text-field',\n image: 'text-field',\n },\n textLimits: {\n title: 200,\n artist: 200,\n },\n presets: ['Track'],\n },\n 'newsletter-signup': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Newsletter signup',\n summary: 'A consented email capture that writes straight into contacts.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n buttonLabel: {\n type: 'string',\n maxLength: 40,\n },\n successText: {\n type: 'string',\n maxLength: 200,\n },\n listId: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n buttonLabel: 'text',\n successText: 'text',\n listId: 'text',\n },\n propFields: {\n heading: 'text-field',\n buttonLabel: 'text-field',\n successText: 'text-field',\n listId: 'text-field',\n },\n textLimits: {\n heading: 200,\n buttonLabel: 40,\n successText: 200,\n listId: 200,\n },\n presets: ['Newsletter signup'],\n },\n 'order-status': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Order status',\n summary:\n 'A buyer’s order, shipments and tracking, opened from the link in their order emails.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Order status'],\n },\n product: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product',\n summary: 'A single product card with a buy button, priced on the server.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n productId: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n priceUsd: {\n type: 'string',\n maxLength: 200,\n },\n description: {\n type: 'string',\n maxLength: 200,\n },\n imageUrl: {\n type: 'string',\n },\n buyLabel: {\n type: 'string',\n maxLength: 200,\n },\n showCoupon: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n productId: 'text',\n name: 'text',\n priceUsd: 'text',\n description: 'text',\n imageUrl: 'url',\n buyLabel: 'text',\n },\n propFields: {\n productId: 'text-field',\n name: 'text-field',\n priceUsd: 'text-field',\n description: 'text-field',\n imageUrl: 'text-field',\n buyLabel: 'text-field',\n showCoupon: 'checkbox',\n },\n textLimits: {\n productId: 200,\n name: 200,\n priceUsd: 200,\n description: 200,\n buyLabel: 200,\n },\n presets: ['Product'],\n },\n 'product-detail': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product detail',\n summary: \"One product's gallery, options and buy button.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n slug: {\n type: 'string',\n maxLength: 200,\n },\n buyLabel: {\n type: 'string',\n maxLength: 200,\n },\n hideDescription: {\n type: 'boolean',\n },\n showCoupon: {\n type: 'boolean',\n },\n showDetails: {\n type: 'boolean',\n },\n showShipping: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n slug: 'text',\n buyLabel: 'text',\n },\n propFields: {\n slug: 'text-field',\n buyLabel: 'text-field',\n hideDescription: 'checkbox',\n showCoupon: 'checkbox',\n showDetails: 'checkbox',\n showShipping: 'checkbox',\n },\n textLimits: {\n slug: 200,\n buyLabel: 200,\n },\n presets: ['Product detail'],\n },\n 'product-grid': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product grid',\n summary:\n 'Your catalog as a grid, with optional search, category chips, sort and paging.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n source: {\n type: 'string',\n enum: ['all', 'collection', 'category', 'tag'],\n },\n collectionSlug: {\n type: 'string',\n maxLength: 200,\n },\n categorySlug: {\n type: 'string',\n maxLength: 200,\n },\n tag: {\n type: 'string',\n maxLength: 200,\n },\n sort: {\n type: 'string',\n enum: ['name', 'price-asc', 'price-desc', 'newest'],\n },\n columns: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n emptyTitle: {\n type: 'string',\n maxLength: 200,\n },\n emptyActionLabel: {\n type: 'string',\n maxLength: 200,\n },\n emptyActionHref: {\n type: 'string',\n maxLength: 200,\n },\n showFilters: {\n type: 'boolean',\n },\n showSearch: {\n type: 'boolean',\n },\n showCategories: {\n type: 'boolean',\n },\n showSort: {\n type: 'boolean',\n },\n showTypeFilter: {\n type: 'boolean',\n },\n showPriceFilter: {\n type: 'boolean',\n },\n pageSize: {\n type: 'string',\n maxLength: 200,\n },\n cardStyle: {\n type: 'string',\n enum: ['outlined', 'photo'],\n },\n quickAdd: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n collectionSlug: 'text',\n categorySlug: 'text',\n tag: 'text',\n columns: 'text',\n maxItems: 'text',\n emptyText: 'text',\n emptyTitle: 'text',\n emptyActionLabel: 'text',\n emptyActionHref: 'text',\n pageSize: 'text',\n },\n propFields: {\n source: 'select',\n collectionSlug: 'text-field',\n categorySlug: 'text-field',\n tag: 'text-field',\n sort: 'select',\n columns: 'text-field',\n maxItems: 'text-field',\n emptyText: 'text-field',\n emptyTitle: 'text-field',\n emptyActionLabel: 'text-field',\n emptyActionHref: 'text-field',\n showFilters: 'checkbox',\n showSearch: 'checkbox',\n showCategories: 'checkbox',\n showSort: 'checkbox',\n showTypeFilter: 'checkbox',\n showPriceFilter: 'checkbox',\n pageSize: 'text-field',\n cardStyle: 'select',\n quickAdd: 'checkbox',\n },\n textLimits: {\n collectionSlug: 200,\n categorySlug: 200,\n tag: 200,\n columns: 200,\n maxItems: 200,\n emptyText: 200,\n emptyTitle: 200,\n emptyActionLabel: 200,\n emptyActionHref: 200,\n pageSize: 200,\n },\n presets: ['Product grid', 'Shop catalog'],\n },\n 'product-options-field': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Forms',\n displayName: 'Product and options',\n summary:\n 'A form field: the person picks one of your products and its options, such as size and finish.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n label: {\n type: 'string',\n maxLength: 200,\n },\n name: {\n type: 'string',\n maxLength: 200,\n },\n required: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n label: 'text',\n name: 'text',\n },\n propFields: {\n label: 'text-field',\n name: 'text-field',\n required: 'switch',\n },\n textLimits: {\n label: 200,\n name: 200,\n },\n presets: ['Product and options'],\n },\n 'product-reviews': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Product reviews',\n summary:\n 'Approved reviews with verified-buyer badges, and a form for customers who bought the product to add one.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n scope: {\n type: 'string',\n enum: ['product', 'store'],\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n headingLevel: {\n type: 'string',\n enum: ['2', '3', '4'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n scope: 'select',\n maxItems: 'text-field',\n headingLevel: 'select',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Product reviews'],\n },\n 'quote-page': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Quote',\n summary:\n 'A customer’s quote and its Pay button, opened from the pay link a business sends.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Quote'],\n },\n 'related-products': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Related products',\n summary:\n 'An upsell strip — your manual picks, or what people buy together.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n maxItems: {\n type: 'string',\n maxLength: 200,\n },\n layout: {\n type: 'string',\n enum: ['strip', 'grid'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n maxItems: 'text',\n },\n propFields: {\n heading: 'text-field',\n maxItems: 'text-field',\n layout: 'select',\n },\n textLimits: {\n heading: 200,\n maxItems: 200,\n },\n presets: ['Related products'],\n },\n 'reservation-widget': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Reservation widget',\n summary:\n 'A date-range booking with a live quote and a deposit taken up front.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n resourceId: {\n type: 'string',\n maxLength: 200,\n },\n reserveLabel: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n resourceId: 'text',\n reserveLabel: 'text',\n },\n propFields: {\n resourceId: 'text-field',\n reserveLabel: 'text-field',\n },\n textLimits: {\n resourceId: 200,\n reserveLabel: 200,\n },\n presets: ['Reservation widget'],\n },\n 'return-request': {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Return request',\n summary:\n 'The buyer’s return form for one order, opened from their account or the order’s status page.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Return request'],\n },\n reusableInstance: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Surface',\n displayName: 'Reusable Component',\n summary: 'Where a reusable component is placed.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {},\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {},\n textLimits: {},\n presets: [],\n },\n searchBox: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Forms',\n displayName: 'Search Box',\n summary: \"A search field that opens the site's search page.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n placeholder: {\n type: 'string',\n maxLength: 200,\n },\n defaultValue: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n placeholder: 'text',\n defaultValue: 'text',\n },\n propFields: {\n placeholder: 'text-field',\n defaultValue: 'text-field',\n },\n textLimits: {\n placeholder: 200,\n defaultValue: 200,\n },\n presets: ['Search Box'],\n },\n section: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Layout',\n displayName: 'Section',\n summary:\n 'Groups components inside a semantic HTML element (section, article, nav, …).',\n acceptsChildren: true,\n propsSchema: {\n type: 'object',\n properties: {\n element: {\n type: 'string',\n enum: [\n 'section',\n 'div',\n 'article',\n 'aside',\n 'nav',\n 'header',\n 'footer',\n ],\n },\n ariaLabel: {\n type: 'string',\n maxLength: 200,\n },\n colorScheme: {\n type: 'string',\n enum: ['site', 'light', 'dark'],\n },\n underHeader: {\n type: 'boolean',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n ariaLabel: 'text',\n },\n propFields: {\n element: 'select',\n ariaLabel: 'text-field',\n colorScheme: 'select',\n underHeader: 'switch',\n },\n textLimits: {\n ariaLabel: 200,\n },\n presets: ['Footer', 'Section'],\n },\n socialLinks: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Social Links',\n summary: 'A row of icon links to whichever social profiles you fill in.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n twitter: {\n type: 'string',\n maxLength: 200,\n },\n instagram: {\n type: 'string',\n maxLength: 200,\n },\n facebook: {\n type: 'string',\n maxLength: 200,\n },\n linkedin: {\n type: 'string',\n maxLength: 200,\n },\n youtube: {\n type: 'string',\n maxLength: 200,\n },\n github: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n twitter: 'text',\n instagram: 'text',\n facebook: 'text',\n linkedin: 'text',\n youtube: 'text',\n github: 'text',\n },\n propFields: {\n twitter: 'text-field',\n instagram: 'text-field',\n facebook: 'text-field',\n linkedin: 'text-field',\n youtube: 'text-field',\n github: 'text-field',\n },\n textLimits: {\n twitter: 200,\n instagram: 200,\n facebook: 200,\n linkedin: 200,\n youtube: 200,\n github: 200,\n },\n presets: ['Social Links'],\n },\n tableOfContents: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Navigation',\n displayName: 'Table of Contents',\n summary: \"An on-this-page list linking to a Markdown element's headings.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n depth: {\n type: 'string',\n enum: ['3', '2'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n },\n propFields: {\n heading: 'text-field',\n depth: 'select',\n },\n textLimits: {\n heading: 200,\n },\n presets: ['Table of Contents'],\n },\n themeModeSwitcher: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Input',\n displayName: 'Theme mode switcher',\n summary:\n 'Lets visitors override the site theme with light, dark, or device default.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n variant: {\n type: 'string',\n enum: ['icon', 'toggle'],\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {},\n propFields: {\n variant: 'select',\n },\n textLimits: {},\n presets: ['Theme mode switcher'],\n },\n video: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Video',\n summary: 'Plays a video file from your media library or any URL.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n src: {\n type: 'string',\n },\n poster: {\n type: 'string',\n },\n title: {\n type: 'string',\n maxLength: 200,\n },\n description: {\n type: 'string',\n maxLength: 2000,\n },\n uploadDate: {\n type: 'string',\n maxLength: 200,\n },\n durationSeconds: {\n type: 'string',\n maxLength: 200,\n },\n lightbox: {\n type: 'boolean',\n },\n lightboxBackdropColor: {\n type: 'string',\n },\n lightboxBackdropOpacity: {\n type: 'string',\n maxLength: 200,\n },\n lightboxBackdropBlur: {\n type: 'string',\n maxLength: 200,\n },\n lightboxMaxWidth: {\n type: 'string',\n },\n lightboxMaxHeight: {\n type: 'string',\n },\n lightboxPadding: {\n type: 'string',\n },\n lightboxRadius: {\n type: 'string',\n maxLength: 200,\n },\n lightboxCloseStyle: {\n type: 'string',\n enum: ['icon', 'filled', 'text'],\n },\n lightboxClosePosition: {\n type: 'string',\n enum: ['inside-end', 'inside-start', 'outside-end'],\n },\n lightboxCaptionPlacement: {\n type: 'string',\n enum: ['below', 'overlay', 'hidden'],\n },\n lightboxTransition: {\n type: 'string',\n enum: ['fade', 'zoom', 'none'],\n },\n lightboxCloseOnBackdrop: {\n type: 'boolean',\n },\n lightboxCloseOnEscape: {\n type: 'boolean',\n },\n loadPlayer: {\n type: 'boolean',\n },\n preload: {\n type: 'string',\n enum: ['none', 'metadata', 'auto'],\n },\n controls: {\n type: 'boolean',\n },\n autoPlay: {\n type: 'boolean',\n },\n loop: {\n type: 'boolean',\n },\n muted: {\n type: 'boolean',\n },\n playsInline: {\n type: 'boolean',\n },\n captionsSrc: {\n type: 'string',\n maxLength: 200,\n },\n captionsLabel: {\n type: 'string',\n maxLength: 200,\n },\n captionsLang: {\n type: 'string',\n maxLength: 200,\n },\n width: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n src: 'media',\n poster: 'media',\n title: 'text',\n description: 'text',\n uploadDate: 'text',\n durationSeconds: 'text',\n lightboxBackdropOpacity: 'text',\n lightboxBackdropBlur: 'text',\n lightboxRadius: 'text',\n captionsSrc: 'text',\n captionsLabel: 'text',\n captionsLang: 'text',\n },\n propFields: {\n src: 'text-field',\n poster: 'text-field',\n title: 'text-field',\n description: 'textarea',\n uploadDate: 'text-field',\n durationSeconds: 'text-field',\n lightbox: 'switch',\n lightboxBackdropColor: 'color-picker',\n lightboxBackdropOpacity: 'text-field',\n lightboxBackdropBlur: 'text-field',\n lightboxMaxWidth: 'css-dimension',\n lightboxMaxHeight: 'css-dimension',\n lightboxPadding: 'css-dimension',\n lightboxRadius: 'text-field',\n lightboxCloseStyle: 'select',\n lightboxClosePosition: 'select',\n lightboxCaptionPlacement: 'select',\n lightboxTransition: 'select',\n lightboxCloseOnBackdrop: 'switch',\n lightboxCloseOnEscape: 'switch',\n loadPlayer: 'switch',\n preload: 'select',\n controls: 'checkbox',\n autoPlay: 'checkbox',\n loop: 'checkbox',\n muted: 'checkbox',\n playsInline: 'checkbox',\n captionsSrc: 'text-field',\n captionsLabel: 'text-field',\n captionsLang: 'text-field',\n width: 'css-dimension',\n height: 'css-dimension',\n },\n textLimits: {\n title: 200,\n description: 2000,\n uploadDate: 200,\n durationSeconds: 200,\n lightboxBackdropOpacity: 200,\n lightboxBackdropBlur: 200,\n lightboxRadius: 200,\n captionsSrc: 200,\n captionsLabel: 200,\n captionsLang: 200,\n },\n presets: ['Video'],\n },\n videoEmbed: {\n pluginId: 'mui',\n kind: 'element',\n category: 'Media',\n displayName: 'Video',\n summary: \"Embeds a YouTube or Vimeo player from the video's URL.\",\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n url: {\n type: 'string',\n },\n height: {\n type: 'string',\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n url: 'url',\n },\n propFields: {\n url: 'text-field',\n height: 'css-dimension',\n },\n textLimits: {},\n presets: ['Video'],\n },\n wishlist: {\n pluginId: 'commerce',\n kind: 'element',\n category: 'Commerce',\n displayName: 'Wishlist',\n summary: 'Products a visitor saved, linking back to their pages.',\n acceptsChildren: false,\n propsSchema: {\n type: 'object',\n properties: {\n heading: {\n type: 'string',\n maxLength: 200,\n },\n emptyText: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n heading: 'text',\n emptyText: 'text',\n },\n propFields: {\n heading: 'text-field',\n emptyText: 'text-field',\n },\n textLimits: {\n heading: 200,\n emptyText: 200,\n },\n presets: ['Wishlist'],\n },\n}\n\n/** What every node can do, whatever its componentId. */\nexport const AI_NODE_CAPABILITIES: Record<string, AiNodeCapability> = {\n repeat: {\n id: 'repeat',\n displayName: 'Repeat',\n summary: 'Renders an element once per record of the data it repeats over.',\n propsSchema: {\n type: 'object',\n properties: {\n repeatSelf: {\n type: 'string',\n enum: ['false', 'true'],\n },\n repeatLimit: {\n type: 'string',\n maxLength: 200,\n },\n repeatFilter: {\n type: 'string',\n maxLength: 200,\n },\n repeatSort: {\n type: 'string',\n maxLength: 200,\n },\n },\n required: [],\n additionalProperties: false,\n },\n propRoles: {\n repeatLimit: 'text',\n repeatFilter: 'text',\n repeatSort: 'text',\n },\n propFields: {\n repeatSelf: 'select',\n repeatLimit: 'text-field',\n repeatFilter: 'text-field',\n repeatSort: 'text-field',\n },\n textLimits: {\n repeatLimit: 200,\n repeatFilter: 200,\n repeatSort: 200,\n },\n childrenOnlyProps: ['repeatSelf'],\n omittedProps: [],\n },\n}\n\n/** Attribute field kinds this palette declares nowhere, and so turned away. */\nexport const AI_UNDECLARED_FIELD_KINDS: readonly string[] = [\n 'category-select',\n 'collection-select',\n 'dataset-field-select',\n 'dataset-select',\n 'form-select',\n 'node-select',\n 'plugin-select',\n 'plugin-settings',\n 'product-select',\n]\n\n/** The root and the allowed component ids of each surface. */\nexport const AI_SURFACES: Record<AiSurface, AiSurfaceDefinition> = {\n screen: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'image',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n codeOnly: [\n 'icon',\n 'product-grid',\n 'product-reviews',\n 'newsletter-signup',\n 'eventList',\n 'muiTabs',\n 'muiTabPanel',\n 'muiLinkBox',\n 'muiPaper',\n ],\n },\n email: {\n root: 'div',\n allow: [\n 'emailButton',\n 'emailDivider',\n 'emailImage',\n 'emailProduct',\n 'emailSection',\n 'emailSpacer',\n 'emailText',\n ],\n },\n form: {\n root: 'form',\n allow: [\n 'form',\n 'muiButton',\n 'muiCheckbox',\n 'muiDatePicker',\n 'muiFormControl',\n 'muiFormControlLabel',\n 'muiFormHelperText',\n 'muiFormLabel',\n 'muiInput',\n 'muiRadio',\n 'muiRadioGroup',\n 'muiRating',\n 'muiSelect',\n 'muiSelectOption',\n 'muiTimePicker',\n ],\n },\n layout: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'image',\n 'layoutSlot',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n codeOnly: [\n 'icon',\n 'muiDrawer',\n 'muiDrawerToggle',\n 'cart',\n 'muiNavMenu',\n 'muiMegaMenu',\n 'muiLinkBox',\n ],\n },\n component: {\n root: 'div',\n allow: [\n 'collectionCategories',\n 'collectionEntries',\n 'collectionEntryAuthor',\n 'collectionEntryBody',\n 'collectionEntryMeta',\n 'collectionRelated',\n 'collectionSearch',\n 'collectionShare',\n 'contentAuthorProfile',\n 'dataTable',\n 'form',\n 'formField',\n 'icon',\n 'image',\n 'muiAccordion',\n 'muiAccordionDetails',\n 'muiAccordionSummary',\n 'muiAppBar',\n 'muiBox',\n 'muiBreadcrumbs',\n 'muiButton',\n 'muiCard',\n 'muiCardActions',\n 'muiCardContent',\n 'muiCardHeader',\n 'muiContainer',\n 'muiGrid',\n 'muiImageList',\n 'muiImageListItem',\n 'muiList',\n 'muiListItem',\n 'muiListItemText',\n 'muiScreenLink',\n 'muiStack',\n 'muiToolbar',\n 'muiTypography',\n 'musicPlayer',\n 'musicTrack',\n 'searchBox',\n 'section',\n 'socialLinks',\n 'video',\n 'videoEmbed',\n ],\n },\n}\n\n/** Theme vocabulary an `sx` value may name. */\nexport const AI_SX_TOKENS: AiSxTokens = {\n palette: [\n 'action.active',\n 'action.disabled',\n 'action.disabledBackground',\n 'action.focus',\n 'action.hover',\n 'action.selected',\n 'background.default',\n 'background.paper',\n 'common.black',\n 'common.white',\n 'divider',\n 'error.contrastText',\n 'error.dark',\n 'error.hover',\n 'error.hoverText',\n 'error.light',\n 'error.main',\n 'grey.100',\n 'grey.200',\n 'grey.300',\n 'grey.400',\n 'grey.50',\n 'grey.500',\n 'grey.600',\n 'grey.700',\n 'grey.800',\n 'grey.900',\n 'grey.A100',\n 'grey.A200',\n 'grey.A400',\n 'grey.A700',\n 'info.contrastText',\n 'info.dark',\n 'info.hover',\n 'info.hoverText',\n 'info.light',\n 'info.main',\n 'inputOutline',\n 'primary.contrastText',\n 'primary.dark',\n 'primary.hover',\n 'primary.hoverText',\n 'primary.light',\n 'primary.main',\n 'secondary.contrastText',\n 'secondary.dark',\n 'secondary.hover',\n 'secondary.hoverText',\n 'secondary.light',\n 'secondary.main',\n 'success.contrastText',\n 'success.dark',\n 'success.hover',\n 'success.hoverText',\n 'success.light',\n 'success.main',\n 'surface.contrastText',\n 'surface.dark',\n 'surface.hover',\n 'surface.light',\n 'surface.main',\n 'svgBackground.active',\n 'svgBackground.focus',\n 'svgBackground.hover',\n 'svgBackground.main',\n 'svgFilled.active',\n 'svgFilled.focus',\n 'svgFilled.hover',\n 'svgFilled.main',\n 'svgStroke.active',\n 'svgStroke.focus',\n 'svgStroke.hover',\n 'svgStroke.main',\n 'tertiary.contrastText',\n 'tertiary.dark',\n 'tertiary.hover',\n 'tertiary.hoverText',\n 'tertiary.light',\n 'tertiary.main',\n 'text.disabled',\n 'text.primary',\n 'text.secondary',\n 'tint.primary',\n 'tint.secondary',\n 'tint.tertiary',\n 'warning.contrastText',\n 'warning.dark',\n 'warning.hover',\n 'warning.hoverText',\n 'warning.light',\n 'warning.main',\n ],\n breakpoints: ['xs', 'sm', 'md', 'lg', 'xl'],\n typographyVariants: [\n 'displayXl',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'subtitle1',\n 'subtitle2',\n 'body1',\n 'body2',\n 'lede',\n 'overline',\n 'caption',\n 'bodyCompact',\n 'micro',\n ],\n}\n\n/** Props only the platform's code sets (AGL-3660): stored, never described to a model. */\nexport const AI_CODE_ONLY_PROPS: Readonly<Record<string, readonly string[]>> = {\n section: ['underHeader'],\n muiAppBar: ['overHero'],\n dataTable: ['rows'],\n}\n\n/** The prompt catalog of each surface. */\nexport const AI_PALETTE_CATALOG: Record<AiSurface, string> = {\n screen:\n \"Surface: screen. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n email:\n 'Surface: email. Root: the document wrapper (componentId \"div\", id \"_@_\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- emailButton: A call-to-action button that survives every mail client. — leaf — children=text≤40, href=url, backgroundColor=string, color=string, align=left|center|right\\n- emailDivider: A horizontal rule between email sections. — leaf — color=string\\n- emailImage: An email-safe image, capped at 600px wide, optionally linked. — leaf — src=media, alt=text≤200, width=text≤200, href=url, align=left|center|right\\n- emailProduct: A product card resolved at send time, so it never goes stale. — leaf — buttonLabel=text≤40\\n- emailSection: An email-safe band with its own background color and padding. — holds any — backgroundColor=string, padding=text≤200, align=left|center|right\\n- emailSpacer: Fixed vertical whitespace between email blocks. — leaf — height=text≤200\\n- emailText: A paragraph of email copy in one of the preset styles. — leaf — children=text≤2000, variant=heading|subheading|body|caption|eyebrow|details|…, color=string, align=left|center|right\\nNamed blocks to imitate: Header (emailSection); Footer (emailSection).',\n form: 'Surface: form. Root: one \"form\" node.\\nElements (id (name): purpose — children — props; * = required):\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCheckbox (Checkbox): A tick box. — leaf — name=text≤200, value=text≤200, required=boolean\\n- muiDatePicker (Date Picker): A date a visitor picks from a calendar. — leaf — name=text≤200, minDate=string, maxDate=string, size=medium|small, ariaLabel=text≤200\\n- muiFormControl (Form Control): One field’s frame: holds a Form Label, an input and Helper Text, and links the label to the input. — holds any — fullWidth=boolean, required=boolean\\n- muiFormControlLabel (Choice Label): The words beside a Checkbox or Radio placed inside it; clicking them ticks it. — holds only muiCheckbox|muiRadio — label=text≤200\\n- muiFormHelperText (Helper Text): A line of guidance under a field. — leaf — children=text≤2000\\n- muiFormLabel (Form Label): The words that name a field, above its input. — leaf — children=text≤2000\\n- muiInput (Input): A box a visitor types in: text, email, phone, link or number. — leaf — name=text≤200, type=text|email|tel|url|number, placeholder=text≤200, size=medium|small, ariaLabel=text≤200\\n- muiRadio (Radio): One choice in a Radio Group. — leaf — value=text≤200, required=boolean\\n- muiRadioGroup (Radio Group): A set of Radio choices; one may be picked. — holds any — name=text≤200, row=boolean\\n- muiRating (Rating): Stars a visitor picks; sends the number chosen. — leaf — name=text≤200, max=text≤200\\n- muiSelect (Select): A dropdown of Select Options; one may be picked. — holds only muiSelectOption — name=text≤200, placeholder=text≤200, required=boolean, size=medium|small, ariaLabel=text≤200\\n- muiSelectOption (Select Option): One choice in a Select. — leaf — children=text≤2000, value=text≤200\\n- muiTimePicker (Time Picker): A time of day a visitor picks from a clock. — leaf — name=text≤200, minutesStep=1|5|10|15|30, minTime=string, clock=auto|12|24, size=medium|small\\nNamed blocks to imitate: Select (muiSelect); Radio Group (muiRadioGroup); Radio (muiFormControlLabel); Choice Label (muiFormControlLabel); Text field (muiFormControl); Email field (muiFormControl); Message field (muiFormControl); Dropdown field (muiFormControl); Radio choice field (muiFormControl); Checkbox (muiFormControlLabel); Rating field (muiFormControl); Date field (muiFormControl); Time field (muiFormControl); Contact Form (form); Marketing consent (muiFormControl).',\n layout:\n \"Surface: layout. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- layoutSlot: Marks where each bound page's content renders inside this layout. — leaf — caption=text≤200, component=main|div|section|article\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n component:\n \"Surface: component. Root: the document wrapper (componentId \\\"div\\\", id \\\"_@_\\\"); every other node carries an allowed componentId.\\nElements (id (name): purpose — children — props; * = required):\\n- collectionCategories (Category Pills): A pill per collection category, each filtering the listing. — leaf — collectionSlug=text≤200, allLabel=text≤200\\n- collectionEntries: Repeats its children once per entry in a content collection. — holds any — collectionSlug=text≤200, entriesLimit=text≤200, filterCategory=text≤200, filterTag=text≤200, searchMode=filter|suggest\\n- collectionEntryAuthor (Entry Author): The author card for an entry — portrait, byline and bio. — leaf — name=text≤200, bio=text≤2000, image=media, pageUrl=url, url=url\\n- collectionEntryBody (Entry Body): The current entry's markdown body, on an entry template. — leaf — markdown=text≤200\\n- collectionEntryMeta (Entry Meta): The byline row for an entry — author, date, category and tags. — leaf — date=text≤200, dateFormat=default|monthYear|mediumDate|longDate|iso, author=text≤200, category=text≤200, authorPageUrl=url\\n- collectionRelated (Related Posts): Other entries sharing this one's category or tags. — leaf — heading=text≤200, layout=list|cards, headingVariant=displayXl|h1|h2|h3|h4|h5|…, titleVariant=displayXl|h1|h2|h3|h4|h5|…, dateFormat=default|monthYear|mediumDate|longDate|iso\\n- collectionSearch: A search box for a content collection, with a suggestions dropdown. — leaf — collectionSlug=text≤200, searchPlaceholder=text≤200\\n- collectionShare (Share Bar): Share buttons for the current page, plus a copy link. — leaf — heading=text≤200\\n- contentAuthorProfile (Author Profile): Who an author page is about — portrait, name, role, bio and links. — leaf — name=text≤200, bio=text≤2000, image=media, jobTitle=text≤200, url=url\\n- dataTable (Table): A grid of rows and columns — a feature matrix, a spec sheet, a comparison. — leaf — headerRow=boolean, emphasizeColumn=text≤200\\n- form: Collects its Form Fields and sends the answers to you, or into a dataset. — holds any — formName=text≤200, datasetName=text≤200, afterSubmit=message|redirect|reveal, redirectScreenId=screen, redirectUrl=url\\n- formField: One input inside a form — text, select, radio, checkbox or rating. — leaf — fieldName=text≤200, label=text≤200, placeholder=text≤200, fieldType=text|email|textarea|select|radio|checkbox|…, options=text≤2000\\n- icon: A single icon from the library, at the size and color you pick. — leaf — iconId=string, size=text≤200, color=text≤200\\n- image: A picture from your media library or any URL, with fit, size and an optional link. — leaf — src=media, objectFit=cover|contain|fill|none|scale-down, lightbox=boolean, screenId=screen, href=url\\n- muiAccordion (Accordion): Header that expands to reveal its details — FAQs, long forms, anything progressive. — holds only muiAccordionSummary|muiAccordionDetails — defaultExpanded=boolean, disableGutters=boolean, disabled=boolean\\n- muiAccordionDetails (Accordion Details): The region an accordion reveals when expanded. — holds any — no props\\n- muiAccordionSummary (Accordion Summary): The clickable header row of an accordion. — leaf — children=text≤2000, screenId=screen\\n- muiAppBar (App Bar): The bar across the top of the site — put a Toolbar Content inside it. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, color=default|inherit|transparent|primary|secondary|tertiary, position=absolute|fixed|relative|static|sticky, shrinkOnScroll=boolean\\n- muiBox (Box): Generic container with no styling of its own — style it from the styles panel. — holds any — component=div|span|p|figure|figcaption|blockquote|…, colorScheme=site|light|dark\\n- muiBreadcrumbs (Breadcrumbs): Trail showing where a page sits. — holds any — separator=text≤200, maxItems=text≤200, itemsBeforeCollapse=text≤200, itemsAfterCollapse=text≤200, expandText=text≤200\\n- muiButton (Button): A button — or a link styled as one, if you point it at a page or URL. — leaf — children=text≤40, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large, type=button|submit|reset, variant=text|outlined|contained\\n- muiCard (Card): Surface that groups a header, content and actions about one subject. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, variant=elevation|outlined, elevation=text≤200\\n- muiCardActions (Card Actions): The button row at the bottom of a card. — holds any — disableSpacing=boolean\\n- muiCardContent (Card Content): The padded body region of a card. — holds any — no props\\n- muiCardHeader (Card Header): The title and subheader at the top of a card. — leaf — title=text≤200, subheader=text≤200\\n- muiContainer (Container): Centers your page content and caps how wide it gets. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, fixed=boolean, maxWidth=xs|sm|md|lg|xl, colorScheme=site|light|dark\\n- muiGrid (Grid): Responsive 12-column layout. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, direction=row|row-reverse, wrap=wrap|nowrap|wrap-reverse, colorScheme=site|light|dark\\n- muiImageList (Image List): Dense grid of images — standard, quilted, masonry or woven. — holds only muiImageListItem — variant=standard|quilted|masonry|woven, cols=text≤200, gap=text≤200, rowHeight=text≤200, lightbox=boolean\\n- muiImageListItem (Image List Item): One tile of an image list, with an optional caption bar. — holds any — title=text≤200, subtitle=text≤200, barPosition=bottom|top|below, cols=text≤200, rows=text≤200\\n- muiList (List): Vertical list of items, optionally under a sticky heading. — holds only muiListItem — subheader=text≤200, dense=boolean, disablePadding=boolean\\n- muiListItem (List Item): One row of a list. — holds only muiListItemText — divider=boolean, alignItems=center|flex-start, dense=boolean, disableGutters=boolean, disablePadding=boolean\\n- muiListItemText (List Item Text): The primary and secondary text pair inside a list row. — leaf — primary=text≤2000, secondary=text≤2000, secondaryColor=textSecondary|inherit, inset=boolean\\n- muiScreenLink (Page Link): Links to another page by id, so it survives a slug change. — leaf — children=text≤40, target=_self|_blank|custom, renderAs=button|link|linkButton, color=inherit|primary|secondary|tertiary|success|error|…, size=inherit|small|medium|large\\n- muiStack (Stack): Lays children out in a row or column with even spacing — the workhorse for most layouts. — holds any — component=div|section|article|aside|nav|header|…, direction=column|column-reverse|row|row-reverse, justifyContent=flex-start|center|flex-end|space-between|space-around|space-evenly, alignItems=stretch|flex-start|center|flex-end|baseline, flexWrap=nowrap|wrap|wrap-reverse\\n- muiToolbar (Toolbar Content): The content row inside an App Bar — brand, links, actions. — holds any — component=div|section|article|aside|nav|header|…, ariaLabel=text≤200, disableGutters=boolean, variant=dense|regular\\n- muiTypography (Typography): A block of text in one of the theme's type styles. — leaf — children=text≤2000, variant=displayXl|h1|h2|h3|h4|h5|…, component=h1|h2|h3|h4|h5|h6|…, align=inherit|left|center|right|justify, noWrap=boolean\\n- searchBox: A search field that opens the site's search page. — leaf — placeholder=text≤200, defaultValue=text≤200\\n- section: Groups components inside a semantic HTML element (section, article, nav, …). — holds any — element=section|div|article|aside|nav|header|…, ariaLabel=text≤200, colorScheme=site|light|dark\\n- socialLinks: A row of icon links to whichever social profiles you fill in. — leaf — twitter=text≤200, instagram=text≤200, facebook=text≤200, linkedin=text≤200, youtube=text≤200\\n- video: Plays a video file from your media library or any URL. — leaf — src=media, poster=media\\n- videoEmbed (Video): Embeds a YouTube or Vimeo player from the video's URL. — leaf — url=url\\nNamed blocks to imitate: App Bar (muiAppBar); List (muiList); List Item (muiListItem); Image Gallery (muiStack); Testimonials (muiStack); Pricing Table (muiStack); FAQ (muiStack); Announcement Bar (muiStack); Nav Bar (muiAppBar); Hero (muiStack); Feature Grid (muiStack); Image + Text (muiStack); Call to Action (muiStack); Footer (section); Collection Entries (collectionEntries); Dropdown Panel (muiStack); Grid (muiGrid); Grid Cell (muiGrid); Card (muiCard); Card Outlined (muiCard); Accordion (muiAccordion); Image List (muiImageList); Image List Masonry (muiImageList); Image List Item (muiImageListItem); Breadcrumbs (muiBreadcrumbs).\",\n}\n"],"names":["AI_PALETTE","booking","pluginId","kind","category","displayName","summary","acceptsChildren","propsSchema","type","properties","heading","maxLength","successMessage","required","additionalProperties","propRoles","propFields","textLimits","presets","cart","variant","enum","checkoutLabel","showCoupon","emptyText","collectionCategories","collectionSlug","allLabel","collectionEntries","entriesLimit","filterCategory","filterTag","perPage","page","firstPageOnly","search","searchMode","searchPlaceholder","spacing","collectionEntryAuthor","name","bio","image","pageUrl","url","showLinks","showBio","showAvatar","collectionEntryBody","markdown","collectionEntryMeta","date","dateFormat","author","tags","avatarImage","showDate","showCategory","showTags","authorPageUrl","linkAuthor","showAuthor","collectionRelated","limit","layout","columns","showCover","headingVariant","titleVariant","showExcerpt","collectionSearch","collectionShare","contentAuthorProfile","jobTitle","worksFor","showRole","html","css","embedMode","embedHeight","signedOutHeading","dataTable","rows","headerRow","emphasizeColumn","div","component","emailButton","children","href","backgroundColor","color","align","emailDivider","emailHtml","emailImage","src","alt","width","emailProduct","buttonLabel","emailRichtext","emailSection","padding","emailSpacer","height","emailText","eventList","mode","maxItems","form","formName","datasetName","submitLabel","afterSubmit","redirectScreenId","redirectUrl","formField","fieldName","label","placeholder","fieldType","options","formFileUpload","helperText","kinds","maxFiles","gate","teaserText","ctaLabel","ctaHref","videoIndex","lockedText","icon","iconId","size","decorative","title","objectFit","sizes","loading","lightbox","lightboxCaption","lightboxGallery","lightboxThumbnails","lightboxBackdropColor","lightboxBackdropOpacity","lightboxBackdropBlur","lightboxMaxWidth","lightboxMaxHeight","lightboxPadding","lightboxRadius","lightboxCloseStyle","lightboxClosePosition","lightboxCaptionPlacement","lightboxTransition","lightboxCloseOnBackdrop","lightboxCloseOnEscape","screenId","languageSwitcher","uppercase","layoutSlot","restrictChildren","components","caption","content","marketplacePlugin","signinPath","signupPath","recoveryPath","continueFallback","muiAccordion","defaultExpanded","disableGutters","disabled","muiAccordionDetails","muiAccordionSummary","muiAppBar","ariaLabel","position","shrinkOnScroll","hideOnScroll","overHero","muiBox","colorScheme","muiBreadcrumbs","separator","itemsBeforeCollapse","itemsAfterCollapse","expandText","muiButton","fullWidth","target","targetName","renderAs","startIconId","endIconId","muiCard","elevation","muiCardActions","disableSpacing","muiCardContent","muiCardHeader","subheader","muiCheckbox","value","muiContainer","fixed","maxWidth","muiDatePicker","disablePast","disableFuture","minDate","maxDate","defaultToday","muiDrawer","anchor","muiDrawerToggle","muiFormControl","muiFormControlLabel","muiFormHelperText","muiFormLabel","muiGrid","container","offset","fillLastRow","rowSpacing","columnSpacing","direction","wrap","muiImageList","cols","gap","rowHeight","muiImageListItem","subtitle","barPosition","muiInlineText","element","tone","weight","decoration","muiInput","multiline","muiLinkBox","newTab","redundant","muiList","dense","disablePadding","muiListItem","divider","alignItems","muiListItemText","primary","secondary","secondaryColor","inset","muiMegaMenu","panelWidth","muiNavMenu","muiPagination","count","defaultPage","shape","siblingCount","boundaryCount","showFirstButton","showLastButton","hidePrevButton","hideNextButton","muiPaper","square","muiRadio","muiRadioGroup","row","muiRating","max","muiScreenLink","muiSelect","muiSelectOption","muiStack","justifyContent","useFlexGap","flexWrap","muiTabPanel","muiTabs","labels","tabLink1","tabLink2","tabLink3","tabLink4","tabLink5","tabLink6","tabLink7","tabLink8","opensOn","orientation","ssrPanels","centered","textColor","indicatorColor","muiTimePicker","minutesStep","minTime","maxTime","clock","muiToolbar","restrictParent","plugins","muiTypography","noWrap","gutterBottom","musicPlayer","artist","musicTrack","successText","listId","product","productId","priceUsd","description","imageUrl","buyLabel","slug","hideDescription","showDetails","showShipping","source","categorySlug","tag","sort","emptyTitle","emptyActionLabel","emptyActionHref","showFilters","showSearch","showCategories","showSort","showTypeFilter","showPriceFilter","pageSize","cardStyle","quickAdd","scope","headingLevel","resourceId","reserveLabel","reusableInstance","searchBox","defaultValue","section","underHeader","socialLinks","twitter","instagram","facebook","linkedin","youtube","github","tableOfContents","depth","themeModeSwitcher","video","poster","uploadDate","durationSeconds","loadPlayer","preload","controls","autoPlay","loop","muted","playsInline","captionsSrc","captionsLabel","captionsLang","videoEmbed","wishlist","AI_NODE_CAPABILITIES","repeat","id","repeatSelf","repeatLimit","repeatFilter","repeatSort","childrenOnlyProps","omittedProps","AI_UNDECLARED_FIELD_KINDS","AI_SURFACES","screen","root","allow","codeOnly","email","AI_SX_TOKENS","palette","breakpoints","typographyVariants","AI_CODE_ONLY_PROPS","AI_PALETTE_CATALOG"],"mappings":"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d3D,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACA+C,cAAc;oBACZ5D,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAmC,UAAU;oBACRhD,MAAM;gBACR;gBACA4C,YAAY;oBACV5C,MAAM;oBACNa,MAAM;wBAAC;wBAAW;wBAAa;wBAAc;wBAAY;qBAAM;gBACjE;gBACAoC,cAAc;oBACZjD,MAAM;gBACR;gBACA6D,aAAa;oBACX7D,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTL,SAAS;YACTqD,OAAO;YACPE,SAAS;QACX;QACAjD,YAAY;YACVN,SAAS;YACTqD,OAAO;YACPC,QAAQ;YACRC,SAAS;YACTC,WAAW;YACXC,gBAAgB;YAChBC,cAAc;YACdZ,UAAU;YACVJ,YAAY;YACZK,cAAc;YACdY,aAAa;QACf;QACApD,YAAY;YACVP,SAAS;YACTqD,OAAO;YACPE,SAAS;QACX;QACA/C,SAAS;YAAC;SAAgB;IAC5B;IACAoD,kBAAkB;QAChBrE,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACViB,gBAAgB;oBACdlB,MAAM;oBACNG,WAAW;gBACb;gBACA0B,mBAAmB;oBACjB7B,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTW,gBAAgB;YAChBW,mBAAmB;QACrB;QACArB,YAAY;YACVU,gBAAgB;YAChBW,mBAAmB;QACrB;QACApB,YAAY;YACVS,gBAAgB;YAChBW,mBAAmB;QACrB;QACAnB,SAAS;YAAC;SAAoB;IAChC;IACAqD,iBAAiB;QACftE,U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kB;oBAChB3G,MAAM;gBACR;gBACA4G,aAAa;oBACX5G,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTgG,UAAU;YACVC,aAAa;YACbC,aAAa;YACbrG,gBAAgB;YAChBuG,kBAAkB;YAClBC,aAAa;QACf;QACApG,YAAY;YACV+F,UAAU;YACVC,aAAa;YACbC,aAAa;YACbrG,gBAAgB;YAChBsG,aAAa;YACbC,kBAAkB;YAClBC,aAAa;QACf;QACAnG,YAAY;YACV8F,UAAU;YACVC,aAAa;YACbC,aAAa;YACbrG,gBAAgB;QAClB;QACAM,SAAS;YAAC;SAAe;IAC3B;IACAmG,WAAW;QACTpH,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV6G,WAAW;oBACT9G,MAAM;oBACNG,WAAW;gBACb;gBACA4G,OAAO;oBACL/G,MAAM;oBACNG,WAAW;gBACb;gBACA6G,aAAa;oBACXhH,MAAM;oBACNG,WAAW;gBACb;gBACA8G,WAAW;oBACTjH,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAqG,SAAS;oBACPlH,MAAM;oBACNG,WAAW;gBACb;gBACAE,UAAU;oBACRL,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTuG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbE,SAAS;QACX;QACA1G,YAAY;YACVsG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbC,WAAW;YACXC,SAAS;YACT7G,UAAU;QACZ;QACAI,YAAY;YACVqG,WAAW;YACXC,OAAO;YACPC,aAAa;YACbE,SAAS;QACX;QACAxG,SAAS,EAAE;IACb;IACAyG,gBAAgB;QACd1H,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV8G,OAAO;oBACL/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BAAQ;qBAAS;gBAC1B;gBACAmK,aAAa;oBACXhL,MAAM;oBACNa,MAAM;wBAAC;wBAAQ;wBAAS;qBAAO;gBACjC;YACF;YACAR,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTmK,WAAW;YACX5I,SAAS;QACX;QACAtB,YAAY;YACVsE,WAAW;YACX4F,WAAW;YACXkD,WAAW;YACXsD,gBAAgB;YAChB9B,YAAY;YACZtN,SAAS;YACTqP,YAAY;YACZC,UAAU;YACVjC,SAAS;YACTnE,aAAa;QACf;QACAvK,YAAY;YACViK,WAAW;YACX5I,SAAS;QACX;QACApB,SAAS;YACP;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA2Q,aAAa;QACX5R,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SAAS;QACTC,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV8G,OAAO;oBACL/G,MAAM;oBACNG,WAAW;gBACb;YACF;YACAE,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTwG,OAAO;QACT;QACAvG,YAAY;YACVuG,OAAO;QACT;QACAtG,YAAY;YACVsG,OAAO;QACT;QACArG,SAAS;YAAC;SAAY;IACxB;IACA4Q,SAAS;QACP7R,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjB4J,kBAAkB;YAChB;YACA;gBACEC,YAAY;oBAAC;iBAAc;YAC7B;SACD;QACD5J,aAAa;YACXC,MAAM;YACNC,YAAY;gBACVsR,QAAQ;oBACNvR,MAAM;oBACNG,WAAW;gBACb;gBACAqR,UAAU;oBACRxR,MAAM;gBACR;gBACAyR,UAAU;oBACRzR,MAAM;gBACR;gBACA0R,UAAU;oBACR1R,MAAM;gBACR;gBACA2R,UAAU;oBACR3R,MAAM;gBACR;gBACA4R,UAAU;oBACR5R,MAAM;gBACR;gBACA6R,UAAU;oBACR7R,MAAM;gBACR;gBACA8R,UAAU;oBACR9R,MAAM;gBACR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C,iBAAiB;QACjBC,aAAa;YACXC,MAAM;YACNC,YAAY;gBACV+E,UAAU;oBACRhF,MAAM;oBACNG,WAAW;gBACb;gBACAS,SAAS;oBACPZ,MAAM;oBACNa,MAAM;wBACJ;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;wBACA;qBACD;gBACH;gBACAiE,WAAW;oBACT9E,MAAM;oBACNa,MAAM;wBAAC;wBAAM;wBAAM;wBAAM;wBAAM;wBAAM;wBAAM;wBAAK;wBAAO;qBAAO;gBAChE;gBACAuE,OAAO;oBACLpF,MAAM;oBACNa,MAAM;wBAAC;wBAAW;wBAAQ;wBAAU;wBAAS;qBAAU;gBACzD;gBACAkS,QAAQ;oBACN/S,MAAM;gBACR;gBACAgT,cAAc;oBACZhT,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTyE,UAAU;QACZ;QACAxE,YAAY;YACVwE,UAAU;YACVpE,SAAS;YACTkE,WAAW;YACXM,OAAO;YACP2N,QAAQ;YACRC,cAAc;QAChB;QACAvS,YAAY;YACVuE,UAAU;QACZ;QACAtE,SAAS;YACP;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAuS,aAAa;QACXxT,UAAU;QACVC,MAAM;QACNC,UAAU;QACVC,aAAa;QACbC,SACE;QACFC,iBAAiB;QACjB4J,kBAAkB;YAChB;YACA;gBACEC,YAAY;oBAAC;iBAAa;YAC5B;SACD;QACD5J,aAAa;YACXC,MAAM;YACNC,YAAY;gBACVC,SAAS;oBACPF,MAAM;oBACNG,WAAW;gBACb;gBACAqF,KAAK;oBACHxF,MAAM;gBACR;gBACAiI,OAAO;oBACLjI,MAAM;oBACNG,WAAW;gBACb;gBACA+S,QAAQ;oBACNlT,MAAM;oBACNG,WAAW;gBACb;gBACA+B,OAAO;oBACLlC,MAAM;gBACR;YACF;YACAK,UAAU,EAAE;YACZC,sBAAsB;QACxB;QACAC,WAAW;YACTL,SAAS;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IACA;IACA;IACA;CACD,CAAA;AAED,4DAA4D,GAC5D,OAAO,MAAMC,cAAsD;IACjEC,QAAQ;QACNC,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QACDC,UAAU;YACR;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAC,OAAO;QACLH,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACA1R,MAAM;QACJyR,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAxU,QAAQ;QACNuU,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QACDC,UAAU;YACR;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;IACAnT,WAAW;QACTiT,MAAM;QACNC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;IACH;AACF,EAAC;AAED,6CAA6C,GAC7C,OAAO,MAAMG,eAA2B;IACtCC,SAAS;QACP;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IACDC,aAAa;QAAC;QAAM;QAAM;QAAM;QAAM;KAAK;IAC3CC,oBAAoB;QAClB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;AACH,EAAC;AAED,wFAAwF,GACxF,OAAO,MAAMC,qBAAkE;IAC7EhD,SAAS;QAAC;KAAc;IACxB9K,WAAW;QAAC;KAAW;IACvBhG,WAAW;QAAC;KAAO;AACrB,EAAC;AAED,wCAAwC,GACxC,OAAO,MAAM+T,qBAAgD;IAC3DV,QACE;IACFI,OACE;IACF5R,MAAM;IACN9C,QACE;IACFsB,WACE;AACJ,EAAC"}