@orangelogic/design-system 4.2.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/library/chunks/{_baseXor.DixEm6JQ.js → _baseXor.BCxbgizO.js} +2 -2
  2. package/library/chunks/{asset-link-format.CVwjA_yf.js → asset-link-format.C5Ue4EGP.js} +37 -36
  3. package/library/chunks/{button.D1YIxtv-.js → button.DbAUlIXG.js} +3 -3
  4. package/library/chunks/button.styles.D3GdfF7I.js +5 -0
  5. package/library/chunks/{color-swatch-group.BPXiMxjh.js → color-swatch-group.B10yWbVM.js} +3279 -2903
  6. package/library/chunks/color.CIHdfM_a.js +187 -0
  7. package/library/chunks/{confirm-popover.CJXyEa5A.js → confirm-popover.Cd4HM5-B.js} +4 -4
  8. package/library/chunks/content-builder.CBBdfVOl.js +55 -0
  9. package/library/chunks/{dialog.BbQ4Du0M.js → dialog.CXphbq8N.js} +2 -2
  10. package/library/chunks/{document-viewer.DtBW-p7z.js → document-viewer.B_ESlazf.js} +10 -9
  11. package/library/chunks/{dom.DL-cNKsj.js → dom.D0lSUoEI.js} +1 -1
  12. package/library/chunks/{dot-pagination.CJRAtM51.js → dot-pagination.CzT-MZmt.js} +1 -1
  13. package/library/chunks/{folder-select.BAPsI-gg.js → folder-select.BWeanVkA.js} +5 -5
  14. package/library/chunks/form-control.styles.CHC7Q08Q.js +5 -0
  15. package/library/chunks/{form.DN2v7-DH.js → form.LpappO1d.js} +1 -1
  16. package/library/chunks/{header.BioJzPlg.js → header.Dy57RuQW.js} +132 -90
  17. package/library/chunks/{i18n.rtxrs1c1.js → i18n.Q5_2aVLU.js} +93 -12
  18. package/library/chunks/{icon-button.CbUddcgI.js → icon-button.BjAbCuH8.js} +1 -1
  19. package/library/chunks/{iframe.y7iCAVZP.js → iframe.CdktjPCB.js} +1 -1
  20. package/library/chunks/{image.A2hE1WoV.js → image.CCo__54F.js} +322 -222
  21. package/library/chunks/index.DiZGZkHv.js +1126 -0
  22. package/library/chunks/{input.D1FFprPl.js → input.ftEf4GS6.js} +3 -3
  23. package/library/chunks/{markdown.Dd_GFJK8.js → markdown.RljldBNb.js} +3 -3
  24. package/library/chunks/{menu-item.CbqZ66to.js → menu-item.BNs1Ji48.js} +1 -1
  25. package/library/chunks/{option.CkhHTlpl.js → option.C8IEnv5Q.js} +1 -1
  26. package/library/chunks/{pagination.BlQRt932.js → pagination.Bke9vgl4.js} +6 -6
  27. package/library/chunks/{position-picker.DjnhxIKF.js → position-picker.qkbJlboF.js} +12 -0
  28. package/library/chunks/responsive.BmBJSzC4.js +17 -0
  29. package/library/chunks/{string.Demn8Xmk.js → string.CfI2ejyR.js} +3 -3
  30. package/library/chunks/{tab-group.CQfcMVEw.js → tab-group.DZ32f41G.js} +312 -310
  31. package/library/chunks/toast.D3AW3RWv.js +94 -0
  32. package/library/chunks/transformation.Dm-pK2ft.js +352 -0
  33. package/library/chunks/{tree.B7IKBX3n.js → tree.Umn7TAkc.js} +1 -1
  34. package/library/chunks/{types.MwUT4xFk.js → types.BW36Gr9c.js} +77051 -54471
  35. package/library/chunks/typography.BLYdTF0n.js +102 -0
  36. package/library/components/alert.js +2 -2
  37. package/library/components/asset-link-format.js +6 -6
  38. package/library/components/atoms.js +161 -159
  39. package/library/components/audio.js +3 -3
  40. package/library/components/bicolor-picker.js +2 -2
  41. package/library/components/border-input-group.js +2 -2
  42. package/library/components/box.d.ts +3 -0
  43. package/library/components/box.js +22 -0
  44. package/library/components/breadcrumb.js +1 -1
  45. package/library/components/button.js +4 -4
  46. package/library/components/card.js +7 -7
  47. package/library/components/checkbox.js +2 -2
  48. package/library/components/color-picker.js +36 -32
  49. package/library/components/color-swatch-group.js +8 -7
  50. package/library/components/color-swatch.js +246 -22
  51. package/library/components/confirm-popover.js +5 -5
  52. package/library/components/copy-button.js +2 -2
  53. package/library/components/corner-position-input-group.js +3 -3
  54. package/library/components/date-calendar.js +1 -1
  55. package/library/components/details.js +19 -19
  56. package/library/components/dialog.js +3 -3
  57. package/library/components/diff.js +1 -1
  58. package/library/components/document-viewer.js +4 -4
  59. package/library/components/dot-pagination.js +2 -2
  60. package/library/components/drawer.js +2 -2
  61. package/library/components/dropdown.js +2 -2
  62. package/library/components/dynamic-select.js +95 -92
  63. package/library/components/e-chart.js +1 -1
  64. package/library/components/element-clamp.js +2 -2
  65. package/library/components/file-on-demand.js +12 -12
  66. package/library/components/folder-select.js +5 -5
  67. package/library/components/format-bytes.js +1 -1
  68. package/library/components/format-date.js +1 -1
  69. package/library/components/format-number.js +1 -1
  70. package/library/components/format-time.js +1 -1
  71. package/library/components/header.js +6 -3
  72. package/library/components/icon-button.js +2 -2
  73. package/library/components/iframe.js +2 -2
  74. package/library/components/image-comparer.js +1 -1
  75. package/library/components/image.js +4 -3
  76. package/library/components/input-group.js +1 -1
  77. package/library/components/input.js +4 -4
  78. package/library/components/line-clamp.js +1 -1
  79. package/library/components/markdown.js +4 -4
  80. package/library/components/masonry.js +70 -56
  81. package/library/components/menu-item.js +2 -2
  82. package/library/components/menu.js +2 -2
  83. package/library/components/molecules.js +4 -4
  84. package/library/components/mutation-observer.js +25 -23
  85. package/library/components/option.js +2 -2
  86. package/library/components/organisms.js +2 -2
  87. package/library/components/padding-input-group.js +1 -1
  88. package/library/components/pagination.js +7 -7
  89. package/library/components/popup.js +1 -1
  90. package/library/components/position-picker.js +2 -2
  91. package/library/components/progress-bar.js +1 -1
  92. package/library/components/progress-ring.js +1 -1
  93. package/library/components/radio-button.js +1 -1
  94. package/library/components/radio-card.js +1 -1
  95. package/library/components/radio-group.js +2 -2
  96. package/library/components/range.js +3 -3
  97. package/library/components/rating.js +1 -1
  98. package/library/components/relative-time.js +1 -1
  99. package/library/components/select.js +5 -5
  100. package/library/components/shadow-input-group.js +1 -1
  101. package/library/components/share-option-list.js +3 -3
  102. package/library/components/sidebar.js +1 -1
  103. package/library/components/size-input-group.js +3 -3
  104. package/library/components/spinner.js +1 -1
  105. package/library/components/split-panel.js +1 -1
  106. package/library/components/switch.js +2 -2
  107. package/library/components/tab-group.js +6 -6
  108. package/library/components/tab-panel.js +1 -1
  109. package/library/components/tab.js +16 -16
  110. package/library/components/tag.js +2 -2
  111. package/library/components/textarea.js +2 -2
  112. package/library/components/timecode.js +2 -2
  113. package/library/components/tooltip.js +1 -1
  114. package/library/components/tree-item.js +2 -2
  115. package/library/components/tree.js +2 -2
  116. package/library/components/typeface.js +3 -3
  117. package/library/components/types.js +496 -487
  118. package/library/components/typography.js +3 -2
  119. package/library/components/video.js +4231 -4210
  120. package/library/css/ol-base.css +1 -0
  121. package/library/package.json +1 -1
  122. package/library/packages/atoms/src/components/box/box.d.ts +26 -0
  123. package/library/packages/atoms/src/components/box/box.styles.d.ts +7 -0
  124. package/library/packages/atoms/src/components/button/button.d.ts +4 -0
  125. package/library/packages/atoms/src/components/card/card.d.ts +1 -0
  126. package/library/packages/atoms/src/components/color-picker/color-picker.d.ts +11 -0
  127. package/library/packages/atoms/src/components/copy-button/copy-button.d.ts +1 -0
  128. package/library/packages/atoms/src/components/details/details.d.ts +6 -1
  129. package/library/packages/atoms/src/components/header/header.d.ts +38 -2
  130. package/library/packages/atoms/src/components/image/image.d.ts +14 -0
  131. package/library/packages/atoms/src/components/mutation-observer/mutation-observer.d.ts +1 -1
  132. package/library/packages/atoms/src/components/radio-card/radio-card.d.ts +1 -0
  133. package/library/packages/atoms/src/components/tab/tab.d.ts +17 -0
  134. package/library/packages/atoms/src/components/typography/typography.d.ts +31 -0
  135. package/library/packages/atoms/src/components/video/video.d.ts +18 -0
  136. package/library/packages/atoms/src/index.d.ts +1 -0
  137. package/library/packages/events/src/cx-color-swatch-picker-columns-change.d.ts +15 -0
  138. package/library/packages/events/src/events.d.ts +1 -0
  139. package/library/packages/hybrid/table-core/src/table/table.d.ts +10 -1
  140. package/library/packages/molecules/src/color-swatch/color-swatch.d.ts +35 -1
  141. package/library/packages/molecules/src/data-tab-group/data-tab-group.d.ts +30 -1
  142. package/library/packages/molecules/src/details-group/details-group.d.ts +105 -3
  143. package/library/packages/molecules/src/dynamic-select/dynamic-select.d.ts +5 -0
  144. package/library/packages/molecules/src/font-picker/font-picker.d.ts +3 -0
  145. package/library/packages/molecules/src/gallery-item/gallery-item.d.ts +10 -0
  146. package/library/packages/molecules/src/index.d.ts +0 -1
  147. package/library/packages/molecules/src/masonry/masonry.d.ts +5 -0
  148. package/library/packages/organisms/src/color-swatch-group/color-swatch-group.constants.d.ts +37 -45
  149. package/library/packages/organisms/src/color-swatch-group/color-swatch-group.d.ts +210 -10
  150. package/library/packages/organisms/src/content-builder/blocks/font-kit-advanced/font-kit-advanced.utils.d.ts +85 -0
  151. package/library/packages/organisms/src/content-builder/blocks/image/image.d.ts +22 -6
  152. package/library/packages/organisms/src/content-builder/components/block-picker/block-picker.d.ts +24 -8
  153. package/library/packages/organisms/src/content-builder/components/color-swatch-picker/color-swatch-picker.d.ts +70 -1
  154. package/library/packages/organisms/src/content-builder/components/config-form/config-form-controller.d.ts +1 -22
  155. package/library/packages/organisms/src/content-builder/components/config-manager/config-manager.d.ts +7 -0
  156. package/library/packages/organisms/src/content-builder/components/gallery-config/gallery-config.d.ts +6 -0
  157. package/library/packages/organisms/src/content-builder/components/gallery-picker/gallery-picker.d.ts +1 -0
  158. package/library/packages/organisms/src/content-builder/configs/accordion.d.ts +7 -0
  159. package/library/packages/organisms/src/content-builder/configs/audio.d.ts +1 -0
  160. package/library/packages/organisms/src/content-builder/configs/button.d.ts +2 -1
  161. package/library/packages/organisms/src/content-builder/configs/carousel.d.ts +11 -1
  162. package/library/packages/organisms/src/content-builder/configs/color-swatches.d.ts +19 -1
  163. package/library/packages/organisms/src/content-builder/configs/column-group.d.ts +11 -2
  164. package/library/packages/organisms/src/content-builder/configs/column.d.ts +13 -3
  165. package/library/packages/organisms/src/content-builder/configs/dam-view.d.ts +1 -0
  166. package/library/packages/organisms/src/content-builder/configs/divider.d.ts +1 -0
  167. package/library/packages/organisms/src/content-builder/configs/document-viewer.d.ts +1 -0
  168. package/library/packages/organisms/src/content-builder/configs/font-kit-advanced.d.ts +19 -0
  169. package/library/packages/organisms/src/content-builder/configs/font-kit.d.ts +2 -0
  170. package/library/packages/organisms/src/content-builder/configs/gallery.d.ts +15 -1
  171. package/library/packages/organisms/src/content-builder/configs/header.d.ts +2 -0
  172. package/library/packages/organisms/src/content-builder/configs/image.d.ts +2 -0
  173. package/library/packages/organisms/src/content-builder/configs/index.d.ts +1 -0
  174. package/library/packages/organisms/src/content-builder/configs/search-box.d.ts +5 -1
  175. package/library/packages/organisms/src/content-builder/configs/tab-group.d.ts +7 -4
  176. package/library/packages/organisms/src/content-builder/configs/timeline.d.ts +1 -0
  177. package/library/packages/organisms/src/content-builder/configs/video.d.ts +3 -0
  178. package/library/packages/organisms/src/content-builder/configs-controller.d.ts +155 -13
  179. package/library/packages/organisms/src/content-builder/content-builder-config.d.ts +60 -0
  180. package/library/packages/organisms/src/content-builder/content-builder-constants.d.ts +27 -0
  181. package/library/packages/organisms/src/content-builder/content-builder.d.ts +122 -2
  182. package/library/packages/organisms/src/content-builder/content-builder.sections.utils.d.ts +78 -0
  183. package/library/packages/organisms/src/content-builder/content-builder.utils.d.ts +33 -2
  184. package/library/packages/organisms/src/content-builder/plugins/font-kit-advanced.d.ts +5 -0
  185. package/library/packages/organisms/src/content-builder/plugins/gallery.d.ts +6 -0
  186. package/library/packages/organisms/src/content-builder/plugins/header.d.ts +7 -1
  187. package/library/packages/organisms/src/content-builder/plugins/index.d.ts +2 -1
  188. package/library/packages/organisms/src/content-builder/plugins/rich-text-editor/components/rte-bubble-menu/rte-bubble-menu.d.ts +21 -1
  189. package/library/packages/organisms/src/content-builder/plugins/rich-text-editor/extensions/index.d.ts +2 -0
  190. package/library/packages/organisms/src/content-builder/plugins/rich-text-editor/rte-configs.d.ts +14 -0
  191. package/library/packages/organisms/src/content-builder/plugins/sections/section-fragment-component.d.ts +22 -0
  192. package/library/packages/organisms/src/content-builder/plugins/sections/section-host-mounting.d.ts +15 -0
  193. package/library/packages/organisms/src/content-builder/plugins/sections/sections-canvas-patches.d.ts +20 -0
  194. package/library/packages/organisms/src/content-builder/plugins/sections/sections-plugin.d.ts +7 -0
  195. package/library/packages/organisms/src/content-builder/plugins/toolbar.d.ts +10 -1
  196. package/library/packages/organisms/src/content-builder/plugins/utils/block-width.d.ts +20 -0
  197. package/library/packages/organisms/src/content-builder/styleController.d.ts +9 -5
  198. package/library/packages/organisms/src/content-builder-viewer/content-builder-viewer.d.ts +1 -0
  199. package/library/packages/organisms/src/form/control-renderer/control-renderer.d.ts +170 -0
  200. package/library/packages/organisms/src/form/control-renderer/control-renderer.styles.d.ts +9 -0
  201. package/library/packages/organisms/src/list-editor/list-editor.d.ts +181 -6
  202. package/library/packages/tools/src/tiptap/extensions/metafield/index.d.ts +12 -0
  203. package/library/packages/tools/src/tiptap/utils/md/schema.d.ts +1 -1
  204. package/library/packages/types/src/asset-link-format.d.ts +0 -1
  205. package/library/packages/types/src/button.d.ts +1 -1
  206. package/library/packages/types/src/color-swatch-group.d.ts +56 -0
  207. package/library/packages/types/src/color-swatch.d.ts +22 -0
  208. package/library/packages/types/src/column.d.ts +13 -0
  209. package/library/packages/types/src/content-builder.d.ts +69 -4
  210. package/library/packages/types/src/details-group.d.ts +80 -0
  211. package/library/packages/types/src/font-kit-advanced.d.ts +28 -0
  212. package/library/packages/types/src/font-kit.d.ts +19 -0
  213. package/library/packages/types/src/font-picker.d.ts +2 -0
  214. package/library/packages/types/src/gallery-item.d.ts +3 -1
  215. package/library/packages/types/src/gallery.d.ts +2 -1
  216. package/library/packages/types/src/index.d.ts +1 -0
  217. package/library/packages/types/src/masonry.d.ts +1 -0
  218. package/library/packages/types/src/position-picker.d.ts +6 -0
  219. package/library/packages/types/src/sb-button.d.ts +7 -0
  220. package/library/packages/types/src/search-box.d.ts +4 -0
  221. package/library/packages/utils/src/color/color.d.ts +27 -3
  222. package/library/packages/utils/src/custom-element/i18n.d.ts +85 -0
  223. package/library/packages/utils/src/font/font.d.ts +12 -0
  224. package/library/packages/utils/src/transformation/transformation.d.ts +11 -3
  225. package/library/react-web-component.d.ts +510 -156
  226. package/library/utils.js +415 -395
  227. package/package.json +1 -1
  228. package/library/chunks/button.styles.BWgHrfLD.js +0 -5
  229. package/library/chunks/color-swatch.DdsUysbF.js +0 -223
  230. package/library/chunks/color.LzSGBy7o.js +0 -164
  231. package/library/chunks/form-control.styles.CaGWmeAS.js +0 -5
  232. package/library/chunks/index.BO_sT6SH.js +0 -20123
  233. package/library/chunks/toast.BOkYwUIj.js +0 -109
  234. package/library/chunks/transformation.B8m0Nbao.js +0 -384
  235. package/library/chunks/typography.T72DuoCa.js +0 -52
  236. package/library/packages/molecules/src/search-box/search-box.d.ts +0 -114
  237. package/library/packages/organisms/src/content-builder/plugins/wrapper-container.d.ts +0 -15
  238. /package/library/packages/{molecules/src/search-box/search-box.styles.d.ts → organisms/src/content-builder-viewer/content-builder-viewer.styles.d.ts} +0 -0
