@widergy/energy-ui 3.175.1 → 3.177.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 (60) hide show
  1. package/CHANGELOG.md +19 -3
  2. package/dist/components/UTRichText/components/EditorSkeleton/index.js +1 -0
  3. package/dist/components/UTRichText/components/EditorSkeleton/styles.module.scss +71 -0
  4. package/dist/components/UTRichText/components/SubmitAction/constants.js +1 -0
  5. package/dist/components/UTRichText/components/SubmitAction/index.js +1 -0
  6. package/dist/components/UTRichText/components/SubmitAction/styles.module.scss +5 -0
  7. package/dist/components/UTRichText/components/Toolbar/index.js +1 -0
  8. package/dist/components/UTRichText/components/Toolbar/styles.module.scss +26 -0
  9. package/dist/components/UTRichText/components/ToolbarButton/index.js +1 -0
  10. package/dist/components/UTRichText/constants.js +1 -0
  11. package/dist/components/UTRichText/extensions/CustomKeymap.js +1 -0
  12. package/dist/components/UTRichText/hooks/useModuleResolution.js +1 -0
  13. package/dist/components/UTRichText/hooks/useRichTextEditor.js +1 -0
  14. package/dist/components/UTRichText/index.js +1 -0
  15. package/dist/components/UTRichText/modules/bold/index.js +1 -0
  16. package/dist/components/UTRichText/modules/italic/index.js +1 -0
  17. package/dist/components/UTRichText/modules/list/index.js +1 -0
  18. package/dist/components/UTRichText/modules/listNumbers/index.js +1 -0
  19. package/dist/components/UTRichText/modules/table/TableToolbar/index.js +1 -0
  20. package/dist/components/UTRichText/modules/table/TableToolbar/styles.module.scss +13 -0
  21. package/dist/components/UTRichText/modules/table/ToolbarButton.js +1 -0
  22. package/dist/components/UTRichText/modules/table/extensions.js +1 -0
  23. package/dist/components/UTRichText/modules/table/index.js +1 -0
  24. package/dist/components/UTRichText/registry.js +1 -0
  25. package/dist/components/UTRichText/styles.module.scss +241 -0
  26. package/dist/components/UTRichText/utils/contentBuilders.js +1 -0
  27. package/dist/components/UTRichText/utils.js +1 -0
  28. package/dist/constants/testIds.js +1 -1
  29. package/dist/esm/components/UTRichText/components/EditorSkeleton/index.js +1 -0
  30. package/dist/esm/components/UTRichText/components/EditorSkeleton/styles.module.scss +71 -0
  31. package/dist/esm/components/UTRichText/components/SubmitAction/constants.js +1 -0
  32. package/dist/esm/components/UTRichText/components/SubmitAction/index.js +1 -0
  33. package/dist/esm/components/UTRichText/components/SubmitAction/styles.module.scss +5 -0
  34. package/dist/esm/components/UTRichText/components/Toolbar/index.js +1 -0
  35. package/dist/esm/components/UTRichText/components/Toolbar/styles.module.scss +26 -0
  36. package/dist/esm/components/UTRichText/components/ToolbarButton/index.js +1 -0
  37. package/dist/esm/components/UTRichText/constants.js +1 -0
  38. package/dist/esm/components/UTRichText/extensions/CustomKeymap.js +1 -0
  39. package/dist/esm/components/UTRichText/hooks/useModuleResolution.js +1 -0
  40. package/dist/esm/components/UTRichText/hooks/useRichTextEditor.js +1 -0
  41. package/dist/esm/components/UTRichText/index.js +1 -0
  42. package/dist/esm/components/UTRichText/modules/bold/index.js +1 -0
  43. package/dist/esm/components/UTRichText/modules/italic/index.js +1 -0
  44. package/dist/esm/components/UTRichText/modules/list/index.js +1 -0
  45. package/dist/esm/components/UTRichText/modules/listNumbers/index.js +1 -0
  46. package/dist/esm/components/UTRichText/modules/table/TableToolbar/index.js +1 -0
  47. package/dist/esm/components/UTRichText/modules/table/TableToolbar/styles.module.scss +13 -0
  48. package/dist/esm/components/UTRichText/modules/table/ToolbarButton.js +1 -0
  49. package/dist/esm/components/UTRichText/modules/table/extensions.js +1 -0
  50. package/dist/esm/components/UTRichText/modules/table/index.js +1 -0
  51. package/dist/esm/components/UTRichText/registry.js +1 -0
  52. package/dist/esm/components/UTRichText/styles.module.scss +241 -0
  53. package/dist/esm/components/UTRichText/utils/contentBuilders.js +1 -0
  54. package/dist/esm/components/UTRichText/utils.js +1 -0
  55. package/dist/esm/constants/testIds.js +1 -1
  56. package/dist/esm/index.js +1 -1
  57. package/dist/esm/utils/hooks/useCSSVariables/dimensionTokens.js +1 -1
  58. package/dist/index.js +1 -1
  59. package/dist/utils/hooks/useCSSVariables/dimensionTokens.js +1 -1
  60. package/package.json +19 -2
package/CHANGELOG.md CHANGED
@@ -1,9 +1,25 @@
1
- ## [3.175.1](https://github.com/widergy/energy-ui/compare/v3.175.0...v3.175.1) (2026-08-06)
1
+ # [3.177.0](https://github.com/widergy/energy-ui/compare/v3.176.0...v3.177.0) (2026-08-18)
2
2
 
3
3
 
