@wix/patterns-fields 1.82.0 → 1.83.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 (247) hide show
  1. package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
  2. package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
  3. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
  4. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  5. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
  6. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  7. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
  8. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  9. package/dist/cjs/components/color-view/cell-color-view.st.css.js +3 -3
  10. package/dist/cjs/components/color-view/cell-color-view.st.css.js.map +1 -1
  11. package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
  12. package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
  13. package/dist/cjs/components/datetime-input/date-time-input.js +11 -6
  14. package/dist/cjs/components/datetime-input/date-time-input.js.map +1 -1
  15. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
  16. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  17. package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
  18. package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
  19. package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
  20. package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
  21. package/dist/cjs/components/field-validation-settings/field-validation-settings-input.js +450 -0
  22. package/dist/cjs/components/field-validation-settings/field-validation-settings-input.js.map +1 -0
  23. package/dist/cjs/components/field-validation-settings/field-validation-settings.uni.driver.js +24 -0
  24. package/dist/cjs/components/field-validation-settings/field-validation-settings.uni.driver.js.map +1 -0
  25. package/dist/cjs/components/field-validation-settings/index.js +16 -0
  26. package/dist/cjs/components/field-validation-settings/index.js.map +1 -0
  27. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
  28. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  29. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
  30. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  31. package/dist/cjs/components/index.js +6 -0
  32. package/dist/cjs/components/index.js.map +1 -1
  33. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  34. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  35. package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
  36. package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
  37. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
  38. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  39. package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
  40. package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
  41. package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
  42. package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
  43. package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
  44. package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
  45. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  46. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  47. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js +3 -3
  48. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
  49. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
  50. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  51. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js +2 -2
  52. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js.map +1 -1
  53. package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
  54. package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
  55. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
  56. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  57. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
  58. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  59. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  60. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js.map +1 -1
  61. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
  62. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  63. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
  64. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  65. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  66. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  67. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
  68. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  69. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +5 -5
  70. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  71. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
  72. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  73. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
  74. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  75. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +4 -4
  76. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  77. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
  78. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  79. package/dist/cjs/components/text/text-view.st.css.js +3 -3
  80. package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
  81. package/dist/cjs/exports/unidriver.js +3 -1
  82. package/dist/cjs/exports/unidriver.js.map +1 -1
  83. package/dist/cjs/exports/validations.js +7 -0
  84. package/dist/cjs/exports/validations.js.map +1 -1
  85. package/dist/cjs/styles.global.css +1 -1
  86. package/dist/cjs/types/validation.js.map +1 -1
  87. package/dist/cjs/validations/field-validation-settings.js +110 -0
  88. package/dist/cjs/validations/field-validation-settings.js.map +1 -0
  89. package/dist/cjs/validations/field-validation-settings.spec.js +209 -0
  90. package/dist/cjs/validations/field-validation-settings.spec.js.map +1 -0
  91. package/dist/esm/components/address/input/address-input.st.css.js +2 -2
  92. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
  93. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
  94. package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
  95. package/dist/esm/components/color-view/cell-color-view.st.css.js +2 -2
  96. package/dist/esm/components/color-view/color-view.st.css.js +2 -2
  97. package/dist/esm/components/datetime-input/date-time-input.js +6 -1
  98. package/dist/esm/components/datetime-input/date-time-input.js.map +1 -1
  99. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
  100. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  101. package/dist/esm/components/document/form-document-field.st.css.js +2 -2
  102. package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
  103. package/dist/esm/components/exclamation/exclamation.st.css.js.map +1 -1
  104. package/dist/esm/components/field-validation-settings/field-validation-settings-input.js +121 -0
  105. package/dist/esm/components/field-validation-settings/field-validation-settings-input.js.map +1 -0
  106. package/dist/esm/components/field-validation-settings/field-validation-settings.uni.driver.js +20 -0
  107. package/dist/esm/components/field-validation-settings/field-validation-settings.uni.driver.js.map +1 -0
  108. package/dist/esm/components/field-validation-settings/index.js +3 -0
  109. package/dist/esm/components/field-validation-settings/index.js.map +1 -0
  110. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
  111. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  112. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
  113. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  114. package/dist/esm/components/index.js +1 -0
  115. package/dist/esm/components/index.js.map +1 -1
  116. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  117. package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
  118. package/dist/esm/components/media-control/paste-url-button.st.css.js.map +1 -1
  119. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
  120. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  121. package/dist/esm/components/media-image/media-image.st.css.js +3 -3
  122. package/dist/esm/components/media-image/media-image.st.css.js.map +1 -1
  123. package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
  124. package/dist/esm/components/media-image/overlays/overlay.st.css.js.map +1 -1
  125. package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
  126. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  127. package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js +2 -2
  128. package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
  129. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
  130. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  131. package/dist/esm/components/reference/cell-multi-reference-input.st.css.js +2 -2
  132. package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
  133. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
  134. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +2 -2
  135. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  136. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  137. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
  138. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
  139. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  140. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  141. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
  142. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
  143. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  144. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
  145. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
  146. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  147. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +2 -2
  148. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  149. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
  150. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  151. package/dist/esm/components/text/text-view.st.css.js +2 -2
  152. package/dist/esm/components/text/text-view.st.css.js.map +1 -1
  153. package/dist/esm/exports/unidriver.js +1 -0
  154. package/dist/esm/exports/unidriver.js.map +1 -1
  155. package/dist/esm/exports/validations.js +1 -0
  156. package/dist/esm/exports/validations.js.map +1 -1
  157. package/dist/esm/styles.global.css +1 -1
  158. package/dist/esm/validations/field-validation-settings.js +98 -0
  159. package/dist/esm/validations/field-validation-settings.js.map +1 -0
  160. package/dist/esm/validations/field-validation-settings.spec.js +132 -0
  161. package/dist/esm/validations/field-validation-settings.spec.js.map +1 -0
  162. package/dist/types/components/datetime-input/date-time-input.d.ts.map +1 -1
  163. package/dist/types/components/delete-dialog/delete-dialog.st.css.d.ts.map +1 -1
  164. package/dist/types/components/exclamation/exclamation.st.css.d.ts.map +1 -1
  165. package/dist/types/components/field-validation-settings/field-validation-settings-input.d.ts +8 -0
  166. package/dist/types/components/field-validation-settings/field-validation-settings-input.d.ts.map +1 -0
  167. package/dist/types/components/field-validation-settings/field-validation-settings.uni.driver.d.ts +307 -0
  168. package/dist/types/components/field-validation-settings/field-validation-settings.uni.driver.d.ts.map +1 -0
  169. package/dist/types/components/field-validation-settings/index.d.ts +3 -0
  170. package/dist/types/components/field-validation-settings/index.d.ts.map +1 -0
  171. package/dist/types/components/highlighted-text/highlighted-text.st.css.d.ts.map +1 -1
  172. package/dist/types/components/image/thumbnail-replace-overlay.st.css.d.ts.map +1 -1
  173. package/dist/types/components/index.d.ts +1 -0
  174. package/dist/types/components/index.d.ts.map +1 -1
  175. package/dist/types/components/media-control/paste-url-button.st.css.d.ts.map +1 -1
  176. package/dist/types/components/media-gallery/form-media-gallery-field.st.css.d.ts.map +1 -1
  177. package/dist/types/components/media-image/media-image.st.css.d.ts.map +1 -1
  178. package/dist/types/components/media-image/overlays/overlay.st.css.d.ts.map +1 -1
  179. package/dist/types/components/multi-document/cell-multi-document-edit.st.css.d.ts.map +1 -1
  180. package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
  181. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts.map +1 -1
  182. package/dist/types/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.d.ts.map +1 -1
  183. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.d.ts.map +1 -1
  184. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.d.ts.map +1 -1
  185. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.d.ts.map +1 -1
  186. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.d.ts.map +1 -1
  187. package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
  188. package/dist/types/exports/unidriver.d.ts +1 -0
  189. package/dist/types/exports/unidriver.d.ts.map +1 -1
  190. package/dist/types/exports/validations.d.ts +1 -0
  191. package/dist/types/exports/validations.d.ts.map +1 -1
  192. package/dist/types/types/validation.d.ts +67 -1
  193. package/dist/types/types/validation.d.ts.map +1 -1
  194. package/dist/types/validations/field-validation-settings.d.ts +10 -0
  195. package/dist/types/validations/field-validation-settings.d.ts.map +1 -0
  196. package/dist/types/validations/field-validation-settings.spec.d.ts +2 -0
  197. package/dist/types/validations/field-validation-settings.spec.d.ts.map +1 -0
  198. package/package.json +6 -6
  199. package/src/__tests__/components/datetime-input/date-time-input.spec.tsx +99 -0
  200. package/src/__tests__/components/field-validation-settings/field-validation-settings-input.spec.tsx +366 -0
  201. package/src/__tests__/exports/field-validation-settings.spec.ts +27 -0
  202. package/src/components/address/input/address-input.st.css.ts +2 -2
  203. package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
  204. package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
  205. package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
  206. package/src/components/color-view/cell-color-view.st.css.ts +2 -2
  207. package/src/components/color-view/color-view.st.css.ts +2 -2
  208. package/src/components/datetime-input/date-time-input.tsx +8 -1
  209. package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
  210. package/src/components/document/form-document-field.st.css.ts +2 -2
  211. package/src/components/exclamation/exclamation.st.css.ts +2 -2
  212. package/src/components/field-validation-settings/field-validation-settings-input.tsx +384 -0
  213. package/src/components/field-validation-settings/field-validation-settings.uni.driver.ts +60 -0
  214. package/src/components/field-validation-settings/index.ts +2 -0
  215. package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
  216. package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
  217. package/src/components/index.ts +1 -0
  218. package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
  219. package/src/components/media-control/paste-url-button.st.css.ts +2 -2
  220. package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
  221. package/src/components/media-image/media-image.st.css.ts +3 -3
  222. package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
  223. package/src/components/media-loader/media-loader.st.css.ts +2 -2
  224. package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
  225. package/src/components/multi-document/cell-multi-document-edit.st.css.ts +2 -2
  226. package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
  227. package/src/components/reference/cell-multi-reference-input.st.css.ts +2 -2
  228. package/src/components/reference/cell-reference-input.st.css.ts +2 -2
  229. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
  230. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +2 -2
  231. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
  232. package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
  233. package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
  234. package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
  235. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
  236. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
  237. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
  238. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
  239. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +2 -2
  240. package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
  241. package/src/components/text/text-view.st.css.ts +2 -2
  242. package/src/exports/unidriver.ts +1 -0
  243. package/src/exports/validations.ts +2 -0
  244. package/src/styles.global.css +1 -1
  245. package/src/types/validation.ts +77 -1
  246. package/src/validations/field-validation-settings.spec.ts +180 -0
  247. package/src/validations/field-validation-settings.ts +144 -0
