Add unsend campaign feature (#45)
* Add unsend email editor Add email editor Add more email editor Add renderer partial Add more marketing email features * Add more campaign feature * Add variables * Getting there * campaign is there mfs * Add migration
This commit is contained in:
246
packages/email-editor/src/styles/index.css
Normal file
246
packages/email-editor/src/styles/index.css
Normal file
@@ -0,0 +1,246 @@
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
.unsend-editor .unsend-prose p:where([class~="text-sm"]) {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h1,
|
||||
.unsend-editor .unsend-prose h2,
|
||||
.unsend-editor .unsend-prose h3 {
|
||||
margin-top: 0;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h1 {
|
||||
@apply text-[29px] font-semibold;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h2 {
|
||||
@apply text-2xl font-semibold;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h3 {
|
||||
@apply text-lg font-semibold;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose p {
|
||||
font-size: 15px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h1 + p,
|
||||
.unsend-editor .unsend-prose h2 + p,
|
||||
.unsend-editor .unsend-prose h3 + p,
|
||||
.unsend-editor .unsend-prose hr + p {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose ol,
|
||||
.unsend-editor .unsend-prose ul {
|
||||
margin-top: 0;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose ol {
|
||||
@apply list-decimal pl-8;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose ul {
|
||||
@apply list-disc pl-8;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose li:not(:last-child) {
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose li > p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose img {
|
||||
margin-top: 0;
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose hr {
|
||||
margin-block: 32px;
|
||||
border-top-width: 1px;
|
||||
}
|
||||
|
||||
.drag-handle {
|
||||
position: fixed;
|
||||
opacity: 1;
|
||||
transition: opacity ease-in 0.2s;
|
||||
border-radius: 0.25rem;
|
||||
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' style='fill: rgba(0, 0, 0, 0.5)'%3E%3Cpath d='M3,2 C2.44771525,2 2,1.55228475 2,1 C2,0.44771525 2.44771525,0 3,0 C3.55228475,0 4,0.44771525 4,1 C4,1.55228475 3.55228475,2 3,2 Z M3,6 C2.44771525,6 2,5.55228475 2,5 C2,4.44771525 2.44771525,4 3,4 C3.55228475,4 4,4.44771525 4,5 C4,5.55228475 3.55228475,6 3,6 Z M3,10 C2.44771525,10 2,9.55228475 2,9 C2,8.44771525 2.44771525,8 3,8 C3.55228475,8 4,8.44771525 4,9 C4,9.55228475 3.55228475,10 3,10 Z M7,2 C6.44771525,2 6,1.55228475 6,1 C6,0.44771525 6.44771525,0 7,0 C7.55228475,0 8,0.44771525 8,1 C8,1.55228475 7.55228475,2 7,2 Z M7,6 C6.44771525,6 6,5.55228475 6,5 C6,4.44771525 6.44771525,4 7,4 C7.55228475,4 8,4.44771525 8,5 C8,5.55228475 7.55228475,6 7,6 Z M7,10 C6.44771525,10 6,9.55228475 6,9 C6,8.44771525 6.44771525,8 7,8 C7.55228475,8 8,8.44771525 8,9 C8,9.55228475 7.55228475,10 7,10 Z'%3E%3C/path%3E%3C/svg%3E");
|
||||
background-size: calc(0.5em + 0.375rem) calc(0.5em + 0.375rem);
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
width: 1.2rem;
|
||||
height: 1.5rem;
|
||||
z-index: 50;
|
||||
cursor: grab;
|
||||
|
||||
&:hover {
|
||||
transition: background-color 0.2s;
|
||||
}
|
||||
|
||||
&:active {
|
||||
transition: background-color 0.2s;
|
||||
cursor: grabbing;
|
||||
}
|
||||
|
||||
&.hide {
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 600px) {
|
||||
display: none;
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .footer {
|
||||
display: block;
|
||||
font-size: 13px;
|
||||
margin-bottom: 20px;
|
||||
color: rgb(100, 116, 139);
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .spacer + * {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose p + .spacer {
|
||||
margin-top: -20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose a {
|
||||
@apply text-blue-500;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose blockquote + .spacer {
|
||||
margin-top: -16px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose h1 + .spacer,
|
||||
.unsend-editor .unsend-prose h2 + .spacer,
|
||||
.unsend-editor .unsend-prose h3 + .spacer {
|
||||
margin-top: -12px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose ol + .spacer,
|
||||
.unsend-editor .unsend-prose ul + .spacer {
|
||||
margin-top: -20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose img + .spacer {
|
||||
margin-top: -32px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .node-button + .spacer,
|
||||
.unsend-editor .unsend-prose .node-linkCard + .spacer,
|
||||
.unsend-editor .unsend-prose footer + .spacer {
|
||||
margin-top: -20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .node-button,
|
||||
.unsend-editor .unsend-prose .node-linkCard {
|
||||
margin-top: 0;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .node-image {
|
||||
line-height: 0;
|
||||
margin-top: 0;
|
||||
margin-bottom: 32px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.unsend-editor .unsend-prose .node-image + .spacer {
|
||||
margin-top: -32px;
|
||||
}
|
||||
|
||||
/* Remove code ::before and ::after */
|
||||
.unsend-editor .unsend-prose code::before,
|
||||
.unsend-editor .unsend-prose code::after {
|
||||
content: none;
|
||||
}
|
||||
|
||||
.ProseMirror {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.ProseMirror {
|
||||
word-wrap: break-word;
|
||||
white-space: pre-wrap;
|
||||
white-space: break-spaces;
|
||||
-webkit-font-variant-ligatures: none;
|
||||
font-variant-ligatures: none;
|
||||
font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
|
||||
}
|
||||
|
||||
.ProseMirror:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.ProseMirror .is-editor-empty:first-child::before {
|
||||
content: attr(data-placeholder);
|
||||
float: left;
|
||||
color: #adb5bd;
|
||||
pointer-events: none;
|
||||
height: 0;
|
||||
}
|
||||
.ProseMirror .is-empty::before {
|
||||
content: attr(data-placeholder);
|
||||
float: left;
|
||||
color: #adb5bd;
|
||||
pointer-events: none;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
.ProseMirror-selectednode {
|
||||
@apply bg-slate-50;
|
||||
}
|
||||
|
||||
/* Chrome, Safari and Opera */
|
||||
.unsend-no-scrollbar::-webkit-scrollbar {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.unsend-no-scrollbar {
|
||||
-ms-overflow-style: none; /* IE and Edge */
|
||||
scrollbar-width: none; /* Firefox */
|
||||
}
|
||||
|
||||
.unsend-editor .react-colorful__alpha {
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
.unsend-editor .react-colorful__saturation,
|
||||
.unsend-editor .react-colorful__hue,
|
||||
.unsend-editor .react-colorful__alpha {
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.unsend-editor .react-colorful__hue,
|
||||
.unsend-editor .react-colorful__alpha {
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
.unsend-editor .react-colorful__pointer {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
.prosemirror-dropcursor-block {
|
||||
height: 1px !important;
|
||||
background-color: #555 !important;
|
||||
}
|
||||
|
||||
.unsend-editor .footer {
|
||||
font-size: 0.8rem;
|
||||
}
|
Reference in New Issue
Block a user