4
- ### Bug Fixes
4
+ ### Features
5
+
6
+ * [AXCH-2132] table module for utrichtext ([#845](https://github.com/widergy/energy-ui/issues/845)) ([f70072c](https://github.com/widergy/energy-ui/commit/f70072c40322104c35ddf5076df6b336c35231f9))
7
+
8
+ # [3.176.0](https://github.com/widergy/energy-ui/compare/v3.175.1...v3.176.0) (2026-08-14)
9
+
10
+ ### Novedades y Mejoras
11
+
12
+ * Se incorpora un nuevo editor de texto enriquecido que permite escribir y formatear contenido con negrita, itálica, listas con viñetas y listas numeradas. Incluye atajos de teclado, soporte para pegar contenido desde herramientas externas y se adapta a la paleta visual de cada cliente. [#842](https://github.com/widergy/Energy-UI/pull/842) [AXCH-2125](https://widergy.atlassian.net/browse/AXCH-2125) [AXCH-2119](https://widergy.atlassian.net/browse/AXCH-2119) [AXCH-2126](https://widergy.atlassian.net/browse/AXCH-2126)
13
+
14
+ ### Correcciones
15
+
16
+ * Se corrigieron problemas en las pruebas automatizadas del editor de texto que causaban fallos intermitentes al ejecutarse. [#843](https://github.com/widergy/Energy-UI/pull/843) [#844](https://github.com/widergy/Energy-UI/pull/844) [OUG-999](https://widergy.atlassian.net/browse/OUG-999)
17
+
18
+ ## [3.175.1](https://github.com/widergy/energy-ui/compare/v3.175.0...v3.175.1) (2026-08-06)
19
+
20
+ ### Correcciones
5
21
 
6
- * updated docs ([#831](https://github.com/widergy/energy-ui/issues/831)) ([399408f](https://github.com/widergy/energy-ui/commit/399408f516e3e9b142394cb08acc54e5cef843b2))
22
+ * Mejoras internas de la plataforma. [#831](https://github.com/widergy/Energy-UI/pull/831) [`3d089ab`](https://github.com/widergy/Energy-UI/commit/3d089ab) [`b0f6548`](https://github.com/widergy/Energy-UI/commit/b0f6548) [DIS-999](https://widergy.atlassian.net/browse/DIS-999)
7
23
 
8
24
  # [3.175.0](https://github.com/widergy/energy-ui/compare/v3.174.0...v3.175.0) (2026-08-03)
9
25
 
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _propTypes=require("prop-types"),_react=_interopRequireDefault(require("react")),_stylesModule=_interopRequireDefault(require("./styles.module.scss"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const EditorSkeleton=e=>{let{cols:t=3,rows:l=3}=e;const a=Array.from({length:t},(e,t)=>"c".concat(t)),r=Array.from({length:l},(e,t)=>"r".concat(t));return _react.default.createElement("div",{className:_stylesModule.default.root},_react.default.createElement("div",{className:_stylesModule.default.tableWrapper},_react.default.createElement("div",{className:_stylesModule.default.table},_react.default.createElement("div",{className:_stylesModule.default.row},a.map(e=>_react.default.createElement("div",{key:e,className:_stylesModule.default.headerCell},_react.default.createElement("div",{className:_stylesModule.default.bar})))),r.map(e=>_react.default.createElement("div",{key:e,className:_stylesModule.default.row},a.map(e=>_react.default.createElement("div",{key:e,className:_stylesModule.default.bodyCell},_react.default.createElement("div",{className:_stylesModule.default.bar}))))))))};EditorSkeleton.propTypes={cols:_propTypes.number,rows:_propTypes.number};var _default=exports.default=EditorSkeleton;
@@ -0,0 +1,71 @@
1
+ @use '../../../../scss/variables/colors.module.scss' as *;
2
+
3
+ @keyframes editorSkeletonShimmer {
4
+ 0% {
5
+ background-position: -150px;
6
+ }
7
+
8
+ 40% {
9
+ background-position: 350px;
10
+ }
11
+
12
+ 100% {
13
+ background-position: 350px;
14
+ }
15
+ }
16
+
17
+ // Shared shimmer mixin — same colors and animation as UTSkeleton.
18
+ %shimmer {
19
+ animation: editorSkeletonShimmer 2s infinite linear;
20
+ background-color: $skeleton-base;
21
+ background-image: linear-gradient(90deg, $skeleton-base 0, $skeleton-second 50px, $skeleton-base 100px);
22
+ background-size: 600px;
23
+ border-radius: 3px;
24
+ }
25
+
26
+ // Cell content bar (14 px high, full width of its cell).
27
+ .bar {
28
+ @extend %shimmer;
29
+ height: 14px;
30
+ width: 100%;
31
+ }
32
+
33
+ // --- Layout ---
34
+
35
+ .root {
36
+ display: flex;
37
+ flex-direction: column;
38
+ gap: var(--UT-textEditor-gap, 12px);
39
+ }
40
+
41
+ .tableWrapper {
42
+ overflow-x: auto;
43
+ }
44
+
45
+ .table {
46
+ min-width: 100%;
47
+ }
48
+
49
+ .row {
50
+ display: flex;
51
+
52
+ & + & {
53
+ margin-top: -1px;
54
+ }
55
+ }
56
+
57
+ .headerCell {
58
+ background-color: var(--light03);
59
+ border: 1px solid var(--light05);
60
+ flex: 1;
61
+ min-width: 80px;
62
+ padding: var(--UT-textEditor-table-cell-padding-y, 6px) var(--UT-textEditor-table-cell-padding-x, 8px);
63
+ }
64
+
65
+ .bodyCell {
66
+ background-color: var(--light01);
67
+ border: 1px solid var(--light05);
68
+ flex: 1;
69
+ min-width: 80px;
70
+ padding: var(--UT-textEditor-table-cell-padding-y, 6px) var(--UT-textEditor-table-cell-padding-x, 8px);
71
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SUBMIT_BUTTON=void 0;const SUBMIT_BUTTON=exports.SUBMIT_BUTTON={colorTheme:"primary",icon:"EnergyIconSendFilled",size:"medium",text:"Enviar"};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _propTypes=require("prop-types"),_react=_interopRequireDefault(require("react")),_index=_interopRequireDefault(require("../../../UTButton/index.js")),_constants=require("./constants.js"),_stylesModule=_interopRequireDefault(require("./styles.module.scss"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var s=arguments[t];for(var o in s)({}).hasOwnProperty.call(s,o)&&(e[o]=s[o])}return e},_extends.apply(null,arguments)}const SubmitAction=e=>{let{dataTestId:t,disabled:s,loading:o,onSubmit:r,submitButtonProps:n={}}=e;return _react.default.createElement("div",{className:_stylesModule.default.footer},_react.default.createElement(_index.default,_extends({colorTheme:_constants.SUBMIT_BUTTON.colorTheme,dataTestId:t,disabled:s,loading:o,onClick:r,RightIcon:_constants.SUBMIT_BUTTON.icon,size:_constants.SUBMIT_BUTTON.size},n),n.children||_constants.SUBMIT_BUTTON.text))};SubmitAction.propTypes={dataTestId:_propTypes.string,disabled:_propTypes.bool,loading:_propTypes.bool,onSubmit:_propTypes.func,submitButtonProps:_propTypes.object};var _default=exports.default=SubmitAction;
@@ -0,0 +1,5 @@
1
+ .footer {
2
+ display: flex;
3
+ flex-shrink: 0;
4
+ justify-content: flex-end;
5
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=require("@tiptap/react"),_isEmpty=_interopRequireDefault(require("lodash/isEmpty")),_propTypes=require("prop-types"),_react2=_interopRequireWildcard(require("react")),_utils=require("../../utils.js"),_index=_interopRequireDefault(require("../ToolbarButton/index.js")),_stylesModule=_interopRequireDefault(require("./styles.module.scss"));function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,o=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var a,l,u={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return u;if(a=t?o:r){if(a.has(e))return a.get(e);a.set(e,u)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((l=(a=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(l.get||l.set)?a(u,t,l):u[t]=e[t]);return u})(e,t)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const preventFocusLoss=e=>e.preventDefault(),Toolbar=e=>{let{dataTestId:t,disabled:r,editor:o,moduleGroups:a}=e;const l=(0,_react2.useMemo)(()=>a.flat(),[a]),u=(0,_react.useEditorState)({editor:o,selector:e=>{let{editor:t}=e;return t?(0,_utils.getActiveStates)(t,l):null}});return!o||(0,_isEmpty.default)(a)?null:_react2.default.createElement("div",{className:_stylesModule.default.toolbar,"data-testid":t,onMouseDown:preventFocusLoss,role:"toolbar"},a.map((e,t)=>_react2.default.createElement(_react2.Fragment,{key:e.map(e=>e.key).join("-")},t>0&&_react2.default.createElement("span",{className:_stylesModule.default.separator}),e.map(e=>{const t=e.ToolbarButton||_index.default;return _react2.default.createElement(t,{disabled:r,editor:o,isActive:Boolean(null==u?void 0:u[e.key]),key:e.key,module:e})}))))};Toolbar.propTypes={dataTestId:_propTypes.string,disabled:_propTypes.bool,editor:_propTypes.object,moduleGroups:(0,_propTypes.arrayOf)((0,_propTypes.arrayOf)(_propTypes.object))};var _default=exports.default=Toolbar;
@@ -0,0 +1,26 @@
1
+ .toolbar {
2
+ align-items: center;
3
+ display: flex;
4
+ flex-shrink: 0;
5
+ grid-gap: var(--UT-richText-toolbar-gap);
6
+
7
+ // When all buttons return null (e.g. table-only with allowInsert:false outside a table),
8
+ // React inserts no DOM nodes and the div is genuinely empty — hide it to avoid dead space.
9
+ &:empty {
10
+ display: none;
11
+ }
12
+ }
13
+
14
+ .separator {
15
+ background-color: var(--light04);
16
+ height: var(--UT-richText-separator-height);
17
+ margin: 0 var(--UT-richText-toolbar-gap);
18
+ width: 1px;
19
+
20
+ // When the button after this separator returns null (e.g. table with allowInsert:false
21
+ // and cursor outside a table), React removes that button from the DOM and this separator
22
+ // becomes the last child — hide it so it doesn't float at the end of the toolbar.
23
+ &:last-child {
24
+ display: none;
25
+ }
26
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _propTypes=require("prop-types"),_react=_interopRequireWildcard(require("react")),_index=_interopRequireDefault(require("../../../UTButton/index.js")),_index2=_interopRequireDefault(require("../../../UTTooltip/index.js")),_constants=require("../../constants.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var o=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?r:o){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(i,t,a):i[t]=e[t]);return i})(e,t)}const ToolbarButton=e=>{let{disabled:t,editor:o,isActive:r,module:n}=e;const{command:a,icon:i,tooltip:p}=n.toolbarButton,{colorTheme:u,variant:s}=r?_constants.TOOLBAR_BUTTON.active:_constants.TOOLBAR_BUTTON.inactive,l=(0,_react.useCallback)(()=>a(o.chain().focus()).run(),[a,o]);return _react.default.createElement(_index2.default,{arrow:!1,content:p,tippyProps:{appendTo:()=>document.body,interactive:!1}},_react.default.createElement("div",null,_react.default.createElement(_index.default,{colorTheme:u,dataTestId:n.testIds.toolbarButton,disabled:t,LeftIcon:i,onClick:l,size:_constants.TOOLBAR_BUTTON.size,variant:s})))};ToolbarButton.propTypes={disabled:_propTypes.bool,editor:_propTypes.object,isActive:_propTypes.bool,module:(0,_propTypes.shape)({key:_propTypes.string,testIds:_propTypes.object,toolbarButton:_propTypes.object})};var _default=exports.default=ToolbarButton;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildBaseExtensions=exports.TOOLBAR_GROUPS=exports.TOOLBAR_BUTTON=exports.TITLE_VARIANTS=exports.TEST_IDS_RICH_TEXT=exports.PUBLISHED_SCHEMA=exports.MODULE_KEYS=exports.KEYMAP_SHORTCUTS=exports.DEFAULT_PROPS=exports.DEFAULT_MODULES=void 0;var _extensionDocument=_interopRequireDefault(require("@tiptap/extension-document")),_extensionHardBreak=_interopRequireDefault(require("@tiptap/extension-hard-break")),_extensionLink=_interopRequireDefault(require("@tiptap/extension-link")),_extensionParagraph=_interopRequireDefault(require("@tiptap/extension-paragraph")),_extensionText=_interopRequireDefault(require("@tiptap/extension-text")),_extensions=require("@tiptap/extensions"),_testIds=require("../../constants/testIds.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const TEST_IDS_RICH_TEXT=exports.TEST_IDS_RICH_TEXT=_testIds.TEST_IDS.UTRichText,MODULE_KEYS=exports.MODULE_KEYS={bold:"bold",italic:"italic",list:"list",listNumbers:"listNumbers",table:"table"},TOOLBAR_GROUPS=exports.TOOLBAR_GROUPS=[[MODULE_KEYS.bold,MODULE_KEYS.italic],[MODULE_KEYS.listNumbers,MODULE_KEYS.list],[MODULE_KEYS.table]],DEFAULT_MODULES=exports.DEFAULT_MODULES=[MODULE_KEYS.bold,MODULE_KEYS.italic,MODULE_KEYS.listNumbers,MODULE_KEYS.list],KEYMAP_SHORTCUTS=exports.KEYMAP_SHORTCUTS={submit:"Mod-Enter"},TOOLBAR_BUTTON=exports.TOOLBAR_BUTTON={active:{colorTheme:"primary",variant:"semitransparent"},inactive:{colorTheme:"gray",variant:"text"},size:"small"},TITLE_VARIANTS=exports.TITLE_VARIANTS={large:"large",small:"small"},DEFAULT_PROPS=exports.DEFAULT_PROPS={titleVariant:TITLE_VARIANTS.large},PUBLISHED_SCHEMA=exports.PUBLISHED_SCHEMA={marks:["bold","italic","link"],nodes:["bulletList","doc","hardBreak","listItem","orderedList","paragraph","table","tableCell","tableHeader","tableRow","text"]},buildBaseExtensions=e=>{let{placeholder:t}=e;return[_extensionDocument.default,_extensionParagraph.default,_extensionText.default,_extensionHardBreak.default,_extensionLink.default.configure({autolink:!0,openOnClick:!1}),_extensions.Dropcursor,_extensions.Gapcursor,_extensions.UndoRedo,_extensions.Placeholder.configure({placeholder:t})]};exports.buildBaseExtensions=buildBaseExtensions;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _core=require("@tiptap/core"),_constants=require("../constants.js");const CustomKeymap=_core.Extension.create({name:"customKeymap",addOptions:()=>({onSubmit:null}),addKeyboardShortcuts(){return{[_constants.KEYMAP_SHORTCUTS.submit]:()=>{var t,e;return!0===(null===(t=(e=this.options).onSubmit)||void 0===t?void 0:t.call(e))}}}});var _default=exports.default=CustomKeymap;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _isEmpty=_interopRequireDefault(require("lodash/isEmpty")),_react=require("react"),_constants=require("../constants.js"),_registry=require("../registry.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const resolveConfig=(e,t)=>({...e.defaultConfig,...t[e.key]||{}}),resolveExtensions=(e,t)=>"function"==typeof e?e(t):e,buildModuleGroups=(e,t)=>{const s=new Set(e);return _constants.TOOLBAR_GROUPS.map(e=>e.filter(e=>s.has(e)&&_registry.MODULE_REGISTRY[e]).map(e=>{const s=_registry.MODULE_REGISTRY[e],r=resolveConfig(s,t);return{...s,config:r,resolvedExtensions:resolveExtensions(s.extensions,r)}})).filter(e=>!(0,_isEmpty.default)(e))},useModuleResolution=e=>{let{moduleConfig:t={},modules:s}=e;const r=JSON.stringify(s||_constants.DEFAULT_MODULES),o=JSON.stringify(t);return(0,_react.useMemo)(()=>buildModuleGroups(JSON.parse(r),t),[r,o])};var _default=exports.default=useModuleResolution;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=require("@tiptap/react"),_react2=require("react"),_constants=require("../constants.js"),_CustomKeymap=_interopRequireDefault(require("../extensions/CustomKeymap.js")),_utils=require("../utils.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const useRichTextEditor=e=>{let{activeModules:t,ariaLabel:r,dataTestId:n,disabled:u,editorClassName:o,onBlur:a,onChange:s,onFocus:i,onSubmit:l,placeholder:c,readOnly:d,value:m}=e;const _=(0,_react2.useRef)({});_.current={onBlur:a,onChange:s,onFocus:i,onSubmit:l};const p=(0,_react2.useRef)(null),f=(0,_react2.useMemo)(()=>(0,_utils.dedupeExtensions)([...(0,_constants.buildBaseExtensions)({placeholder:c}),...t.flatMap(e=>e.extensions),_CustomKeymap.default.configure({onSubmit:()=>{const e=_.current.onSubmit;return!!e&&!0===e()}})]),[t,c]),v=(0,_react.useEditor)({content:m,editable:!u&&!d,editorProps:{attributes:{"aria-label":r,"aria-multiline":"true","data-testid":n,class:o,role:"textbox"}},extensions:f,immediatelyRender:!1,onBlur:e=>{var t,r;let{event:n}=e;return null===(t=(r=_.current).onBlur)||void 0===t?void 0:t.call(r,n)},onFocus:e=>{var t,r;let{event:n}=e;return null===(t=(r=_.current).onFocus)||void 0===t?void 0:t.call(r,n)},onUpdate:e=>{let{editor:t}=e;const r=t.getJSON();p.current=r,queueMicrotask(()=>{var e,t;return null===(e=(t=_.current).onChange)||void 0===e?void 0:e.call(t,r)})}},[f]);return(0,_react2.useEffect)(()=>{v&&(m?m!==p.current&&((0,_utils.isSameDocument)(m,v.getJSON())||v.commands.setContent(m,{emitUpdate:!1})):v.isEmpty||v.commands.clearContent(!1))},[v,m]),(0,_react2.useEffect)(()=>{null==v||v.setEditable(!u&&!d)},[u,v,d]),v};var _default=exports.default=useRichTextEditor;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.propTypes=exports.default=void 0;var _react=require("@tiptap/react"),_isEmpty=_interopRequireDefault(require("lodash/isEmpty")),_propTypes=require("prop-types"),_react2=_interopRequireWildcard(require("react")),_classesUtils=require("../../utils/classesUtils.js"),_index=_interopRequireDefault(require("../UTFieldLabel/index.js")),_index2=_interopRequireDefault(require("../UTLabel/index.js")),_index3=_interopRequireWildcard(require("../UTValidation/index.js")),_utils=require("../UTValidation/utils.js"),_index4=_interopRequireDefault(require("./components/EditorSkeleton/index.jsx")),_index5=_interopRequireDefault(require("./components/SubmitAction/index.js")),_index6=_interopRequireDefault(require("./components/Toolbar/index.js")),_constants=require("./constants.js"),_useModuleResolution=_interopRequireDefault(require("./hooks/useModuleResolution.js")),_useRichTextEditor=_interopRequireDefault(require("./hooks/useRichTextEditor.js")),_utils2=require("./utils.js"),_stylesModule=_interopRequireDefault(require("./styles.module.scss"));function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(o=t?a:r){if(o.has(e))return o.get(e);o.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?o(l,t,s):l[t]=e[t]);return l})(e,t)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const UTRichText=e=>{var t;let{actions:r,classNames:a={},dataTestId:o=_constants.TEST_IDS_RICH_TEXT.root,disabled:s=!1,error:l,helpText:i,loading:n=!1,moduleConfig:u={},modules:p,onBlur:d,onChange:_,onFocus:c,onSubmit:T,placeholder:f,readOnly:y=!1,required:m=!1,submitButtonProps:E,title:b,titleVariant:x=_constants.DEFAULT_PROPS.titleVariant,validations:q,value:R}=e;const[S,v]=(0,_react2.useState)(!1),I=(0,_useModuleResolution.default)({moduleConfig:u,modules:p}),j=(0,_react2.useMemo)(()=>I.flat(),[I]),h=(0,_react2.useMemo)(()=>(0,_classesUtils.mergeMultipleClassNames)(_stylesModule.default,a),[a]),D=(0,_react2.useMemo)(()=>j.map(e=>{var t;return{...e,extensions:null!==(t=e.resolvedExtensions)&&void 0!==t?t:e.extensions}}),[j]),g=(0,_react2.useCallback)(e=>{v(!0),null==c||c(e)},[c]),C=(0,_react2.useCallback)(e=>{v(!1),null==d||d(e)},[d]),O=(0,_react2.useRef)(!1),M=(0,_react2.useCallback)(()=>!(!O.current||!T)&&(T(),!0),[T]),U=(0,_useRichTextEditor.default)({activeModules:D,ariaLabel:b,dataTestId:_constants.TEST_IDS_RICH_TEXT.content,disabled:s,editorClassName:_stylesModule.default.editorContent,onBlur:C,onChange:_,onFocus:g,onSubmit:M,placeholder:f,readOnly:y,value:R}),N=null===(t=(0,_react.useEditorState)({editor:U,selector:e=>{let{editor:t}=e;return!t||t.isEmpty}}))||void 0===t||t,k=Boolean(T)&&!s&&!n&&!N;O.current=k;const P=(0,_react2.useMemo)(()=>(0,_isEmpty.default)(q)?l?(0,_utils.formatErrorToValidation)(l):null:q,[l,q]);return _react2.default.createElement("div",{className:h.container,"data-testid":o},b&&_react2.default.createElement(_index.default,{actions:r,dataTestId:_constants.TEST_IDS_RICH_TEXT.label,readOnly:y,required:m,size:x},b),_react2.default.createElement("div",{className:(0,_utils2.getFieldClassName)({classes:h,disabled:s,error:l,isFocused:S,readOnly:y}),"data-testid":_constants.TEST_IDS_RICH_TEXT.field},n?_react2.default.createElement(_index4.default,null):_react2.default.createElement(_react2.default.Fragment,null,!y&&_react2.default.createElement(_index6.default,{dataTestId:_constants.TEST_IDS_RICH_TEXT.toolbar.root,disabled:s,editor:U,moduleGroups:I}),_react2.default.createElement("div",{className:h.scrollArea},_react2.default.createElement(_react.EditorContent,{className:h.editorWrapper,editor:U})),T&&!y&&_react2.default.createElement(_index5.default,{dataTestId:_constants.TEST_IDS_RICH_TEXT.submitButton,disabled:!k,loading:n,onSubmit:T,submitButtonProps:E}))),i&&_react2.default.createElement(_index2.default,{className:h.helpText,colorTheme:"gray",dataTestId:_constants.TEST_IDS_RICH_TEXT.helpText,variant:"small",withMarkdown:!0},i),P&&_react2.default.createElement(_index3.default,{dataTestId:_constants.TEST_IDS_RICH_TEXT.validation,validationData:P}))},propTypes=exports.propTypes={actions:(0,_propTypes.arrayOf)(_propTypes.object),classNames:(0,_propTypes.objectOf)(_propTypes.string),dataTestId:_propTypes.string,disabled:_propTypes.bool,error:(0,_propTypes.oneOfType)([_propTypes.bool,_propTypes.string]),helpText:_propTypes.string,loading:_propTypes.bool,moduleConfig:(0,_propTypes.objectOf)(_propTypes.object),modules:(0,_propTypes.arrayOf)((0,_propTypes.oneOf)(Object.values(_constants.MODULE_KEYS))),onBlur:_propTypes.func,onChange:_propTypes.func,onFocus:_propTypes.func,onSubmit:_propTypes.func,placeholder:_propTypes.string,readOnly:_propTypes.bool,required:_propTypes.bool,submitButtonProps:_propTypes.object,title:_propTypes.string,titleVariant:(0,_propTypes.oneOf)(Object.values(_constants.TITLE_VARIANTS)),validations:_index3.validationDataProptypes,value:_propTypes.object};UTRichText.propTypes=propTypes;var _default=exports.default=UTRichText;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _extensionBold=_interopRequireDefault(require("@tiptap/extension-bold")),_constants=require("../../constants.js");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}var _default=exports.default={defaultConfig:{},extensions:[_extensionBold.default],key:_constants.MODULE_KEYS.bold,testIds:{toolbarButton:_constants.TEST_IDS_RICH_TEXT.toolbar.bold},toolbarButton:{command:t=>t.toggleBold(),icon:"IconBold",isActive:t=>t.isActive("bold"),tooltip:"Negrita"}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _extensionItalic=_interopRequireDefault(require("@tiptap/extension-italic")),_constants=require("../../constants.js");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}var _default=exports.default={defaultConfig:{},extensions:[_extensionItalic.default],key:_constants.MODULE_KEYS.italic,testIds:{toolbarButton:_constants.TEST_IDS_RICH_TEXT.toolbar.italic},toolbarButton:{command:t=>t.toggleItalic(),icon:"IconItalic",isActive:t=>t.isActive("italic"),tooltip:"Itálica"}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _extensionList=require("@tiptap/extension-list"),_constants=require("../../constants.js"),_default=exports.default={defaultConfig:{},extensions:[_extensionList.BulletList,_extensionList.ListItem,_extensionList.ListKeymap],key:_constants.MODULE_KEYS.list,testIds:{toolbarButton:_constants.TEST_IDS_RICH_TEXT.toolbar.list},toolbarButton:{command:t=>t.toggleBulletList(),icon:"IconList",isActive:t=>t.isActive("bulletList"),tooltip:"Lista con viñetas"}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _extensionList=require("@tiptap/extension-list"),_constants=require("../../constants.js"),_default=exports.default={defaultConfig:{},extensions:[_extensionList.OrderedList,_extensionList.ListItem,_extensionList.ListKeymap],key:_constants.MODULE_KEYS.listNumbers,testIds:{toolbarButton:_constants.TEST_IDS_RICH_TEXT.toolbar.listNumbers},toolbarButton:{command:t=>t.toggleOrderedList(),icon:"IconListNumbers",isActive:t=>t.isActive("orderedList"),tooltip:"Lista numerada"}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _propTypes=require("prop-types"),_react=_interopRequireWildcard(require("react")),_index=_interopRequireDefault(require("../../../../UTButton/index.js")),_index2=_interopRequireDefault(require("../../../../UTTooltip/index.js")),_constants=require("../../../constants.js"),_stylesModule=_interopRequireDefault(require("./styles.module.scss"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var o=new WeakMap,a=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var r,l,n={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return n;if(r=t?a:o){if(r.has(e))return r.get(e);r.set(e,n)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((l=(r=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(l.get||l.set)?r(n,t,l):n[t]=e[t]);return n})(e,t)}const{tableToolbar:tableToolbar}=_constants.TEST_IDS_RICH_TEXT,StructureButton=e=>{let{dataTestId:t,disabled:o,editor:a,icon:r,onCommand:l,tooltip:n}=e;const d=(0,_react.useCallback)(()=>l(a.chain().focus()).run(),[a,l]);return _react.default.createElement(_index2.default,{arrow:!1,content:n,tippyProps:{appendTo:()=>document.body,interactive:!1}},_react.default.createElement("div",null,_react.default.createElement(_index.default,{colorTheme:_constants.TOOLBAR_BUTTON.inactive.colorTheme,dataTestId:t,disabled:o,LeftIcon:r,onClick:d,size:_constants.TOOLBAR_BUTTON.size,variant:_constants.TOOLBAR_BUTTON.inactive.variant})))};StructureButton.propTypes={dataTestId:_propTypes.string,disabled:_propTypes.bool,editor:_propTypes.object,icon:_propTypes.string,onCommand:_propTypes.func,tooltip:_propTypes.string};const TableToolbar=e=>{let{dataTestId:t,disabled:o,editor:a}=e;return _react.default.createElement("div",{className:_stylesModule.default.tableToolbar,"data-testid":t},_react.default.createElement(StructureButton,{dataTestId:tableToolbar.addColumnBefore,disabled:o,editor:a,icon:"IconColumnInsertLeft",onCommand:e=>e.addColumnBefore(),tooltip:"Agregar columna antes"}),_react.default.createElement(StructureButton,{dataTestId:tableToolbar.addColumnAfter,disabled:o,editor:a,icon:"IconColumnInsertRight",onCommand:e=>e.addColumnAfter(),tooltip:"Agregar columna después"}),_react.default.createElement(StructureButton,{dataTestId:tableToolbar.deleteColumn,disabled:o,editor:a,icon:"IconColumnRemove",onCommand:e=>e.deleteColumn(),tooltip:"Eliminar columna"}),_react.default.createElement("span",{className:_stylesModule.default.separator}),_react.default.createElement(StructureButton,{dataTestId:tableToolbar.addRowAfter,disabled:o,editor:a,icon:"IconRowInsertBottom",onCommand:e=>e.addRowAfter(),tooltip:"Agregar fila después"}),_react.default.createElement(StructureButton,{dataTestId:tableToolbar.deleteRow,disabled:o,editor:a,icon:"IconRowRemove",onCommand:e=>e.deleteRow(),tooltip:"Eliminar fila"}),_react.default.createElement("span",{className:_stylesModule.default.separator}),_react.default.createElement(StructureButton,{dataTestId:tableToolbar.deleteTable,disabled:o,editor:a,icon:"IconTableOff",onCommand:e=>e.deleteTable(),tooltip:"Eliminar tabla"}))};TableToolbar.propTypes={dataTestId:_propTypes.string,disabled:_propTypes.bool,editor:_propTypes.object};var _default=exports.default=TableToolbar;
@@ -0,0 +1,13 @@
1
+ .tableToolbar {
2
+ align-items: center;
3
+ display: flex;
4
+ flex-shrink: 0;
5
+ grid-gap: var(--UT-textEditor-toolbar-gap, 4px);
6
+ }
7
+
8
+ .separator {
9
+ background-color: var(--light04);
10
+ height: var(--UT-textEditor-separator-height, 20px);
11
+ margin: 0 var(--UT-textEditor-toolbar-gap, 4px);
12
+ width: 1px;
13
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _propTypes=require("prop-types"),_react=_interopRequireWildcard(require("react")),_index=_interopRequireDefault(require("../../../UTButton/index.js")),_index2=_interopRequireDefault(require("../../../UTTooltip/index.js")),_constants=require("../../constants.js"),_index3=_interopRequireDefault(require("./TableToolbar/index.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,o=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,i={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return i;if(n=t?o:r){if(n.has(e))return n.get(e);n.set(e,i)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(i,t,a):i[t]=e[t]);return i})(e,t)}const INSERT_TABLE_DEFAULTS={cols:3,rows:3,withHeaderRow:!0},TableToolbarButton=e=>{let{disabled:t,editor:r,isActive:o,module:n}=e;const{allowInsert:a,allowStructureEdit:i}=n.config||n.defaultConfig,l=(0,_react.useCallback)(()=>{if(!r.isActive("table"))return void r.chain().focus().insertTable(INSERT_TABLE_DEFAULTS).run();const{$from:e}=r.state.selection;for(let t=e.depth;t>0;t--)if("table"===e.node(t).type.name){const o=e.after(t);return void r.chain().insertContentAt(o,{type:"paragraph"}).setTextSelection(o+1).insertTable(INSERT_TABLE_DEFAULTS).run()}r.chain().focus().insertTable(INSERT_TABLE_DEFAULTS).run()},[r]);var s,u;return o&&i?_react.default.createElement(_index3.default,{dataTestId:null===(s=n.testIds)||void 0===s?void 0:s.toolbarButton,disabled:t,editor:r}):!o&&a?_react.default.createElement(_index2.default,{arrow:!1,content:"Insertar tabla",tippyProps:{appendTo:()=>document.body,interactive:!1}},_react.default.createElement("div",null,_react.default.createElement(_index.default,{colorTheme:_constants.TOOLBAR_BUTTON.inactive.colorTheme,dataTestId:null===(u=n.testIds)||void 0===u?void 0:u.toolbarButton,disabled:t,LeftIcon:"IconTable",onClick:l,size:_constants.TOOLBAR_BUTTON.size,variant:_constants.TOOLBAR_BUTTON.inactive.variant}))):null};TableToolbarButton.propTypes={disabled:_propTypes.bool,editor:_propTypes.object,isActive:_propTypes.bool,module:(0,_propTypes.shape)({config:_propTypes.object,defaultConfig:_propTypes.object,key:_propTypes.string,testIds:_propTypes.object})};var _default=exports.default=TableToolbarButton;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.EnergyTableRow=exports.EnergyTableHeader=exports.EnergyTableCell=exports.EnergyTable=exports.CellFocus=void 0;var _core=require("@tiptap/core"),_extensionTable=require("@tiptap/extension-table"),_state=require("@tiptap/pm/state"),_view=require("@tiptap/pm/view");const EnergyTable=exports.EnergyTable=_extensionTable.Table.extend({addAttributes(){var e;return{...null===(e=this.parent)||void 0===e?void 0:e.call(this),style:{default:null,parseHTML:e=>e.getAttribute("style")||null,renderHTML:e=>e.style?{style:e.style}:{}}}},addKeyboardShortcuts(){var e;return{...null===(e=this.parent)||void 0===e?void 0:e.call(this),"Mod-Alt-t":()=>this.editor.commands.insertTable({cols:3,rows:3,withHeaderRow:!0})}}}).configure({resizable:!0}),EnergyTableRow=exports.EnergyTableRow=_extensionTable.TableRow.extend({addAttributes(){var e;return{...null===(e=this.parent)||void 0===e?void 0:e.call(this),style:{default:null,parseHTML:e=>e.getAttribute("style")||null,renderHTML:e=>e.style?{style:e.style}:{}}}}}),EnergyTableHeader=exports.EnergyTableHeader=_extensionTable.TableHeader.extend({addAttributes(){var e;return{...null===(e=this.parent)||void 0===e?void 0:e.call(this),style:{default:null,parseHTML:e=>e.getAttribute("style")||null,renderHTML:e=>e.style?{style:e.style}:{}}}}}),EnergyTableCell=exports.EnergyTableCell=_extensionTable.TableCell.extend({addAttributes(){var e;return{...null===(e=this.parent)||void 0===e?void 0:e.call(this),style:{default:null,parseHTML:e=>e.getAttribute("style")||null,renderHTML:e=>e.style?{style:e.style}:{}}}}}),CellFocus=exports.CellFocus=_core.Extension.create({name:"cellFocus",addProseMirrorPlugins:()=>[new _state.Plugin({state:{init:()=>!1,apply(e,t){const l=e.getMeta("cellFocus");return void 0!==l?l:t}},props:{handleDOMEvents:{focus:e=>(e.dispatch(e.state.tr.setMeta("cellFocus",!0)),!1),blur:e=>(e.dispatch(e.state.tr.setMeta("cellFocus",!1)),!1)},decorations(e){if(!this.getState(e))return _view.DecorationSet.empty;const{doc:t,selection:l}=e,{$from:r}=l,s=[];for(let e=r.depth;e>0;e--){const t=r.node(e);if("tableCell"===t.type.name||"tableHeader"===t.type.name){const l=r.before(e);s.push(_view.Decoration.node(l,l+t.nodeSize,{class:"focused-cell"}));break}}return _view.DecorationSet.create(t,s)}}})]});
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _constants=require("../../constants.js"),_ToolbarButton=_interopRequireDefault(require("./ToolbarButton.jsx")),_extensions=require("./extensions.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default={defaultConfig:{allowInsert:!0,allowStructureEdit:!0},extensions:e=>[_extensions.EnergyTable,_extensions.EnergyTableRow,_extensions.EnergyTableHeader,_extensions.EnergyTableCell,_extensions.CellFocus],key:_constants.MODULE_KEYS.table,testIds:{toolbarButton:_constants.TEST_IDS_RICH_TEXT.toolbar.table},ToolbarButton:_ToolbarButton.default,toolbarButton:{isActive:e=>e.isActive("table")&&e.isFocused}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.MODULE_REGISTRY=void 0;var _index=_interopRequireDefault(require("./modules/bold/index.js")),_index2=_interopRequireDefault(require("./modules/italic/index.js")),_index3=_interopRequireDefault(require("./modules/list/index.js")),_index4=_interopRequireDefault(require("./modules/listNumbers/index.js")),_index5=_interopRequireDefault(require("./modules/table/index.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const MODULE_REGISTRY=exports.MODULE_REGISTRY={bold:_index.default,italic:_index2.default,list:_index3.default,listNumbers:_index4.default,table:_index5.default};
@@ -0,0 +1,241 @@
1
+ .container {
2
+ display: flex;
3
+ flex-direction: column;
4
+ grid-gap: var(--gap-sm);
5
+ }
6
+
7
+ .field {
8
+ background-color: var(--light01);
9
+ border: 1px solid var(--light04);
10
+ border-radius: var(--UT-richText-radius);
11
+ display: flex;
12
+ flex-direction: column;
13
+ grid-gap: var(--UT-richText-gap);
14
+ // En longhand y no en shorthand: sin los fallbacks, sass-lint lee los dos var()
15
+ // como el mismo token y pide colapsarlos en uno solo.
16
+ padding-bottom: var(--UT-richText-padding-y);
17
+ padding-left: var(--UT-richText-padding-x);
18
+ padding-right: var(--UT-richText-padding-x);
19
+ padding-top: var(--UT-richText-padding-y);
20
+ }
21
+
22
+ // El foco engrosa el borde a 2px con un box-shadow interior en vez de subir el
23
+ // border-width. El shadow no participa del layout, así que el padding no necesita
24
+ // compensar nada y el contenido no se corre al enfocar.
25
+ .fieldFocused {
26
+ border-color: var(--actionAccent04);
27
+ box-shadow: inset 0 0 0 1px var(--actionAccent04);
28
+ }
29
+
30
+ .fieldError {
31
+ border-color: var(--actionError04);
32
+
33
+ // Con error el anillo de foco toma el color de error, para no mezclar dos
34
+ // colores en el mismo borde.
35
+ &.fieldFocused {
36
+ box-shadow: inset 0 0 0 1px var(--actionError04);
37
+ }
38
+ }
39
+
40
+ .fieldDisabled {
41
+ background-color: var(--light03);
42
+ }
43
+
44
+ .fieldReadOnly {
45
+ background-color: transparent;
46
+ border-color: transparent;
47
+ padding-left: 0;
48
+ padding-right: 0;
49
+ }
50
+
51
+ // El área de scroll y el wrapper que monta Tiptap se estiran para que el
52
+ // contenteditable ocupe todo el espacio disponible, y no solo el alto de su
53
+ // contenido. Así el espacio vacío debajo del texto ES área editable: clickear ahí
54
+ // enfoca de forma nativa y ProseMirror pone el cursor en la posición más cercana,
55
+ // sin ningún handler de JS.
56
+ .scrollArea {
57
+ display: flex;
58
+ flex-direction: column;
59
+ max-height: var(--UT-richText-content-max-height);
60
+ min-height: var(--UT-richText-content-min-height);
61
+ overflow-y: auto;
62
+ }
63
+
64
+ .editorWrapper {
65
+ display: flex;
66
+ flex: 1 1 auto;
67
+ }
68
+
69
+ .helpText {
70
+ text-align: left;
71
+ }
72
+
73
+ .editorContent {
74
+ color: var(--dark05);
75
+ flex: 1 1 auto;
76
+ font-size: var(--UT-richText-body-size);
77
+ line-height: var(--UT-richText-body-lh);
78
+ outline: none;
79
+
80
+ p {
81
+ margin: 0;
82
+ }
83
+
84
+ ul,
85
+ ol {
86
+ margin: 0;
87
+ padding-left: var(--UT-richText-list-indent);
88
+ }
89
+
90
+ // Separación entre bloques hermanos del documento (párrafo ↔ párrafo,
91
+ // párrafo ↔ lista). Solo hijos directos: los párrafos dentro de un li no
92
+ // llevan margen.
93
+ > * + * {
94
+ margin-top: var(--UT-richText-block-gap);
95
+ }
96
+
97
+ strong {
98
+ font-weight: var(--UT-richText-bold-weight);
99
+ }
100
+
101
+ em {
102
+ font-style: italic;
103
+ }
104
+
105
+ a {
106
+ color: var(--actionAccent04);
107
+ text-decoration: underline;
108
+ }
109
+
110
+ // --- Estilos de tabla ---
111
+ // Applies only to tables rendered inside the editor (not in email output, which uses
112
+ // inline styles via the `style` attribute set by buildTableNode / EnergyTable*).
113
+
114
+ // Wrapper generado por Tiptap cuando resizable:true. Scroll horizontal cuando la
115
+ // tabla supera el ancho del contenedor.
116
+ :global(.tableWrapper) {
117
+ overflow-x: auto;
118
+
119
+ & + * {
120
+ margin-top: var(--UT-textEditor-block-gap, 8px);
121
+ }
122
+ }
123
+
124
+ table {
125
+ border-collapse: collapse;
126
+ table-layout: fixed;
127
+ width: 100%;
128
+ }
129
+
130
+ td,
131
+ th {
132
+ border: 1px solid var(--light05);
133
+ min-width: var(--UT-textEditor-table-cell-min-width, 40px);
134
+ padding: var(--UT-textEditor-table-cell-padding-y, 6px) var(--UT-textEditor-table-cell-padding-x, 8px);
135
+ position: relative;
136
+ vertical-align: top;
137
+
138
+ > * {
139
+ margin: 0;
140
+ }
141
+
142
+ &:hover :global(.column-resize-handle) {
143
+ opacity: 1;
144
+ }
145
+ }
146
+
147
+ th {
148
+ background-color: var(--light03);
149
+ font-weight: var(--UT-textEditor-bold-weight, 600);
150
+ text-align: left;
151
+
152
+ &:hover {
153
+ background-color: var(--light04);
154
+ }
155
+
156
+ &:global(.focused-cell) {
157
+ background-color: var(--light02);
158
+
159
+ &::before {
160
+ border: 2px solid var(--actionAccent04);
161
+ bottom: 0;
162
+ content: '';
163
+ left: 0;
164
+ pointer-events: none;
165
+ position: absolute;
166
+ right: 0;
167
+ top: 0;
168
+ z-index: 3;
169
+ }
170
+ }
171
+ }
172
+
173
+ td {
174
+ background-color: var(--light01);
175
+
176
+ &:hover {
177
+ background-color: var(--light04);
178
+ }
179
+
180
+ &:global(.focused-cell) {
181
+ &::before {
182
+ border: 2px solid var(--actionAccent04);
183
+ bottom: 0;
184
+ content: '';
185
+ left: 0;
186
+ pointer-events: none;
187
+ position: absolute;
188
+ right: 0;
189
+ top: 0;
190
+ z-index: 3;
191
+ }
192
+ }
193
+ }
194
+
195
+ // Column resize handle — spans the full column height by extending beyond the cell
196
+ // boundaries with large top/bottom values (td/th don't clip overflow by default).
197
+ :global(.column-resize-handle) {
198
+ background-color: var(--actionAccent04);
199
+ bottom: -9999px;
200
+ opacity: 0;
201
+ pointer-events: none;
202
+ position: absolute;
203
+ right: -1px;
204
+ top: -9999px;
205
+ transition: opacity 0.15s ease;
206
+ width: 2px;
207
+ z-index: 10;
208
+ }
209
+
210
+ // Cursor de redimensionado activo.
211
+ :global(.resize-cursor) {
212
+ cursor: col-resize;
213
+ }
214
+
215
+ // Tiptap selection highlight on cells.
216
+ .selectedCell {
217
+ &::after {
218
+ background: var(--actionAccent01);
219
+ content: '';
220
+ inset: 0;
221
+ pointer-events: none;
222
+ position: absolute;
223
+ z-index: 2;
224
+ }
225
+ }
226
+
227
+ // Única clase global necesaria: la genera la extensión Placeholder de Tiptap,
228
+ // así que CSS Modules la hashearía y la regla no aplicaría. Va anidada dentro
229
+ // de .editorContent, así que no se filtra fuera del editor.
230
+ :global(.is-editor-empty) {
231
+ &:first-child {
232
+ &::before {
233
+ color: var(--gray04);
234
+ content: attr(data-placeholder);
235
+ float: left;
236
+ height: 0;
237
+ pointer-events: none;
238
+ }
239
+ }
240
+ }
241
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildTableNode=exports.buildTableExtensions=void 0;var _extensionDocument=_interopRequireDefault(require("@tiptap/extension-document")),_extensionParagraph=_interopRequireDefault(require("@tiptap/extension-paragraph")),_extensionText=_interopRequireDefault(require("@tiptap/extension-text")),_extensions=require("../modules/table/extensions.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const TABLE_EMAIL_STYLE="border-collapse: collapse; width: 100%; border-spacing: 0;",HEADER_CELL_EMAIL_STYLE="border: 1px solid #CCCCCC; padding: 8px 12px; text-align: left; font-family: inherit; font-weight: 600; background-color: #F5F5F5;",DATA_CELL_EMAIL_STYLE="border: 1px solid #CCCCCC; padding: 8px 12px; text-align: left; font-family: inherit;",buildParagraph=e=>({type:"paragraph",content:e?[{type:"text",text:String(e)}]:[]}),buildTableNode=e=>{let{headers:t,rows:n,cellColwidth:a}=e;return{type:"table",attrs:{style:TABLE_EMAIL_STYLE},content:[{type:"tableRow",content:t.map(e=>({type:"tableHeader",attrs:{colspan:1,colwidth:a?[a]:null,rowspan:1,style:HEADER_CELL_EMAIL_STYLE},content:[buildParagraph(e)]}))},...n.map(e=>({type:"tableRow",content:e.map(e=>({type:"tableCell",attrs:{colspan:1,colwidth:a?[a]:null,rowspan:1,style:DATA_CELL_EMAIL_STYLE},content:[buildParagraph(e)]}))}))]}};exports.buildTableNode=buildTableNode;const buildTableExtensions=()=>[_extensionDocument.default,_extensionParagraph.default,_extensionText.default,_extensions.EnergyTable,_extensions.EnergyTableRow,_extensions.EnergyTableHeader,_extensions.EnergyTableCell];exports.buildTableExtensions=buildTableExtensions;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isSameDocument=exports.getFieldClassName=exports.getActiveStates=exports.dedupeExtensions=void 0;var _isEqual=_interopRequireDefault(require("lodash/isEqual"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const dedupeExtensions=e=>{const t=new Set;return e.filter(e=>!t.has(e.name)&&(t.add(e.name),!0))};exports.dedupeExtensions=dedupeExtensions;const getActiveStates=(e,t)=>t.reduce((t,s)=>({...t,[s.key]:s.toolbarButton.isActive(e)}),{});exports.getActiveStates=getActiveStates;const isSameDocument=(e,t)=>(0,_isEqual.default)(e,t);exports.isSameDocument=isSameDocument;const getFieldClassName=e=>{let{classes:t,disabled:s,error:i,isFocused:o,readOnly:a}=e;return[t.field,o&&t.fieldFocused,i&&t.fieldError,s&&t.fieldDisabled,a&&t.fieldReadOnly].filter(Boolean).join(" ")};exports.getFieldClassName=getFieldClassName;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.TEST_IDS=exports.ID_CONSTANTS=void 0;const ID_CONSTANTS=exports.ID_CONSTANTS={ACTIONS:"actions",ADD_FILTER_BUTTON:"addFilterButton",AVATAR:"avatar",BOTTOM_NAV:"bottomNav",CANVAS:"canvas",CELL:"cell",CLEAR_BUTTON:"clearButton",CLIENT_FILTER:"clientFilter",COLLAPSED_PANEL_CONTENT:"collapsedPanelContent",COLLAPSE_BUTTON:"collapseButton",COLLAPSE_BUTTON_TOOLTIP:"collapseButtonTooltip",CREDIT_CARD:"creditCard",CUSTOM_SEARCH_ACTION:"customSearchAction",DATA_CATEGORY:"dataCategory",DATA_ELEMENT:"dataElement",DELETE_BUTTON:"deleteButton",DELETE_BUTTON_TOOLTIP:"deleteButtonTooltip",ADDITIONAL_CONTENT:"additionalContent",ADDITIONAL_CONTENT_BODY:"additionalContentBody",DESCRIPTION:"description",DIALOG:"dialog",EDIT_BUTTON:"editButton",EDIT_BUTTON_TOOLTIP:"editButtonTooltip",EXPANDED_PANEL_CONTENT:"expandedPanelContent",EXPANDED_PANEL_CONTENT_CATEGORY:"expandedPanelContentCategory",EXPANDED_PANEL_CONTENT_CATEGORY_EMPTY:"expandedPanelContentCategoryEmpty",EXPANDED_PANEL_CONTENT_CATEGORY_HEADER:"expandedPanelContentCategoryHeader",EXPANDED_PANEL_CONTENT_CATEGORY_ITEM:"expandedPanelContentCategoryItem",EXPANDED_PANEL_CONTENT_HEADER:"expandedPanelContentHeader",EXPAND_BUTTON:"expandButton",FILTER_GROUPING:"filterGrouping",GROUPING_PANEL:"groupingPanel",HEADER:"header",HELP_TEXT:"helpText",ICON:"icon",INVALID_PARAMS:"invalidParams",LABEL:"label",MAIN_BUTTON:"mainButton",NAME:"name",NAME_CONTAINER:"nameContainer",ONBOARDING:"onboarding",PAGINATION_NEXT:"paginationNext",PAGINATION_PREV:"paginationPrev",PANEL:"panel",PERSISTENT_FILTER:"persistentFilter",PINNED:"pinned",POPPER:"popper",SEARCH_BUTTON:"searchButton",SECONDARY_ACTION:"secondaryAction",SEARCH_BUTTON_TOOLTIP:"searchButtonTooltip",SEARCH_FIELD:"searchField",SELECTION_COMPONENT:"selectionComponent",SIDEBAR:"sidebar",SIDEBAR_BUTTON:"sidebarButton",STATUS_MESSAGE:"statusMessage",TABLE:"table",TERTIARY_ACTION:"tertiaryAction",TABLE_ROW:"tableRow",TITLE:"title",USER_FILTER:"userFilter",UT_SNACKBAR:"UTSnackbar",VALIDATION_DATA:"validationData",WORKFLOW_CONTAINER:"workflowContainer"},TEST_IDS=exports.TEST_IDS={barChart:{bar:{tooltip:"barChart.bar.tooltip."},xAxis:{secondaryLabel:"barChart.xAxis.secondaryLabel.",mainLabel:"barChart.xAxis.mainLabel."}},breadcrumbs:{item:"breadcrumbs.item"},creditCard:{cardField:"".concat(ID_CONSTANTS.CREDIT_CARD,".cardField"),cvcField:"".concat(ID_CONSTANTS.CREDIT_CARD,".cvcField"),expires:"".concat(ID_CONSTANTS.CREDIT_CARD,".expires"),nameField:"".concat(ID_CONSTANTS.CREDIT_CARD,".nameField")},dataCategory:{container:"".concat(ID_CONSTANTS.DATA_CATEGORY,".container"),collapseButton:"".concat(ID_CONSTANTS.DATA_CATEGORY,".collapseButton"),item:"".concat(ID_CONSTANTS.DATA_CATEGORY,".item")},dataElement:{container:"".concat(ID_CONSTANTS.DATA_ELEMENT,".container"),collapseButton:"".concat(ID_CONSTANTS.DATA_ELEMENT,".collapseButton"),switchAction:"".concat(ID_CONSTANTS.DATA_ELEMENT,".actionSwitch"),buttonAction:"".concat(ID_CONSTANTS.DATA_ELEMENT,".actionButton")},dialog:{acceptButton:"".concat(ID_CONSTANTS.DIALOG,".acceptButton"),cancelButton:"".concat(ID_CONSTANTS.DIALOG,".cancelButton"),closeButton:"".concat(ID_CONSTANTS.DIALOG,".closeButton"),title:"".concat(ID_CONSTANTS.DIALOG,".title")},filterGrouping:{groupingPanel:{collapsedPanelContent:{expandButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.COLLAPSED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPAND_BUTTON)},expandedPanelContent:{expandedPanelContentCategory:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_CATEGORY),expandedPanelContentHeader:{addFilterButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.ADD_FILTER_BUTTON),collapseButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.COLLAPSE_BUTTON),collapseButtonTooltip:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.COLLAPSE_BUTTON_TOOLTIP),customSearchAction:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.CUSTOM_SEARCH_ACTION),searchButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_BUTTON),searchButtonTooltip:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_BUTTON_TOOLTIP),searchField:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_FIELD),title:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.TITLE)}}}},onboarding:{close:"".concat(ID_CONSTANTS.ONBOARDING,".close"),description:"".concat(ID_CONSTANTS.ONBOARDING,".description"),nextButton:"".concat(ID_CONSTANTS.ONBOARDING,".nextButton"),prevButton:"".concat(ID_CONSTANTS.ONBOARDING,".prevButton"),title:"".concat(ID_CONSTANTS.ONBOARDING,".title")},panel:{additionalContent:{body:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT_BODY),sidebar:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.SIDEBAR),sidebarButton:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.SIDEBAR_BUTTON,".")},backButton:"".concat(ID_CONSTANTS.PANEL,".backButton"),closeButton:"".concat(ID_CONSTANTS.PANEL,".closeButton"),mainAction:"".concat(ID_CONSTANTS.PANEL,".mainAction"),mainButton:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.MAIN_BUTTON),paginationNext:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.PAGINATION_NEXT),paginationPrev:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.PAGINATION_PREV),secondaryAction:"".concat(ID_CONSTANTS.PANEL,".secondaryAction"),title:"".concat(ID_CONSTANTS.PANEL,".title")},signature:"signature",snackBar:{closeButton:"snackbar.closeButton",label:"snackbar.label"},statusMessage:{description:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".description"),helperText:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".helperText"),icon:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".icon"),title:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".title")},table:{tableHeader:{title:"".concat(ID_CONSTANTS.TABLE,".tableHeader.title")}},tabs:{tab:"tabs.tab."},wrapperObservation:{actionIcon:"wrapperObservation.actionIcon."},UTLoading:{logoLoader:"UTLoading.logoLoader",spinner:"UTLoading.spinner"},UTSnackbar:{closeButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".closeButton"),description:"".concat(ID_CONSTANTS.UT_SNACKBAR,".description"),label:"".concat(ID_CONSTANTS.UT_SNACKBAR,".label"),primaryActionButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".primaryActionButton"),root:"".concat(ID_CONSTANTS.UT_SNACKBAR,".root"),secondaryActionButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".secondaryActionButton")},UTDatePickerV1TestID:{calendar:"UTDatePickerV1.calendar",calendarPrevBtn:"UTDatePickerV1.calendarPrevBtn",calendarNextBtn:"UTDatePickerV1.calendarNextBtn",calendarMonthYear:"UTDatePickerV1.calendarMonthYear"},workflowContainer:{bottomNav:{backButton:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".backButton"),nextButton:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".nextButton"),primaryAction:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".primaryAction"),secondaryAction:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".secondaryAction")},header:{helpText:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".helpText"),requiredFieldInfo:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".requiredFieldInfo"),subtitle:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".subtitle"),tagline:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".tagline"),title:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".title")}}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.TEST_IDS=exports.ID_CONSTANTS=void 0;const ID_CONSTANTS=exports.ID_CONSTANTS={ACTIONS:"actions",ADD_FILTER_BUTTON:"addFilterButton",AVATAR:"avatar",BOTTOM_NAV:"bottomNav",CANVAS:"canvas",CELL:"cell",CLEAR_BUTTON:"clearButton",CLIENT_FILTER:"clientFilter",COLLAPSED_PANEL_CONTENT:"collapsedPanelContent",COLLAPSE_BUTTON:"collapseButton",COLLAPSE_BUTTON_TOOLTIP:"collapseButtonTooltip",CREDIT_CARD:"creditCard",CUSTOM_SEARCH_ACTION:"customSearchAction",DATA_CATEGORY:"dataCategory",DATA_ELEMENT:"dataElement",DELETE_BUTTON:"deleteButton",DELETE_BUTTON_TOOLTIP:"deleteButtonTooltip",ADDITIONAL_CONTENT:"additionalContent",ADDITIONAL_CONTENT_BODY:"additionalContentBody",DESCRIPTION:"description",DIALOG:"dialog",EDIT_BUTTON:"editButton",EDIT_BUTTON_TOOLTIP:"editButtonTooltip",EXPANDED_PANEL_CONTENT:"expandedPanelContent",EXPANDED_PANEL_CONTENT_CATEGORY:"expandedPanelContentCategory",EXPANDED_PANEL_CONTENT_CATEGORY_EMPTY:"expandedPanelContentCategoryEmpty",EXPANDED_PANEL_CONTENT_CATEGORY_HEADER:"expandedPanelContentCategoryHeader",EXPANDED_PANEL_CONTENT_CATEGORY_ITEM:"expandedPanelContentCategoryItem",EXPANDED_PANEL_CONTENT_HEADER:"expandedPanelContentHeader",EXPAND_BUTTON:"expandButton",FILTER_GROUPING:"filterGrouping",GROUPING_PANEL:"groupingPanel",HEADER:"header",HELP_TEXT:"helpText",ICON:"icon",INVALID_PARAMS:"invalidParams",LABEL:"label",MAIN_BUTTON:"mainButton",NAME:"name",NAME_CONTAINER:"nameContainer",ONBOARDING:"onboarding",PAGINATION_NEXT:"paginationNext",PAGINATION_PREV:"paginationPrev",PANEL:"panel",PERSISTENT_FILTER:"persistentFilter",PINNED:"pinned",POPPER:"popper",SEARCH_BUTTON:"searchButton",SECONDARY_ACTION:"secondaryAction",SEARCH_BUTTON_TOOLTIP:"searchButtonTooltip",SEARCH_FIELD:"searchField",SELECTION_COMPONENT:"selectionComponent",SIDEBAR:"sidebar",SIDEBAR_BUTTON:"sidebarButton",STATUS_MESSAGE:"statusMessage",TABLE:"table",TERTIARY_ACTION:"tertiaryAction",TABLE_ROW:"tableRow",TITLE:"title",USER_FILTER:"userFilter",UT_RICH_TEXT:"UTRichText",UT_SNACKBAR:"UTSnackbar",VALIDATION_DATA:"validationData",WORKFLOW_CONTAINER:"workflowContainer"},TEST_IDS=exports.TEST_IDS={barChart:{bar:{tooltip:"barChart.bar.tooltip."},xAxis:{secondaryLabel:"barChart.xAxis.secondaryLabel.",mainLabel:"barChart.xAxis.mainLabel."}},breadcrumbs:{item:"breadcrumbs.item"},creditCard:{cardField:"".concat(ID_CONSTANTS.CREDIT_CARD,".cardField"),cvcField:"".concat(ID_CONSTANTS.CREDIT_CARD,".cvcField"),expires:"".concat(ID_CONSTANTS.CREDIT_CARD,".expires"),nameField:"".concat(ID_CONSTANTS.CREDIT_CARD,".nameField")},dataCategory:{container:"".concat(ID_CONSTANTS.DATA_CATEGORY,".container"),collapseButton:"".concat(ID_CONSTANTS.DATA_CATEGORY,".collapseButton"),item:"".concat(ID_CONSTANTS.DATA_CATEGORY,".item")},dataElement:{container:"".concat(ID_CONSTANTS.DATA_ELEMENT,".container"),collapseButton:"".concat(ID_CONSTANTS.DATA_ELEMENT,".collapseButton"),switchAction:"".concat(ID_CONSTANTS.DATA_ELEMENT,".actionSwitch"),buttonAction:"".concat(ID_CONSTANTS.DATA_ELEMENT,".actionButton")},dialog:{acceptButton:"".concat(ID_CONSTANTS.DIALOG,".acceptButton"),cancelButton:"".concat(ID_CONSTANTS.DIALOG,".cancelButton"),closeButton:"".concat(ID_CONSTANTS.DIALOG,".closeButton"),title:"".concat(ID_CONSTANTS.DIALOG,".title")},filterGrouping:{groupingPanel:{collapsedPanelContent:{expandButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.COLLAPSED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPAND_BUTTON)},expandedPanelContent:{expandedPanelContentCategory:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_CATEGORY),expandedPanelContentHeader:{addFilterButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.ADD_FILTER_BUTTON),collapseButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.COLLAPSE_BUTTON),collapseButtonTooltip:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.COLLAPSE_BUTTON_TOOLTIP),customSearchAction:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.CUSTOM_SEARCH_ACTION),searchButton:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_BUTTON),searchButtonTooltip:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_BUTTON_TOOLTIP),searchField:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.SEARCH_FIELD),title:"".concat(ID_CONSTANTS.FILTER_GROUPING,".").concat(ID_CONSTANTS.GROUPING_PANEL,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT,".").concat(ID_CONSTANTS.EXPANDED_PANEL_CONTENT_HEADER,".").concat(ID_CONSTANTS.TITLE)}}}},onboarding:{close:"".concat(ID_CONSTANTS.ONBOARDING,".close"),description:"".concat(ID_CONSTANTS.ONBOARDING,".description"),nextButton:"".concat(ID_CONSTANTS.ONBOARDING,".nextButton"),prevButton:"".concat(ID_CONSTANTS.ONBOARDING,".prevButton"),title:"".concat(ID_CONSTANTS.ONBOARDING,".title")},panel:{additionalContent:{body:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT_BODY),sidebar:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.SIDEBAR),sidebarButton:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.ADDITIONAL_CONTENT,".").concat(ID_CONSTANTS.SIDEBAR_BUTTON,".")},backButton:"".concat(ID_CONSTANTS.PANEL,".backButton"),closeButton:"".concat(ID_CONSTANTS.PANEL,".closeButton"),mainAction:"".concat(ID_CONSTANTS.PANEL,".mainAction"),mainButton:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.MAIN_BUTTON),paginationNext:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.PAGINATION_NEXT),paginationPrev:"".concat(ID_CONSTANTS.PANEL,".").concat(ID_CONSTANTS.PAGINATION_PREV),secondaryAction:"".concat(ID_CONSTANTS.PANEL,".secondaryAction"),title:"".concat(ID_CONSTANTS.PANEL,".title")},signature:"signature",snackBar:{closeButton:"snackbar.closeButton",label:"snackbar.label"},statusMessage:{description:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".description"),helperText:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".helperText"),icon:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".icon"),title:"".concat(ID_CONSTANTS.STATUS_MESSAGE,".title")},table:{tableHeader:{title:"".concat(ID_CONSTANTS.TABLE,".tableHeader.title")}},tabs:{tab:"tabs.tab."},wrapperObservation:{actionIcon:"wrapperObservation.actionIcon."},UTLoading:{logoLoader:"UTLoading.logoLoader",spinner:"UTLoading.spinner"},UTRichText:{content:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".content"),field:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".field"),helpText:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".").concat(ID_CONSTANTS.HELP_TEXT),label:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".").concat(ID_CONSTANTS.LABEL),root:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".root"),submitButton:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".submitButton"),tableToolbar:{addColumnAfter:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.addColumnAfter"),addColumnBefore:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.addColumnBefore"),addRowAfter:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.addRowAfter"),deleteColumn:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.deleteColumn"),deleteRow:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.deleteRow"),deleteTable:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.deleteTable"),root:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".tableToolbar.root")},toolbar:{bold:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.bold"),italic:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.italic"),list:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.list"),listNumbers:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.listNumbers"),root:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.root"),table:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".toolbar.table")},validation:"".concat(ID_CONSTANTS.UT_RICH_TEXT,".").concat(ID_CONSTANTS.VALIDATION_DATA)},UTSnackbar:{closeButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".closeButton"),description:"".concat(ID_CONSTANTS.UT_SNACKBAR,".description"),label:"".concat(ID_CONSTANTS.UT_SNACKBAR,".label"),primaryActionButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".primaryActionButton"),root:"".concat(ID_CONSTANTS.UT_SNACKBAR,".root"),secondaryActionButton:"".concat(ID_CONSTANTS.UT_SNACKBAR,".secondaryActionButton")},UTDatePickerV1TestID:{calendar:"UTDatePickerV1.calendar",calendarPrevBtn:"UTDatePickerV1.calendarPrevBtn",calendarNextBtn:"UTDatePickerV1.calendarNextBtn",calendarMonthYear:"UTDatePickerV1.calendarMonthYear"},workflowContainer:{bottomNav:{backButton:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".backButton"),nextButton:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".nextButton"),primaryAction:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".primaryAction"),secondaryAction:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.BOTTOM_NAV,".secondaryAction")},header:{helpText:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".helpText"),requiredFieldInfo:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".requiredFieldInfo"),subtitle:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".subtitle"),tagline:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".tagline"),title:"".concat(ID_CONSTANTS.WORKFLOW_CONTAINER,".").concat(ID_CONSTANTS.HEADER,".title")}}};
@@ -0,0 +1 @@
1
+ import{number}from"prop-types";import React from"react";import styles from"./styles.module.scss";const EditorSkeleton=e=>{let{cols:t=3,rows:a=3}=e;const s=Array.from({length:t},(e,t)=>"c".concat(t)),l=Array.from({length:a},(e,t)=>"r".concat(t));return React.createElement("div",{className:styles.root},React.createElement("div",{className:styles.tableWrapper},React.createElement("div",{className:styles.table},React.createElement("div",{className:styles.row},s.map(e=>React.createElement("div",{key:e,className:styles.headerCell},React.createElement("div",{className:styles.bar})))),l.map(e=>React.createElement("div",{key:e,className:styles.row},s.map(e=>React.createElement("div",{key:e,className:styles.bodyCell},React.createElement("div",{className:styles.bar}))))))))};EditorSkeleton.propTypes={cols:number,rows:number};export default EditorSkeleton;