From 31e28de540d3d25ed77209d6de1c80cf96605467 Mon Sep 17 00:00:00 2001 From: Jesse Maltese Date: Thu, 18 Jan 2024 14:05:56 -0500 Subject: [PATCH] Schema validation --- package.json | 8 ++++++++ schemas/fields.schema.json | 1 + 2 files changed, 9 insertions(+) create mode 100644 schemas/fields.schema.json diff --git a/package.json b/package.json index e58f53b..2f8c479 100644 --- a/package.json +++ b/package.json @@ -156,6 +156,14 @@ "path": "./snippets/man_gen/hubl_custom_module_fields.json" } ], + "jsonValidation": [ + { + "fileMatch": [ + "fields.json" + ], + "url": "./schemas/fields.schema.json" + } + ], "languages": [ { "id": "hubl", diff --git a/schemas/fields.schema.json b/schemas/fields.schema.json new file mode 100644 index 0000000..99b3ff6 --- /dev/null +++ b/schemas/fields.schema.json @@ -0,0 +1 @@ +{"$schema":"http://json-schema.org/draft-07/schema#","definitions":{"AdvancedVisibility":{"additionalProperties":false,"properties":{"boolean_operator":{"enum":["AND","OR"],"type":"string"},"children":{"items":{"$ref":"#/definitions/AdvancedVisibility"},"type":"array"},"criteria":{"items":{"additionalProperties":false,"properties":{"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX"],"type":"string"}},"required":["operator","controlling_value_regex"],"type":"object"},"type":"array"}},"type":"object"},"AlignmentFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"alignment_direction":{"enum":["HORIZONTAL","VERTICAL","BOTH"],"type":"string","markdownDescription":"Determines if only horizontal, only vertical, or both alignment controls should be shown. Can be:\n - `HORIZONTAL`\n- `VERTICAL`\n- `BOTH`\n","default":"BOTH"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"horizontal_align":{"enum":["LEFT","CENTER","RIGHT"],"type":"string"},"vertical_align":{"enum":["TOP","MIDDLE","BOTTOM"],"type":"string"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"horizontal_align":{"enum":["LEFT","CENTER","RIGHT"],"type":"string"},"vertical_align":{"enum":["TOP","MIDDLE","BOTTOM"],"type":"string"}},"type":"object"},"type":"array"}],"markdownDescription":"Object containing `horizontal_align` and `vertical_align`."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"alignment","type":"string","markdownDescription":"Enables content creators to position an element within a container. To enable text alignment, use the [text alignment field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#text-alignment) instead.\n\nAlignment fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules) and can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"AudioFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"file_duration":{"type":["number","null"]},"file_extension":{"type":["string","null"]},"file_id":{"type":["number","null"]},"file_url":{"type":["string","null"]},"title":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"file_duration":{"type":["number","null"]},"file_extension":{"type":["string","null"]},"file_id":{"type":["number","null"]},"file_url":{"type":["string","null"]},"title":{"type":["string","null"]}},"type":"object"},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"audioplayer","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BackgroundImageFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"background_position":{"enum":["TOP_LEFT","TOP_CENTER","TOP_RIGHT","MIDDLE_LEFT","MIDDLE_CENTER","MIDDLE_RIGHT","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT"],"type":"string"},"background_size":{"enum":["COVER","CONTAIN","AUTO"],"type":"string"},"src":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"background_position":{"enum":["TOP_LEFT","TOP_CENTER","TOP_RIGHT","MIDDLE_LEFT","MIDDLE_CENTER","MIDDLE_RIGHT","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT"],"type":"string"},"background_size":{"enum":["COVER","CONTAIN","AUTO"],"type":"string"},"src":{"type":["string","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Object containing the image src, background position and background size."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"backgroundimage","type":"string","markdownDescription":"This field provides a background image field which has subfields for background position and background size. Background image fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nBackground Image fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules) and can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BaseField":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BlogFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"items":{"type":"number"},"type":"array"}],"markdownDescription":"Specifies which blog is selected by default. This parameter accepts arguments of either 'default' or a blog ID (available in the URL of the Blog dashboard)."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"blog","type":"string","markdownDescription":"This field provides a way for content editors to select a blog, providing you, the developer the blog's id. This is useful for situations like pulling teaser information for featured blogs in modules. You can use the blog id in blog-related [HubL functions](https://developers.hubspot.com/docs/cms/hubl/functions) to get information like [blog authors](https://developers.hubspot.com/docs/cms/hubl/functions#blog-authors), [recent blog posts](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-posts), [recent blog posts with a specific tag](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-tag-posts), and more.\n\nBlog fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BooleanFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"boolean"},{"items":{"type":"boolean"},"type":"array"},{"type":"null"}],"markdownDescription":"Set's whether the default state of this field is `true` or `false`."},"display":{"enum":["toggle","checkbox"],"type":"string","markdownDescription":"Choose the visual display style for the field. Can appear as either a `toggle` or a `checkbox`.","default":"checkbox"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"boolean","type":"string","markdownDescription":"This field provides a way for content editors to enable/disable functionality. Booleans can only be `true` or `false`. Often it makes sense to make groups or fields conditional based on boolean fields. If you think you might need to provide more than two states down the road, a Choice field may be a better option as you can grow into that with less effort should needs change later.\n\nBoolean fields are supported in both themes and modules.\nBoolean fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BorderFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"allow_custom_border_sides":{"type":["boolean","null"]},"default":{"anyOf":[{"additionalProperties":false,"properties":{"border_radius":{"additionalProperties":false,"properties":{"units":{"$ref":"#/definitions/CssUnit"},"value":{"type":["number","null"]}},"required":["value","units"],"type":"object"},"bottom":{"$ref":"#/definitions/BorderSideType"},"left":{"$ref":"#/definitions/BorderSideType"},"right":{"$ref":"#/definitions/BorderSideType"},"top":{"$ref":"#/definitions/BorderSideType"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"border_radius":{"additionalProperties":false,"properties":{"units":{"$ref":"#/definitions/CssUnit"},"value":{"type":["number","null"]}},"required":["value","units"],"type":"object"},"bottom":{"$ref":"#/definitions/BorderSideType"},"left":{"$ref":"#/definitions/BorderSideType"},"right":{"$ref":"#/definitions/BorderSideType"},"top":{"$ref":"#/definitions/BorderSideType"}},"type":"object"},"type":"array"}],"markdownDescription":"object with keys for border radius, top, bottom, left, and right sides.","default":{}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"border","type":"string","markdownDescription":"This field provides content creators a user interface for creating a border around an element. Border fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nBorder fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules).\nBorder fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"BorderSideType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"color":{"type":["string","null"]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"opacity":{"type":["number","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"style":{"enum":["none","solid","dashed","double","groove","ridge","inset","outset"],"type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"},"width":{"additionalProperties":false,"properties":{"units":{"$ref":"#/definitions/CssUnit"},"value":{"type":["number","null"]}},"required":["value","units"],"type":"object"}},"type":"object"},"ChoiceFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"choices":{"items":{"items":[{},{"type":"string"}],"maxItems":2,"minItems":2,"type":"array"},"type":"array","markdownDescription":"Array of value and label pairs. Values listed first.","default":[["value 1","Label 1"],["value 2","Label 2"]]},"default":{"anyOf":[{"type":"string"},{"type":"number"},{"items":{"type":["string","number"]},"type":"array"}],"markdownDescription":"Sets the default selected value from the choice array."},"display":{"enum":["radio","select","checkbox"],"type":"string","markdownDescription":"Set the field's appearance.\n\n When not including multiple, you can set this as either 'radio' or 'select'.\n\nWhen multiple is set to true, you can set this as either 'checkbox' or 'select'.","default":"select"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"multiple":{"type":["boolean","null"],"markdownDescription":"Allow multiple options to be selected, set the value to true.","default":"False"},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"preset":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"reordering_enabled":{"type":["boolean","null"]},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"choice","type":"string","markdownDescription":"Choice fields allow a content creator to select one or more items from a list of options, either within a dropdown menu, radio select, or checkboxes.\n\nThe options for a choice field can have separate labels for their values. After a module's been used in a page, the option labels can be modified without impacting sites, since the value is still the same. Changing the value, however, and any modules that previously had that value will become disassociated.\n\nChoice fields are supported in both themes and modules. Choice fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"ColorFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"color":{"type":["string","null"]},"css":{"type":["string","null"]},"hex":{"type":["string","null"]},"opacity":{"type":["number","null"]},"rgb":{"type":["string","null"]},"rgba":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"color":{"type":["string","null"]},"css":{"type":["string","null"]},"hex":{"type":["string","null"]},"opacity":{"type":["number","null"]},"rgb":{"type":["string","null"]},"rgba":{"type":["string","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Sets the default selected color and opacity.","default":{"color":"#ffffff","opacity":100}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"color","type":"string","markdownDescription":"Color fields provide a color picker interface for content creators. They support solid colors as well as transparency. They are a perfect choice for when you want to give content creators full control over colors within a module.\n\nBy default, the opacity input of a color field is hidden for email modules, as some email clients don't respect opacity rules. You can reveal the opacity field for email modules by setting `show_opacity` to `true`.\n\nColor fields are supported in both themes and modules.Color fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"CrmObjectFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Object with id of default selected object instance. Contact ID, Company ID etc"},"display_format":{"type":["string","null"]},"display_properties":{"items":{"type":"string"},"type":"array"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"object_type":{"type":["string","null"],"markdownDescription":"Type of CRM Object the user can pick from. [Supported CRM Object Types](https://developers.hubspot.com/docs/cms/data/crm-objects#supported-crm-object-types)"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"properties_to_fetch":{"items":{"type":"string"},"type":"array","markdownDescription":"Array of property names associated with the object type in string form. Ex: `date_of_birth` is a property associated with a contact. Use this to limit the information available to the page to just what you need.","default":[]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"crmobject","type":"string","markdownDescription":"CRM object fields provide a way for users to pick an individual instance of a CRM object to display.\n\n`module.fieldname.properties` returns the properties fetched from this object instance. This makes it so you don't need to use the `crm_object()` function to get the data for the selected object instance.\n\n`module.fieldname.id` returns the object instance id.\n\nCRM object fields are supported in modules.\nCRM object fields are available in CMS Hub _Professional_ and _Enterprise_."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"CrmObjectPropertyFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"property":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"property":{"type":["string","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Contains the default property to display."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"object_type":{"type":["string","null"],"markdownDescription":"Type of CRM Object the user can pick from. Learn more about [supported CRM object types](https://developers.hubspot.com/docs/cms/data/crm-objects#supported-crm-object-types)."},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"crmobjectproperty","type":"string","markdownDescription":"Use the CRM object property field to access property metadata, such as the label and property name, from a specified object type. This enables content creators to select from object properties when needing to display property details on a page.\n\nFor example, you could add this field to a custom table module to populate table headings based on the selected properties.\n\nCRM object fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"CssUnit":{"enum":["px","pt","em","rem","%","ex","ch"],"type":"string"},"CtaFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}],"markdownDescription":"The default selected CTA. Expects a CTA id which can be found in the URL when editing a CTA in the [CTA manager](https://app.hubspot.com/l/ctas)."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"cta","type":"string","markdownDescription":"Call-To-Action (CTA) fields provide a way for users to pick a CTA to display. CTA's are essentially trackable buttons or links. Content creators [create CTAs](https://knowledge.hubspot.com/ctas/create-calls-to-action-ctas) that can be used throughout a site.\n\nCTA fields are supported in modules.\nCTA fields are available in CMS Hub _Professional_ and _Enterprise_."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"DateFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"null"},{"items":{"type":["number","null"]},"type":"array"}],"markdownDescription":"The Unix Epoch timestamp for the date and time you want to default to. Leave this null to allow the date and time picker to start the content creator at the current date and time in the picker."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"date","type":"string","markdownDescription":"Date fields provide a date picker interface to make it easy for content creators to select a date. Returns a timestamp you can use in your code.\n\nDate fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"DateTimeFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"null"},{"items":{"type":["number","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"step":{"type":["number","null"]},"type":{"const":"datetime","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"EmailFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"allow_custom_email_addresses":{"type":["boolean","null"]},"default":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"items":{"items":{"type":"string"},"type":"array"},"type":"array"}],"markdownDescription":["bob@example.com","dennis@example.com"]},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"email","type":"string","markdownDescription":"Email address fields allow a user to select multiple email addresses. This could be used for displaying contact information. The email field returns an array of selected email addresses you can loop through.\n\nEmail fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"EmbedFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"embed_type":{"type":["string","null"]},"height":{"type":["number","null"]},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"oembed_response":{"additionalProperties":false,"properties":{"type":{"enum":["oembed","html","media_bridge"],"type":"string"}},"required":["type"],"type":"object"},"oembed_url":{"type":["string","null"]},"size_type":{"enum":["auto","auto_custom_max","auto_full_width","exact"],"type":"string"},"source_type":{"enum":["oembed","html","media_bridge"],"type":"string"},"width":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"embed_type":{"type":["string","null"]},"height":{"type":["number","null"]},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"oembed_response":{"additionalProperties":false,"properties":{"type":{"enum":["oembed","html","media_bridge"],"type":"string"}},"required":["type"],"type":"object"},"oembed_url":{"type":["string","null"]},"size_type":{"enum":["auto","auto_custom_max","auto_full_width","exact"],"type":"string"},"source_type":{"enum":["oembed","html","media_bridge"],"type":"string"},"width":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"An object containing the `source_type` parameter. This parameter has one string based value from the options provided in the `supported_source_types` parameter.","default":{"source_type":"oembed"}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"resizeable":{"type":["boolean","null"]},"show_preview":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"supported_media_bridge_providers":{"items":{"type":"number"},"type":"array","markdownDescription":"Array of provider IDs that determine which Media Bridge providers are available to select content from.Note: This param will also be populated when installing a [Media Bridge Provider Application](https://ecosystem.hubspot.com/marketplace/apps/apps-for-media)."},"supported_oembed_types":{"items":{"enum":["photo","video","link","rich"],"type":"string"},"type":"array","markdownDescription":"Supported oEmbed type including `photo`, `video`, `link`, and `rich`. Does not apply to the supported_source_types of html","default":["photo","video","link","rich"]},"supported_source_types":{"items":{"enum":["oembed","html","media_bridge"],"type":"string"},"type":"array","markdownDescription":"Supported source types for either oEmbed URLs (`oembed`), HTML embed code (`html`), or Media Bridge (`media_bridge`).","default":["oembed","html"]},"type":{"const":"embed","type":"string","markdownDescription":"Embed fields allow the user to add a URL from an [oEmbed-enabled site](https://oembed.com/#section7) or paste in an embed code from another site. To learn more about oEmbed usage on HubSpot, and see use cases, visit our [oEmbed document](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields/oembed)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"Field":{"anyOf":[{"$ref":"#/definitions/AlignmentFieldType"},{"$ref":"#/definitions/AudioFieldType"},{"$ref":"#/definitions/BackgroundImageFieldType"},{"$ref":"#/definitions/BlogFieldType"},{"$ref":"#/definitions/BooleanFieldType"},{"$ref":"#/definitions/BorderFieldType"},{"$ref":"#/definitions/ChoiceFieldType"},{"$ref":"#/definitions/ColorFieldType"},{"$ref":"#/definitions/CrmObjectFieldType"},{"$ref":"#/definitions/CrmObjectPropertyFieldType"},{"$ref":"#/definitions/CtaFieldType"},{"$ref":"#/definitions/DateFieldType"},{"$ref":"#/definitions/DateTimeFieldType"},{"$ref":"#/definitions/EmailFieldType"},{"$ref":"#/definitions/EmbedFieldType"},{"$ref":"#/definitions/FileFieldType"},{"$ref":"#/definitions/FollowUpEmailFieldType"},{"$ref":"#/definitions/FontFieldType"},{"$ref":"#/definitions/FormFieldType"},{"$ref":"#/definitions/GradientFieldType"},{"$ref":"#/definitions/GroupFieldType"},{"$ref":"#/definitions/HtmlFieldType"},{"$ref":"#/definitions/HubDbRowFieldType"},{"$ref":"#/definitions/HubDbTableFieldType"},{"$ref":"#/definitions/HublFieldType"},{"$ref":"#/definitions/IconFieldType"},{"$ref":"#/definitions/ImageFieldType"},{"$ref":"#/definitions/LinkFieldType"},{"$ref":"#/definitions/LogoFieldType"},{"$ref":"#/definitions/MeetingFieldType"},{"$ref":"#/definitions/MenuFieldType"},{"$ref":"#/definitions/NumberFieldType"},{"$ref":"#/definitions/PageFieldType"},{"$ref":"#/definitions/PaymentFieldType"},{"$ref":"#/definitions/RichTextFieldType"},{"$ref":"#/definitions/SfdcCamapaignFieldType"},{"$ref":"#/definitions/SimpleMenuFieldType"},{"$ref":"#/definitions/SpacingFieldType"},{"$ref":"#/definitions/SurveyFieldType"},{"$ref":"#/definitions/TagFieldType"},{"$ref":"#/definitions/TextAlignmentFieldType"},{"$ref":"#/definitions/TextFieldType"},{"$ref":"#/definitions/UrlFieldType"},{"$ref":"#/definitions/VideoFieldType"},{"$ref":"#/definitions/WorkflowFieldType"}]},"FieldTypes":{"anyOf":[{"const":"alignment","type":"string"},{"not":{}},{"const":"audioplayer","type":"string"},{"const":"backgroundimage","type":"string"},{"const":"blog","type":"string"},{"const":"boolean","type":"string"},{"const":"border","type":"string"},{"const":"choice","type":"string"},{"const":"color","type":"string"},{"const":"crmobject","type":"string"},{"const":"crmobjectproperty","type":"string"},{"const":"cta","type":"string"},{"const":"date","type":"string"},{"const":"datetime","type":"string"},{"const":"email","type":"string"},{"const":"embed","type":"string"},{"const":"file","type":"string"},{"const":"followupemail","type":"string"},{"const":"font","type":"string"},{"const":"form","type":"string"},{"const":"gradient","type":"string"},{"const":"group","type":"string"},{"const":"html","type":"string"},{"const":"hubdbrow","type":"string"},{"const":"hubdbtable","type":"string"},{"const":"hubl","type":"string"},{"const":"icon","type":"string"},{"const":"image","type":"string"},{"const":"link","type":"string"},{"const":"logo","type":"string"},{"const":"meeting","type":"string"},{"const":"menu","type":"string"},{"const":"number","type":"string"},{"const":"page","type":"string"},{"const":"payment","type":"string"},{"const":"richtext","type":"string"},{"const":"salesforcecampaign","type":"string"},{"const":"simplemenu","type":"string"},{"const":"spacing","type":"string"},{"const":"survey","type":"string"},{"const":"tag","type":"string"},{"const":"textalignment","type":"string"},{"const":"text","type":"string"},{"const":"url","type":"string"},{"const":"videoplayer","type":"string"},{"const":"workflow","type":"string"}]},"FileFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}],"markdownDescription":"File URL."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"picker":{"enum":["file","image","video","document","audio"],"type":"string","markdownDescription":"Acceptable values: `file`, `document`, `image`. The picker shows assets uploaded to either the file manager, or the document manager depending on this parameter.","default":"file"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"file","type":"string","markdownDescription":"File fields allow the user to upload a file to the file manager, or document manager, and make it easy to attach items that are in those locations. This can be useful for linking out to PDF files or files of other formats. For displaying images on a page you should use the image field.\n\nFile fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"FollowUpEmailFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"followupemail","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"FontFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"color":{"type":["string","null"]},"fallback":{"type":["string","null"]},"font":{"type":["string","null"]},"font_set":{"enum":["DEFAULT","GOOGLE","CUSTOM"],"type":"string"},"google_font_variants":{"items":{"enum":["100","100i","200","200i","300","300i","400","400i","500","500i","600","600i","700","700i","800","800i","900","900i"],"type":"string"},"type":"array"},"size":{"type":["number","null"]},"size_unit":{"$ref":"#/definitions/CssUnit"},"styles":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}]},"variant":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"color":{"type":["string","null"]},"fallback":{"type":["string","null"]},"font":{"type":["string","null"]},"font_set":{"enum":["DEFAULT","GOOGLE","CUSTOM"],"type":"string"},"google_font_variants":{"items":{"enum":["100","100i","200","200i","300","300i","400","400i","500","500i","600","600i","700","700i","800","800i","900","900i"],"type":"string"},"type":"array"},"size":{"type":["number","null"]},"size_unit":{"$ref":"#/definitions/CssUnit"},"styles":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"type":"null"}]},"variant":{"type":["string","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Font object with settings for size, sizing unit, color, and styles for bold, italic, and underline.","default":{"size":12,"size_unit":"px","color":"#000","styles":{}}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"load_external_fonts":{"type":["boolean","null"],"markdownDescription":"HubSpot automatically loads the selected web font to the page if the font is selected and referenced by HubL in a stylesheet or in a module. Set this to false, if you are already loading the font to the page, that way the font won't load twice.","default":true},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"font","type":"string","markdownDescription":"Font fields provide content creators basic font styling controls. Content creators can choose the size, color, font family, and the format (bold, italic, and underlined). The listed fonts are all standard web-safe fonts. These fonts are sourced from [Google Fonts](https://fonts.google.com/) but served by HubSpot directly on the domain that the page loads on.\n\nFont fields are supported in both themes and modules. Font fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Using the `hidden_subfields` nested object, you can set a boolean for which controls of the Font field to hide. Subfields include: `font`, `size`, `bold`, `italic`, `underline`, and `color`."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"FormFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"allow_inline_form_editing":{"type":["boolean","null"]},"default":{"anyOf":[{"additionalProperties":false,"properties":{"form_id":{"type":["string","null"]},"form_type":{"enum":["HUBSPOT","TICKET_FORM"],"type":"string"},"message":{"type":["string","null"]},"redirect_id":{"type":["number","null"]},"redirect_url":{"type":["string","null"]},"response_type":{"enum":["inline","redirect"],"type":"string"},"workflow_id":{"items":{"type":"number"},"type":"array"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"form_id":{"type":["string","null"]},"form_type":{"enum":["HUBSPOT","TICKET_FORM"],"type":"string"},"message":{"type":["string","null"]},"redirect_id":{"type":["number","null"]},"redirect_url":{"type":["string","null"]},"response_type":{"enum":["inline","redirect"],"type":"string"},"workflow_id":{"items":{"type":"number"},"type":"array"}},"type":"object"},"type":"array"}],"markdownDescription":"Object for forms containing the selected form id, response type and message.","default":{"response_type":"inline","message":"Thanks for submitting the form."}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"form","type":"string","markdownDescription":"Form fields allow a content creator to designate a form in their account. You can then use this to render a form to a page using the [HubL form tag](https://developers.hubspot.com/docs/cms/hubl/tags#form).\n\nForm fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"GradientColorType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"color":{"additionalProperties":false,"properties":{"a":{"type":["number","null"]},"b":{"type":["string","null"]},"g":{"type":["string","null"]},"r":{"type":["string","null"]}},"required":["r","g","b","a"],"type":"object"},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"GradientFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"color":{"items":{"$ref":"#/definitions/GradientColorType"},"type":"array"},"side_or_corner":{"additionalProperties":false,"properties":{"horizontalSide":{"enum":["LEFT","RIGHT"],"type":"string"},"verticalSide":{"enum":["TOP","BOTTOM"],"type":"string"}},"type":"object"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"color":{"items":{"$ref":"#/definitions/GradientColorType"},"type":"array"},"side_or_corner":{"additionalProperties":false,"properties":{"horizontalSide":{"enum":["LEFT","RIGHT"],"type":"string"},"verticalSide":{"enum":["TOP","BOTTOM"],"type":"string"}},"type":"object"}},"type":"object"},"type":"array"}],"markdownDescription":"Object containing directional settings for a gradient (`side_or_corner`) and color stops for the gradient as an array of objects."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"gradient","type":"string","markdownDescription":"This field provides a way for content creators to create and configure gradients. At this time linear gradients support up to 5 color stops. Gradient fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nGradient fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules). Gradient fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"GroupFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"children":{"items":{"$ref":"#/definitions/Field"},"type":"array"},"default":{"anyOf":[{},{"type":"null"},{"items":{"anyOf":[{},{"type":"null"}]},"type":"array"}]},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"expanded":{"type":["boolean","null"]},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"tab":{"anyOf":[{"const":"STYLE","type":"string"},{"const":"CONTENT","type":"string"},{"type":"string"},{"type":"null"}]},"type":{"const":"group","type":"string","markdownDescription":"When fields are related to each other often it makes sense for them to be displayed visually grouped. Modules and Themes support grouping multiple fields together. Field group objects can be listed as children of other field groups, their structure is very similar to field's themselves with the only special parameter being the 'children' parameter, which is an array of fields and groups they contain."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"HtmlFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"html","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"HubDbRowFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"columns_to_fetch":{"items":{"type":"string"},"type":"array","markdownDescription":"An array of column names to fetch from the table. If left blank, will return all columns in the table.","default":[]},"default":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Object containing `id` for setting the default HubDB row.","default":{"id":null}},"display_columns":{"items":{"type":"string"},"type":"array","markdownDescription":"An array of column names to use in choice label. If left blank, will return only the first column in the table.","default":[]},"display_format":{"type":["string","null"],"markdownDescription":"The format you would like the column data to display in the HubDB row selector using the percent symbol and number to designate a column.\n Ex: `%0 (%1)` would appear as 'Column0Value (Column1Value)'"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"table_name_or_id":{"type":["string","number","null"],"markdownDescription":"The name or ID of the HubDB table. This field is required."},"type":{"const":"hubdbrow","type":"string","markdownDescription":"HubDB Row fields allow a content creator to select an individual row (or rows if using repeater fields) from a defined table. You can then use this field to create user-defined lists, tables, resources, and more.\n\nHubDB Row fields are supported in modules.\nHubDB Row fields are available in CMS Hub _Professional_ and _Enterprise_."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"HubDbTableFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"},{"items":{"type":["string","number","null"]},"type":"array"}],"markdownDescription":"HubDB table id"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"hubdbtable","type":"string","markdownDescription":"HubDB Table fields allow a content creator to designate a HubDB in their account. You can then use this to render a form to a page using the [HubL form tag](https://developers.hubspot.com/docs/cms/hubl/tags#form). Returns the table id, which you can use with the [HubDB HubL functions](https://developers.hubspot.com/docs/cms/data/hubdb#access-hubdb-data-using-hubl).\n\nHubDB Table fields are supported in modules. HubDB Table fields are available in **CMS Hub**_Professional_ and _Enterprise_."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"HublFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"hubl","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"IconFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":["string","null"]},"type":{"enum":["SOLID","REGULAR"],"type":"string"},"unicode":{"type":["string","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"name":{"type":["string","null"]},"type":{"enum":["SOLID","REGULAR"],"type":"string"},"unicode":{"type":["string","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Icon object"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"icon_set":{"enum":["fontawesome-5","fontawesome-5.0.10","fontawesome-5.14.0"],"type":"string","markdownDescription":"The FontAwesome icon set to use. Possible values are:\n\n - `fontawesome-6.4.2`\n- `fontawesome-5.14.0`\n- `fontawesome-5.0.10`\n","default":"fontawesome-5.0.10"},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"icon","type":"string","markdownDescription":"Icon fields provide an icon picker UI to make it easier for content creators to add icons to your modules. The Icon field is preloaded with FontAwesome Icons.\n\nIcon fields are supported in modules. Icon fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"ImageFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"alt":{"type":["string","null"]},"height":{"type":["number","null"]},"loading":{"enum":["disabled","eager","lazy"],"type":"string"},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"size_type":{"enum":["auto","auto_custom_max","auto_full_width","exact"],"type":"string"},"src":{"type":["string","null"]},"width":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"alt":{"type":["string","null"]},"height":{"type":["number","null"]},"loading":{"enum":["disabled","eager","lazy"],"type":"string"},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"size_type":{"enum":["auto","auto_custom_max","auto_full_width","exact"],"type":"string"},"src":{"type":["string","null"]},"width":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Sets properties for image sizing, alt-text, and more. Can contain the following properties:\n\n- `size_type`: whether the image is automatically or manually sized\n- `auto`: HubSpot will automatically adjust the size of the image based on its original dimensions.\n- `auto_custom_max`: HubSpot will automatically adjust the size of the image with maximum dimensions set using the `max_height` and `max_width` properties.\n- `exact`: HubSpot will size the image based on the dimensions set using the `height` and `width` properties.\n- `src`: the URL of the default image. Must be an absolute path to an image.\n- `alt`: the image's default alt-text.\n- `loading`: the image's lazy loading options. Can be set as `disabled` (default), `eager`, or `lazy`.","default":{"size_type":"auto","src":"","alt":null,"loading":"disabled"}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"resizeable":{"type":["boolean","null"]},"responsive":{"type":["boolean","null"],"markdownDescription":"Determines if the image is to act responsively or have a fixed height and width.","default":true},"show_loading":{"type":["boolean","null"],"markdownDescription":"Determines if the controls for choosing to [lazy load](https://developers.hubspot.com/docs/cms/lazy-loading) the image are shown in the page editor."},"sortable":{"type":["boolean","null"]},"type":{"const":"image","type":"string","markdownDescription":"Image fields provide an easy interface for content creators to add images to a module or theme. Image fields provide a file picker interface that lists images from the File Manager. Since images can be used and displayed in different ways, developers can limit the sizing options available to the content creator in the UI as well as allow for [lazy-loading of images](https://developers.hubspot.com/docs/cms/lazy-loading)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"InheritedValue":{"additionalProperties":false,"properties":{"default_value_path":{"type":["string","null"]},"property_value_path":{"type":["string","null"]},"property_value_paths":{"additionalProperties":{"type":"string"},"type":"object"}},"type":"object"},"LinkFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"no_follow":{"type":["boolean","null"]},"open_in_new_tab":{"type":["boolean","null"]},"sponsored":{"type":["boolean","null"]},"url":{"additionalProperties":false,"properties":{"content_id":{"type":["number","null"]},"href":{"type":["string","null"]},"type":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"}},"type":"object"},"user_generated_content":{"type":["boolean","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"no_follow":{"type":["boolean","null"]},"open_in_new_tab":{"type":["boolean","null"]},"sponsored":{"type":["boolean","null"]},"url":{"additionalProperties":false,"properties":{"content_id":{"type":["number","null"]},"href":{"type":["string","null"]},"type":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"}},"type":"object"},"user_generated_content":{"type":["boolean","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"The default URL and link open behavior. This object includes:\n\n A `url` object which contains:\n`content_id`: if linking to HubSpot content, the ID of that content. Set to null if linking to external content.\n`type`: the type of URL. Learn more about supported types below.\n`href`: the URL of the content. When linking to HubSpot content, set this to null and use content_id instead.","default":{"url":{"content_id":null,"type":"EXTERNAL","href":""},"open_in_new_tab":false,"no_follow":false,"sponsored":false,"user_generated_content":false}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"show_advanced_rel_options":{"type":["boolean","null"],"markdownDescription":"By default, content creators will only be able to select the no_follow option.\nWhen set to true, content creators can also select:\n\n- `sponsored`: a sponsored link, such as a paid ad link. \n- `user_generated_content`: content generated by users, such as forums.\n[Learn more about link attributes](https://moz.com/blog/nofollow-sponsored-ugc)."},"sortable":{"type":["boolean","null"]},"supported_types":{"items":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"},"type":"array","markdownDescription":"The types of links that content creators can select. Remove types from the list that you don't want content creators to have access to set. Valid types include:\n\n - `EXTERNAL`\n-`CONTENT`\n- `FILE`\n- `EMAIL_ADDRESS`\n- `BLOG`\n- `CALL_TO_ACTION`\n- `PHONE_NUMBER`\n- `WHATSAPP_NUMBER`\n- `PAYMENT`","default":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","PHONE_NUMBER","WHATSAPP_NUMBER","PAYMENT"]},"type":{"const":"link","type":"string","markdownDescription":"Link fields provide an easy interface for content creators to provide links to URLs and email addresses. For external links, content creators choose 'external'. For email links 'email address'. Finally for content hosted on the HubSpot CMS they can use 'content' which shows a list of all pages and blog posts in the account, file showing file assets, and blog, showing all of the blog listings in the account. Link fields are very similar to URL fields except for the key difference that they provide a UI for 'open in new window' and 'tell search engines not to follow'. If you do not want content creators to have that control use the [URL field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#url).\n\nLink fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"LogoFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"alt":{"type":["string","null"]},"height":{"type":["number","null"]},"loading":{"type":["string","null"]},"override_inherited_src":{"type":["boolean","null"]},"src":{"type":["string","null"]},"suppress_company_name":{"type":["boolean","null"]},"width":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"alt":{"type":["string","null"]},"height":{"type":["number","null"]},"loading":{"type":["string","null"]},"override_inherited_src":{"type":["boolean","null"]},"src":{"type":["string","null"]},"suppress_company_name":{"type":["boolean","null"]},"width":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"show_loading","default":{"override_inherited_src":false,"src":"","alt":null,"width":null,"height":null,"loading":"disabled","suppress_company_name":false}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"show_loading":{"const":true,"type":"boolean","markdownDescription":"Determines if the controls for choosing to [lazy load](https://developers.hubspot.com/docs/cms/lazy-loading) the image are shown in the page editor."},"sortable":{"type":["boolean","null"]},"type":{"const":"logo","type":"string","markdownDescription":"Logo fields provide a way for content creators to specify logo images to use in a page, defaulting to the domain's logo. This is useful for site headers and footers that may contain the company logo. Logo fields also allow for [lazy loading](https://developers.hubspot.com/docs/cms/lazy-loading).\n\nLogo fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"MeetingFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"embeddable":{"type":["boolean","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"meeting","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"MenuFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"string"},{"type":"null"},{"items":{"type":["number","string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"const":"string","type":"string"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"menu","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"NumberFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"null"},{"items":{"type":["number","null"]},"type":"array"}],"markdownDescription":"A default number to be used."},"display":{"enum":["text","slider"],"type":"string"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"format":{"enum":["ANY","INTEGER"],"type":"string"},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"],"markdownDescription":"Adds a placeholder value to the field."},"prefix":{"type":["string","null"],"markdownDescription":"Added as a prefix to the number field."},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"step":{"type":["number","null"]},"suffix":{"type":["string","null"],"markdownDescription":"Added as a suffix to the number field."},"type":{"const":"number","type":"string","markdownDescription":"Number fields provide an easy interface for content creators to enter in or adjust numerical values and options. This can be used for creating percentage based items or anything where numbers are needed for input.\n\nNumber fields are supported in modules. Number fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"PageFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"null"},{"items":{"type":["number","null"]},"type":"array"}],"markdownDescription":"A default page id to be selected."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"page","type":"string","markdownDescription":"Page fields provide an interface for content creators to select site pages and landing pages.\n\nThe value returned by a page field is the page id of the selected page. When used in tandem with the [content_by_id](https://developers.hubspot.com/docs/cms/hubl/functions#content-by-id) or [content_by_ids](https://developers.hubspot.com/docs/cms/hubl/functions#content-by-ids) functions, you can use data from the selected pages in the current page.\n\nPage fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"PaymentFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"id":{"type":["number","null"]}},"type":"object"},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"payment","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"RichTextFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}],"markdownDescription":"String of content to be displayed supports HTML.\n\nNote: You cannot use the [get_asset_url](https://developers.hubspot.com/docs/cms/hubl/functions#get-asset-url) function within this default property."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"enabled_features":{"items":{"enum":["block","font_family","font_size","bold","italic","underline","text_color","background_color","alignment","bulleted_list","numbered_list","lineheight","outdent","indent","strikethrough","superscript","subscript","code_format","link","image","emoji","personalize","cta","embed","video","table","charmap","anchor","hr","nonbreaking_space","source_code","visual_blocks","colors","fonts","indents","lists","standard_emphasis","advanced_emphasis"],"type":"string"},"type":"array","markdownDescription":"An array of items that allows you to [configure the Rich Text Editor Toolbar](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields/rich-text-editor) and what options are available for content editors."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"richtext","type":"string","markdownDescription":"Rich Text fields provide content creators with a WYSIWYG text editor experience. When a rich text field's value is printed it is printed as HTML. When you do not want content creators to have formatting capabilities use [text fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#text).\n\nRich text fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"SfdcCamapaignFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"salesforcecampaign","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"SimpleMenuFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"items":{"additionalProperties":false,"type":"object"},"type":"array","markdownDescription":"JSON structure for menu and menu children.","default":[]},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"simplemenu","type":"string","markdownDescription":"Simple menu fields provide an easy interface for content creators to create a [navigation menu](https://developers.hubspot.com/docs/cms/building-blocks/menus-and-navigation) that is not re-usable on other pages. For menus that should be reusable, use the [menu field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#menu). A time you may want this is for a table of contents menu that links to headings on very long pages, or a list of links to content that only makes sense to have on the current page.\n\nSimple menu fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"SpacingFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"margin":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingValueType"},"left":{"$ref":"#/definitions/SpacingValueType"},"right":{"$ref":"#/definitions/SpacingValueType"},"top":{"$ref":"#/definitions/SpacingValueType"}},"type":"object"},"padding":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingValueType"},"left":{"$ref":"#/definitions/SpacingValueType"},"right":{"$ref":"#/definitions/SpacingValueType"},"top":{"$ref":"#/definitions/SpacingValueType"}},"type":"object"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"margin":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingValueType"},"left":{"$ref":"#/definitions/SpacingValueType"},"right":{"$ref":"#/definitions/SpacingValueType"},"top":{"$ref":"#/definitions/SpacingValueType"}},"type":"object"},"padding":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingValueType"},"left":{"$ref":"#/definitions/SpacingValueType"},"right":{"$ref":"#/definitions/SpacingValueType"},"top":{"$ref":"#/definitions/SpacingValueType"}},"type":"object"}},"type":"object"},"type":"array"}],"markdownDescription":"Sets the default spacing values.\n\nContains `padding` and `margin` objects:\n - `padding`: can contain `top`, `right`, `bottom`, `left` objects\n- `margin`: can contain `top` and `bottom` objects\nUse `units` to set the units that a content creator can use in HubSpot. Learn more about units below.","default":{}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"limits":{"additionalProperties":false,"properties":{"margin":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingLimitType"},"left":{"$ref":"#/definitions/SpacingLimitType"},"right":{"$ref":"#/definitions/SpacingLimitType"},"top":{"$ref":"#/definitions/SpacingLimitType"}},"type":"object"},"padding":{"additionalProperties":false,"properties":{"bottom":{"$ref":"#/definitions/SpacingLimitType"},"left":{"$ref":"#/definitions/SpacingLimitType"},"right":{"$ref":"#/definitions/SpacingLimitType"},"top":{"$ref":"#/definitions/SpacingLimitType"}},"type":"object"}},"required":["padding","margin"],"type":"object","markdownDescription":"Sets the guidelines for min and max amount of spacing.\n\nContains `padding` and `margin` objects:\n- `padding`: can contain `top`, `right`, `bottom`, `left` objects\n- `margin`: can contain `top` and `bottom` objects\nUse `units` to set the units that a content creator can use in HubSpot. Learn more about units below."},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"spacing","type":"string","markdownDescription":"This field provides a user interface (UI) for content creators to set padding and margin. Spacing fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nSpacing fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules).\nSpacing fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"SpacingLimitType":{"additionalProperties":false,"properties":{"max":{"type":["number","null"]},"min":{"type":["number","null"]},"units":{"items":{"$ref":"#/definitions/CssUnit"},"type":"array"}},"type":"object"},"SpacingValueType":{"additionalProperties":false,"properties":{"units":{"$ref":"#/definitions/CssUnit"},"value":{"type":["number","null"]}},"type":"object"},"SurveyFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":["string","null"]},"survey_type":{"enum":["CES","CSAT","NPS"],"type":"string"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"id":{"type":["string","null"]},"survey_type":{"enum":["CES","CSAT","NPS"],"type":"string"}},"type":"object"},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"placeholder":{"type":["string","null"]},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"survey","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"TagFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"string"},{"type":"number"},{"additionalProperties":false,"properties":{"id":{"type":["string","null"]},"name":{"type":["string","null"]},"slug":{"type":["string","null"]}},"type":"object"},{"items":{"anyOf":[{"type":"string"},{"type":"number"},{"additionalProperties":false,"properties":{"id":{"type":["string","null"]},"name":{"type":["string","null"]},"slug":{"type":["string","null"]}},"type":"object"}]},"type":"array"}],"markdownDescription":"Blog tag id"},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"tag_value":{"enum":["SLUG","NAME","ID","ALL"],"type":"string"},"type":{"const":"tag","type":"string","markdownDescription":"Tag fields provide a blog tag picker for content creators. This tag picker returns a blog tag id which can then be used in blog tag related functions such as [Blog Tag URL](https://developers.hubspot.com/docs/cms/hubl/functions#blog-tag-url) and [Blog Recent Tag Posts](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-tag-posts).\n\nTag fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"TextAlignmentFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"text_align":{"enum":["LEFT","CENTER","RIGHT","JUSTIFY"],"type":"string"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"text_align":{"enum":["LEFT","CENTER","RIGHT","JUSTIFY"],"type":"string"}},"type":"object"},"type":"array"}],"markdownDescription":"Object containing `horizontal_align` and `vertical_align`."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"type":{"const":"textalignment","type":"string","markdownDescription":"This field provides content creators a way to align text content within a container. This should not be used for aligning other assets as there is a [field type specifically for that](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#alignment).\n\nText alignment fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules). Text alignment fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"TextFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"allow_new_line":{"type":["boolean","null"]},"default":{"anyOf":[{"type":"string"},{"type":"null"},{"items":{"type":["string","null"]},"type":"array"}],"markdownDescription":"Text string."},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"show_emoji_picker":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"text","type":"string","markdownDescription":"Text fields provide content creators a simple text editing experience with no rich text functionality. Text fields initially show as a single line, but can actually expand to be textareas, supporting multiple lines. Use these when you do not want content creators to have control over formatting. If you do want to provide formatting controls use [rich text fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#rich-text).\n\nText fields are supported in modules."},"validation_regex":{"type":["string","null"]},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"UrlFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"content_id":{"type":["number","null"]},"href":{"type":["string","null"]},"supported_types":{"items":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"},"type":"array"},"type":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"content_id":{"type":["number","null"]},"href":{"type":["string","null"]},"supported_types":{"items":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"},"type":"array"},"type":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"}},"type":"object"},"type":"array"}],"markdownDescription":"URL object, with type, href and content id (if content is a page or post on HubSpot)","default":{"content_id":null,"href":"","type":"EXTERNAL"}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"sortable":{"type":["boolean","null"]},"supported_types":{"items":{"enum":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG","CALL_TO_ACTION","WHATSAPP_NUMBER","PHONE_NUMBER","PAYMENT"],"type":"string"},"type":"array","markdownDescription":"List of the types of links this field allows content creators to select.Remove types from the list that you don't want content creators to have access to set. Types include:\n\n - `EXTERNAL`: renders a text input field for an external URL.\n- `CONTENT`: renders a dropdown menu containing the account's website and landing pages.\n- `FILE`: renders a file selector.\n- `EMAIL_ADDRESS`: renders a text input field for an email address.\n- `BLOG`: renders a dropdown menu containing the account's blog listing pages.\n- `PHONE_NUMBER`: renders a text input field for a phone number. The number must start with + and contain 7-15 digits (excluding the country code).\n- `WHATSAPP_NUMBER`: renders a dropdown menu containing the account's connected WhatsApp numbers","default":["EXTERNAL","CONTENT","FILE","EMAIL_ADDRESS","BLOG"]},"type":{"const":"url","type":"string","markdownDescription":"URL fields provide a similar experience to link fields. Providing a UI for content creators to add links. URL fields, however, do not show a UI for open in a new window, nor tell search engines not to follow. Use this field when you as a developer want to dictate the values for that. If you want the user to have control, use [link fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#link) instead.\n\nURL fields are supported in modules."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"VideoFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"additionalProperties":false,"properties":{"autoplay":{"type":["boolean","null"]},"conversion_asset":{},"height":{"type":["number","null"]},"hide_controls":{"type":["boolean","null"]},"loop_video":{"type":["boolean","null"]},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"mute_by_default":{"type":["boolean","null"]},"player_id":{"type":["number","null"]},"player_type":{"type":["string","null"]},"size_type":{"enum":["exact","auto","auto_custom_max","auto_full_width"],"type":"string"},"width":{"type":["number","null"]}},"type":"object"},{"items":{"additionalProperties":false,"properties":{"autoplay":{"type":["boolean","null"]},"conversion_asset":{},"height":{"type":["number","null"]},"hide_controls":{"type":["boolean","null"]},"loop_video":{"type":["boolean","null"]},"max_height":{"type":["number","null"]},"max_width":{"type":["number","null"]},"mute_by_default":{"type":["boolean","null"]},"player_id":{"type":["number","null"]},"player_type":{"type":["string","null"]},"size_type":{"enum":["exact","auto","auto_custom_max","auto_full_width"],"type":"string"},"width":{"type":["number","null"]}},"type":"object"},"type":"array"}],"markdownDescription":"Video object with settings for `player_id`, `height`, `width`, `size_type`, `conversion_asset`, `loop_video`, `mute_by_default`, au`toplay, and `hide_control`.","default":{}},"display_width":{"type":["string","null"],"markdownDescription":"By default, fields are full-width in the editor. When two consecutive fields in the `fields.json` file are set to `half_width`, they will instead appear next to each other in the editor."},"help_text":{"type":["string","null"],"markdownDescription":"Text that displays in the editor within a tooltip on hover to assist the content creator (limit 300 characters). Best used for information that is supplementary but not required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"id":{"type":["string","null"],"markdownDescription":"The field's unique ID, which is set by HubSpot. When building locally you do not need to specify this ID."},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"],"markdownDescription":"Text that displays inline below field's label (limit 400 characters). Best used for information required to use the field.\n You can include the following HTML tags (other tags will be ignored on render):\n`a`, `b`, `br`, `em`, `i`, `p`, `small`, `strong`, `span`."},"label":{"type":"string","markdownDescription":"The text the content creator sees describing the field. May contain spaces.","default":"Rich text field"},"locked":{"type":["boolean","null"],"markdownDescription":"Sets whether the field is editable in the content editor. If `true`, the field will not appear in the content editor."},"name":{"type":"string","markdownDescription":"The field's name, which you'll reference when incorporating the field and its values in the module or theme. Cannot contain spaces or special characters.","default":"richtext_field"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"],"markdownDescription":"Sets whether the field can be left blank in the editor. If `true`, content cannot be published without a value in the field."},"resizable":{"type":["boolean","null"]},"show_advanced_options":{"type":["boolean","null"],"markdownDescription":"Whether content creators can see advanced default options."},"show_preview":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"videoplayer","type":"string","markdownDescription":"Video fields provide content editors with a place to add HubSpot Video to their module content without the need of using rich text fields."},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object","markdownDescription":"Sets the field's display conditions. For example, you can set a field to only display when another checkbox field has been selected. Learn more about [visibility](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#field-visibility)."},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"},"WorkflowFieldType":{"additionalProperties":false,"properties":{"advanced_visibility":{"$ref":"#/definitions/AdvancedVisibility"},"default":{"anyOf":[{"type":"number"},{"type":"null"},{"items":{"type":["number","null"]},"type":"array"}]},"display_width":{"type":["string","null"]},"help_text":{"type":["string","null"]},"id":{"type":["string","null"]},"inherited_value":{"$ref":"#/definitions/InheritedValue"},"inline_help_text":{"type":["string","null"]},"label":{"type":"string"},"locked":{"type":["boolean","null"]},"name":{"type":"string"},"occurrence":{"additionalProperties":false,"properties":{"default":{"type":["number","null"]},"max":{"type":["number","null"]},"min":{"type":["number","null"]},"sorting_label_field":{"type":["string","null"]}},"required":["min"],"type":"object"},"property_aliases_paths":{"additionalProperties":false,"type":"object"},"required":{"type":["boolean","null"]},"sortable":{"type":["boolean","null"]},"type":{"const":"workflow","type":"string"},"visibility":{"additionalProperties":false,"properties":{"access":{"anyOf":[{"additionalProperties":false,"properties":{"gates":{"items":{"type":"string"},"type":"array"},"operator":{"enum":["HAS_ALL","HAS_ANY","HAS_NONE"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operator"],"type":"object"},{"type":"null"}]},"controlling_field":{"type":["string","null"]},"controlling_field_path":{"type":["string","null"]},"controlling_value_regex":{"type":["string","null"]},"hidden_subfields":{"anyOf":[{"additionalProperties":{"type":"boolean"},"type":"object"},{"type":"null"}]},"operator":{"enum":["NOT_EQUAL","EQUAL","EMPTY","NOT_EMPTY","MATCHES_REGEX",null],"type":["string","null"]}},"type":"object"},"visibility_rules":{"enum":["SIMPLE","ADVANCED"],"type":"string"}},"type":"object"}},"items":{"oneOf":[{"properties":{"type":{"const":"alignment","type":"string","markdownDescription":"Enables content creators to position an element within a container. To enable text alignment, use the [text alignment field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#text-alignment) instead.\n\nAlignment fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules) and can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/AlignmentFieldType"}]},{"properties":{"type":{"const":"audioplayer","type":"string"}},"allOf":[{"$ref":"#/definitions/AudioFieldType"}]},{"properties":{"type":{"const":"backgroundimage","type":"string","markdownDescription":"This field provides a background image field which has subfields for background position and background size. Background image fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nBackground Image fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules) and can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/BackgroundImageFieldType"}]},{"properties":{"type":{"const":"blog","type":"string","markdownDescription":"This field provides a way for content editors to select a blog, providing you, the developer the blog's id. This is useful for situations like pulling teaser information for featured blogs in modules. You can use the blog id in blog-related [HubL functions](https://developers.hubspot.com/docs/cms/hubl/functions) to get information like [blog authors](https://developers.hubspot.com/docs/cms/hubl/functions#blog-authors), [recent blog posts](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-posts), [recent blog posts with a specific tag](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-tag-posts), and more.\n\nBlog fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/BlogFieldType"}]},{"properties":{"type":{"const":"boolean","type":"string","markdownDescription":"This field provides a way for content editors to enable/disable functionality. Booleans can only be `true` or `false`. Often it makes sense to make groups or fields conditional based on boolean fields. If you think you might need to provide more than two states down the road, a Choice field may be a better option as you can grow into that with less effort should needs change later.\n\nBoolean fields are supported in both themes and modules.\nBoolean fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/BooleanFieldType"}]},{"properties":{"type":{"const":"border","type":"string","markdownDescription":"This field provides content creators a user interface for creating a border around an element. Border fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nBorder fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules).\nBorder fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/BorderFieldType"}]},{"properties":{"type":{"const":"choice","type":"string","markdownDescription":"Choice fields allow a content creator to select one or more items from a list of options, either within a dropdown menu, radio select, or checkboxes.\n\nThe options for a choice field can have separate labels for their values. After a module's been used in a page, the option labels can be modified without impacting sites, since the value is still the same. Changing the value, however, and any modules that previously had that value will become disassociated.\n\nChoice fields are supported in both themes and modules. Choice fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/ChoiceFieldType"}]},{"properties":{"type":{"const":"color","type":"string","markdownDescription":"Color fields provide a color picker interface for content creators. They support solid colors as well as transparency. They are a perfect choice for when you want to give content creators full control over colors within a module.\n\nBy default, the opacity input of a color field is hidden for email modules, as some email clients don't respect opacity rules. You can reveal the opacity field for email modules by setting `show_opacity` to `true`.\n\nColor fields are supported in both themes and modules.Color fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)"}},"allOf":[{"$ref":"#/definitions/ColorFieldType"}]},{"properties":{"type":{"const":"crmobject","type":"string","markdownDescription":"CRM object fields provide a way for users to pick an individual instance of a CRM object to display.\n\n`module.fieldname.properties` returns the properties fetched from this object instance. This makes it so you don't need to use the `crm_object()` function to get the data for the selected object instance.\n\n`module.fieldname.id` returns the object instance id.\n\nCRM object fields are supported in modules.\nCRM object fields are available in CMS Hub _Professional_ and _Enterprise_."}},"allOf":[{"$ref":"#/definitions/CrmObjectFieldType"}]},{"properties":{"type":{"const":"crmobjectproperty","type":"string","markdownDescription":"Use the CRM object property field to access property metadata, such as the label and property name, from a specified object type. This enables content creators to select from object properties when needing to display property details on a page.\n\nFor example, you could add this field to a custom table module to populate table headings based on the selected properties.\n\nCRM object fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/CrmObjectPropertyFieldType"}]},{"properties":{"type":{"const":"cta","type":"string","markdownDescription":"Call-To-Action (CTA) fields provide a way for users to pick a CTA to display. CTA's are essentially trackable buttons or links. Content creators [create CTAs](https://knowledge.hubspot.com/ctas/create-calls-to-action-ctas) that can be used throughout a site.\n\nCTA fields are supported in modules.\nCTA fields are available in CMS Hub _Professional_ and _Enterprise_."}},"allOf":[{"$ref":"#/definitions/CtaFieldType"}]},{"properties":{"type":{"const":"date","type":"string","markdownDescription":"Date fields provide a date picker interface to make it easy for content creators to select a date. Returns a timestamp you can use in your code.\n\nDate fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/DateFieldType"}]},{"properties":{"type":{"const":"datetime","type":"string"}},"allOf":[{"$ref":"#/definitions/DateTimeFieldType"}]},{"properties":{"type":{"const":"email","type":"string","markdownDescription":"Email address fields allow a user to select multiple email addresses. This could be used for displaying contact information. The email field returns an array of selected email addresses you can loop through.\n\nEmail fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/EmailFieldType"}]},{"properties":{"type":{"const":"embed","type":"string","markdownDescription":"Embed fields allow the user to add a URL from an [oEmbed-enabled site](https://oembed.com/#section7) or paste in an embed code from another site. To learn more about oEmbed usage on HubSpot, and see use cases, visit our [oEmbed document](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields/oembed)."}},"allOf":[{"$ref":"#/definitions/EmbedFieldType"}]},{"properties":{"type":{"const":"file","type":"string","markdownDescription":"File fields allow the user to upload a file to the file manager, or document manager, and make it easy to attach items that are in those locations. This can be useful for linking out to PDF files or files of other formats. For displaying images on a page you should use the image field.\n\nFile fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/FileFieldType"}]},{"properties":{"type":{"const":"followupemail","type":"string"}},"allOf":[{"$ref":"#/definitions/FollowUpEmailFieldType"}]},{"properties":{"type":{"const":"font","type":"string","markdownDescription":"Font fields provide content creators basic font styling controls. Content creators can choose the size, color, font family, and the format (bold, italic, and underlined). The listed fonts are all standard web-safe fonts. These fonts are sourced from [Google Fonts](https://fonts.google.com/) but served by HubSpot directly on the domain that the page loads on.\n\nFont fields are supported in both themes and modules. Font fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/FontFieldType"}]},{"properties":{"type":{"const":"form","type":"string","markdownDescription":"Form fields allow a content creator to designate a form in their account. You can then use this to render a form to a page using the [HubL form tag](https://developers.hubspot.com/docs/cms/hubl/tags#form).\n\nForm fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/FormFieldType"}]},{"properties":{"type":{"const":"gradient","type":"string","markdownDescription":"This field provides a way for content creators to create and configure gradients. At this time linear gradients support up to 5 color stops. Gradient fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nGradient fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules). Gradient fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/GradientFieldType"}]},{"properties":{"type":{"const":"group","type":"string","markdownDescription":"When fields are related to each other often it makes sense for them to be displayed visually grouped. Modules and Themes support grouping multiple fields together. Field group objects can be listed as children of other field groups, their structure is very similar to field's themselves with the only special parameter being the 'children' parameter, which is an array of fields and groups they contain."}},"allOf":[{"$ref":"#/definitions/GroupFieldType"}]},{"properties":{"type":{"const":"html","type":"string"}},"allOf":[{"$ref":"#/definitions/HtmlFieldType"}]},{"properties":{"type":{"const":"hubdbrow","type":"string","markdownDescription":"HubDB Row fields allow a content creator to select an individual row (or rows if using repeater fields) from a defined table. You can then use this field to create user-defined lists, tables, resources, and more.\n\nHubDB Row fields are supported in modules.\nHubDB Row fields are available in CMS Hub _Professional_ and _Enterprise_."}},"allOf":[{"$ref":"#/definitions/HubDbRowFieldType"}]},{"properties":{"type":{"const":"hubdbtable","type":"string","markdownDescription":"HubDB Table fields allow a content creator to designate a HubDB in their account. You can then use this to render a form to a page using the [HubL form tag](https://developers.hubspot.com/docs/cms/hubl/tags#form). Returns the table id, which you can use with the [HubDB HubL functions](https://developers.hubspot.com/docs/cms/data/hubdb#access-hubdb-data-using-hubl).\n\nHubDB Table fields are supported in modules. HubDB Table fields are available in **CMS Hub**_Professional_ and _Enterprise_."}},"allOf":[{"$ref":"#/definitions/HubDbTableFieldType"}]},{"properties":{"type":{"const":"hubl","type":"string"}},"allOf":[{"$ref":"#/definitions/HublFieldType"}]},{"properties":{"type":{"const":"icon","type":"string","markdownDescription":"Icon fields provide an icon picker UI to make it easier for content creators to add icons to your modules. The Icon field is preloaded with FontAwesome Icons.\n\nIcon fields are supported in modules. Icon fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/IconFieldType"}]},{"properties":{"type":{"const":"image","type":"string","markdownDescription":"Image fields provide an easy interface for content creators to add images to a module or theme. Image fields provide a file picker interface that lists images from the File Manager. Since images can be used and displayed in different ways, developers can limit the sizing options available to the content creator in the UI as well as allow for [lazy-loading of images](https://developers.hubspot.com/docs/cms/lazy-loading)."}},"allOf":[{"$ref":"#/definitions/ImageFieldType"}]},{"properties":{"type":{"const":"link","type":"string","markdownDescription":"Link fields provide an easy interface for content creators to provide links to URLs and email addresses. For external links, content creators choose 'external'. For email links 'email address'. Finally for content hosted on the HubSpot CMS they can use 'content' which shows a list of all pages and blog posts in the account, file showing file assets, and blog, showing all of the blog listings in the account. Link fields are very similar to URL fields except for the key difference that they provide a UI for 'open in new window' and 'tell search engines not to follow'. If you do not want content creators to have that control use the [URL field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#url).\n\nLink fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/LinkFieldType"}]},{"properties":{"type":{"const":"logo","type":"string","markdownDescription":"Logo fields provide a way for content creators to specify logo images to use in a page, defaulting to the domain's logo. This is useful for site headers and footers that may contain the company logo. Logo fields also allow for [lazy loading](https://developers.hubspot.com/docs/cms/lazy-loading).\n\nLogo fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/LogoFieldType"}]},{"properties":{"type":{"const":"meeting","type":"string"}},"allOf":[{"$ref":"#/definitions/MeetingFieldType"}]},{"properties":{"type":{"const":"menu","type":"string"}},"allOf":[{"$ref":"#/definitions/MenuFieldType"}]},{"properties":{"type":{"const":"number","type":"string","markdownDescription":"Number fields provide an easy interface for content creators to enter in or adjust numerical values and options. This can be used for creating percentage based items or anything where numbers are needed for input.\n\nNumber fields are supported in modules. Number fields can be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/NumberFieldType"}]},{"properties":{"type":{"const":"page","type":"string","markdownDescription":"Page fields provide an interface for content creators to select site pages and landing pages.\n\nThe value returned by a page field is the page id of the selected page. When used in tandem with the [content_by_id](https://developers.hubspot.com/docs/cms/hubl/functions#content-by-id) or [content_by_ids](https://developers.hubspot.com/docs/cms/hubl/functions#content-by-ids) functions, you can use data from the selected pages in the current page.\n\nPage fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/PageFieldType"}]},{"properties":{"type":{"const":"payment","type":"string"}},"allOf":[{"$ref":"#/definitions/PaymentFieldType"}]},{"properties":{"type":{"const":"richtext","type":"string","markdownDescription":"Rich Text fields provide content creators with a WYSIWYG text editor experience. When a rich text field's value is printed it is printed as HTML. When you do not want content creators to have formatting capabilities use [text fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#text).\n\nRich text fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/RichTextFieldType"}]},{"properties":{"type":{"const":"salesforcecampaign","type":"string"}},"allOf":[{"$ref":"#/definitions/SfdcCamapaignFieldType"}]},{"properties":{"type":{"const":"simplemenu","type":"string","markdownDescription":"Simple menu fields provide an easy interface for content creators to create a [navigation menu](https://developers.hubspot.com/docs/cms/building-blocks/menus-and-navigation) that is not re-usable on other pages. For menus that should be reusable, use the [menu field](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#menu). A time you may want this is for a table of contents menu that links to headings on very long pages, or a list of links to content that only makes sense to have on the current page.\n\nSimple menu fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/SimpleMenuFieldType"}]},{"properties":{"type":{"const":"spacing","type":"string","markdownDescription":"This field provides a user interface (UI) for content creators to set padding and margin. Spacing fields have a `.css` property that returns CSS based on the field's value. [Learn more about the generated CSS property.](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#generated-css)\n\nSpacing fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules).\nSpacing fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/SpacingFieldType"}]},{"properties":{"type":{"const":"survey","type":"string"}},"allOf":[{"$ref":"#/definitions/SurveyFieldType"}]},{"properties":{"type":{"const":"tag","type":"string","markdownDescription":"Tag fields provide a blog tag picker for content creators. This tag picker returns a blog tag id which can then be used in blog tag related functions such as [Blog Tag URL](https://developers.hubspot.com/docs/cms/hubl/functions#blog-tag-url) and [Blog Recent Tag Posts](https://developers.hubspot.com/docs/cms/hubl/functions#blog-recent-tag-posts).\n\nTag fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/TagFieldType"}]},{"properties":{"type":{"const":"textalignment","type":"string","markdownDescription":"This field provides content creators a way to align text content within a container. This should not be used for aligning other assets as there is a [field type specifically for that](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#alignment).\n\nText alignment fields are supported in [modules](https://developers.hubspot.com/docs/cms/building-blocks/modules). Text alignment fields can only be used as [style fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields-overview#style-fields)."}},"allOf":[{"$ref":"#/definitions/TextAlignmentFieldType"}]},{"properties":{"type":{"const":"text","type":"string","markdownDescription":"Text fields provide content creators a simple text editing experience with no rich text functionality. Text fields initially show as a single line, but can actually expand to be textareas, supporting multiple lines. Use these when you do not want content creators to have control over formatting. If you do want to provide formatting controls use [rich text fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#rich-text).\n\nText fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/TextFieldType"}]},{"properties":{"type":{"const":"url","type":"string","markdownDescription":"URL fields provide a similar experience to link fields. Providing a UI for content creators to add links. URL fields, however, do not show a UI for open in a new window, nor tell search engines not to follow. Use this field when you as a developer want to dictate the values for that. If you want the user to have control, use [link fields](https://developers.hubspot.com/docs/cms/building-blocks/module-theme-fields#link) instead.\n\nURL fields are supported in modules."}},"allOf":[{"$ref":"#/definitions/UrlFieldType"}]},{"properties":{"type":{"const":"videoplayer","type":"string","markdownDescription":"Video fields provide content editors with a place to add HubSpot Video to their module content without the need of using rich text fields."}},"allOf":[{"$ref":"#/definitions/VideoFieldType"}]},{"properties":{"type":{"const":"workflow","type":"string"}},"allOf":[{"$ref":"#/definitions/WorkflowFieldType"}]}]},"type":"array"}