@licklist/design 0.78.5-dev.46 → 0.78.5-dev.47

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.
@@ -9,6 +9,8 @@ export declare const BulletListIcon: () => import("react/jsx-runtime").JSX.Eleme
9
9
  export declare const NumberedListIcon: () => import("react/jsx-runtime").JSX.Element;
10
10
  export declare const QuoteAltIcon: () => import("react/jsx-runtime").JSX.Element;
11
11
  export declare const DividerIcon: () => import("react/jsx-runtime").JSX.Element;
12
+ export declare const HardBreakIcon: () => import("react/jsx-runtime").JSX.Element;
12
13
  export declare const UndoIcon: () => import("react/jsx-runtime").JSX.Element;
13
14
  export declare const RedoIcon: () => import("react/jsx-runtime").JSX.Element;
15
+ export declare const ClearIcon: () => import("react/jsx-runtime").JSX.Element;
14
16
  //# sourceMappingURL=Icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/WYSIWYGEditor/Icons.tsx"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,+CAIpB,CAAC;AAEF,eAAO,MAAM,UAAU,+CAItB,CAAC;AAEF,eAAO,MAAM,aAAa,+CAIzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,+CAI7B,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,aAAa,+CAIzB,CAAC;AAEF,eAAO,MAAM,cAAc,+CAI1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,+CAI5B,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,WAAW,+CAMvB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAIpB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAIpB,CAAC"}
1
+ {"version":3,"file":"Icons.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/WYSIWYGEditor/Icons.tsx"],"names":[],"mappings":"AACA,eAAO,MAAM,QAAQ,+CAIpB,CAAC;AAEF,eAAO,MAAM,UAAU,+CAItB,CAAC;AAEF,eAAO,MAAM,aAAa,+CAIzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,+CAI7B,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,aAAa,+CAIzB,CAAC;AAEF,eAAO,MAAM,cAAc,+CAI1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,+CAI5B,CAAC;AAEF,eAAO,MAAM,YAAY,+CAIxB,CAAC;AAEF,eAAO,MAAM,WAAW,+CAMvB,CAAC;AAEF,eAAO,MAAM,aAAa,+CAIzB,CAAA;AAED,eAAO,MAAM,QAAQ,+CAIpB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAIpB,CAAC;AAEF,eAAO,MAAM,SAAS,+CAIrB,CAAC"}
@@ -162,7 +162,7 @@ var DividerIcon = function() {
162
162
  ]
163
163
  });
164
164
  };
165
- var UndoIcon = function() {
165
+ var HardBreakIcon = function() {
166
166
  return /*#__PURE__*/ jsx("svg", {
167
167
  xmlns: "http://www.w3.org/2000/svg",
168
168
  width: "24",
@@ -175,6 +175,19 @@ var UndoIcon = function() {
175
175
  })
176
176
  });
177
177
  };
178
+ var UndoIcon = function() {
179
+ return /*#__PURE__*/ jsx("svg", {
180
+ xmlns: "http://www.w3.org/2000/svg",
181
+ width: "24",
182
+ height: "24",
183
+ viewBox: "0 0 24 24",
184
+ fill: "none",
185
+ children: /*#__PURE__*/ jsx("path", {
186
+ d: "M6.06131 6.69136C5.88684 6.85818 5.71976 7.03357 5.56136 7.21755C5.32407 7.49319 5.10569 7.78768 4.90881 8.09936C4.77746 8.30727 4.65565 8.52287 4.54421 8.7457C4.48837 8.85736 4.43524 8.9709 4.38469 9.08613C4.2839 9.31587 4.19401 9.5527 4.11539 9.796C4.07598 9.91797 4.03914 10.0416 4.00559 10.1668C3.93079 10.446 3.87328 10.7259 3.83158 11.0051C3.82934 11.0201 3.82751 11.0351 3.82536 11.05C3.81494 11.1228 3.80597 11.1955 3.79774 11.2682C3.79428 11.2986 3.79116 11.329 3.78807 11.3594C3.78326 11.4071 3.77883 11.4547 3.77495 11.5023C3.75889 11.6978 3.75077 11.8926 3.75009 12.0865C3.75003 12.1086 3.74996 12.1307 3.75009 12.1528C3.75089 12.3012 3.75571 12.449 3.76528 12.5961C3.7665 12.6146 3.76808 12.633 3.76943 12.6514C3.82014 13.3498 3.96775 14.0309 4.20377 14.6767L7.62813 11.1377L5.45502 10.5556C5.48179 10.4557 5.51129 10.3567 5.54272 10.2594C5.66865 9.8695 5.83151 9.50078 6.02609 9.15588C6.07459 9.06992 6.12494 8.9854 6.17732 8.90245C6.91264 7.73794 8.02285 6.87449 9.29715 6.43448C9.38818 6.40305 9.48005 6.37386 9.57268 6.34679C10.1284 6.18439 10.7114 6.10131 11.3052 6.10717C11.4042 6.10814 11.5034 6.11157 11.6028 6.11753C12.0008 6.14137 12.4022 6.2058 12.8023 6.31295C13.2945 6.44483 13.7566 6.63317 14.182 6.8709C14.2125 6.88794 14.2416 6.90723 14.2718 6.92476C14.7547 7.20595 15.1899 7.54933 15.5686 7.94261C15.6449 8.02185 15.7186 8.10326 15.7902 8.18637C15.9047 8.31912 16.0139 8.45605 16.1162 8.59793C16.1915 8.70249 16.2625 8.80995 16.3309 8.91903C17.1864 10.2824 17.4949 11.9837 17.0456 13.6609C16.327 16.3424 13.9009 18.1093 11.2507 18.108V19.6078C14.5636 19.6095 17.5967 17.4016 18.4951 14.0497C19.0819 11.8595 18.6347 9.6365 17.4544 7.89634L17.4558 7.89496C17.4301 7.85706 17.4028 7.81984 17.3764 7.78241C17.3604 7.75975 17.3443 7.73721 17.3281 7.71473C17.2772 7.64435 17.2253 7.57483 17.172 7.50619C17.1543 7.48339 17.1368 7.46044 17.1188 7.43783C17.0658 7.37103 17.0112 7.30536 16.9559 7.24034C16.9336 7.21424 16.9115 7.18811 16.8889 7.16231C16.8382 7.10446 16.7867 7.04739 16.7342 6.99105C16.7045 6.95913 16.6747 6.92719 16.6444 6.89576C16.4036 6.64603 16.1448 6.41195 15.869 6.19625C15.8379 6.17193 15.8052 6.14967 15.7737 6.12582C15.715 6.08143 15.657 6.03598 15.5969 5.99323C15.5586 5.96599 15.5191 5.94038 15.4802 5.91382C15.4213 5.87363 15.3622 5.83365 15.302 5.79505C15.2644 5.7709 15.2263 5.74744 15.1881 5.72393C15.1285 5.6872 15.0687 5.65066 15.0079 5.61551C14.959 5.58729 14.9097 5.55983 14.8601 5.53265C14.8028 5.50128 14.745 5.47076 14.6868 5.44081C14.6463 5.41998 14.6055 5.39949 14.5645 5.37935C14.4883 5.3419 14.4111 5.30595 14.3332 5.27093C14.3021 5.25697 14.2713 5.24238 14.24 5.22881C14.1572 5.19297 14.0732 5.15965 13.9886 5.12661C13.953 5.11267 13.9176 5.09792 13.8816 5.08449C13.8148 5.05956 13.7471 5.03652 13.6793 5.01337C13.6344 4.99807 13.5899 4.98161 13.5446 4.9671C13.4284 4.92988 13.3102 4.89544 13.1911 4.86352C12.691 4.72957 12.1893 4.6496 11.6919 4.61976C11.4431 4.60484 11.1954 4.60237 10.9496 4.61217C10.8266 4.61706 10.7042 4.62473 10.5822 4.63564C10.3388 4.65745 10.0974 4.69064 9.85925 4.73577C8.42886 5.00676 7.10753 5.69099 6.06131 6.69136Z",
187
+ fill: "#626A90"
188
+ })
189
+ });
190
+ };
178
191
  var RedoIcon = function() {
179
192
  return /*#__PURE__*/ jsx("svg", {
180
193
  xmlns: "http://www.w3.org/2000/svg",
@@ -188,5 +201,18 @@ var RedoIcon = function() {
188
201
  })
189
202
  });
190
203
  };
204
+ var ClearIcon = function() {
205
+ return /*#__PURE__*/ jsx("svg", {
206
+ xmlns: "http://www.w3.org/2000/svg",
207
+ width: "24",
208
+ height: "24",
209
+ viewBox: "0 0 24 24",
210
+ fill: "none",
211
+ children: /*#__PURE__*/ jsx("path", {
212
+ d: "M12.4884 13.549L11.7035 18H10.1804L11.1935 12.2542L5.63599 6.69664L6.69664 5.63599L18.3639 17.3033L17.3032 18.3639L12.4884 13.549ZM11.8295 8.64752L12.0319 7.49995H10.6819L9.18193 5.99995H17.9999V7.49995H13.555L13.1243 9.94234L11.8295 8.64752Z",
213
+ fill: "#626A90"
214
+ })
215
+ });
216
+ };
191
217
 
