@trycourier/react-designer 0.0.0-canary-20250605142011 → 0.0.0-canary-20250626144519
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.
- package/dist/channels.d.ts +7 -0
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.css.map +2 -2
- package/dist/cjs/index.js +43 -43
- package/dist/cjs/index.js.map +4 -4
- package/dist/cjs/styles.css +35 -18
- package/dist/components/TemplateEditor/Channels/Email/Email.d.ts +48 -0
- package/dist/components/TemplateEditor/Channels/Email/EmailLayout.d.ts +9 -0
- package/dist/components/TemplateEditor/Channels/Email/SideBar/SideBar.d.ts +3 -3
- package/dist/components/TemplateEditor/Channels/Email/SideBar/SideBarItemDetails/SideBarItemDetails.d.ts +1 -2
- package/dist/components/TemplateEditor/Channels/Email/SideBar/index.d.ts +1 -0
- package/dist/components/TemplateEditor/Channels/Email/index.d.ts +1 -0
- package/dist/components/TemplateEditor/Channels/Inbox/Inbox.d.ts +22 -0
- package/dist/components/TemplateEditor/Channels/Inbox/InboxEditor.d.ts +4 -0
- package/dist/components/TemplateEditor/Channels/Inbox/InboxLayout.d.ts +4 -0
- package/dist/components/TemplateEditor/Channels/Inbox/index.d.ts +2 -0
- package/dist/components/TemplateEditor/Channels/Push/Push.d.ts +22 -0
- package/dist/components/TemplateEditor/Channels/Push/PushEditor.d.ts +6 -0
- package/dist/components/TemplateEditor/Channels/Push/PushLayout.d.ts +4 -0
- package/dist/components/TemplateEditor/Channels/Push/index.d.ts +2 -0
- package/dist/components/TemplateEditor/Channels/SMS/SMS.d.ts +22 -0
- package/dist/components/TemplateEditor/Channels/SMS/SMSEditor.d.ts +5 -0
- package/dist/components/TemplateEditor/Channels/SMS/SMSLayout.d.ts +4 -0
- package/dist/components/TemplateEditor/Channels/SMS/index.d.ts +2 -0
- package/dist/components/TemplateEditor/Channels/index.d.ts +1 -0
- package/dist/components/TemplateEditor/Channels/useChannels.d.ts +13 -0
- package/dist/components/TemplateEditor/Layout/Layout.d.ts +7 -0
- package/dist/components/TemplateEditor/Layout/index.d.ts +1 -0
- package/dist/components/TemplateEditor/index.d.ts +16 -0
- package/dist/components/extensions/Blockquote/Blockquote.test.d.ts +1 -0
- package/dist/components/extensions/Blockquote/Blockquote.types.d.ts +2 -2
- package/dist/components/extensions/Button/Button.test.d.ts +1 -0
- package/dist/components/extensions/Button/Button.types.d.ts +6 -6
- package/dist/components/extensions/ButtonRow/ButtonRow.d.ts +11 -0
- package/dist/components/extensions/ButtonRow/ButtonRow.test.d.ts +1 -0
- package/dist/components/extensions/ButtonRow/ButtonRow.types.d.ts +45 -0
- package/dist/components/extensions/ButtonRow/ButtonRowComponent.d.ts +5 -0
- package/dist/components/extensions/ButtonRow/index.d.ts +4 -0
- package/dist/components/extensions/Divider/Divider.test.d.ts +1 -0
- package/dist/components/extensions/DragPlaceholder/DragPlaceholder.test.d.ts +1 -0
- package/dist/components/extensions/FileHandler/FileHandler.test.d.ts +1 -0
- package/dist/components/extensions/Heading/Heading.test.d.ts +1 -0
- package/dist/components/extensions/Image/Image.test.d.ts +1 -0
- package/dist/components/extensions/ImageBlock/ImageBlock.test.d.ts +1 -0
- package/dist/components/extensions/Link/Link.test.d.ts +1 -0
- package/dist/components/extensions/Paragraph/Paragraph.test.d.ts +1 -0
- package/dist/components/extensions/Selection/Selection.test.d.ts +1 -0
- package/dist/components/extensions/TextBlock/TextBlock.test.d.ts +1 -0
- package/dist/components/extensions/TextBlock/TextBlock.types.d.ts +4 -4
- package/dist/components/extensions/UniqueId/UniqueId.test.d.ts +1 -0
- package/dist/components/extensions/Variable/Variable.test.d.ts +1 -0
- package/dist/components/extensions/index.d.ts +1 -0
- package/dist/components/ui-kit/Icon/InAppIcon.d.ts +3 -0
- package/dist/components/ui-kit/Icon/PushIcon.d.ts +3 -0
- package/dist/components/ui-kit/Icon/SMSIcon.d.ts +3 -0
- package/dist/components/ui-kit/Icon/index.d.ts +3 -0
- package/dist/esm/index.css +1 -1
- package/dist/esm/index.css.map +2 -2
- package/dist/esm/index.js +43 -43
- package/dist/esm/index.js.map +4 -4
- package/dist/esm/styles.css +35 -18
- package/dist/store.d.ts +4 -8
- package/dist/styles.css +35 -18
- package/package.json +2 -2
package/dist/cjs/styles.css
CHANGED
|
@@ -896,11 +896,11 @@ body {
|
|
|
896
896
|
.courier-inset-0 {
|
|
897
897
|
inset: 0px;
|
|
898
898
|
}
|
|
899
|
-
.-courier-left-\[
|
|
900
|
-
left: -
|
|
899
|
+
.-courier-left-\[2px\] {
|
|
900
|
+
left: -2px;
|
|
901
901
|
}
|
|
902
|
-
.-courier-right-\[
|
|
903
|
-
right: -
|
|
902
|
+
.-courier-right-\[2px\] {
|
|
903
|
+
right: -2px;
|
|
904
904
|
}
|
|
905
905
|
.courier-bottom-0 {
|
|
906
906
|
bottom: 0px;
|
|
@@ -1195,6 +1195,9 @@ body {
|
|
|
1195
1195
|
.courier-max-h-\[88px\] {
|
|
1196
1196
|
max-height: 88px;
|
|
1197
1197
|
}
|
|
1198
|
+
.courier-min-h-12 {
|
|
1199
|
+
min-height: 3rem;
|
|
1200
|
+
}
|
|
1198
1201
|
.courier-min-h-\[1\.5rem\] {
|
|
1199
1202
|
min-height: 1.5rem;
|
|
1200
1203
|
}
|
|
@@ -1415,6 +1418,9 @@ body {
|
|
|
1415
1418
|
.courier-items-center {
|
|
1416
1419
|
align-items: center;
|
|
1417
1420
|
}
|
|
1421
|
+
.courier-justify-start {
|
|
1422
|
+
justify-content: flex-start;
|
|
1423
|
+
}
|
|
1418
1424
|
.courier-justify-end {
|
|
1419
1425
|
justify-content: flex-end;
|
|
1420
1426
|
}
|
|
@@ -1485,6 +1491,9 @@ body {
|
|
|
1485
1491
|
.courier-rounded-3xl {
|
|
1486
1492
|
border-radius: 1.5rem;
|
|
1487
1493
|
}
|
|
1494
|
+
.courier-rounded-\[40px\] {
|
|
1495
|
+
border-radius: 40px;
|
|
1496
|
+
}
|
|
1488
1497
|
.courier-rounded-full {
|
|
1489
1498
|
border-radius: 9999px;
|
|
1490
1499
|
}
|
|
@@ -1793,6 +1802,10 @@ body {
|
|
|
1793
1802
|
.courier-p-\[3px\] {
|
|
1794
1803
|
padding: 3px;
|
|
1795
1804
|
}
|
|
1805
|
+
.\!courier-px-2 {
|
|
1806
|
+
padding-left: 0.5rem !important;
|
|
1807
|
+
padding-right: 0.5rem !important;
|
|
1808
|
+
}
|
|
1796
1809
|
.\!courier-py-\[5px\] {
|
|
1797
1810
|
padding-top: 5px !important;
|
|
1798
1811
|
padding-bottom: 5px !important;
|
|
@@ -1873,12 +1886,6 @@ body {
|
|
|
1873
1886
|
padding-top: 1px;
|
|
1874
1887
|
padding-bottom: 1px;
|
|
1875
1888
|
}
|
|
1876
|
-
.\!courier-pl-2 {
|
|
1877
|
-
padding-left: 0.5rem !important;
|
|
1878
|
-
}
|
|
1879
|
-
.\!courier-pr-2 {
|
|
1880
|
-
padding-right: 0.5rem !important;
|
|
1881
|
-
}
|
|
1882
1889
|
.courier-pb-0 {
|
|
1883
1890
|
padding-bottom: 0px;
|
|
1884
1891
|
}
|
|
@@ -2207,7 +2214,7 @@ body {
|
|
|
2207
2214
|
.touch-transparent {
|
|
2208
2215
|
-webkit-tap-highlight-color: transparent;
|
|
2209
2216
|
}
|
|
2210
|
-
.courier-editor-preview-mode
|
|
2217
|
+
.courier-editor-preview-mode.courier-main-content {
|
|
2211
2218
|
flex-grow: 1;
|
|
2212
2219
|
width: 100%;
|
|
2213
2220
|
}
|
|
@@ -2394,19 +2401,19 @@ body {
|
|
|
2394
2401
|
.courier-editor-preview-mode.courier-editor-preview-mode-mobile .courier-editor-main:hover >button {
|
|
2395
2402
|
display: none;
|
|
2396
2403
|
}
|
|
2397
|
-
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote * {
|
|
2404
|
+
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow * {
|
|
2398
2405
|
pointer-events: none;
|
|
2399
2406
|
}
|
|
2400
|
-
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote * {
|
|
2407
|
+
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote *, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow * {
|
|
2401
2408
|
cursor: default;
|
|
2402
2409
|
}
|
|
2403
|
-
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote [data-cypress="draggable-handle"] {
|
|
2410
|
+
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow [data-cypress="draggable-handle"] {
|
|
2404
2411
|
display: none;
|
|
2405
2412
|
}
|
|
2406
|
-
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active [data-cypress="draggable-handle"] {
|
|
2413
|
+
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:hover [data-cypress="draggable-handle"], .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:active [data-cypress="draggable-handle"] {
|
|
2407
2414
|
display: none;
|
|
2408
2415
|
}
|
|
2409
|
-
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element.courier-empty-image::before {
|
|
2416
|
+
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-button:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-divider:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-paragraph:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-heading:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-blockquote:active .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:hover .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:hover .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:hover .node-element.courier-empty-image::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:active .node-element>div::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:active .node-element>hr::before, .courier-editor-preview-mode .ProseMirror>.react-renderer.node-buttonRow:active .node-element.courier-empty-image::before {
|
|
2410
2417
|
display: none;
|
|
2411
2418
|
}
|
|
2412
2419
|
.courier-editor-preview-mode .ProseMirror>.react-renderer.node-imageBlock .courier-empty-image {
|
|
@@ -2591,13 +2598,23 @@ body {
|
|
|
2591
2598
|
font-size: 0.875rem;
|
|
2592
2599
|
line-height: 1.25rem;
|
|
2593
2600
|
}
|
|
2601
|
+
.courier-inbox-editor .ProseMirror>.react-renderer.node-buttonRow {
|
|
2602
|
+
margin-top: 0.5rem;
|
|
2603
|
+
}
|
|
2604
|
+
/* Override the centering from SortableItemWrapper */
|
|
2605
|
+
.courier-inbox-editor .ProseMirror>.react-renderer.node-buttonRow .draggable-item {
|
|
2606
|
+
justify-content: flex-start !important;
|
|
2607
|
+
}
|
|
2608
|
+
.courier-inbox-editor .ProseMirror>.react-renderer.node-buttonRow [data-cypress="draggable-handle"] {
|
|
2609
|
+
display: none;
|
|
2610
|
+
}
|
|
2594
2611
|
.courier-inbox-editor .ProseMirror>.react-renderer .draggable-item {
|
|
2595
2612
|
padding: 0px;
|
|
2596
2613
|
}
|
|
2597
|
-
.courier-inbox-editor .ProseMirror>.react-renderer.node-paragraph .selected-element .node-element::before, .courier-inbox-editor .ProseMirror>.react-renderer.node-heading .selected-element .node-element::before {
|
|
2614
|
+
.courier-inbox-editor .ProseMirror>.react-renderer.node-paragraph .selected-element .node-element::before, .courier-inbox-editor .ProseMirror>.react-renderer.node-heading .selected-element .node-element::before, .courier-inbox-editor .ProseMirror>.react-renderer.node-buttonRow .selected-element .node-element::before {
|
|
2598
2615
|
display: none;
|
|
2599
2616
|
}
|
|
2600
|
-
.courier-inbox-editor .ProseMirror>.react-renderer.node-paragraph .selected-element .courier-actions-panel, .courier-inbox-editor .ProseMirror>.react-renderer.node-heading .selected-element .courier-actions-panel {
|
|
2617
|
+
.courier-inbox-editor .ProseMirror>.react-renderer.node-paragraph .selected-element .courier-actions-panel, .courier-inbox-editor .ProseMirror>.react-renderer.node-heading .selected-element .courier-actions-panel, .courier-inbox-editor .ProseMirror>.react-renderer.node-buttonRow .selected-element .courier-actions-panel {
|
|
2601
2618
|
display: none;
|
|
2602
2619
|
}
|
|
2603
2620
|
.courier-inbox-editor .ProseMirror>.react-renderer:hover [data-cypress="draggable-handle"] {
|
|
@@ -1,7 +1,55 @@
|
|
|
1
|
+
import type { TiptapDoc } from "@/lib/utils";
|
|
2
|
+
import type { ChannelType } from "@/store";
|
|
1
3
|
import type { ElementalNode } from "@/types/elemental.types";
|
|
4
|
+
import type { UniqueIdentifier } from "@dnd-kit/core";
|
|
5
|
+
import type { SortingStrategy } from "@dnd-kit/sortable";
|
|
6
|
+
import type { Node } from "@tiptap/pm/model";
|
|
7
|
+
import type { Editor } from "@tiptap/react";
|
|
8
|
+
import type { MessageRouting, TenantData } from "../../../Providers/store";
|
|
2
9
|
import type { TemplateEditorProps } from "../../TemplateEditor";
|
|
10
|
+
interface BrandSettingsData {
|
|
11
|
+
brandColor?: string;
|
|
12
|
+
textColor?: string;
|
|
13
|
+
subtleColor?: string;
|
|
14
|
+
headerStyle: "border" | "plain";
|
|
15
|
+
logo?: string;
|
|
16
|
+
link?: string;
|
|
17
|
+
facebookLink?: string;
|
|
18
|
+
linkedinLink?: string;
|
|
19
|
+
instagramLink?: string;
|
|
20
|
+
mediumLink?: string;
|
|
21
|
+
xLink?: string;
|
|
22
|
+
}
|
|
3
23
|
export interface EmailProps extends Pick<TemplateEditorProps, "hidePublish" | "brandEditor" | "channels" | "variables" | "theme" | "routing"> {
|
|
4
24
|
isLoading?: boolean;
|
|
25
|
+
headerRenderer?: ({ hidePublish, channels, routing, }: {
|
|
26
|
+
hidePublish?: boolean;
|
|
27
|
+
channels?: ChannelType[];
|
|
28
|
+
routing: MessageRouting;
|
|
29
|
+
}) => React.ReactNode;
|
|
30
|
+
render?: ({ subject, handleSubjectChange, selectedNode, setSelectedNode, previewMode, emailEditor, ref, isBrandApply, brandSettings, items, content, strategy, syncEditorItems, brandEditorContent, tenantData, togglePreviewMode, }: {
|
|
31
|
+
subject: string | null;
|
|
32
|
+
handleSubjectChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
33
|
+
selectedNode: Node | null;
|
|
34
|
+
setSelectedNode: (node: Node | null) => void;
|
|
35
|
+
previewMode: "desktop" | "mobile" | undefined;
|
|
36
|
+
emailEditor: Editor | null;
|
|
37
|
+
ref: React.RefObject<HTMLDivElement> | null;
|
|
38
|
+
isBrandApply: boolean;
|
|
39
|
+
brandSettings: BrandSettingsData | null;
|
|
40
|
+
items: Items;
|
|
41
|
+
content: TiptapDoc | null;
|
|
42
|
+
strategy: SortingStrategy;
|
|
43
|
+
syncEditorItems: (editor: Editor) => void;
|
|
44
|
+
brandEditorContent: string | null;
|
|
45
|
+
tenantData: TenantData | null;
|
|
46
|
+
togglePreviewMode: (mode: "desktop" | "mobile" | undefined) => void;
|
|
47
|
+
}) => React.ReactNode;
|
|
48
|
+
}
|
|
49
|
+
interface Items {
|
|
50
|
+
Editor: UniqueIdentifier[];
|
|
51
|
+
Sidebar: UniqueIdentifier[];
|
|
5
52
|
}
|
|
6
53
|
export declare const defaultEmailContent: ElementalNode[];
|
|
7
54
|
export declare const Email: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<EmailProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
55
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type HTMLAttributes } from "react";
|
|
2
|
+
import { type EmailProps } from "./Email";
|
|
3
|
+
export declare const EmailEditorContainer: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export declare const EmailEditorMain: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & {
|
|
5
|
+
previewMode: "desktop" | "mobile" | undefined;
|
|
6
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export interface EmailLayoutProps extends EmailProps {
|
|
8
|
+
}
|
|
9
|
+
export declare const EmailLayout: ({ variables, theme, isLoading, hidePublish, channels, brandEditor, routing, }: EmailLayoutProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { UniqueIdentifier } from "@dnd-kit/core";
|
|
2
|
-
interface SideBarProps {
|
|
2
|
+
export interface SideBarProps {
|
|
3
3
|
items: UniqueIdentifier[];
|
|
4
4
|
brandEditor?: boolean;
|
|
5
|
+
label?: string;
|
|
5
6
|
}
|
|
6
|
-
export declare const SideBar: ({ items, brandEditor }: SideBarProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
-
export {};
|
|
7
|
+
export declare const SideBar: ({ items, brandEditor, label }: SideBarProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { Node as ProseMirrorNode } from "@tiptap/pm/model";
|
|
2
2
|
import type { Editor } from "@tiptap/react";
|
|
3
|
-
interface SideBarItemDetailsProps {
|
|
3
|
+
export interface SideBarItemDetailsProps {
|
|
4
4
|
element?: ProseMirrorNode;
|
|
5
5
|
editor: Editor | null;
|
|
6
6
|
}
|
|
7
7
|
export declare const SideBarItemDetails: ({ element, editor }: SideBarItemDetailsProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
|
-
export {};
|
|
@@ -1,7 +1,29 @@
|
|
|
1
|
+
import type { MessageRouting } from "@/components/Providers/store";
|
|
2
|
+
import type { TextMenuConfig } from "@/components/ui/TextMenu/config";
|
|
3
|
+
import type { TiptapDoc } from "@/lib/utils";
|
|
4
|
+
import type { ChannelType } from "@/store";
|
|
1
5
|
import type { ElementalNode } from "@/types/elemental.types";
|
|
6
|
+
import type { AnyExtension, Editor } from "@tiptap/react";
|
|
2
7
|
import type { TemplateEditorProps } from "../../TemplateEditor";
|
|
3
8
|
export declare const defaultInboxContent: ElementalNode[];
|
|
9
|
+
export declare const InboxConfig: TextMenuConfig;
|
|
10
|
+
export declare const InboxEditorContent: () => null;
|
|
11
|
+
export interface InboxRenderProps {
|
|
12
|
+
content: TiptapDoc;
|
|
13
|
+
extensions: AnyExtension[];
|
|
14
|
+
editable: boolean;
|
|
15
|
+
autofocus: boolean;
|
|
16
|
+
onUpdate: ({ editor }: {
|
|
17
|
+
editor: Editor;
|
|
18
|
+
}) => void;
|
|
19
|
+
}
|
|
4
20
|
export interface InboxProps extends Pick<TemplateEditorProps, "hidePublish" | "theme" | "variables" | "channels" | "routing"> {
|
|
5
21
|
readOnly?: boolean;
|
|
22
|
+
headerRenderer?: ({ hidePublish, channels, routing, }: {
|
|
23
|
+
hidePublish?: boolean;
|
|
24
|
+
channels?: ChannelType[];
|
|
25
|
+
routing: MessageRouting;
|
|
26
|
+
}) => React.ReactNode;
|
|
27
|
+
render?: (props: InboxRenderProps) => React.ReactNode;
|
|
6
28
|
}
|
|
7
29
|
export declare const Inbox: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<InboxProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -1,7 +1,29 @@
|
|
|
1
|
+
import type { MessageRouting } from "@/components/Providers/store";
|
|
2
|
+
import type { TextMenuConfig } from "@/components/ui/TextMenu/config";
|
|
3
|
+
import type { TiptapDoc } from "@/lib/utils";
|
|
4
|
+
import type { ChannelType } from "@/store";
|
|
1
5
|
import type { ElementalNode } from "@/types/elemental.types";
|
|
6
|
+
import type { AnyExtension, Editor } from "@tiptap/react";
|
|
2
7
|
import type { TemplateEditorProps } from "../../TemplateEditor";
|
|
8
|
+
export declare const PushEditorContent: () => null;
|
|
9
|
+
export interface PushRenderProps {
|
|
10
|
+
content: TiptapDoc;
|
|
11
|
+
extensions: AnyExtension[];
|
|
12
|
+
editable: boolean;
|
|
13
|
+
autofocus: boolean;
|
|
14
|
+
onUpdate: ({ editor }: {
|
|
15
|
+
editor: Editor;
|
|
16
|
+
}) => void;
|
|
17
|
+
}
|
|
3
18
|
export interface PushProps extends Pick<TemplateEditorProps, "hidePublish" | "theme" | "variables" | "channels" | "routing"> {
|
|
4
19
|
readOnly?: boolean;
|
|
20
|
+
headerRenderer?: ({ hidePublish, channels, routing, }: {
|
|
21
|
+
hidePublish?: boolean;
|
|
22
|
+
channels?: ChannelType[];
|
|
23
|
+
routing: MessageRouting;
|
|
24
|
+
}) => React.ReactNode;
|
|
25
|
+
render?: (props: PushRenderProps) => React.ReactNode;
|
|
5
26
|
}
|
|
6
27
|
export declare const defaultPushContent: ElementalNode[];
|
|
28
|
+
export declare const PushConfig: TextMenuConfig;
|
|
7
29
|
export declare const Push: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<PushProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { HTMLAttributes } from "react";
|
|
2
|
+
import { type PushRenderProps } from "./Push";
|
|
3
|
+
interface PushEditorProps extends PushRenderProps, Omit<HTMLAttributes<HTMLDivElement>, "content"> {
|
|
4
|
+
}
|
|
5
|
+
export declare const PushEditor: ({ content, extensions, editable, autofocus, onUpdate, className, }: PushEditorProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -1,7 +1,29 @@
|
|
|
1
|
+
import type { TextMenuConfig } from "@/components/ui/TextMenu/config";
|
|
2
|
+
import type { TiptapDoc } from "@/lib/utils";
|
|
1
3
|
import type { ElementalNode } from "@/types/elemental.types";
|
|
4
|
+
import type { AnyExtension, Editor } from "@tiptap/react";
|
|
5
|
+
import type { MessageRouting } from "../../../Providers/store";
|
|
6
|
+
import type { ChannelType } from "@/store";
|
|
2
7
|
import type { TemplateEditorProps } from "../../TemplateEditor";
|
|
3
8
|
export declare const defaultSMSContent: ElementalNode[];
|
|
9
|
+
export declare const SMSEditorContent: () => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export interface SMSRenderProps {
|
|
11
|
+
content: TiptapDoc;
|
|
12
|
+
extensions: AnyExtension[];
|
|
13
|
+
editable: boolean;
|
|
14
|
+
autofocus: boolean;
|
|
15
|
+
onUpdate: ({ editor }: {
|
|
16
|
+
editor: Editor;
|
|
17
|
+
}) => void;
|
|
18
|
+
}
|
|
4
19
|
export interface SMSProps extends Pick<TemplateEditorProps, "hidePublish" | "theme" | "variables" | "channels" | "routing"> {
|
|
5
20
|
readOnly?: boolean;
|
|
21
|
+
headerRenderer?: ({ hidePublish, channels, routing, }: {
|
|
22
|
+
hidePublish?: boolean;
|
|
23
|
+
channels?: ChannelType[];
|
|
24
|
+
routing: MessageRouting;
|
|
25
|
+
}) => React.ReactNode;
|
|
26
|
+
render?: (props: SMSRenderProps) => React.ReactNode;
|
|
6
27
|
}
|
|
28
|
+
export declare const SMSConfig: TextMenuConfig;
|
|
7
29
|
export declare const SMS: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<SMSProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { HTMLAttributes } from "react";
|
|
2
|
+
import type { SMSRenderProps } from "./SMS";
|
|
3
|
+
export interface SMSEditorProps extends SMSRenderProps, Omit<HTMLAttributes<HTMLDivElement>, "content"> {
|
|
4
|
+
}
|
|
5
|
+
export declare const SMSEditor: ({ content, extensions, editable, autofocus, onUpdate, className, }: SMSEditorProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type Channel, type ChannelType } from "@/store";
|
|
2
|
+
import type { TemplateEditorProps } from "../TemplateEditor";
|
|
3
|
+
export declare const useChannels: ({ channels, routing, }: {
|
|
4
|
+
channels?: ChannelType[];
|
|
5
|
+
routing?: TemplateEditorProps["routing"];
|
|
6
|
+
}) => {
|
|
7
|
+
enabledChannels: Channel[];
|
|
8
|
+
disabledChannels: Channel[];
|
|
9
|
+
channel: ChannelType;
|
|
10
|
+
setChannel: (channelType: ChannelType) => void;
|
|
11
|
+
addChannel: (channelType: ChannelType) => void;
|
|
12
|
+
removeChannel: (channelToRemove: ChannelType) => Promise<void>;
|
|
13
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type HTMLAttributes } from "react";
|
|
2
|
+
export declare const ChannelRootContainer: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & {
|
|
3
|
+
previewMode: "desktop" | "mobile" | undefined;
|
|
4
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
5
|
+
export declare const EditorSidebar: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLDivElement> & {
|
|
6
|
+
previewMode: "desktop" | "mobile" | undefined;
|
|
7
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Layout";
|
|
@@ -1 +1,17 @@
|
|
|
1
|
+
export { BrandFooter } from "@/components/BrandEditor/Editor/BrandFooter";
|
|
2
|
+
export { PreviewPanel } from "@/components/ui/PreviewPanel";
|
|
3
|
+
export { TextMenu } from "@/components/ui/TextMenu";
|
|
4
|
+
export { cn } from "@/lib/utils";
|
|
5
|
+
export { SortableContext } from "@dnd-kit/sortable";
|
|
6
|
+
export { useChannels } from "./Channels";
|
|
7
|
+
export { default as EmailEditor } from "./Channels/Email/EmailEditor";
|
|
1
8
|
export * from "./TemplateEditor";
|
|
9
|
+
export { SideBar as EmailSideBar, SideBarItemDetails as EmailSideBarItemDetails, } from "./Channels/Email/SideBar";
|
|
10
|
+
export { SideBar as InboxSideBar } from "./Channels/Inbox/SideBar";
|
|
11
|
+
export declare const EmailChannel: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./Channels").EmailProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
12
|
+
export declare const SMSChannel: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./Channels").SMSProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
13
|
+
export declare const PushChannel: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./Channels").PushProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
14
|
+
export declare const InboxChannel: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./Channels").InboxProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
15
|
+
export { EmailEditorContainer, EmailEditorMain } from "./Channels/Email";
|
|
16
|
+
export { ChannelRootContainer, EditorSidebar } from "./Layout";
|
|
17
|
+
export { InboxEditor, PushEditor, SMSEditor } from "./Channels";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -7,17 +7,17 @@ export declare const blockquoteSchema: z.ZodObject<{
|
|
|
7
7
|
borderColor: z.ZodString;
|
|
8
8
|
id: z.ZodOptional<z.ZodString>;
|
|
9
9
|
}, "strip", z.ZodTypeAny, {
|
|
10
|
+
backgroundColor: string;
|
|
10
11
|
paddingVertical: number;
|
|
11
12
|
paddingHorizontal: number;
|
|
12
13
|
borderColor: string;
|
|
13
|
-
backgroundColor: string;
|
|
14
14
|
borderLeftWidth: number;
|
|
15
15
|
id?: string | undefined;
|
|
16
16
|
}, {
|
|
17
|
+
backgroundColor: string;
|
|
17
18
|
paddingVertical: number;
|
|
18
19
|
paddingHorizontal: number;
|
|
19
20
|
borderColor: string;
|
|
20
|
-
backgroundColor: string;
|
|
21
21
|
borderLeftWidth: number;
|
|
22
22
|
id?: string | undefined;
|
|
23
23
|
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -17,12 +17,12 @@ export declare const buttonSchema: z.ZodObject<{
|
|
|
17
17
|
}, "strip", z.ZodTypeAny, {
|
|
18
18
|
padding: number;
|
|
19
19
|
borderWidth: number;
|
|
20
|
+
label: string;
|
|
21
|
+
backgroundColor: string;
|
|
22
|
+
textColor: string;
|
|
20
23
|
borderColor: string;
|
|
21
24
|
size: "full" | "default";
|
|
22
25
|
borderRadius: number;
|
|
23
|
-
textColor: string;
|
|
24
|
-
backgroundColor: string;
|
|
25
|
-
label: string;
|
|
26
26
|
alignment: "left" | "center" | "right";
|
|
27
27
|
fontStyle: "italic" | "normal";
|
|
28
28
|
fontWeight: "bold" | "normal";
|
|
@@ -32,12 +32,12 @@ export declare const buttonSchema: z.ZodObject<{
|
|
|
32
32
|
}, {
|
|
33
33
|
padding: number;
|
|
34
34
|
borderWidth: number;
|
|
35
|
+
label: string;
|
|
36
|
+
backgroundColor: string;
|
|
37
|
+
textColor: string;
|
|
35
38
|
borderColor: string;
|
|
36
39
|
size: "full" | "default";
|
|
37
40
|
borderRadius: number;
|
|
38
|
-
textColor: string;
|
|
39
|
-
backgroundColor: string;
|
|
40
|
-
label: string;
|
|
41
41
|
alignment: "left" | "center" | "right";
|
|
42
42
|
fontStyle: "italic" | "normal";
|
|
43
43
|
fontWeight: "bold" | "normal";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Node } from "@tiptap/core";
|
|
2
|
+
import type { ButtonRowProps } from "./ButtonRow.types";
|
|
3
|
+
declare module "@tiptap/core" {
|
|
4
|
+
interface Commands<ReturnType> {
|
|
5
|
+
buttonRow: {
|
|
6
|
+
setButtonRow: (props: Partial<ButtonRowProps>) => ReturnType;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export declare const defaultButtonRowProps: ButtonRowProps;
|
|
11
|
+
export declare const ButtonRow: Node<any, any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export interface ButtonRowProps {
|
|
3
|
+
id?: string;
|
|
4
|
+
button1Label: string;
|
|
5
|
+
button1Link: string;
|
|
6
|
+
button1BackgroundColor: string;
|
|
7
|
+
button1TextColor: string;
|
|
8
|
+
button2Label: string;
|
|
9
|
+
button2Link: string;
|
|
10
|
+
button2BackgroundColor: string;
|
|
11
|
+
button2TextColor: string;
|
|
12
|
+
padding?: number;
|
|
13
|
+
}
|
|
14
|
+
export declare const buttonRowSchema: z.ZodObject<{
|
|
15
|
+
button1Label: z.ZodString;
|
|
16
|
+
button1Link: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>>;
|
|
17
|
+
button1BackgroundColor: z.ZodOptional<z.ZodString>;
|
|
18
|
+
button1TextColor: z.ZodOptional<z.ZodString>;
|
|
19
|
+
button2Label: z.ZodString;
|
|
20
|
+
button2Link: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodLiteral<"">]>>;
|
|
21
|
+
button2BackgroundColor: z.ZodOptional<z.ZodString>;
|
|
22
|
+
button2TextColor: z.ZodOptional<z.ZodString>;
|
|
23
|
+
padding: z.ZodOptional<z.ZodNumber>;
|
|
24
|
+
}, "strip", z.ZodTypeAny, {
|
|
25
|
+
button1Label: string;
|
|
26
|
+
button2Label: string;
|
|
27
|
+
padding?: number | undefined;
|
|
28
|
+
button1Link?: string | undefined;
|
|
29
|
+
button1BackgroundColor?: string | undefined;
|
|
30
|
+
button1TextColor?: string | undefined;
|
|
31
|
+
button2Link?: string | undefined;
|
|
32
|
+
button2BackgroundColor?: string | undefined;
|
|
33
|
+
button2TextColor?: string | undefined;
|
|
34
|
+
}, {
|
|
35
|
+
button1Label: string;
|
|
36
|
+
button2Label: string;
|
|
37
|
+
padding?: number | undefined;
|
|
38
|
+
button1Link?: string | undefined;
|
|
39
|
+
button1BackgroundColor?: string | undefined;
|
|
40
|
+
button1TextColor?: string | undefined;
|
|
41
|
+
button2Link?: string | undefined;
|
|
42
|
+
button2BackgroundColor?: string | undefined;
|
|
43
|
+
button2TextColor?: string | undefined;
|
|
44
|
+
}>;
|
|
45
|
+
export type ButtonRowFormData = z.infer<typeof buttonRowSchema>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type NodeViewProps } from "@tiptap/react";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { ButtonRowProps } from "./ButtonRow.types";
|
|
4
|
+
export declare const ButtonRowComponent: React.FC<ButtonRowProps>;
|
|
5
|
+
export declare const ButtonRowComponentNode: (props: NodeViewProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { ButtonRow, defaultButtonRowProps } from "./ButtonRow";
|
|
2
|
+
export { ButtonRowComponent, ButtonRowComponentNode } from "./ButtonRowComponent";
|
|
3
|
+
export type { ButtonRowProps, ButtonRowFormData } from "./ButtonRow.types";
|
|
4
|
+
export { buttonRowSchema } from "./ButtonRow.types";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "@testing-library/jest-dom/vitest";
|