From 02569619f987644b0eb43aecbb97f57a8b582fd9 Mon Sep 17 00:00:00 2001 From: Ephraim Atta-Duncan Date: Wed, 21 Jun 2023 13:20:07 +0000 Subject: [PATCH] feat: make email template reusable for signed, invite and completed --- apps/web/public/static/clock.png | Bin 0 -> 541 bytes apps/web/public/static/completed.png | Bin 0 -> 553 bytes apps/web/public/static/document.png | Bin 0 -> 16295 bytes apps/web/public/static/download.png | Bin 0 -> 346 bytes apps/web/public/static/logo.png | Bin 0 -> 4119 bytes apps/web/public/static/review.png | Bin 0 -> 332 bytes apps/web/src/app/send/page.tsx | 2 + package-lock.json | 1503 +++++++++++++++++ packages/lib/mail/template.tsx | 198 ++- .../lib/server-only/document/send-document.ts | 18 +- 10 files changed, 1662 insertions(+), 59 deletions(-) create mode 100644 apps/web/public/static/clock.png create mode 100644 apps/web/public/static/completed.png create mode 100644 apps/web/public/static/document.png create mode 100644 apps/web/public/static/download.png create mode 100644 apps/web/public/static/logo.png create mode 100644 apps/web/public/static/review.png diff --git a/apps/web/public/static/clock.png b/apps/web/public/static/clock.png new file mode 100644 index 0000000000000000000000000000000000000000..8a539303d4f6ffe8fd217012bdb6bcc2ca1555cd GIT binary patch literal 541 zcmV+&0^+V6wfa`|^jLD%KMoQJ8&r%V%OKlSTZ!PWq` z{?MMq(>5VFsC5eO0}^0Lw^uLA%@|2 zoqvuA(E+XBAOnhcM~L=J=3;f=EYGe(pv$PKb+~_Y!V?M7jw{)qRL+c&m#6!|lkj0j zF!#l+^u{L0vJ`qkf(L2Jzs|xTC;|J(eZ7fpFqRUNo-8#F9BC}6#gLOsEbGuqZ1^_|uP-7m2^BWqiGz#OuyOso`HqkQ^MSOs f5y_TGWy$&hFv7_0*%)RP00000NkvXXu0mjfp~mf7 literal 0 HcmV?d00001 diff --git a/apps/web/public/static/completed.png b/apps/web/public/static/completed.png new file mode 100644 index 0000000000000000000000000000000000000000..4f1664c28640cc66525167bd7bc952655d61aca6 GIT binary patch literal 553 zcmV+^0@nSBP) z*Q$vLy!Lk5A6U;o;1Ezn0W>Z*o*Gd%u0upQ1U%wnC*}KDFZe z%GvaIz9EqfU{#U;F*i&qD^WX%s_KRYEQ(U*D9|=21(Py`BcWPJEq&e(2Ub1gMj0n@ zT*zh4xbcy#lByz68nnJ;@IqphX{azzXzp&s&a2GREfAIDKM5>jM}^GDf6;P3^36RD z{%IGl?j4WNjra(St0A3wtn(tU+#!Nv*~+ksan_bwCjdLeEqgQO74VQ3i3|42ncAxO z%s6QI{*G^1^700000NkvXXu0mjf*c9${ literal 0 HcmV?d00001 diff --git a/apps/web/public/static/document.png b/apps/web/public/static/document.png new file mode 100644 index 0000000000000000000000000000000000000000..8baa22639808d33d68cd5ebc7e2451052a8a41ec GIT binary patch literal 16295 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

;HG6$5dje@nS!Jv~z8tNDRt<}NOJs__` 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 literal 0 HcmV?d00001 diff --git a/apps/web/public/static/logo.png b/apps/web/public/static/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..4813aaaef05042bf9978542bb9d5f4c331ef4ac7 GIT binary patch literal 4119 zcmV+y5a{oTP)C@ZM6{yj=I7|Zl z-aQ6|N~Kb%JR9_5=y2-L{m_l^DwRs5^2B+Ev_tp97L`h+QhBnFlMao{Z!wI{4Zf9@pO63U>a_V~wYwc66#^cqwS1OfCVg7-;`dQ>Wv$_j9fU1J!jhv>b(?*CtKzMLXKVQ`#pCdb@TkBZ3rI5Vxe z98iuPL*D1sSEW*^%z~CZrpq8Ss@6E)4CT;-mQvr%O7Q;&9<`gG!}R$>eq7+?&b&4}tS;sYM|T${jIA}KV3H8>;J%$#`aC;!r*@Amu>JliNcYOCq z&&FOF{xz6W{|cw|xaKufcskci;WRI6Kj_jeer;2u;vV`mVrh!&SP%Jm^AkjY>Kz z+G4)3xPJ%LHVMP=b%o&%Z1!x5m6qY;L(7IURi}bjb8ITgVJs3*s!nU!Dk!LJZFHT6*T-!&SJ#d@Q3| zvgEWw8DpJewB(RVH5Lj@A}zf@)@RS?G65MQklA8>qm`tQ3UnP5cofQX#8P{);M-5m zNIg{U4U>n>0{yWd@jD7->snIQKhXhUE6kuqSv1a#T?OJZuU8l+Ju>u4nQVi{RoApHiHFSDd0 zEio$!rJHo_Do|i6%wUJ|Tm|y;8DYm}1Nm99nUaF5XoY2P&M|fo4dlkqjX~;&B}Ut2 zq@NpfAU%!wjoW9>=rREr1HO)zl(|$VnQ8|+p$;lbGX`n7Vs>f;X_Y9qj-+n{vR}r! zxgFzM$o8um#Muh-?dqUI-o8roI`6#5vGv^dfl5$V2Zi$sy^F-%d+{vRfvaSNWpKT^ ziO6+=ywTd8-{9zXBamHcv}7k1r}aZ=?`Nj1F+aaPd*s)-fxMwoUYwJlzjM~z??!p2 zqZ7)SaFIp%57`SK+ec|4=~~G09V+)7eR+*}jwQsN(Pc0%&oNoT3guIEC%Ka!?jrI0N?)VXS!x&@d*nAbZWJQfbd}td z6RLLuzD_iFI49+IXqt)NK+Ycdjn05Cw?&#ppyQg+(INkuZDz=X;A|$;saWu3mZUGK zJKxbMCVmGQl=g=)pS!V4Zbr7rOjBYfgcj&I8}u2-8sfAvFZoaqaO%8bjaGwikW1kz zS78}@Hg-$xxr<)#%Z4VNId2Jj>UUP zXy$wm`Kt)-nDf*yLTmIXeua!4gA-~a;Q`N!7QFp&=YI!J&z%1*aP0d;{CniJoBPB$ zh5Y5vR+v7;<7~oD`#~T>&T)%!`-VR-=gH=K$l$*3e9{(Qta-YWk?~y;i;M(UW$l>ad%BwKe zAvt!+?9VtlMmkA%zr6JX+cDm|i6ZLZrmy5Ji5m4!FVN2jI}86kCm-=VdBdFVz2Dz6 z@mu6U9YM+%)#QJ!QTO<^UhwrCP=fP2lua+kH%MkFOYjG$DK=xco*Z)yo*Z%uz9Ul1 z`5tl}#`r1`XEVn6b18 z;d=NUdE`1)F8;LRQB2$(m8VAOcKX!P<7lzWH&FXD7&^ZWvX{4|=#htb`RUa}z#pMo zgq=H0nWw$5LitSxh0_Y_5uU13{;YTGEuN=SQQ!^XAs|zdI>LV0JT*uAHLxf*@G}@3 z{1%r%+&*7T{%;?{f4%b-=bNMtfp}{hOvqVNzN~kQE?A4_iDu5bHE{n}r6Q%;%Yeo3 zWwsV&uy|tMDE2?JK}$0JM&usno1{I~MG4ODy<_CmEuJsjT}Gje7V*?fh+@wFfpWSk zmxr^L9%TncJ)SP)&uD+pEwB85WzW7?9M|5Z?<|*gpo2ahpvFdE{)~-h)q@?BZ*T5>-ZAuFNk9iDQ3@Zwr6#PUE<7>b_Ad zh5S-G`Q3xx?Bv>!A3sIXu@m+&{ClEE#S}!&FGYF3`^5Pc&)cb!^W*MB=y5(nA;>6F zBYo~ZT0b9}iIY2PBl~F~gJz50Mb7<(ysvcS3^WwJ9k@Fy6e=ywZB}C#)pN6I?fs_q zq7w0QIt?v|^Z)kwIuYrCIoIQuX(}*1{q*}puAhV$&Y4UbBK4BjlixjF?%JTcWmGZo z+Q@OPw|65C$*AC35NE3AVa%6CT4xI$h4gJ`^q|w!vG+*h?5btrZSd_mGg>ZCk#lrB zcNF<8(Bk+|6nDF%!qGmdu2b!b{N^oWaGlD@efF<0AG+D!Es0P=3T3dz`CT*)g=J3d zxuYTb3|)`-E`AICK@Dyh&B1N{v^eiz$#6B&X_G_lk%lwc*845#=(pf)=L5byTBPfn z&Pg3RIW4-z4`XmkgFTKN|5F*1QC<~>w(=d0ZRTnW} zmWgj6hf7;~@wqprTJR|F_Ttkp@g?tz;dC63G4tHxv~h-TJ&wdtxe@&hc*COfEaD^4 z4tWir6o(53N!cU~mBKb6`(7a1CDP{_jFUHkw6~Di!rXM7{CgbVWxj*_BL)Y&JjYI0 z$lGfO1-{MiW~6H&r(<+!Fa9l-m6`07v$-Z9rv>R!Sxi7yLFUwV$l%Tsz7ohN45KTJ z@P+>zDU_QgDPcNujbSN=3x?Piqe57rPI71s2195dcW@?=wnE<5n3}O{OViduc}b(n zP2V8Df#>FbS3pNBAJV}TUnve33UlfuXL%6O&!h92&(XlI_qgf!khRs+;&O%Pd=+Xh1wd~Z{QVfOlJ|7vJWxPscruBZ` zAdd$OPj~$sIZwxbME>TApO1UIEauh=ZT|Eqi+_)A3~I?Y`5d z#X9d)lG@DIfb8@m%F|}XEZn;MQG%sFs#`(Gj+Jz*LGfhF8#re z!-|3GMq?QYVYCY}kT$;mX}(Tt8=0UeTjlpMuUdMTT+ zjJ$=Mj?twfa+0<3wQO~RawB((1!$xTL{6lcgdOJJ7reo7?bn44>59;}EQb{Wl~bcE zc0qn<&2GtvOJkYwlEcmIP;Qa8Avzu97$&X>q{qoL;L(hZT>%}Ed=LuDu9?(kEXp}6 zF29H_<%EdswY2?00uQ4Bmp}};CG@3vfhRK^jxNKZqa%e`!u7D0nKBmxqRnBNO*Jdor zwds!0r3E?^^6d10fj!NUV&uO}@ePq?O)Ui7hju-q5&U-EG{kBLu_mESc7Qz+okMVem`T>VZrBb;l z7U3zSKUKTJ`9^5&RIE~|R4Nz3BD^kTFpTJL5nflas8lMI%9F)Hz8OK`sowWmsZ=VJ z2^##4Z->j@vRJ89DwPE&47c?7_ZZV}i~4chN~KaMPVQYXOVAh`eZBRpQmIr{kBd7srqa#m5Ppe=KTM{Vz zk*$Kc@4&?`Y;p&sPb}lyu+cqXF=MCfZI>+y3f|)TmiX51Kj-s{L*mn(1Eq7Un&cwI zROWnMlHYH_e2j^IqaEV{Ze}Ny!g-%-%kS3l=Wl$s`jwTqlgKm0V`AwpUzHBdeXqZe zdz1BrMcfswJ`XBC3cDmO5_lQ4uqCUruVZ7Vg~&+;hxlm|y-sTE;t4IE!*kMTpXu{m zZqI6ptdf5@*Rd}0UG>lVbbK4*Oe2L*HkR+!T_P=a%rj?oi7jFDwB**9x_H5+Ju*K1 awhXbUp;`LEi=F{J%i!ti=d#Wzp$PzmDR*)J literal 0 HcmV?d00001 diff --git a/apps/web/src/app/send/page.tsx b/apps/web/src/app/send/page.tsx index fe21ff257..103dacd7d 100644 --- a/apps/web/src/app/send/page.tsx +++ b/apps/web/src/app/send/page.tsx @@ -15,6 +15,8 @@ export default function Send() { console.log('clicked'); await sendMail({ email: 'duncan@documenso.com' }); + + alert('sent'); }} > Send diff --git a/package-lock.json b/package-lock.json index 5dee0021f..2e7fc4289 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1788,11 +1788,245 @@ "@babel/runtime": "^7.13.10" } }, + "node_modules/@react-email/body": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@react-email/body/-/body-0.0.2.tgz", + "integrity": "sha512-SqZrZdxZlH7viwnrLvrMnVzOKpiofVAtho09bmm2siDzy0VMDGItXRzUPLcpg9vcbVJCHZRCIKoNXqA+PtokzQ==", + "dependencies": { + "react": "18.2.0" + } + }, + "node_modules/@react-email/button": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@react-email/button/-/button-0.0.9.tgz", + "integrity": "sha512-eYWQ1X4RFlkKYYSPgSrT6rk98wuLOieEAGENrp9j37t1v/1C+jMmBu0UjZvwHsHWdbOMRjbVDFeMI/+MxWKSEg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/column": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/column/-/column-0.0.7.tgz", + "integrity": "sha512-B29wVXyIcuVprgGpLkR23waPh/twlqmugZQsCKk05JlMCQ80/Puv4Lgj4dRsIJzgyTLMwG6xq17+Uxc5iGfuaQ==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/components": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/components/-/components-0.0.7.tgz", + "integrity": "sha512-GpRKV8E7EvK9OPf61f5Z8hliB3p0hTot8tslmEUVCTtX7tdL0wM2YEcZiDWU4PJcudJ/QWHJ7Y5wGzNEARcooA==", + "dependencies": { + "@react-email/body": "0.0.2", + "@react-email/button": "0.0.9", + "@react-email/column": "0.0.7", + "@react-email/container": "0.0.8", + "@react-email/font": "0.0.2", + "@react-email/head": "0.0.5", + "@react-email/heading": "0.0.8", + "@react-email/hr": "0.0.5", + "@react-email/html": "0.0.4", + "@react-email/img": "0.0.5", + "@react-email/link": "0.0.5", + "@react-email/preview": "0.0.6", + "@react-email/render": "0.0.7", + "@react-email/row": "0.0.5", + "@react-email/section": "0.0.9", + "@react-email/tailwind": "0.0.8", + "@react-email/text": "0.0.5", + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/container": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/container/-/container-0.0.8.tgz", + "integrity": "sha512-MQZQxvTOoLWjJR+Jm689jltm0I/mtZbEaDnwZbNkkHKgccr++wwb9kOKMgXG777Y7tGa1JATAsZpvFYiCITwUg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/font": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@react-email/font/-/font-0.0.2.tgz", + "integrity": "sha512-mmkyOCAcbgytE7DfIuOBVG1YVDUZY9rPCor4o7pUEzGJiU2y/TNuV8CgNPSU/VgXeBKL/94QDjB62OrGHlFNMQ==", + "dependencies": { + "react": "18.2.0" + } + }, + "node_modules/@react-email/head": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/head/-/head-0.0.5.tgz", + "integrity": "sha512-s84OxJxZMee2z5b1a+RVwY1NOSUNNf1ecjPf6n64aZmMNcNUyn4gOl7RO6xbfBrZko7TigBwsFB1Cgjxtn/ydg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/heading": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/heading/-/heading-0.0.8.tgz", + "integrity": "sha512-7atATmoHBHTk7hFYFsFFzOIBV3u1zPpsSOWkLBojdjSUdenpk2SbX8GP8/3aBhWl/tuFX9RBGcu1Xes+ZijFLg==", + "dependencies": { + "@radix-ui/react-slot": "1.0.0", + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/heading/node_modules/@radix-ui/react-slot": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.0.tgz", + "integrity": "sha512-3mrKauI/tWXo1Ll+gN5dHcxDPdm/Df1ufcDLCecn+pnCIVcdWE7CujXo8QaXOWRJyZyQWWbpB8eFwHzWXlv5mQ==", + "dependencies": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-compose-refs": "1.0.0" + }, + "peerDependencies": { + "react": "^16.8 || ^17.0 || ^18.0" + } + }, + "node_modules/@react-email/hr": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/hr/-/hr-0.0.5.tgz", + "integrity": "sha512-nwB8GmSdvPlR/bWjDS07yHtgdfJqtvCaPXee3SVUY69YYP7NeDO/VACJlgrS9V2l79bj1lUpH0MJMU6MNAk5FQ==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/html": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@react-email/html/-/html-0.0.4.tgz", + "integrity": "sha512-7tRYSnudYAWez+NkPWOM8yLZH7EuYFtYdiLPnzpD+pf4cdk16Gz4up531DaIX6dNBbfbyEFpQxhXZxGeJ5ZkfQ==", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/img": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/img/-/img-0.0.5.tgz", + "integrity": "sha512-9ziFgBfrIAL+DpVlsraFcd2KwsTRyobLpqTnoiBYCcVZGod59xbYkmsmB3CbUosmLwPYg6AeD7Q7e+hCiwkWgg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/link": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/link/-/link-0.0.5.tgz", + "integrity": "sha512-z+QW9f4gXBdyfhl7iYMY3td+rXKeZYK/2AGElEMsxVoywn5D0b6cF8m5w2jbf0U2V3enT+zy9yc1R6AyT59NOg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/preview": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@react-email/preview/-/preview-0.0.6.tgz", + "integrity": "sha512-mXDCc3NGpm/4W7gowBtjsTxYXowLNOLsJsYhIfrsjNJWGlVhVFB9uEHm55LjBLpxSG020g6/8LIrpJU6g22qvg==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/render": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/render/-/render-0.0.7.tgz", + "integrity": "sha512-hMMhxk6TpOcDC5qnKzXPVJoVGEwfm+U5bGOPH+MyTTlx0F02RLQygcATBKsbP7aI/mvkmBAZoFbgPIHop7ovug==", + "dependencies": { + "html-to-text": "9.0.3", + "pretty": "2.0.0", + "react": "18.2.0", + "react-dom": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/row": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/row/-/row-0.0.5.tgz", + "integrity": "sha512-dir5l1M7Z/1BQqQkUrKUPIIDPt6ueEf6ScMGoBOcUh+VNNqmnqJE2Q2CH5X3w2uo6a5X7tnVhoJHGa2KTKe8Sw==", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/section": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@react-email/section/-/section-0.0.9.tgz", + "integrity": "sha512-3EbcWJ1jUZrzquWSvXrv8Hbk9V+BGvLcMWQIli4NdIpQlddmlGKUYfXU2mB2d2pf+5ojqkGcFZZ9fWxycB84jQ==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/tailwind": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/tailwind/-/tailwind-0.0.8.tgz", + "integrity": "sha512-0BLjD5GpiyBK7YDlaDrjHIpj9eTrrZrMJud3f1UPoCZhS+0S/M8LcR8WMbQsR+8/aLGmiy4F4TGZuRQcsJEsFw==", + "dependencies": { + "html-react-parser": "3.0.9", + "react": "18.2.0", + "react-dom": "18.2.0", + "tw-to-css": "0.0.11" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@react-email/text": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/text/-/text-0.0.5.tgz", + "integrity": "sha512-LXhHiaC6oRRsNAfOzJDos4wQA22eIdVJvR6G7uu4QzUvYNOAatDMf89jRQcKGrxX7InkS640v8sHd9jl5ztM5w==", + "dependencies": { + "react": "18.2.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/@rushstack/eslint-patch": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==" }, + "node_modules/@selderee/plugin-htmlparser2": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.10.0.tgz", + "integrity": "sha512-gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA==", + "dependencies": { + "domhandler": "^5.0.3", + "selderee": "^0.10.0" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/@sendgrid/client": { "version": "6.5.5", "resolved": "https://registry.npmjs.org/@sendgrid/client/-/client-6.5.5.tgz", @@ -2350,6 +2584,24 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dependencies": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -3151,6 +3403,28 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, + "node_modules/condense-newlines": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", + "integrity": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-whitespace": "^0.3.0", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -3378,6 +3652,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -3412,6 +3694,22 @@ "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" }, + "node_modules/detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "dependencies": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + }, + "bin": { + "detective": "bin/detective.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/dezalgo": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", @@ -3458,6 +3756,57 @@ "node": ">=6.0.0" } }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, "node_modules/dotenv": { "version": "16.0.3", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", @@ -3500,6 +3849,42 @@ "safer-buffer": "^2.1.0" } }, + "node_modules/editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "dependencies": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "bin": { + "editorconfig": "bin/editorconfig" + } + }, + "node_modules/editorconfig/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/editorconfig/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/editorconfig/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, "node_modules/electron-to-chromium": { "version": "1.4.397", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.397.tgz", @@ -3533,6 +3918,17 @@ "node": ">=8.6" } }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -4422,6 +4818,17 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -4986,6 +5393,62 @@ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, + "node_modules/html-dom-parser": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-3.1.3.tgz", + "integrity": "sha512-fI0yyNlIeSboxU+jnrA4v8qj4+M8SI9/q6AKYdwCY2qki22UtKCDTxvagHniECu7sa5/o2zFRdLleA67035lsA==", + "dependencies": { + "domhandler": "5.0.3", + "htmlparser2": "8.0.1" + } + }, + "node_modules/html-react-parser": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-3.0.9.tgz", + "integrity": "sha512-gOPZmaCMXNYu7Y9+58k2tLhTMXQ+QN8ctNFijzLuBxJaLZ6TsN+tUpN+MhbI+6nGaBCRGT2rpw6y/AqkTFZckg==", + "dependencies": { + "domhandler": "5.0.3", + "html-dom-parser": "3.1.3", + "react-property": "2.0.0", + "style-to-js": "1.1.3" + }, + "peerDependencies": { + "react": "0.14 || 15 || 16 || 17 || 18" + } + }, + "node_modules/html-to-text": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-9.0.3.tgz", + "integrity": "sha512-hxDF1kVCF2uw4VUJ3vr2doc91pXf2D5ngKcNviSitNkhP9OMOaJkDrFIFL6RMvko7NisWTEiqGpQ9LAxcVok1w==", + "dependencies": { + "@selderee/plugin-htmlparser2": "^0.10.0", + "deepmerge": "^4.2.2", + "dom-serializer": "^2.0.0", + "htmlparser2": "^8.0.1", + "selderee": "^0.10.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, "node_modules/http-errors": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", @@ -5091,6 +5554,16 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, "node_modules/internal-slot": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", @@ -5183,6 +5656,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, "node_modules/is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -5233,6 +5711,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -5464,6 +5950,14 @@ "url": "https://github.com/sponsors/mesqueeb" } }, + "node_modules/is-whitespace": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", + "integrity": "sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -5534,6 +6028,76 @@ "url": "https://github.com/sponsors/panva" } }, + "node_modules/js-beautify": { + "version": "1.14.8", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.8.tgz", + "integrity": "sha512-4S7HFeI9YfRvRgKnEweohs0tgJj28InHVIj4Nl8Htf96Y6pHg3+tJrmo4ucAM9f7l4SHbFI3IvFAZ2a1eQPbyg==", + "dependencies": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^8.1.0", + "nopt": "^6.0.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/js-beautify/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-beautify/node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/js-sdsl": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", @@ -5639,6 +6203,17 @@ "node": ">=4.0" } }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/language-subtag-registry": { "version": "0.3.22", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", @@ -5652,6 +6227,14 @@ "language-subtag-registry": "~0.3.2" } }, + "node_modules/leac": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/leac/-/leac-0.6.0.tgz", + "integrity": "sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==", + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -6747,6 +7330,18 @@ "node": ">=4" } }, + "node_modules/parseley": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.11.0.tgz", + "integrity": "sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==", + "dependencies": { + "leac": "^0.6.0", + "peberminta": "^0.8.0" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -6823,6 +7418,14 @@ "canvas": "^2.11.2" } }, + "node_modules/peberminta": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/peberminta/-/peberminta-0.8.0.tgz", + "integrity": "sha512-YYEs+eauIjDH5nUEGi18EohWE0nV2QbGTqmxQcqgZ/0g+laPCQmuIqq7EBLVi9uim9zMgfJv0QBZEnQ3uHw/Tw==", + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/perfect-freehand": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/perfect-freehand/-/perfect-freehand-1.2.0.tgz", @@ -6904,6 +7507,27 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-css-variables": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/postcss-css-variables/-/postcss-css-variables-0.18.0.tgz", + "integrity": "sha512-lYS802gHbzn1GI+lXvy9MYIYDuGnl1WB4FTKoqMQqJ3Mab09A7a/1wZvGTkCEZJTM8mSbIyb1mJYn8f0aPye0Q==", + "dependencies": { + "balanced-match": "^1.0.0", + "escape-string-regexp": "^1.0.3", + "extend": "^3.0.1" + }, + "peerDependencies": { + "postcss": "^8.2.6" + } + }, + "node_modules/postcss-css-variables/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/postcss-import": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", @@ -7142,6 +7766,19 @@ } } }, + "node_modules/pretty": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", + "integrity": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", + "dependencies": { + "condense-newlines": "^0.2.1", + "extend-shallow": "^2.0.1", + "js-beautify": "^1.6.12" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/pretty-format": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz", @@ -7181,6 +7818,16 @@ "react-is": "^16.13.1" } }, + "node_modules/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -7227,6 +7874,17 @@ } ] }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/railroad-diagrams": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", @@ -7360,6 +8018,11 @@ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-property": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz", + "integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==" + }, "node_modules/react-remove-scroll": { "version": "2.5.5", "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz", @@ -7821,6 +8484,17 @@ "loose-envify": "^1.1.0" } }, + "node_modules/selderee": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.10.0.tgz", + "integrity": "sha512-DEL/RW/f4qLw/NrVg97xKaEBC8IpzIG2fvxnzCp3Z4yk4jQ3MXom+Imav9wApjxX2dfS3eW7x0DXafJr85i39A==", + "dependencies": { + "parseley": "^0.11.0" + }, + "funding": { + "url": "https://ko-fi.com/killymxi" + } + }, "node_modules/semver": { "version": "7.5.1", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", @@ -7886,6 +8560,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" + }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -8223,6 +8902,22 @@ "node": ">=12.*" } }, + "node_modules/style-to-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.3.tgz", + "integrity": "sha512-zKI5gN/zb7LS/Vm0eUwjmjrXWw8IMtyA8aPBJZdYiQTXj4+wQ3IucOLIOnF7zCHxvW8UhIGh/uZh/t9zEHXNTQ==", + "dependencies": { + "style-to-object": "0.4.1" + } + }, + "node_modules/style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, "node_modules/styled-jsx": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", @@ -8709,6 +9404,171 @@ "win32" ] }, + "node_modules/tw-to-css": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/tw-to-css/-/tw-to-css-0.0.11.tgz", + "integrity": "sha512-uIJuEBIwyHzZg9xyGyEgDWHIkbAwEC4bhEHQ4THPuN5SToR7Zlhes5ffMjqtrv+WdtTmudTHTdc9VwUldy0FxQ==", + "dependencies": { + "postcss": "8.4.21", + "postcss-css-variables": "0.18.0", + "tailwindcss": "3.2.7" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/tw-to-css/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/tw-to-css/node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/tw-to-css/node_modules/postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/tw-to-css/node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/tw-to-css/node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/tw-to-css/node_modules/postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/tw-to-css/node_modules/tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "dependencies": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=12.13.0" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/tw-to-css/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", @@ -9041,6 +9901,14 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9257,6 +10125,8 @@ "@documenso/prisma": "*", "@next-auth/prisma-adapter": "^1.0.6", "@pdf-lib/fontkit": "^1.1.1", + "@react-email/components": "^0.0.7", + "@react-email/render": "^0.0.7", "@upstash/redis": "^1.20.6", "bcrypt": "^5.1.0", "next": "13.4.1", @@ -9756,6 +10626,8 @@ "@documenso/prisma": "*", "@next-auth/prisma-adapter": "^1.0.6", "@pdf-lib/fontkit": "^1.1.1", + "@react-email/components": "^0.0.7", + "@react-email/render": "^0.0.7", "@types/bcrypt": "^5.0.0", "@upstash/redis": "^1.20.6", "bcrypt": "^5.1.0", @@ -10916,11 +11788,193 @@ "@babel/runtime": "^7.13.10" } }, + "@react-email/body": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@react-email/body/-/body-0.0.2.tgz", + "integrity": "sha512-SqZrZdxZlH7viwnrLvrMnVzOKpiofVAtho09bmm2siDzy0VMDGItXRzUPLcpg9vcbVJCHZRCIKoNXqA+PtokzQ==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/button": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@react-email/button/-/button-0.0.9.tgz", + "integrity": "sha512-eYWQ1X4RFlkKYYSPgSrT6rk98wuLOieEAGENrp9j37t1v/1C+jMmBu0UjZvwHsHWdbOMRjbVDFeMI/+MxWKSEg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/column": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/column/-/column-0.0.7.tgz", + "integrity": "sha512-B29wVXyIcuVprgGpLkR23waPh/twlqmugZQsCKk05JlMCQ80/Puv4Lgj4dRsIJzgyTLMwG6xq17+Uxc5iGfuaQ==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/components": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/components/-/components-0.0.7.tgz", + "integrity": "sha512-GpRKV8E7EvK9OPf61f5Z8hliB3p0hTot8tslmEUVCTtX7tdL0wM2YEcZiDWU4PJcudJ/QWHJ7Y5wGzNEARcooA==", + "requires": { + "@react-email/body": "0.0.2", + "@react-email/button": "0.0.9", + "@react-email/column": "0.0.7", + "@react-email/container": "0.0.8", + "@react-email/font": "0.0.2", + "@react-email/head": "0.0.5", + "@react-email/heading": "0.0.8", + "@react-email/hr": "0.0.5", + "@react-email/html": "0.0.4", + "@react-email/img": "0.0.5", + "@react-email/link": "0.0.5", + "@react-email/preview": "0.0.6", + "@react-email/render": "0.0.7", + "@react-email/row": "0.0.5", + "@react-email/section": "0.0.9", + "@react-email/tailwind": "0.0.8", + "@react-email/text": "0.0.5", + "react": "18.2.0" + } + }, + "@react-email/container": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/container/-/container-0.0.8.tgz", + "integrity": "sha512-MQZQxvTOoLWjJR+Jm689jltm0I/mtZbEaDnwZbNkkHKgccr++wwb9kOKMgXG777Y7tGa1JATAsZpvFYiCITwUg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/font": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@react-email/font/-/font-0.0.2.tgz", + "integrity": "sha512-mmkyOCAcbgytE7DfIuOBVG1YVDUZY9rPCor4o7pUEzGJiU2y/TNuV8CgNPSU/VgXeBKL/94QDjB62OrGHlFNMQ==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/head": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/head/-/head-0.0.5.tgz", + "integrity": "sha512-s84OxJxZMee2z5b1a+RVwY1NOSUNNf1ecjPf6n64aZmMNcNUyn4gOl7RO6xbfBrZko7TigBwsFB1Cgjxtn/ydg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/heading": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/heading/-/heading-0.0.8.tgz", + "integrity": "sha512-7atATmoHBHTk7hFYFsFFzOIBV3u1zPpsSOWkLBojdjSUdenpk2SbX8GP8/3aBhWl/tuFX9RBGcu1Xes+ZijFLg==", + "requires": { + "@radix-ui/react-slot": "1.0.0", + "react": "18.2.0" + }, + "dependencies": { + "@radix-ui/react-slot": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.0.tgz", + "integrity": "sha512-3mrKauI/tWXo1Ll+gN5dHcxDPdm/Df1ufcDLCecn+pnCIVcdWE7CujXo8QaXOWRJyZyQWWbpB8eFwHzWXlv5mQ==", + "requires": { + "@babel/runtime": "^7.13.10", + "@radix-ui/react-compose-refs": "1.0.0" + } + } + } + }, + "@react-email/hr": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/hr/-/hr-0.0.5.tgz", + "integrity": "sha512-nwB8GmSdvPlR/bWjDS07yHtgdfJqtvCaPXee3SVUY69YYP7NeDO/VACJlgrS9V2l79bj1lUpH0MJMU6MNAk5FQ==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/html": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@react-email/html/-/html-0.0.4.tgz", + "integrity": "sha512-7tRYSnudYAWez+NkPWOM8yLZH7EuYFtYdiLPnzpD+pf4cdk16Gz4up531DaIX6dNBbfbyEFpQxhXZxGeJ5ZkfQ==" + }, + "@react-email/img": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/img/-/img-0.0.5.tgz", + "integrity": "sha512-9ziFgBfrIAL+DpVlsraFcd2KwsTRyobLpqTnoiBYCcVZGod59xbYkmsmB3CbUosmLwPYg6AeD7Q7e+hCiwkWgg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/link": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/link/-/link-0.0.5.tgz", + "integrity": "sha512-z+QW9f4gXBdyfhl7iYMY3td+rXKeZYK/2AGElEMsxVoywn5D0b6cF8m5w2jbf0U2V3enT+zy9yc1R6AyT59NOg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/preview": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@react-email/preview/-/preview-0.0.6.tgz", + "integrity": "sha512-mXDCc3NGpm/4W7gowBtjsTxYXowLNOLsJsYhIfrsjNJWGlVhVFB9uEHm55LjBLpxSG020g6/8LIrpJU6g22qvg==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/render": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/@react-email/render/-/render-0.0.7.tgz", + "integrity": "sha512-hMMhxk6TpOcDC5qnKzXPVJoVGEwfm+U5bGOPH+MyTTlx0F02RLQygcATBKsbP7aI/mvkmBAZoFbgPIHop7ovug==", + "requires": { + "html-to-text": "9.0.3", + "pretty": "2.0.0", + "react": "18.2.0", + "react-dom": "18.2.0" + } + }, + "@react-email/row": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/row/-/row-0.0.5.tgz", + "integrity": "sha512-dir5l1M7Z/1BQqQkUrKUPIIDPt6ueEf6ScMGoBOcUh+VNNqmnqJE2Q2CH5X3w2uo6a5X7tnVhoJHGa2KTKe8Sw==" + }, + "@react-email/section": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/@react-email/section/-/section-0.0.9.tgz", + "integrity": "sha512-3EbcWJ1jUZrzquWSvXrv8Hbk9V+BGvLcMWQIli4NdIpQlddmlGKUYfXU2mB2d2pf+5ojqkGcFZZ9fWxycB84jQ==", + "requires": { + "react": "18.2.0" + } + }, + "@react-email/tailwind": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@react-email/tailwind/-/tailwind-0.0.8.tgz", + "integrity": "sha512-0BLjD5GpiyBK7YDlaDrjHIpj9eTrrZrMJud3f1UPoCZhS+0S/M8LcR8WMbQsR+8/aLGmiy4F4TGZuRQcsJEsFw==", + "requires": { + "html-react-parser": "3.0.9", + "react": "18.2.0", + "react-dom": "18.2.0", + "tw-to-css": "0.0.11" + } + }, + "@react-email/text": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@react-email/text/-/text-0.0.5.tgz", + "integrity": "sha512-LXhHiaC6oRRsNAfOzJDos4wQA22eIdVJvR6G7uu4QzUvYNOAatDMf89jRQcKGrxX7InkS640v8sHd9jl5ztM5w==", + "requires": { + "react": "18.2.0" + } + }, "@rushstack/eslint-patch": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==" }, + "@selderee/plugin-htmlparser2": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.10.0.tgz", + "integrity": "sha512-gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA==", + "requires": { + "domhandler": "^5.0.3", + "selderee": "^0.10.0" + } + }, "@sendgrid/client": { "version": "6.5.5", "resolved": "https://registry.npmjs.org/@sendgrid/client/-/client-6.5.5.tgz", @@ -11294,6 +12348,21 @@ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "requires": {} }, + "acorn-node": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", + "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "requires": { + "acorn": "^7.0.0", + "acorn-walk": "^7.0.0", + "xtend": "^4.0.2" + } + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + }, "agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -11849,6 +12918,25 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, + "condense-newlines": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", + "integrity": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", + "requires": { + "extend-shallow": "^2.0.1", + "is-whitespace": "^0.3.0", + "kind-of": "^3.0.2" + } + }, + "config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "requires": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", @@ -12004,6 +13092,11 @@ "object-keys": "^1.1.1" } }, + "defined": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", + "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==" + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -12029,6 +13122,16 @@ "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" }, + "detective": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", + "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", + "requires": { + "acorn-node": "^1.8.2", + "defined": "^1.0.0", + "minimist": "^1.2.6" + } + }, "dezalgo": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", @@ -12069,6 +13172,39 @@ "esutils": "^2.0.2" } }, + "dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "requires": { + "domelementtype": "^2.3.0" + } + }, + "domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + } + }, "dotenv": { "version": "16.0.3", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", @@ -12102,6 +13238,38 @@ "safer-buffer": "^2.1.0" } }, + "editorconfig": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", + "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "requires": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + } + } + }, "electron-to-chromium": { "version": "1.4.397", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.397.tgz", @@ -12129,6 +13297,11 @@ "ansi-colors": "^4.1.1" } }, + "entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -12795,6 +13968,14 @@ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -13191,6 +14372,49 @@ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, + "html-dom-parser": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-3.1.3.tgz", + "integrity": "sha512-fI0yyNlIeSboxU+jnrA4v8qj4+M8SI9/q6AKYdwCY2qki22UtKCDTxvagHniECu7sa5/o2zFRdLleA67035lsA==", + "requires": { + "domhandler": "5.0.3", + "htmlparser2": "8.0.1" + } + }, + "html-react-parser": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/html-react-parser/-/html-react-parser-3.0.9.tgz", + "integrity": "sha512-gOPZmaCMXNYu7Y9+58k2tLhTMXQ+QN8ctNFijzLuBxJaLZ6TsN+tUpN+MhbI+6nGaBCRGT2rpw6y/AqkTFZckg==", + "requires": { + "domhandler": "5.0.3", + "html-dom-parser": "3.1.3", + "react-property": "2.0.0", + "style-to-js": "1.1.3" + } + }, + "html-to-text": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-9.0.3.tgz", + "integrity": "sha512-hxDF1kVCF2uw4VUJ3vr2doc91pXf2D5ngKcNviSitNkhP9OMOaJkDrFIFL6RMvko7NisWTEiqGpQ9LAxcVok1w==", + "requires": { + "@selderee/plugin-htmlparser2": "^0.10.0", + "deepmerge": "^4.2.2", + "dom-serializer": "^2.0.0", + "htmlparser2": "^8.0.1", + "selderee": "^0.10.0" + } + }, + "htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, "http-errors": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", @@ -13268,6 +14492,16 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, "internal-slot": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", @@ -13336,6 +14570,11 @@ "has-tostringtag": "^1.0.0" } }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, "is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -13362,6 +14601,11 @@ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==" }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -13503,6 +14747,11 @@ "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.9.tgz", "integrity": "sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==" }, + "is-whitespace": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", + "integrity": "sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==" + }, "is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -13557,6 +14806,55 @@ "resolved": "https://registry.npmjs.org/jose/-/jose-4.14.4.tgz", "integrity": "sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==" }, + "js-beautify": { + "version": "1.14.8", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.8.tgz", + "integrity": "sha512-4S7HFeI9YfRvRgKnEweohs0tgJj28InHVIj4Nl8Htf96Y6pHg3+tJrmo4ucAM9f7l4SHbFI3IvFAZ2a1eQPbyg==", + "requires": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^8.1.0", + "nopt": "^6.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "requires": { + "abbrev": "^1.0.0" + } + } + } + }, "js-sdsl": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", @@ -13640,6 +14938,14 @@ "object.assign": "^4.1.3" } }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + }, "language-subtag-registry": { "version": "0.3.22", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", @@ -13653,6 +14959,11 @@ "language-subtag-registry": "~0.3.2" } }, + "leac": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/leac/-/leac-0.6.0.tgz", + "integrity": "sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==" + }, "levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -14410,6 +15721,15 @@ "json-parse-better-errors": "^1.0.1" } }, + "parseley": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.11.0.tgz", + "integrity": "sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==", + "requires": { + "leac": "^0.6.0", + "peberminta": "^0.8.0" + } + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -14468,6 +15788,11 @@ "web-streams-polyfill": "^3.2.1" } }, + "peberminta": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/peberminta/-/peberminta-0.8.0.tgz", + "integrity": "sha512-YYEs+eauIjDH5nUEGi18EohWE0nV2QbGTqmxQcqgZ/0g+laPCQmuIqq7EBLVi9uim9zMgfJv0QBZEnQ3uHw/Tw==" + }, "perfect-freehand": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/perfect-freehand/-/perfect-freehand-1.2.0.tgz", @@ -14514,6 +15839,23 @@ "source-map-js": "^1.0.2" } }, + "postcss-css-variables": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/postcss-css-variables/-/postcss-css-variables-0.18.0.tgz", + "integrity": "sha512-lYS802gHbzn1GI+lXvy9MYIYDuGnl1WB4FTKoqMQqJ3Mab09A7a/1wZvGTkCEZJTM8mSbIyb1mJYn8f0aPye0Q==", + "requires": { + "balanced-match": "^1.0.0", + "escape-string-regexp": "^1.0.3", + "extend": "^3.0.1" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + } + } + }, "postcss-import": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", @@ -14610,6 +15952,16 @@ "integrity": "sha512-KgPcEnJeIijlMjsA6WwYgRs5rh3/q76oInqtMXBA/EMcamrcYJpyhtRhyX1ayT9hnHlHTuO8sIifHF10WuSDKg==", "requires": {} }, + "pretty": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", + "integrity": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", + "requires": { + "condense-newlines": "^0.2.1", + "extend-shallow": "^2.0.1", + "js-beautify": "^1.6.12" + } + }, "pretty-format": { "version": "3.8.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz", @@ -14638,6 +15990,16 @@ "react-is": "^16.13.1" } }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -14661,6 +16023,11 @@ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" + }, "railroad-diagrams": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", @@ -14751,6 +16118,11 @@ "tiny-warning": "^1.0.0" } }, + "react-property": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-property/-/react-property-2.0.0.tgz", + "integrity": "sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==" + }, "react-remove-scroll": { "version": "2.5.5", "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz", @@ -15047,6 +16419,14 @@ "loose-envify": "^1.1.0" } }, + "selderee": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.10.0.tgz", + "integrity": "sha512-DEL/RW/f4qLw/NrVg97xKaEBC8IpzIG2fvxnzCp3Z4yk4jQ3MXom+Imav9wApjxX2dfS3eW7x0DXafJr85i39A==", + "requires": { + "parseley": "^0.11.0" + } + }, "semver": { "version": "7.5.1", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", @@ -15094,6 +16474,11 @@ "object-inspect": "^1.9.0" } }, + "sigmund": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", + "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" + }, "signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -15341,6 +16726,22 @@ "qs": "^6.11.0" } }, + "style-to-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.3.tgz", + "integrity": "sha512-zKI5gN/zb7LS/Vm0eUwjmjrXWw8IMtyA8aPBJZdYiQTXj4+wQ3IucOLIOnF7zCHxvW8UhIGh/uZh/t9zEHXNTQ==", + "requires": { + "style-to-object": "0.4.1" + } + }, + "style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, "styled-jsx": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", @@ -15685,6 +17086,103 @@ "dev": true, "optional": true }, + "tw-to-css": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/tw-to-css/-/tw-to-css-0.0.11.tgz", + "integrity": "sha512-uIJuEBIwyHzZg9xyGyEgDWHIkbAwEC4bhEHQ4THPuN5SToR7Zlhes5ffMjqtrv+WdtTmudTHTdc9VwUldy0FxQ==", + "requires": { + "postcss": "8.4.21", + "postcss-css-variables": "0.18.0", + "tailwindcss": "3.2.7" + }, + "dependencies": { + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "requires": { + "is-glob": "^4.0.3" + } + }, + "object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==" + }, + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + } + }, + "postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "tailwindcss": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.7.tgz", + "integrity": "sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==", + "requires": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.0.9", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + } + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + } + } + }, "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", @@ -15906,6 +17404,11 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", diff --git a/packages/lib/mail/template.tsx b/packages/lib/mail/template.tsx index 837f75aaf..24f2fc2ab 100644 --- a/packages/lib/mail/template.tsx +++ b/packages/lib/mail/template.tsx @@ -5,7 +5,6 @@ import { Button, Container, Head, - Heading, Html, Img, Link, @@ -16,75 +15,157 @@ import { render, } from '@react-email/components'; -interface DocumensoSigningInviteEmailProps { - username?: string; - userImage?: string; - invitedByUsername?: string; - invitedByEmail?: string; - teamName?: string; - teamImage?: string; - signingLink?: string; - inviteFromIp?: string; - inviteFromLocation?: string; +interface DocumensoEmailProps { + email?: string; + name?: string; + firstName?: string; + documentSigningLink?: string; + documentName?: string; + downloadLink?: string; + reviewLink?: string; + numberOfSigners?: number; + type: 'invite' | 'signed' | 'completed'; } -export const DocumensoSigningInviteEmail = ({ - signingLink = 'https://documenso.com', -}: DocumensoSigningInviteEmailProps) => { +export const DocumensoEmail = ({ + documentSigningLink = 'https://documenso.com', + downloadLink = 'https://documenso.com', + reviewLink = 'https://documenso.com', + email = 'duncan@documenso.com', + name = 'Ephraim Atta-Duncan', + firstName = 'Ephraim', + documentName = 'Open Source Pledge.pdf', + numberOfSigners = 2, + type = 'signed', +}: DocumensoEmailProps) => { + const previewText = type === 'completed' ? 'Completed Document' : `Sign Document`; + return ( - Sign Document + {previewText} - +

- +
-
- Documenso Logo -
+ Documenso Logo -
-
- Documenso -
+
+
+ Documenso +
- - Thilo Konzok has invited you to sign “Document.pdf” - + {type === 'completed' && ( + + + Completed + + )} + + {type === 'signed' && ( + + + Waiting for {numberOfSigners} {numberOfSigners === 1 ? 'person' : 'people'} to + sign + + )} + + + {type === 'invite' + ? `${name} has invited you to sign “${documentName}”` + : `“${documentName}” was signed by ${name}`} + - Continue by signing the document. + {type === 'invite' + ? 'Continue by signing the document.' + : 'Continue by downloading or reviewing the document.'}
- + {type === 'invite' && ( + + )} + + {type !== 'invite' && ( +
+ + +
+ )}
- +
- - Thilo Konzok{' '} - (thilo@konzok.com) - - - Hi, -
- Please sign the attached document. Magna magna adipisicing dolore minim et aliquip - ipsum esse ut nulla ad sint irure. -
- Thilo -
+ {type === 'invite' && ( + <> + + {name} ({email}) + + + Hi, +
+ Please sign the attached document. Magna magna adipisicing dolore minim et + aliquip ipsum esse ut nulla ad sint irure. +
- {firstName} +
+ + )} This document was sent using{' '} @@ -107,9 +188,12 @@ export const DocumensoSigningInviteEmail = ({ ); }; -export default DocumensoSigningInviteEmail; +export const emailHtml = (props: DocumensoEmailProps) => + render(, { + pretty: true, + }); -export const emailHtml = render(); -export const emailText = render(, { - plainText: true, -}); +export const emailText = (props: DocumensoEmailProps) => + render(, { + plainText: true, + }); diff --git a/packages/lib/server-only/document/send-document.ts b/packages/lib/server-only/document/send-document.ts index 12109f17b..ac00b85df 100644 --- a/packages/lib/server-only/document/send-document.ts +++ b/packages/lib/server-only/document/send-document.ts @@ -31,11 +31,25 @@ export const sendMail = async ({ email }: { email: string }) => { ); } + const html = emailHtml({ + email: 'lucas@documenso.com', + name: 'Lucas Smith', + documentName: 'NDA.pdf', + firstName: 'Lucas', + type: 'signed', + }); + await transporter.sendMail({ from: 'Documenso ', to: email, subject: 'Welcome to Documenso!', - text: emailText, - html: emailHtml, + text: emailText({ + email: 'lucas@documenso.com', + name: 'Lucas Smith', + documentName: 'NDA.pdf', + firstName: 'Lucas', + type: 'completed', + }), + html, }); };