@@ -1 +1 @@
1
- .addressinput2777595461__tableAddressInput{height:36px!important;margin-left:-1px;display:flex!important;align-items:center;width:100%}.addressinput2777595461__tableAddressInput>div{padding:0!important;width:100%}.addressinput2777595461__tableAddressInput:focus-within{margin-left:2px}.actionsmenu3604226520__action{margin-left:calc(var(--wds-space-100, 6px)*-1)}.formaudiofield2808568682__addItem{height:120px!important;box-sizing:border-box}.formaudiofield2808568682__addItem:focus-within{box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wds-color-blue-300, var(--wsr-color-B30)));border-radius:var(--wds-border-radius-400, 8px)}.formaudiofield2808568682__addItem.formaudiofield2808568682--disabled{pointer-events:auto!important}.formaudiofield2808568682__addItem.formaudiofield2808568682--error{border:1px solid var(--wds-color-red-100, var(--wsr-color-R10))!important}.formaudiofield2808568682__mediaTitle{line-height:18px!important}.audioplayer2394194815__root{width:fit-content;z-index:1000;position:fixed!important;bottom:42px;right:48px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.cellcolorview2853374581__hashPrefix{color:var(--wsr-color-D40, #868aa5);font-size:14px;font-weight:300;line-height:1}.colorview1965999913__view{width:100%}.colorview1965999913__fillPreview{flex-shrink:0}.colorview1965999913__view .colorview1965999913__fillPreview{width:18px;height:18px;min-width:18px!important;min-height:18px!important}.deletedialog3537787483__layout{max-width:510px!important}.formdocumentfield908933936__viewWrapper{border-radius:var(--wds-border-radius-300, calc(2px * 3));border:1px solid var(--wds-color-blue-300, var(--wsr-color-B30))}.formdocumentfield908933936__viewWrapper:hover{background:var(--wds-color-blue-500, var(--wsr-color-B50));cursor:pointer}.formdocumentfield908933936__textWidth{max-width:calc(100% - 196px)}.formdocumentfield908933936__documentLoader{padding-top:21px;padding-bottom:21px}.formdocumentfield908933936__addDocument{padding-top:17px!important;padding-bottom:17px!important}.formdocumentfield908933936__addDocument.formdocumentfield908933936--error{border:1px solid var(--wds-color-red-100, var(--wsr-color-R10))!important}.formdocumentfield908933936__addItemWrapper:focus-within{box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wds-color-blue-300, var(--wsr-color-B30)));border-radius:var(--wds-border-radius-400, calc(2px * 4))}.exclamation1097267001__exclamation{display:flex;justify-content:center;align-items:center;box-sizing:border-box;border-radius:3px;cursor:pointer}.exclamation1097267001__exclamation.exclamation1097267001---type-7-warning:not(.exclamation1097267001--customSize),.exclamation1097267001__exclamation.exclamation1097267001---type-5-error:not(.exclamation1097267001--customSize){width:24px;height:24px}.exclamation1097267001__exclamation.exclamation1097267001---type-7-warning{color:var(--wds-color-fill-warning-primary)}.exclamation1097267001__exclamation.exclamation1097267001---type-5-error{color:var(--wds-color-fill-destructive-primary)}.exclamation1097267001__actions{display:flex;flex-direction:column}.exclamation1097267001__action{white-space:normal!important;height:auto!important;text-align:left;gap:6px}.exclamation1097267001__action+.exclamation1097267001__action{margin-top:6px}.exclamation1097267001__action.exclamation1097267001--accented{color:var(--wds-color-blue-100)}.exclamation1097267001__action.exclamation1097267001--accented:hover{color:var(--wds-color-blue-200)}.highlightedtext967560644__root.highlightedtext967560644--highlightedBackground{animation:highlightedtext967560644__highlighted 150ms ease-out 1 forwards}.highlightedtext967560644__substring.highlightedtext967560644--isHighlighted{animation:highlightedtext967560644__highlighted-match 150ms ease-out 50ms 1 forwards}@keyframes highlightedtext967560644__highlighted{0%{background-color:transparent}to{background-color:var(--wds-color-yellow-400, var(--wsr-color-Y40))}}@keyframes highlightedtext967560644__highlighted-match{0%{background-color:transparent}to{background-color:var(--wds-color-yellow-200, var(--wsr-color-Y20))}}.thumbnailreplaceoverlay4283151137__root{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);border-radius:3px}.thumbnailreplaceoverlay4283151137__icon{color:#fff;width:18px;height:18px}.cellmediaeditshell4287288142__root{width:100%;height:100%}.pasteurlbutton126272951__root{margin-top:6px}.pasteurlbutton126272951__iconButtonTooltip{height:max-content}.pasteurlbutton126272951__iconButton{width:24px;height:24px}.formmediagalleryfield3927830186__container{display:flex;min-height:128px;max-height:259px}.formmediagalleryfield3927830186__viewBox{display:flex;height:100%;width:100%;flex-wrap:wrap}.formmediagalleryfield3927830186__addItemWrapper{height:128px;width:100%;box-sizing:border-box}.formmediagalleryfield3927830186__addItem{box-sizing:border-box}.formmediagalleryfield3927830186__overlay{width:initial!important;min-width:382px!important}.formmediagalleryfield3927830186__image.formmediagalleryfield3927830186--withMarginRight{margin-right:3px}.formmediagalleryfield3927830186__image.formmediagalleryfield3927830186--withMarginTop{margin-top:3px}.formmediagalleryfield3927830186__previewImage{max-height:calc(100% - 12px)!important}.formmediagalleryfield3927830186__previewVideo{border-radius:8px;max-width:100%;max-height:calc(100% - 12px)!important}.mediaimage132335048__root{display:flex;align-items:center;flex-shrink:0;position:relative;box-sizing:border-box}.mediaimage132335048__root.mediaimage132335048--error{--mediaimage132335048-from:calc(50% - 0.5px);--mediaimage132335048-to:calc(50% + 0.5px);background-image:linear-gradient(to bottom right,transparent var(--mediaimage132335048-from),var(--wds-color-red-200, var(--wsr-color-R20)) var(--mediaimage132335048-from),var(--wds-color-red-200, var(--wsr-color-R20)) var(--mediaimage132335048-to),transparent var(--mediaimage132335048-to))}.mediaimage132335048__root.mediaimage132335048--error>*{opacity:0}.overlay1775946498__iconOverlay{position:absolute;color:var(--wds-color-white, var(--wsr-color-D80, #FFFFFF));background-color:transparent;filter:drop-shadow(0 1px 1px rgba(22,45,61,.6));-webkit-filter:drop-shadow(0 1px 1px rgba(22,45,61,.6))}.overlay1775946498__iconOverlay.overlay1775946498---size-5-small{width:20px;height:20px}.overlay1775946498__iconOverlay.overlay1775946498---size-6-medium{width:24px;height:24px}.overlay1775946498__iconOverlay.overlay1775946498---size-5-large{width:28px;height:28px}.overlay1775946498__iconOverlay.overlay1775946498---placement-7-topLeft{top:2px;left:2px}.overlay1775946498__iconOverlay.overlay1775946498---placement-10-bottomLeft{bottom:2px;left:2px}.medialoader1023843162__loader{border-radius:6px}.medialoader1023843162__loader.medialoader1023843162--isDashed{border:dashed 1px var(--wds-color-blue-300, var(--wsr-color-B30))}.medialoader1023843162__loader.medialoader1023843162--isSolid{border:solid 1px var(--wds-color-blue-300, var(--wsr-color-B30))}.mediatag2701854040__root{box-sizing:border-box;padding:3px 6px 3px 3px;border-radius:3px;max-height:24px;min-width:54px;max-width:100%;background-color:var(--wds-color-blue-400, var(--wsr-color-B40))}.cellmultidocumentedit3893077653__chipTrigger{display:flex;align-items:center;min-width:0;max-width:100%;margin:0;padding:0;border:0;background:0 0;font:inherit;color:inherit;text-align:inherit;cursor:pointer}.formmultidocument736770500__viewRoot{border-radius:var(--wds-border-radius-300, calc(2px * 3));border:1px solid var(--wds-color-blue-300, var(--wsr-color-B30))}.formmultidocument736770500__singleViewWrapper{border-radius:0;border-bottom:1px solid var(--wds-color-neutral-600, var(--wsr-color-D60));background-color:transparent!important}.formmultidocument736770500__viewRoot>div:first-child .formmultidocument736770500__singleViewWrapper{border-top-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-top-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.formmultidocument736770500__singleViewWrapper:hover{background-color:var(--wds-color-blue-500, var(--wsr-color-B50))!important}.formmultidocument736770500__singleViewWrapper:focus-visible{border-bottom:1px solid transparent;position:relative;z-index:1}.formmultidocument736770500__addDocumentButton{border-bottom-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-bottom-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.formmultidocument736770500__addDocumentButton:focus-within{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-bottom-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.cellmultireferenceinput4055728602__root{width:100%;box-sizing:border-box;--wds-input-border-color:transparent;--wds-input-border-color-hover:transparent;--wds-input-border-color-focus:transparent;--wds-input-background-fill-default:transparent;--wds-input-background-fill-hover:transparent;--wds-input-shadow-focus-standard:0 0 0 0 transparent}.cellreferenceinput786408454__root{width:100%;height:100%;display:flex;align-items:center}.cellreferenceinput786408454__autocomplete{width:100%}.richcontentdefaultvalueinput2471303288__richContentEditorContainer .richcontentdefaultvalueinput2471303288__editor{max-height:calc(40vh - var(--topToolbarHeight) - var(--bottomToolbarHeight))}.richcontentforminput3353825129__root{outline:0;box-sizing:border-box;border:1px solid var(--wds-input-border-color, var(--wsr-color-B40, #D6E6FE));border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richcontentforminput3353825129__root:focus-within{border:1px solid var(--wds-input-border-color-focus, var(--wsr-color-B10, #116DFF));box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wsr-color-F00, #A6D0FF))}.richcontentforminput3353825129__root .richcontentforminput3353825129__editor{overflow-y:auto;max-height:calc(80vh - var(--topToolbarHeight) - var(--bottomToolbarHeight))}.richcontentformreadonlyinput2209035974__root{outline:0;box-sizing:border-box;border:1px solid var(--wds-color-black-600);border-radius:var(--wds-border-radius-300)}.richcontentformreadonlyinput2209035974__root:focus-within{border:1px solid var(--wds-color-blue-100);box-shadow:var(--wds-input-shadow-focus-standard)}.fullscreenmodal3529452897__modalContent{display:flex;flex-direction:column;position:relative;height:100%;width:782px;background-color:var(--wds-color-white, var(--wsr-color-D80, #ffffff));border-radius:var(--wds-border-radius-300, var(--wsr-border-radius-06, 6px));margin-top:24px}.publishloader119823752__publishLoader{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--wds-color-white);z-index:5000;border-radius:inherit}.togglefullscreenbutton1890455040__root{z-index:5;box-sizing:border-box;position:absolute;right:0;top:calc(50% - 16px)!important;padding-right:3px}.togglefullscreenbutton1890455040__root button{border-radius:6px!important}.richcontenteditor3374597755__root{position:relative;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)}.richcontenteditor3374597755__root,.richcontenteditor3374597755__toolbarContainer,.richcontenteditor3374597755__footerToolbarContainer{width:100%;box-sizing:border-box}.richcontenteditor3374597755__toolbarContainer div{box-sizing:border-box}.richcontenteditor3374597755__toolbarAndFullScreenButtonWrapper{display:flex;position:relative}.richcontenteditor3374597755__editor{box-sizing:border-box;padding:36px 24px 36px 55px}.richcontenteditor3374597755__modalEditor{display:flex;flex-direction:column;flex:1;height:100%}.richcontenteditor3374597755__modalEditor .richcontenteditor3374597755__editor{overflow-y:auto;flex:1;min-width:592px;box-sizing:border-box}.richcontenteditor3374597755__modalEditor .richcontenteditor3374597755__footerToolbarContainer{margin-top:9px}.richcontenteditor3374597755__toolbarContainer button[data-hook~=text-button-headings]>span{display:inline-flex;padding-inline-end:3px!important}.richcontenteditor3374597755__toolbarContainer button[data-hook~=text-button-ai]>span{padding-inline-end:9px!important}.richcontenttoolbar935607166__toolbar{border-top:1px solid rgba(51,51,51,.1);z-index:2;margin-right:auto;padding-left:6px;margin-left:auto;position:relative;height:40px;display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box}.richcontenttoolbar935607166__toolbarButton{line-height:40px;background:0 0;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;margin:0 5px 0 0}.richcontenttoolbar935607166__toolbarButton:disabled{color:graytext}.richcontenttoolbar935607166__separator{width:1px;height:20px;margin:0 8px 0 3px;background:rgba(51,51,51,.1)}.richcontenttoolbar935607166__toolbar label{padding:0 8px}.richcontentviewer3225931309__root{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:36px}.richcontentviewer3225931309__root.richcontentviewer3225931309--isFullScreen{padding:12px 24px}.richcontentviewer3225931309__root:not(.richcontentviewer3225931309--isFullScreen){padding:6px 24px 6px 12px}.richcontentviewer3225931309__root ToggleButton{margin:0;padding:0;border:0;position:absolute;top:2px!important;right:2px;width:30px;height:30px}.richcontentviewer3225931309__viewer{height:calc(100% - 36px);width:100%}.richcontentviewer3225931309__modalViewer{min-width:592px;overflow:auto}.richtexteditor3804349384__root{width:100%;box-sizing:border-box;outline:0;overflow:hidden;border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richtexteditor3804349384__root.richtexteditor3804349384---border-4-none{border:0}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard{border:1px solid var(--wds-input-border-color, var(--wsr-color-B40, #D6E6FE))}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard:focus,.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard:focus-within{border:1px solid var(--wds-input-border-color-focus, var(--wsr-color-B10, #116DFF));box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wsr-color-F00, #A6D0FF))}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-5-error{border:1px solid var(--wds-color-border-destructive-secondary-active, var(--wsr-color-R10, #E62214))}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-5-error:focus,.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-5-error:focus-within{border:1px solid var(--wds-color-border-destructive-secondary-active, var(--wsr-color-R10, #E62214));box-shadow:var(--wds-input-shadow-focus-destructive, 0 0 0 3px var(--wsr-color-R40, #FBD0CD))}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-7-warning{border:1px solid var(--wds-color-border-warning-secondary-active, var(--wsr-color-Y10, #FFB700))}.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-7-warning:focus,.richtexteditor3804349384__root.richtexteditor3804349384---border-8-standard.richtexteditor3804349384---status-7-warning:focus-within{border:1px solid var(--wds-color-border-warning-secondary-active, var(--wsr-color-Y10, #FFB700));box-shadow:var(--wds-input-shadow-focus-warning, 0 0 0 3px var(--wsr-color-Y40, #FFE2A5))}.richtexteditor3804349384__nativeInput{position:absolute;opacity:0;padding:0;margin:0;border:0;width:0;height:0}.richtexteditor3804349384__editor{height:auto;line-height:auto;display:flex;width:100%;height:100%;min-height:234px;overflow:hidden;box-sizing:border-box;flex-direction:row;border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richtexteditor3804349384__editor.richtexteditor3804349384--isFullScreen{max-width:782px;min-width:582px;background:var(--wds-color-black-700)}.richtexteditor3804349384__editor:not(.richtexteditor3804349384--isFullScreen){max-height:80vh}.richtexteditor3804349384__editor>div{flex:1;max-width:100%}.toolbar1113735627__root{padding:12px 18px;display:flex;border-bottom:1px solid var(--wds-color-blue-400, var(--wsr-color-B40, #d6dcff));background:var(--wds-color-white, var(--wsr-color-D80, #ffffff));align-items:center}.toolbar1113735627__item{display:flex;margin-right:12px}.toolbar1113735627__item svg,.toolbar1113735627__item svg path,.toolbar1113735627__item svg text{color:inherit;fill:currentColor}.toolbar1113735627__separator{display:inline-flex;margin-right:12px;border-left:1px solid #ddd;align-self:stretch}.toolbar1113735627__clearFormatting{margin-left:auto}.toolbar1113735627__fullScreen{margin-right:0}.toolbar1113735627__dropdownItemContent{height:36px;width:100%;display:flex;gap:12px;justify-content:space-between;align-items:center}.toolbar1113735627__dropdownItemContent.toolbar1113735627--selected .toolbar1113735627__dropdownItemTitle,.toolbar1113735627__dropdownItemContent.toolbar1113735627--selected .toolbar1113735627__dropdownItemSubtitle{color:var(--wds-color-white)!important}.toolbar1113735627__dropdownItemSubtitle{color:var(--wds-color-black-400)!important;padding-right:12px;flex-shrink:0}.toolbar1113735627__dropdownHeaderOne{font-weight:var(--wds-font-weight-bold)!important;font-size:36px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, var(--wsr-font-family, Madefor))!important}.toolbar1113735627__dropdownHeaderTwo{font-weight:var(--wds-font-weight-bold)!important;font-size:32px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownHeaderThree{font-weight:var(--wds-font-weight-medium)!important;font-size:28px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownHeaderFour{font-weight:var(--wds-font-weight-bold)!important;font-size:24px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownHeaderFive{font-weight:var(--wds-font-weight-bold)!important;font-size:22px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownHeaderSix{font-weight:var(--wds-font-weight-medium)!important;font-size:20px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownParagraphOne{font-weight:var(--wds-font-weight-medium)!important;font-size:18px!important;line-height:1.33!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownNormalText{font-weight:var(--wds-font-weight-medium)!important;font-size:var(--wds-font-size-500)!important;line-height:var(--wds-font-line-height-300)!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar1113735627__dropdownParagraphThree{font-weight:var(--wds-font-weight-medium)!important;font-size:14px!important;line-height:1.29!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.textview4013369427__textView::after{content:"";display:block}.richeditor138603824__root{display:flex;flex-direction:column;font-weight:var(--wds-font-weight-medium, 500);font-size:var(--wds-font-size-500);line-height:var(--wds-font-line-height-300);font-family:var(--wds-font-family-default, var(--wsr-font-family, Madefor))}.richeditor138603824__editor{box-sizing:border-box;overflow:auto;display:flex;flex-direction:column;flex:1;cursor:text;color:var(--wds-color-black-100, var(--wsr-color-D10, #131720));background:var(--wds-color-black-700, var(--wsr-color-D70, #edeef2))}.richeditor138603824__editor .DraftEditor-root{width:100%;height:100%}.richeditor138603824__editor .DraftEditor-root [data-contents]{overflow:auto}.richeditor138603824__editor .DraftEditor-editorContainer{display:flex;min-height:100%;background:#fff}.richeditor138603824__editor .public-DraftEditor-content{padding:12px 24px 24px;min-height:100%;width:100%;box-sizing:border-box}.richeditor138603824__editor .public-DraftEditor-content ol,.richeditor138603824__editor .public-DraftEditor-content ul{display:flex;flex-direction:column;padding:0}.richeditor138603824__editor .public-DraftEditor-content a,.richeditor138603824__editor .public-DraftEditor-content a:visited{color:inherit;text-decoration:none}.richeditor138603824__header-one:not(li),.richeditor138603824__header-two:not(li),.richeditor138603824__header-three:not(li),.richeditor138603824__header-four:not(li),.richeditor138603824__header-five:not(li),.richeditor138603824__header-six:not(li){margin-block:0;margin:0}.richeditor138603824__header-one,.richeditor138603824__editor li.richeditor138603824__header-one .public-DraftStyleDefault-block{font:var(--rt-h1-fontStyle, normal) var(--rt-h1-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h1-fontSize, 72px)/var(--rt-h1-lineHeight, 1.33) var(--rt-h1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__header-two,.richeditor138603824__editor li.richeditor138603824__header-two .public-DraftStyleDefault-block{font:var(--rt-h2-fontStyle, normal) var(--rt-h2-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h2-fontSize, 42px)/var(--rt-h2-lineHeight, 1.2) var(--rt-h2-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__header-three,.richeditor138603824__editor li.richeditor138603824__header-three .public-DraftStyleDefault-block{font:var(--rt-h3-fontStyle, normal) var(--rt-h3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h3-fontSize, 38px)/var(--rt-h3-lineHeight, 1.2) var(--rt-h3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__header-four,.richeditor138603824__editor li.richeditor138603824__header-four .public-DraftStyleDefault-block{font:var(--rt-h4-fontStyle, normal) var(--rt-h4-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h4-fontSize, 34px)/var(--rt-h4-lineHeight, 1.2) var(--rt-h4-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__header-five,.richeditor138603824__editor li.richeditor138603824__header-five .public-DraftStyleDefault-block{font:var(--rt-h5-fontStyle, normal) var(--rt-h5-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h5-fontSize, 28px)/var(--rt-h5-lineHeight, 1.2) var(--rt-h5-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__header-six,.richeditor138603824__editor li.richeditor138603824__header-six .public-DraftStyleDefault-block{font:var(--rt-h6-fontStyle, normal) var(--rt-h6-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h6-fontSize, 22px)/var(--rt-h6-lineHeight, 1.2) var(--rt-h6-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__paragraph-one,.richeditor138603824__editor li.richeditor138603824__paragraph-one .public-DraftStyleDefault-block{font:var(--rt-p1-fontStyle, normal) var(--rt-p1-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p1-fontSize, 18px)/var(--rt-p1-lineHeight, 24px) var(--rt-p1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__unstyled,.richeditor138603824__editor li.richeditor138603824__unstyled .public-DraftStyleDefault-block{font:var(--rt-unstyled-fontStyle, normal) var(--rt-unstyled-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-unstyled-fontSize, 16px)/var(--rt-unstyled-lineHeight, 24px) var(--rt-unstyled-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__paragraph-three,.richeditor138603824__editor li.richeditor138603824__paragraph-three .public-DraftStyleDefault-block{font:var(--rt-p3-fontStyle, normal) var(--rt-p3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p3-fontSize, 14px)/var(--rt-p3-lineHeight, 18px) var(--rt-p3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-one:first-child~li{font:var(--rt-h1-fontStyle, normal) var(--rt-h1-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h1-fontSize, 72px)/var(--rt-h1-lineHeight, 1.33) var(--rt-h1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-one:first-child~li::marker{line-height:var(--rt-h1-fontSize, 72px)}.richeditor138603824__editor li.richeditor138603824__header-two:first-child~li{font:var(--rt-h2-fontStyle, normal) var(--rt-h2-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h2-fontSize, 42px)/var(--rt-h2-lineHeight, 1.2) var(--rt-h2-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-two:first-child~li::marker{line-height:var(--rt-h2-fontSize, 42px)}.richeditor138603824__editor li.richeditor138603824__header-three:first-child~li{font:var(--rt-h3-fontStyle, normal) var(--rt-h3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h3-fontSize, 38px)/var(--rt-h3-lineHeight, 1.2) var(--rt-h3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-three:first-child~li::marker{line-height:var(--rt-h3-fontSize, 38px)}.richeditor138603824__editor li.richeditor138603824__header-four:first-child~li{font:var(--rt-h4-fontStyle, normal) var(--rt-h4-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h4-fontSize, 34px)/var(--rt-h4-lineHeight, 1.2) var(--rt-h4-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-four:first-child~li::marker{line-height:var(--rt-h4-fontSize, 34px)}.richeditor138603824__editor li.richeditor138603824__header-five:first-child~li{font:var(--rt-h5-fontStyle, normal) var(--rt-h5-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h5-fontSize, 28px)/var(--rt-h5-lineHeight, 1.2) var(--rt-h5-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-five:first-child~li::marker{line-height:var(--rt-h5-fontSize, 28px)}.richeditor138603824__editor li.richeditor138603824__header-six:first-child~li{font:var(--rt-h6-fontStyle, normal) var(--rt-h6-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h6-fontSize, 22px)/var(--rt-h6-lineHeight, 1.2) var(--rt-h6-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__header-six:first-child~li::marker{line-height:var(--rt-h6-fontSize, 22px)}.richeditor138603824__editor li.richeditor138603824__paragraph-one:first-child~li{font:var(--rt-p1-fontStyle, normal) var(--rt-p1-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p1-fontSize, 18px)/var(--rt-p1-lineHeight, 24px) var(--rt-p1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__unstyled:first-child~li{font:var(--rt-unstyled-fontStyle, normal) var(--rt-unstyled-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-unstyled-fontSize, 16px)/var(--rt-unstyled-lineHeight, 24px) var(--rt-unstyled-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor138603824__editor li.richeditor138603824__paragraph-three:first-child~li{font:var(--rt-p3-fontStyle, normal) var(--rt-p3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p3-fontSize, 14px)/var(--rt-p3-lineHeight, 18px) var(--rt-p3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth0{margin-inline-start:2ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth1{margin-inline-start:4ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth2{margin-inline-start:6ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth3{margin-inline-start:8ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth4{margin-inline-start:10ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth0:first-child{margin-inline-start:2ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0{margin-inline-start:2ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+10){margin-inline-start:3ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+100){margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+1000){margin-inline-start:5ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth1:first-child{margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1{margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+10){margin-inline-start:5ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+100){margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+1000){margin-inline-start:7ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth2:first-child{margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2{margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+10){margin-inline-start:7ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+100){margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+1000){margin-inline-start:9ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth3:first-child{margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3{margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+10){margin-inline-start:9ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+100){margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+1000){margin-inline-start:11ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth4:first-child{margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4{margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+10){margin-inline-start:11ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+100){margin-inline-start:12ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+1000){margin-inline-start:13ch}.richeditor138603824__align-left{text-align:left;align-self:flex-start}.richeditor138603824__align-right{text-align:right;align-self:flex-end}.richeditor138603824__align-center{text-align:center;align-self:center}.richeditor138603824__align-justify{text-align:justify;align-self:stretch}.richeditor138603824__withMargin{display:inline-block}.richeditor138603824__dir-rtl,.richeditor138603824__editor .public-DraftStyleDefault-rtl{direction:rtl}.richeditor138603824__editor .public-DraftStyleDefault-listRTL{direction:rtl;text-align:right;max-width:100%}
1
+ .addressinput1375149515__tableAddressInput{height:36px!important;margin-left:-1px;display:flex!important;align-items:center;width:100%}.addressinput1375149515__tableAddressInput>div{padding:0!important;width:100%}.addressinput1375149515__tableAddressInput:focus-within{margin-left:2px}.actionsmenu3707053799__action{margin-left:calc(var(--wds-space-100, 6px)*-1)}.formaudiofield1598691903__addItem{height:120px!important;box-sizing:border-box}.formaudiofield1598691903__addItem:focus-within{box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wds-color-blue-300, var(--wsr-color-B30)));border-radius:var(--wds-border-radius-400, 8px)}.formaudiofield1598691903__addItem.formaudiofield1598691903--disabled{pointer-events:auto!important}.formaudiofield1598691903__addItem.formaudiofield1598691903--error{border:1px solid var(--wds-color-red-100, var(--wsr-color-R10))!important}.formaudiofield1598691903__mediaTitle{line-height:18px!important}.audioplayer1627877349__root{width:fit-content;z-index:1000;position:fixed!important;bottom:42px;right:48px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.cellcolorview3348088318__hashPrefix{color:var(--wsr-color-D40, #868aa5);font-size:14px;font-weight:300;line-height:1}.colorview2640372915__view{width:100%}.colorview2640372915__fillPreview{flex-shrink:0}.colorview2640372915__view .colorview2640372915__fillPreview{width:18px;height:18px;min-width:18px!important;min-height:18px!important}.deletedialog591839243__layout{max-width:510px!important}.formdocumentfield125589374__viewWrapper{border-radius:var(--wds-border-radius-300, calc(2px * 3));border:1px solid var(--wds-color-blue-300, var(--wsr-color-B30))}.formdocumentfield125589374__viewWrapper:hover{background:var(--wds-color-blue-500, var(--wsr-color-B50));cursor:pointer}.formdocumentfield125589374__textWidth{max-width:calc(100% - 196px)}.formdocumentfield125589374__documentLoader{padding-top:21px;padding-bottom:21px}.formdocumentfield125589374__addDocument{padding-top:17px!important;padding-bottom:17px!important}.formdocumentfield125589374__addDocument.formdocumentfield125589374--error{border:1px solid var(--wds-color-red-100, var(--wsr-color-R10))!important}.formdocumentfield125589374__addItemWrapper:focus-within{box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wds-color-blue-300, var(--wsr-color-B30)));border-radius:var(--wds-border-radius-400, calc(2px * 4))}.exclamation107353727__exclamation{display:flex;justify-content:center;align-items:center;box-sizing:border-box;border-radius:3px;cursor:pointer}.exclamation107353727__exclamation.exclamation107353727---type-7-warning:not(.exclamation107353727--customSize),.exclamation107353727__exclamation.exclamation107353727---type-5-error:not(.exclamation107353727--customSize){width:24px;height:24px}.exclamation107353727__exclamation.exclamation107353727---type-7-warning{color:var(--wds-color-fill-warning-primary)}.exclamation107353727__exclamation.exclamation107353727---type-5-error{color:var(--wds-color-fill-destructive-primary)}.exclamation107353727__actions{display:flex;flex-direction:column}.exclamation107353727__action{white-space:normal!important;height:auto!important;text-align:left;gap:6px}.exclamation107353727__action+.exclamation107353727__action{margin-top:6px}.exclamation107353727__action.exclamation107353727--accented{color:var(--wds-color-blue-100)}.exclamation107353727__action.exclamation107353727--accented:hover{color:var(--wds-color-blue-200)}.highlightedtext1316333891__root.highlightedtext1316333891--highlightedBackground{animation:highlightedtext1316333891__highlighted 150ms ease-out 1 forwards}.highlightedtext1316333891__substring.highlightedtext1316333891--isHighlighted{animation:highlightedtext1316333891__highlighted-match 150ms ease-out 50ms 1 forwards}@keyframes highlightedtext1316333891__highlighted{0%{background-color:transparent}to{background-color:var(--wds-color-yellow-400, var(--wsr-color-Y40))}}@keyframes highlightedtext1316333891__highlighted-match{0%{background-color:transparent}to{background-color:var(--wds-color-yellow-200, var(--wsr-color-Y20))}}.thumbnailreplaceoverlay476914298__root{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);border-radius:3px}.thumbnailreplaceoverlay476914298__icon{color:#fff;width:18px;height:18px}.cellmediaeditshell2329680740__root{width:100%;height:100%}.pasteurlbutton8757955__root{margin-top:6px}.pasteurlbutton8757955__iconButtonTooltip{height:max-content}.pasteurlbutton8757955__iconButton{width:24px;height:24px}.formmediagalleryfield466140145__container{display:flex;min-height:128px;max-height:259px}.formmediagalleryfield466140145__viewBox{display:flex;height:100%;width:100%;flex-wrap:wrap}.formmediagalleryfield466140145__addItemWrapper{height:128px;width:100%;box-sizing:border-box}.formmediagalleryfield466140145__addItem{box-sizing:border-box}.formmediagalleryfield466140145__overlay{width:initial!important;min-width:382px!important}.formmediagalleryfield466140145__image.formmediagalleryfield466140145--withMarginRight{margin-right:3px}.formmediagalleryfield466140145__image.formmediagalleryfield466140145--withMarginTop{margin-top:3px}.formmediagalleryfield466140145__previewImage{max-height:calc(100% - 12px)!important}.formmediagalleryfield466140145__previewVideo{border-radius:8px;max-width:100%;max-height:calc(100% - 12px)!important}.mediaimage3136155830__root{display:flex;align-items:center;flex-shrink:0;position:relative;box-sizing:border-box}.mediaimage3136155830__root.mediaimage3136155830--error{--mediaimage3136155830-from:calc(50% - 0.5px);--mediaimage3136155830-to:calc(50% + 0.5px);background-image:linear-gradient(to bottom right,transparent var(--mediaimage3136155830-from),var(--wds-color-red-200, var(--wsr-color-R20)) var(--mediaimage3136155830-from),var(--wds-color-red-200, var(--wsr-color-R20)) var(--mediaimage3136155830-to),transparent var(--mediaimage3136155830-to))}.mediaimage3136155830__root.mediaimage3136155830--error>*{opacity:0}.overlay929412153__iconOverlay{position:absolute;color:var(--wds-color-white, var(--wsr-color-D80, #FFFFFF));background-color:transparent;filter:drop-shadow(0 1px 1px rgba(22,45,61,.6));-webkit-filter:drop-shadow(0 1px 1px rgba(22,45,61,.6))}.overlay929412153__iconOverlay.overlay929412153---size-5-small{width:20px;height:20px}.overlay929412153__iconOverlay.overlay929412153---size-6-medium{width:24px;height:24px}.overlay929412153__iconOverlay.overlay929412153---size-5-large{width:28px;height:28px}.overlay929412153__iconOverlay.overlay929412153---placement-7-topLeft{top:2px;left:2px}.overlay929412153__iconOverlay.overlay929412153---placement-10-bottomLeft{bottom:2px;left:2px}.medialoader3943402091__loader{border-radius:6px}.medialoader3943402091__loader.medialoader3943402091--isDashed{border:dashed 1px var(--wds-color-blue-300, var(--wsr-color-B30))}.medialoader3943402091__loader.medialoader3943402091--isSolid{border:solid 1px var(--wds-color-blue-300, var(--wsr-color-B30))}.mediatag1858236787__root{box-sizing:border-box;padding:3px 6px 3px 3px;border-radius:3px;max-height:24px;min-width:54px;max-width:100%;background-color:var(--wds-color-blue-400, var(--wsr-color-B40))}.cellmultidocumentedit837926089__chipTrigger{display:flex;align-items:center;min-width:0;max-width:100%;margin:0;padding:0;border:0;background:0 0;font:inherit;color:inherit;text-align:inherit;cursor:pointer}.formmultidocument2239173731__viewRoot{border-radius:var(--wds-border-radius-300, calc(2px * 3));border:1px solid var(--wds-color-blue-300, var(--wsr-color-B30))}.formmultidocument2239173731__singleViewWrapper{border-radius:0;border-bottom:1px solid var(--wds-color-neutral-600, var(--wsr-color-D60));background-color:transparent!important}.formmultidocument2239173731__viewRoot>div:first-child .formmultidocument2239173731__singleViewWrapper{border-top-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-top-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.formmultidocument2239173731__singleViewWrapper:hover{background-color:var(--wds-color-blue-500, var(--wsr-color-B50))!important}.formmultidocument2239173731__singleViewWrapper:focus-visible{border-bottom:1px solid transparent;position:relative;z-index:1}.formmultidocument2239173731__addDocumentButton{border-bottom-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-bottom-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.formmultidocument2239173731__addDocumentButton:focus-within{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:var(--wds-border-radius-300, calc(2px * 3));border-bottom-right-radius:var(--wds-border-radius-300, calc(2px * 3))}.cellmultireferenceinput1250892502__root{width:100%;box-sizing:border-box;--wds-input-border-color:transparent;--wds-input-border-color-hover:transparent;--wds-input-border-color-focus:transparent;--wds-input-background-fill-default:transparent;--wds-input-background-fill-hover:transparent;--wds-input-shadow-focus-standard:0 0 0 0 transparent}.cellreferenceinput720776509__root{width:100%;height:100%;display:flex;align-items:center}.cellreferenceinput720776509__autocomplete{width:100%}.richcontentdefaultvalueinput1140021856__richContentEditorContainer .richcontentdefaultvalueinput1140021856__editor{max-height:calc(40vh - var(--topToolbarHeight) - var(--bottomToolbarHeight))}.richcontentforminput220691737__root{outline:0;box-sizing:border-box;border:1px solid var(--wds-input-border-color, var(--wsr-color-B40, #D6E6FE));border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richcontentforminput220691737__root:focus-within{border:1px solid var(--wds-input-border-color-focus, var(--wsr-color-B10, #116DFF));box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wsr-color-F00, #A6D0FF))}.richcontentforminput220691737__root .richcontentforminput220691737__editor{overflow-y:auto;max-height:calc(80vh - var(--topToolbarHeight) - var(--bottomToolbarHeight))}.richcontentformreadonlyinput3634540621__root{outline:0;box-sizing:border-box;border:1px solid var(--wds-color-black-600);border-radius:var(--wds-border-radius-300)}.richcontentformreadonlyinput3634540621__root:focus-within{border:1px solid var(--wds-color-blue-100);box-shadow:var(--wds-input-shadow-focus-standard)}.fullscreenmodal1271704472__modalContent{display:flex;flex-direction:column;position:relative;height:100%;width:782px;background-color:var(--wds-color-white, var(--wsr-color-D80, #ffffff));border-radius:var(--wds-border-radius-300, var(--wsr-border-radius-06, 6px));margin-top:24px}.publishloader4081695798__publishLoader{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--wds-color-white);z-index:5000;border-radius:inherit}.togglefullscreenbutton3614480925__root{z-index:5;box-sizing:border-box;position:absolute;right:0;top:calc(50% - 16px)!important;padding-right:3px}.togglefullscreenbutton3614480925__root button{border-radius:6px!important}.richcontenteditor3438875334__root{position:relative;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)}.richcontenteditor3438875334__root,.richcontenteditor3438875334__toolbarContainer,.richcontenteditor3438875334__footerToolbarContainer{width:100%;box-sizing:border-box}.richcontenteditor3438875334__toolbarContainer div{box-sizing:border-box}.richcontenteditor3438875334__toolbarAndFullScreenButtonWrapper{display:flex;position:relative}.richcontenteditor3438875334__editor{box-sizing:border-box;padding:36px 24px 36px 55px}.richcontenteditor3438875334__modalEditor{display:flex;flex-direction:column;flex:1;height:100%}.richcontenteditor3438875334__modalEditor .richcontenteditor3438875334__editor{overflow-y:auto;flex:1;min-width:592px;box-sizing:border-box}.richcontenteditor3438875334__modalEditor .richcontenteditor3438875334__footerToolbarContainer{margin-top:9px}.richcontenteditor3438875334__toolbarContainer button[data-hook~=text-button-headings]>span{display:inline-flex;padding-inline-end:3px!important}.richcontenteditor3438875334__toolbarContainer button[data-hook~=text-button-ai]>span{padding-inline-end:9px!important}.richcontenttoolbar1684532750__toolbar{border-top:1px solid rgba(51,51,51,.1);z-index:2;margin-right:auto;padding-left:6px;margin-left:auto;position:relative;height:40px;display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box}.richcontenttoolbar1684532750__toolbarButton{line-height:40px;background:0 0;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;margin:0 5px 0 0}.richcontenttoolbar1684532750__toolbarButton:disabled{color:graytext}.richcontenttoolbar1684532750__separator{width:1px;height:20px;margin:0 8px 0 3px;background:rgba(51,51,51,.1)}.richcontenttoolbar1684532750__toolbar label{padding:0 8px}.richcontentviewer2057557000__root{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:36px}.richcontentviewer2057557000__root.richcontentviewer2057557000--isFullScreen{padding:12px 24px}.richcontentviewer2057557000__root:not(.richcontentviewer2057557000--isFullScreen){padding:6px 24px 6px 12px}.richcontentviewer2057557000__root ToggleButton{margin:0;padding:0;border:0;position:absolute;top:2px!important;right:2px;width:30px;height:30px}.richcontentviewer2057557000__viewer{height:calc(100% - 36px);width:100%}.richcontentviewer2057557000__modalViewer{min-width:592px;overflow:auto}.richtexteditor633349545__root{width:100%;box-sizing:border-box;outline:0;overflow:hidden;border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richtexteditor633349545__root.richtexteditor633349545---border-4-none{border:0}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard{border:1px solid var(--wds-input-border-color, var(--wsr-color-B40, #D6E6FE))}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard:focus,.richtexteditor633349545__root.richtexteditor633349545---border-8-standard:focus-within{border:1px solid var(--wds-input-border-color-focus, var(--wsr-color-B10, #116DFF));box-shadow:var(--wds-input-shadow-focus-standard, 0 0 0 3px var(--wsr-color-F00, #A6D0FF))}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-5-error{border:1px solid var(--wds-color-border-destructive-secondary-active, var(--wsr-color-R10, #E62214))}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-5-error:focus,.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-5-error:focus-within{border:1px solid var(--wds-color-border-destructive-secondary-active, var(--wsr-color-R10, #E62214));box-shadow:var(--wds-input-shadow-focus-destructive, 0 0 0 3px var(--wsr-color-R40, #FBD0CD))}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-7-warning{border:1px solid var(--wds-color-border-warning-secondary-active, var(--wsr-color-Y10, #FFB700))}.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-7-warning:focus,.richtexteditor633349545__root.richtexteditor633349545---border-8-standard.richtexteditor633349545---status-7-warning:focus-within{border:1px solid var(--wds-color-border-warning-secondary-active, var(--wsr-color-Y10, #FFB700));box-shadow:var(--wds-input-shadow-focus-warning, 0 0 0 3px var(--wsr-color-Y40, #FFE2A5))}.richtexteditor633349545__nativeInput{position:absolute;opacity:0;padding:0;margin:0;border:0;width:0;height:0}.richtexteditor633349545__editor{height:auto;line-height:auto;display:flex;width:100%;height:100%;min-height:234px;overflow:hidden;box-sizing:border-box;flex-direction:row;border-radius:var(--wds-input-border-radius-default-medium, var(--wsr-border-radius-06, 6px))}.richtexteditor633349545__editor.richtexteditor633349545--isFullScreen{max-width:782px;min-width:582px;background:var(--wds-color-black-700)}.richtexteditor633349545__editor:not(.richtexteditor633349545--isFullScreen){max-height:80vh}.richtexteditor633349545__editor>div{flex:1;max-width:100%}.toolbar23812805__root{padding:12px 18px;display:flex;border-bottom:1px solid var(--wds-color-blue-400, var(--wsr-color-B40, #d6dcff));background:var(--wds-color-white, var(--wsr-color-D80, #ffffff));align-items:center}.toolbar23812805__item{display:flex;margin-right:12px}.toolbar23812805__item svg,.toolbar23812805__item svg path,.toolbar23812805__item svg text{color:inherit;fill:currentColor}.toolbar23812805__separator{display:inline-flex;margin-right:12px;border-left:1px solid #ddd;align-self:stretch}.toolbar23812805__clearFormatting{margin-left:auto}.toolbar23812805__fullScreen{margin-right:0}.toolbar23812805__dropdownItemContent{height:36px;width:100%;display:flex;gap:12px;justify-content:space-between;align-items:center}.toolbar23812805__dropdownItemContent.toolbar23812805--selected .toolbar23812805__dropdownItemTitle,.toolbar23812805__dropdownItemContent.toolbar23812805--selected .toolbar23812805__dropdownItemSubtitle{color:var(--wds-color-white)!important}.toolbar23812805__dropdownItemSubtitle{color:var(--wds-color-black-400)!important;padding-right:12px;flex-shrink:0}.toolbar23812805__dropdownHeaderOne{font-weight:var(--wds-font-weight-bold)!important;font-size:36px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, var(--wsr-font-family, Madefor))!important}.toolbar23812805__dropdownHeaderTwo{font-weight:var(--wds-font-weight-bold)!important;font-size:32px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownHeaderThree{font-weight:var(--wds-font-weight-medium)!important;font-size:28px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownHeaderFour{font-weight:var(--wds-font-weight-bold)!important;font-size:24px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownHeaderFive{font-weight:var(--wds-font-weight-bold)!important;font-size:22px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownHeaderSix{font-weight:var(--wds-font-weight-medium)!important;font-size:20px!important;line-height:1.2!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownParagraphOne{font-weight:var(--wds-font-weight-medium)!important;font-size:18px!important;line-height:1.33!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownNormalText{font-weight:var(--wds-font-weight-medium)!important;font-size:var(--wds-font-size-500)!important;line-height:var(--wds-font-line-height-300)!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.toolbar23812805__dropdownParagraphThree{font-weight:var(--wds-font-weight-medium)!important;font-size:14px!important;line-height:1.29!important;font-family:var(--wds-font-family-default, Madefor, Helvetica Neue, Helvetica, Arial, sans-serif)!important}.textview970162522__textView::after{content:"";display:block}.richeditor83967351__root{display:flex;flex-direction:column;font-weight:var(--wds-font-weight-medium, 500);font-size:var(--wds-font-size-500);line-height:var(--wds-font-line-height-300);font-family:var(--wds-font-family-default, var(--wsr-font-family, Madefor))}.richeditor83967351__editor{box-sizing:border-box;overflow:auto;display:flex;flex-direction:column;flex:1;cursor:text;color:var(--wds-color-black-100, var(--wsr-color-D10, #131720));background:var(--wds-color-black-700, var(--wsr-color-D70, #edeef2))}.richeditor83967351__editor .DraftEditor-root{width:100%;height:100%}.richeditor83967351__editor .DraftEditor-root [data-contents]{overflow:auto}.richeditor83967351__editor .DraftEditor-editorContainer{display:flex;min-height:100%;background:#fff}.richeditor83967351__editor .public-DraftEditor-content{padding:12px 24px 24px;min-height:100%;width:100%;box-sizing:border-box}.richeditor83967351__editor .public-DraftEditor-content ol,.richeditor83967351__editor .public-DraftEditor-content ul{display:flex;flex-direction:column;padding:0}.richeditor83967351__editor .public-DraftEditor-content a,.richeditor83967351__editor .public-DraftEditor-content a:visited{color:inherit;text-decoration:none}.richeditor83967351__header-one:not(li),.richeditor83967351__header-two:not(li),.richeditor83967351__header-three:not(li),.richeditor83967351__header-four:not(li),.richeditor83967351__header-five:not(li),.richeditor83967351__header-six:not(li){margin-block:0;margin:0}.richeditor83967351__header-one,.richeditor83967351__editor li.richeditor83967351__header-one .public-DraftStyleDefault-block{font:var(--rt-h1-fontStyle, normal) var(--rt-h1-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h1-fontSize, 72px)/var(--rt-h1-lineHeight, 1.33) var(--rt-h1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__header-two,.richeditor83967351__editor li.richeditor83967351__header-two .public-DraftStyleDefault-block{font:var(--rt-h2-fontStyle, normal) var(--rt-h2-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h2-fontSize, 42px)/var(--rt-h2-lineHeight, 1.2) var(--rt-h2-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__header-three,.richeditor83967351__editor li.richeditor83967351__header-three .public-DraftStyleDefault-block{font:var(--rt-h3-fontStyle, normal) var(--rt-h3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h3-fontSize, 38px)/var(--rt-h3-lineHeight, 1.2) var(--rt-h3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__header-four,.richeditor83967351__editor li.richeditor83967351__header-four .public-DraftStyleDefault-block{font:var(--rt-h4-fontStyle, normal) var(--rt-h4-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h4-fontSize, 34px)/var(--rt-h4-lineHeight, 1.2) var(--rt-h4-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__header-five,.richeditor83967351__editor li.richeditor83967351__header-five .public-DraftStyleDefault-block{font:var(--rt-h5-fontStyle, normal) var(--rt-h5-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h5-fontSize, 28px)/var(--rt-h5-lineHeight, 1.2) var(--rt-h5-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__header-six,.richeditor83967351__editor li.richeditor83967351__header-six .public-DraftStyleDefault-block{font:var(--rt-h6-fontStyle, normal) var(--rt-h6-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h6-fontSize, 22px)/var(--rt-h6-lineHeight, 1.2) var(--rt-h6-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__paragraph-one,.richeditor83967351__editor li.richeditor83967351__paragraph-one .public-DraftStyleDefault-block{font:var(--rt-p1-fontStyle, normal) var(--rt-p1-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p1-fontSize, 18px)/var(--rt-p1-lineHeight, 24px) var(--rt-p1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__unstyled,.richeditor83967351__editor li.richeditor83967351__unstyled .public-DraftStyleDefault-block{font:var(--rt-unstyled-fontStyle, normal) var(--rt-unstyled-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-unstyled-fontSize, 16px)/var(--rt-unstyled-lineHeight, 24px) var(--rt-unstyled-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__paragraph-three,.richeditor83967351__editor li.richeditor83967351__paragraph-three .public-DraftStyleDefault-block{font:var(--rt-p3-fontStyle, normal) var(--rt-p3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p3-fontSize, 14px)/var(--rt-p3-lineHeight, 18px) var(--rt-p3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-one:first-child~li{font:var(--rt-h1-fontStyle, normal) var(--rt-h1-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h1-fontSize, 72px)/var(--rt-h1-lineHeight, 1.33) var(--rt-h1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-one:first-child~li::marker{line-height:var(--rt-h1-fontSize, 72px)}.richeditor83967351__editor li.richeditor83967351__header-two:first-child~li{font:var(--rt-h2-fontStyle, normal) var(--rt-h2-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h2-fontSize, 42px)/var(--rt-h2-lineHeight, 1.2) var(--rt-h2-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-two:first-child~li::marker{line-height:var(--rt-h2-fontSize, 42px)}.richeditor83967351__editor li.richeditor83967351__header-three:first-child~li{font:var(--rt-h3-fontStyle, normal) var(--rt-h3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h3-fontSize, 38px)/var(--rt-h3-lineHeight, 1.2) var(--rt-h3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-three:first-child~li::marker{line-height:var(--rt-h3-fontSize, 38px)}.richeditor83967351__editor li.richeditor83967351__header-four:first-child~li{font:var(--rt-h4-fontStyle, normal) var(--rt-h4-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h4-fontSize, 34px)/var(--rt-h4-lineHeight, 1.2) var(--rt-h4-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-four:first-child~li::marker{line-height:var(--rt-h4-fontSize, 34px)}.richeditor83967351__editor li.richeditor83967351__header-five:first-child~li{font:var(--rt-h5-fontStyle, normal) var(--rt-h5-fontWeight, var(--wds-font-weight-bold, 700)) var(--rt-h5-fontSize, 28px)/var(--rt-h5-lineHeight, 1.2) var(--rt-h5-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-five:first-child~li::marker{line-height:var(--rt-h5-fontSize, 28px)}.richeditor83967351__editor li.richeditor83967351__header-six:first-child~li{font:var(--rt-h6-fontStyle, normal) var(--rt-h6-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-h6-fontSize, 22px)/var(--rt-h6-lineHeight, 1.2) var(--rt-h6-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__header-six:first-child~li::marker{line-height:var(--rt-h6-fontSize, 22px)}.richeditor83967351__editor li.richeditor83967351__paragraph-one:first-child~li{font:var(--rt-p1-fontStyle, normal) var(--rt-p1-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p1-fontSize, 18px)/var(--rt-p1-lineHeight, 24px) var(--rt-p1-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__unstyled:first-child~li{font:var(--rt-unstyled-fontStyle, normal) var(--rt-unstyled-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-unstyled-fontSize, 16px)/var(--rt-unstyled-lineHeight, 24px) var(--rt-unstyled-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.richeditor83967351__editor li.richeditor83967351__paragraph-three:first-child~li{font:var(--rt-p3-fontStyle, normal) var(--rt-p3-fontWeight, var(--wds-font-weight-medium, 500)) var(--rt-p3-fontSize, 14px)/var(--rt-p3-lineHeight, 18px) var(--rt-p3-fontFamily, var(--wds-font-family-default, var(--wsr-font-family, Madefor)))}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth0{margin-inline-start:2ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth1{margin-inline-start:4ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth2{margin-inline-start:6ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth3{margin-inline-start:8ch}.public-DraftStyleDefault-ul .public-DraftStyleDefault-depth4{margin-inline-start:10ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth0:first-child{margin-inline-start:2ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0{margin-inline-start:2ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+10){margin-inline-start:3ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+100){margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth0:nth-child(n+1000){margin-inline-start:5ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth1:first-child{margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1{margin-inline-start:4ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+10){margin-inline-start:5ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+100){margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth1:nth-child(n+1000){margin-inline-start:7ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth2:first-child{margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2{margin-inline-start:6ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+10){margin-inline-start:7ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+100){margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth2:nth-child(n+1000){margin-inline-start:9ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth3:first-child{margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3{margin-inline-start:8ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+10){margin-inline-start:9ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+100){margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth3:nth-child(n+1000){margin-inline-start:11ch}.public-DraftStyleDefault-ol li.public-DraftStyleDefault-depth4:first-child{margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4{margin-inline-start:10ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+10){margin-inline-start:11ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+100){margin-inline-start:12ch}.public-DraftStyleDefault-ol li:first-child~li.public-DraftStyleDefault-depth4:nth-child(n+1000){margin-inline-start:13ch}.richeditor83967351__align-left{text-align:left;align-self:flex-start}.richeditor83967351__align-right{text-align:right;align-self:flex-end}.richeditor83967351__align-center{text-align:center;align-self:center}.richeditor83967351__align-justify{text-align:justify;align-self:stretch}.richeditor83967351__withMargin{display:inline-block}.richeditor83967351__dir-rtl,.richeditor83967351__editor .public-DraftStyleDefault-rtl{direction:rtl}.richeditor83967351__editor .public-DraftStyleDefault-listRTL{direction:rtl;text-align:right;max-width:100%}
@@ -12,8 +12,84 @@ export type SpecificValuesValidationRule = {
12
12
  specificValues: SpecificValue[];
13
13
  };
14
14
 
15
+ export type PatternValidationRule = {
16
+ pattern: string;
17
+ };
18
+
19
+ export interface RequiredFieldValidationRuleConfig {
20
+ type: 'required';
21
+ label: string;
22
+ tooltip: string;
23
+ }
24
+
25
+ export interface CharactersLimitFieldValidationRuleConfig {
26
+ type: 'charactersLimit';
27
+ label: string;
28
+ tooltip: string;
29
+ minLabel: string;
30
+ maxLabel: string;
31
+ separator: string;
32
+ outOfBoundsError(min: number, max: number): string;
33
+ maxBelowMinError: string;
34
+ }
35
+
36
+ export interface SpecificValuesFieldValidationRuleConfig {
37
+ type: 'specificValues';
38
+ label: string;
39
+ tooltip: string;
40
+ blankError: string;
41
+ duplicateError: string;
42
+ addButton: string;
43
+ removeButton: string;
44
+ exclusiveRulesExplanation: string;
45
+ }
46
+
47
+ export interface PatternFieldValidationRuleConfig {
48
+ type: 'pattern';
49
+ label: string;
50
+ tooltip: string;
51
+ inputLabel: string;
52
+ invalidError: string;
53
+ }
54
+
55
+ export type FieldValidationRuleConfig =
56
+ | RequiredFieldValidationRuleConfig
57
+ | CharactersLimitFieldValidationRuleConfig
58
+ | SpecificValuesFieldValidationRuleConfig
59
+ | PatternFieldValidationRuleConfig;
60
+
61
+ export type FieldValidationRule = FieldValidationRuleConfig['type'];
62
+
63
+ export interface FieldValidationSettingsValue {
64
+ required?: boolean;
65
+ charactersLimit?: { min?: number; max?: number };
66
+ specificValues?: SpecificValue[];
67
+ pattern?: string;
68
+ }
69
+
70
+ export type FieldValidationViolation =
71
+ | {
72
+ rule: 'charactersLimit';
73
+ type: 'outOfBounds';
74
+ bound: 'min' | 'max';
75
+ min: number;
76
+ max: number;
77
+ }
78
+ | { rule: 'charactersLimit'; type: 'maxBelowMin' }
79
+ | {
80
+ rule: 'specificValues';
81
+ type: 'blank' | 'duplicate';
82
+ optionId: string;
83
+ }
84
+ | {
85
+ rule: 'specificValues' | 'charactersLimit' | 'pattern';
86
+ type: 'exclusiveRules';
87
+ }
88
+ | { rule: 'pattern'; type: 'invalidPattern' };
89
+
15
90
  export type DataValidationRules = Partial<
16
91
  RequiredValidationRule &
17
92
  CharactersLimitValidationRule &
18
- SpecificValuesValidationRule
93
+ SpecificValuesValidationRule &
94
+ PatternValidationRule
19
95
  >;
@@ -0,0 +1,180 @@
1
+ import {
2
+ getFieldValidationSettingsViolations,
3
+ hasFieldValidationSettingsError,
4
+ } from './field-validation-settings';
5
+
6
+ describe('field validation settings', () => {
7
+ it('allows absent character bounds', () => {
8
+ expect(
9
+ getFieldValidationSettingsViolations({ charactersLimit: {} }),
10
+ ).toEqual([]);
11
+ });
12
+
13
+ it.each([
14
+ {
15
+ name: 'a negative optional minimum',
16
+ value: { charactersLimit: { min: -1 } },
17
+ bound: 'min',
18
+ min: 0,
19
+ },
20
+ {
21
+ name: 'a required minimum below one',
22
+ value: { required: true, charactersLimit: { min: 0 } },
23
+ bound: 'min',
24
+ min: 1,
25
+ },
26
+ {
27
+ name: 'a maximum below one',
28
+ value: { charactersLimit: { max: 0 } },
29
+ bound: 'max',
30
+ min: 1,
31
+ },
32
+ {
33
+ name: 'a minimum above the ceiling',
34
+ value: { charactersLimit: { min: 256_001 } },
35
+ bound: 'min',
36
+ min: 0,
37
+ },
38
+ {
39
+ name: 'a maximum above the ceiling',
40
+ value: { charactersLimit: { max: 256_001 } },
41
+ bound: 'max',
42
+ min: 1,
43
+ },
44
+ ])('reports $name without changing it', ({ value, bound, min }) => {
45
+ const snapshot = JSON.parse(JSON.stringify(value));
46
+
47
+ expect(getFieldValidationSettingsViolations(value)).toContainEqual({
48
+ rule: 'charactersLimit',
49
+ type: 'outOfBounds',
50
+ bound,
51
+ min,
52
+ max: 256_000,
53
+ });
54
+ expect(value).toEqual(snapshot);
55
+ });
56
+
57
+ it('reports a maximum below the minimum without changing the draft', () => {
58
+ const value = { charactersLimit: { min: 10, max: 5 } };
59
+
60
+ expect(getFieldValidationSettingsViolations(value)).toContainEqual({
61
+ rule: 'charactersLimit',
62
+ type: 'maxBelowMin',
63
+ });
64
+ expect(value.charactersLimit).toEqual({ min: 10, max: 5 });
65
+ });
66
+
67
+ it.each([Number.NaN, Number.POSITIVE_INFINITY, Number.NEGATIVE_INFINITY])(
68
+ 'reports a non-finite character bound: %s',
69
+ (min) => {
70
+ expect(
71
+ getFieldValidationSettingsViolations({ charactersLimit: { min } }),
72
+ ).toContainEqual({
73
+ rule: 'charactersLimit',
74
+ type: 'outOfBounds',
75
+ bound: 'min',
76
+ min: 0,
77
+ max: 256_000,
78
+ });
79
+ },
80
+ );
81
+
82
+ it('makes a minimum of zero invalid only while required is enabled', () => {
83
+ const charactersLimit = { min: 0 };
84
+
85
+ expect(
86
+ hasFieldValidationSettingsError({ required: false, charactersLimit }),
87
+ ).toBe(false);
88
+ expect(
89
+ hasFieldValidationSettingsError({ required: true, charactersLimit }),
90
+ ).toBe(true);
91
+ expect(
92
+ hasFieldValidationSettingsError({ required: false, charactersLimit }),
93
+ ).toBe(false);
94
+ expect(charactersLimit).toEqual({ min: 0 });
95
+ });
96
+
97
+ it('reports blank and duplicate specific values after trimming', () => {
98
+ expect(
99
+ getFieldValidationSettingsViolations({
100
+ specificValues: [
101
+ { id: 'blank', value: ' ' },
102
+ { id: 'first', value: 'One' },
103
+ { id: 'duplicate', value: ' One ' },
104
+ { id: 'different-case', value: 'one' },
105
+ ],
106
+ }),
107
+ ).toEqual([
108
+ { rule: 'specificValues', type: 'blank', optionId: 'blank' },
109
+ {
110
+ rule: 'specificValues',
111
+ type: 'duplicate',
112
+ optionId: 'duplicate',
113
+ },
114
+ ]);
115
+ });
116
+
117
+ it('reports every side of an exclusive-rules conflict', () => {
118
+ expect(
119
+ getFieldValidationSettingsViolations({
120
+ charactersLimit: {},
121
+ specificValues: [],
122
+ pattern: '^value$',
123
+ }),
124
+ ).toEqual(
125
+ expect.arrayContaining([
126
+ { rule: 'specificValues', type: 'exclusiveRules' },
127
+ { rule: 'charactersLimit', type: 'exclusiveRules' },
128
+ { rule: 'pattern', type: 'exclusiveRules' },
129
+ ]),
130
+ );
131
+ });
132
+
133
+ it('reports invalid regular expressions without throwing', () => {
134
+ expect(
135
+ getFieldValidationSettingsViolations({ pattern: '[' }),
136
+ ).toContainEqual({ rule: 'pattern', type: 'invalidPattern' });
137
+ expect(hasFieldValidationSettingsError({ pattern: '' })).toBe(false);
138
+ expect(hasFieldValidationSettingsError({ pattern: '^valid$' })).toBe(false);
139
+ });
140
+
141
+ it('allows specificValues alongside charactersLimit when the caller opts out of exclusivity', () => {
142
+ const value = { charactersLimit: {}, specificValues: [] };
143
+
144
+ expect(
145
+ getFieldValidationSettingsViolations(value, undefined, {
146
+ exclusiveSpecificValues: false,
147
+ }),
148
+ ).toEqual([]);
149
+ expect(
150
+ hasFieldValidationSettingsError(value, undefined, {
151
+ exclusiveSpecificValues: false,
152
+ }),
153
+ ).toBe(false);
154
+ });
155
+
156
+ it('reports an overlong pattern as invalid without constructing a RegExp', () => {
157
+ const pattern = '^'.repeat(501);
158
+
159
+ expect(getFieldValidationSettingsViolations({ pattern })).toContainEqual({
160
+ rule: 'pattern',
161
+ type: 'invalidPattern',
162
+ });
163
+ });
164
+
165
+ it('ignores values outside the caller supported rule set', () => {
166
+ const value = {
167
+ required: true,
168
+ charactersLimit: { min: 0 },
169
+ specificValues: [],
170
+ pattern: '[',
171
+ };
172
+
173
+ expect(
174
+ getFieldValidationSettingsViolations(value, ['charactersLimit']),
175
+ ).toEqual([]);
176
+ expect(hasFieldValidationSettingsError(value, ['charactersLimit'])).toBe(
177
+ false,
178
+ );
179
+ });
180
+ });
@@ -0,0 +1,144 @@
1
+ import type {
2
+ FieldValidationRule,
3
+ FieldValidationSettingsValue,
4
+ FieldValidationViolation,
5
+ } from '../types/validation';
6
+
7
+ const CHARACTERS_CEILING = 256_000;
8
+ const MIN_CHARACTERS_FLOOR = 0;
9
+ const MIN_CHARACTERS_FLOOR_WHEN_REQUIRED = 1;
10
+ const MAX_CHARACTERS_FLOOR = 1;
11
+ const MAX_PATTERN_LENGTH = 500;
12
+
13
+ const isOutOfBounds = (value: number, min: number, max: number) =>
14
+ !Number.isFinite(value) || value < min || value > max;
15
+
16
+ const hasInvalidPattern = (pattern: string | undefined) => {
17
+ if (pattern === undefined) {
18
+ return false;
19
+ }
20
+
21
+ if (pattern.length > MAX_PATTERN_LENGTH) {
22
+ return true;
23
+ }
24
+
25
+ try {
26
+ new RegExp(pattern);
27
+ return false;
28
+ } catch {
29
+ return true;
30
+ }
31
+ };
32
+
33
+ export interface FieldValidationSettingsOptions {
34
+ /** Whether `specificValues` rejects `charactersLimit`/`pattern` on the same
35
+ * field. Callers that let a field carry both (e.g. a stored
36
+ * `stringLengthRange` alongside `specificValues`) should pass `false`. */
37
+ exclusiveSpecificValues?: boolean;
38
+ }
39
+
40
+ export const getFieldValidationSettingsViolations = (
41
+ value: FieldValidationSettingsValue,
42
+ supportedRules?: readonly FieldValidationRule[],
43
+ { exclusiveSpecificValues = true }: FieldValidationSettingsOptions = {},
44
+ ): FieldValidationViolation[] => {
45
+ const violations: FieldValidationViolation[] = [];
46
+ const supports = (rule: FieldValidationRule) =>
47
+ supportedRules === undefined || supportedRules.includes(rule);
48
+ const charactersLimit = supports('charactersLimit')
49
+ ? value.charactersLimit
50
+ : undefined;
51
+ const specificValues = supports('specificValues')
52
+ ? value.specificValues
53
+ : undefined;
54
+ const pattern = supports('pattern') ? value.pattern : undefined;
55
+
56
+ const minCharactersFloor =
57
+ supports('required') && value.required
58
+ ? MIN_CHARACTERS_FLOOR_WHEN_REQUIRED
59
+ : MIN_CHARACTERS_FLOOR;
60
+
61
+ if (
62
+ charactersLimit?.min != null &&
63
+ isOutOfBounds(charactersLimit.min, minCharactersFloor, CHARACTERS_CEILING)
64
+ ) {
65
+ violations.push({
66
+ rule: 'charactersLimit',
67
+ type: 'outOfBounds',
68
+ bound: 'min',
69
+ min: minCharactersFloor,
70
+ max: CHARACTERS_CEILING,
71
+ });
72
+ }
73
+
74
+ if (
75
+ charactersLimit?.max != null &&
76
+ isOutOfBounds(charactersLimit.max, MAX_CHARACTERS_FLOOR, CHARACTERS_CEILING)
77
+ ) {
78
+ violations.push({
79
+ rule: 'charactersLimit',
80
+ type: 'outOfBounds',
81
+ bound: 'max',
82
+ min: MAX_CHARACTERS_FLOOR,
83
+ max: CHARACTERS_CEILING,
84
+ });
85
+ }
86
+
87
+ if (
88
+ charactersLimit?.min != null &&
89
+ charactersLimit.max != null &&
90
+ charactersLimit.max < charactersLimit.min
91
+ ) {
92
+ violations.push({ rule: 'charactersLimit', type: 'maxBelowMin' });
93
+ }
94
+
95
+ if (specificValues !== undefined) {
96
+ const normalizedValues = specificValues.map(({ value: optionValue }) =>
97
+ optionValue.trim(),
98
+ );
99
+
100
+ specificValues.forEach((option, index) => {
101
+ if (!normalizedValues[index]) {
102
+ violations.push({
103
+ rule: 'specificValues',
104
+ type: 'blank',
105
+ optionId: option.id,
106
+ });
107
+ } else if (normalizedValues.indexOf(normalizedValues[index]) !== index) {
108
+ violations.push({
109
+ rule: 'specificValues',
110
+ type: 'duplicate',
111
+ optionId: option.id,
112
+ });
113
+ }
114
+ });
115
+ }
116
+
117
+ const hasSpecificValues = specificValues !== undefined;
118
+ const hasCharactersLimit = charactersLimit !== undefined;
119
+ const hasPattern = pattern !== undefined;
120
+
121
+ if (exclusiveSpecificValues && hasSpecificValues && (hasCharactersLimit || hasPattern)) {
122
+ violations.push({ rule: 'specificValues', type: 'exclusiveRules' });
123
+ if (hasCharactersLimit) {
124
+ violations.push({ rule: 'charactersLimit', type: 'exclusiveRules' });
125
+ }
126
+ if (hasPattern) {
127
+ violations.push({ rule: 'pattern', type: 'exclusiveRules' });
128
+ }
129
+ }
130
+
131
+ if (hasInvalidPattern(pattern)) {
132
+ violations.push({ rule: 'pattern', type: 'invalidPattern' });
133
+ }
134
+
135
+ return violations;
136
+ };
137
+
138
+ export const hasFieldValidationSettingsError = (
139
+ value: FieldValidationSettingsValue,
140
+ supportedRules?: readonly FieldValidationRule[],
141
+ options?: FieldValidationSettingsOptions,
142
+ ) =>
143
+ getFieldValidationSettingsViolations(value, supportedRules, options).length >
144
+ 0;