192
- export { BoldIcon, BulletListIcon, DividerIcon, Heading1Icon, Heading2Icon, ItalicIcon, NumberedListIcon, ParagraphIcon, QuoteAltIcon, RedoIcon, StrikeThroughIcon, UnderlineIcon, UndoIcon };
218
+ export { BoldIcon, BulletListIcon, ClearIcon, DividerIcon, HardBreakIcon, Heading1Icon, Heading2Icon, ItalicIcon, NumberedListIcon, ParagraphIcon, QuoteAltIcon, RedoIcon, StrikeThroughIcon, UnderlineIcon, UndoIcon };
@@ -6,6 +6,7 @@ export interface WYSIWYGEditorProps {
6
6
  helpText?: string;
7
7
  value?: string;
8
8
  onChange?: (value: string) => void;
9
+ onClear?: () => void;
9
10
  placeholder?: string;
10
11
  disabled?: boolean;
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WYSIWYGEditor.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/WYSIWYGEditor/WYSIWYGEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAgBzB,OAAO,sBAAsB,CAAA;AAE7B,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA+MtD,CAAA"}
1
+ {"version":3,"file":"WYSIWYGEditor.d.ts","sourceRoot":"","sources":["../../../../src/v2/components/WYSIWYGEditor/WYSIWYGEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAkBzB,OAAO,sBAAsB,CAAA;AAE7B,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAwWtD,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import React__default from 'react';
3
- import { BoldIcon, ItalicIcon, UnderlineIcon, StrikeThroughIcon, Heading1Icon, Heading2Icon, ParagraphIcon, QuoteAltIcon, BulletListIcon, NumberedListIcon, DividerIcon, UndoIcon, RedoIcon } from './Icons.js';
3
+ import { BoldIcon, ItalicIcon, UnderlineIcon, StrikeThroughIcon, Heading1Icon, Heading2Icon, ParagraphIcon, QuoteAltIcon, BulletListIcon, NumberedListIcon, DividerIcon, HardBreakIcon, UndoIcon, RedoIcon, ClearIcon } from './Icons.js';
4
4
  import './WYSIWYGEditor.scss.js';
5
5
 
6
6
  var WYSIWYGEditor = function(param) {
@@ -29,25 +29,139 @@ var WYSIWYGEditor = function(param) {
29
29
  }
30
30
  };
31
31
  var execCommand = function(command, value) {
32
+ // Ensure the command is only executed if the editor is focused or if we can force focus to it
33
+ var selection = window.getSelection();
34
+ if (!selection) return;
35
+ var isWithinEditor = false;
36
+ if (selection.rangeCount > 0) {
37
+ var _contentRef_current;
38
+ var range = selection.getRangeAt(0);
39
+ isWithinEditor = ((_contentRef_current = contentRef.current) === null || _contentRef_current === void 0 ? void 0 : _contentRef_current.contains(range.commonAncestorContainer)) || false;
40
+ }
41
+ // If not within editor, we focus the editor first to ensure the command applies to it
42
+ if (!isWithinEditor && contentRef.current) {
43
+ contentRef.current.focus();
44
+ // We need to re-get the selection after focusing as it might have changed
45
+ var currentSelection = window.getSelection();
46
+ if (currentSelection) {
47
+ // If the editor is empty or we want to ensure cursor is inside, we set it
48
+ if (contentRef.current.innerHTML === '' || contentRef.current.innerHTML === '<p><br></p>') {
49
+ var newRange = document.createRange();
50
+ newRange.selectNodeContents(contentRef.current);
51
+ newRange.collapse(false);
52
+ currentSelection.removeAllRanges();
53
+ currentSelection.addRange(newRange);
54
+ }
55
+ }
56
+ }
57
+ if (command === 'clearFormatting') {
58
+ if (selection.rangeCount > 0) {
59
+ var range1 = selection.getRangeAt(0);
60
+ // Check if selection is inside a list
61
+ var container = range1.commonAncestorContainer;
62
+ if (container.nodeType === Node.TEXT_NODE) {
63
+ container = container.parentNode;
64
+ }
65
+ var isInsideList = false;
66
+ var tempNode = container;
67
+ while(tempNode && tempNode !== contentRef.current){
68
+ if (tempNode.nodeName === 'UL' || tempNode.nodeName === 'OL') {
69
+ isInsideList = true;
70
+ break;
71
+ }
72
+ tempNode = tempNode.parentNode;
73
+ }
74
+ if (isInsideList) {
75
+ // If inside a list, we need to toggle off the list first
76
+ // We check which type of list it is and call the corresponding command
77
+ var listType = '';
78
+ var listNode = container;
79
+ while(listNode && listNode !== contentRef.current){
80
+ if (listNode.nodeName === 'UL') {
81
+ listType = 'insertUnorderedList';
82
+ break;
83
+ } else if (listNode.nodeName === 'OL') {
84
+ listType = 'insertOrderedList';
85
+ break;
86
+ }
87
+ listNode = listNode.parentNode;
88
+ }
89
+ if (listType) {
90
+ document.execCommand(listType, false);
91
+ }
92
+ }
93
+ // If the selection is collapsed, just apply to current block
94
+ if (range1.collapsed) {
95
+ document.execCommand('formatBlock', false, '<p>');
96
+ document.execCommand('removeFormat', false);
97
+ } else {
98
+ // If there's a selection, we check if it contains HR
99
+ var fragment = range1.cloneContents();
100
+ var hasHR = fragment.querySelector('hr');
101
+ if (hasHR) {
102
+ // If it contains HR, we apply removeFormat but avoid formatBlock P
103
+ // which would replace the whole selection including HR with a single P
104
+ document.execCommand('removeFormat', false);
105
+ } else {
106
+ document.execCommand('formatBlock', false, '<p>');
107
+ document.execCommand('removeFormat', false);
108
+ }
109
+ }
110
+ handleInput();
111
+ }
112
+ return;
113
+ }
32
114
  if (command === 'insertHorizontalRule') {
33
- var selection = window.getSelection();
34
- if (selection && selection.rangeCount > 0) {
35
- var range = selection.getRangeAt(0);
36
- range.deleteContents();
115
+ if (selection.rangeCount > 0) {
116
+ var range2 = selection.getRangeAt(0);
117
+ // range.deleteContents() // Removed to avoid clearing highlighted text
37
118
  var hr = document.createElement('hr');
38
119
  var p = document.createElement('p');
39
120
  p.innerHTML = '<br>' // Ensure the paragraph is "typeable"
40
121
  ;
122
+ // If something is selected, we collapse to end to insert HR AFTER selection
123
+ if (!range2.collapsed) {
124
+ range2.collapse(false);
125
+ }
41
126
  // Insert HR and then the paragraph after it
42
- range.insertNode(p);
43
- range.insertNode(hr);
127
+ range2.insertNode(p);
128
+ range2.insertNode(hr);
44
129
  // Move cursor to the new paragraph
45
- var newRange = document.createRange();
46
- newRange.setStart(p, 0);
47
- newRange.setEnd(p, 0);
48
- newRange.collapse(true);
130
+ var newRange1 = document.createRange();
131
+ newRange1.setStart(p, 0);
132
+ newRange1.setEnd(p, 0);
133
+ newRange1.collapse(true);
49
134
  selection.removeAllRanges();
50
- selection.addRange(newRange);
135
+ selection.addRange(newRange1);
136
+ handleInput();
137
+ return;
138
+ }
139
+ }
140
+ if (command === 'hardBreak') {
141
+ if (selection.rangeCount > 0) {
142
+ var range3 = selection.getRangeAt(0);
143
+ // range.deleteContents() // Removed to avoid clearing highlighted text
144
+ var spacer = document.createElement('div');
145
+ spacer.className = 'wysiwyg-editor__hard-break';
146
+ spacer.innerHTML = '<br>';
147
+ // If something is selected, we collapse to end to insert break AFTER selection
148
+ // or we can just insert it at current position.
149
+ // User says "it should just break to new line", usually that implies keeping the text.
150
+ if (!range3.collapsed) {
151
+ range3.collapse(false);
152
+ }
153
+ range3.insertNode(spacer);
154
+ // Create a new paragraph after the spacer to continue typing
155
+ var p1 = document.createElement('p');
156
+ p1.innerHTML = '<br>';
157
+ spacer.after(p1);
158
+ // Move cursor to the new paragraph
159
+ var newRange2 = document.createRange();
160
+ newRange2.setStart(p1, 0);
161
+ newRange2.setEnd(p1, 0);
162
+ newRange2.collapse(true);
163
+ selection.removeAllRanges();
164
+ selection.addRange(newRange2);
51
165
  handleInput();
52
166
  return;
53
167
  }
@@ -109,7 +223,7 @@ var WYSIWYGEditor = function(param) {
109
223
  className: "wysiwyg-editor__toolbar-btn",
110
224
  title: "Heading 1",
111
225
  onClick: function() {
112
- return execCommand('formatBlock', 'H1');
226
+ return execCommand('formatBlock', '<h1>');
113
227
  },
114
228
  children: /*#__PURE__*/ jsx(Heading1Icon, {})
115
229
  }),
@@ -118,7 +232,7 @@ var WYSIWYGEditor = function(param) {
118
232
  className: "wysiwyg-editor__toolbar-btn",
119
233
  title: "Heading 2",
120
234
  onClick: function() {
121
- return execCommand('formatBlock', 'H2');
235
+ return execCommand('formatBlock', '<h2>');
122
236
  },
123
237
  children: /*#__PURE__*/ jsx(Heading2Icon, {})
124
238
  }),
@@ -127,8 +241,7 @@ var WYSIWYGEditor = function(param) {
127
241
  className: "wysiwyg-editor__toolbar-btn",
128
242
  title: "Paragraph",
129
243
  onClick: function() {
130
- execCommand('formatBlock', 'P');
131
- execCommand('removeFormat');
244
+ return execCommand('clearFormatting');
132
245
  },
133
246
  children: /*#__PURE__*/ jsx(ParagraphIcon, {})
134
247
  }),
@@ -137,7 +250,7 @@ var WYSIWYGEditor = function(param) {
137
250
  className: "wysiwyg-editor__toolbar-btn",
138
251
  title: "Quote",
139
252
  onClick: function() {
140
- return execCommand('formatBlock', 'BLOCKQUOTE');
253
+ return execCommand('formatBlock', '<blockquote>');
141
254
  },
142
255
  children: /*#__PURE__*/ jsx(QuoteAltIcon, {})
143
256
  }),
@@ -168,11 +281,24 @@ var WYSIWYGEditor = function(param) {
168
281
  },
169
282
  children: /*#__PURE__*/ jsx(DividerIcon, {})
170
283
  }),
284
+ /*#__PURE__*/ jsx("button", {
285
+ type: "button",
286
+ className: "wysiwyg-editor__toolbar-btn",
287
+ title: "Hard Break",
288
+ onClick: function() {
289
+ return execCommand('hardBreak');
290
+ },
291
+ children: /*#__PURE__*/ jsx(HardBreakIcon, {})
292
+ }),
171
293
  /*#__PURE__*/ jsx("button", {
172
294
  type: "button",
173
295
  className: "wysiwyg-editor__toolbar-btn",
174
296
  title: "Undo",
175
297
  onClick: function() {
298
+ var selection = window.getSelection();
299
+ if (selection && contentRef.current && !contentRef.current.contains(selection.anchorNode)) {
300
+ contentRef.current.focus();
301
+ }
176
302
  if (document.queryCommandEnabled('undo')) {
177
303
  document.execCommand('undo', false);
178
304
  handleInput();
@@ -185,12 +311,25 @@ var WYSIWYGEditor = function(param) {
185
311
  className: "wysiwyg-editor__toolbar-btn",
186
312
  title: "Redo",
187
313
  onClick: function() {
314
+ var selection = window.getSelection();
315
+ if (selection && contentRef.current && !contentRef.current.contains(selection.anchorNode)) {
316
+ contentRef.current.focus();
317
+ }
188
318
  if (document.queryCommandEnabled('redo')) {
189
319
  document.execCommand('redo', false);
190
320
  handleInput();
191
321
  }
192
322
  },
193
323
  children: /*#__PURE__*/ jsx(RedoIcon, {})
324
+ }),
325
+ /*#__PURE__*/ jsx("button", {
326
+ type: "button",
327
+ className: "wysiwyg-editor__toolbar-btn",
328
+ title: "Clear Formatting",
329
+ onClick: function() {
330
+ return execCommand('clearFormatting');
331
+ },
332
+ children: /*#__PURE__*/ jsx(ClearIcon, {})
194
333
  })
195
334
  ]
196
335
  }),
@@ -1,6 +1,6 @@
1
1
  import styleInject from '/opt/atlassian/pipelines/agent/build/node_modules/style-inject/dist/style-inject.es.js';
2
2
 