@@ -0,0 +1,85 @@
1
+ import { FontOutlinesFormat, Typeface } from '../../../../../types/src/font-kit';
2
+ import { FontFamily } from '../../../../../types/src/font-picker';
3
+
4
+ /** The parsed tables `toFontStyleAxis` reads, shaped as opentype.js exposes them. */
5
+ type FontStyleTables = {
6
+ head?: {
7
+ macStyle?: number;
8
+ };
9
+ os2?: {
10
+ fsSelection?: number;
11
+ };
12
+ post?: {
13
+ italicAngle?: number;
14
+ };
15
+ };
16
+ /**
17
+ * Maps a typeface's style name onto the CSS font-style axis. `fontStyle` may
18
+ * hold a subfamily name such as `Bold Italic`, which is not a valid CSS
19
+ * font-style; the numeric weight carries the rest.
20
+ */
21
+ export declare function toCssFontStyle(fontStyle: string): 'italic' | 'normal';
22
+ /**
23
+ * opentype.js types `outlinesFormat` as a bare `string`; anything unrecognized
24
+ * resolves to `undefined` so the token stays empty rather than guessing.
25
+ */
26
+ export declare function toFontOutlinesFormat(outlinesFormat: string | undefined): FontOutlinesFormat | undefined;
27
+ /**
28
+ * A font with no OS/2 table, or a malformed value, resolves to `undefined` so
29
+ * the token stays empty instead of naming a width the file never declared.
30
+ */
31
+ export declare function toFontWidthClass(usWidthClass: unknown): number | undefined;
32
+ /**
33
+ * Reads the italic axis from the flags the font declares rather than from its
34
+ * subfamily name, which misses `Oblique` and anything not named in English.
35
+ * `fsSelection` is the authoritative one, `macStyle` its older duplicate, and
36
+ * a non-zero `italicAngle` catches a slanted face whose flags were never set.
37
+ * The name is used only when the font carries neither table.
38
+ */
39
+ export declare function toFontStyleAxis(tables: FontStyleTables | undefined, fontSubfamily: string): 'italic' | 'normal';
40
+ /** `italic` → `Italic`; anything off the axis passes through. */
41
+ export declare function getFontStyleName(fontStyle: string): string;
42
+ /**
43
+ * Returns the readable name for a numeric font weight (e.g. `700` → `Bold`),
44
+ * falling back to the raw value for non-standard weights.
45
+ */
46
+ export declare function getFontWeightName(fontWeight: string): string;
47
+ /**
48
+ * The kit's variants as font-picker options, for the "font kit default" entry.
49
+ * Deduped by weight and style: a kit built from several families holds the
50
+ * same face more than once, and the family is irrelevant here because the
51
+ * entry deliberately stores none.
52
+ */
53
+ export declare function toContainerFontVariants(variants: Typeface[]): FontFamily[];
54
+ /** Variants resolved without a font file carry no width class. */
55
+ export declare function getFontWidthName(fontWidthClass: number | undefined): string;
56
+ /** Variants resolved without a font file carry no outline format. */
57
+ export declare function getFileFormatName(fontOutlinesFormat: FontOutlinesFormat | undefined): string;
58
+ /**
59
+ * Replaces the supported `${token}` placeholders in a text with the given
60
+ * variant's values. Unknown tokens are left literal.
61
+ */
62
+ export declare function resolveTokens(text: string, variant: Typeface): string;
63
+ /**
64
+ * Resolves the supported `${token}` placeholders in every text node of a
65
+ * cloned row against the given variant.
66
+ */
67
+ export declare function resolveTokensInTree(root: HTMLElement, variant: Typeface): void;
68
+ /**
69
+ * Collects the CSS rules of the document that target elements inside the given
70
+ * blocks (the template row and the divider). GrapesJS writes per-block config
71
+ * styles as `#<component-id>` rules (and block-template styles as
72
+ * `.cls-<template-id>` rules) into the page stylesheet; those rules cannot
73
+ * reach the clones inside the component's shadow root, so the matching ones
74
+ * are re-injected next to the clones.
75
+ */
76
+ export declare function collectBlockCssRules(roots: HTMLElement[]): string;
77
+ /**
78
+ * Strips editor-only attributes (GrapesJS type markers, contenteditable) from
79
+ * a cloned row element and all of its descendants so the clone is inert,
80
+ * presentation-only DOM. The slot assignment is removed from the clone's root
81
+ * only, since the clone lives in the shadow DOM instead of a named slot;
82
+ * nested slot assignments (children of inner blocks) stay intact.
83
+ */
84
+ export declare function sanitizeClone(clone: HTMLElement): void;
85
+ export {};
@@ -186,14 +186,14 @@ export default class CxSbImage extends CxImage {
186
186
  */
187
187
  private assetFileSize;
188
188
  /**
189
- * Whether an asset fetch has reported back for the current record.
189
+ * The record id the cached extension, file size and proxy width describe.
190
190
  *
191
- * Tracked separately from `assetExtension` because "no extension" is a legitimate
192
- * answer a missing asset or a record without the field both yield an empty string.
193
- * Gating on the empty string alone would hold `srcset` back forever in those cases;
194
- * gating on this flag releases it as soon as the answer is in, whatever it says.
191
+ * An identity rather than a flag because `currentRecordId` also changes on a theme
192
+ * switch, which alters no watched property: the light record's answer would otherwise
193
+ * stay marked resolved and release `.auto` for the dark record before its own
194
+ * extension lands, flattening a dark animated GIF. Empty until the first answer.
195
195
  */
196
- private hasResolvedAssetExtension;
196
+ private resolvedExtensionRecordId;
197
197
  /**
198
198
  * Space list supplied by `cx-content-builder-viewer`, which fetches it once per
199
199
  * surface. The only source — this block never fetches the list itself.
@@ -235,6 +235,22 @@ export default class CxSbImage extends CxImage {
235
235
  * consumer — the transformation URL and `srcset` alike — reads the same resolved value.
236
236
  */
237
237
  get currentFormat(): string;
238
+ /**
239
+ * Whether the delivery URL may carry the `.auto` marker yet.
240
+ *
241
+ * The marker asks the backend to pick a rendition, and the only thing that can
242
+ * veto that choice is the asset's own extension: an animated GIF served as the
243
+ * original file must keep its stored name or lose the animation. Applying the
244
+ * marker before the extension is known makes that veto unreachable, so an
245
+ * original GIF can be served as a single frame. Waiting costs the stored URL
246
+ * for one render; guessing costs the animation.
247
+ *
248
+ * Gated on the resolved flag rather than a non-empty extension, because "no
249
+ * extension" is a legitimate answer that must still release the marker.
250
+ */
251
+ private get canApplyAutoFormat();
252
+ /** Whether the cached extension describes the record actually being displayed. */
253
+ private get hasResolvedAssetExtension();
238
254
  /**
239
255
  * Fields the child `cx-asset-data-display` must fetch for this block.
240
256
  *
@@ -1,8 +1,12 @@
1
1
  import { default as CxCard } from '../../../../../atoms/src/components/card/card.ts';
2
2
  import { default as CxDialog } from '../../../../../atoms/src/components/dialog/dialog.ts';
3
+ import { default as CxDropdown } from '../../../../../atoms/src/components/dropdown/dropdown.ts';
3
4
  import { default as CxGrid } from '../../../../../atoms/src/components/grid/grid.ts';
4
5
  import { default as CxGridItem } from '../../../../../atoms/src/components/grid-item/grid-item.ts';
6
+ import { default as CxIcon } from '../../../../../atoms/src/components/icon/icon.ts';
5
7
  import { default as CxLineClamp } from '../../../../../atoms/src/components/line-clamp/line-clamp.ts';
8
+ import { default as CxMenu } from '../../../../../atoms/src/components/menu/menu.ts';
9
+ import { default as CxMenuItem } from '../../../../../atoms/src/components/menu-item/menu-item.ts';
6
10
  import { default as CxResizeObserver } from '../../../../../atoms/src/components/resize-observer/resize-observer.ts';
7
11
  import { default as CxSpace } from '../../../../../atoms/src/components/space/space.ts';
8
12
  import { default as CxSpinner } from '../../../../../atoms/src/components/spinner/spinner.ts';
@@ -11,6 +15,14 @@ import { default as CortexElement } from '../../../../../base/src/cortex-element
11
15
  import { BlockType } from '../../../../../types/src/content-builder';
12
16
  import { Component } from 'grapesjs';
13
17
 
18
+ type BlockItem = {
19
+ description: string;
20
+ disabled: boolean;
21
+ displayName: string;
22
+ id: string;
23
+ name: string;
24
+ representative: string;
25
+ };
14
26
  export type CxContentBuilderBlockSelectEvent = CustomEvent<{
15
27
  amount?: number;
16
28
  index?: number;
@@ -34,9 +46,13 @@ export default class CxBlockPicker extends CortexElement {
34
46
  static readonly dependencies: {
35
47
  'cx-card': typeof CxCard;
36
48
  'cx-dialog': typeof CxDialog;
49
+ 'cx-dropdown': typeof CxDropdown;
37
50
  'cx-grid': typeof CxGrid;
38
51
  'cx-grid-item': typeof CxGridItem;
52
+ 'cx-icon': typeof CxIcon;
39
53
  'cx-line-clamp': typeof CxLineClamp;
54
+ 'cx-menu': typeof CxMenu;
55
+ 'cx-menu-item': typeof CxMenuItem;
40
56
  'cx-resize-observer': typeof CxResizeObserver;
41
57
  'cx-space': typeof CxSpace;
42
58
  'cx-spinner': typeof CxSpinner;
@@ -52,14 +68,7 @@ export default class CxBlockPicker extends CortexElement {
52
68
  * The `representative` image is displayed in the card.
53
69
  * The `disabled` state indicates whether the block is selectable or not.
54
70
  */
55
- blocks: Array<{
56
- description: string;
57
- disabled: boolean;
58
- displayName: string;
59
- id: string;
60
- name: string;
61
- representative: string;
62
- }>;
71
+ blocks: BlockItem[];
63
72
  /**
64
73
  * The templates available for selection.
65
74
  * Each template should have a unique `id`, a `name`, a `description`, a `representative` image URL, and a `type`.
@@ -120,9 +129,15 @@ export default class CxBlockPicker extends CortexElement {
120
129
  get blockName(): string;
121
130
  private resetState;
122
131
  private handleBlockSelect;
132
+ private handleVariantSelect;
133
+ private handleVariantsMouseEnter;
134
+ private handleVariantsMouseLeave;
135
+ private emitBlockSelect;
123
136
  private handleTemplateSelect;
124
137
  private handleCustomBlockSelect;
125
138
  private handleClose;
139
+ private renderBlockCard;
140
+ private renderBlockCardWithVariants;
126
141
  render(): import('lit').TemplateResult<1>;
127
142
  }
128
143
  declare global {
@@ -134,3 +149,4 @@ declare global {
134
149
  'cx-content-builder-template-select': CxContentBuilderTemplateSelectEvent;
135
150
  }
136
151
  }
152
+ export {};
@@ -3,6 +3,7 @@ import { default as CxColorPicker } from '../../../../../atoms/src/components/co
3
3
  import { default as CxDialog } from '../../../../../atoms/src/components/dialog/dialog.ts';
4
4
  import { default as CxGrid } from '../../../../../atoms/src/components/grid/grid.ts';
5
5
  import { default as CxGridItem } from '../../../../../atoms/src/components/grid-item/grid-item.ts';
6
+ import { default as CxIcon } from '../../../../../atoms/src/components/icon/icon.ts';
6
7
  import { default as CxIconButton } from '../../../../../atoms/src/components/icon-button/icon-button.ts';
7
8
  import { default as CxInput } from '../../../../../atoms/src/components/input/input.ts';
8
9
  import { default as CxOption } from '../../../../../atoms/src/components/option/option.ts';
@@ -13,6 +14,7 @@ import { default as CxTypography } from '../../../../../atoms/src/components/typ
13
14
  import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
14
15
  import { default as CxTable } from '../../../../../hybrid/table-core/src/index.ts';
15
16
  import { ColorSwatchData } from '../../../../../types/src/color-swatch';
17
+ import { ColorSwatchCustomColumn } from '../../../../../types/src/color-swatch-group';
16
18
 
17
19
  export type CxContentBuilderColorSwatchSelectEvent = CustomEvent<ColorSwatchData | ColorSwatchData[]>;
18
20
  export type CxContentBuilderColorSwatchDeleteEvent = CustomEvent<void>;
@@ -34,6 +36,7 @@ export default class CxColorSwatchPicker extends CortexElement {
34
36
  'cx-dialog': typeof CxDialog;
35
37
  'cx-grid': typeof CxGrid;
36
38
  'cx-grid-item': typeof CxGridItem;
39
+ 'cx-icon': typeof CxIcon;
37
40
  'cx-icon-button': typeof CxIconButton;
38
41
  'cx-input': typeof CxInput;
39
42
  'cx-option': typeof CxOption;
@@ -68,6 +71,15 @@ export default class CxColorSwatchPicker extends CortexElement {
68
71
  * The default language of the content builder.
69
72
  */
70
73
  defaultLanguage: string;
74
+ /**
75
+ * The block's custom columns, one labelled input each in the color dialog.
76
+ */
77
+ customColumns: ColorSwatchCustomColumn[];
78
+ /**
79
+ * Shows the Meta data section. Off by default: a metadata field is a table
80
+ * column, which only the Table variant renders.
81
+ */
82
+ showMetadata: boolean;
71
83
  /**
72
84
  * The type of dialog to open since it can be either add new or edit from row selection.
73
85
  */
@@ -104,14 +116,34 @@ export default class CxColorSwatchPicker extends CortexElement {
104
116
  * The PMS color value.
105
117
  */
106
118
  private dialogPmsId;
119
+ /** Typed filter text, in state so the list re-renders as you type. */
120
+ private searchTerm;
121
+ /**
122
+ * Mounts the list only while the listbox is open: a virtualizer created
123
+ * against a hidden, zero-height parent settles on an empty range and stays
124
+ * blank, so it has to wait for `cx-after-show`.
125
+ */
126
+ private showVirtualizer;
107
127
  /**
108
128
  * The color value.
109
129
  */
110
130
  private dialogColor;
131
+ /**
132
+ * The value the edited color holds for each declared custom column, keyed by
133
+ * column id.
134
+ */
135
+ private dialogMetadata;
136
+ /**
137
+ * Free-form metadata rows added this session, before they become declared
138
+ * columns. Each carries the id it will be stored under, so renaming a row
139
+ * keeps the value already typed.
140
+ */
141
+ private dialogExtraFields;
111
142
  /**
112
143
  * The palettes of current color swatches.
113
144
  */
114
145
  private palettes;
146
+ constructor();
115
147
  get tabs(): TabType[];
116
148
  /**
117
149
  * Opens the add color dialog.
@@ -127,7 +159,19 @@ export default class CxColorSwatchPicker extends CortexElement {
127
159
  */
128
160
  private resetDialogState;
129
161
  /**
130
- * Finishes the dialog and emits the event.
162
+ * Splits the named free-form rows into the ones that reuse an existing column
163
+ * and the ones that declare a new one.
164
+ *
165
+ * A typed name that matches a declared column writes into that column rather
166
+ * than declaring a second one with the same title: two identical headers would
167
+ * leave the original empty for this color and the value stranded under a new
168
+ * id. Matched case-insensitively on the trimmed name, the same comparison the
169
+ * Custom columns list editor rejects duplicates with.
170
+ */
171
+ private resolveExtraFields;
172
+ /**
173
+ * Finishes the dialog and emits the event. Columns go first, so the color's
174
+ * new values already have a column to be rendered in.
131
175
  */
132
176
  private handleFinishDialog;
133
177
  /**
@@ -148,6 +192,31 @@ export default class CxColorSwatchPicker extends CortexElement {
148
192
  private handleChangeRgb;
149
193
  private handleChangeCmyk;
150
194
  private handleChangePms;
195
+ /** The Pantone table minus the pinned colour, narrowed by `searchTerm`. */
196
+ private get virtualListItems();
197
+ private handleSelectShow;
198
+ private handleSelectHide;
199
+ /** `cx-select` keeps the typed text private, so it is read off the event. */
200
+ private handleSelectInput;
201
+ /** Nothing is slotted while the listbox is closed, so the label comes from state. */
202
+ private selectGetOptionLabel;
203
+ /**
204
+ * The selected colour, pinned above the list: a virtualized row thousands of
205
+ * places down cannot be scrolled to without emptying the rendered range.
206
+ */
207
+ private renderPinnedPmsOption;
208
+ /** The item is undefined while a narrowing filter outruns the rendered range. */
209
+ private renderPmsOption;
210
+ private handleChangeMetadata;
211
+ private handleAddMetadataField;
212
+ private handleChangeExtraField;
213
+ private handleDeleteExtraField;
214
+ /**
215
+ * The Meta data section: one labelled input per custom column, plus free-form
216
+ * Name / Value rows. Naming a free-form row declares a column for every color
217
+ * — the block is a table — hence the columns event on save.
218
+ */
219
+ private renderMetadataControls;
151
220
  /**
152
221
  * Re-emit dynamic events from the table.
153
222
  */
@@ -6,35 +6,14 @@ import { TabType } from './config-form';
6
6
  export declare class ConfigFormController implements ReactiveController {
7
7
  host: ReactiveControllerHost & CxConfigForm;
8
8
  private readonly localize;
9
- private apiSearchAssets;
10
- private apiGetTeamSpaceFontFamily;
11
- private readonly pendingGalleryPickerSaves;
12
- private readonly fontFamiliesCache;
13
- private readonly pendingFontFamilyFetches;
14
- private readonly typeSubtypeOptionsCache;
15
- private readonly pendingTypeSubtypeOptionsFetches;
9
+ private readonly controlRenderer;
16
10
  constructor(host: ReactiveControllerHost & CxConfigForm);
17
11
  hostConnected(): void;
18
- /**
19
- * Resolves the delivery URL to persist for an asset under a given format.
20
- *
21
- * A blank `format` means `Auto`, which is what a reset leaves behind: the proxy is then
22
- * derived from the asset's own extension and size (`resolveAutoFormat`), matching what
23
- * the block computes at runtime. Without this the reset would keep whichever URL the
24
- * previous hand-picked format wrote.
25
- *
26
- * `TRX` proxies preserve the asset's original extension. When that extension is not a
27
- * browser-displayable image format, fall back to the `TR1` transformation proxy, which is
28
- * always transcoded to a raster format. Mirrors the same fallback in `FetchImageController`
29
- * (used by the gallery/timeline blocks) and `cx-asset-transformation-dialog`.
30
- */
31
- private resolveAssetFormatSrc;
32
12
  private handleStyleChange;
33
13
  private handleAttributeChange;
34
14
  private handlePropertyChange;
35
15
  private handleConfigChange;
36
16
  private renderInfoText;
37
- private renderControl;
38
17
  private renderBasicControl;
39
18
  renderBasicControls(configs: PropertyConfig[], parent?: PropertyConfig, tab?: TabType): TemplateResult<1>;
40
19
  renderTranslationControls(): TemplateResult<1>;
@@ -216,6 +216,13 @@ export default class CxConfigManager extends CortexElement {
216
216
  private getFlattenTraits;
217
217
  handleTraitsChange(): Promise<void>;
218
218
  handleComponentChange(): Promise<void>;
219
+ /**
220
+ * The variants of the font kit the block sits in, if any — the config
221
+ * manager is the only layer holding the GrapesJS component, so it is the
222
+ * only place that can reach the kit's resolved typefaces. Absent means the
223
+ * block has no container resolving a font for it.
224
+ */
225
+ private getContainerFontVariants;
219
226
  private handleSave;
220
227
  private handleClose;
221
228
  show(): Promise<void>;
@@ -11,8 +11,10 @@ import { default as CxSpace } from '../../../../../atoms/src/components/space/sp
11
11
  import { default as CxTypography } from '../../../../../atoms/src/components/typography/typography.ts';
12
12
  import { default as CortexElement } from '../../../../../base/src/cortex-element.ts';
13
13
  import { default as CxAssetPicker } from '../../../../../molecules/src/asset-picker/asset-picker.ts';
14
+ import { default as CxBicolorPicker } from '../../../../../molecules/src/bicolor-picker/bicolor-picker.ts';
14
15
  import { default as CxDynamicSelect } from '../../../../../molecules/src/dynamic-select/dynamic-select.ts';
15
16
  import { default as CxFolderSelect } from '../../../../../molecules/src/folder-select/folder-select.ts';
17
+ import { default as CxPositionPicker } from '../../../../../molecules/src/position-picker/position-picker.ts';
16
18
  import { Asset, AssetTypeString, DialogType } from '../../../../../types/src/content-builder';
17
19
  import { Image } from '../../../../../types/src/gallery-config';
18
20
  import { GalleryItemCardType } from '../../../../../types/src/gallery-item';
@@ -31,6 +33,7 @@ export default class CxGalleryConfig extends CortexElement {
31
33
  static readonly styles: import('lit').CSSResult[];
32
34
  static readonly dependencies: {
33
35
  'cx-asset-picker': typeof CxAssetPicker;
36
+ 'cx-bicolor-picker': typeof CxBicolorPicker;
34
37
  'cx-button': typeof CxButton;
35
38
  'cx-checkbox': typeof CxCheckbox;
36
39
  'cx-dialog': typeof CxDialog;
@@ -41,6 +44,7 @@ export default class CxGalleryConfig extends CortexElement {
41
44
  'cx-grid': typeof CxGrid;
42
45
  'cx-grid-item': typeof CxGridItem;
43
46
  'cx-input': typeof CxInput;
47
+ 'cx-position-picker': typeof CxPositionPicker;
44
48
  'cx-radio': typeof CxRadio;
45
49
  'cx-radio-group': typeof CxRadioGroup;
46
50
  'cx-space': typeof CxSpace;
@@ -98,6 +102,8 @@ export default class CxGalleryConfig extends CortexElement {
98
102
  private handleAssetSelect;
99
103
  private handleAssetDelete;
100
104
  private handleObjectFitChange;
105
+ private handleCropFocusChange;
106
+ private handleBackgroundColorChange;
101
107
  private handleOpenInNewTabChange;
102
108
  private handleFolderChange;
103
109
  private handleFolderDelete;
@@ -74,6 +74,7 @@ export default class CxGalleryPicker extends CortexElement implements CortexForm
74
74
  loading: boolean;
75
75
  masonryData: Array<{
76
76
  alt?: string;
77
+ backgroundColor?: string;
77
78
  extension?: string;
78
79
  id: string;
79
80
  rawId?: string;
@@ -2,10 +2,17 @@ import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-bu
2
2
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
3
3
 
4
4
  type Attributes = {
5
+ 'collapse-icon': string;
5
6
  data: string;
6
7
  'data-constraints': boolean;
8
+ 'data-content-width-percent': string;
9
+ 'data-content-width-pixel': string;
7
10
  'default-open-indexes': string;
11
+ 'expand-icon': string;
12
+ 'full-bleed': boolean;
13
+ 'hover-icon': string;
8
14
  'multi-language': boolean;
15
+ 'section-body-max-width': string;
9
16
  };
10
17
  declare const _default: {
11
18
  configs: (localize: LocalizeController, options?: ConfigsOptions) => Array<PropertyConfig<Attributes>>;
@@ -9,6 +9,7 @@ type Attribute = {
9
9
  'data-width-pixel': string;
10
10
  'format'?: string;
11
11
  'format-src'?: string;
12
+ 'full-bleed': boolean;
12
13
  name: CxSbAudio['name'];
13
14
  'parent-record-id'?: string;
14
15
  'record-id'?: string;
@@ -1,5 +1,6 @@
1
1
  import { ButtonSize, ButtonWidthType } from '../../../../types/src/button';
2
2
  import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-builder';
3
+ import { ButtonAppearance } from '../../../../types/src/sb-button';
3
4
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
4
5
  import { default as CxSbButton } from '../blocks/button/button';
5
6
 
@@ -25,7 +26,7 @@ type Attributes = {
25
26
  size: string;
26
27
  target: string;
27
28
  type: string;
28
- variant: string;
29
+ variant: ButtonAppearance;
29
30
  'width-type': ButtonWidthType;
30
31
  };
31
32
  declare const _default: {
@@ -1,7 +1,9 @@
1
- import { Easing, TransitionType } from '../../../../types/src/index.ts';
1
+ import { Easing, ObjectFit, TransitionType } from '../../../../types/src/index.ts';
2
2
  import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-builder';
3
3
  import { ContentType, SourceVariant } from '../../../../types/src/gallery';
4
4
  import { GalleryItemCardType, GalleryItemContentPosition, GalleryItemContentVariant, GalleryItemEffect, GalleryItemTextRevealStyle, GalleryItemZoomStyle } from '../../../../types/src/gallery-item';
5
+ import { PositionPickerValue } from '../../../../types/src/position-picker';
6
+ import { HeightMode } from '../../../../types/src/resizable-element';
5
7
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
6
8
 
7
9
  type Attributes = {
@@ -16,12 +18,19 @@ type Attributes = {
16
18
  'content-type': ContentType;
17
19
  'content-variant': GalleryItemContentVariant;
18
20
  'data-constraints': boolean;
21
+ 'data-width-percent': string;
22
+ 'data-width-pixel': string;
23
+ 'default-crop-focus': PositionPickerValue;
24
+ 'default-object-fit': ObjectFit;
19
25
  'details-source-field': string;
20
26
  'download-format': string;
21
27
  easing: Easing;
22
28
  effect: GalleryItemEffect;
23
29
  format: string;
30
+ 'full-bleed': boolean;
24
31
  'header-source-field': string;
32
+ height: string;
33
+ 'height-mode': HeightMode;
25
34
  'highlight-border': boolean;
26
35
  'highlight-color-overlay': boolean;
27
36
  'highlight-drop-shadow': boolean;
@@ -41,6 +50,7 @@ type Attributes = {
41
50
  transformations: string;
42
51
  'transition-type': TransitionType;
43
52
  variant: string;
53
+ width: string;
44
54
  'zoom-style': GalleryItemZoomStyle;
45
55
  };
46
56
  declare const _default: {
@@ -1,14 +1,32 @@
1
- import { CxColorSwatchGroupVariant } from '../../../../types/src/color-swatch-group';
1
+ import { CxColorSwatchCodeAlignment, CxColorSwatchCodeSeparator, CxColorSwatchHexFormat } from '../../../../types/src/color-swatch';
2
+ import { CxColorSwatchGroupColumnAlignment, CxColorSwatchGroupColumnWidthMode, CxColorSwatchGroupVariant } from '../../../../types/src/color-swatch-group';
2
3
  import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-builder';
3
4
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
4
5
 
5
6
  type Attribute = {
6
7
  'can-copy': boolean;
7
8
  'can-custom-shadow-and-border-radius': boolean;
9
+ 'code-alignment': CxColorSwatchCodeAlignment;
10
+ 'code-column-alignment': CxColorSwatchGroupColumnAlignment;
11
+ 'code-column-constraints': boolean;
12
+ 'code-column-max-width': string;
13
+ 'code-column-min-width': string;
14
+ 'code-column-width-mode': CxColorSwatchGroupColumnWidthMode;
15
+ 'code-separator': CxColorSwatchCodeSeparator;
16
+ 'custom-columns': string;
8
17
  data: string;
18
+ 'full-bleed': boolean;
19
+ 'gradient-effect': boolean;
20
+ 'hex-format': CxColorSwatchHexFormat;
9
21
  'max-col': string;
10
22
  'multi-language': boolean;
23
+ 'name-column-alignment': CxColorSwatchGroupColumnAlignment;
24
+ 'name-column-constraints': boolean;
25
+ 'name-column-max-width': string;
26
+ 'name-column-min-width': string;
27
+ 'name-column-width-mode': CxColorSwatchGroupColumnWidthMode;
11
28
  'show-codes': string;
29
+ 'show-elements': string;
12
30
  variant: CxColorSwatchGroupVariant;
13
31
  };
14
32
  declare const _default: {
@@ -1,13 +1,22 @@
1
1
  import { ColumnWidthType } from '../../../../types/src/column';
2
- import { PropertyConfig } from '../../../../types/src/content-builder';
2
+ import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-builder';
3
3
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
4
+ import { default as CxColumnGroup } from '../blocks/column-group/column-group';
4
5
 
5
6
  type Attributes = {
7
+ 'background-crop-focus': CxColumnGroup['backgroundCropFocus'];
8
+ 'background-format': CxColumnGroup['backgroundFormat'];
9
+ 'background-manual-format': CxColumnGroup['backgroundManualFormat'];
10
+ 'background-object-fit': CxColumnGroup['backgroundObjectFit'];
11
+ 'background-record-id': CxColumnGroup['backgroundRecordId'];
12
+ 'background-src': CxColumnGroup['backgroundSrc'];
13
+ 'background-transformations': string;
6
14
  'data-constraints': boolean;
15
+ 'full-bleed': boolean;
7
16
  'width-type': ColumnWidthType;
8
17
  };
9
18
  declare const _default: {
10
- configs: (localize: LocalizeController) => Array<PropertyConfig<Attributes>>;
19
+ configs: (localize: LocalizeController, options?: ConfigsOptions) => Array<PropertyConfig<Attributes>>;
11
20
  defaultValue: Attributes;
12
21
  stylable: string[];
13
22
  };
@@ -1,15 +1,25 @@
1
- import { ColumnWidthType } from '../../../../types/src/column';
2
- import { PropertyConfig } from '../../../../types/src/content-builder';
1
+ import { ObjectFit } from '../../../../types/src/index.ts';
2
+ import { ColumnWidthMode, ColumnWidthType } from '../../../../types/src/column';
3
+ import { ConfigsOptions, PropertyConfig } from '../../../../types/src/content-builder';
4
+ import { PositionPickerValue } from '../../../../types/src/position-picker';
3
5
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
4
6
 
5
7
  type Attributes = {
8
+ 'background-crop-focus': PositionPickerValue;
9
+ 'background-format': string;
10
+ 'background-image': string;
11
+ 'background-manual-format': boolean;
12
+ 'background-object-fit': ObjectFit;
13
+ 'background-record-id': string;
14
+ 'background-transformations': string;
6
15
  'custom-width': boolean;
7
16
  resizable: boolean;
8
17
  trigger: string;
18
+ 'width-mode': ColumnWidthMode;
9
19
  'width-type': ColumnWidthType;
10
20
  };
11
21
  declare const _default: {
12
- configs: (localize: LocalizeController) => Array<PropertyConfig<Attributes>>;
22
+ configs: (localize: LocalizeController, options?: ConfigsOptions) => Array<PropertyConfig<Attributes>>;
13
23
  defaultValue: Partial<Attributes>;
14
24
  stylable: string[];
15
25
  };
@@ -20,6 +20,7 @@ type Attribute = {
20
20
  'expanded-folders': CxSbDamView['expandedFolders'];
21
21
  'filter-button-action': CxSbDamView['filterButtonAction'];
22
22
  'folder-hierarchy': CxSbDamView['folderHierarchy'];
23
+ 'full-bleed': boolean;
23
24
  'highlight-representative-asset': CxSbDamView['highlightRepresentativeAsset'];
24
25
  'items-per-page': string;
25
26
  'left-additional-filters': CxSbDamView['leftAdditionalFilters'];
@@ -2,6 +2,7 @@ import { PropertyConfig } from '../../../../types/src/content-builder';
2
2
  import { LocalizeController } from '../../../../utils/src/custom-element/i18n';
3
3
 
4
4
  type Attribute = {
5
+ 'full-bleed': boolean;
5
6
  'use-padding': boolean;
6
7
  };
7
8
  declare const _default: {
@@ -7,6 +7,7 @@ type Attribute = {
7
7
  'data-width-percent': string;
8
8
  'data-width-pixel': string;
9
9
  extension: CxSbDocumentViewer['extension'];
10
+ 'full-bleed': boolean;
10
11
  height: CxSbDocumentViewer['height'];
11
12
  'height-mode': CxSbDocumentViewer['heightMode'];
12
13
  identifier: CxSbDocumentViewer['identifier'];