3
- var css_248z = ":root{--blue-50:#e7f4fc;--blue-100:#b4dbf6;--blue-200:#90caf2;--blue-300:#5eb2ec;--blue-400:#3ea3e8;--blue-500:#0e8ce2;--blue-600:#0d7fce;--blue-700:#0a63a0;--blue-800:#084d7c;--blue-900:#063b5f;--cyan-50:#eafbff;--cyan-75:#bdf3ff;--cyan-100:#aff1ff;--cyan-200:#9deeff;--cyan-300:#71e6ff;--cyan-400:#55e1ff;--cyan-500:#2bd9ff;--cyan-600:#27c5e8;--cyan-700:#1f9ab5;--cyan-800:#18778c;--cyan-900:#125b6b;--indigo-50:#efeffe;--indigo-100:#cdccfc;--indigo-200:#b4b4fa;--indigo-300:#9291f8;--indigo-400:#7c74ff;--indigo-500:#5d5bf4;--indigo-600:#5553de;--indigo-700:#4241ad;--indigo-800:#333286;--indigo-900:#272666;--green-50:#eef9ea;--green-100:#c9ecbd;--green-200:#afe39d;--green-300:#8bd671;--green-400:#75ce55;--green-500:#52c22b;--green-600:#4bb127;--green-700:#3a8a1f;--green-800:#2d6b18;--green-900:#225112;--red-50:#fceceb;--red-100:#f5c4c2;--red-200:#f1a8a4;--red-300:#ea807b;--red-400:#e66861;--red-500:#e0423a;--red-600:#cc3c35;--red-700:#9f2f29;--red-800:#7b2420;--red-900:#5e1c18;--purple-50:#efe6fd;--purple-100:#ceb0fa;--purple-200:#b78af7;--purple-300:#965ff4;--purple-400:#8133f1;--purple-500:#6200ee;--purple-600:#5900d9;--purple-700:#4600a9;--purple-800:#360083;--purple-900:#290064;--orange-50:#fff2e8;--orange-100:#fed7b6;--orange-200:#fec493;--orange-300:#fea962;--orange-400:#fd9843;--orange-500:#fd7e14;--orange-600:#e67312;--orange-700:#b4590e;--orange-800:#8b450b;--orange-900:#6a3508;--yellow-50:#fcf6e7;--yellow-100:#f6e3b4;--yellow-200:#f2d68f;--yellow-300:#ecc35c;--yellow-400:#fcc741;--yellow-500:#fbb912;--yellow-600:#e4a810;--yellow-700:#a07509;--yellow-800:#7c5b07;--yellow-900:#5f4505;--pink-50:#fdecf4;--pink-100:#f8c3db;--pink-200:#f4a6ca;--pink-300:#f07eb2;--pink-400:#ed65a3;--pink-500:#e83e8c;--pink-600:#d33874;--pink-700:#a52c63;--pink-800:#80224d;--pink-900:#611a3b;--teal-50:#e9faf7;--teal-100:#baf0e7;--teal-200:#99e8db;--teal-300:#6bdecb;--teal-400:#4ed8c1;--teal-500:#22ceb1;--teal-600:#1fbba1;--teal-700:#18927e;--teal-800:#137161;--teal-900:#0e574a;--neutral-white:#fff;--neutral-25:#f8f8fa;--neutral-50:#e8e9ef;--neutral-75:#d2d5e3;--neutral-100:#b6bacc;--neutral-200:#9399b3;--neutral-300:#626a90;--neutral-400:#433d7b;--neutral-500:#14215a;--neutral-600:#121e52;--neutral-700:#0e1740;--neutral-800:#0b1232;--neutral-900:#080e26;--neutral-black:#000;--purple-lightest:var(--purple-50);--purple-lighter:var(--purple-100);--purple-light:var(--purple-300);--purple-regular:var(--purple-500);--purple-dark:var(--purple-600);--purple-darker:var(--purple-800);--purple-darkest:var(--purple-900);--blue-lightest:var(--blue-50);--blue-lighter:var(--blue-100);--blue-light:var(--blue-300);--blue-regular:var(--blue-500);--blue-dark:var(--blue-600);--blue-darker:var(--blue-800);--blue-darkest:var(--blue-900);--indigo-lightest:var(--indigo-50);--indigo-lighter:var(--indigo-100);--indigo-light:var(--indigo-300);--indigo-regular:var(--indigo-500);--indigo-dark:var(--indigo-600);--indigo-darker:var(--indigo-800);--indigo-darkest:var(--indigo-900);--cyan-lightest:var(--cyan-50);--cyan-lighter:var(--cyan-100);--cyan-light:var(--cyan-300);--cyan-regular:var(--cyan-500);--cyan-dark:var(--cyan-700);--cyan-darker:var(--cyan-800);--cyan-darkest:var(--cyan-900);--red-lightest:var(--red-50);--red-lighter:var(--red-100);--red-light:var(--red-400);--red-regular:var(--red-500);--red-dark:var(--red-600);--red-darker:var(--red-800);--red-darkest:var(--red-900);--orange-lightest:var(--orange-50);--orange-lighter:var(--orange-100);--orange-light:var(--orange-300);--orange-regular:var(--orange-500);--orange-dark:var(--orange-600);--orange-darker:var(--orange-700);--orange-darkest:var(--orange-800);--yellow-lightest:var(--yellow-50);--yellow-lighter:var(--yellow-100);--yellow-light:var(--yellow-300);--yellow-regular:var(--yellow-500);--yellow-dark:var(--yellow-600);--yellow-darker:var(--yellow-800);--yellow-darkest:var(--yellow-900);--pink-lightest:var(--pink-50);--pink-lighter:var(--pink-100);--pink-light:var(--pink-300);--pink-regular:var(--pink-500);--pink-dark:var(--pink-600);--pink-darker:var(--pink-700);--pink-darkest:var(--pink-800);--green-lightest:var(--green-50);--green-lighter:var(--green-100);--green-light:var(--green-300);--green-regular:var(--green-500);--green-dark:var(--green-600);--green-darker:var(--green-800);--green-darkest:var(--green-900);--teal-lightest:var(--teal-50);--teal-lighter:var(--teal-100);--teal-light:var(--teal-300);--teal-regular:var(--teal-500);--teal-dark:var(--teal-600);--teal-darker:var(--teal-700);--teal-darkest:var(--teal-800);--tone-lightest:var(--neutral-white);--tone-lighter:var(--neutral-25);--tone-light:var(--neutral-50);--tone-regular:var(--neutral-75);--tone-dark:var(--neutral-100);--tone-darker:var(--neutral-200);--tone-darkest:var(--neutral-300);--shade-lightest:var(--neutral-400);--shade-lighter:var(--neutral-500);--shade-light:var(--neutral-600);--shade-regular:var(--neutral-700);--shade-dark:var(--neutral-800);--shade-darker:var(--neutral-900);--shade-darkest:var(--neutral-black);--highlight-lightest:var(--cyan-lightest);--highlight-lighter:var(--cyan-lighter);--highlight-light:var(--cyan-light);--highlight-regular:var(--blue-regular);--highlight-dark:var(--blue-dark);--highlight-darker:var(--blue-darker);--highlight-darkest:var(--blue-darkest);--success-lightest:var(--green-lightest);--success-lighter:var(--green-lighter);--success-light:var(--green-light);--success-regular:var(--green-regular);--success-dark:var(--green-dark);--success-darker:var(--green-darker);--success-darkest:var(--green-darkest);--errors-lightest:var(--red-lightest);--errors-lighter:var(--red-lighter);--errors-light:var(--red-light);--errors-regular:var(--red-regular);--errors-dark:var(--red-dark);--errors-darker:var(--red-darker);--errors-darkest:var(--red-darkest);--actions-lightest:var(--purple-50);--actions-lighter:var(--purple-lighter);--actions-light:var(--purple-light);--actions-regular:var(--purple-regular);--actions-dark:var(--purple-dark);--actions-darker:var(--purple-darker);--actions-darkest:var(--purple-darkest);--information-lightest:var(--blue-lightest);--information-lighter:var(--blue-lighter);--information-light:var(--blue-light);--information-regular:var(--blue-regular);--information-dark:var(--blue-dark);--information-darker:var(--blue-darker);--information-darkest:var(--blue-darkest);--alert-lightest:var(--yellow-lightest);--alert-lighter:var(--yellow-lighter);--alert-light:var(--orange-light);--alert-regular:var(--orange-regular);--alert-darker:var(--yellow-darker);--alert-darkest:var(--yellow-darkest);--danger-lightest:var(--red-lightest);--danger-lighter:var(--red-lighter);--danger-light:var(--red-light);--danger-regular:var(--red-regular);--danger-dark:var(--red-dark);--danger-darker:var(--red-darker);--danger-darkest:var(--red-darkest);--disabled-lightest:var(--tone-light);--disabled-lighter:var(--tone-regular);--disabled-light:var(--tone-dark);--disabled-regular:var(--tone-darker);--disabled-dark:var(--shade-lighter);--disabled-darker:var(--shade-light);--disabled-darkest:var(--shade-regular);--label-primary:var(--shade-light);--label-secondary:var(--tone-darkest);--label-secondary-hover:var(--shade-lighter);--label-white:var(--tone-lightest);--label-highlight:var(--highlight-dark);--label-action:var(--actions-regular);--label-danger:var(--danger-dark);--label-status-error:var(--errors-dark);--label-status-success:var(--success-darker);--label-status-info:var(--information-dark);--label-status-alert:var(--alert-regular);--label-status-disabled:var(--disabled-regular);--surface-primary:var(--tone-lightest);--surface-primary-hover:var(--tone-lighter);--surface-primary-pressed:var(--tone-light);--surface-secondary:var(--neutral-25);--surface-secondary-hover:var(--tone-light);--surface-secondary-pressed:var(--tone-regular);--surface-tertiary:var(--tone-light);--surface-tertiary-hover:var(--tone-lighter);--surface-tertiary-pressed:var(--tone-lightest);--surface-status-success:var(--success-lightest);--surface-status-error:var(--errors-lightest);--surface-status-alert:var(--alert-lightest);--surface-status-info:var(--information-lightest);--surface-status-disabled:var(--disabled-lighter);--surface-action-soft:var(--actions-lightest);--surface-action-soft-hover:var(--actions-lighter);--surface-action-soft-pressed:var(--actions-light);--surface-danger-soft:var(--danger-lightest);--surface-danger-soft-hover:var(--danger-lighter);--surface-danger-soft-pressed:var(--danger-light);--surface-highlight-soft:var(--highlight-lightest);--surface-colour-red-soft:var(--red-lightest);--surface-colour-green-soft:var(--green-lightest);--surface-colour-blue-soft:var(--blue-lightest);--surface-colour-orange-soft:var(--orange-lightest);--surface-colour-yellow-soft:var(--yellow-lightest);--surface-colour-purple-soft:var(--purple-lightest);--surface-colour-indigo-soft:var(--indigo-lightest);--surface-colour-cyan-soft:var(--cyan-lightest);--surface-colour-pink-soft:var(--pink-lightest);--surface-colour-teal-soft:var(--teal-lightest);--border-primary:var(--tone-light);--border-secondary:var(--tone-regular);--border-selected:var(--neutral-600);--border-action:var(--actions-regular);--border-status-error:var(--errors-lighter);--border-status-success:var(--success-lighter);--border-status-alert:var(--alert-lighter);--border-status-info:var(--information-lighter);--border-status-disabled:var(--disabled-lightest);--border-colour-overlay:#121e521a;--fill-primary:var(--shade-lighter);--fill-secondary:var(--tone-darkest);--fill-white:var(--tone-lightest);--fill-action:var(--actions-regular);--fill-highlight:var(--highlight-dark);--fill-danger:var(--danger-dark);--fill-status-success:var(--success-darker);--fill-status-error:var(--errors-dark);--fill-status-alert:var(--alert-regular);--fill-status-info:var(--information-regular);--fill-status-disabled:var(--disabled-light);--gradient-stop1:var(--purple-500);--gradient-stop2:var(--indigo-500);--gradient-stop3:var(--blue-500)}[data-theme=dark]{--label-primary:var(--tone-lighter);--label-secondary:var(--tone-darker);--label-secondary-hover:var(--tone-lighter);--label-white:var(--tone-lightest);--label-highlight:var(--highlight-light);--label-action:var(--actions-lighter);--label-danger:var(--danger-light);--label-status-error:var(--errors-light);--label-status-success:var(--success-light);--label-status-info:var(--information-light);--label-status-alert:var(--alert-light);--label-status-disabled:var(--disabled-regular);--surface-primary:var(--shade-darker);--surface-primary-hover:var(--shade-dark);--surface-primary-pressed:var(--shade-regular);--surface-secondary:var(--shade-dark);--surface-secondary-hover:var(--shade-darker);--surface-secondary-pressed:var(--shade-darkest);--surface-tertiary:var(--shade-regular);--surface-tertiary-hover:var(--shade-dark);--surface-tertiary-pressed:var(--shade-darker);--surface-status-success:var(--success-darkest);--surface-status-error:var(--errors-darkest);--surface-status-alert:var(--alert-darkest);--surface-status-info:var(--information-darkest);--surface-status-disabled:var(--disabled-darkest);--surface-action-soft:var(--actions-darkest);--surface-action-soft-hover:var(--actions-darker);--surface-action-soft-pressed:var(--actions-dark);--surface-danger-soft:var(--danger-darkest);--surface-danger-soft-hover:var(--danger-darker);--surface-danger-soft-pressed:var(--danger-dark);--surface-highlight-soft:var(--highlight-darkest);--surface-colour-red-soft:var(--red-darkest);--surface-colour-green-soft:var(--green-darkest);--surface-colour-blue-soft:var(--blue-darkest);--surface-colour-orange-soft:var(--orange-darkest);--surface-colour-yellow-soft:var(--yellow-darkest);--surface-colour-purple-soft:var(--purple-darkest);--surface-colour-indigo-soft:var(--indigo-darkest);--surface-colour-cyan-soft:var(--cyan-darkest);--surface-colour-pink-soft:var(--pink-darkest);--surface-colour-teal-soft:var(--teal-darkest);--border-primary:var(--shade-light);--border-secondary:var(--shade-dark);--border-selected:var(--tone-light);--border-action:var(--actions-light);--border-status-error:var(--errors-darker);--border-status-success:var(--success-darker);--border-status-alert:var(--alert-darker);--border-status-info:var(--information-darker);--border-status-disabled:var(--disabled-dark);--border-colour-overlay:#ffffff1a;--fill-primary:var(--tone-lighter);--fill-secondary:var(--tone-darker);--fill-white:var(--tone-lightest);--fill-action:var(--actions-lighter);--fill-highlight:var(--highlight-light);--fill-danger:var(--danger-light);--fill-status-success:var(--success-light);--fill-status-error:var(--errors-light);--fill-status-alert:var(--alert-light);--fill-status-info:var(--information-light);--fill-status-disabled:var(--disabled-dark);--gradient-stop1:var(--indigo-400);--gradient-stop2:var(--cyan-500);--gradient-stop3:var(--cyan-100)}.text-primary{color:var(--label-primary)}.text-secondary{color:var(--label-secondary)}.text-white{color:var(--label-white)}.text-action{color:var(--label-action)}.text-danger{color:var(--label-danger)}.text-success{color:var(--label-status-success)}.text-error{color:var(--label-status-error)}.text-info{color:var(--label-status-info)}.text-warning{color:var(--label-status-alert)}.text-disabled{color:var(--label-status-disabled)}.bg-primary{background-color:var(--surface-primary)}.bg-secondary{background-color:var(--surface-secondary)}.bg-tertiary{background-color:var(--surface-tertiary)}.bg-success{background-color:var(--surface-status-success)}.bg-error{background-color:var(--surface-status-error)}.bg-warning{background-color:var(--surface-status-alert)}.bg-info{background-color:var(--surface-status-info)}.bg-action-soft{background-color:var(--surface-action-soft)}.bg-danger-soft{background-color:var(--surface-danger-soft)}.border-primary{border-color:var(--border-primary)}.border-secondary{border-color:var(--border-secondary)}.border-selected{border-color:var(--border-selected)}.border-action{border-color:var(--border-action)}.border-success{border-color:var(--border-status-success)}.border-error{border-color:var(--border-status-error)}.border-warning{border-color:var(--border-status-alert)}.border-info{border-color:var(--border-status-info)}:root{--radius-zero:0px;--radius-xs:1px;--radius-sm:2px;--radius-md:4px;--radius-reg:8px;--radius-lg:16px;--radius-xl:24px;--spacing-zero:0px;--spacing-xxs:1px;--spacing-xs:2px;--spacing-sm:4px;--spacing-md:8px;--spacing-reg:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:64px;--spacing-super:128px;--opacity-0:0;--opacity-10:0.1;--opacity-20:0.2;--opacity-30:0.3;--opacity-40:0.4;--opacity-50:0.5;--opacity-60:0.6;--opacity-70:0.7;--opacity-80:0.8;--opacity-90:0.9;--opacity-100:1;--color-success-fill:#2d6b18;--color-success-background:#eef9ea;--color-success-border:#c9ecbd;--color-error-fill:#cc3c35;--color-error-background:#fceceb;--color-error-border:#f5c4c2;--color-alert-fill:#fd7e14;--color-alert-background:#fcf6e7;--color-alert-border:#f6e3b4;--color-info-fill:#0e8ce2;--color-info-background:#e7f4fc;--color-info-border:#b4dbf6;--surfaces-status-background-success:var(--color-success-background);--surfaces-status-background-error:var(--color-error-background);--surfaces-status-background-alert:var(--color-alert-background);--surfaces-status-background-info:var(--color-info-background);--borders-status-border-success:var(--color-success-border);--borders-status-border-error:var(--color-error-border);--borders-status-border-alert:var(--color-alert-border);--borders-status-border-info:var(--color-info-border);--fills-status-fill-success:var(--color-success-fill);--fills-status-fill-error:var(--color-error-fill);--fills-status-fill-alert:var(--color-alert-fill);--fills-status-fill-info:var(--color-info-fill);--font-family-sans:\"Geist\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Roboto\",\"Helvetica Neue\",Arial,sans-serif;--font-family-mono:\"Geist Mono\",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--heading-xxl-size:44px;--heading-xxl-line:48px;--heading-xxl-weight:600;--heading-xl-size:32px;--heading-xl-line:36px;--heading-xl-weight:700;--heading-h1-size:24px;--heading-h1-line:28px;--heading-h1-weight:600;--heading-h2-size:20px;--heading-h2-line:24px;--heading-h2-weight:600;--heading-h3-size:17px;--heading-h3-line:20px;--heading-h3-weight:600;--heading-h4-size:15px;--heading-h4-line:18px;--heading-h4-weight:600;--heading-h5-size:13px;--heading-h5-line:16px;--heading-h5-weight:500;--heading-h6-size:11px;--heading-h6-line:14px;--heading-h6-weight:500;--heading-xxl-mobile-size:32px;--heading-xxl-mobile-line:36px;--heading-xxl-mobile-weight:600;--heading-xl-mobile-size:26px;--heading-xl-mobile-line:30px;--heading-xl-mobile-weight:700;--heading-h1-mobile-size:20px;--heading-h1-mobile-line:23px;--heading-h1-mobile-weight:600;--heading-h2-mobile-size:18px;--heading-h2-mobile-line:22px;--heading-h2-mobile-weight:600;--heading-h3-mobile-size:16px;--heading-h3-mobile-line:18px;--heading-h3-mobile-weight:600;--heading-h4-mobile-size:14px;--heading-h4-mobile-line:16px;--heading-h4-mobile-weight:600;--heading-h5-mobile-size:13px;--heading-h5-mobile-line:16px;--heading-h5-mobile-weight:500;--heading-h6-mobile-size:11px;--heading-h6-mobile-line:14px;--heading-h6-mobile-weight:500;--text-xl-size:20px;--text-xl-line:26px;--text-xl-weight:400;--text-large-size:18px;--text-large-line:24px;--text-large-weight:400;--text-regular-size:15px;--text-regular-line:20px;--text-regular-weight:400;--text-small-size:13px;--text-small-line:16px;--text-small-weight:400;--text-small-emphasis-weight:500;--text-small-bold-weight:600;--text-xs-size:10px;--text-xs-line:13px;--text-xs-weight:500;--text-xs-bold-weight:600}.waiver-template-form-section{gap:var(--padding-reg,16px)}.waiver-template-form-group,.waiver-template-form-section{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column}.waiver-template-form-group{gap:var(--padding-lg,24px)}.wysiwyg-editor{align-items:stretch;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-reg);width:100%}.wysiwyg-editor__label{color:var(--label-primary);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:15px;font-style:normal;font-weight:600;line-height:20px;margin:0}.wysiwyg-editor__required{color:var(--label-status-error,#ef4444)}.wysiwyg-editor__wrapper{background-color:var(--surface-secondary,#f8f8fa);border:2px solid var(--border-primary,#e8e9ef);border-radius:var(--radius-md,4px);display:flex;flex-direction:column;overflow:hidden;transition:border-color .2s ease}.wysiwyg-editor__wrapper:focus-within{border-color:var(--border-selected,#6200ee)}.wysiwyg-editor__wrapper--error{border-color:var(--borders-status-border-error,#ef4444)}.wysiwyg-editor__toolbar{align-items:center;align-self:stretch;background:var(--surface-tertiary);border-bottom:2px solid var(--border-primary);border-radius:2px 2px 0 0;display:flex;flex-wrap:wrap;gap:0;padding:0 4px}.wysiwyg-editor__toolbar-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--label-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.wysiwyg-editor__toolbar-btn svg{flex-shrink:0;height:24px;width:24px}.wysiwyg-editor__toolbar-btn[title=\"Heading 1\"] svg,.wysiwyg-editor__toolbar-btn[title=\"Heading 2\"] svg{transform:scale(.8)}.wysiwyg-editor__toolbar-btn:hover{background-color:var(--surface-secondary);color:var(--label-primary)}.wysiwyg-editor__toolbar-btn--active{background-color:var(--surface-action-soft,#efeffe);color:var(--label-action,#5d5bf4)}.wysiwyg-editor__toolbar-divider{background-color:var(--border-primary,#e8e9ef);display:block;height:18px;margin:0 8px;width:1px}.wysiwyg-editor__content{background-color:var(--surface-secondary,#f8f8fa);color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);min-height:200px;outline:none;overflow-y:auto;padding:12px;text-align:left}@media (max-width:768px){.wysiwyg-editor__content{font-size:16px}}.wysiwyg-editor__content--disabled{background-color:var(--surface-status-disabled,#f8f8fa);cursor:not-allowed;opacity:.6}.wysiwyg-editor__content:empty:before{color:var(--label-secondary,#626a90);content:attr(data-placeholder);pointer-events:none}.wysiwyg-editor__content blockquote,.wysiwyg-editor__content h1,.wysiwyg-editor__content h2,.wysiwyg-editor__content hr,.wysiwyg-editor__content ol,.wysiwyg-editor__content p,.wysiwyg-editor__content ul{color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);overflow-y:auto;text-align:left}@media (max-width:768px){.wysiwyg-editor__content blockquote,.wysiwyg-editor__content h1,.wysiwyg-editor__content h2,.wysiwyg-editor__content hr,.wysiwyg-editor__content ol,.wysiwyg-editor__content p,.wysiwyg-editor__content ul{font-size:16px}}.wysiwyg-editor__content blockquote:first-child,.wysiwyg-editor__content h1:first-child,.wysiwyg-editor__content h2:first-child,.wysiwyg-editor__content hr:first-child,.wysiwyg-editor__content ol:first-child,.wysiwyg-editor__content p:first-child,.wysiwyg-editor__content ul:first-child{margin-top:0}.wysiwyg-editor__content h1{font-size:22px}.wysiwyg-editor__content h2{font-size:20px}.wysiwyg-editor__content h3{font-size:18px}.wysiwyg-editor__content h4{font-size:16px}.wysiwyg-editor__content h5{font-size:14px}.wysiwyg-editor__content h6{font-size:13px}.wysiwyg-editor__content p{color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);margin:8px 0}.wysiwyg-editor__content p:first-child{margin-top:0}.wysiwyg-editor__content p:last-child{margin-bottom:0}.wysiwyg-editor__content ol,.wysiwyg-editor__content ul{color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);margin:8px 0;padding-left:24px}.wysiwyg-editor__content ol:first-child,.wysiwyg-editor__content ul:first-child{margin-top:0}.wysiwyg-editor__content ol:last-child,.wysiwyg-editor__content ul:last-child{margin-bottom:0}.wysiwyg-editor__content li{color:var(--label-primary,#121e52);margin:4px 0}.wysiwyg-editor__content blockquote,.wysiwyg-editor__content li{font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px)}.wysiwyg-editor__content blockquote{background-color:var(--surface-tertiary,#efefef);border-left:4px solid var(--border-selected,#121e52);color:var(--label-secondary,#626a90);font-style:italic;margin:12px 0;padding:8px 16px}.wysiwyg-editor__content blockquote:first-child{margin-top:0}.wysiwyg-editor__content blockquote:last-child{margin-bottom:0}.wysiwyg-editor__content hr{border:none;border-top:2px solid var(--border-primary,#e8e9ef);box-sizing:initial;display:block;height:0;margin:16px 0;opacity:1;visibility:visible}.wysiwyg-editor__content hr:first-child{margin-top:0}.wysiwyg-editor__content hr:last-child{margin-bottom:0}.wysiwyg-editor__content b,.wysiwyg-editor__content strong{color:var(--label-primary,#121e52);font-weight:600}.wysiwyg-editor__content em,.wysiwyg-editor__content i{font-style:italic}.wysiwyg-editor__content u{text-decoration:underline}.wysiwyg-editor__content s,.wysiwyg-editor__content strike{text-decoration:line-through}.wysiwyg-editor__content code{background-color:var(--surface-tertiary,#efefef);border-radius:3px;color:var(--label-primary,#121e52);font-family:Monaco,Courier New,monospace;font-size:12px;padding:2px 4px}.wysiwyg-editor__content pre{background-color:var(--surface-tertiary,#efefef);border-radius:var(--radius-sm,4px);margin:12px 0;overflow-x:auto;padding:12px}.wysiwyg-editor__content pre code{background-color:initial;padding:0}.wysiwyg-editor__content a{color:var(--label-action,#5d5bf4);cursor:pointer;text-decoration:underline}.wysiwyg-editor__content a:hover{color:var(--label-action-hover,#4a48d1)}.wysiwyg-editor__placeholder{color:var(--label-secondary,#626a90)}.wysiwyg-editor__help-text{color:var(--label-secondary);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);font-style:normal;font-weight:400;line-height:var(--text-regular-line,20px);margin-top:-5px}.wysiwyg-editor__error-text{color:var(--label-status-error,#ef4444);font-size:var(--text-xs-size,11px);margin-top:2px}";
3
+ var css_248z = ":root{--blue-50:#e7f4fc;--blue-100:#b4dbf6;--blue-200:#90caf2;--blue-300:#5eb2ec;--blue-400:#3ea3e8;--blue-500:#0e8ce2;--blue-600:#0d7fce;--blue-700:#0a63a0;--blue-800:#084d7c;--blue-900:#063b5f;--cyan-50:#eafbff;--cyan-75:#bdf3ff;--cyan-100:#aff1ff;--cyan-200:#9deeff;--cyan-300:#71e6ff;--cyan-400:#55e1ff;--cyan-500:#2bd9ff;--cyan-600:#27c5e8;--cyan-700:#1f9ab5;--cyan-800:#18778c;--cyan-900:#125b6b;--indigo-50:#efeffe;--indigo-100:#cdccfc;--indigo-200:#b4b4fa;--indigo-300:#9291f8;--indigo-400:#7c74ff;--indigo-500:#5d5bf4;--indigo-600:#5553de;--indigo-700:#4241ad;--indigo-800:#333286;--indigo-900:#272666;--green-50:#eef9ea;--green-100:#c9ecbd;--green-200:#afe39d;--green-300:#8bd671;--green-400:#75ce55;--green-500:#52c22b;--green-600:#4bb127;--green-700:#3a8a1f;--green-800:#2d6b18;--green-900:#225112;--red-50:#fceceb;--red-100:#f5c4c2;--red-200:#f1a8a4;--red-300:#ea807b;--red-400:#e66861;--red-500:#e0423a;--red-600:#cc3c35;--red-700:#9f2f29;--red-800:#7b2420;--red-900:#5e1c18;--purple-50:#efe6fd;--purple-100:#ceb0fa;--purple-200:#b78af7;--purple-300:#965ff4;--purple-400:#8133f1;--purple-500:#6200ee;--purple-600:#5900d9;--purple-700:#4600a9;--purple-800:#360083;--purple-900:#290064;--orange-50:#fff2e8;--orange-100:#fed7b6;--orange-200:#fec493;--orange-300:#fea962;--orange-400:#fd9843;--orange-500:#fd7e14;--orange-600:#e67312;--orange-700:#b4590e;--orange-800:#8b450b;--orange-900:#6a3508;--yellow-50:#fcf6e7;--yellow-100:#f6e3b4;--yellow-200:#f2d68f;--yellow-300:#ecc35c;--yellow-400:#fcc741;--yellow-500:#fbb912;--yellow-600:#e4a810;--yellow-700:#a07509;--yellow-800:#7c5b07;--yellow-900:#5f4505;--pink-50:#fdecf4;--pink-100:#f8c3db;--pink-200:#f4a6ca;--pink-300:#f07eb2;--pink-400:#ed65a3;--pink-500:#e83e8c;--pink-600:#d33874;--pink-700:#a52c63;--pink-800:#80224d;--pink-900:#611a3b;--teal-50:#e9faf7;--teal-100:#baf0e7;--teal-200:#99e8db;--teal-300:#6bdecb;--teal-400:#4ed8c1;--teal-500:#22ceb1;--teal-600:#1fbba1;--teal-700:#18927e;--teal-800:#137161;--teal-900:#0e574a;--neutral-white:#fff;--neutral-25:#f8f8fa;--neutral-50:#e8e9ef;--neutral-75:#d2d5e3;--neutral-100:#b6bacc;--neutral-200:#9399b3;--neutral-300:#626a90;--neutral-400:#433d7b;--neutral-500:#14215a;--neutral-600:#121e52;--neutral-700:#0e1740;--neutral-800:#0b1232;--neutral-900:#080e26;--neutral-black:#000;--purple-lightest:var(--purple-50);--purple-lighter:var(--purple-100);--purple-light:var(--purple-300);--purple-regular:var(--purple-500);--purple-dark:var(--purple-600);--purple-darker:var(--purple-800);--purple-darkest:var(--purple-900);--blue-lightest:var(--blue-50);--blue-lighter:var(--blue-100);--blue-light:var(--blue-300);--blue-regular:var(--blue-500);--blue-dark:var(--blue-600);--blue-darker:var(--blue-800);--blue-darkest:var(--blue-900);--indigo-lightest:var(--indigo-50);--indigo-lighter:var(--indigo-100);--indigo-light:var(--indigo-300);--indigo-regular:var(--indigo-500);--indigo-dark:var(--indigo-600);--indigo-darker:var(--indigo-800);--indigo-darkest:var(--indigo-900);--cyan-lightest:var(--cyan-50);--cyan-lighter:var(--cyan-100);--cyan-light:var(--cyan-300);--cyan-regular:var(--cyan-500);--cyan-dark:var(--cyan-700);--cyan-darker:var(--cyan-800);--cyan-darkest:var(--cyan-900);--red-lightest:var(--red-50);--red-lighter:var(--red-100);--red-light:var(--red-400);--red-regular:var(--red-500);--red-dark:var(--red-600);--red-darker:var(--red-800);--red-darkest:var(--red-900);--orange-lightest:var(--orange-50);--orange-lighter:var(--orange-100);--orange-light:var(--orange-300);--orange-regular:var(--orange-500);--orange-dark:var(--orange-600);--orange-darker:var(--orange-700);--orange-darkest:var(--orange-800);--yellow-lightest:var(--yellow-50);--yellow-lighter:var(--yellow-100);--yellow-light:var(--yellow-300);--yellow-regular:var(--yellow-500);--yellow-dark:var(--yellow-600);--yellow-darker:var(--yellow-800);--yellow-darkest:var(--yellow-900);--pink-lightest:var(--pink-50);--pink-lighter:var(--pink-100);--pink-light:var(--pink-300);--pink-regular:var(--pink-500);--pink-dark:var(--pink-600);--pink-darker:var(--pink-700);--pink-darkest:var(--pink-800);--green-lightest:var(--green-50);--green-lighter:var(--green-100);--green-light:var(--green-300);--green-regular:var(--green-500);--green-dark:var(--green-600);--green-darker:var(--green-800);--green-darkest:var(--green-900);--teal-lightest:var(--teal-50);--teal-lighter:var(--teal-100);--teal-light:var(--teal-300);--teal-regular:var(--teal-500);--teal-dark:var(--teal-600);--teal-darker:var(--teal-700);--teal-darkest:var(--teal-800);--tone-lightest:var(--neutral-white);--tone-lighter:var(--neutral-25);--tone-light:var(--neutral-50);--tone-regular:var(--neutral-75);--tone-dark:var(--neutral-100);--tone-darker:var(--neutral-200);--tone-darkest:var(--neutral-300);--shade-lightest:var(--neutral-400);--shade-lighter:var(--neutral-500);--shade-light:var(--neutral-600);--shade-regular:var(--neutral-700);--shade-dark:var(--neutral-800);--shade-darker:var(--neutral-900);--shade-darkest:var(--neutral-black);--highlight-lightest:var(--cyan-lightest);--highlight-lighter:var(--cyan-lighter);--highlight-light:var(--cyan-light);--highlight-regular:var(--blue-regular);--highlight-dark:var(--blue-dark);--highlight-darker:var(--blue-darker);--highlight-darkest:var(--blue-darkest);--success-lightest:var(--green-lightest);--success-lighter:var(--green-lighter);--success-light:var(--green-light);--success-regular:var(--green-regular);--success-dark:var(--green-dark);--success-darker:var(--green-darker);--success-darkest:var(--green-darkest);--errors-lightest:var(--red-lightest);--errors-lighter:var(--red-lighter);--errors-light:var(--red-light);--errors-regular:var(--red-regular);--errors-dark:var(--red-dark);--errors-darker:var(--red-darker);--errors-darkest:var(--red-darkest);--actions-lightest:var(--purple-50);--actions-lighter:var(--purple-lighter);--actions-light:var(--purple-light);--actions-regular:var(--purple-regular);--actions-dark:var(--purple-dark);--actions-darker:var(--purple-darker);--actions-darkest:var(--purple-darkest);--information-lightest:var(--blue-lightest);--information-lighter:var(--blue-lighter);--information-light:var(--blue-light);--information-regular:var(--blue-regular);--information-dark:var(--blue-dark);--information-darker:var(--blue-darker);--information-darkest:var(--blue-darkest);--alert-lightest:var(--yellow-lightest);--alert-lighter:var(--yellow-lighter);--alert-light:var(--orange-light);--alert-regular:var(--orange-regular);--alert-darker:var(--yellow-darker);--alert-darkest:var(--yellow-darkest);--danger-lightest:var(--red-lightest);--danger-lighter:var(--red-lighter);--danger-light:var(--red-light);--danger-regular:var(--red-regular);--danger-dark:var(--red-dark);--danger-darker:var(--red-darker);--danger-darkest:var(--red-darkest);--disabled-lightest:var(--tone-light);--disabled-lighter:var(--tone-regular);--disabled-light:var(--tone-dark);--disabled-regular:var(--tone-darker);--disabled-dark:var(--shade-lighter);--disabled-darker:var(--shade-light);--disabled-darkest:var(--shade-regular);--label-primary:var(--shade-light);--label-secondary:var(--tone-darkest);--label-secondary-hover:var(--shade-lighter);--label-white:var(--tone-lightest);--label-highlight:var(--highlight-dark);--label-action:var(--actions-regular);--label-danger:var(--danger-dark);--label-status-error:var(--errors-dark);--label-status-success:var(--success-darker);--label-status-info:var(--information-dark);--label-status-alert:var(--alert-regular);--label-status-disabled:var(--disabled-regular);--surface-primary:var(--tone-lightest);--surface-primary-hover:var(--tone-lighter);--surface-primary-pressed:var(--tone-light);--surface-secondary:var(--neutral-25);--surface-secondary-hover:var(--tone-light);--surface-secondary-pressed:var(--tone-regular);--surface-tertiary:var(--tone-light);--surface-tertiary-hover:var(--tone-lighter);--surface-tertiary-pressed:var(--tone-lightest);--surface-status-success:var(--success-lightest);--surface-status-error:var(--errors-lightest);--surface-status-alert:var(--alert-lightest);--surface-status-info:var(--information-lightest);--surface-status-disabled:var(--disabled-lighter);--surface-action-soft:var(--actions-lightest);--surface-action-soft-hover:var(--actions-lighter);--surface-action-soft-pressed:var(--actions-light);--surface-danger-soft:var(--danger-lightest);--surface-danger-soft-hover:var(--danger-lighter);--surface-danger-soft-pressed:var(--danger-light);--surface-highlight-soft:var(--highlight-lightest);--surface-colour-red-soft:var(--red-lightest);--surface-colour-green-soft:var(--green-lightest);--surface-colour-blue-soft:var(--blue-lightest);--surface-colour-orange-soft:var(--orange-lightest);--surface-colour-yellow-soft:var(--yellow-lightest);--surface-colour-purple-soft:var(--purple-lightest);--surface-colour-indigo-soft:var(--indigo-lightest);--surface-colour-cyan-soft:var(--cyan-lightest);--surface-colour-pink-soft:var(--pink-lightest);--surface-colour-teal-soft:var(--teal-lightest);--border-primary:var(--tone-light);--border-secondary:var(--tone-regular);--border-selected:var(--neutral-600);--border-action:var(--actions-regular);--border-status-error:var(--errors-lighter);--border-status-success:var(--success-lighter);--border-status-alert:var(--alert-lighter);--border-status-info:var(--information-lighter);--border-status-disabled:var(--disabled-lightest);--border-colour-overlay:#121e521a;--fill-primary:var(--shade-lighter);--fill-secondary:var(--tone-darkest);--fill-white:var(--tone-lightest);--fill-action:var(--actions-regular);--fill-highlight:var(--highlight-dark);--fill-danger:var(--danger-dark);--fill-status-success:var(--success-darker);--fill-status-error:var(--errors-dark);--fill-status-alert:var(--alert-regular);--fill-status-info:var(--information-regular);--fill-status-disabled:var(--disabled-light);--gradient-stop1:var(--purple-500);--gradient-stop2:var(--indigo-500);--gradient-stop3:var(--blue-500)}[data-theme=dark]{--label-primary:var(--tone-lighter);--label-secondary:var(--tone-darker);--label-secondary-hover:var(--tone-lighter);--label-white:var(--tone-lightest);--label-highlight:var(--highlight-light);--label-action:var(--actions-lighter);--label-danger:var(--danger-light);--label-status-error:var(--errors-light);--label-status-success:var(--success-light);--label-status-info:var(--information-light);--label-status-alert:var(--alert-light);--label-status-disabled:var(--disabled-regular);--surface-primary:var(--shade-darker);--surface-primary-hover:var(--shade-dark);--surface-primary-pressed:var(--shade-regular);--surface-secondary:var(--shade-dark);--surface-secondary-hover:var(--shade-darker);--surface-secondary-pressed:var(--shade-darkest);--surface-tertiary:var(--shade-regular);--surface-tertiary-hover:var(--shade-dark);--surface-tertiary-pressed:var(--shade-darker);--surface-status-success:var(--success-darkest);--surface-status-error:var(--errors-darkest);--surface-status-alert:var(--alert-darkest);--surface-status-info:var(--information-darkest);--surface-status-disabled:var(--disabled-darkest);--surface-action-soft:var(--actions-darkest);--surface-action-soft-hover:var(--actions-darker);--surface-action-soft-pressed:var(--actions-dark);--surface-danger-soft:var(--danger-darkest);--surface-danger-soft-hover:var(--danger-darker);--surface-danger-soft-pressed:var(--danger-dark);--surface-highlight-soft:var(--highlight-darkest);--surface-colour-red-soft:var(--red-darkest);--surface-colour-green-soft:var(--green-darkest);--surface-colour-blue-soft:var(--blue-darkest);--surface-colour-orange-soft:var(--orange-darkest);--surface-colour-yellow-soft:var(--yellow-darkest);--surface-colour-purple-soft:var(--purple-darkest);--surface-colour-indigo-soft:var(--indigo-darkest);--surface-colour-cyan-soft:var(--cyan-darkest);--surface-colour-pink-soft:var(--pink-darkest);--surface-colour-teal-soft:var(--teal-darkest);--border-primary:var(--shade-light);--border-secondary:var(--shade-dark);--border-selected:var(--tone-light);--border-action:var(--actions-light);--border-status-error:var(--errors-darker);--border-status-success:var(--success-darker);--border-status-alert:var(--alert-darker);--border-status-info:var(--information-darker);--border-status-disabled:var(--disabled-dark);--border-colour-overlay:#ffffff1a;--fill-primary:var(--tone-lighter);--fill-secondary:var(--tone-darker);--fill-white:var(--tone-lightest);--fill-action:var(--actions-lighter);--fill-highlight:var(--highlight-light);--fill-danger:var(--danger-light);--fill-status-success:var(--success-light);--fill-status-error:var(--errors-light);--fill-status-alert:var(--alert-light);--fill-status-info:var(--information-light);--fill-status-disabled:var(--disabled-dark);--gradient-stop1:var(--indigo-400);--gradient-stop2:var(--cyan-500);--gradient-stop3:var(--cyan-100)}.text-primary{color:var(--label-primary)}.text-secondary{color:var(--label-secondary)}.text-white{color:var(--label-white)}.text-action{color:var(--label-action)}.text-danger{color:var(--label-danger)}.text-success{color:var(--label-status-success)}.text-error{color:var(--label-status-error)}.text-info{color:var(--label-status-info)}.text-warning{color:var(--label-status-alert)}.text-disabled{color:var(--label-status-disabled)}.bg-primary{background-color:var(--surface-primary)}.bg-secondary{background-color:var(--surface-secondary)}.bg-tertiary{background-color:var(--surface-tertiary)}.bg-success{background-color:var(--surface-status-success)}.bg-error{background-color:var(--surface-status-error)}.bg-warning{background-color:var(--surface-status-alert)}.bg-info{background-color:var(--surface-status-info)}.bg-action-soft{background-color:var(--surface-action-soft)}.bg-danger-soft{background-color:var(--surface-danger-soft)}.border-primary{border-color:var(--border-primary)}.border-secondary{border-color:var(--border-secondary)}.border-selected{border-color:var(--border-selected)}.border-action{border-color:var(--border-action)}.border-success{border-color:var(--border-status-success)}.border-error{border-color:var(--border-status-error)}.border-warning{border-color:var(--border-status-alert)}.border-info{border-color:var(--border-status-info)}:root{--radius-zero:0px;--radius-xs:1px;--radius-sm:2px;--radius-md:4px;--radius-reg:8px;--radius-lg:16px;--radius-xl:24px;--spacing-zero:0px;--spacing-xxs:1px;--spacing-xs:2px;--spacing-sm:4px;--spacing-md:8px;--spacing-reg:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:64px;--spacing-super:128px;--opacity-0:0;--opacity-10:0.1;--opacity-20:0.2;--opacity-30:0.3;--opacity-40:0.4;--opacity-50:0.5;--opacity-60:0.6;--opacity-70:0.7;--opacity-80:0.8;--opacity-90:0.9;--opacity-100:1;--color-success-fill:#2d6b18;--color-success-background:#eef9ea;--color-success-border:#c9ecbd;--color-error-fill:#cc3c35;--color-error-background:#fceceb;--color-error-border:#f5c4c2;--color-alert-fill:#fd7e14;--color-alert-background:#fcf6e7;--color-alert-border:#f6e3b4;--color-info-fill:#0e8ce2;--color-info-background:#e7f4fc;--color-info-border:#b4dbf6;--surfaces-status-background-success:var(--color-success-background);--surfaces-status-background-error:var(--color-error-background);--surfaces-status-background-alert:var(--color-alert-background);--surfaces-status-background-info:var(--color-info-background);--borders-status-border-success:var(--color-success-border);--borders-status-border-error:var(--color-error-border);--borders-status-border-alert:var(--color-alert-border);--borders-status-border-info:var(--color-info-border);--fills-status-fill-success:var(--color-success-fill);--fills-status-fill-error:var(--color-error-fill);--fills-status-fill-alert:var(--color-alert-fill);--fills-status-fill-info:var(--color-info-fill);--font-family-sans:\"Geist\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Roboto\",\"Helvetica Neue\",Arial,sans-serif;--font-family-mono:\"Geist Mono\",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--heading-xxl-size:44px;--heading-xxl-line:48px;--heading-xxl-weight:600;--heading-xl-size:32px;--heading-xl-line:36px;--heading-xl-weight:700;--heading-h1-size:24px;--heading-h1-line:28px;--heading-h1-weight:600;--heading-h2-size:20px;--heading-h2-line:24px;--heading-h2-weight:600;--heading-h3-size:17px;--heading-h3-line:20px;--heading-h3-weight:600;--heading-h4-size:15px;--heading-h4-line:18px;--heading-h4-weight:600;--heading-h5-size:13px;--heading-h5-line:16px;--heading-h5-weight:500;--heading-h6-size:11px;--heading-h6-line:14px;--heading-h6-weight:500;--heading-xxl-mobile-size:32px;--heading-xxl-mobile-line:36px;--heading-xxl-mobile-weight:600;--heading-xl-mobile-size:26px;--heading-xl-mobile-line:30px;--heading-xl-mobile-weight:700;--heading-h1-mobile-size:20px;--heading-h1-mobile-line:23px;--heading-h1-mobile-weight:600;--heading-h2-mobile-size:18px;--heading-h2-mobile-line:22px;--heading-h2-mobile-weight:600;--heading-h3-mobile-size:16px;--heading-h3-mobile-line:18px;--heading-h3-mobile-weight:600;--heading-h4-mobile-size:14px;--heading-h4-mobile-line:16px;--heading-h4-mobile-weight:600;--heading-h5-mobile-size:13px;--heading-h5-mobile-line:16px;--heading-h5-mobile-weight:500;--heading-h6-mobile-size:11px;--heading-h6-mobile-line:14px;--heading-h6-mobile-weight:500;--text-xl-size:20px;--text-xl-line:26px;--text-xl-weight:400;--text-large-size:18px;--text-large-line:24px;--text-large-weight:400;--text-regular-size:15px;--text-regular-line:20px;--text-regular-weight:400;--text-small-size:13px;--text-small-line:16px;--text-small-weight:400;--text-small-emphasis-weight:500;--text-small-bold-weight:600;--text-xs-size:10px;--text-xs-line:13px;--text-xs-weight:500;--text-xs-bold-weight:600}.waiver-template-form-section{gap:var(--padding-reg,16px)}.waiver-template-form-group,.waiver-template-form-section{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column}.waiver-template-form-group{gap:var(--padding-lg,24px)}.wysiwyg-editor{align-items:stretch;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-reg);width:100%}.wysiwyg-editor__label{color:var(--labels-main-label-primary,#121e52);color:var(--label-primary);font-family:var(--font-family-sans);font-size:var(--text-small-size);font-weight:var(--text-small-bold-weight);line-height:var(--text-small-line);margin-bottom:var(--spacing-xs)}.wysiwyg-editor__required{color:var(--label-status-error,#ef4444)}.wysiwyg-editor__wrapper{background-color:var(--surface-secondary,#f8f8fa);border:2px solid var(--border-primary,#e8e9ef);border-radius:var(--radius-md,4px);display:flex;flex-direction:column;overflow:hidden;transition:border-color .2s ease}.wysiwyg-editor__wrapper:focus-within{border-color:var(--border-selected,#6200ee)}.wysiwyg-editor__wrapper--error{border-color:var(--borders-status-border-error,#ef4444)}.wysiwyg-editor__toolbar{align-items:center;align-self:stretch;background:var(--surface-tertiary);border-bottom:2px solid var(--border-primary);border-radius:2px 2px 0 0;display:flex;flex-wrap:wrap;gap:0;padding:0 4px}.wysiwyg-editor__toolbar-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--label-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.wysiwyg-editor__toolbar-btn svg{flex-shrink:0;height:24px;width:24px}.wysiwyg-editor__toolbar-btn[title=\"Heading 1\"] svg,.wysiwyg-editor__toolbar-btn[title=\"Heading 2\"] svg{transform:scale(.8)}.wysiwyg-editor__toolbar-btn:hover{background-color:var(--surface-secondary);color:var(--label-primary)}.wysiwyg-editor__toolbar-btn--active{background-color:var(--surface-action-soft,#efeffe);color:var(--label-action,#5d5bf4)}.wysiwyg-editor__toolbar-divider{background-color:var(--border-primary,#e8e9ef);display:block;height:18px;margin:0 8px;width:1px}.wysiwyg-editor__content{background-color:var(--surface-secondary,#f8f8fa);color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);min-height:200px;outline:none;overflow-wrap:break-word;overflow-y:auto;padding:12px;text-align:left;white-space:pre-wrap;word-break:break-word}.wysiwyg-editor__content--disabled{background-color:var(--surface-status-disabled,#f8f8fa);cursor:not-allowed;opacity:.6}.wysiwyg-editor__content:empty:before{color:var(--label-secondary,#626a90);content:attr(data-placeholder);pointer-events:none}.wysiwyg-editor__content .wysiwyg-editor__hard-break,.wysiwyg-editor__content blockquote,.wysiwyg-editor__content h1,.wysiwyg-editor__content h2,.wysiwyg-editor__content h3,.wysiwyg-editor__content h4,.wysiwyg-editor__content h5,.wysiwyg-editor__content h6,.wysiwyg-editor__content hr,.wysiwyg-editor__content ol,.wysiwyg-editor__content p,.wysiwyg-editor__content ul{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);overflow-wrap:break-word;text-align:left;word-break:break-word}.wysiwyg-editor__content .wysiwyg-editor__hard-break:first-child,.wysiwyg-editor__content blockquote:first-child,.wysiwyg-editor__content h1:first-child,.wysiwyg-editor__content h2:first-child,.wysiwyg-editor__content h3:first-child,.wysiwyg-editor__content h4:first-child,.wysiwyg-editor__content h5:first-child,.wysiwyg-editor__content h6:first-child,.wysiwyg-editor__content hr:first-child,.wysiwyg-editor__content ol:first-child,.wysiwyg-editor__content p:first-child,.wysiwyg-editor__content ul:first-child{margin-top:0}.wysiwyg-editor__content h1{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h1-size);font-weight:var(--heading-h1-weight);line-height:var(--heading-h1-line)}@media (max-width:767px){.wysiwyg-editor__content h1{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h1-mobile-size);font-weight:var(--heading-h1-mobile-weight);line-height:var(--heading-h1-mobile-line)}}.wysiwyg-editor__content h1{margin:16px 0 12px}.wysiwyg-editor__content h2{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h2-size);font-weight:var(--heading-h2-weight);line-height:var(--heading-h2-line)}@media (max-width:767px){.wysiwyg-editor__content h2{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h2-mobile-size);font-weight:var(--heading-h2-mobile-weight);line-height:var(--heading-h2-mobile-line)}}.wysiwyg-editor__content h2{margin:14px 0 10px}.wysiwyg-editor__content h3{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h3-size);font-weight:var(--heading-h3-weight);line-height:var(--heading-h3-line)}@media (max-width:767px){.wysiwyg-editor__content h3{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h3-mobile-size);font-weight:var(--heading-h3-mobile-weight);line-height:var(--heading-h3-mobile-line)}}.wysiwyg-editor__content h3{margin:12px 0 8px}.wysiwyg-editor__content h4{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h4-size);font-weight:var(--heading-h4-weight);line-height:var(--heading-h4-line)}@media (max-width:767px){.wysiwyg-editor__content h4{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h4-mobile-size);font-weight:var(--heading-h4-mobile-weight);line-height:var(--heading-h4-mobile-line)}}.wysiwyg-editor__content h4{margin:10px 0 6px}.wysiwyg-editor__content h5{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h5-size);font-weight:var(--heading-h5-weight);line-height:var(--heading-h5-line)}@media (max-width:767px){.wysiwyg-editor__content h5{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h5-mobile-size);font-weight:var(--heading-h5-mobile-weight);line-height:var(--heading-h5-mobile-line)}}.wysiwyg-editor__content h5{margin:8px 0 4px}.wysiwyg-editor__content h6{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h6-size);font-weight:var(--heading-h6-weight);line-height:var(--heading-h6-line)}@media (max-width:767px){.wysiwyg-editor__content h6{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--heading-h6-mobile-size);font-weight:var(--heading-h6-mobile-weight);line-height:var(--heading-h6-mobile-line)}}.wysiwyg-editor__content h6{margin:6px 0 2px}.wysiwyg-editor__content p{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);margin:8px 0}.wysiwyg-editor__content p:first-child{margin-top:0}.wysiwyg-editor__content p:last-child{margin-bottom:0}.wysiwyg-editor__content ol,.wysiwyg-editor__content ul{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);margin:8px 0;padding-left:24px}.wysiwyg-editor__content ol:first-child,.wysiwyg-editor__content ul:first-child{margin-top:0}.wysiwyg-editor__content ol:last-child,.wysiwyg-editor__content ul:last-child{margin-bottom:0}.wysiwyg-editor__content li{margin:4px 0}.wysiwyg-editor__content blockquote,.wysiwyg-editor__content li{color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line)}.wysiwyg-editor__content blockquote{background-color:var(--surface-tertiary,#efefef);border-left:4px solid var(--border-selected,#121e52);color:var(--label-secondary,#626a90);font-style:italic;margin:12px 0;padding:8px 16px}.wysiwyg-editor__content blockquote:first-child{margin-top:0}.wysiwyg-editor__content blockquote:last-child{margin-bottom:0}.wysiwyg-editor__content hr{border:none;border-top:2px solid var(--border-primary,#e8e9ef);box-sizing:initial;display:block;height:0;margin:20px 0;opacity:1;visibility:visible}.wysiwyg-editor__content hr:first-of-type{margin-top:20px}.wysiwyg-editor__content b,.wysiwyg-editor__content strong{color:var(--label-primary,#121e52);font-weight:600}.wysiwyg-editor__content em,.wysiwyg-editor__content i{font-style:italic}.wysiwyg-editor__content u{text-decoration:underline}.wysiwyg-editor__content s,.wysiwyg-editor__content strike{text-decoration:line-through}.wysiwyg-editor__content code{background-color:var(--surface-tertiary,#efefef);border-radius:3px;color:var(--label-primary,#121e52);font-family:Monaco,Courier New,monospace;font-size:12px;padding:2px 4px}.wysiwyg-editor__content pre{background-color:var(--surface-tertiary,#efefef);border-radius:var(--radius-sm,4px);margin:12px 0;overflow-x:auto;padding:12px}.wysiwyg-editor__content pre code{background-color:initial;padding:0}.wysiwyg-editor__content a{color:var(--label-action,#5d5bf4);cursor:pointer;text-decoration:underline}.wysiwyg-editor__content a:hover{color:var(--label-action-hover,#4a48d1)}.wysiwyg-editor__placeholder{color:var(--label-secondary,#626a90)}.wysiwyg-editor__help-text{color:var(--labels-main-label-primary,#121e52);color:var(--label-secondary);font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);margin-top:-5px}.wysiwyg-editor__error-text{color:var(--label-status-error,#ef4444);font-size:var(--text-xs-size,11px);margin-top:2px}.wysiwyg-editor__hard-break{display:block;height:16px;margin:0;padding:0;pointer-events:none;width:100%}";
4
4
  styleInject(css_248z);
5
5
 
6
6
  export { css_248z as default };
@@ -1,4 +1,5 @@
1
1
  /* New Form Input Styles based on Figma design tokens */
2
+ @import '../../styles/tokens/typography';
2
3
 
3
4
  .new-form-input {
4
5
  display: flex;
@@ -36,9 +37,7 @@
36
37
  }
37
38
 
38
39
  &__input {
39
- font-family: var(--font-family-sans, 'Geist', sans-serif);
40
- font-size: var(--text-regular-size, 15px);
41
- line-height: var(--text-regular-line, 20px);
40
+ @include typography('text.regular');
42
41
  flex: 1 0 0;
43
42
  background-color: var(--surfaces-main-background-secondary);
44
43
  border: 2px solid var(--border-primary);
@@ -1,6 +1,6 @@
1
1
  import styleInject from '/opt/atlassian/pipelines/agent/build/node_modules/style-inject/dist/style-inject.es.js';
2
2
 
3
- var css_248z = ".new-form-input{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.new-form-input__label{color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:15px;font-style:normal;font-weight:600;line-height:20px}.new-form-input__label-optional{color:var(--labels-main-label-secondary,#626a90);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-xs-size,11px);font-weight:400;line-height:var(--text-xs-line,14px);text-align:right}.new-form-input__label-row{align-items:center;display:flex;gap:var(--spacing-reg,16px);justify-content:space-between;width:100%}.new-form-input__input{background-color:var(--surfaces-main-background-secondary);background:var(--surface-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);flex:1 0 0;font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);min-height:40px;padding:8px 10px;transition:all .2s ease;width:100%}@media (max-width:768px){.new-form-input__input{font-size:16px}}.new-form-input__input:focus{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__input::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__textarea{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:1px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);min-height:120px;padding:8px 10px;resize:vertical;transition:all .2s ease;width:100%}@media (max-width:768px){.new-form-input__textarea{font-size:16px}}.new-form-input__textarea:focus{border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__textarea::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__input-with-icon{align-items:center;background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:2px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);display:flex;gap:var(--spacing-sm,8px);min-height:40px;padding:5px}.new-form-input__input-with-icon input{background:#0000;border:none;color:var(--label-primary);flex:1;font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px)}@media (max-width:768px){.new-form-input__input-with-icon input{font-size:16px}}.new-form-input__input-with-icon input:focus{outline:none}.new-form-input__input-with-icon input::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__input-with-icon .icon{flex-shrink:0;height:22px;width:22px}.new-form-input__verification-code{display:flex;gap:var(--spacing-sm,8px);height:62px}.new-form-input__verification-code .code-input{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:2px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);color:var(--labels-main-label-primary,#121e52);flex:1;font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-lg-size,18px);font-weight:var(--heading-h3-weight,600);text-align:center;transition:all .2s ease}.new-form-input__verification-code .code-input:focus{border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__helper-text{color:var(--label-secondary,#626a90);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px)}.new-form-input__error-text,.new-form-input__helper-text{font-family:var(--font-family-sans,\"Geist\",sans-serif);font-style:normal;font-weight:400;margin-top:2px}.new-form-input__error-text{color:var(--labels-status-label-error,#ef4444);font-size:11px;line-height:14px}.new-form-input--active .new-form-input__input{border-color:var(--border-selected,#6200ee)}.new-form-input--error .new-form-input__input{border-color:var(--borders-status-border-error,#ef4444)}.new-form-input--disabled{opacity:var(--opacity-50,.5);pointer-events:none}";
3
+ var css_248z = ":root{--font-family-sans:\"Geist\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Roboto\",\"Helvetica Neue\",Arial,sans-serif;--font-family-mono:\"Geist Mono\",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--heading-xxl-size:44px;--heading-xxl-line:48px;--heading-xxl-weight:600;--heading-xl-size:32px;--heading-xl-line:36px;--heading-xl-weight:700;--heading-h1-size:24px;--heading-h1-line:28px;--heading-h1-weight:600;--heading-h2-size:20px;--heading-h2-line:24px;--heading-h2-weight:600;--heading-h3-size:17px;--heading-h3-line:20px;--heading-h3-weight:600;--heading-h4-size:15px;--heading-h4-line:18px;--heading-h4-weight:600;--heading-h5-size:13px;--heading-h5-line:16px;--heading-h5-weight:500;--heading-h6-size:11px;--heading-h6-line:14px;--heading-h6-weight:500;--heading-xxl-mobile-size:32px;--heading-xxl-mobile-line:36px;--heading-xxl-mobile-weight:600;--heading-xl-mobile-size:26px;--heading-xl-mobile-line:30px;--heading-xl-mobile-weight:700;--heading-h1-mobile-size:20px;--heading-h1-mobile-line:23px;--heading-h1-mobile-weight:600;--heading-h2-mobile-size:18px;--heading-h2-mobile-line:22px;--heading-h2-mobile-weight:600;--heading-h3-mobile-size:16px;--heading-h3-mobile-line:18px;--heading-h3-mobile-weight:600;--heading-h4-mobile-size:14px;--heading-h4-mobile-line:16px;--heading-h4-mobile-weight:600;--heading-h5-mobile-size:13px;--heading-h5-mobile-line:16px;--heading-h5-mobile-weight:500;--heading-h6-mobile-size:11px;--heading-h6-mobile-line:14px;--heading-h6-mobile-weight:500;--text-xl-size:20px;--text-xl-line:26px;--text-xl-weight:400;--text-large-size:18px;--text-large-line:24px;--text-large-weight:400;--text-regular-size:15px;--text-regular-line:20px;--text-regular-weight:400;--text-small-size:13px;--text-small-line:16px;--text-small-weight:400;--text-small-emphasis-weight:500;--text-small-bold-weight:600;--text-xs-size:10px;--text-xs-line:13px;--text-xs-weight:500;--text-xs-bold-weight:600}.new-form-input{align-items:flex-start;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.new-form-input__label{color:var(--label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:15px;font-style:normal;font-weight:600;line-height:20px}.new-form-input__label-optional{color:var(--labels-main-label-secondary,#626a90);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-xs-size,11px);font-weight:400;line-height:var(--text-xs-line,14px);text-align:right}.new-form-input__label-row{align-items:center;display:flex;gap:var(--spacing-reg,16px);justify-content:space-between;width:100%}.new-form-input__input{background-color:var(--surfaces-main-background-secondary);background:var(--surface-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--labels-main-label-primary,#121e52);flex:1 0 0;font-family:var(--font-family-sans);font-size:var(--text-regular-size);font-weight:var(--text-regular-weight);line-height:var(--text-regular-line);min-height:40px;padding:8px 10px;transition:all .2s ease;width:100%}@media (max-width:768px){.new-form-input__input{font-size:16px}}.new-form-input__input:focus{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__input::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__textarea{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:1px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);color:var(--labels-main-label-primary,#121e52);font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px);min-height:120px;padding:8px 10px;resize:vertical;transition:all .2s ease;width:100%}@media (max-width:768px){.new-form-input__textarea{font-size:16px}}.new-form-input__textarea:focus{border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__textarea::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__input-with-icon{align-items:center;background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:2px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);display:flex;gap:var(--spacing-sm,8px);min-height:40px;padding:5px}.new-form-input__input-with-icon input{background:#0000;border:none;color:var(--label-primary);flex:1;font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px)}@media (max-width:768px){.new-form-input__input-with-icon input{font-size:16px}}.new-form-input__input-with-icon input:focus{outline:none}.new-form-input__input-with-icon input::placeholder{color:var(--labels-main-label-secondary,#626a90)}.new-form-input__input-with-icon .icon{flex-shrink:0;height:22px;width:22px}.new-form-input__verification-code{display:flex;gap:var(--spacing-sm,8px);height:62px}.new-form-input__verification-code .code-input{background-color:var(--surfaces-main-background-secondary,#f8f8fa);border:2px solid var(--borders-main-border-primary,#e8e9ef);border-radius:var(--radius-md,4px);color:var(--labels-main-label-primary,#121e52);flex:1;font-family:var(--font-family-sans,\"Geist\",sans-serif);font-size:var(--text-lg-size,18px);font-weight:var(--heading-h3-weight,600);text-align:center;transition:all .2s ease}.new-form-input__verification-code .code-input:focus{border-color:var(--border-selected,#6200ee);outline:none}.new-form-input__helper-text{color:var(--label-secondary,#626a90);font-size:var(--text-regular-size,15px);line-height:var(--text-regular-line,20px)}.new-form-input__error-text,.new-form-input__helper-text{font-family:var(--font-family-sans,\"Geist\",sans-serif);font-style:normal;font-weight:400;margin-top:2px}.new-form-input__error-text{color:var(--labels-status-label-error,#ef4444);font-size:11px;line-height:14px}.new-form-input--active .new-form-input__input{border-color:var(--border-selected,#6200ee)}.new-form-input--error .new-form-input__input{border-color:var(--borders-status-border-error,#ef4444)}.new-form-input--disabled{opacity:var(--opacity-50,.5);pointer-events:none}";
4
4
  styleInject(css_248z);
5
5
 
6
6
  export { css_248z as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.78.5-dev.46",
3
+ "version": "0.78.5-dev.47",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/bookedit-licklist/licklist_design.git"
@@ -42,7 +42,7 @@
42
42
  ]
43
43
  },
44
44
  "peerDependencies": {
45
- "@licklist/core": "0.36.1-dev.12",
45
+ "@licklist/core": "0.36.1-dev.13",
46
46
  "@licklist/eslint-config": "0.5.6",
47
47
  "@licklist/plugins": "0.36.4-dev.13",
48
48
  "clsx": "2.1.1",
@@ -64,7 +64,7 @@
64
64
  "@dnd-kit/utilities": "2.0.0",
65
65
  "@fortawesome/fontawesome-svg-core": "1.2.34",
66
66
  "@fortawesome/free-solid-svg-icons": "5.15.2",
67
- "@licklist/core": "0.36.1-dev.12",
67
+ "@licklist/core": "0.36.1-dev.13",
68
68
  "@licklist/eslint-config": "0.5.6",
69
69
  "@licklist/plugins": "0.36.4-dev.13",
70
70
  "@mantine/core": "6.0.22",
@@ -67,10 +67,16 @@ export const DividerIcon = () => (
67
67
  </svg>
68
68
  );
69
69
 
70
- export const UndoIcon = () => (
70
+ export const HardBreakIcon = () => (
71
71
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
72
72
  <path d="M14.25 16.5H15.375C16.4105 16.5 17.25 15.6605 17.25 14.625C17.25 13.5895 16.4105 12.75 15.375 12.75H5.25V11.25H15.375C17.239 11.25 18.75 12.761 18.75 14.625C18.75 16.489 17.239 18 15.375 18H14.25V19.5L11.25 17.25L14.25 15V16.5ZM5.25 6H18.75V7.5H5.25V6ZM9.75 16.5V18H5.25V16.5H9.75Z" fill="#626A90"/>
73
73
  </svg>
74
+ )
75
+
76
+ export const UndoIcon = () => (
77
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
78
+ <path d="M6.06131 6.69136C5.88684 6.85818 5.71976 7.03357 5.56136 7.21755C5.32407 7.49319 5.10569 7.78768 4.90881 8.09936C4.77746 8.30727 4.65565 8.52287 4.54421 8.7457C4.48837 8.85736 4.43524 8.9709 4.38469 9.08613C4.2839 9.31587 4.19401 9.5527 4.11539 9.796C4.07598 9.91797 4.03914 10.0416 4.00559 10.1668C3.93079 10.446 3.87328 10.7259 3.83158 11.0051C3.82934 11.0201 3.82751 11.0351 3.82536 11.05C3.81494 11.1228 3.80597 11.1955 3.79774 11.2682C3.79428 11.2986 3.79116 11.329 3.78807 11.3594C3.78326 11.4071 3.77883 11.4547 3.77495 11.5023C3.75889 11.6978 3.75077 11.8926 3.75009 12.0865C3.75003 12.1086 3.74996 12.1307 3.75009 12.1528C3.75089 12.3012 3.75571 12.449 3.76528 12.5961C3.7665 12.6146 3.76808 12.633 3.76943 12.6514C3.82014 13.3498 3.96775 14.0309 4.20377 14.6767L7.62813 11.1377L5.45502 10.5556C5.48179 10.4557 5.51129 10.3567 5.54272 10.2594C5.66865 9.8695 5.83151 9.50078 6.02609 9.15588C6.07459 9.06992 6.12494 8.9854 6.17732 8.90245C6.91264 7.73794 8.02285 6.87449 9.29715 6.43448C9.38818 6.40305 9.48005 6.37386 9.57268 6.34679C10.1284 6.18439 10.7114 6.10131 11.3052 6.10717C11.4042 6.10814 11.5034 6.11157 11.6028 6.11753C12.0008 6.14137 12.4022 6.2058 12.8023 6.31295C13.2945 6.44483 13.7566 6.63317 14.182 6.8709C14.2125 6.88794 14.2416 6.90723 14.2718 6.92476C14.7547 7.20595 15.1899 7.54933 15.5686 7.94261C15.6449 8.02185 15.7186 8.10326 15.7902 8.18637C15.9047 8.31912 16.0139 8.45605 16.1162 8.59793C16.1915 8.70249 16.2625 8.80995 16.3309 8.91903C17.1864 10.2824 17.4949 11.9837 17.0456 13.6609C16.327 16.3424 13.9009 18.1093 11.2507 18.108V19.6078C14.5636 19.6095 17.5967 17.4016 18.4951 14.0497C19.0819 11.8595 18.6347 9.6365 17.4544 7.89634L17.4558 7.89496C17.4301 7.85706 17.4028 7.81984 17.3764 7.78241C17.3604 7.75975 17.3443 7.73721 17.3281 7.71473C17.2772 7.64435 17.2253 7.57483 17.172 7.50619C17.1543 7.48339 17.1368 7.46044 17.1188 7.43783C17.0658 7.37103 17.0112 7.30536 16.9559 7.24034C16.9336 7.21424 16.9115 7.18811 16.8889 7.16231C16.8382 7.10446 16.7867 7.04739 16.7342 6.99105C16.7045 6.95913 16.6747 6.92719 16.6444 6.89576C16.4036 6.64603 16.1448 6.41195 15.869 6.19625C15.8379 6.17193 15.8052 6.14967 15.7737 6.12582C15.715 6.08143 15.657 6.03598 15.5969 5.99323C15.5586 5.96599 15.5191 5.94038 15.4802 5.91382C15.4213 5.87363 15.3622 5.83365 15.302 5.79505C15.2644 5.7709 15.2263 5.74744 15.1881 5.72393C15.1285 5.6872 15.0687 5.65066 15.0079 5.61551C14.959 5.58729 14.9097 5.55983 14.8601 5.53265C14.8028 5.50128 14.745 5.47076 14.6868 5.44081C14.6463 5.41998 14.6055 5.39949 14.5645 5.37935C14.4883 5.3419 14.4111 5.30595 14.3332 5.27093C14.3021 5.25697 14.2713 5.24238 14.24 5.22881C14.1572 5.19297 14.0732 5.15965 13.9886 5.12661C13.953 5.11267 13.9176 5.09792 13.8816 5.08449C13.8148 5.05956 13.7471 5.03652 13.6793 5.01337C13.6344 4.99807 13.5899 4.98161 13.5446 4.9671C13.4284 4.92988 13.3102 4.89544 13.1911 4.86352C12.691 4.72957 12.1893 4.6496 11.6919 4.61976C11.4431 4.60484 11.1954 4.60237 10.9496 4.61217C10.8266 4.61706 10.7042 4.62473 10.5822 4.63564C10.3388 4.65745 10.0974 4.69064 9.85925 4.73577C8.42886 5.00676 7.10753 5.69099 6.06131 6.69136Z" fill="#626A90"/>
79
+ </svg>
74
80
  );
75
81
 
76
82
  export const RedoIcon = () => (
@@ -79,3 +85,9 @@ export const RedoIcon = () => (
79
85
  </svg>
80
86
  );
81
87
 
88
+ export const ClearIcon = () => (
89
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
90
+ <path d="M12.4884 13.549L11.7035 18H10.1804L11.1935 12.2542L5.63599 6.69664L6.69664 5.63599L18.3639 17.3033L17.3032 18.3639L12.4884 13.549ZM11.8295 8.64752L12.0319 7.49995H10.6819L9.18193 5.99995H17.9999V7.49995H13.555L13.1243 9.94234L11.8295 8.64752Z" fill="#626A90"/>
91
+ </svg>
92
+ );
93
+
@@ -9,13 +9,9 @@
9
9
  width: 100%;
10
10
 
11
11
  &__label {
12
- font-family: var(--font-family-sans, 'Geist', sans-serif);
12
+ @include typography('text.small.bold');
13
13
  color: var(--label-primary);
14
- font-size: 15px;
15
- font-style: normal;
16
- font-weight: 600;
17
- line-height: 20px;
18
- margin: 0;
14
+ margin-bottom: var(--spacing-xs);
19
15
  }
20
16
 
21
17
  &__required {
@@ -99,17 +95,13 @@
99
95
  min-height: 200px;
100
96
  padding: 12px;
101
97
  outline: none;
102
- font-family: var(--font-family-sans, 'Geist', sans-serif);
103
- font-size: var(--text-regular-size, 15px);
104
- line-height: var(--text-regular-line, 20px);
105
- color: var(--label-primary, #121e52);
98
+ @include typography('text.regular');
106
99
  background-color: var(--surface-secondary, #f8f8fa);
107
100
  overflow-y: auto;
108
101
  text-align: left;
109
-
110
- @media (max-width: 768px) {
111
- font-size: 16px;
112
- }
102
+ word-break: break-word;
103
+ overflow-wrap: break-word;
104
+ white-space: pre-wrap;
113
105
 
114
106
  &--disabled {
115
107
  background-color: var(--surface-status-disabled, #f8f8fa);
@@ -124,17 +116,11 @@
124
116
  }
125
117
 
126
118
  // Styles for content elements
127
- h1, h2, p, ul, ol, blockquote, hr {
128
- font-family: var(--font-family-sans, 'Geist', sans-serif);
129
- font-size: var(--text-regular-size, 15px);
130
- line-height: var(--text-regular-line, 20px);
131
- color: var(--label-primary, #121e52);
132
- overflow-y: auto;
119
+ h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, hr, .wysiwyg-editor__hard-break {
120
+ @include typography('text.regular');
133
121
  text-align: left;
134
-
135
- @media (max-width: 768px) {
136
- font-size: 16px;
137
- }
122
+ word-break: break-word;
123
+ overflow-wrap: break-word;
138
124
 
139
125
  &:first-child {
140
126
  margin-top: 0;
@@ -142,35 +128,38 @@
142
128
  }
143
129
 
144
130
  h1 {
145
- font-size: 22px;
131
+ @include responsive-heading('heading.h1', 'heading.h1.mobile');
132
+ margin: 16px 0 12px;
146
133
  }
147
134
 
148
135
  h2 {
149
- font-size: 20px;
136
+ @include responsive-heading('heading.h2', 'heading.h2.mobile');
137
+ margin: 14px 0 10px;
150
138
  }
151
139
 
152
140
  h3 {
153
- font-size: 18px;
141
+ @include responsive-heading('heading.h3', 'heading.h3.mobile');
142
+ margin: 12px 0 8px;
154
143
  }
155
144
 
156
145
  h4 {
157
- font-size: 16px;
146
+ @include responsive-heading('heading.h4', 'heading.h4.mobile');
147
+ margin: 10px 0 6px;
158
148
  }
159
149
 
160
150
  h5 {
161
- font-size: 14px;
151
+ @include responsive-heading('heading.h5', 'heading.h5.mobile');
152
+ margin: 8px 0 4px;
162
153
  }
163
154
 
164
155
  h6 {
165
- font-size: 13px;
156
+ @include responsive-heading('heading.h6', 'heading.h6.mobile');
157
+ margin: 6px 0 2px;
166
158
  }
167
159
 
168
160
  p {
161
+ @include typography('text.regular');
169
162
  margin: 8px 0;
170
- font-family: var(--font-family-sans, 'Geist', sans-serif);
171
- font-size: var(--text-regular-size, 15px);
172
- line-height: var(--text-regular-line, 20px);
173
- color: var(--label-primary, #121e52);
174
163
 
175
164
  &:first-child {
176
165
  margin-top: 0;
@@ -182,12 +171,9 @@
182
171
  }
183
172
 
184
173
  ul, ol {
174
+ @include typography('text.regular');
185
175
  margin: 8px 0;
186
176
  padding-left: 24px;
187
- font-family: var(--font-family-sans, 'Geist', sans-serif);
188
- font-size: var(--text-regular-size, 15px);
189
- line-height: var(--text-regular-line, 20px);
190
- color: var(--label-primary, #121e52);
191
177
 
192
178
  &:first-child {
193
179
  margin-top: 0;
@@ -199,23 +185,18 @@
199
185
  }
200
186
 
201
187
  li {
188
+ @include typography('text.regular');
202
189
  margin: 4px 0;
203
- font-family: var(--font-family-sans, 'Geist', sans-serif);
204
- font-size: var(--text-regular-size, 15px);
205
- line-height: var(--text-regular-line, 20px);
206
- color: var(--label-primary, #121e52);
207
190
  }
208
191
 
209
192
  blockquote {
193
+ @include typography('text.regular');
210
194
  margin: 12px 0;
211
195
  padding: 8px 16px;
212
196
  border-left: 4px solid var(--border-selected, #121e52);
213
197
  background-color: var(--surface-tertiary, #efefef);
214
- font-family: var(--font-family-sans, 'Geist', sans-serif);
215
- font-size: var(--text-regular-size, 15px);
216
- line-height: var(--text-regular-line, 20px);
217
- color: var(--label-secondary, #626a90);
218
198
  font-style: italic;
199
+ color: var(--label-secondary, #626a90);
219
200
 
220
201
  &:first-child {
221
202
  margin-top: 0;
@@ -228,7 +209,7 @@
228
209
 
229
210
  hr {
230
211
  display: block;
231
- margin: 16px 0;
212
+ margin: 20px 0;
232
213
  border: none;
233
214
  border-top: 2px solid var(--border-primary, #e8e9ef);
234
215
  height: 0;
@@ -236,12 +217,8 @@
236
217
  opacity: 1;
237
218
  visibility: visible;
238
219
 
239
- &:first-child {
240
- margin-top: 0;
241
- }
242
-
243
- &:last-child {
244
- margin-bottom: 0;
220
+ &:first-of-type {
221
+ margin-top: 20px;
245
222
  }
246
223
  }
247
224
 
@@ -300,11 +277,7 @@
300
277
  }
301
278
 
302
279
  &__help-text {
303
- font-family: var(--font-family-sans, 'Geist', sans-serif);
304
- font-size: var(--text-regular-size, 15px);
305
- font-style: normal;
306
- font-weight: 400;
307
- line-height: var(--text-regular-line, 20px);
280
+ @include typography('text.regular');
308
281
  margin-top: -5px;
309
282
  color: var(--label-secondary);
310
283
  }
@@ -315,4 +288,13 @@
315
288
  margin-top: 2px;
316
289
  }
317
290
 
291
+ &__hard-break {
292
+ height: 16px;
293
+ width: 100%;
294
+ pointer-events: none;
295
+ margin: 0;
296
+ padding: 0;
297
+ display: block;
298
+ }
299
+
318
300
  }
@@ -13,6 +13,8 @@ import {
13
13
  ParagraphIcon,
14
14
  QuoteAltIcon,
15
15
  DividerIcon,
16
+ ClearIcon,
17
+ HardBreakIcon,
16
18
  } from './Icons'
17
19
  import './WYSIWYGEditor.scss'
18
20
 
@@ -22,6 +24,7 @@ export interface WYSIWYGEditorProps {
22
24
  helpText?: string
23
25
  value?: string
24
26
  onChange?: (value: string) => void
27
+ onClear?: () => void
25
28
  placeholder?: string
26
29
  disabled?: boolean
27
30
  }
@@ -61,16 +64,112 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
61
64
  }
62
65
 
63
66
  const execCommand = (command: string, value?: string) => {
67
+ // Ensure the command is only executed if the editor is focused or if we can force focus to it
68
+ const selection = window.getSelection()
69
+ if (!selection) return
70
+
71
+ let isWithinEditor = false
72
+ if (selection.rangeCount > 0) {
73
+ const range = selection.getRangeAt(0)
74
+ isWithinEditor = contentRef.current?.contains(range.commonAncestorContainer) || false
75
+ }
76
+
77
+ // If not within editor, we focus the editor first to ensure the command applies to it
78
+ if (!isWithinEditor && contentRef.current) {
79
+ contentRef.current.focus()
80
+
81
+ // We need to re-get the selection after focusing as it might have changed
82
+ const currentSelection = window.getSelection()
83
+ if (currentSelection) {
84
+ // If the editor is empty or we want to ensure cursor is inside, we set it
85
+ if (contentRef.current.innerHTML === '' || contentRef.current.innerHTML === '<p><br></p>') {
86
+ const newRange = document.createRange()
87
+ newRange.selectNodeContents(contentRef.current)
88
+ newRange.collapse(false)
89
+ currentSelection.removeAllRanges()
90
+ currentSelection.addRange(newRange)
91
+ }
92
+ }
93
+ }
94
+
95
+ if (command === 'clearFormatting') {
96
+ if (selection.rangeCount > 0) {
97
+ const range = selection.getRangeAt(0)
98
+
99
+ // Check if selection is inside a list
100
+ let container = range.commonAncestorContainer as Node | null
101
+ if (container.nodeType === Node.TEXT_NODE) {
102
+ container = container.parentNode
103
+ }
104
+
105
+ let isInsideList = false
106
+ let tempNode = container
107
+ while (tempNode && tempNode !== contentRef.current) {
108
+ if (tempNode.nodeName === 'UL' || tempNode.nodeName === 'OL') {
109
+ isInsideList = true
110
+ break
111
+ }
112
+ tempNode = tempNode.parentNode
113
+ }
114
+
115
+ if (isInsideList) {
116
+ // If inside a list, we need to toggle off the list first
117
+ // We check which type of list it is and call the corresponding command
118
+ let listType = '';
119
+ let listNode = container;
120
+ while (listNode && listNode !== contentRef.current) {
121
+ if (listNode.nodeName === 'UL') {
122
+ listType = 'insertUnorderedList';
123
+ break;
124
+ } else if (listNode.nodeName === 'OL') {
125
+ listType = 'insertOrderedList';
126
+ break;
127
+ }
128
+ listNode = listNode.parentNode;
129
+ }
130
+
131
+ if (listType) {
132
+ document.execCommand(listType, false);
133
+ }
134
+ }
135
+
136
+ // If the selection is collapsed, just apply to current block
137
+ if (range.collapsed) {
138
+ document.execCommand('formatBlock', false, '<p>')
139
+ document.execCommand('removeFormat', false)
140
+ } else {
141
+ // If there's a selection, we check if it contains HR
142
+ const fragment = range.cloneContents()
143
+ const hasHR = fragment.querySelector('hr')
144
+
145
+ if (hasHR) {
146
+ // If it contains HR, we apply removeFormat but avoid formatBlock P
147
+ // which would replace the whole selection including HR with a single P
148
+ document.execCommand('removeFormat', false)
149
+ } else {
150
+ document.execCommand('formatBlock', false, '<p>')
151
+ document.execCommand('removeFormat', false)
152
+ }
153
+ }
154
+ handleInput()
155
+ }
156
+ return
157
+ }
158
+
64
159
  if (command === 'insertHorizontalRule') {
65
- const selection = window.getSelection()
66
- if (selection && selection.rangeCount > 0) {
160
+ if (selection.rangeCount > 0) {
67
161
  const range = selection.getRangeAt(0)
68
- range.deleteContents()
162
+ // range.deleteContents() // Removed to avoid clearing highlighted text
69
163
 
70
164
  const hr = document.createElement('hr')
71
165
  const p = document.createElement('p')
72
166
  p.innerHTML = '<br>' // Ensure the paragraph is "typeable"
73
167
 
168
+ // If something is selected, we collapse to end to insert HR AFTER selection
169
+ if (!range.collapsed) {
170
+ range.collapse(false)
171
+ }
172
+
74
173
  // Insert HR and then the paragraph after it
75
174
  range.insertNode(p)
76
175
  range.insertNode(hr)
@@ -87,6 +186,42 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
87
186
  return
88
187
  }
89
188
  }
189
+
190
+ if (command === 'hardBreak') {
191
+ if (selection.rangeCount > 0) {
192
+ const range = selection.getRangeAt(0)
193
+ // range.deleteContents() // Removed to avoid clearing highlighted text
194
+
195
+ const spacer = document.createElement('div')
196
+ spacer.className = 'wysiwyg-editor__hard-break'
197
+ spacer.innerHTML = '<br>'
198
+
199
+ // If something is selected, we collapse to end to insert break AFTER selection
200
+ // or we can just insert it at current position.
201
+ // User says "it should just break to new line", usually that implies keeping the text.
202
+ if (!range.collapsed) {
203
+ range.collapse(false)
204
+ }
205
+
206
+ range.insertNode(spacer)
207
+
208
+ // Create a new paragraph after the spacer to continue typing
209
+ const p = document.createElement('p')
210
+ p.innerHTML = '<br>'
211
+ spacer.after(p)
212
+
213
+ // Move cursor to the new paragraph
214
+ const newRange = document.createRange()
215
+ newRange.setStart(p, 0)
216
+ newRange.setEnd(p, 0)
217
+ newRange.collapse(true)
218
+ selection.removeAllRanges()
219
+ selection.addRange(newRange)
220
+
221
+ handleInput()
222
+ return
223
+ }
224
+ }
90
225
  document.execCommand(command, false, value)
91
226
  handleInput()
92
227
  }
@@ -136,7 +271,7 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
136
271
  type="button"
137
272
  className="wysiwyg-editor__toolbar-btn"
138
273
  title="Heading 1"
139
- onClick={() => execCommand('formatBlock', 'H1')}
274
+ onClick={() => execCommand('formatBlock', '<h1>')}
140
275
  >
141
276
  <Heading1Icon />
142
277
  </button>
@@ -144,7 +279,7 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
144
279
  type="button"
145
280
  className="wysiwyg-editor__toolbar-btn"
146
281
  title="Heading 2"
147
- onClick={() => execCommand('formatBlock', 'H2')}
282
+ onClick={() => execCommand('formatBlock', '<h2>')}
148
283
  >
149
284
  <Heading2Icon />
150
285
  </button>
@@ -152,10 +287,7 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
152
287
  type="button"
153
288
  className="wysiwyg-editor__toolbar-btn"
154
289
  title="Paragraph"
155
- onClick={() => {
156
- execCommand('formatBlock', 'P')
157
- execCommand('removeFormat')
158
- }}
290
+ onClick={() => execCommand('clearFormatting')}
159
291
  >
160
292
  <ParagraphIcon />
161
293
  </button>
@@ -163,7 +295,7 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
163
295
  type="button"
164
296
  className="wysiwyg-editor__toolbar-btn"
165
297
  title="Quote"
166
- onClick={() => execCommand('formatBlock', 'BLOCKQUOTE')}
298
+ onClick={() => execCommand('formatBlock', '<blockquote>')}
167
299
  >
168
300
  <QuoteAltIcon />
169
301
  </button>
@@ -191,11 +323,23 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
191
323
  >
192
324
  <DividerIcon />
193
325
  </button>
326
+ <button
327
+ type="button"
328
+ className="wysiwyg-editor__toolbar-btn"
329
+ title="Hard Break"
330
+ onClick={() => execCommand('hardBreak')}
331
+ >
332
+ <HardBreakIcon />
333
+ </button>
194
334
  <button
195
335
  type="button"
196
336
  className="wysiwyg-editor__toolbar-btn"
197
337
  title="Undo"
198
338
  onClick={() => {
339
+ const selection = window.getSelection()
340
+ if (selection && contentRef.current && !contentRef.current.contains(selection.anchorNode)) {
341
+ contentRef.current.focus()
342
+ }
199
343
  if (document.queryCommandEnabled('undo')) {
200
344
  document.execCommand('undo', false)
201
345
  handleInput()
@@ -209,6 +353,10 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
209
353
  className="wysiwyg-editor__toolbar-btn"
210
354
  title="Redo"
211
355
  onClick={() => {
356
+ const selection = window.getSelection()
357
+ if (selection && contentRef.current && !contentRef.current.contains(selection.anchorNode)) {
358
+ contentRef.current.focus()
359
+ }
212
360
  if (document.queryCommandEnabled('redo')) {
213
361
  document.execCommand('redo', false)
214
362
  handleInput()
@@ -217,6 +365,14 @@ export const WYSIWYGEditor: React.FC<WYSIWYGEditorProps> = ({
217
365
  >
218
366
  <RedoIcon />
219
367
  </button>
368
+ <button
369
+ type="button"
370
+ className="wysiwyg-editor__toolbar-btn"
371
+ title="Clear Formatting"
372
+ onClick={() => execCommand('clearFormatting')}
373
+ >
374
+ <ClearIcon />
375
+ </button>
220
376
  </div>
221
377
  <div
222
378
  ref={contentRef}
@@ -1,4 +1,5 @@
1
1
  /* New Form Input Styles based on Figma design tokens */
2
+ @import '../../styles/tokens/typography';
2
3
 
3
4
  .new-form-input {
4
5
  display: flex;
@@ -36,9 +37,7 @@
36
37
  }
37
38
 
38
39
  &__input {
39
- font-family: var(--font-family-sans, 'Geist', sans-serif);
40
- font-size: var(--text-regular-size, 15px);
41
- line-height: var(--text-regular-line, 20px);
40
+ @include typography('text.regular');
42
41
  flex: 1 0 0;
43
42
  background-color: var(--surfaces-main-background-secondary);
44
43
  border: 2px solid var(--border-primary);