From 9bd54f789b2b509aec010e0bd042c1a7cb79c625 Mon Sep 17 00:00:00 2001 From: Kartavya Patel <82671701+patelka2211@users.noreply.github.com> Date: Fri, 4 Aug 2023 00:35:52 +0530 Subject: [PATCH 1/5] Ready for testing. --- .gitignore | 30 +- .vscode/settings.json | 7 +- README.md | 8 +- Sharer.js | 14 + assets/closeIcon.svg | 1 - assets/emlIcon.svg | 1 - assets/fbIcon.svg | 1 - assets/kooIcon.svg | 1 - assets/lnkdnIcon.svg | 1 - assets/opengraph.jpg | Bin 82859 -> 0 bytes assets/pntrstIcon.svg | 1 - assets/rdtIcon.svg | 1 - assets/sharer-preview-mac-iphone.png | Bin 161966 -> 0 bytes assets/sharer-preview.jpg | Bin 276552 -> 0 bytes assets/sharerIcon.svg | 1 - assets/snpchtIcon.svg | 1 - assets/tgIcon.svg | 1 - assets/twIcon.svg | 1 - assets/waIcon.svg | 1 - bundle/sharer.esm.js | 898 --- bundle/sharer.esm.min.js | 15 - bundle/sharer.iife.js | 900 --- bundle/sharer.iife.min.js | 15 - bundle/sharerByKP.css | 1 - bundle/sharer_button.css | 1 - bundle/sharer_button.js | 47 - bundle/sharer_button.min.js | 15 - config.build.sh | 12 - config.rollup.sh | 1 - config.terser.sh | 6 - config.typescript.sh | 1 - dist/cdn.js | 10 - dist/gui/element.js | 13 - dist/gui/resizeObserver.js | 21 - dist/gui/sharerContent/QRcode.js | 418 -- dist/gui/sharerContent/applist.js | 88 - dist/gui/sharerContent/content.functions.js | 93 - dist/gui/sharerContent/sharerCard.js | 22 - dist/gui/sharerFooter/footer.functions.js | 12 - dist/gui/sharerHeader/header.functions.js | 31 - dist/gui/sharerRoot.js | 52 - dist/gui/sharerWebsite.js | 3 - dist/gui/svgs.js | 33 - dist/j2h.js | 86 - dist/sharer_button/sharer_button.js | 19 - dist/sharer_esm.js | 4 - dist/sharer_functions.js | 39 - dist/sharer_iife.js | 2 - index.html | 92 - package-lock.json | 6157 +++++++++++++++++ package.json | 46 + rollup.config.mjs | 77 +- src/cdn.ts | 10 - src/components/applist-and-qr/_style.scss | 96 + .../applist-and-qr/applistItemImage.ts | 11 + .../applist-and-qr/applistToQRState.ts | 49 + src/components/applist-and-qr/getApplist.ts | 69 + src/components/applist-and-qr/main.ts | 62 + .../applist-and-qr/moveItemToZeroIndex.ts | 11 + .../applist-and-qr/qrToApplistState.ts | 40 + src/components/applist-and-qr/types.ts | 5 + src/components/button/_style.scss | 69 + src/components/button/activate.ts | 17 + src/components/button/buttonObject.ts | 23 + src/components/button/deactivate.ts | 13 + src/components/button/insertButton.ts | 44 + src/components/button/main.ts | 5 + src/components/button/removeButton.ts | 13 + src/components/control-buttons/_style.scss | 54 + .../control-buttons/buttonCenter.ts | 14 + src/components/control-buttons/buttonLeft.ts | 22 + src/components/control-buttons/buttonRight.ts | 16 + src/components/control-buttons/main.ts | 13 + src/components/downloadable/_style.scss | 44 + .../downloadable/downloadSharerQR.ts | 36 + src/components/downloadable/main.ts | 25 + src/components/root/_style.scss | 41 + src/components/root/main.ts | 21 + src/components/window/_style.scss | 40 + src/components/window/main.ts | 21 + src/elements/kpverseSharer.ts | 3 + src/elements/kpverseSharerButton.ts | 3 + src/elements/poweredBySharer.ts | 3 + src/elements/sharerApplistAndQR.ts | 3 + src/elements/sharerControlButtonCenter.ts | 3 + src/elements/sharerControlButtonLeft.ts | 3 + src/elements/sharerControlButtonRight.ts | 3 + src/elements/sharerDownloadable.ts | 3 + src/gui/_sharerContainer.scss | 28 - src/gui/_sharerWindow.scss | 28 - src/gui/element.ts | 30 - src/gui/resizeObserver.ts | 30 - src/gui/sharerContent/_sharerContent.scss | 127 - src/gui/sharerContent/applist.ts | 115 - src/gui/sharerContent/content.functions.ts | 165 - src/gui/sharerContent/sharerCard.ts | 43 - src/gui/sharerFooter/_sharerFooter.scss | 24 - src/gui/sharerFooter/footer.functions.ts | 19 - src/gui/sharerHeader/_sharerHeader.scss | 59 - src/gui/sharerHeader/header.functions.ts | 36 - src/gui/sharerRoot.ts | 87 - src/gui/sharerWebsite.ts | 3 - src/gui/svgs.ts | 36 - src/helper/cdn.ts | 10 + src/helper/formatURL.ts | 21 + src/helper/getCurrentThemeIcon.ts | 29 + src/helper/openFeedback.ts | 7 + src/helper/openURL.ts | 9 + src/helper/prepareURL.ts | 10 + .../QRcode.js => helper/qrcode.js} | 38 +- src/helper/zIndex.ts | 11 + src/index.ts | 54 + src/intialization/intializeIfNot.ts | 38 + src/intialization/main.ts | 5 + src/j2h.ts | 260 - src/metadata.ts | 4 + src/operations/closeSharer.ts | 38 + src/operations/main.ts | 11 + src/operations/openSharer.ts | 78 + src/resize-observer/main.ts | 5 + src/resize-observer/observer.ts | 16 + src/resize-observer/start.ts | 11 + src/resize-observer/stop.ts | 5 + src/sharerByKP.scss | 51 - src/sharer_button/sharer_button.scss | 31 - src/sharer_button/sharer_button.ts | 27 - src/sharer_esm.ts | 18 - src/sharer_functions.ts | 48 - src/sharer_iife.ts | 3 - src/storage/basicDecrypt.ts | 7 + src/storage/basicEncrypt.ts | 7 + src/storage/create.ts | 16 + src/storage/delete.ts | 6 + src/storage/main.ts | 40 + src/storage/read.ts | 14 + src/storage/storageKeyFormat.ts | 3 + src/storage/update.ts | 3 + src/style.scss | 20 + src/style.ts | 1 + src/svgs/applist-icon.ts | 1 + src/svgs/auto-mode-icon.ts | 1 + src/svgs/close-icon.ts | 1 + src/svgs/dark-mode-icon.ts | 1 + src/svgs/light-mode-icon.ts | 1 + src/svgs/open-link-icon.ts | 1 + src/svgs/powered-by-sharer.ts | 1 + src/svgs/qr-icon.ts | 1 + src/svgs/sharer-icon.ts | 1 + src/variables/color.ts | 25 + src/variables/main.ts | 45 + svgs/fb-icon.svg | 1 + svgs/gml-icon.svg | 1 + svgs/koo-icon.svg | 1 + svgs/lnkdn-icon.svg | 1 + svgs/mstdn-icon.svg | 1 + svgs/pntrst-icon.svg | 1 + svgs/rdt-icon.svg | 1 + svgs/snpcht-icon.svg | 1 + svgs/tg-icon.svg | 1 + svgs/wa-icon.svg | 1 + svgs/x-icon.svg | 1 + tsconfig.json | 16 +- website-stuff/script.js | 27 - website-stuff/style.css | 1 - website-stuff/style.scss | 178 - 165 files changed, 7789 insertions(+), 4517 deletions(-) create mode 100644 Sharer.js delete mode 100644 assets/closeIcon.svg delete mode 100644 assets/emlIcon.svg delete mode 100644 assets/fbIcon.svg delete mode 100644 assets/kooIcon.svg delete mode 100644 assets/lnkdnIcon.svg delete mode 100644 assets/opengraph.jpg delete mode 100644 assets/pntrstIcon.svg delete mode 100644 assets/rdtIcon.svg delete mode 100644 assets/sharer-preview-mac-iphone.png delete mode 100644 assets/sharer-preview.jpg delete mode 100644 assets/sharerIcon.svg delete mode 100644 assets/snpchtIcon.svg delete mode 100644 assets/tgIcon.svg delete mode 100644 assets/twIcon.svg delete mode 100644 assets/waIcon.svg delete mode 100644 bundle/sharer.esm.js delete mode 100644 bundle/sharer.esm.min.js delete mode 100644 bundle/sharer.iife.js delete mode 100644 bundle/sharer.iife.min.js delete mode 100644 bundle/sharerByKP.css delete mode 100644 bundle/sharer_button.css delete mode 100644 bundle/sharer_button.js delete mode 100644 bundle/sharer_button.min.js delete mode 100644 config.build.sh delete mode 100644 config.rollup.sh delete mode 100644 config.terser.sh delete mode 100644 config.typescript.sh delete mode 100644 dist/cdn.js delete mode 100644 dist/gui/element.js delete mode 100644 dist/gui/resizeObserver.js delete mode 100644 dist/gui/sharerContent/QRcode.js delete mode 100644 dist/gui/sharerContent/applist.js delete mode 100644 dist/gui/sharerContent/content.functions.js delete mode 100644 dist/gui/sharerContent/sharerCard.js delete mode 100644 dist/gui/sharerFooter/footer.functions.js delete mode 100644 dist/gui/sharerHeader/header.functions.js delete mode 100644 dist/gui/sharerRoot.js delete mode 100644 dist/gui/sharerWebsite.js delete mode 100644 dist/gui/svgs.js delete mode 100644 dist/j2h.js delete mode 100644 dist/sharer_button/sharer_button.js delete mode 100644 dist/sharer_esm.js delete mode 100644 dist/sharer_functions.js delete mode 100644 dist/sharer_iife.js delete mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json delete mode 100644 src/cdn.ts create mode 100644 src/components/applist-and-qr/_style.scss create mode 100644 src/components/applist-and-qr/applistItemImage.ts create mode 100644 src/components/applist-and-qr/applistToQRState.ts create mode 100644 src/components/applist-and-qr/getApplist.ts create mode 100644 src/components/applist-and-qr/main.ts create mode 100644 src/components/applist-and-qr/moveItemToZeroIndex.ts create mode 100644 src/components/applist-and-qr/qrToApplistState.ts create mode 100644 src/components/applist-and-qr/types.ts create mode 100644 src/components/button/_style.scss create mode 100644 src/components/button/activate.ts create mode 100644 src/components/button/buttonObject.ts create mode 100644 src/components/button/deactivate.ts create mode 100644 src/components/button/insertButton.ts create mode 100644 src/components/button/main.ts create mode 100644 src/components/button/removeButton.ts create mode 100644 src/components/control-buttons/_style.scss create mode 100644 src/components/control-buttons/buttonCenter.ts create mode 100644 src/components/control-buttons/buttonLeft.ts create mode 100644 src/components/control-buttons/buttonRight.ts create mode 100644 src/components/control-buttons/main.ts create mode 100644 src/components/downloadable/_style.scss create mode 100644 src/components/downloadable/downloadSharerQR.ts create mode 100644 src/components/downloadable/main.ts create mode 100644 src/components/root/_style.scss create mode 100644 src/components/root/main.ts create mode 100644 src/components/window/_style.scss create mode 100644 src/components/window/main.ts create mode 100644 src/elements/kpverseSharer.ts create mode 100644 src/elements/kpverseSharerButton.ts create mode 100644 src/elements/poweredBySharer.ts create mode 100644 src/elements/sharerApplistAndQR.ts create mode 100644 src/elements/sharerControlButtonCenter.ts create mode 100644 src/elements/sharerControlButtonLeft.ts create mode 100644 src/elements/sharerControlButtonRight.ts create mode 100644 src/elements/sharerDownloadable.ts delete mode 100644 src/gui/_sharerContainer.scss delete mode 100644 src/gui/_sharerWindow.scss delete mode 100644 src/gui/element.ts delete mode 100644 src/gui/resizeObserver.ts delete mode 100644 src/gui/sharerContent/_sharerContent.scss delete mode 100644 src/gui/sharerContent/applist.ts delete mode 100644 src/gui/sharerContent/content.functions.ts delete mode 100644 src/gui/sharerContent/sharerCard.ts delete mode 100644 src/gui/sharerFooter/_sharerFooter.scss delete mode 100644 src/gui/sharerFooter/footer.functions.ts delete mode 100644 src/gui/sharerHeader/_sharerHeader.scss delete mode 100644 src/gui/sharerHeader/header.functions.ts delete mode 100644 src/gui/sharerRoot.ts delete mode 100644 src/gui/sharerWebsite.ts delete mode 100644 src/gui/svgs.ts create mode 100644 src/helper/cdn.ts create mode 100644 src/helper/formatURL.ts create mode 100644 src/helper/getCurrentThemeIcon.ts create mode 100644 src/helper/openFeedback.ts create mode 100644 src/helper/openURL.ts create mode 100644 src/helper/prepareURL.ts rename src/{gui/sharerContent/QRcode.js => helper/qrcode.js} (96%) create mode 100644 src/helper/zIndex.ts create mode 100644 src/index.ts create mode 100644 src/intialization/intializeIfNot.ts create mode 100644 src/intialization/main.ts delete mode 100644 src/j2h.ts create mode 100644 src/metadata.ts create mode 100644 src/operations/closeSharer.ts create mode 100644 src/operations/main.ts create mode 100644 src/operations/openSharer.ts create mode 100644 src/resize-observer/main.ts create mode 100644 src/resize-observer/observer.ts create mode 100644 src/resize-observer/start.ts create mode 100644 src/resize-observer/stop.ts delete mode 100644 src/sharerByKP.scss delete mode 100644 src/sharer_button/sharer_button.scss delete mode 100644 src/sharer_button/sharer_button.ts delete mode 100644 src/sharer_esm.ts delete mode 100644 src/sharer_functions.ts delete mode 100644 src/sharer_iife.ts create mode 100644 src/storage/basicDecrypt.ts create mode 100644 src/storage/basicEncrypt.ts create mode 100644 src/storage/create.ts create mode 100644 src/storage/delete.ts create mode 100644 src/storage/main.ts create mode 100644 src/storage/read.ts create mode 100644 src/storage/storageKeyFormat.ts create mode 100644 src/storage/update.ts create mode 100644 src/style.scss create mode 100644 src/style.ts create mode 100644 src/svgs/applist-icon.ts create mode 100644 src/svgs/auto-mode-icon.ts create mode 100644 src/svgs/close-icon.ts create mode 100644 src/svgs/dark-mode-icon.ts create mode 100644 src/svgs/light-mode-icon.ts create mode 100644 src/svgs/open-link-icon.ts create mode 100644 src/svgs/powered-by-sharer.ts create mode 100644 src/svgs/qr-icon.ts create mode 100644 src/svgs/sharer-icon.ts create mode 100644 src/variables/color.ts create mode 100644 src/variables/main.ts create mode 100644 svgs/fb-icon.svg create mode 100644 svgs/gml-icon.svg create mode 100644 svgs/koo-icon.svg create mode 100644 svgs/lnkdn-icon.svg create mode 100644 svgs/mstdn-icon.svg create mode 100644 svgs/pntrst-icon.svg create mode 100644 svgs/rdt-icon.svg create mode 100644 svgs/snpcht-icon.svg create mode 100644 svgs/tg-icon.svg create mode 100644 svgs/wa-icon.svg create mode 100644 svgs/x-icon.svg delete mode 100644 website-stuff/script.js delete mode 100644 website-stuff/style.css delete mode 100644 website-stuff/style.scss diff --git a/.gitignore b/.gitignore index fa88afc..82c6b34 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,28 @@ -.ds_store -**/.ds_store \ No newline at end of file +# macOS .DS_Store file +**/.DS_Store + +# Development purpose files and folders +node_modules +/lib +/test + +# VSCode settings +.vscode + +# Distribution files +/index.js +index.d.ts + +# parcel folders +.parcel-cache +dist + +# Build +build.iife.js +# build.main.sh +# build.test.sh + +# # website stuff +# website-stuff/config.build.sh +# website-stuff/config.terser.sh +# website-stuff/rollup.config.mjs \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 3719dba..3c38831 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,13 +1,10 @@ { - "liveSassCompile.settings.generateMap": false, "liveSassCompile.settings.formats": [ { "format": "compressed", "extensionName": ".css", - "savePath": "./bundle" - // "savePath": "./website-stuff" + "savePath": "./src" } ], - "liveSassCompile.settings.forceBaseDirectory": "src" - // "liveSassCompile.settings.forceBaseDirectory": "website-stuff" + "liveSassCompile.settings.generateMap": false } diff --git a/README.md b/README.md index ce2df01..2310d4e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ -# Sharer by KP +# Sharer - +Currently in testing mode. Coming soon. + + diff --git a/Sharer.js b/Sharer.js new file mode 100644 index 0000000..18d2ff1 --- /dev/null +++ b/Sharer.js @@ -0,0 +1,14 @@ +/** + * Sharer from KPVERSE + * + * v0.1.0 + * + * Updated on August 4, 2023. + * + * Copyright © 2023-present, Kartavya Patel. All rights reserved. + * + * @author Kartavya Patel + * + * @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} + */ +!function(r,e,t){"use strict";function n(){return document.getElementById("kpverse-sharer")}var a=void 0;function o(r){a=r}function i(){!0!==a&&(o(!0),setTimeout((function(){var r=n();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),o(void 0)}),500))}function s(){return document.getElementById("kpverse-sharer-button")}var C=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},b=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},w=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)E(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)E(8,o,y(i,o));for(E(8,7,y(i,6)),E(8,8,y(i,7)),E(7,8,y(i,8)),o=9;o<15;o++)E(14-o,8,y(i,o));for(o=0;o<8;o++)E(a-1-o,8,y(i,o));for(o=8;o<15;o++)E(8,a-15+o,y(i,o));E(8,a-8,1)},S=function(){for(var r=a;r--;)E(6,r,0==r%2),E(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);E(o,i,s),E(i,o,s)}}}()},_=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=B(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[b][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){b(l),Z(l);var h=w();d>h&&(d=h,n=l),b(l)}}b(n),Z(n),i=[]},R=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*B(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*B(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return P(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,b=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(b?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var Q=' ';function F(){var e=G(),t=U(),n=j();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,W())),r.render(t,r.SVGParser(E)).then((function(){null!==t&&r.attachEventListeners(t,{click:ar})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:I})})))}function $(e){var t,n=G(),a=U(),o=j();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=T(e.url_format),O({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(Q)).then((function(){null!==a&&r.attachEventListeners(a,{click:F})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==H&&N(H.hostname,e.name)}})})))}var J={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function K(r){var e=_("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),S("AppsIdList",e)}}function W(){var e=_("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=J[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:z(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(R),attachEventListeners:{click:function(){$(n),K(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(P),attachEventListeners:{click:function(){A(T(n.url_format)),K(t)}}}))})})):[]}var X='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',Y=!0;function rr(){!0===Y&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:X}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===_("AppsIdList")&&S("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),Y=void 0}))}function er(t){if(!0!==v){if(!0===Y&&rr(),void 0!==t){var a=t.url,o=t.text;V(void 0!==a?a:location.href),x(void 0!==o?o:document.title)}else V(location.href),x(document.title);var s=1;!0===l&&(h(),s=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,W())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(q)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:B(!0),attachEventListeners:{click:function(){S("Theme",e.themeCycle());var t=m();null!==t&&r.render(t,B())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:I}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(E),attachEventListeners:{click:ar}}))})),attachEventListeners:{click:function(){u(!1)}}}),attachEventListeners:{click:function(){(p||void 0===p)&&ar(),u(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=n();null!==e&&(e.style.zIndex="".concat(c()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){A("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=n();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",i)}(),f(!0)}),1)}))}),s)}}var tr=' ';function nr(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(tr),attachEventListeners:{mouseenter:function(){var r=s();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=s();null==r||r.classList.remove("sharer-icon-hover")},click:function(){er()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=s();r&&(r.style.zIndex="".concat(c()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}function ar(){if(void 0!==v){V(void 0),x(void 0);var r=n();null!==r&&(r.classList.add("hide"),setTimeout((function(){null!==r&&r.remove(),setTimeout((function(){!0===l&&nr(),document.body.classList.remove("sharer-is-open"),f(void 0),u(void 0),window.removeEventListener("resize",i)}),1)}),400))}}var or={activate:function(){!0!==l&&(!0===Y&&rr(),void 0===l&&d(!0),void 0===v&&nr())},deactivate:function(){void 0!==l&&(!0===l&&d(void 0),h())}};console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var ir=Object.freeze({__proto__:null,button:or,close:ar,open:er,setColor:function(r){try{null==L||L.setColor(r),S("Color",r)}catch(r){console.log(r)}return{open:er,close:ar}}});window.Sharer=ir}(Dominar,DynamicColors,html2canvas); \ No newline at end of file diff --git a/assets/closeIcon.svg b/assets/closeIcon.svg deleted file mode 100644 index 0d12d8d..0000000 --- a/assets/closeIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/emlIcon.svg b/assets/emlIcon.svg deleted file mode 100644 index 737031f..0000000 --- a/assets/emlIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/fbIcon.svg b/assets/fbIcon.svg deleted file mode 100644 index 6292ca2..0000000 --- a/assets/fbIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/kooIcon.svg b/assets/kooIcon.svg deleted file mode 100644 index 8419723..0000000 --- a/assets/kooIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/lnkdnIcon.svg b/assets/lnkdnIcon.svg deleted file mode 100644 index 604c876..0000000 --- a/assets/lnkdnIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/opengraph.jpg b/assets/opengraph.jpg deleted file mode 100644 index e53eb0daf6848d695749d7b01dbb62e010f78830..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82859 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 Pz>kiGp?an2>#+X?C{{QH diff --git a/assets/pntrstIcon.svg b/assets/pntrstIcon.svg deleted file mode 100644 index 30fdf6b..0000000 --- a/assets/pntrstIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/rdtIcon.svg b/assets/rdtIcon.svg deleted file mode 100644 index c9bd7d9..0000000 --- a/assets/rdtIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/sharer-preview-mac-iphone.png b/assets/sharer-preview-mac-iphone.png deleted file mode 100644 index e78fda47d2fa05faeaca4a9b83b23adf3ab72b14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161966 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

4)S0=8DNKES9**<;KN4TdyDb;bOt6m_v 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≪qTA#F$&okGPg0rk8&-H~)QXkU5R^7K_VGW8gg{Iy~^OZ$JGU}ABl0e zA~SmF*|Q{ko>Jh$^x%m%y)Y2fT}xF01isSrRr7fipFH()^P!a`(T8U8Rr7&iFxykE znKm=}3MweLic9-~l;VB!l88CSH9*3uM))I_&rp# zz)B}Y7+fJpeWrQhEKm=r=dl5`c~&=`TRGDwjvdjOa1CDiSC8z^!xi+B9iFjF;H}^o zi>(Rl75NfD?E)OJsg9D&sesyZx3dRgNh!Z--W+*4DYFAN`ykN zQ`UEo_*sKK%9D9M40RbzWxzN)PHoEF|5XZ`r*W%A+h9ex;4q|mWlRa$s{i@XhEs`55)^|SQE8O~mpClKG)Yv#n z+#P2hzcas#moGvcp>gbI&tD2eg2ZxcrNZ_MXFHZfhgg_93K_#DObV-+26Vy zdF77*h*Haq+Loqz%?H9_y2CHV9?i-7%b%|dc|?%;wK5bZ`3NoJtg@C_v%ZU#>&20AJcsdDlV=OB|4{AkRWGUW4L;G3x>VAe zfwEtJu6mrFO}mhJh}=_4+Mf5z@46tA(>f?ZcA^So%) zq7A=$-s7oZ*Q1-l-^g4?W**kRC_gR0(ZH3OVOm|dnX9DQ6JV{K7@Vl&_BH%vTA`kt zy^f1tUU4RMxtPvAL!6Rdu_WQzup|IIMiR=u6p?nDM_xB~E5YGoKm9IDMfA(|=h#!# zT5GRE$@!;}#&m=PSJ^|)!sNAo!;myha#9otakJ;}3{C39qp!C&d641f=XvG@tg6E# zxw{@IW!U#9*rrL5Jhd-wCPiH&ah?huofHOxFu71?6 zSTZS84D9iY4w`Vr_6y8Rq1o-r{ATt~82EX2YF&)&L3{8dvJ}SFnMI4miDlTus8<F)<^+n^QxqeGF+FA|H~Kr~h7z4#520j`R)ty2H9{yP$di>ThLV%~9mU;52^2-k-)NrO~`ljZ*aUJ%QP|sn<^${s>Ux`yLXJ8^0*t^}=d_ zTVn2fYd}XXHKBS_zxgU%X|%;`B(p5o$v&jn%{Fz-e#)$-rus#-dP10G=ZS}GZVPhM z$0zQSV-H~m2cq}!yxS`c#T z-eDk+2-TcC0gmR*Zy3#^f%V~D2|(iiP#sMHXj)|Z%14wCmUIfmMNNd`DUQ}uTpQFT89TIB^S>mKEAY$(2f>WV-rTb@jXpuFx?n+v8fW@?X0$17F%cEBZjej~`2;!3_ewcd*655eOcuc&ek zN(9~fXrIP9pT$DxU~(38==4N|EIye{sH+~iWh-?3)8TUsMlG(n`7G}8?2qdtQvD2G zWEov<9{hHn?AIkHRwt95X#SG-q~QLdu%Aaoa!op=ZY?Fi#Qx?#Nd?s>b2-=Y@oF_o zeS1k$ES&|Qp!b559h|@;dx(huE*wcWD)17ehCCO4!zz_Uvqy4Qa~tm!xwDj|jW?r8 z)Xrf|$h_r^!3UKki;i-%>ae^cnO^vEq*BZ{-(+g@b`z!yqa`w@ZS|4U*7aG1&jXCW z=|)wX$2@&Wq53v=d(~_0eF)sx$vAX{?@KQvpC7)7@P&D&r2FNUs%d^H{ozW92YeYu z-z{UWUv%;2bH4sU>E(b}q@?C0`ul?W;oO@+s?>*WA_%_3he2vnYyz_Ga+i2~WEw0( zn`->jOmNLQ$8}hdY#FyzPVLQUFNgH(3@i2UA+p4b^39}T-^B>caF1LS|5cK*?lgf{ z@q}2Z^wJP%zx`Iiu@JT(YqDxKW|SsXH{c@cL=V`|sT~*8uWR^<^X6C5*?%i=*ZFM5 zLdwwrxR^}VmwW6l=H^B}E#ig(I8pomWpeYATs7hHsvB=*#DB z%g{~+_HQxglIPYf--Wn{G~UVYw0LpS#J;voT1!z}cEH-=OLS@eb_bZxLA}H--Wx!W zR0&`#5wqd6FDM6!yFUtn!^@}*(U!mq=ng5`fz0DY6Td`TI;}NyYMw6-2b*cU>-mx( z9Pw7ISU!UPuyxmj&zc8II(}ku(JV;Xj5R9PFva}7^sCt-uEUc0PD)a#+B-Ul6FN6P zi_xvywDPirKd$;rEz!!GLyLMV&5v=g-0L%mz)s&la46Q{k3g(M>?^0PpzAAf1^O5jE*vAHDCV};PKUyNy>uq*YNr6fDqu^+ost=>C*$!8wm7-E zXDhm2)UFq-&#%bM50h$-!R-G8?;c2*|FyPMqL1O)$#>5d8BRZb-^lN`?7zDPgcoS{ zHV-8iV*9S&B;%snAJv1xd$tF=F$;N@JC@p%W_>%>@d>@K(`==e;P`xH&qSpdZ{^iL zmH)##%&+{OP9j`1ka|X5c(|{ts`L6Vmzw+v70aWz4 zr~mRx_&c=5)|+-ALFa+ehePkMcCKP@tw4yaEZsNjl&oy_`wJ zZ7Vs~f!19#qvGG{StWs@Al3af^bd}H$l~%Gs8Iq=C6zjv)woo;Z0z~S z=pH#d|18zssh@jNEg-fh_09s zN|~;-SdPC@H+M+v`pDX-XtwV5mP$ecx1YQds^yDIIP`!ELT{6iykE1GK#?_+2St9&eFC04MxOZXqh{1!tt!Kym6JBKbGCuF!6i{435=Eo#j;n34Ox{*I zLh`GOnKDy6k3-Yi<^}pUWT!q5bTq#2TREFS#Zwlq>$^3Ost!n91G*c{iefkU6FTMh z*&rADCX;8#S_g@|!sE5{T|u7d^zpt~vpr-ZO+P~?YU53v#a!y+m%0~Da^hNWmLDC^ zd^hU#UD*Tm{I-x?b@8(p=+M<1i*aa#Pyr?1@6K&W^D=6AndFV730H;LvAs}A;=pzl zb9*x#6Q`R}eP+ZBNmb2VNW^;K~ zXG+sw!9bkhp{PYZdFZIrZ`j^BFxRu4tptjVH>fF9_-|MW`tWuXwhK$*gf!xo)6~(n zWR6aafwT4{SwphsUwG`^gufcmcWa&V^*GVx+^k^zf}u4ym5V0=)0{$n(@{8-$;BtW z(Z&^HVs2#hNn2^7$f2Zvh)4eV553j45bJ@T)F`Zk@@52Ct92-!?vA4K*vuQzE)Zto zp+pB(^hfFYDu`ajs4XE&5CVxLxw9&&ps7sZ`jA`d}^XieEt-~ z*?ZP&FE!~s^*79-%^FqueDSVLHf^W)jn{tUg?i`?C!|79P!DRf{ z<~o5X4fZc)?TI_I1GYTxHZFUnZ!7d1et&dt|2OPgeZVU=r4U7xYHkqwhSpJfnK?oE zs&u`{U_C{qK4$dtA4TEz-Zw?qaY89r9t|Tg%z}?uOZDrv0wb^qrjqn8+B1SX8_^Dd zBy()@H|$cZes$xyA5UUzu{IfslU{&W`>Ut+2j7scfjBjD%lHkLqzGiF(kV;dZaJ!V zlnkX*1jH1cg-{E7re$zf9s1niKnSt0UHS&~N;1rA9KsINWZ|gGhIEvXh|6yn>B15i z9rB(3Vaaa>;@qGO3J)w1`ozC?gI-z#s>l8*i7_`zFlR#N-wnGm(KO}tj+l1_;O{n$ zjJOol=@~Pmo+=UgQ8b}*@A3rp_WM-dX2(QFlNmKbymw^N##ietZ{vHTkOii14OyS% zQfLWH#1TT!{#!|!nMOMG%9x8C^DcZ>oX4>tJ}aY}E z#=cDK4vZ3RMq|35^N7i8+^;1p$=vl>)$nKG)nuEiB>s*1^n@RABKx{62`y7~<#U~a zEpDUNZ^k@Bt};J+6Qn1m+};Bq+@+q{xUmGoTzit%AH!5w1zH9wTWv@E)GC?2Py+d+*^JiT9B*?D{J8 zY1j^$EBo9}<)#Yq+aYe_SO>&oX7%(W!vM*E@}%uqoA6fc7(wwLA9cO@5v|zod#+9B za(t-rW%7Otl6MOkCLj<$-BxyQnA(%e_Bz(2c>KxkT81zekGJ{l@GglnuQ?8Kvrw$~fTmKUvGa2O_VH5U;lX3CO-E0A4q82H57-l6 zo$BJW5$RaI=NZL0ce?qo)FXO|*3}1RR_3%za5yOV@=+CTrB7}JIeRmCvFo!SrSCZc zo5hgscOhfgO5LIHu2UUsX(Cnow+oM@O(QubMq7_?-7AqC1v8->TJduoZ77^;{&I1h z2x%gP*ZaZ`x7;I{Ju>fJD%?A7oIave$$~R*&A(D(MO_oc4w528)|oPDgio$7r3Kzt>6MCyib1`!Dr*Nd&tM4emGak%QCuI$n+Is{NAI_nq;qO zJPDCSX4SN-7CznZZuetbDz6G(zM8tXBWkoqI;L(pqcSaD>$-PEh>j^(jxk78!pbY? z@wKAJ+W@4s5&}1eIQ|3m(vs%>8#bVOwp{ugxN!B%^bldNmP_uz>K3A>I#1tLU6Nq* zr_g*WOz8!p%>XmyP;3db@xzOTYAQ>emcSTLhA$!?Q`fW%g=@BjZMKgVdh!3ID*NAp zh5vzIfgu)8`lu!mu^e$0Pz&+fMb<|GrHoBO2=QAb*@Jdk2+SVjU7<1BmnDU2t2ql@ zs|ku(s->f{N(;Q8nq(|;u;U$;cBIC(W-sJPX}HN0Vw(%QJ&xEqvT+$TZSWh00VwpJ zQnQcf^!>~xDpKGi>X?I5pq&8SNQXm<<9z41#TVW{JI2%m?Z^^*qLs3?ynez~x?EZ@ z_T-{j%BQdS+&^@ev_B4Hm<6A--n*c3G5z6qmTds1qVQwV4}xev)pwsNppvCuK>1?H z&a#|&E*PO(71~kt?AgJ^HbQMB-wh$$3sr0E$n1R%^`fJ$qThknQha{ckFycom#V$o zxzmys3JtFAOWLiQ;M4Bp5$cV8wkj&hE2=BC=Q+w^3@^~5nY*j%&+Pj4}sC0>qW!4nNM#HJ??KaXl_4laNmuxB5+?LiBmo9?3aRRw*l>3 zgp=f>#Iz*GcD&opRTeW=ONQuV+g1N$mz7)|aoKnK21_XG9@i!W$t{1i+9}InCk?$4 z>W=btay@;5U_mjPmNl@}<#>^57sf9<6(0CJ=*`b!|B=Ita-$i+|AfTLbb_+FG;_gga}=B z`7|!#&etlk3RKUv5?auZ>+3rEhh;mo(DFbq-tObtMq9!>o5Zx@{dn}4@euW>AE(j9 ztf#MIf69er8)b4LDk!!SDa*B52aSym1clusxxPWQ| z$d@xhz)uuOvcs&Dee|=LX{iBD6apCbP+Fj`%BO~BtF!iJ24%mlX1YqMZ*;}JcmS{T zBDMF$f0GpG{Y;zks|@QsbvGh6*6+~#9+RNi@@A}gVdvqf!n;O>Q44c%Wi>>1gQ=C$ z40C(C#oGMpzZ!1eHqDqC389WNot8V zB8wjc;Ja1ws;uS1vv{xGFV{K0KC`*59MRnQ<;7QjpTkk1u15z(c|NGWeDko1)W8wO z_8~ug_**+;)XwD$4TFLWb)AVK*=pOaDb$4C@uCiqywuKxZ0=eUw>v5Ce3ybpf5WaM ztpR%&G^z;q}%OrN_ zh|{n8(_8cr=jzG<6JdYVLXTEL@=TG@h#vh^!qz${|DJkp&%8Y?50qpx%e~N7Er5sM zYmE;9jF1Ll}WboyJfh9_6ByN^o7DUH(l7{UIKK0IQY~Z zNA6htgObc+0;yixf^&+y%f5`u?%ze8f(Z;W1c*$S9)|C*IJ$?1o*(m5_Op1Z)^>a0 zH+X0I0{*$b?KQYOO&vkjr-c6**9z`Ae9GvdEkAW@sh9CRGx2ZbH|PJ~%yABs)fSa~ z`Bh^kA)&xa+CAmrIutB!A79m#eV(`tp`e<@@Wq2qnlYfQ8e*>6o;P@Xi3s^Ao88t% z7UC!d;VA(bEoIUIU2zOFZTUGHy(efD=Kdz9`7~FOedN|&HmJtC&NH?Ld6LGKIXa6e z{-#%VY~{wE-siQ}+Kt&McKb9gJ%8&#Sx*>+D_0QkGCM}b~SfpLdy^_!4t7Ho` zTpyb_E@(*z3Z=iVAJslJyPS(m?MF9%4z5Fc?+N(ABhREM$|B(Q;pSDhobIMgA4|(I z_`Kp*$`Sm0@rgoL>`_{(e~yq@e_c(kq6Ysf+lG9DO4B3hqfI?pSB=f z!Pqgwf~tO1S9B)vOV>~t#euXuIt`ET=9yr~l}wp$_W&+pR*kuw=2ti#CElzyRM^$* zPGNasID$? zG4U?0!co@=0#eLDszX7Va=||R+5NK3HO-plY4g*YPA-~nJiB`4xuoAd)Gquu&kU&oXAH9N+$V;_yNP2;oU>0)i_jz8J@%PO?1f#AoFQIJc0uBvn*3h2`4c)ykoP!_wykUy6on$87)_7kmS}sW4p<^d zs6WDsdICZz&7lo-`hUapNu~ZQ+1nDL*SDd{n5z4IpX)XDR_{vxe+WPPTU+tpRHaDQ z44q2=$b<9X(7A?=yY0*XTt*L6#$VsM@Ewujd~9j+{CB1O_&Mw2wwLGNr6?OUug2t< z4l@jP51!)H3NS@{S1vsWn`6Ys+G<{1}i(O3THw+1JqS%UP@Pr5aRrt^*^B133=j#XG2Ih`*wNzfU6>t+A7$Bpt3|60F# z(Z6K3vHptsBV1*4?KQnyzNTawKqftub$!$r_|NE1w%piY2{xIQR^f=o{$kL}rD*lL zb{DFD#s+$ncJLJ&*R&$k@q2F>CtD}hyoqiNADRroQ}JCrgPI}4`k+daOY;87-4A{s z77TSjYQYXDL4Yk`C;4hnjjI9&&A>XW@tdw93Wis?k-xqPdec{II z@TLNHiJ#ZZXBYFf)z;no*ZysjfRx;lYC;5;yxU~(F>fX8bZdpntUcOaz3qXs>?S_9h zUie>G7NG7aLmK~!Wf>4`yT-l{dsNlEj zML%T9Fe_3Qs+6~3r@a?|+3(+p3dbP_!589(s-c?EB3z`!ks81wzANSq2xN56JmBLtpWlbzcu1Tu@wgPd{;uXA|%t&jPm30P&Vb zpa)=a6pJRH3>D2iyTVuB(nV52z0*B;$8>84V*rA3K0=9i8+ZWB9_QnONn^wew{sRxB-E6;IJ{Y|h_GuH=@ov`&{qD^$D$S*tA>xQ}h23mT+fI z1CH)*#)theZKyp#0w*vKPoogQ0=r-%1Q@zzoN8cFePiWKeAcet0u+FMtS)LOs1G4F zv_LR(E!g0<04x@qv=$rQaPz1H*yeu$V#1{u5;*NU)ERshF}`JU**z)sJF^C}YbOt4 z+(zk-uf=z8xxB zYTIG(o6o?6BXDo>TmZRDL27q>knYFRHldJG?D`hAzs$6-4`g95&uE4C zjwnguTbMxgj`sor570PK`71!kl!l~8!e>>K8`dd;FYy2Qd*>jG77kF`st%~huc%iQ zt6<#iVW-M3@c)X?fd4oPW@|t4D|?@AZdx8Wq47;d^quVu$)8 zmE5=B3!8`%TM(ccEW+!E~#}Df;b|th$GsH_L~Zx(Z53NRtvwwKNO8mr6!Nwj1!DHzVKAtJA}M$Fw?nA> z;ZMntQtIdhDk|3V#|_jocdl)sxmGk)t&$sV(ORZT80x&B!~hPc2sNx_(x-To_4RhO z#C67Ri(m!DBK4-=rJXheg7k5Lo#+&D zGw9hWggO$^4?tSvC8!ED56&aHYXE%nfl2r%6$~#K&VI|dzXPH3F~eEk&7c}og59|S z50I@((Ig!Qxc=rIDjv}7Wyx5~=5hBEe?|#_Z4dE9&bbj$J=N#n>yyzN5EdgdAYm&4 zN9&(!Vp{-$5Z>;F=NHef-@PJ1NE9)c$O;t@J1n7f>hH_te+R_>3FZfT&!lqxADIjN zx>mqSA!60^t>uSPHsi4t4{ja(IyoE}Q@UhP$iA^U3NhSG!ob5RrXP`{NmF|u?p&Y% z+I=C{G3RQ^h}0$kn@cRj;$~U7s=x^(LX{uh9DCzAN`n-NjNsdJFWN!wU*BHF?;Y@lJkZK?7*upS`PS){&K=GFz2g4w$QT&ru{=P~8Xsf^7VbIC zVCZVww;^B$#vVpFM!oM2Hr(?gINW#rf!;!ZI0Z%S1(H_>@1@7>&7=cgxDwG1)O+_H zZZE}U{t|`z=7D}LB7n@if&W_JOuiuF`vVkm3NUwp zFXVfsZ{mTF?mw_)Hx-y*%oevGhF@Qm-VV&6))aa)bjSUm_0zCmwu1}{8SN(-x@^el zTW$U-3hh>Ldn(io#Yx6zLv4)IEihrDVGx&}kqzuUfDzvY`?1r^tKW%R?N;%IA?XRg zwXO$#{3~hqk3UplD7emxp5ATjq8Zs>zYI{!5&v=y=s((lHllIVP1ZY^Gn(Cpw0=fJ zRkRIl-?~^IYjH2*`(1Z@0uc%@jf{VAO1ttb)nTshS<)z(^TVqUCSCXpmA7B>&~4N# z*)*4ab}XiKl@`D8(P)!pFL>mrbRbHp6ovRMwJe&9038g`poh!mK}0?FZEo+v-hp=T z>J|9vfafMl;ziUfDzd->dJ~z7Xx^4%LtYXw-k}8!Dl+HgEWarp3ninTiLY9w^wY2OEjD#T)*(2bjAlK$t`4;>R_6X3fr#D<7qeHV(!d_#7uF>8IszhOK}s=Oqr=pZT1@s@-pxw{Q~6BJin zBjNQ3@6{8!&z%NgP<_R?j^3~rk=0fM`+3MK!}JH4h^>oqpB%okNn&1+a@{{g*}Oii?7x4< z0abnxe*6(wud;em7gs4^G<}WY$rUY3TJ}3Qusq#%HP2d4S4_^nl(oTmnDm|L1tWD8 z)G&gAoLVV0JjObv$6|1|Pn7ZS#~RvJZd)dBwtp?UEk%GBj_d3HDAD=)J&GE`o6|J= z2(bx)IIn$k3%4OC4F>-Zy&FY_>?!nv-1Ndt|FBGZhj^m?yFOJEeo_F5-^lM?gv-%` zT94CFDUz<&_UHtha@EZ1mRi^62qs86$iA+Bo_rv`N$Mr~ScvGj{gvIw`|hQde#}i4 z*r$% zsZluCvhfVm>Az025f00_!WV5+hgXAKi)a>ob(Z-K&EGeKbIAM+mr2@ ztz&z#Z29nxe_otfoUy4zlR}*T`Hhj?q1r9%ebJHcP{DKHVFt-%zj6Q=4U;BUpK;Zg zq~-}c+I16DONXB?l-ztkaIJgAuASO^OY`6brt#K)o@y^lKc=0EhFH|5q$q-@7Z3xb zs1*gHsgXyd;wH|K*Taj8>r`gCFMs>&=b``4QUlLmUUkhoLsD-fmw~QYkj`lXjgvmH zF3$XK=Qs+qp5(0r!fD4hp(9CC7>fAomHKJ)$m1pg^LFoZAAwU8{4^%?1VsZ$_70Dg zl3Wjx0(*uhE+tt3=Xqo2C-dd2n6>GS3!2Dk6)Km*8w*oTN` z=;L5@Hz6L9`9y*@p$?>y_ujn`^tTUc+tCWq7u+CmeliiWW1u`&TMe%#4R{+PG5h12B3MC@8+6 z8m(l}6d|dVB~thdzJ>i6Z+;sKItqSbtM{dECM)T6%T)xMXxMg9??066Hs9C%eo3aJ zm%s~UKI5_I%Qde8?nMi=*2U^D`c(PIju!(Bl+G>gaAxe10G0zwK2rxYustGvedm03#5JdX`z&d~^3CJ}foVR= z4oRkeG`_?wd&iC3VP9U@xk9f3)-~*-yOYDO$%Gw4N=a6b0f}>EL2nRhl9XNNpj>S^ z-h6u3hLencv8_-Jq=HKCAj7<1!WY-)n#W-K71c zbpJQ(Ogu%gc_)??k780f92Mpf)2K&L1|Rn6#Mu2cNGEre$c zeDtCaVZYreOeoEAMn9(ED%mXB+xl`#T6|R9)%zu5Iv|JL=nK-y^V4q*VT;mLH<+@F z71vEdejQ**%;yWW@T<`I6~%XUFUNcsqXV`7Rk*as`Av}x4-nSuX+__@U4v4ZS5%e zF>jUsh83Daw^kFgYy^>D;v^eAzv0ZYP7i#AF{PFyDGH za*_2zXPs>u8_ttWvda5tI@3~oeh9Ts4fRzu19gb0did=x717!ixD5u#9Z{x}gCe;l&pqa3!`bJJ zI^Q;s6(AAr-k>&6a74>3p)1eA}gnpb;#8ZSr z9872uCIh&rt4X6L8E7NW2$tl{PUEQEQ6kURk}!H?L<@E#v>oCal=MPzj6gjCe4y;6 z@lTDr{O~_hKY)SGQ94^24wF(bDoHK<)*X|9>pYetQrd{9w2@_2_kXJl#QRhmfCzv<}$29kYxPrex z@3)%Ric7_b-JZPp5}HX=GzCRw{)RmjbbJaKi9A||oFc%%(zCY6`_uZ&6kL;1eQNy_ zhGS7FhsFJVk^M+phFoh3J!SABuj2a@{MCdnH8MrFuOKooBhe7s8}M9%LOPI@sFvQJ zo6{Oih*9>tly_jS6)U#c^%yba2qlnYYewO|<$tI=dz z#$-Qfy=g)iC%S*7e9ChMamugi=AY@r7G8;g?#CbV!@Po#H_HZ{*D8u)15^xqc6vtY zKUlc%!Lc?6>F=S_l&T$PlKiSZ#&HM9s(O;rKH2`FK?zBOAKSL(Yu*9-hV`RpJb9Fv zRaNO>5v((dHq<;IC(Jvvu#=qTT$j38W1|JTYpEt#d!TndduE*`APU}dEyZAl6+DBZ z%J6;7kp5Jv_1Kqkzx8hdM@UsKL*Rrx8Ce=d2c#;@9BSqO!dVqDKL83GTrWLgotrw?v5&Ed-(bB9Ss_Ru zs>UjxB@rMNMiLTi$YnoaAHqVCe;&dSf@`=yMn%`@6k04o0wjFc7W~)#G+S;lF>Sag z_~Mm-khgi}mioSd{+<`z8kzJ3Ke1R-vn}z&-s#sg0e~SewUVS-RBkre9HCh5 zn+DmEGLs6rZ4oVmLw=&)c$veuzur&01>s0>kuzYV0jzAcqrYf0SOv>2MEmRbeU@kI zbMBku3=Lbqv7)zwtL6hjm>KE;igE$|d^`SR$PeTRyCHze9B#CgkB3h9;j~eQg6>j6 zYT{3M`h_>W=Hl|%9l5=M{@gl^KD0a`N(#agCEv0~JRB@pb3W_nu)?*WdJOztz;85m zAj%N56H+_x$XqK$`!|D5(97hI{EMo5r1VpU3L9(chr(FekoPaG?I>HQ&pfTlkhF5BWk6izwT1Pb#ZlC`Dy`FuE>iO;~M6;Vz3;YSOuc7 zhHd^bwInvRIv+VQ;%G)v;~#5nTBL+SN8W*G_=28-olH<=r)W$QMvylswbR3(F4pIu zcs8nXQ>3QW4^Wa?W#XBa0(|nPtpo3rliORQ!Y#a%4kminGwN4YR}Q(ls%K*y+$A&n zv{bt5s>UocKp+Q2cOgj}I?_wZo@Q@D{~}DG+X)O5#wkKPZYp=ah}_vU!9Z&Ei*I$O zpl*||6go^jB+0k*Mjj`qy)8<1~HRVvv-1TNQFWt2hUx$>?|GA;?E_tvU4mARF)Q%Sd36S zHLB}CpbyU)R=&YN_N57Q{)U~W(o+#D8?pqtA&RSjabq1~wE%yI{-1P?n9M?!o2?>d zu%jn-d~m9lDVT4F)1U&8I<&kC93@MpxcX@-fnX1tc{MH(KeZc26SnpFylm9z;Ucx_ zvNniKea-T}*n97&rqXtA7(_%wj1)m?Mp4kAM5QSuu_GczMX5qmMkx^)2apIML6I)R zGQtQ0Q4vrnQ7KVM0wlmFgLIG}q}eEey%oY9Qs%wq{nmQVcg|Ypd!O_D{rm@OLCW6y zzV6?BUB9x@zeQs@Oui1K)IJDan1p0Y0}wW>A>D|?i*Tb|(qtq|fYF!lfha|#^211` zn5|0oU_*I1iPc>KDo9tH`rYtQp~yKcP`bZwwrF1ld9S225Q<3WCY{;EkhkQBM>nFX2sD{Rcm6Jw}jmRw?_>&?#0RTdxztr^05A(`X zYlAm-wTEb?iGaqFnBYG`c8wM_0;OxDukmh;@1C+B!2?XB3SQ8mL#<&lS02LXFgJ&y zuZ=&fSKOx(38@WbPs>P$buL>MVLS%hf}(`9EXwk}1Ds&C+(M}b5=7_iW88;&q?emw zcB&`~{#H4ML)?9Y^qY=7C=y2cm!iN9tJC@9!`Nsf!Gy9ba;f~LT(9)aFVjYYbv;1Q zkQ;3p&eP8PbA*XCh3VYj%MZ`lH0_GB39?jCj$@7FN01~qAE4(Hr8RjgOiNe(Aa{n9 z*UCvHtrSP7x-_~1N#qu+s95&FKQbZYVdUIu$lK&>zO{{>P5p>Y`{mUye$YT@$UqB! zt#S+avWMKlphltP!^@@Q69`=vNvaSsIaLQoj=%1=s(~3amUE=J4)kZ=RK0)Wz~O1* z_6N?x>`8-XM|zd8K{Bq-z7;gVaB^M#VMHeal64x7bb@5c@Ip@4iW(S1IU^ZL)4{Xw z>0x!dI>KtXYc{?a(oRpWs&gjhSnnB`r|Cr=fA684S1$5CDt^cQRZYGWXNwlm<+@?Y zRoU3gGE(Im7%knPsJ!!bq`kpqB4U{G;|t`n_%WX8m~rn?dO8SIJ*rz!pAutpdjg?y z4I2P=j2AU)6|fuk-c`A3vkWKyMe&Rp3hG}CV@3iOdMoHGEBP7d5y`Sg#43F}wbTNA zNn40I+JQ6S`EwplCHR(~e}WXYPFIn9#{y~_oL$xrKOTzOkoT?sg9_?ns8SOkgB3rM za6+s09%BS-M?~OZ!RVx=C{6oghY=z)Cz!iQ*^FS0z?N0E?bFi@ogKCpzVC(1*$=~) z%!*jQJ9ulgQfyxdIG@QYGai$7xfz1cqhEHMZ;m$A& z$QUFM9yo?nXe2i!%G^kL;#5BOFY+FN34j_1Bj7c1@3JtM+EMHbJEv5;S%|dNI7-u3 zjm&%x=-sno+e5RqV?oUN#Cmtsdn&SnA}`Ub(A{Uh9wRNM&g!11xT@-{DfRb-CJ! z#WU2OaL-5NMiQARYIL!+_(w&9960WX@DdAHjT1=7YDy|cTsyBQHK8z0RSehQcqB8# zpwFVdcR@Rz+wd;Mae9)sm_^=K6%s(?6+LD)P}AqL!?xqE1jng;?^3S$tf-2^Ut<|7 zZm|VmWV&2_pn8(90=u3JPC;UJru6%SLj&Vx?VMINJsrJFZY3)6ov>CP6hg!K0y9EK z!bGvHq1VuYBCIXpLtY<&bfwkS)BV=i>p2{>pN=?pDK)Q(2=5n#c!?FLMk`_GYf1-l zFrpBQTZxWlLrfoJ;VSgKm90tE5_KJ_i(c;kVN$6IccwIXS0U3Uq3)sFI#E3A^la%; zdd#ysUE{M?Pk3{L--7nRi^?_b-~#VgzQI9wf)3dXS&(Ux5A;_nwaA2# zx}KG!Y@t3*uZm(3N!4tMfArpi5uRUc0IPS@RFc|ct;LpoqM_~RtT=7LDM=5unWExi29I@in#^i%NWcU4cjtnOd=qoBjjYgRiE z{c%LLg{+0#mEpnhcm*{Kbt5n<0=<^yM&8rMTKhGys{PYYT2UDXUL$O>t|k!kom{H{ z+6FX!>C+0lh-52zl{d$E^OR>>Dx}ZUoT<}M7Vv9Oa^ru%{IH^EjMv zsJV;~4be%eE~Y853?UpIYKjry)<%TB?_&~NC2M>&2!k1)TI^JPh(P?Srag63hq%!4{r1mCl=MVH7^LOPLm z;8MAH>4o_R$h z_$9P>t!Wp7bgc>J{;8Dp`f};md*S?)bIn8YtuZmt8|qlp)kyK%Eeq~D+QQF4&CVQ5ztJv_jRzf;=JD6I%kIFQ0xZe#K$)6 zqnihnnIU%U?3f{Yj?F3ufPBsyRoMuBuQKri7gm>jqhCbyF>iW7Q`@=7;l1Hm3 z`tpdVeIlzH7w%sDe$rF?5or!xP1?o@E8}@+rLNd=@`~DDkHG7&{#GHX!F=Va%xK8s zz#wZ>h#u7tI;Sel-79tfk`kbo%8h$8K;OoE%3$_!r<5@h72jg6KPaSG@{d8W!vi{( z^3N^tL9M5^YsZWCY5PdI z5IUtwen7Sb32R^bp4w(wu!Hj?i0lKW-^dHQ8b`=3HXisq;B&OLVCSbkH=`#=J~zSC zIJG7fgWdK_+7!CHXPI|4Md>vIt?Fh#0XHioLFYRuNsM$Cj`O)DWEE=(TIz$(?y3Se; zng{!@5m6a&J?n@B=+@-$>Yli`ha~%U!=Dc@kLHE%#tn!3i)L^C#pUgv1f=^QnGnR< zKpW=U#EjFxPy)EXe*?U4_Yq*j^=(l+_M~-}+4p~Fw9|q31M@8{Z>9&#++PAi`6D28 z=36Io#Jm}Gnqo!wx%qqjZkL^|6#qBMDR_YH(|Pou#%?WGY^{{ydX9eC^`&~(n+IC4 zD#z3<1qmu1Mqjsigt!22=3F41`*8X9+`}b88r*E3$T|G4DA`qA~@~<=CaCz>D$~9x4gpm=Pv}Bli9&bior>JZ~ ziTGONq(N#}&w6Bl%Q8i5&qJ~{^NoGj4c(BKi`_D^;DC%fy@(J<)K1hj4b=tB_kJ3D z&}VD)DtPPct$8dX>LbTp9m#>{c$yw3KZWRm4zs9K?T{y+q7JglxLO0vK~| zL$n`7E;2!bW+uONiJ!e0xhgKe#Io2nV?)toem=yYK1XQ-Uw9#&?p_0%cLm<%gsg*n>l-$wJv3eNA~B9b^9@6}6(#M| z(vW1T8udA7b9pFN(E<9^A)@stJ4j!omBVqUH0%oa9y3iI21iSCksR@yaX^>YwaX-! z61|e_h$NK(v!kFl@j{8-ss1?6`QQ9nu{yoA%|V_u1JU9;;ju`Idx}!a1Y9}+$wR5B zBhw)frME}eM2Ux(&SefkA8b6XP$P6K*4pjS3f> zI_KkQn*zs|W8S|kI)#Mp)>o4jDpw~MA=Uu$sRNi^0)e+Uj?0)Ics}q#UPx_C`dj7G z4nA~@Aj2%>D}Qst9rBPli>k$+aBta4lomu`3;BpOhqzQ3&mP5M6~8H0Bk3Hy5Bs~q zc~|li#dr&35>X{ojj4pJ zNteL!DVNQI9DEI5N*ZSjqGDl`+z5AGXfUAHPK8b}RFJa^70l;-`CMF$exP;a$Qzxa zncDV2cEngH^~$Xj`!QbT1^;We9_;ouWu2j(B0&3T$mZZhxvquu6g)R0z6#HdNYiMY z1oI|OxTB}T0EgOy5Ti<4MbYVWt$*5RE9Vnzig$st;uyIMiH)O5Vux)@UKzKI*%cYp z5G&pWs`q?11JB}$7;v%gfgdQ;(Uu7M(m7at?|8yBWp|@TbHwHGw7$6mZ8LvaOJ$%d zu-Zx%2`C4pls^7aIr+S2Gx|Yw&o_VvQqC&3l3ay&xj}{W01K{LD7#mNjIw@|+x5q} zPHsq>-~(K>mZFOcaFkjvbdO9b^F?_54-p}H10}TBnkg4WRfF}_vWJ&6mgJ`Z@-xIC zwp1<(rR=3c{^&6}m%qx1RCpM+l2}wB798Dh)o2lntrE=lQ;d4z9yXU8DR^xD0|?%> zn~kj~^vJV4VLg^uc&_h*$8U)*=+jy$|95-kWi8J)5og}%y1$?T9f0miH2I+&5!-IYo6834@{utgYnuf0^)dA zI@(V?3l^>hH(E^|J`@JwIXG~bQ)OXDM3HGiKZ}k^BcBBTX^668vY?uw&e?rt$f3xj zg}qj85fKsdBDX{|aAEHUPxH;&j&=gn3wfb#6obRgbuP8_N)uX)$#e;tYA^%==2o5T zdR%9s*RANL$E}4o>Q8iHQsTZk5{z4>MLD?ErM&B^$Ua#TU5e$r?6bf z_RI$Rart(n@$qQj8SVR9;nOW#coCa9@h0&q^e>q*#TVXP1K*v z^nwTGST>YVbgdQFcGd9gt~m#^2IzJya<q7kv05 zuO{%cL;P_Ssvr7A=ga}wHcAV9#XS2O?j^k~M?)B$eDQ*^cQB75F;35PJ1f%MkgEme z4TQP!3qpJB#q!MhI7K=-2I`zmc5rjMa2!vCcp%zqP-|3`#mHMtZg z5YHjbdeStwQ=$!8Y)Zv7r8%E`wwHpL@Dk%_1QodvaW!8Tm`@oWvONc*Xi76A(g}d@ zi~>Kd^OF#2PkK13LgqWBX)D0!D{W4tx&u~Pj-}4)FZc8qH?K5qyV`ZWFn;8 zj{h-)uqV1Y$FL2jt~8!J3jS*G5F|GSlO|1xyvy7A^sw>D^I*N=QHTXzu4lr*L5I=r z3)^rtab?Zr$bjf*UG)@IkF^T{a;}$oUEVOE9j6yCndfpN!8AUSDQ=rs*IOH<)n;yz z__4lW@M7#fkyf*-*I-Ck;7j=%{2MC5}|Vj zhU|G2Vs;wv)QeN1WM{q_=X5aRD)A33i=rO`RXxA^sn;)g#{)`&-MW_LtDt90cB93U zV4Zg<3c=u%WKWOY~=CsJA=)m=jR_UdKb~dq3<-ujhr4j$Z z`Klj@-6#H3lYgh40Yg!Se4Uzd<#rJ!i?G}Qmy#E_rbx`t9h)|HKs010<(rU{v+A_m z*lCAes?ZvmF}~0UeQ961z)UI&2#D~D2_ic4R=hr2HhIUZZ2Zmnv+*l6dI`{Rvml@@ z1D~3#pxd#dQM?+#KbY4-wu@{A8>WMe1_x&2U>g^=Va;KyOxET|t%yp}U12`xZ4-3C zEd_5;_;~Wj#Af7$sF@HlV8e4ots;f_#KcweB6g#D=j2A`p&C&<2bDr)ma@5wbgUb4 z70ZB~1+ly%=DVQu47bfrPqpc(tPPt#G{hzVtw!_A6~^Udr`=z^eeTd_Q+gz0z1m-A z|M%VR=GS^;fjZ4#GZ`6j45TOa$aHhBkY5?ZI8-I>MuNmSp$7*g=sms5f+Lp7iXNW! zpBUTjtL0w%joa?OVv{j=P|y5{I&9}!^VeHYrL%B?tU&M_WeW^b$U)HIFMIpgMEdB* z=|#e7d`5H!?E(1+M94S+fFEv^V{`EBs@kH%i^uxsyF*)we;C4vj+acoh&1+nioIKc z)cB6f=Z&{E(%aZG0R5=Df{#2zZCxRe?~yr=BPgy?1={2yEq$^F+9$0*c8P-hT6mZY z%xu7dd%UotnpvzrR8>2kAUw~$g;;gekSw^)etM)dYuD-N$v96gPbU+0C4d(lrM7mk z%_!*l8fc)CZg8<_+eo1E^-!pXGe%3p)mXJg;X?Agu$zZ5azE;FiecZU!PL}LX-x&G zkPFTBlO*t`7 zrV{c}qt2gS*7(d}#J+v~g;Tb7RDU(Vy|-BB2RQHThHD7+pQ6VY-h+Qbz`a(#$wmO_+9* zd|ueI8f7|FZ)}@?BaWeedNQhnMBv&_T{#wkwQA^_yEGd$^YC@?7M&%GY&SUBfqAGv zNLNKH0u@MuEIsp$FzhVSxOY8o2@24 z{!s1%q0_LI;XHaOIT{`lIj2{j8);It%omzP_VfMHg?Xuru?UJatdZ$B<{FIY*cR}f z6vpW#@+dDv+FqQm9!nPm3CAyw(?9-0&9YN=+Ec*u4EgeDRl+XKSVB6xw(^*AfTEJ< zm>3ij1z!n1HzuOw>jlj))7E2uoMh`n`5aDu7KB{+?wJ-8Ti=j*T1SDQw%$X(NSAM< zs^cQ)W1ZY3zk8MBAou_Pb9SU6MA%8gZs;kIA3zrD7^rJa8$@V>uG02I zAtNm!%&x@zT6rWY)NE|*v~A6YjJzw?&u6^IY)ej}g7aUz90$*FqLIyC+H*8SR@dDK z0<&Ml(lMm`*`7z>02A1gS{E_jMN2`~wAUKnbh+~SeCXB9Hy54a^Pus^w$YoU%{y)eeo_b1-j^7&!5GHp zXGXMuk>%^;)L>BCy``?-v5TNZY758UQ}48WRg;4PE64=vv_~=oHW;#k`4D!_!d)Qn zE{O#mISc++1IjRZbrow3*`uL2dQC(@bNBC*9ewj(Yc*{zxg|k`zVu_mv3lm`hic!D z@q(|6i&0H}m!AYBQ+;s|iFTvuEDQ!OW3o+rxd{|~leJ~v6Xl@N6h2=`Spnr|$h{K5 zxpJZcauxl~qtwKdO$MHSR}vcfbN+DTW>y{Z+o#uAn)_p3TQFW9?lsC9~ zgCf`hl#(1JI?^~_VkFEScj@d<>W?&8U8RPhIqpAdG`_4GskE_bsP`OtcvaxJG2mp! z>7Bryy5?VRUaeC3FJu3I=Mev2+0<*36OylL6kjz>S3FCgn3s}W%LCs>w4kT|foL+tZL*_m zg|eMrlRtA?7$J$4P*(kOvfEWn^gUMB%*bqtqb!;GA7{LgRy<)Qs|Uf{oYEd9S022>$Coc4ZNdQ4Gm^yt0||}Lxque;X#B6jkQr+nxG2e#y^P~9AjFBL!-ol!{>314s<+K(Bgh_M9s+1 z^;h|!_1}^=DCoFQ^e9?-G~Fj#`jg_mQeD10>C!spNHj%HZU@C*TL?}VH{TVS5WojEAG(!P zY_vnbICelKGO7O03A3HSV`h7z@)j!H5Z3$pXzShi7e=VXwgs^y-(QM-4(F`@Wooxd z&HuBe)Xnfd1F^v_GXLQ?Ei)_60oyS4V4e5T*$J?mXQDzQs-rQCOOLa7{lgRbSHoVt z%G-H1C*Wh;sZA;Y*GYB{(mwOTt8J?{<|Za)Z1Ox)ta;2+zqiXM{8N_yXvi*|`)2ER z+*#?MYWx4n3|w)LEizMUD{y)!!srtVJksR2$1RuYg5wE;m9-@4rk%q7~9BKVCA)+6cX?DJ5ldmWF;e&ZSj<4a_NKluYrG-fG%1 zYRB>T0@2&0ccLBUT7?0h(oSwDx#Clxa^-GSI8RYR_!?M$zskRAT#^zp=`3xy_lO_C zjPZ|jii!!d>CJA`noi8N9{WWZSM@=UVYn85N)~k+tp)TmgBcyt7t|fou}OK42>rynmQXA-1UsO zysqs)e1!F$IHJYg*{7GIc7Txa7rOg?to`N3hFdDO$J7%W8-uhW=Ax^kW-2A;uFhVX z{hT|&9V+YNSveJ*m&#NgPOIf z4yyMaA~eo~Rc+KhPM|bLWU~CeqeW6uOtTI(qp@tiCp9Q`wzo;fR zuMwlN+ugYHH@NNKwRz|h*S8+7?SH(sqQ~{|q5dA5pSecY?gZ#M zb~RjA{f)H+>cT$@!erE1zV4lyiEWM?k4tjvDVa+6-FINJ;mXssuf99T6nnMCc2!=S z9X82+RV{hU%-vtSQD9R0e>MVjqU)IZ!Ew8JStD`U)A&H{)H_l&AcCDIS)MG=AdNpN z-nHSDwVvsVrl|CTD$Bsp=s*57sBzkQd2Y~jW6+k*ub8!2UX2-5{XrG4eYJwZC&CUS zX5TN`z)bbL6A=)a6YzeSYUDpd_GJ}>fXyEhVuE?q4;`DBKfkZz?)?_zzbR|$Y-qim z)tw2Wu(VwlPHykq)MxQLV(nV3lmF)p|7-0vC&F~)p~ZHp%#!5-0uBf#dnR|IRgmaw zs4_#d1Of1o1wI0|f#uaK3;mUz&o&=FsQJenNUVH-3hYn7l&x5S5BY6Ua_9150tnfR z&vR$JTKJkEhTWEa|LN09)xOrTZyoqWzue!Kid}x$=AuHN84(s=C==p$^|)Vt=dBV1 z@a$G+wccerd-hy+fd{|OeE`v%Sn2UxX*@*$UfB<_y|tI0PY3WF?!O=u`m zy0X>yw_S6}bm!A&zFp<*bOY0+11gkP|Gh^8Wv%=;q9`GNgr%K{$*zFnS97m0-f!goMnAhHFG9bq|m$3Ho6NoMB*Dv5Ad%ih9-|d%wv9_*TV_pW>({)5Vrey|q<) zzZ@NklO^I;`$syL|1o4b`rB@Bk@hPZso|i#q(Nk;MY2(D2VfshMU$JVZ1ZFY7S`ZI z8c2U(nuF@H{%oi}0AvnFP zgh#qCas{;1uBuO+=^hQA!JW zB$5vlCDzC_5o0ZaYUh<-=i*k#ZJ!bA*}6?yfJ%BC>dXo{I#L^q#psh_c8}Oe3WCND z4(uOhSk%@xHT;17Svk1az`ssChsovTXZ56FElKoNFps9?I%-p*br5VH*+fj$CB?Tm zj|8SFp9%sPbtbM+sNkWQkIng*KrO_LJVb-E1pFuL}=xVh{P@ zH-=L>pC*;;dG55xZeIJ~{t>%P0<|_JMmaz*b29^kmL#jiu;eGz9vg^Aj}V;r7;?cm&S+qCzB3G)rwD^0Z%{mD*&*5Do>n|BdJnP-s>Ye^c|h6+zA>T$r*q7AZd4jT_+0FIQkjg< zH~@H4R~5ITOOUryMB58mc|(#*^GSz-T7OpA#ttKlrHFbmuugJ)2zL|kuU(Px5^{8U z$V>RbT}URSBCXIPYBI(8B~-PTRU2MO_7Mj}*YY#WSF&FZR5xvodlLB~ykI`CsN?Rl z{W%vFuY6SN1-(-Sk0>54g|s-hx-iLx>hdf%9kDE^O0A8r$x@~COaPyW?D?X-UG2v2 z?rQ+Gj#nFxmbp;ze!-Q1;#W=NpBK7nYwgQjJRDFL!T9sKKrL0#?B-da?B_3Mhq?08 zm+I>TXf>ol+JWdmbL}B(kReEmTkof|7>r|QD)nAMpGzwdTxYyeYw!};LO8zX5@rFn zW_+?{lDamk+VH3`>!ywNhh%fMut!%p=t7ftKB07*Ya*#oek*%5cDeiq#qZ=`aqtDc zU{>MR?w26x$&O{OMS@z3*Vn>1Y3TxQwGIQNUQ^ygObp|VV0~1q%+_)wz)ImtMc--c|7!?gnK8AgjqWgy`#h12^xpRix`M%{Ug~i9GotREOPL>4;+*(QW~Zztg}N4q;~oN1|KBRQO=>bv zojw*!@vyg6`=5h`9KZCOvCCchX~7AKLkx#M-bgh**9?E=(JyYM6OIQ6}s{*h~(1| zva+w~tX<}#$Q7b*@4j=oObhODX8<=#MOclyh`G5045m^E1`9nm|5jOs3#+mK@+~@y z3xX~^1(j<#QqjTIao}IO;=HH{6?!4@P&y~y;Jf??oZI*~XtDrAK{}2}0^54__PcqN zcNt_S#>7Rd|EA%H&SU{XOzUoH=$zi<(og2=k#rF*g;4j5MCh1U?=*n{P=&^;5XQHS zbsKWyLkxx;2zpxGiNX^3elR7?oDZlo)8HQb;*}oMcf^n%)*szeaZDSCmRW9!`;-;P zwAh2|ZZExz6w1uxXOVc>4$@d>v6G^BO^y(+N#2fB2{37&$orDS)Rkc9%FYi2$`qOo z>6~>4GK*vY&{s-oNuB(5ka4IcgA<)DH-C|@>=yTky*r?&e@1+2v-sJR`7#G=nR z8X58!sFPEyGXm5bs1z4WCfNlbtd-tEoaqFqf#!0Nf6n_~qE%TE9G=yD2>JiF$hB-~{Ld>u{I~H`SrFPu{a&4=M8n0(i>`%(_qq%s|RdzUc9snv4#9Z z8m)7wEDZ&{ih}xpB>KWsj;&W`0y`s)o`G9Et+rbx+ zfz3r#6L&)&P5yG#u;!RXH!r^f1(X=IBRM$1Z)`oe8I0bCY<(j40Ib7sx)v$FEkcmU zFby~M<1$kDDD1Xy!rHh1U%V+P7AbFAs%7a6Ixtp|s3(59%Zb-MD=Mj+TD+BXtpy7h zlGnkr^5)(@R$(tv1au{Xou;n}Q6+JrsuRF)kMC5x4)WtnY(mxdGQMJ~M+H3e6 z=7jU`r7#6ujxS|$32XhWL#BW6sGNEUQUPMD=;h(x)}Qr=i~m(^x(7K;tp#?gjGKX| zHfkVFX_DzaA5-pljle-Tp%_c|~kzs4IiN{Ejhd>g#uNh9yegJEvfbB40 zcy9N|$L1F!=Cf}<_xRLqwTaoHp#d$5dn5sdGXW7YAGr@QF56DR`yfREbgJ=UifvQ0 z5Vw}JPuSBohS%|mEC3h0JH{JcQ6oZUVr^lkoF{vpew|o8Fb_sc@5hjbXM1hxth)@a zo>%#%ZLeIV3KQ{2oQ%ke;Ome#z=eT`CWPj&jacjDA=v_I4tDkE6w`R2Cu6?ZWA_Nw zoYZ;zwUYO|Z^3qrQ7m0I-0+L%kZpB!)laVrly8N$$=C<5UptO>S74Y*Sq^}7pO~GF zwTBovELX&pgEOiHS{K*XP&I%bV3^WjwvpdftWP^UGDkjMJ>}9|p3K@x2)8;3UnpNg zzs#5noWJE&@?PsuQL=ld^a{ceN9Uk**%6AvzWpPD5e_|T7|gmT>lDQ;?G=#|KL9ao zP&=GXU=QBxw=69~n?*(oi&h79>VrZ6Wlx;xi}!UECx({ z+B4Tv+Fd{}0#`(070|nD3`m1M}wp*qw zcR7+!^oK?#p@s%5BWME53=xzK@kEh`pUNaGbK4G&a6@#4uxo-zDBo9bakGG7t{lNy zKr0$W3&?N9wrOVe?e*Bra8!FortmA-$}Xc}MPbzCClljS&h`N+s8GdoTogZxx||#V zKl|SHw+fmaHhmn5IXVzWTSMsyG;E`1ve(O_#9r1>#shvMQLG&#fRLSyFWrOiCkBle z`TOzDPfs@Z{#x%+-&~PY^yT;D1iRaDFr%Ffo#v;dwCkUtkonj z2wl4g!mC_Gs8)$}YshxUou95gk{+u~Xy@gYl*o@kS4z$@-fXUBmcDf)ZoN43X~?(V z_9)M&#ZBBo2Sr3OS54lk$fejunma4#r72P_eDE$*+||}kwt;QJgvC!qC@rLh(8scR zQx!>--VXu^mw*V!g<{8glZ z4th#{wJ?y{+koKtyi zXV<+-!|m8wJ*Q$%v7xpe#QuoMWrtVHrPFnlMkFVWG!Zb+ap_oHWSt0i4QHs_K%$Au z7|@&Hu6D*V`AO*4=On67hR{NoLk>8#J!iw7Cfyg*Ho{&(f$uJ@R~w;*_l!AF?|4D|-6R+%M77}3Sq_L!8F}w8HNqcj zNSYSUwE_xSaAQ;MD9eNt&*g75(w|-QrBk zyB)lE4nKos-RFo|hv*#`DHcr~svYwkeAsuP;Z>3;&tq#^viqEHZl+N{P37x1ZHM(* znGHbFh&W3xLg_P|LiUOsotMk~NzSbyn_t6ga-KSs+dGxSJzHMnFrBh1u6XBx!Q7D@ zhYo3^PAFTRPu43}4zopZl+YD3| za5woiD_)4%SuU7P%niP=TM&d2Eu^QI2y-CefR0i4ONzz;%-%KQjGK>jBSLYMPXc=9_8Iq zPdinI+U5mo_%Pu$jbcTpXf8F5v3feEa{RZds(E+ogWi|?ppF#bw5zxE!GX$oh4}=3 z26E_6PW0}qF2UT}HVyw|v{_*m_A@mlYg zh;`HW)jm4^lN=;P&6#urK=Y^#(-)cA|a zAeXnvXm`XE64c2%|3ST}&IP~nhGy@Ve`Trm*M6mQ4HE{RK4WIiRaei= z*i}{KAD|s(X8&)oYh(x}wh>m>7J2Q5(8+O$7!72fSMj^W zBf+};Uqrd3f^G}1L5f{uf>Yk@>U(jbwA=}^Q-*}Rw^3*6##9nfGt-ctm!gQGg%}E0 z*;Ram<^|d2mV`!BMdnGR%*Dwk(*>Aw&RD5Wj(m9+&t$$z@;Zqe7d7J6O)hQjef`6MvlXWUs!Ao?fLCdT zVad_Ul2O`n{eEEnAQt6!W;izQ{o;p|2&ie4m4gmOQIdh9{Su1NIPz|)W9i)|6z{^T z!Lg3`t?{Out{VZn&u)5Sse+9vlxp_bxM>1N>j8PRvrP~!!1BXqu?>N_#14e>D5BW3 zc{o;!pHsXQw#opee;DqbwS;$U;L@s+buJT zoUnjgfKf|2&}4gv^0O{cT*x-a7a%?0-VU!Xh^l@F(YX}#$UIJiWZe?D-vFq?&^Is| z>1WbU)b&M8D5Xl-@!>ix+4N+|x81JvOzO+@WUL+86Yj}viiv+RReMjL$;1#TXK zkB6dW&O_BzqOP8Gr*jiI(dReq-h7v%K5t_edP2nw$Duxt&pHRQTX5^i zo{DEIYk2?@yud+6d};_9NOIgXOZ+*H(OOfib$J6FhQ((67ah^Yq=I1Vv?l@acD&jx zKR)Rfp?x!kloHVJN=3wuz$AZ@J1cHeoa8GY)HUo@atu&ln88+}o-FwWbZTso%LGo1 zd>EmNt>-dBj9{xQw*$74y!%3&hTIK)*k8AW?2)+j^{q+YuNw_@Yj3M0waQ%N<^wDh z;QA8`#dsG*`?X+E{k2hECs*v{&1LZHlSFKtKl`s)pGNL-7ZX^`vENkYVxGMHQ%!e^ z+GqAn{_}1?Zthtt_hM#CZzF6WDurzt9qY;lofq|3glt>&wb;_zvY&Hw(1yGLwEiRf zCae))m{Nfsu#w2ULxtJGs3-Ozo~Bo(ubjK7_6W(8p^3&L?ZG~x^42+8@h(L538@P# z=Nn2xvgbh41|dNOxkvU8qLzDCp;t507H~#i16dCRINgXVAsdDqkho@ZuisW5Y@4ht zc@hDQKi4o4Q4y=?e>PZUyHZ1uQ%z13YnfRKhu#%Yg_z8Si@pXE_Wg0z?qU9oui4C; zm~(fhC}zR2hjy zuR`{9EFA$77_U-NjK>h!_6aGdqaaRNv?XhxEn$7XqnBqTBX&T$e|uw^ts1+2_ZvvrLB@cFA#};vSSdkkwb4W0|z~b6bxWD4833=T^`Y z;_#~@19iil>jRsX$i4=|(6XLz)nQP&F~xWjz{>IiPepk{eg96MEMiP)BRif~%s zOb^K1WJhSMqvxX1p+A2Rm5N(F{27yqUghXdwie2)P0l|4@YPtG&IMS7aCiWWrVeu20v!j& zNb&fQPs{;HIrDjAV_nmox0`=3K0#>@F}N$;HNp-p5l4|p#1L>_nceWMf%!Sf7!~oN zY>njWSGzTu0&z&^lgR#vW3v{2)}&gJk96-wyOz(i!=3HydbETAAP?GzvX%1Az}$&& z&D?ZA?(qo0wM}dSK4Nt3NxnwyIL@!3?;)IbFFqgN# z?QT2IBP+J62*o`?njL93mPi|a(KliVVTCc{(g;TFL5F{ul8<@P+Re@T| zX^78cG;K)2z9=0V8xH}EaaRpLzNF>$gE4x;9ap_CG)svur7? zEN!H*gwnTUz!3kfvOc_?UYp;JNdewL@_jK6JVL|3S#(ZlP$)3l(di9MJlOX}bLb&t zR@w9HNKSm&2Y#31qh0kk)@mu&C~_7^P4QINS?tj{XHLEfSJ8m26xjlap^ETpNY-r$ zVI1}@yC zTDxjxPcD__1a37j603ac0#<;{{H!Wmcp*EBT1()fGb#3pQtWC#dtcEMEGqJ7V`=r; z%3Vvt1B;o7<);y64%YO=zvg~7_3Nm_j==iY6`Ivvr*{NDxIaGlLgfz_GxHr=D)U6}(tE(Slc9sy2M@^A zqM({ir7p8izN-oe6XBB`de#!L*1hwE!$Xxn4Urw6MPN6MEV#a}lPp^@c_aB0jP+Ok z8K#$f^{XPQ$qx6^AMBrc5bru5MesNW-!R{1ZmaAWVAtnx(dfHksKzNkhPuORK%ws2 zH${|7{AGUns-MyNzy+d#mfHztEUQVO(tP9|1llPQ+iE1GgQ|~Rk5JnPYZeSyFf-G^ z-PvQsembxkIelIAE87gK4{Q`h(j20kTlwp;Kah2S(G~erDblzb&QGqkDc7BtycIHL zX4tMY7~b$2TFiArKiNaIj>N7XiF*99_}kb~mS1k-`b8CT6CJ`wYej~jkQ~Eor7d~) zh|*r}i7*6=TtB+GLnBI)w2xbCh?GJD-poE0dRn;}fZ0c#LT$@|-F<>Wucm>yScz}+ z+R-Uq?{J*S{kgNnf2vUyrM4s34P=%%5e-S(M3SPmcFvgEdR@(LVDwGK=+xQ&iYCt}FV3`g(R|jhEzEV4Tmr7cmj@HQBrUcm1u^ zODR>_z^*X4!`>52@D%&tcnKj{<4UxDx;Wtvmp>N5! zV-PP4KGXbL%;fxndCzD$%d)Zae!j~uqth+sbg*eL5--!qi))y}r2mUz+jQ_!6C9eL zNr5ykhq}QdFOBvc;@9qGUKnLy-OP-nubF1oLW10xb8Po#_VFE;^>CuiS?(+2vfZ1W z`Qd-o51LngCs6NrpmvAA^hkJGCTJz=g8W(IV#xn%Tg*EOC@im2eWXeD)fVFRos{6N z!V{lTAF21=AA9fh1gYQuqCRy0UqO-eZa$H97lRDISSOwM62tEunL3Q@lRGXWA_GVI z0nN{EWW0;MTuqSfA(L5CVcYttUM$M#&c+g!-A%7ZkNK<_EMevP>DnGQ;Q)YA4t=Pr zt*cFQKe-hJi{IHumI>1ETWN!g+Rl1tz7w+=BcEx1)`^6Js#>;Yv{eS22|v^gVliu@ zzK%uI3F2=euH4P)Be2&E>Zv%X({Jn>x}`m?S3X_Ys6E^Nzp3c_|0@IkWo1BnoCj7) z2sK_;@m43n4q!nSA&q8=6j%5#M}sLl1K_ZN@X9h#<<{seoeQqv1``Qsm3MY8oJeD0 z%RW6WFz!9GbRtIU<`PzWuW(-Z3xcf{BSaaa3zJS;3R@I7XD)vTY|L+8@HW|PriWJKtDH=_DxROMqS&7J0rs^iva92jhz|` zW}d5v*>23NXvJ*e3eGwLpF+iwOPzMS52ReftOo)kjq!7$dtHh2L5*pw3y;*6oG?qQ zt)E_WX*&i>@jp=A2|CN?2!^8_ZpUfsObo}0J!-#JcwcytLsadihwH7s`n2wWf5$oD zME)8rA3l%mIIWP0)510(ucfRTVatYT>ye*6zXS7DXScyM6SNK7z;jaPuuUPl&886d z;m_TqC!@h3PA+xzx*O_WW%;AnP`&aVxM`h{ly>eq#2Zd;!5FB$q@T~0(H4xo@Ogiy%h@R!lVIG z)ZOx)CqeHig#F;FNqp8F|Jb(fML4r-?I-h~d9RZnql0>V3jZEIXz+&osNTT$xt1f3 z4!qW;O!#iD}) zqX9$bYJGQ&y}x_rsslT8f9GqfJBF3@JMNhq#U!s{Ks7imFrnK-#egEa$rH#H52zc! zUl>qK6kw^b%?qe?1SQyH2GkjFEd7hB1kt~vU`kCECL}%k(CPXB{T)nDB!c1K&K3(( zgeha?67**sQIzh(L!e?piVh1D4`0Ijl&KY=k*0%qOm#?A7ML>k|wy^Kd>D zlusCg;G*L1CiT`M+ZENP8XDPk**#4r0sdbDYximo(#&Z6JQV(W%IS8^P9zdeX|ZsG z>aXqXm3xp6!WJcV94o!%%K83KoZj}HMQ_7t4UqaL7jl{_qq;_he|uxDY5&`W*d zm@jy+@x5~KkLP}FPV)G2ezRep4kLnC&ud%3b)nh;k4?CYs57EI1cOf+Z2C@49fig- ztOltYadEQO9HZqa&^*6}7^w{6R=8wWal)wHQoa3?!@Uab#^+yWq7~=I4Ib#QiNK{- zgD--^FjouyMQzk<5K==*7Dm1ET4E5EPhP0$kmT5z2i=B@KT_IVn&id_OTTtijyd(& zH{SqE>lTluFhMOrH=>c1iSwq+q3{FP#bxh2yK;iW#eL=A~CyR z%fuTC=yYso{7>v5-0x+BPK%CV(ceYb#r^i8?R=af&R_+%NF0cv_hrRG(!PF?uv_&!7XZCeC}>{~~jYb&F;n z{?~48Pf!K1S<^i-UglTzdPo3{-NNyX^^RC`CuFBDe5g3?Y0uLM!`IHN(!lj)Bwx>< z{zqw7upXwJpXA2}hJ~L+L7vLsylvXQ0SZATq#8;XHwY`Sm>ik`#OR1VI?#&W z3S)sgq5)?SOFrGTY)-!4+ zyb~5pJP&zY7I{=W>0I~S?dvE|YMapd=-M0|Xy72y1tvXNnx%bQYaZUDmt0xZik!{PHg%6(T}{YW=_r-h);&Y_L4YKynFH!hZyRK%56&O`}c45WBpi7vJO>(Xdl zP26hJpx&i0_8l-_qlN&AaW8c>LXev4cJYkxwuniq2n~DJSQrcD$Ob3v^Rn>br~+j; z-&z#-5nlEFOIb#*H->E(ifc~za~tlbzlCL!^fvd6 zKlom(u6UVm+j-}wv@cGz`L+dT()M0Py@tIM-av711lDGaBZVOk;1}BfY_D)FlzyWe z#uqu~$STU$yc8nmNrB8eA)Gzr3pOtYwlp@eNu;|CY1Z|>Z_+78jJmk15Qfylqzlj! zPCTRtTDe>5NX_VWk?CMnT$0(*Yp!K=zmJBEytcEqVh*`>lzEUkBQWG{5`qSI8Qp}*%owP=$L7Ty;62O(N=-+uP^Z9 z)D~i2`8;@Gckb6bijI-oQK(W9k$Aa>E%;Js?rJB9nKPGBo2j5;t0^UI{A1S~4ZKzh z%_d>LE!9^SS$aJj;RONFm-I*VrrW3qr*kc)8Zh?cg^SZITn4zN$hd6$8fPc09Wcn* z{5X=fdT{P|c6&nZLwR?T3bWGl%;QI|uUu;E5#38%>SEBY9G*ch{5sriXT4kBrj1ZL zetnjB4VZh@bMfjQ5gSSI^4>0uD@1{9Qq`nHkp2ou`}v ztKynhb+*Y)4BN4-UgSK;EUib))DncpB*68x(GyPO^NiK#Dzy_Mte^88?o2r;zrN7P z!g_eFYA3%jAf0vQYDuVja1;2m%^_b0jV)=AarEWa2RRN~E~92QsFNh!WK$ddv%EEt zhbdC^)+_Rl&|meo7EJIipJhA?iU<%{?)ZLHyVx-i+et^fudLMc0 z>vDj7*`<;D;8d=6PkvE!+@(6$_rhB{L+>rgF=PN$?KM=pLV}J7{7$u7o|K+F=ikS1 zmrvmQ%9*Kg=4ahQ!<0#msx#%r{sqIAh0AN_m4g0JA7))a(z?mf9nuuB2yufrkg7XOjeHboB3?a^(Db;~cX(@7L^3wgOo`N!^}L3DOUS-HYqlY-bGY)>2X5cbnc;ssQ1|@&;wSQ~ zS>(r|=^IC@hJLeOdv*6#0E{D!6oH?`NI_doNtZMDzFTE?MGu)1hKR#_hg)nA$L&p} z!GxO?^wqbnsA`h?D`BM2xfD#ZCYQ?w1BD0ASE*a{jdm~A<5yC$m1S`H^u2JIITpW_ za(Z9CLnUYICxT;pm}O&L`#fzEbe<8BuefMjBh|CvXFi*X-X5_p|5;QYnes6R^+Jjk zHnoId7K=H{;3j1TNOtjRfhi3$m4F+j#>m|j0n$%3Pra(9jQ!o{SLXoyw$Uqt>UDYH z^8Ffdpl2y|tm=d5Q_Gl>?-pOQcvu1`Z_Na9@d1^H*?_meq;j_n+o=f;5jBNz5Wkiq za4dgSpZ-(yuZPZ6&h*RrCv}@h6VYV@<8`mn7NZ}h?K`Y3Wh!=nLgE*&FMtb&y5(q4 z6aYSE>yiLCzo87t^HZU(OVWlD$2suEf}^8#**~9)c3}N7h+S6)N|NDEle(Fkt_2#P zkUhYR{cU&miAugzcVxkBPrJ(rl}Egp zq23!a$#GjtQCg*N3h~mT}#O9Q>o$SJ)FZWf#Ca6EYU2N!)Q9cNpNpG);k$ds0c1q{-9uAHJkA?&F zNI7~na@)h~z#x0P_|5Yhk@t8!?-J!5dR8k?k@bu-rjlW^V|S+eMp!4#zp*K;~FIRqtX*7bb-J zL>YCWOIWkXYel{epcVUsy&-eKRPU;US^`TtpA{$GR2z^M5J@%RIDGS#Jj zYv=9_e{?;x823otg_Gp(dVr4WLmTGaM}OY+A^tWKM$yp8K zV(v;Ot@A+sc>GSjI34@p;!Mimxa;J_`$oGre4PhtE(vp+HpZ$iC0+s)RM%%BO|i#; ze-0%r6t^tgzqIlJnlRKW28p9zlP{sR@t;S)BZb97vYq$F(Nzle>SL9**qayd7{eqtw2JC9*hB%SZ zf4HWTLhT?={LRK_POa9$X-HT4tD$CCTz6me12pu8d!DwO_J>9*ubpe(r})TdZzQU1 zdod%3;2?=LJNCnLR6$+PX{5$)z;UMX3@5A8y~1IQnacxo0Z8oBnsR9rsMom7cWBT< z<%|}>OQr(zDTE|k2a#7yO@c>nHVG8}3xj%QCrsUmBNIp7|6@WtwoJQvAQnW+v$iLCUPXNE!S@5yNA#k=@zRGmiTqRNccGoX3HFgQ=!MFp(M>qH;e zBxQzcKw2sGDa&B0Ew}THnBPFHE131w(8iov~2(jjti)W5-;OusVpb})V~ex&A`swa4E5Y zx;lBwspKK2Fb}9vX10waGWLCwQ}Yz)YfiDv%>*-~wd{ zLwa0;Z$OG+hZ*Syk?rDL%@4Fc3y5a;)ii-y{w*n4KOzj%j6}<3^a8`iJ_mVpGRVd` zm3jf~7lR`4mi=)n=LqPNqpf=Fn=sFb8}KH<>V(A-&1R}4>`+X8#K;uu&aqaFy{o-7 z)*)>^9SW)Il$SbiD?jwuq_OYWS1TM&<#k8SB4=}dX!1`cFqVVc{vlyimwK&>W*sjF ztZkL1HG{bZ__f0C9Tu(VMfT98CFoX984=`MkyL0kHjuF9$8&$vS~F>*_4B`J&5}Fv zQn;HI@8GeT?#3+YPcWf%CPj>exnq$(kOJSwZ2QtZWgg2^jY7 zNAfnZ8TynWi7zXK<4u=jI*Bud0MWHa%DP5dAH8pOCcW{lq70Z0` z{HssDJ@X(-V=)PktJ%m>l?AXwJ$j9kMH&YVVH} znZI?Ke=!{UYV^oU)ww7As3cuU=t1>&i;w?Bog$l1lK*=`R`!f)3<7blfbq5|rL+sbNx=PHL}BnTrs@qa?>KP& zxC9KG8TjJFTiYw|NtEelCrOjs4|4lTPM)h>v>sM#&&Md=LgMS{V3jR30utwe?t{=t zTQh{iD3j>>kR8mElMJJBcHYqere+9AyYnPuG%(6!VOjeQN>&oyzriGkR&a%EQT*({ zM0psB=I0~N%K+B0b(;4g%mBFxc#O!)T2-qkVqa)nu}fTI{Q`27QA;eN-P`kpk6mg_=R&pchwQen4c-EmT*4NkSF==Z^XS7^Q+%d zPk1Z;>%Ou`z0>4}5dn;sdD&|tg6_U|F844yILO&^`fWpS@rb&#K5~ipO_UoA`5NE>P@lA7A(g2+oZRdT&7vWU7du{ zPT5Km&sXWeaOh*rhM{w6tW||`o9bjuiOct&e-ZcA-D4I^Z+`shw?DMlDhJBSJVmgS zw}zxKxbF>~|JI%KGmMq*rrfyc-{=1MWvZR)L0(Hq&~55IwbrF~UG?wSVr)pLo$mR9 zi*`p*5{v`5Nyam1CTe@|no+2y;P^J41;Ug%wm4?d>qG_eywwz9OXGMp#}is0gH8$- zBI}?==kI$AJqzk!PmGfvH)f3 zQJ6DSpUm-rzV3me=cik%fT_R{Dx0}V-B+~%rz`LF>0LjGM-SOg&n2x!>NNdRL3O@o zJNW^F(_f0jay62`?-fpgVr>_YfhA8iHR%JvE3sA{{%e@@g;C&jwfpAPoE6 zQ0tXUb9LKtvUW65(xA?H*hqkClK0t+}lhGT0<>} z`Vnp)bAY{_^0GH5cc#sBc41%nQ=DIT^}(L-IP8br7`&$hG-X%mOThQUsQ(wWPJIfl zQIe4{s9VZt?{RDs8^#CF3R2&)q3F~uhxv}igZBn%5b-?)+&eY zj-ZFn8wJ3XwPLUm3!YYhxQsAgV~a70xcPp{p9B!RU>yTnXFUPzS0A z{3=8)9ZyqhRfMW{Be}vjK`L#dSiNNcZ~a+M*7Q#->&9&=c4#P$w_=iDwB?rCyW%7% zaPa($!qKB+7y#^-gjH3n+|r7JQDySHc@2EmoLX%Xlr z9W1c~bAKyN%9gcnoTb195b=oQ`CIr;Q zMOGEJSR$DZz~b3DwHYWHwHF`I^wrMrkhslpJ@v@q4QiYu+CtnKG?P9DUIJnIv`Sv3 z-7em!*-CL~5po%2q=F-pjo9Y9Rpn*Y1>}ozGx5r>gC$A*rl@&ycNyzCJ(4_X(`B&} zVt}{k27Wu@#()lqvotGS4FyZZ*;Jhh^`0RtCM(QGY~`nxVBcB}<9E=y1z_*Y znbz5O{*H9fLd+Lw57D-lr$3~SI!x2EW`N~xoecDoFO!0g7VP&k@O>I3JZPJENozJw zp#Yr(ehHGJat?dEfaYU#u87wLqnC4AmG%J}k5Cp%Je8yBTL|y@EF$nGAX#wtApe_Xs`4a$)Pl6y3h(6>5PX z|At&8z~bP=CJljV*2me))0xdftP46YsTMyVDNhl{cG1#)Fzi15s)+}?q*vB<6V`oR zSY9FX;iYTzUkuGE`~ssr06#x3!`{jN-l^ad7xeG6iLj7kmmwISzC%txK!eS}xx+R} zI^3I#3x_R<)bHT{0MuQs1_wW1FJ>>2CvA@DCa zq}zUWr~OJkFDYmt>rmb}8qwMg6k0St4w(?w)~nZk`80L7=`D7>tnXO6E!==}eL6{t zepyvkQffbTzcECB4{^I$Xc#eYL1pN%!g1QOpZ99(iD!mav<5vF&NbhFQS6M!A zv*5IC+8720HHJu0DW(3%AR8kL0-S4BLZBT_@#^08nd35Dyj<%uG}u)sD%M#7~-MY9JU<(l>LCZw=W!;?;>W< zH+}(&T&-1pvK(D6kfU=&?ud?BST@%4A&7P-+HPPh+Xc1w%K-b2Zv)3=+h7GRt9Hh4 zVwhph3#X@mXUUxAs7uK^0#);5m~?=R>w1Rp`1APf1F=oL=+ADQ1&=55-7;!mu(rw` zY94zetQD9H8-${0bWJZ%=a$T35F28bUk+CfPNZ&z2mlbURl4};g~>IXkIWyjfr*`j zH41j9ZfBSk^eN|Y6u_!SW|E2S@Aajxm@Pc-vEm^YVnmP)p3tVThf zxjY*zCMr)DV>oB_~r;mI+8ChQt;Nn;w6m$~2MPeY9GDA_0 z(_m260fNdNV9i(Y!`O?Dxa%o&iC%GTvC0S7-y;UO+8~-0yU5IredR_t;n4DiDoUbKuLdTkP|wg$mui4O!Y;^~i3Za54rw#-U|k-cv7QYk&`3&$#k$)5 z+C`H#7Z9U9J$BUA-Jan4wsytw&k278MN3LCRAI}B+o#EP&?1`&a?+D7>5`Vp) zB>KG-WjksO)n{a6Vn?K zb7!~lXFz1~ZJ9;o?(F+HmlKCm&2KD3^}dq3n!CiwRh$c2v%A*ol*Dg5tg|DrGiG4J zhgrG#CHD{WQ-6#n>+1xpM^6m^(2)6lx01^@KpfA@ZQ6g}c3;5MZ)FXbU-Ix?xa8%E z!tA2%m-9uN|3y9DU#<@du!lW@^|+GDxoASit=*XF|ChD&U(rX){!b3mhC5S1*t%z@ z9)?T`&v5IXjuOKn6P)IiFQOXnmi!)_Ru+GX`TDytQE=p^zx#-OR8nruLx(6RNNl${XfbYkLJJd=Nu+JjlSP!Y1Gw3J+>b{u|5|uJzB_d2 zz_MUp(th4xTFl;9pxG!HixBdNPxK9-7b^5Hs`7Oy~qQ9!)px~9EI90{b?WXRO`k$uE zUOrsW{-2-E)!wX2v=kW7ah_5~G)2%BG?T^I(r1&U-dRe?^BThKk)}6B9tBvH(!emk zC!eb>^&NcfP!@geY{VJEv>mTd=F$H*;))6b=#B$~?l8A)y9|tcWpeU$Q$bqXKU8lC z%an>oe#4tn7`{WN2dbTlcaM6E3uny}`jc!=ym~(9BsPc$`j|e#`aP-8hLH$PA~50B zkxUljeRi+q-4`9^~A{O_qxSBM>$6p<0q;KFxRpKy3#q~3-+1JhCbdd+Lj zwYO*B@Kn3FX2QYj6JVm5#5zDqq9J1=Ezvgl`|5w?WbE(Ww7kBykdya_&}z7xsVJR=#3p>C;u; z>-b3*jeGeC`kB%(++V|{%Wsu`uCu>1WyKGi@W1eGbi;?enU=rvmuv_|^;u(lSNrP_yFhAPLJJdklvN-~TAz zZf9ap)8Ta9HE`=?|BcromXzmJMTj;J$cAe5f)5Iu8a_0p>G^o^*n_kGl)q>yX;W@v z*_D-uyzOSHs?UA7Wob{2Cwp)nT4(J&tmpQ>MO*zZ@n50z>42gCq<_t3z&Dp)+VR<| zq4#Hf^e!uqzBLxB-F}*>y`b-E{?Eq0-EuFXJjmXknK!P!p*1LaJ$CDuUm5H81|4&i z=r#Mj0*42{hyC2AvrlK^?393~osxTH61B@C_sg~=Y9e0)$??e4mn-u#*Zwc=nDefG zQHkcR8xtjSu5S|VhcE40PF)1;TUhe}9dp9QlJ_@2yjavckLh<5e~dw6UcfWKhos#* z7X!}f1+`>j@`@ROW$bt|1@*T%{V^jX;l7r-;Y||7Cf`ZxE4}?RxM%@Z;>y3M-}f`$ zOKzQU-oHc4I&>d$1Jtqq36)CNM0HVxsbhwKa?|4n7PvIusn;Sqo}5%C4bsd%(`&ps zX43FDDD4HTD_vGzzgSRC-Gk8KFXP97R`5MMo;_P?(IiE$jtH|T*vI9R=&kwNC$7-; zACy~hjJ#fv3R{bnj}RW@*-qC1F11l$0!)D&rQ&q12}sKg>dl-J=a@2Dw-IFWF(jqS zpSGh92%JmUL)hRXp94_P=LLP{Cg-;yQ|E3HgjT3`Z@~}hn1^AL^Ee*BWIIyOUa|~i zp69qLFCaTrdnn>gq5((u3hWuuIK=gc6z121ZeIE(PdZ9oM{)FH_fOCInjGc8;aQg4 zS3FWd?Th|O`^!EtyO#5jQQ3(C1xB^;9hHR8p@4%3`zdwl;*&Z022x`PLFgRwTJG=9Iw`c&*qdW7%bXT`)O;ZEKu<3 z1aNXWi!J1c%R}VONhFm?;W~rm>_?6Z6u{dqtlE8T0sJ;ubiyy1I>rL9f$pLP6h9g zv2+9JXQ%qYUMG?thlPYh84};uUREYskRTJK0x3;|=~8qWE)n*U&UEthsl)-!Au6d% zjay{UzE|5eAlfnyOzT44jo9`9wXfWpTnip@+N$OPpJu4IM_FN<&FXsU_c-csX^?mP z`Q138G833^g4GunQ%^5G1~oJB`Y>S`_ZxVKTY+vhC$zd%;%y-lezTW+{wg{dL>hEh z!_jS&qRx1i;Sy5|ySL}5n@>Hg%B_Fq^SC!0M2PO$r6T}EZuc|5WdhRsGD`smD1fU! zf^wROX7SEaqVYD=<24OHPkzG7HR)B7>>SR_o*&z(<(8L zBFK4}-#omVknX@*WCkpn1<|k3utsoYPsvX~g;MHRw7W~z$f*}8tb6UD+ z3q(c&grN4 z{E_<^MZKf4M(zMtVDAW{#iV5E5O*z7Ah%K60XZw4$T2B-4T-pl_dK}Gv?LWyR9Ko z@TS!LunoUAgRus0qWQ~HnU7#$aGPj1f~2472s#9UxOWEi;o>0;*$Byf1Eyp+U-CJn zi7CDjpo{buwx8cx$4#Sr)~RuQk|sy>6gLNViBaN>LV4AVV23%t?=rjw7%gWa=H^Cqu?mn6p(H8h-p0^ijloMv3tpoHJwTM8%M3h7CO4fc^REFF4!E_rb!DD9y$~S)gU# zoU6kAEN{Sccrut0=AW~hU`v-gEDXC^sTsmNkIu`ahfmNWd#rs;lr>klhWv6w*ZC;F*XU-Yi}@TAaC8{Jy{X*Q z-cZ01sQw0iRVdYCF(+=gVL(AOtfcO*>jx(C;I04{)1$yjyTK$KZ%>&zoN{bP0n%t2 zOYS^=hlI)A&K+R8`tR0KE+v=(%?)^q=Gz#{X#-##DH0~P(#_Oc;bTW?1pp)G4&;5H zDd>UF;i487p3xjjzk~D*r(x78$1I-|t$RB+8f_BLg4&7U2l02NSr62iL4<_Jt5_b44~mu>DZBJ?3i`; zK6u&Pfl$BL2NtO+mkF`isB&TPRY5ypL#!gPg=R5G)AhBvMvxMH&T#o11pT;TpVqn{ zhvyn+UN-+F@>5IeX_;AfwDFY2XzH{6i;HCGKbER3s8~$Bi-N>buZHtl(bp{ijxklU zo`hLn&=vHl2@dZNqruE2th=RT4Ww6{J#L*1GRVo~CzQN)jpdNqllg99<_R$0r1I5Q>*Dh^AE%G!)JDT*mQ{5y66Pg`&S{Zs+ z;?l_yonej*2+j`MNnY{U#fAF=yau3`FHK(d|6xM3ox|>rYqiL`5?vA5Yf(d18lYDW z(ZM;dF+n;cuReY|S&>erc6Os!YDILi$nZ!qepXuo#x z8mHM%mllmaWO8lBu4*>gqdImmJV1bLj`t^T=^X!Qp!Rs;E631ew_=R47mUHaqY@Tx zKY&)#^*LtnPC1Bn%o1x;uYkS8R{ZzPke!l_=3wMGzYsFRRzsZ)Pmtga-bhgOy$6vZ z=RPMr;^F5FjrkGk9Tk(#ee9kE)FsWP#Zun+8GS@s`5gX@VMx;sqw{r<(xd$xZ?G~c zTmN|RVP&mYKZ0)P@R)lFUeN`WNuYp?*il`I(+c%rLCIE=UMocjV_nk$EjB!$oP}$F zr6LI`Z6TU~=~b^Vpv`YNb=Pn;nG+Arfr2h`A6Y;S*OKBU=u+a%PeU4#J9;VNvJcWc zdmx+?^0D)o4p?{9z1Sw*>|p-`Ep8;VkgqI6rs7nF5yX|f*YLVigj!acV~)rkxfd^I zX-`?~Afu*;E7=6C36}!ydT4C8L29cwVl#xbKi|D?Ag=1rn+CsZsokYI zj8HIq*HLe>STi)&V|yTyJlC^-=_}Y#y;)?@)O^inbjYVTUZr#B%1^JKEEfEbO!J}Y zEH-GYNj%`62Fp&H5jhkt|C9%R`r6fK0#xIaZ}2rMidU<6CD`%LTS_W%>Gw;f{eav# z%<041eU2wT5J#9~#^~ji_O;8A2M-{eVLuKtTUhcO1E(2s!ZN!vA| z-T~XR>7vsX*vw2ec}Wzn*0;B%9ImQwUj`TPnUpsE(MEO&pMMhx^3@NuZgs@!POx>G zvUjz3^a8#Zu;nl^-M&^8vgB&yqFA$iv(92rX`e9L^bL zl*qCMj!*C66ZL|Fkvra?#Y$&~+IYj}>Vn&0qyXjDQBRAzyDh-6xAZ+|RrD8s1Hs}s z6u*B_-a*L#U*Zb$<<0-1lIf?!slanz#a&6YxTCx(;6-QPPF&GxgTdywSvZs~J6kQJ zXW(2Uq3AH^gGtcPPy;uyNoS~Xnw@7DReEBu+~>e~`*PH5*W&YUltVp=P6rTPA6l&CoyCj@l=-kAm*WfN$&$qUnH7{{?YtE<>(4aZW@z6q z^VuYRQ%yhhh?H(l#WLDOmd{h2hF;Ydc?x3bYgUk}$Qy})t?|)WC<%=~8z9!YOv@cx z87bm5c&vKc0NzF&Hw+$;-XNqo9NOB2-wcskS?M&rw;W3zbR7wh)~8XuDglGjG2=Y- zNY!i7V*va}s80V?xQ9~|)L-TB%fMgB>(m(4Md~2|7)9im4wu5V5?})lg_yG5G`t0v z%DA-Wtx$hsfHFI|%i+-KJ5Pm_DKM?mWk=*?&-rC28;8bBcm>(6 z^8HNE!LRF*KXC%|Fr5zZ68!hb>8_>3HqlD39gJQpCe0@R()SGErTr{@L#XeW%GOK5 z<|FgctwaYd0P1x*-K>_J15FKw+4a*fv|iw!#jo`PD&gg@ zbzIm#XI)+vm1M6hg0)*s=H221*Q?oj{`N*;*~eb>#~rv;Df;q0nfB-Zpx?1N>Hlo~ z_WDeN;|)YrCmkb{p{UwY?o#~kA#qbzyZqXLsJ(w@3$Vk{AJM|piE-;~wsI-s*2x|u z@6X)d*KhDhIL)jB`uGGu--}Kv7vzG6Q+e%QCokT~|3k-1hupn^Fc#((GfA2F1Gp(^ zxHEK7*FO{Q$8mGtV(R~6?R<~ky+ZD>e8p7PG2jV({b02!cjv8v_%K3K7YgHfHTlZ; z#ST=A2`AiRM~UB|9fGY~KN=^Of|A5tOx85J%J1JAJY6v!(SrNhv?Upr(ypVWy5zP9 z{@oyhX&G}<>uY-Zd7Os~qgopE^Ehu|3866W+vArQCZ6H z^izYII4}ET*?fo;`OD**E7Xaq6+}u(5W@eq3#`0>JcQDvE()V+B52a$LHisbS~aMM zTa0OUHWmitVjY)*x5X4YpTV^V0p;u=_5rnjY=dL}m&xFw?!7M~{dXn1<(bktx0~F+ z*~8k(c!Ve8jW9YAblO;GHG0r573V5-G^2#K^K?0z-e~mt;|QyealgUYS->8}jb`9> z$o{Z2y?ggA0Iehx-o4HUKdk#))2`8tWp!z($+TEM-Sf#q6UDWWm+4+1HkiD(;>*F zM-eg!1~_w-9Z8rp56+2s(JCZbT4m(>)~RX{au+Mg>*{MikWfU&dQ= z3s*)*pPRWAD`*tN*^Z+Y1QMNAUq=a=KS9GpEQlV;bhlG4!nU2`hX<<^it1EBI|GB{ zbqR*?Cn|QBCH?TV{aB>(CB3pxDBON_Nx;S37B)|49Tvuecpc#8u+TUQc=om zUwndWV&NiKkUKjsFTV@F<#>?K`;C+hfGqjazWm9f4!I25_qUXHkL)(DZ^w*ywP4nA zt-uE1c&-C$F2_dJH7!1+azaX5i?-B1$FHk_!*g%}pk;r$cmKoas%}D#L$oB{<5BCZ z%62Lsxa>X36?2{bQqT@k)tRkA1`t$8WMES_;h00C`-hw`+G_l8CC*%Gzh#ntxL@#N zeUYsEp+vFu;2_>H%5DGcjKVWrSw98ud%8_f{-WrleQb-x%F1untV2x6F0RffZ9r^1 zJ2TS7*ZeR*B||F7UkR9NHg(Y5F9k9LcbbV@p6`4aX)8ysqnPdEx$yb4^+Rzh@d^#p4l@e^AL?nOSgl)fV06@B{F&)Q-C!j6zR7$-o5|B$L$Z0Qt?7$Z=z78Xx-w%wtFaF#1i$CCZ_i2dWn|~qqlXJ; zj&KI&NX0*Tv#uLUEF9rpiAe|Ob?X_)YPtk%hRjO_Ezpao2 zAW3CoR8P>1a6+XlVYc65l{y|aBBmTDXa^6#_R+|My1XlkFCtGzpDv4VTiba4VR(6D z!l6`>9yh%#qA>dI(?7+LukLIA$?*k8h>#=TU}f}Fe?ski`wSYCsp9t0yzB&e>lmR8 zqrciMK5Is^bszlWLf0|)b>C??FB4~7vfZU%AuRO?vE$;IOTv))plYUZPIUApouON_ z-klSK+Tk*l7sXE&kfC___^ z2T}N~L__vWhR793kA5nA7b=`IHD)qL7#I@GcrZ59|IH_U7&O+=!Jga~zOBR@xJ_K7qI>oqKi!k&fsj%D@a4kg z*}ytPigGFZR1E@cl1L|iBZeNlZL5P?@abYKiDj50-O4NQT~YIsccHXiK)0g?mIej~ z2Yc&eRAU+GVOxxf()FI>Sx57 zynZTQ$*a?U@oZ9K$<6I-{em-hU_n!SqW;Hp&zy|he>T@ZgQhp4>1m{A_kJOdZCRt0 z4TmeeU_l-WOTlec9R(b^Xvxe5HMXB-4E8({3T;wwNm9Mjp8d6>iVbY?ib$F}AOq6V zG*&~iRX_dR8#c&sH3}vzJLgDt`Uh){*KI`2^`_Ca2-2fdT%Ghb!WtYI)5b{WEdf9% zA3l9Kd!^H}8C_4CRL82|gGgrFQ|$GGIl+x0&)RH${UJeSdGD`b#Fv(jHXG=etM=0V z(rf`JX26pIEFm<^YG*8^#zTijWuf_3tC7T3%_{f-uNHX-$gw_xP0ju4xbn$`-G5iA zcW(6mTX&_^u|%f~*n6$t?u`}<)pEo=1Y&jN?3Aas1DVg98m`($iRa^ufL=#jAUeGsj(gTv%Lm741}avIbocG0o7r8qd>6|_5=Zmz~^lii3efL zD%_N5K+1sM^FiFsN^co@IVA>^T88$uzrnm5oQ|aDjGO~5=2UF zNCv1;VLzhpkpFO#6h>^~UElM1{dsBNfmND{)u1D+VIxaq>+QPQ& z2_EU-NT7rtKq{a*;La;#q)|^jMa=dM#$uLHZubT?fo9=)QQQ22L-CW}s}-@up3|m% z^(l%zY6=kJ`v^73NN*)@3(chBEh(iEL8s$&my*pzKtXQjt(sWSZ?-DGCpXjeb?MNU zz?f9dk<;`C6eizdbKSt~NOkPgy9ck>gR#vnhX-b=&R*MhUps~PZsA{40K`g}<$;RG zLbDB!N&q4?5}hut{Xf`y�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%0AGZ#Y}(-Nq(XXH*O^D~s)o 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 diff --git a/assets/sharerIcon.svg b/assets/sharerIcon.svg deleted file mode 100644 index 10e77e3..0000000 --- a/assets/sharerIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/snpchtIcon.svg b/assets/snpchtIcon.svg deleted file mode 100644 index f75006e..0000000 --- a/assets/snpchtIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/tgIcon.svg b/assets/tgIcon.svg deleted file mode 100644 index fcf48bc..0000000 --- a/assets/tgIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/twIcon.svg b/assets/twIcon.svg deleted file mode 100644 index cff86f3..0000000 --- a/assets/twIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/assets/waIcon.svg b/assets/waIcon.svg deleted file mode 100644 index 86d7633..0000000 --- a/assets/waIcon.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/bundle/sharer.esm.js b/bundle/sharer.esm.js deleted file mode 100644 index 9738265..0000000 --- a/bundle/sharer.esm.js +++ /dev/null @@ -1,898 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-04-22T09:23:57.921Z -*/ -const cdn = { - url: "https://patelka2211.github.io/sharer/", - // url: "http://localhost:5500/", // For development purpose only. - getPath(path) { - if (typeof path === "string") - return this.url + path; - return this.url + path.join("/"); - }, -}; - -class json2html { - constructor(root) { - this.root = root; - this.list = []; - } - append(input) { - this.list.push(input); - return this; - } - render(input = this.list, root = this.root, clearRoot = true) { - if (clearRoot) - root.innerHTML = ""; - input.forEach((item) => { - for (const key in item) { - if (Object.prototype.hasOwnProperty.call(item, key)) { - const element = document.createElement(key); - const value = item[key]; - j2h.setAttribute(element, value[0]); - if (typeof value[1] == "string") { - element.innerHTML = value[1]; - } - else if (typeof value[1] == "object") { - if (value[1].length === undefined) { - this.render([value[1]], element, false); - } - else if (value[1].length !== undefined) { - this.render(value[1], element, false); - } - } - root.appendChild(element); - } - } - }); - } -} -const j2h = { - setRoot: (root) => { - return new json2html(root); - }, - element: (tagName, attributes = {}, innerHTML = "") => { - return { - [tagName]: [attributes, innerHTML], - }; - }, - setAttribute: (element, attributes) => { - if (element instanceof json2html) { - element = element.root; - } - if (typeof attributes === "string") { - element.setAttribute(attributes, ""); - } - else if (typeof attributes === "object" && - attributes.length !== undefined && - typeof attributes[0] === "string") { - for (let index = 0; index < attributes.length; index++) { - const item = attributes[index]; - element.setAttribute(item, ""); - } - } - else if (attributes.length === undefined) { - for (const key in attributes) { - element.setAttribute(key, attributes[key].toString()); - } - } - else { - attributes.map((item) => { - if (item.length === undefined) { - let pairedAttribute = item; - for (const key in pairedAttribute) { - element.setAttribute(key, pairedAttribute[key].toString()); - } - } - else if (typeof item === "object") { - item.map((item) => { - element.setAttribute(item, ""); - }); - } - else { - element.setAttribute(item, ""); - } - }); - } - return element; - }, -}; - -const elements = { - sharer_by_KP: () => document.getElementById("sharer-by-KP"), - sharer_container: () => document.getElementById("sharer-container"), - sharer_footer: () => document.getElementById("sharer-footer"), - sharer_footer_text: () => document.getElementById("sharer-footer-text"), - sharer_window: () => document.getElementById("sharer-window"), - sharer_content: () => document.getElementById("sharer-content-main"), - header_close_icon: () => document.getElementById("header-close-icon"), - header_icon_container: () => document.getElementById("header-icon-container"), - header_title: () => document.getElementById("header-title"), - credits_container: () => document.getElementById("credits-container"), -}; - -function openWebsite(url = "https://patelka2211.github.io/sharer/") { - window.open(url, "_blank"); -} - -function setFooterInterface(inputText = "Powered by Sharer", fontColor = "#5900ff", bgColor = "#5900ff14", actionPerform = () => openWebsite()) { - ((element) => { - element.innerText = inputText; - element.style.color = fontColor; - })(elements.sharer_footer_text()); - ((element) => { - element.style.backgroundColor = bgColor; - element.onclick = actionPerform; - })(elements.sharer_footer()); -} - -function getCDNsvgs(filename) { - return j2h.element("img", { - src: cdn.getPath(["assets", filename]), - }); -} -const svgs = { - local: { - sharerIcon: ` `, - closeIcon: ` `, - arrowLeftIcon: ` `, - arrowRightIcon: ` `, - }, - cdn: (function (obj) { - [ - "wa", - "fb", - "tw", - "eml", - "lnkdn", - "pntrst", - "rdt", - "snpcht", - "koo", - "tg", - ].forEach((app) => { - obj[app] = getCDNsvgs(`${app}Icon.svg`); - }); - return obj; - })({}), -}; - -function QRCode(r) { - var n, t, o, e, a = [], f = [], i = Math.max, u = Math.min, h = Math.abs, v = Math.ceil, c = /^[0-9]*$/, s = /^[A-Z0-9 $%*+.\/:-]*$/, l = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:", g = [ - [ - -1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, - 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, - 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, - ], - [ - -1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, - 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, - 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - ], d = [ - [ - -1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, - 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, - 22, 24, 25, - ], - [ - -1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, - 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, - 38, 40, 43, 45, 47, 49, - ], - [ - -1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, - 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, - 53, 56, 59, 62, 65, 68, - ], - [ - -1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, - 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, - 60, 63, 66, 70, 74, 77, 81, - ], - ], m = { L: [0, 1], M: [1, 0], Q: [2, 3], H: [3, 2] }, p = function (r, n) { - for (var t = 0, o = 8; o--;) - t = (t << 1) ^ (285 * (t >>> 7)) ^ (((n >>> o) & 1) * r); - return t; - }, C = function (r, n) { - for (var t = [], o = r.length, e = o; e;) - for (var a = r[o - e--] ^ t.shift(), f = n.length; f--;) - t[f] ^= p(n[f], a); - return t; - }, w = function (r) { - for (var n = [ - function () { - return 0 == (t + o) % 2; - }, - function () { - return 0 == t % 2; - }, - function () { - return 0 == o % 3; - }, - function () { - return 0 == (t + o) % 3; - }, - function () { - return 0 == (((t / 2) | 0) + ((o / 3) | 0)) % 2; - }, - function () { - return 0 == ((t * o) % 2) + ((t * o) % 3); - }, - function () { - return 0 == (((t * o) % 2) + ((t * o) % 3)) % 2; - }, - function () { - return 0 == (((t + o) % 2) + ((t * o) % 3)) % 2; - }, - ][r], t = e; t--;) - for (var o = e; o--;) - f[t][o] || (a[t][o] ^= n()); - }, b = function () { - for (var r = function (r, n) { - n[6] || (r += e), n.shift(), n.push(r); - }, n = function (n, o, a) { - return n && (r(o, a), (o = 0)), r((o += e), a), t(a); - }, t = function (r) { - var n = r[5], t = n > 0 && - r[4] == n && - r[3] == 3 * n && - r[2] == n && - r[1] == n; - return ((t && r[6] >= 4 * n && r[0] >= n ? 1 : 0) + - (t && r[0] >= 4 * n && r[6] >= n ? 1 : 0)); - }, o = 0, f = e * e, i = 0, u = e; u--;) { - for (var c = [0, 0, 0, 0, 0, 0, 0], s = [0, 0, 0, 0, 0, 0, 0], l = !1, g = !1, d = 0, m = 0, p = e; p--;) { - a[u][p] == l - ? 5 == ++d - ? (o += 3) - : d > 5 && o++ - : (r(d, c), (o += 40 * t(c)), (d = 1), (l = a[u][p])), - a[p][u] == g - ? 5 == ++m - ? (o += 3) - : m > 5 && o++ - : (r(m, s), - (o += 40 * t(s)), - (m = 1), - (g = a[p][u])); - var C = a[u][p]; - C && i++, - p && - u && - C == a[u][p - 1] && - C == a[u - 1][p] && - C == a[u - 1][p - 1] && - (o += 3); - } - o += 40 * n(l, d, c) + 40 * n(g, m, s); - } - return (o += 10 * (v(h(20 * i - 10 * f) / f) - 1)); - }, A = function (r, n, t) { - for (; n--;) - t.push((r >>> n) & 1); - }, M = function (r, n) { - return r.numBitsCharCount[((n + 7) / 17) | 0]; - }, B = function (r, n) { - return 0 != ((r >>> n) & 1); - }, x = function (r, n) { - for (var t = 0, o = r.length; o--;) { - var e = r[o], a = M(e, n); - if (1 << a <= e.numChars) - return 1 / 0; - t += 4 + a + e.bitData.length; - } - return t; - }, D = function (r) { - if (r < 1 || r > 40) - throw "Version number out of range"; - var n = (16 * r + 128) * r + 64; - if (r >= 2) { - var t = (r / 7) | 2; - (n -= (25 * t - 10) * t - 55), r >= 7 && (n -= 36); - } - return n; - }, I = function (r, n) { - for (var t = 2; -2 <= t; t--) - for (var o = 2; -2 <= o; o--) - E(r + o, n + t, 1 != i(h(o), h(t))); - }, H = function (r, n) { - for (var t = 4; -4 <= t; t--) - for (var o = 4; -4 <= o; o--) { - var a = i(h(o), h(t)), f = r + o, u = n + t; - 0 <= f && - f < e && - 0 <= u && - u < e && - E(f, u, 2 != a && 4 != a); - } - }, $ = function (r) { - for (var n = (t[1] << 3) | r, o = n, a = 10; a--;) - o = (o << 1) ^ (1335 * (o >>> 9)); - var f = 21522 ^ ((n << 10) | o); - if (f >>> 15 != 0) - throw "Assertion error"; - for (a = 0; a <= 5; a++) - E(8, a, B(f, a)); - E(8, 7, B(f, 6)), E(8, 8, B(f, 7)), E(7, 8, B(f, 8)); - for (a = 9; a < 15; a++) - E(14 - a, 8, B(f, a)); - for (a = 0; a < 8; a++) - E(e - 1 - a, 8, B(f, a)); - for (a = 8; a < 15; a++) - E(8, e - 15 + a, B(f, a)); - E(8, e - 8, 1); - }, O = function () { - for (var r = e; r--;) - E(6, r, 0 == r % 2), E(r, 6, 0 == r % 2); - for (var t = (function () { - var r = []; - if (n > 1) - for (var t = 2 + ((n / 7) | 0), o = 32 == n - ? 26 - : 2 * v((e - 13) / (2 * t - 2)); t--;) - r[t] = t * o + 6; - return r; - })(), o = (r = t.length); o--;) - for (var a = r; a--;) - (0 == a && 0 == o) || - (0 == a && o == r - 1) || - (a == r - 1 && 0 == o) || - I(t[a], t[o]); - H(3, 3), - H(e - 4, 3), - H(3, e - 4), - $(0), - (function () { - if (!(7 > n)) { - for (var r = n, t = 12; t--;) - r = (r << 1) ^ (7973 * (r >>> 11)); - var o = (n << 12) | r; - if (((t = 18), o >>> 18 != 0)) - throw "Assertion error"; - for (; t--;) { - var a = e - 11 + (t % 3), f = (t / 3) | 0, i = B(o, t); - E(a, f, i), E(f, a, i); - } - } - })(); - }, Q = function (r) { - if (r.length != V(n, t)) - throw "Invalid argument"; - for (var o = d[t[0]][n], e = g[t[0]][n], a = (D(n) / 8) | 0, f = o - (a % o), i = (a / o) | 0, u = [], h = (function (r) { - var n = 1, t = []; - t[r - 1] = 1; - for (var o = 0; o < r; o++) { - for (var e = 0; e < r; e++) - t[e] = p(t[e], n) ^ t[e + 1]; - n = p(n, 2); - } - return t; - })(e), v = 0, c = 0; v < o; v++) { - var s = r.slice(c, c + i - e + (v < f ? 0 : 1)); - c += s.length; - var l = C(s, h); - v < f && s.push(0), u.push(s.concat(l)); - } - var m = []; - for (v = 0; v < u[0].length; v++) - for (var w = 0; w < u.length; w++) - (v != i - e || w >= f) && m.push(u[w][v]); - return m; - }, S = function (r) { - for (var n = [], t = ((r = encodeURI(r)), 0); t < r.length; t++) - "%" != r.charAt(t) - ? n.push(r.charCodeAt(t)) - : (n.push(parseInt(r.substr(t + 1, 2), 16)), (t += 2)); - return n; - }, V = function (r, n) { - return ((D(r) / 8) | 0) - g[n[0]][r] * d[n[0]][r]; - }, E = function (r, n, t) { - (a[n][r] = t ? 1 : 0), (f[n][r] = 1); - }, R = function (r) { - for (var n = [], t = 0, o = r; t < o.length; t++) { - var e = o[t]; - A(e, 8, n); - } - return { - modeBits: 4, - numBitsCharCount: [8, 16, 16], - numChars: r.length, - bitData: n, - }; - }, Z = function (r) { - if (!c.test(r)) - throw "String contains non-numeric characters"; - for (var n = [], t = 0; t < r.length;) { - var o = u(r.length - t, 3); - A(parseInt(r.substr(t, o), 10), 3 * o + 1, n), (t += o); - } - return { - modeBits: 1, - numBitsCharCount: [10, 12, 14], - numChars: r.length, - bitData: n, - }; - }, z = function (r) { - if (!s.test(r)) - throw "String contains unencodable characters in alphanumeric mode"; - var n, t = []; - for (n = 0; n + 2 <= r.length; n += 2) { - var o = 45 * l.indexOf(r.charAt(n)); - (o += l.indexOf(r.charAt(n + 1))), A(o, 11, t); - } - return (n < r.length && A(l.indexOf(r.charAt(n)), 6, t), - { - modeBits: 2, - numBitsCharCount: [9, 11, 13], - numChars: r.length, - bitData: t, - }); - }, L = function (r, n, t, o) { - var e = (function (r) { - return "" == r - ? [] - : c.test(r) - ? [Z(r)] - : s.test(r) - ? [z(r)] - : [R(S(r))]; - })(r); - return U(e, n, t, o); - }, N = function (r, i, u, h) { - (t = i), (o = h); - for (var v = (e = 4 * (n = r) + 17); v--;) - (a[v] = []), (f[v] = []); - if ((O(), - (function (r) { - for (var n = 0, t = 1, o = e - 1, i = o; i > 0; i -= 2) { - 6 == i && --i; - for (var u = 0 > (t = -t) ? o : 0, h = 0; h < e; ++h) { - for (var v = i; v > i - 2; --v) - f[u][v] || - ((a[u][v] = B(r[n >>> 3], 7 - (7 & n))), - ++n); - u += t; - } - } - })(Q(u)), - 0 > o)) { - var c = 1e9; - for (v = 8; v--;) { - w(v), $(v); - var s = b(); - c > s && ((c = s), (o = v)), w(v); - } - } - w(o), $(o), (f = []); - }, U = function (r, n, t, o, e, a) { - if ((void 0 === e && (e = 1), - void 0 === a && (a = 40), - void 0 === o && (o = -1), - void 0 === t && (t = !0), - !(1 <= e && e <= a && a <= 40) || o < -1 || o > 7)) - throw "Invalid value"; - for (var f = [], i = 236, h = [], v = e;;) { - var c = x(r, v); - if (c <= 8 * V(v, n)) - break; - if (v >= a) - throw "Data too long"; - v++; - } - if (t) - for (var s = (l = [m.H, m.Q, m.M]).length; s--;) - c <= 8 * V(v, l[s]) && (n = l[s]); - for (var l = 0; l < r.length; l++) { - var g = r[l]; - A(g.modeBits, 4, f), A(g.numChars, M(g, v), f); - for (var d = 0, p = g.bitData; d < p.length; d++) - f.push(p[d]); - } - if (f.length != c) - throw "Assertion error"; - var C = 8 * V(v, n); - if (f.length > C) - throw "Assertion error"; - if ((A(0, u(4, C - f.length), f), - A(0, (8 - (f.length % 8)) % 8, f), - f.length % 8 != 0)) - throw "Assertion error"; - for (; f.length < C;) - A(i, 8, f), (i ^= 253); - for (s = f.length; s--;) - h[s >>> 3] |= f[s] << (7 - (7 & s)); - return N(v, n, h, o); - }; - return (function () { - function n(r) { - return /^#[0-9a-f]{3}(?:[0-9a-f]{3})?$/i.test(r); - } - function t(r, n) { - for (var t in ((r = document.createElementNS(s, r)), n || {})) - r.setAttribute(t, n[t]); - return r; - } - var o, f, i, u, v, c, s = "http://www.w3.org/2000/svg", l = "", g = "string" == typeof r ? { msg: r } : r || {}, d = g.pal || ["#000"], - // p = h(g.dim) || 256, - p = "100%", C = [1, 0, 0, 1, (c = (c = h(g.pad)) > -1 ? c : 4), c], w = n((w = d[0])) ? w : "#000", b = n((b = d[1])) ? b : 0, A = g.vrb ? 0 : 1; - for (L(g.msg || "", m[g.ecl] || m.M, 0 == g.ecb ? 0 : 1, g.mtx), - v = e + 2 * c, - i = e; i--;) - for (u = 0, f = e; f--;) - a[i][f] && - (A - ? (u++, - a[i][f - 1] || - ((l += - "M" + - f + - "," + - i + - "h" + - u + - "v1h-" + - u + - "v-1z"), - (u = 0))) - : (l += "M" + f + "," + i + "h1v1h-1v-1z")); - return ((o = t("svg", { - viewBox: [0, 0, v, v].join(" "), - width: p, - height: p, - fill: w, - "shape-rendering": "crispEdges", - xmlns: s, - version: "1.1", - })), - b && - o.appendChild(t("path", { fill: b, d: "M0,0V" + v + "H" + v + "V0H0Z" })), - o.appendChild(t("path", { transform: "matrix(" + C + ")", d: l })), - o); - })(); -} -function qr_svg(input_data) { - let svgNode = QRCode({ - msg: input_data, - // dim: 256, - pad: 0, - // pad: 40, - // mtx: 7, - // ecl: "H", - // ecb: 0, - pal: ["#000000", "#ffffff"], - // vrb: 1, - }), _ = new XMLSerializer(); - return `data:image/svg+xml;base64,${btoa(_.serializeToString(svgNode))}`; -} - -const applist = { - wa: { - id: "wa", - name: "WhatsApp", - theme: { primary: "#25D366", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://api.whatsapp.com/send?text=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - fb: { - id: "fb", - name: "Facebook", - theme: { primary: "#0c87ef", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent(text)}&u=${encodeURIComponent(input_url)}`; - }, - }, - tw: { - id: "tw", - name: "Twitter", - theme: { primary: "#1D9BF0", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://twitter.com/intent/tweet?text=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`; - }, - }, - eml: { - id: "eml", - name: "Email", - theme: { primary: "#EA4335", secondary: "#ffffff" }, - url_format: (body, subject = "") => { - return `mailto:?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`; - }, - }, - lnkdn: { - id: "lnkdn", - name: "LinkedIn", - theme: { primary: "#0A66C2", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.linkedin.com/cws/share?url=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - pntrst: { - id: "pntrst", - name: "Pinterest", - theme: { primary: "#E60123", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&method=button`; - }, - }, - rdt: { - id: "rdt", - name: "Reddit", - theme: { primary: "#e45b34", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://reddit.com/submit?title=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}`; - }, - }, - snpcht: { - id: "snpcht", - name: "Snapchat", - theme: { primary: "#fffC00", secondary: "#000000" }, - url_format: (input_url, text = "") => { - return `https://snapchat.com/scan?attachmentUrl=${encodeURIComponent(input_url)}`; - }, - }, - koo: { - id: "koo", - name: "Koo", - theme: { primary: "#FACD00", secondary: "#383838" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.kooapp.com/create?title=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - tg: { - id: "tg", - name: "Telegram", - theme: { primary: "#2aa1da", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://t.me/share/url?url=${encodeURIComponent(input_url)}&text=${encodeURIComponent(text)}`; - }, - }, -}; - -let QRInterfaceState = false; -let default_url = window.location.href, default_text = document.title; -function setSharerText$1(text) { - default_text = text; -} -function setSharerURL$1(url) { - default_url = url; -} -function setDefaultSharerURL$1() { - default_url = window.location.href; -} -function setDefaultSharerText$1() { - default_text = document.title; -} -function openQRInterfaceState() { - QRInterfaceState = true; -} -function closeQRInterfaceState() { - QRInterfaceState = false; -} -function isQRInterfaceStateOpen() { - return QRInterfaceState; -} -function revertBackToRoot() { - ((element) => { - element.innerHTML = svgs.local.sharerIcon; - element.onclick = () => openWebsite(); - })(elements.header_icon_container()); - elements.header_title().innerText = "Sharer by KP"; - ((element) => { - element.style.height = "auto"; - element.style.aspectRatio = "1"; - })(elements.sharer_content()); - setApplistInterface(); - closeQRInterfaceState(); -} -function setQRInterface(appid) { - let sharer_content = j2h.setRoot(elements.sharer_content()), url_to_be_shared = applist[appid].url_format(default_url, default_text); - sharer_content - .append(j2h.element("div", { - class: "sharer-qr-container", - }, j2h.element("div", { - class: "sharer-qr", - style: `background: url(${qr_svg(url_to_be_shared)})`, - }, svgs.cdn[appid]))) - .append(j2h.element("div", { class: "sharer-credits" }, j2h.element("div", { id: "credits-container" }, [ - j2h.element("div", { class: "credits-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { class: "credits-text" }, "Powered by Sharer"), - ]))); - sharer_content.render(); - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - elements.credits_container().onclick = () => openWebsite(); - openQRInterfaceState(); - ((element) => { - element.innerHTML = svgs.local.arrowLeftIcon; - element.onclick = revertBackToRoot; - })(elements.header_icon_container()); - ((app_details) => { - // elements.header_title().innerText = `Share on ${app_details.name}`; - elements.header_title().innerText = `Scan to open ${app_details.name}`; - setFooterInterface(`Open ${app_details.name}`, app_details.theme.secondary, app_details.theme.primary, () => { - openWebsite(url_to_be_shared); - }); - })(applist[appid]); -} -function setApplistInterface() { - let applist_html = j2h.setRoot(elements.sharer_content()); - Object.keys(applist).forEach((id) => { - applist_html.append(j2h.element("div", { id: `open-${id}-qr`, class: "sharer-applist-item" }, [ - j2h.element("div", { class: "sharer-applist-icon-container" }, svgs.cdn[id]), - j2h.element("div", { class: "sharer-applist-app-name" }, applist[id].name), - j2h.element("div", { class: "sharer-applist-arrow-right-icon" }, svgs.local.arrowRightIcon), - ])); - }); - applist_html.render(); - Object.keys(applist).forEach((id) => { - document.getElementById(`open-${id}-qr`).onclick = - () => { - setQRInterface(id); - }; - }); - setFooterInterface(); - closeQRInterfaceState(); -} - -let resizeLock = false; -function resizeObserverAction() { - if (resizeLock) - return; - resizeLock = true; - setTimeout(() => { - resizeLock = false; - elements.sharer_container().style.height = `${document.documentElement.clientHeight - 12}px`; - if (isQRInterfaceStateOpen()) { - elements.sharer_content().style.height = `${elements.sharer_content().offsetWidth + 51}px`; - } - }, 500); -} -function startResizeObserver() { - window.addEventListener("resize", resizeObserverAction); -} -function closeResizeObserver() { - window.removeEventListener("resize", resizeObserverAction); -} - -let continue_to_close = true; -function setContinueToCloseFalse() { - continue_to_close = false; -} -function closeSharer$1() { - if (continue_to_close) { - try { - elements.sharer_container().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().remove(); - closeResizeObserver(); - }, 100); - }, 300); - document.body.classList.remove("sharer-opened"); - try { - ((sharer_button) => { - sharer_button.classList.remove("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - } - catch (error) { - console.log(error); - } - } - continue_to_close = true; -} - -function setSharerRoot() { - const Sharer_By_KP = document.createElement("div"); - j2h.setAttribute(Sharer_By_KP, { id: "sharer-by-KP", class: "hide" }); - const sharer_root = j2h.setRoot(Sharer_By_KP); - sharer_root.append(j2h.element("div", { id: "sharer-container", class: "hide" }, j2h.element("div", { id: "sharer-window" }, [ - j2h.element("div", { class: "sharer-header" }, [ - j2h.element("div", { id: "header-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { id: "header-title" }, "Sharer by KP"), - j2h.element("div", { id: "header-close-icon" }, svgs.local.closeIcon), - ]), - j2h.element("div", { id: "sharer-content-main" }), - j2h.element("div", { id: "sharer-footer" }, j2h.element("div", { id: "sharer-footer-text" })), - ]))); - document.body.prepend(Sharer_By_KP); - sharer_root.render(); -} -function openSharer$1() { - try { - document.getElementById("sharer-by-KP").remove(); - } - catch (error) { } - try { - ((sharer_button) => { - sharer_button.classList.add("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - setSharerRoot(); - setTimeout(() => { - elements.sharer_by_KP().classList.remove("hide"); - elements.sharer_container().classList.remove("hide"); - }, 10); - elements.sharer_window().onclick = setContinueToCloseFalse; - elements.sharer_container().onclick = closeSharer$1; - elements.header_close_icon().onclick = closeSharer$1; - [elements.header_icon_container(), elements.sharer_footer()].forEach((element) => { - element.onclick = () => openWebsite(); - }); - setApplistInterface(); - setFooterInterface(); - resizeObserverAction(); - startResizeObserver(); - document.body.classList.add("sharer-opened"); -} - -var sharer_functions = { - setURL: function (url) { - setSharerURL$1(url); - return this; - }, - setDefaultURL: function () { - setDefaultSharerURL$1(); - return this; - }, - setText: function (text) { - setSharerText$1(text); - return this; - }, - setDefaultText: function () { - setDefaultSharerText$1(); - return this; - }, - open: function () { - openSharer$1(); - }, - close: function () { - closeSharer$1(); - }, -}; -// Adding Sharer css programmatically -document.head.appendChild(j2h.setAttribute(document.createElement("link"), { - id: "sharer_css_file", - rel: "stylesheet", - href: cdn.getPath(["bundle", "sharerByKP.css"]), -})); -try { - localStorage.removeItem("sharer_deployment_sha"); // To be removed after some time -} -catch (error) { } - -// Destructuring all the functions -const setSharerURL = sharer_functions.setURL, setDefaultSharerURL = sharer_functions.setDefaultURL, setSharerText = sharer_functions.setText, setDefaultSharerText = sharer_functions.setDefaultText, openSharer = sharer_functions.open, closeSharer = sharer_functions.close; - -export { closeSharer, openSharer, setDefaultSharerText, setDefaultSharerURL, setSharerText, setSharerURL }; diff --git a/bundle/sharer.esm.min.js b/bundle/sharer.esm.min.js deleted file mode 100644 index 9ec2d30..0000000 --- a/bundle/sharer.esm.min.js +++ /dev/null @@ -1,15 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-04-22T09:23:57.921Z -*/ -const cdn={url:"https://patelka2211.github.io/sharer/",getPath(e){return"string"==typeof e?this.url+e:this.url+e.join("/")}};class json2html{constructor(e){this.root=e,this.list=[]}append(e){return this.list.push(e),this}render(e=this.list,t=this.root,r=!0){r&&(t.innerHTML=""),e.forEach((e=>{for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const n=document.createElement(r),o=e[r];j2h.setAttribute(n,o[0]),"string"==typeof o[1]?n.innerHTML=o[1]:"object"==typeof o[1]&&(void 0===o[1].length?this.render([o[1]],n,!1):void 0!==o[1].length&&this.render(o[1],n,!1)),t.appendChild(n)}}))}}const j2h={setRoot:e=>new json2html(e),element:(e,t={},r="")=>({[e]:[t,r]}),setAttribute:(e,t)=>{if(e instanceof json2html&&(e=e.root),"string"==typeof t)e.setAttribute(t,"");else if("object"==typeof t&&void 0!==t.length&&"string"==typeof t[0])for(let r=0;r{if(void 0===t.length){let r=t;for(const t in r)e.setAttribute(t,r[t].toString())}else"object"==typeof t?t.map((t=>{e.setAttribute(t,"")})):e.setAttribute(t,"")}));return e}},elements={sharer_by_KP:()=>document.getElementById("sharer-by-KP"),sharer_container:()=>document.getElementById("sharer-container"),sharer_footer:()=>document.getElementById("sharer-footer"),sharer_footer_text:()=>document.getElementById("sharer-footer-text"),sharer_window:()=>document.getElementById("sharer-window"),sharer_content:()=>document.getElementById("sharer-content-main"),header_close_icon:()=>document.getElementById("header-close-icon"),header_icon_container:()=>document.getElementById("header-icon-container"),header_title:()=>document.getElementById("header-title"),credits_container:()=>document.getElementById("credits-container")};function openWebsite(e="https://patelka2211.github.io/sharer/"){window.open(e,"_blank")}function setFooterInterface(e="Powered by Sharer",t="#5900ff",r="#5900ff14",n=(()=>openWebsite())){var o;(o=elements.sharer_footer_text()).innerText=e,o.style.color=t,(e=>{e.style.backgroundColor=r,e.onclick=n})(elements.sharer_footer())}function getCDNsvgs(e){return j2h.element("img",{src:cdn.getPath(["assets",e])})}const svgs={local:{sharerIcon:' ',closeIcon:' ',arrowLeftIcon:' ',arrowRightIcon:' '},cdn:function(e){return["wa","fb","tw","eml","lnkdn","pntrst","rdt","snpcht","koo","tg"].forEach((t=>{e[t]=getCDNsvgs(`${t}Icon.svg`)})),e}({})};function QRCode(e){var t,r,n,o,a=[],s=[],i=Math.max,c=Math.min,l=Math.abs,h=Math.ceil,f=/^[0-9]*$/,d=/^[A-Z0-9 $%*+.\/:-]*$/,u="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",m=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],p=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],v={L:[0,1],M:[1,0],Q:[2,3],H:[3,2]},g=function(e,t){for(var r=0,n=8;n--;)r=r<<1^285*(r>>>7)^(t>>>n&1)*e;return r},C=function(e,t){for(var r=[],n=e.length,o=n;o;)for(var a=e[n-o--]^r.shift(),s=t.length;s--;)r[s]^=g(t[s],a);return r},_=function(e){for(var t=[function(){return 0==(r+n)%2},function(){return 0==r%2},function(){return 0==n%3},function(){return 0==(r+n)%3},function(){return 0==((r/2|0)+(n/3|0))%2},function(){return 0==r*n%2+r*n%3},function(){return 0==(r*n%2+r*n%3)%2},function(){return 0==((r+n)%2+r*n%3)%2}][e],r=o;r--;)for(var n=o;n--;)s[r][n]||(a[r][n]^=t())},w=function(){for(var e=function(e,t){t[6]||(e+=o),t.shift(),t.push(e)},t=function(t,n,a){return t&&(e(n,a),n=0),e(n+=o,a),r(a)},r=function(e){var t=e[5],r=t>0&&e[4]==t&&e[3]==3*t&&e[2]==t&&e[1]==t;return(r&&e[6]>=4*t&&e[0]>=t?1:0)+(r&&e[0]>=4*t&&e[6]>=t?1:0)},n=0,s=o*o,i=0,c=o;c--;){for(var f=[0,0,0,0,0,0,0],d=[0,0,0,0,0,0,0],u=!1,m=!1,p=0,v=0,g=o;g--;){a[c][g]==u?5==++p?n+=3:p>5&&n++:(e(p,f),n+=40*r(f),p=1,u=a[c][g]),a[g][c]==m?5==++v?n+=3:v>5&&n++:(e(v,d),n+=40*r(d),v=1,m=a[g][c]);var C=a[c][g];C&&i++,g&&c&&C==a[c][g-1]&&C==a[c-1][g]&&C==a[c-1][g-1]&&(n+=3)}n+=40*t(u,p,f)+40*t(m,v,d)}return n+10*(h(l(20*i-10*s)/s)-1)},y=function(e,t,r){for(;t--;)r.push(e>>>t&1)},b=function(e,t){return e.numBitsCharCount[(t+7)/17|0]},I=function(e,t){return 0!=(e>>>t&1)},x=function(e,t){for(var r=0,n=e.length;n--;){var o=e[n],a=b(o,t);if(1<40)throw"Version number out of range";var t=(16*e+128)*e+64;if(e>=2){var r=e/7|2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return t},R=function(e,t){for(var r=2;-2<=r;r--)for(var n=2;-2<=n;n--)j(e+n,t+r,1!=i(l(n),l(r)))},L=function(e,t){for(var r=4;-4<=r;r--)for(var n=4;-4<=n;n--){var a=i(l(n),l(r)),s=e+n,c=t+r;0<=s&&s>>9);var s=21522^(t<<10|n);if(s>>>15!=0)throw"Assertion error";for(a=0;a<=5;a++)j(8,a,I(s,a));for(j(8,7,I(s,6)),j(8,8,I(s,7)),j(7,8,I(s,8)),a=9;a<15;a++)j(14-a,8,I(s,a));for(a=0;a<8;a++)j(o-1-a,8,I(s,a));for(a=8;a<15;a++)j(8,o-15+a,I(s,a));j(8,o-8,1)},k=function(){for(var e=o;e--;)j(6,e,0==e%2),j(e,6,0==e%2);for(var r=function(){var e=[];if(t>1)for(var r=2+(t/7|0),n=32==t?26:2*h((o-13)/(2*r-2));r--;)e[r]=r*n+6;return e}(),n=e=r.length;n--;)for(var a=e;a--;)0==a&&0==n||0==a&&n==e-1||a==e-1&&0==n||R(r[a],r[n]);L(3,3),L(o-4,3),L(3,o-4),$(0),function(){if(!(7>t)){for(var e=t,r=12;r--;)e=e<<1^7973*(e>>>11);var n=t<<12|e;if(r=18,n>>>18!=0)throw"Assertion error";for(;r--;){var a=o-11+r%3,s=r/3|0,i=I(n,r);j(a,s,i),j(s,a,i)}}}()},B=function(e){for(var t=[],r=(e=encodeURI(e),0);r0;i-=2){6==i&&--i;for(var c=0>(r=-r)?n:0,l=0;li-2;--h)s[c][h]||(a[c][h]=I(e[t>>>3],7-(7&t)),++t);c+=r}}}(function(e){if(e.length!=A(t,r))throw"Invalid argument";for(var n=p[r[0]][t],o=m[r[0]][t],a=S(t)/8|0,s=n-a%n,i=a/n|0,c=[],l=function(e){var t=1,r=[];r[e-1]=1;for(var n=0;n=s)&&v.push(c[_][h]);return v}(c)),0>n){var f=1e9;for(h=8;h--;){_(h),$(h);var d=w();f>d&&(f=d,n=h),_(h)}}_(n),$(n),s=[]},F=function(e,t,r,n,o,a){if(void 0===o&&(o=1),void 0===a&&(a=40),void 0===n&&(n=-1),void 0===r&&(r=!0),!(1<=o&&o<=a&&a<=40)||n<-1||n>7)throw"Invalid value";for(var s=[],i=236,l=[],h=o;;){var f=x(e,h);if(f<=8*A(h,t))break;if(h>=a)throw"Data too long";h++}if(r)for(var d=(u=[v.H,v.Q,v.M]).length;d--;)f<=8*A(h,u[d])&&(t=u[d]);for(var u=0;uC)throw"Assertion error";if(y(0,c(4,C-s.length),s),y(0,(8-s.length%8)%8,s),s.length%8!=0)throw"Assertion error";for(;s.length>>3]|=s[d]<<7-(7&d);return D(h,t,l,n)};return function(){function t(e){return/^#[0-9a-f]{3}(?:[0-9a-f]{3})?$/i.test(e)}function r(e,t){for(var r in e=document.createElementNS(d,e),t||{})e.setAttribute(r,t[r]);return e}var n,s,i,c,h,f,d="http://www.w3.org/2000/svg",u="",m="string"==typeof e?{msg:e}:e||{},p=m.pal||["#000"],g="100%",C=[1,0,0,1,f=(f=l(m.pad))>-1?f:4,f],_=t(_=p[0])?_:"#000",w=t(w=p[1])?w:0,y=m.vrb?0:1;for(T(m.msg||"",v[m.ecl]||v.M,0==m.ecb?0:1,m.mtx),h=o+2*f,i=o;i--;)for(c=0,s=o;s--;)a[i][s]&&(y?(c++,a[i][s-1]||(u+="M"+s+","+i+"h"+c+"v1h-"+c+"v-1z",c=0)):u+="M"+s+","+i+"h1v1h-1v-1z");return n=r("svg",{viewBox:[0,0,h,h].join(" "),width:g,height:g,fill:_,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),w&&n.appendChild(r("path",{fill:w,d:"M0,0V"+h+"H"+h+"V0H0Z"})),n.appendChild(r("path",{transform:"matrix("+C+")",d:u})),n}()}function qr_svg(e){let t=QRCode({msg:e,pad:0,pal:["#000000","#ffffff"]}),r=new XMLSerializer;return`data:image/svg+xml;base64,${btoa(r.serializeToString(t))}`}const applist={wa:{id:"wa",name:"WhatsApp",theme:{primary:"#25D366",secondary:"#ffffff"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://api.whatsapp.com/send?text=${encodeURIComponent(`${t}${e}`)}`)},fb:{id:"fb",name:"Facebook",theme:{primary:"#0c87ef",secondary:"#ffffff"},url_format:(e,t="")=>`https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent(t)}&u=${encodeURIComponent(e)}`},tw:{id:"tw",name:"Twitter",theme:{primary:"#1D9BF0",secondary:"#ffffff"},url_format:(e,t="")=>`https://twitter.com/intent/tweet?text=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`},eml:{id:"eml",name:"Email",theme:{primary:"#EA4335",secondary:"#ffffff"},url_format:(e,t="")=>`mailto:?subject=${encodeURIComponent(t)}&body=${encodeURIComponent(e)}`},lnkdn:{id:"lnkdn",name:"LinkedIn",theme:{primary:"#0A66C2",secondary:"#ffffff"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://www.linkedin.com/cws/share?url=${encodeURIComponent(`${t}${e}`)}`)},pntrst:{id:"pntrst",name:"Pinterest",theme:{primary:"#E60123",secondary:"#ffffff"},url_format:(e,t="")=>`https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}&method=button`},rdt:{id:"rdt",name:"Reddit",theme:{primary:"#e45b34",secondary:"#ffffff"},url_format:(e,t="")=>`https://reddit.com/submit?title=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}`},snpcht:{id:"snpcht",name:"Snapchat",theme:{primary:"#fffC00",secondary:"#000000"},url_format:(e,t="")=>`https://snapchat.com/scan?attachmentUrl=${encodeURIComponent(e)}`},koo:{id:"koo",name:"Koo",theme:{primary:"#FACD00",secondary:"#383838"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://www.kooapp.com/create?title=${encodeURIComponent(`${t}${e}`)}`)},tg:{id:"tg",name:"Telegram",theme:{primary:"#2aa1da",secondary:"#ffffff"},url_format:(e,t="")=>`https://t.me/share/url?url=${encodeURIComponent(e)}&text=${encodeURIComponent(t)}`}};let QRInterfaceState=!1,default_url=window.location.href,default_text=document.title;function setSharerText$1(e){default_text=e}function setSharerURL$1(e){default_url=e}function setDefaultSharerURL$1(){default_url=window.location.href}function setDefaultSharerText$1(){default_text=document.title}function openQRInterfaceState(){QRInterfaceState=!0}function closeQRInterfaceState(){QRInterfaceState=!1}function isQRInterfaceStateOpen(){return QRInterfaceState}function revertBackToRoot(){var e;(e=elements.header_icon_container()).innerHTML=svgs.local.sharerIcon,e.onclick=()=>openWebsite(),elements.header_title().innerText="Sharer by KP",(e=>{e.style.height="auto",e.style.aspectRatio="1"})(elements.sharer_content()),setApplistInterface(),closeQRInterfaceState()}function setQRInterface(e){let t=j2h.setRoot(elements.sharer_content()),r=applist[e].url_format(default_url,default_text);var n,o;t.append(j2h.element("div",{class:"sharer-qr-container"},j2h.element("div",{class:"sharer-qr",style:`background: url(${qr_svg(r)})`},svgs.cdn[e]))).append(j2h.element("div",{class:"sharer-credits"},j2h.element("div",{id:"credits-container"},[j2h.element("div",{class:"credits-icon-container"},svgs.local.sharerIcon),j2h.element("div",{class:"credits-text"},"Powered by Sharer")]))),t.render(),(n=t.root).style.height=`${n.offsetWidth+51}px`,elements.credits_container().onclick=()=>openWebsite(),openQRInterfaceState(),(e=>{e.innerHTML=svgs.local.arrowLeftIcon,e.onclick=revertBackToRoot})(elements.header_icon_container()),o=applist[e],elements.header_title().innerText=`Scan to open ${o.name}`,setFooterInterface(`Open ${o.name}`,o.theme.secondary,o.theme.primary,(()=>{openWebsite(r)}))}function setApplistInterface(){let e=j2h.setRoot(elements.sharer_content());Object.keys(applist).forEach((t=>{e.append(j2h.element("div",{id:`open-${t}-qr`,class:"sharer-applist-item"},[j2h.element("div",{class:"sharer-applist-icon-container"},svgs.cdn[t]),j2h.element("div",{class:"sharer-applist-app-name"},applist[t].name),j2h.element("div",{class:"sharer-applist-arrow-right-icon"},svgs.local.arrowRightIcon)]))})),e.render(),Object.keys(applist).forEach((e=>{document.getElementById(`open-${e}-qr`).onclick=()=>{setQRInterface(e)}})),setFooterInterface(),closeQRInterfaceState()}let resizeLock=!1;function resizeObserverAction(){resizeLock||(resizeLock=!0,setTimeout((()=>{resizeLock=!1,elements.sharer_container().style.height=document.documentElement.clientHeight-12+"px",isQRInterfaceStateOpen()&&(elements.sharer_content().style.height=`${elements.sharer_content().offsetWidth+51}px`)}),500))}function startResizeObserver(){window.addEventListener("resize",resizeObserverAction)}function closeResizeObserver(){window.removeEventListener("resize",resizeObserverAction)}let continue_to_close=!0;function setContinueToCloseFalse(){continue_to_close=!1}function closeSharer$1(){if(continue_to_close)try{elements.sharer_container().classList.add("hide"),setTimeout((()=>{elements.sharer_by_KP().classList.add("hide"),setTimeout((()=>{elements.sharer_by_KP().remove(),closeResizeObserver()}),100)}),300),document.body.classList.remove("sharer-opened");try{document.getElementById("sharer-btn-default").classList.remove("hide")}catch(e){}}catch(e){console.log(e)}continue_to_close=!0}function setSharerRoot(){const e=document.createElement("div");j2h.setAttribute(e,{id:"sharer-by-KP",class:"hide"});const t=j2h.setRoot(e);t.append(j2h.element("div",{id:"sharer-container",class:"hide"},j2h.element("div",{id:"sharer-window"},[j2h.element("div",{class:"sharer-header"},[j2h.element("div",{id:"header-icon-container"},svgs.local.sharerIcon),j2h.element("div",{id:"header-title"},"Sharer by KP"),j2h.element("div",{id:"header-close-icon"},svgs.local.closeIcon)]),j2h.element("div",{id:"sharer-content-main"}),j2h.element("div",{id:"sharer-footer"},j2h.element("div",{id:"sharer-footer-text"}))]))),document.body.prepend(e),t.render()}function openSharer$1(){try{document.getElementById("sharer-by-KP").remove()}catch(e){}try{document.getElementById("sharer-btn-default").classList.add("hide")}catch(e){}setSharerRoot(),setTimeout((()=>{elements.sharer_by_KP().classList.remove("hide"),elements.sharer_container().classList.remove("hide")}),10),elements.sharer_window().onclick=setContinueToCloseFalse,elements.sharer_container().onclick=closeSharer$1,elements.header_close_icon().onclick=closeSharer$1,[elements.header_icon_container(),elements.sharer_footer()].forEach((e=>{e.onclick=()=>openWebsite()})),setApplistInterface(),setFooterInterface(),resizeObserverAction(),startResizeObserver(),document.body.classList.add("sharer-opened")}var sharer_functions={setURL:function(e){return setSharerURL$1(e),this},setDefaultURL:function(){return setDefaultSharerURL$1(),this},setText:function(e){return setSharerText$1(e),this},setDefaultText:function(){return setDefaultSharerText$1(),this},open:function(){openSharer$1()},close:function(){closeSharer$1()}};document.head.appendChild(j2h.setAttribute(document.createElement("link"),{id:"sharer_css_file",rel:"stylesheet",href:cdn.getPath(["bundle","sharerByKP.css"])}));try{localStorage.removeItem("sharer_deployment_sha")}catch(e){}const setSharerURL=sharer_functions.setURL,setDefaultSharerURL=sharer_functions.setDefaultURL,setSharerText=sharer_functions.setText,setDefaultSharerText=sharer_functions.setDefaultText,openSharer=sharer_functions.open,closeSharer=sharer_functions.close;export{closeSharer,openSharer,setDefaultSharerText,setDefaultSharerURL,setSharerText,setSharerURL}; \ No newline at end of file diff --git a/bundle/sharer.iife.js b/bundle/sharer.iife.js deleted file mode 100644 index aa2f5be..0000000 --- a/bundle/sharer.iife.js +++ /dev/null @@ -1,900 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-04-20T09:31:49.006Z -*/ -var sharer = (function () { - 'use strict'; - - const cdn = { - url: "https://patelka2211.github.io/sharer/", - // url: "http://localhost:5500/", // For development purpose only. - getPath(path) { - if (typeof path === "string") - return this.url + path; - return this.url + path.join("/"); - }, - }; - - class json2html { - constructor(root) { - this.root = root; - this.list = []; - } - append(input) { - this.list.push(input); - return this; - } - render(input = this.list, root = this.root, clearRoot = true) { - if (clearRoot) - root.innerHTML = ""; - input.forEach((item) => { - for (const key in item) { - if (Object.prototype.hasOwnProperty.call(item, key)) { - const element = document.createElement(key); - const value = item[key]; - j2h.setAttribute(element, value[0]); - if (typeof value[1] == "string") { - element.innerHTML = value[1]; - } - else if (typeof value[1] == "object") { - if (value[1].length === undefined) { - this.render([value[1]], element, false); - } - else if (value[1].length !== undefined) { - this.render(value[1], element, false); - } - } - root.appendChild(element); - } - } - }); - } - } - const j2h = { - setRoot: (root) => { - return new json2html(root); - }, - element: (tagName, attributes = {}, innerHTML = "") => { - return { - [tagName]: [attributes, innerHTML], - }; - }, - setAttribute: (element, attributes) => { - if (element instanceof json2html) { - element = element.root; - } - if (typeof attributes === "string") { - element.setAttribute(attributes, ""); - } - else if (typeof attributes === "object" && - attributes.length !== undefined && - typeof attributes[0] === "string") { - for (let index = 0; index < attributes.length; index++) { - const item = attributes[index]; - element.setAttribute(item, ""); - } - } - else if (attributes.length === undefined) { - for (const key in attributes) { - element.setAttribute(key, attributes[key].toString()); - } - } - else { - attributes.map((item) => { - if (item.length === undefined) { - let pairedAttribute = item; - for (const key in pairedAttribute) { - element.setAttribute(key, pairedAttribute[key].toString()); - } - } - else if (typeof item === "object") { - item.map((item) => { - element.setAttribute(item, ""); - }); - } - else { - element.setAttribute(item, ""); - } - }); - } - return element; - }, - }; - - const elements = { - sharer_by_KP: () => document.getElementById("sharer-by-KP"), - sharer_container: () => document.getElementById("sharer-container"), - sharer_footer: () => document.getElementById("sharer-footer"), - sharer_footer_text: () => document.getElementById("sharer-footer-text"), - sharer_window: () => document.getElementById("sharer-window"), - sharer_content: () => document.getElementById("sharer-content-main"), - header_close_icon: () => document.getElementById("header-close-icon"), - header_icon_container: () => document.getElementById("header-icon-container"), - header_title: () => document.getElementById("header-title"), - credits_container: () => document.getElementById("credits-container"), - }; - - function openWebsite(url = "https://patelka2211.github.io/sharer/") { - window.open(url, "_blank"); - } - - function setFooterInterface(inputText = "Powered by Sharer", fontColor = "#5900ff", bgColor = "#5900ff14", actionPerform = () => openWebsite()) { - ((element) => { - element.innerText = inputText; - element.style.color = fontColor; - })(elements.sharer_footer_text()); - ((element) => { - element.style.backgroundColor = bgColor; - element.onclick = actionPerform; - })(elements.sharer_footer()); - } - - function getCDNsvgs(filename) { - return j2h.element("img", { - src: cdn.getPath(["assets", filename]), - }); - } - const svgs = { - local: { - sharerIcon: ` `, - closeIcon: ` `, - arrowLeftIcon: ` `, - arrowRightIcon: ` `, - }, - cdn: (function (obj) { - [ - "wa", - "fb", - "tw", - "eml", - "lnkdn", - "pntrst", - "rdt", - "snpcht", - "koo", - "tg", - ].forEach((app) => { - obj[app] = getCDNsvgs(`${app}Icon.svg`); - }); - return obj; - })({}), - }; - - function QRCode(r) { - var n, t, o, e, a = [], f = [], i = Math.max, u = Math.min, h = Math.abs, v = Math.ceil, c = /^[0-9]*$/, s = /^[A-Z0-9 $%*+.\/:-]*$/, l = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:", g = [ - [ - -1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, - 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, - 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, - ], - [ - -1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, - 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, - 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - ], d = [ - [ - -1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, - 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, - 22, 24, 25, - ], - [ - -1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, - 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, - 38, 40, 43, 45, 47, 49, - ], - [ - -1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, - 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, - 53, 56, 59, 62, 65, 68, - ], - [ - -1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, - 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, - 60, 63, 66, 70, 74, 77, 81, - ], - ], m = { L: [0, 1], M: [1, 0], Q: [2, 3], H: [3, 2] }, p = function (r, n) { - for (var t = 0, o = 8; o--;) - t = (t << 1) ^ (285 * (t >>> 7)) ^ (((n >>> o) & 1) * r); - return t; - }, C = function (r, n) { - for (var t = [], o = r.length, e = o; e;) - for (var a = r[o - e--] ^ t.shift(), f = n.length; f--;) - t[f] ^= p(n[f], a); - return t; - }, w = function (r) { - for (var n = [ - function () { - return 0 == (t + o) % 2; - }, - function () { - return 0 == t % 2; - }, - function () { - return 0 == o % 3; - }, - function () { - return 0 == (t + o) % 3; - }, - function () { - return 0 == (((t / 2) | 0) + ((o / 3) | 0)) % 2; - }, - function () { - return 0 == ((t * o) % 2) + ((t * o) % 3); - }, - function () { - return 0 == (((t * o) % 2) + ((t * o) % 3)) % 2; - }, - function () { - return 0 == (((t + o) % 2) + ((t * o) % 3)) % 2; - }, - ][r], t = e; t--;) - for (var o = e; o--;) - f[t][o] || (a[t][o] ^= n()); - }, b = function () { - for (var r = function (r, n) { - n[6] || (r += e), n.shift(), n.push(r); - }, n = function (n, o, a) { - return n && (r(o, a), (o = 0)), r((o += e), a), t(a); - }, t = function (r) { - var n = r[5], t = n > 0 && - r[4] == n && - r[3] == 3 * n && - r[2] == n && - r[1] == n; - return ((t && r[6] >= 4 * n && r[0] >= n ? 1 : 0) + - (t && r[0] >= 4 * n && r[6] >= n ? 1 : 0)); - }, o = 0, f = e * e, i = 0, u = e; u--;) { - for (var c = [0, 0, 0, 0, 0, 0, 0], s = [0, 0, 0, 0, 0, 0, 0], l = !1, g = !1, d = 0, m = 0, p = e; p--;) { - a[u][p] == l - ? 5 == ++d - ? (o += 3) - : d > 5 && o++ - : (r(d, c), (o += 40 * t(c)), (d = 1), (l = a[u][p])), - a[p][u] == g - ? 5 == ++m - ? (o += 3) - : m > 5 && o++ - : (r(m, s), - (o += 40 * t(s)), - (m = 1), - (g = a[p][u])); - var C = a[u][p]; - C && i++, - p && - u && - C == a[u][p - 1] && - C == a[u - 1][p] && - C == a[u - 1][p - 1] && - (o += 3); - } - o += 40 * n(l, d, c) + 40 * n(g, m, s); - } - return (o += 10 * (v(h(20 * i - 10 * f) / f) - 1)); - }, A = function (r, n, t) { - for (; n--;) - t.push((r >>> n) & 1); - }, M = function (r, n) { - return r.numBitsCharCount[((n + 7) / 17) | 0]; - }, B = function (r, n) { - return 0 != ((r >>> n) & 1); - }, x = function (r, n) { - for (var t = 0, o = r.length; o--;) { - var e = r[o], a = M(e, n); - if (1 << a <= e.numChars) - return 1 / 0; - t += 4 + a + e.bitData.length; - } - return t; - }, D = function (r) { - if (r < 1 || r > 40) - throw "Version number out of range"; - var n = (16 * r + 128) * r + 64; - if (r >= 2) { - var t = (r / 7) | 2; - (n -= (25 * t - 10) * t - 55), r >= 7 && (n -= 36); - } - return n; - }, I = function (r, n) { - for (var t = 2; -2 <= t; t--) - for (var o = 2; -2 <= o; o--) - E(r + o, n + t, 1 != i(h(o), h(t))); - }, H = function (r, n) { - for (var t = 4; -4 <= t; t--) - for (var o = 4; -4 <= o; o--) { - var a = i(h(o), h(t)), f = r + o, u = n + t; - 0 <= f && - f < e && - 0 <= u && - u < e && - E(f, u, 2 != a && 4 != a); - } - }, $ = function (r) { - for (var n = (t[1] << 3) | r, o = n, a = 10; a--;) - o = (o << 1) ^ (1335 * (o >>> 9)); - var f = 21522 ^ ((n << 10) | o); - if (f >>> 15 != 0) - throw "Assertion error"; - for (a = 0; a <= 5; a++) - E(8, a, B(f, a)); - E(8, 7, B(f, 6)), E(8, 8, B(f, 7)), E(7, 8, B(f, 8)); - for (a = 9; a < 15; a++) - E(14 - a, 8, B(f, a)); - for (a = 0; a < 8; a++) - E(e - 1 - a, 8, B(f, a)); - for (a = 8; a < 15; a++) - E(8, e - 15 + a, B(f, a)); - E(8, e - 8, 1); - }, O = function () { - for (var r = e; r--;) - E(6, r, 0 == r % 2), E(r, 6, 0 == r % 2); - for (var t = (function () { - var r = []; - if (n > 1) - for (var t = 2 + ((n / 7) | 0), o = 32 == n - ? 26 - : 2 * v((e - 13) / (2 * t - 2)); t--;) - r[t] = t * o + 6; - return r; - })(), o = (r = t.length); o--;) - for (var a = r; a--;) - (0 == a && 0 == o) || - (0 == a && o == r - 1) || - (a == r - 1 && 0 == o) || - I(t[a], t[o]); - H(3, 3), - H(e - 4, 3), - H(3, e - 4), - $(0), - (function () { - if (!(7 > n)) { - for (var r = n, t = 12; t--;) - r = (r << 1) ^ (7973 * (r >>> 11)); - var o = (n << 12) | r; - if (((t = 18), o >>> 18 != 0)) - throw "Assertion error"; - for (; t--;) { - var a = e - 11 + (t % 3), f = (t / 3) | 0, i = B(o, t); - E(a, f, i), E(f, a, i); - } - } - })(); - }, Q = function (r) { - if (r.length != V(n, t)) - throw "Invalid argument"; - for (var o = d[t[0]][n], e = g[t[0]][n], a = (D(n) / 8) | 0, f = o - (a % o), i = (a / o) | 0, u = [], h = (function (r) { - var n = 1, t = []; - t[r - 1] = 1; - for (var o = 0; o < r; o++) { - for (var e = 0; e < r; e++) - t[e] = p(t[e], n) ^ t[e + 1]; - n = p(n, 2); - } - return t; - })(e), v = 0, c = 0; v < o; v++) { - var s = r.slice(c, c + i - e + (v < f ? 0 : 1)); - c += s.length; - var l = C(s, h); - v < f && s.push(0), u.push(s.concat(l)); - } - var m = []; - for (v = 0; v < u[0].length; v++) - for (var w = 0; w < u.length; w++) - (v != i - e || w >= f) && m.push(u[w][v]); - return m; - }, S = function (r) { - for (var n = [], t = ((r = encodeURI(r)), 0); t < r.length; t++) - "%" != r.charAt(t) - ? n.push(r.charCodeAt(t)) - : (n.push(parseInt(r.substr(t + 1, 2), 16)), (t += 2)); - return n; - }, V = function (r, n) { - return ((D(r) / 8) | 0) - g[n[0]][r] * d[n[0]][r]; - }, E = function (r, n, t) { - (a[n][r] = t ? 1 : 0), (f[n][r] = 1); - }, R = function (r) { - for (var n = [], t = 0, o = r; t < o.length; t++) { - var e = o[t]; - A(e, 8, n); - } - return { - modeBits: 4, - numBitsCharCount: [8, 16, 16], - numChars: r.length, - bitData: n, - }; - }, Z = function (r) { - if (!c.test(r)) - throw "String contains non-numeric characters"; - for (var n = [], t = 0; t < r.length;) { - var o = u(r.length - t, 3); - A(parseInt(r.substr(t, o), 10), 3 * o + 1, n), (t += o); - } - return { - modeBits: 1, - numBitsCharCount: [10, 12, 14], - numChars: r.length, - bitData: n, - }; - }, z = function (r) { - if (!s.test(r)) - throw "String contains unencodable characters in alphanumeric mode"; - var n, t = []; - for (n = 0; n + 2 <= r.length; n += 2) { - var o = 45 * l.indexOf(r.charAt(n)); - (o += l.indexOf(r.charAt(n + 1))), A(o, 11, t); - } - return (n < r.length && A(l.indexOf(r.charAt(n)), 6, t), - { - modeBits: 2, - numBitsCharCount: [9, 11, 13], - numChars: r.length, - bitData: t, - }); - }, L = function (r, n, t, o) { - var e = (function (r) { - return "" == r - ? [] - : c.test(r) - ? [Z(r)] - : s.test(r) - ? [z(r)] - : [R(S(r))]; - })(r); - return U(e, n, t, o); - }, N = function (r, i, u, h) { - (t = i), (o = h); - for (var v = (e = 4 * (n = r) + 17); v--;) - (a[v] = []), (f[v] = []); - if ((O(), - (function (r) { - for (var n = 0, t = 1, o = e - 1, i = o; i > 0; i -= 2) { - 6 == i && --i; - for (var u = 0 > (t = -t) ? o : 0, h = 0; h < e; ++h) { - for (var v = i; v > i - 2; --v) - f[u][v] || - ((a[u][v] = B(r[n >>> 3], 7 - (7 & n))), - ++n); - u += t; - } - } - })(Q(u)), - 0 > o)) { - var c = 1e9; - for (v = 8; v--;) { - w(v), $(v); - var s = b(); - c > s && ((c = s), (o = v)), w(v); - } - } - w(o), $(o), (f = []); - }, U = function (r, n, t, o, e, a) { - if ((void 0 === e && (e = 1), - void 0 === a && (a = 40), - void 0 === o && (o = -1), - void 0 === t && (t = !0), - !(1 <= e && e <= a && a <= 40) || o < -1 || o > 7)) - throw "Invalid value"; - for (var f = [], i = 236, h = [], v = e;;) { - var c = x(r, v); - if (c <= 8 * V(v, n)) - break; - if (v >= a) - throw "Data too long"; - v++; - } - if (t) - for (var s = (l = [m.H, m.Q, m.M]).length; s--;) - c <= 8 * V(v, l[s]) && (n = l[s]); - for (var l = 0; l < r.length; l++) { - var g = r[l]; - A(g.modeBits, 4, f), A(g.numChars, M(g, v), f); - for (var d = 0, p = g.bitData; d < p.length; d++) - f.push(p[d]); - } - if (f.length != c) - throw "Assertion error"; - var C = 8 * V(v, n); - if (f.length > C) - throw "Assertion error"; - if ((A(0, u(4, C - f.length), f), - A(0, (8 - (f.length % 8)) % 8, f), - f.length % 8 != 0)) - throw "Assertion error"; - for (; f.length < C;) - A(i, 8, f), (i ^= 253); - for (s = f.length; s--;) - h[s >>> 3] |= f[s] << (7 - (7 & s)); - return N(v, n, h, o); - }; - return (function () { - function n(r) { - return /^#[0-9a-f]{3}(?:[0-9a-f]{3})?$/i.test(r); - } - function t(r, n) { - for (var t in ((r = document.createElementNS(s, r)), n || {})) - r.setAttribute(t, n[t]); - return r; - } - var o, f, i, u, v, c, s = "http://www.w3.org/2000/svg", l = "", g = "string" == typeof r ? { msg: r } : r || {}, d = g.pal || ["#000"], - // p = h(g.dim) || 256, - p = "100%", C = [1, 0, 0, 1, (c = (c = h(g.pad)) > -1 ? c : 4), c], w = n((w = d[0])) ? w : "#000", b = n((b = d[1])) ? b : 0, A = g.vrb ? 0 : 1; - for (L(g.msg || "", m[g.ecl] || m.M, 0 == g.ecb ? 0 : 1, g.mtx), - v = e + 2 * c, - i = e; i--;) - for (u = 0, f = e; f--;) - a[i][f] && - (A - ? (u++, - a[i][f - 1] || - ((l += - "M" + - f + - "," + - i + - "h" + - u + - "v1h-" + - u + - "v-1z"), - (u = 0))) - : (l += "M" + f + "," + i + "h1v1h-1v-1z")); - return ((o = t("svg", { - viewBox: [0, 0, v, v].join(" "), - width: p, - height: p, - fill: w, - "shape-rendering": "crispEdges", - xmlns: s, - version: "1.1", - })), - b && - o.appendChild(t("path", { fill: b, d: "M0,0V" + v + "H" + v + "V0H0Z" })), - o.appendChild(t("path", { transform: "matrix(" + C + ")", d: l })), - o); - })(); - } - function qr_svg(input_data) { - let svgNode = QRCode({ - msg: input_data, - // dim: 256, - pad: 0, - // pad: 40, - // mtx: 7, - // ecl: "H", - // ecb: 0, - pal: ["#000000", "#ffffff"], - // vrb: 1, - }), _ = new XMLSerializer(); - return `data:image/svg+xml;base64,${btoa(_.serializeToString(svgNode))}`; - } - - const applist = { - wa: { - id: "wa", - name: "WhatsApp", - theme: { primary: "#25D366", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://api.whatsapp.com/send?text=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - fb: { - id: "fb", - name: "Facebook", - theme: { primary: "#0c87ef", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent(text)}&u=${encodeURIComponent(input_url)}`; - }, - }, - tw: { - id: "tw", - name: "Twitter", - theme: { primary: "#1D9BF0", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://twitter.com/intent/tweet?text=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`; - }, - }, - eml: { - id: "eml", - name: "Email", - theme: { primary: "#EA4335", secondary: "#ffffff" }, - url_format: (body, subject = "") => { - return `mailto:?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`; - }, - }, - lnkdn: { - id: "lnkdn", - name: "LinkedIn", - theme: { primary: "#0A66C2", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.linkedin.com/cws/share?url=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - pntrst: { - id: "pntrst", - name: "Pinterest", - theme: { primary: "#E60123", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&method=button`; - }, - }, - rdt: { - id: "rdt", - name: "Reddit", - theme: { primary: "#e45b34", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://reddit.com/submit?title=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}`; - }, - }, - snpcht: { - id: "snpcht", - name: "Snapchat", - theme: { primary: "#fffC00", secondary: "#000000" }, - url_format: (input_url, text = "") => { - return `https://snapchat.com/scan?attachmentUrl=${encodeURIComponent(input_url)}`; - }, - }, - koo: { - id: "koo", - name: "Koo", - theme: { primary: "#FACD00", secondary: "#383838" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.kooapp.com/create?title=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - tg: { - id: "tg", - name: "Telegram", - theme: { primary: "#2aa1da", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://t.me/share/url?url=${encodeURIComponent(input_url)}&text=${encodeURIComponent(text)}`; - }, - }, - }; - - let QRInterfaceState = false; - let default_url = window.location.href, default_text = document.title; - function setSharerText(text) { - default_text = text; - } - function setSharerURL(url) { - default_url = url; - } - function setDefaultSharerURL() { - default_url = window.location.href; - } - function setDefaultSharerText() { - default_text = document.title; - } - function openQRInterfaceState() { - QRInterfaceState = true; - } - function closeQRInterfaceState() { - QRInterfaceState = false; - } - function isQRInterfaceStateOpen() { - return QRInterfaceState; - } - function revertBackToRoot() { - ((element) => { - element.innerHTML = svgs.local.sharerIcon; - element.onclick = () => openWebsite(); - })(elements.header_icon_container()); - elements.header_title().innerText = "Sharer by KP"; - ((element) => { - element.style.height = "auto"; - element.style.aspectRatio = "1"; - })(elements.sharer_content()); - setApplistInterface(); - closeQRInterfaceState(); - } - function setQRInterface(appid) { - let sharer_content = j2h.setRoot(elements.sharer_content()), url_to_be_shared = applist[appid].url_format(default_url, default_text); - sharer_content - .append(j2h.element("div", { - class: "sharer-qr-container", - }, j2h.element("div", { - class: "sharer-qr", - style: `background: url(${qr_svg(url_to_be_shared)})`, - }, svgs.cdn[appid]))) - .append(j2h.element("div", { class: "sharer-credits" }, j2h.element("div", { id: "credits-container" }, [ - j2h.element("div", { class: "credits-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { class: "credits-text" }, "Powered by Sharer"), - ]))); - sharer_content.render(); - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - elements.credits_container().onclick = () => openWebsite(); - openQRInterfaceState(); - ((element) => { - element.innerHTML = svgs.local.arrowLeftIcon; - element.onclick = revertBackToRoot; - })(elements.header_icon_container()); - ((app_details) => { - // elements.header_title().innerText = `Share on ${app_details.name}`; - elements.header_title().innerText = `Scan to open ${app_details.name}`; - setFooterInterface(`Open ${app_details.name}`, app_details.theme.secondary, app_details.theme.primary, () => { - openWebsite(url_to_be_shared); - }); - })(applist[appid]); - } - function setApplistInterface() { - let applist_html = j2h.setRoot(elements.sharer_content()); - Object.keys(applist).forEach((id) => { - applist_html.append(j2h.element("div", { id: `open-${id}-qr`, class: "sharer-applist-item" }, [ - j2h.element("div", { class: "sharer-applist-icon-container" }, svgs.cdn[id]), - j2h.element("div", { class: "sharer-applist-app-name" }, applist[id].name), - j2h.element("div", { class: "sharer-applist-arrow-right-icon" }, svgs.local.arrowRightIcon), - ])); - }); - applist_html.render(); - Object.keys(applist).forEach((id) => { - document.getElementById(`open-${id}-qr`).onclick = - () => { - setQRInterface(id); - }; - }); - setFooterInterface(); - closeQRInterfaceState(); - } - - let resizeLock = false; - function resizeObserverAction() { - if (resizeLock) - return; - resizeLock = true; - setTimeout(() => { - resizeLock = false; - elements.sharer_container().style.height = `${document.documentElement.clientHeight - 12}px`; - if (isQRInterfaceStateOpen()) { - elements.sharer_content().style.height = `${elements.sharer_content().offsetWidth + 51}px`; - } - }, 500); - } - function startResizeObserver() { - window.addEventListener("resize", resizeObserverAction); - } - function closeResizeObserver() { - window.removeEventListener("resize", resizeObserverAction); - } - - let continue_to_close = true; - function setContinueToCloseFalse() { - continue_to_close = false; - } - function closeSharer() { - if (continue_to_close) { - try { - elements.sharer_container().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().remove(); - closeResizeObserver(); - }, 100); - }, 300); - document.body.classList.remove("sharer-opened"); - try { - ((sharer_button) => { - sharer_button.classList.remove("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - } - catch (error) { - console.log(error); - } - } - continue_to_close = true; - } - - function setSharerRoot() { - const Sharer_By_KP = document.createElement("div"); - j2h.setAttribute(Sharer_By_KP, { id: "sharer-by-KP", class: "hide" }); - const sharer_root = j2h.setRoot(Sharer_By_KP); - sharer_root.append(j2h.element("div", { id: "sharer-container", class: "hide" }, j2h.element("div", { id: "sharer-window" }, [ - j2h.element("div", { class: "sharer-header" }, [ - j2h.element("div", { id: "header-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { id: "header-title" }, "Sharer by KP"), - j2h.element("div", { id: "header-close-icon" }, svgs.local.closeIcon), - ]), - j2h.element("div", { id: "sharer-content-main" }), - j2h.element("div", { id: "sharer-footer" }, j2h.element("div", { id: "sharer-footer-text" })), - ]))); - document.body.prepend(Sharer_By_KP); - sharer_root.render(); - } - function openSharer() { - try { - document.getElementById("sharer-by-KP").remove(); - } - catch (error) { } - try { - ((sharer_button) => { - sharer_button.classList.add("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - setSharerRoot(); - setTimeout(() => { - elements.sharer_by_KP().classList.remove("hide"); - elements.sharer_container().classList.remove("hide"); - }, 10); - elements.sharer_window().onclick = setContinueToCloseFalse; - elements.sharer_container().onclick = closeSharer; - elements.header_close_icon().onclick = closeSharer; - [elements.header_icon_container(), elements.sharer_footer()].forEach((element) => { - element.onclick = () => openWebsite(); - }); - setApplistInterface(); - setFooterInterface(); - resizeObserverAction(); - startResizeObserver(); - document.body.classList.add("sharer-opened"); - } - - var sharer_functions = { - setURL: function (url) { - setSharerURL(url); - return this; - }, - setDefaultURL: function () { - setDefaultSharerURL(); - return this; - }, - setText: function (text) { - setSharerText(text); - return this; - }, - setDefaultText: function () { - setDefaultSharerText(); - return this; - }, - open: function () { - openSharer(); - }, - close: function () { - closeSharer(); - }, - }; - // Adding Sharer css programmatically - document.head.appendChild(j2h.setAttribute(document.createElement("link"), { - id: "sharer_css_file", - rel: "stylesheet", - href: cdn.getPath(["bundle", "sharerByKP.css"]), - })); - try { - localStorage.removeItem("sharer_deployment_sha"); // To be removed after some time - } - catch (error) { } - - return sharer_functions; - -})(); diff --git a/bundle/sharer.iife.min.js b/bundle/sharer.iife.min.js deleted file mode 100644 index 8e821cd..0000000 --- a/bundle/sharer.iife.min.js +++ /dev/null @@ -1,15 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-04-20T09:31:49.006Z -*/ -var sharer=function(){"use strict";const e={url:"https://patelka2211.github.io/sharer/",getPath(e){return"string"==typeof e?this.url+e:this.url+e.join("/")}};class t{constructor(e){this.root=e,this.list=[]}append(e){return this.list.push(e),this}render(e=this.list,t=this.root,n=!0){n&&(t.innerHTML=""),e.forEach((e=>{for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=document.createElement(n),a=e[n];r.setAttribute(o,a[0]),"string"==typeof a[1]?o.innerHTML=a[1]:"object"==typeof a[1]&&(void 0===a[1].length?this.render([a[1]],o,!1):void 0!==a[1].length&&this.render(a[1],o,!1)),t.appendChild(o)}}))}}const r={setRoot:e=>new t(e),element:(e,t={},r="")=>({[e]:[t,r]}),setAttribute:(e,r)=>{if(e instanceof t&&(e=e.root),"string"==typeof r)e.setAttribute(r,"");else if("object"==typeof r&&void 0!==r.length&&"string"==typeof r[0])for(let t=0;t{if(void 0===t.length){let r=t;for(const t in r)e.setAttribute(t,r[t].toString())}else"object"==typeof t?t.map((t=>{e.setAttribute(t,"")})):e.setAttribute(t,"")}));return e}},n={sharer_by_KP:()=>document.getElementById("sharer-by-KP"),sharer_container:()=>document.getElementById("sharer-container"),sharer_footer:()=>document.getElementById("sharer-footer"),sharer_footer_text:()=>document.getElementById("sharer-footer-text"),sharer_window:()=>document.getElementById("sharer-window"),sharer_content:()=>document.getElementById("sharer-content-main"),header_close_icon:()=>document.getElementById("header-close-icon"),header_icon_container:()=>document.getElementById("header-icon-container"),header_title:()=>document.getElementById("header-title"),credits_container:()=>document.getElementById("credits-container")};function o(e="https://patelka2211.github.io/sharer/"){window.open(e,"_blank")}function a(e="Powered by Sharer",t="#5900ff",r="#5900ff14",a=(()=>o())){var i;(i=n.sharer_footer_text()).innerText=e,i.style.color=t,(e=>{e.style.backgroundColor=r,e.onclick=a})(n.sharer_footer())}const i={local:{sharerIcon:' ',closeIcon:' ',arrowLeftIcon:' ',arrowRightIcon:' '},cdn:(s={},["wa","fb","tw","eml","lnkdn","pntrst","rdt","snpcht","koo","tg"].forEach((t=>{var n;s[t]=(n=`${t}Icon.svg`,r.element("img",{src:e.getPath(["assets",n])}))})),s)};var s;function c(e){var t,r,n,o,a=[],i=[],s=Math.max,c=Math.min,l=Math.abs,f=Math.ceil,h=/^[0-9]*$/,d=/^[A-Z0-9 $%*+.\/:-]*$/,u="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",m=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],p=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],v={L:[0,1],M:[1,0],Q:[2,3],H:[3,2]},g=function(e,t){for(var r=0,n=8;n--;)r=r<<1^285*(r>>>7)^(t>>>n&1)*e;return r},C=function(e,t){for(var r=[],n=e.length,o=n;o;)for(var a=e[n-o--]^r.shift(),i=t.length;i--;)r[i]^=g(t[i],a);return r},w=function(e){for(var t=[function(){return 0==(r+n)%2},function(){return 0==r%2},function(){return 0==n%3},function(){return 0==(r+n)%3},function(){return 0==((r/2|0)+(n/3|0))%2},function(){return 0==r*n%2+r*n%3},function(){return 0==(r*n%2+r*n%3)%2},function(){return 0==((r+n)%2+r*n%3)%2}][e],r=o;r--;)for(var n=o;n--;)i[r][n]||(a[r][n]^=t())},y=function(){for(var e=function(e,t){t[6]||(e+=o),t.shift(),t.push(e)},t=function(t,n,a){return t&&(e(n,a),n=0),e(n+=o,a),r(a)},r=function(e){var t=e[5],r=t>0&&e[4]==t&&e[3]==3*t&&e[2]==t&&e[1]==t;return(r&&e[6]>=4*t&&e[0]>=t?1:0)+(r&&e[0]>=4*t&&e[6]>=t?1:0)},n=0,i=o*o,s=0,c=o;c--;){for(var h=[0,0,0,0,0,0,0],d=[0,0,0,0,0,0,0],u=!1,m=!1,p=0,v=0,g=o;g--;){a[c][g]==u?5==++p?n+=3:p>5&&n++:(e(p,h),n+=40*r(h),p=1,u=a[c][g]),a[g][c]==m?5==++v?n+=3:v>5&&n++:(e(v,d),n+=40*r(d),v=1,m=a[g][c]);var C=a[c][g];C&&s++,g&&c&&C==a[c][g-1]&&C==a[c-1][g]&&C==a[c-1][g-1]&&(n+=3)}n+=40*t(u,p,h)+40*t(m,v,d)}return n+10*(f(l(20*s-10*i)/i)-1)},_=function(e,t,r){for(;t--;)r.push(e>>>t&1)},b=function(e,t){return e.numBitsCharCount[(t+7)/17|0]},x=function(e,t){return 0!=(e>>>t&1)},I=function(e,t){for(var r=0,n=e.length;n--;){var o=e[n],a=b(o,t);if(1<40)throw"Version number out of range";var t=(16*e+128)*e+64;if(e>=2){var r=e/7|2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return t},L=function(e,t){for(var r=2;-2<=r;r--)for(var n=2;-2<=n;n--)R(e+n,t+r,1!=s(l(n),l(r)))},k=function(e,t){for(var r=4;-4<=r;r--)for(var n=4;-4<=n;n--){var a=s(l(n),l(r)),i=e+n,c=t+r;0<=i&&i>>9);var i=21522^(t<<10|n);if(i>>>15!=0)throw"Assertion error";for(a=0;a<=5;a++)R(8,a,x(i,a));for(R(8,7,x(i,6)),R(8,8,x(i,7)),R(7,8,x(i,8)),a=9;a<15;a++)R(14-a,8,x(i,a));for(a=0;a<8;a++)R(o-1-a,8,x(i,a));for(a=8;a<15;a++)R(8,o-15+a,x(i,a));R(8,o-8,1)},A=function(){for(var e=o;e--;)R(6,e,0==e%2),R(e,6,0==e%2);for(var r=function(){var e=[];if(t>1)for(var r=2+(t/7|0),n=32==t?26:2*f((o-13)/(2*r-2));r--;)e[r]=r*n+6;return e}(),n=e=r.length;n--;)for(var a=e;a--;)0==a&&0==n||0==a&&n==e-1||a==e-1&&0==n||L(r[a],r[n]);k(3,3),k(o-4,3),k(3,o-4),$(0),function(){if(!(7>t)){for(var e=t,r=12;r--;)e=e<<1^7973*(e>>>11);var n=t<<12|e;if(r=18,n>>>18!=0)throw"Assertion error";for(;r--;){var a=o-11+r%3,i=r/3|0,s=x(n,r);R(a,i,s),R(i,a,s)}}}()},E=function(e){for(var t=[],r=(e=encodeURI(e),0);r0;s-=2){6==s&&--s;for(var c=0>(r=-r)?n:0,l=0;ls-2;--f)i[c][f]||(a[c][f]=x(e[t>>>3],7-(7&t)),++t);c+=r}}}(function(e){if(e.length!=M(t,r))throw"Invalid argument";for(var n=p[r[0]][t],o=m[r[0]][t],a=B(t)/8|0,i=n-a%n,s=a/n|0,c=[],l=function(e){var t=1,r=[];r[e-1]=1;for(var n=0;n=i)&&v.push(c[w][f]);return v}(c)),0>n){var h=1e9;for(f=8;f--;){w(f),$(f);var d=y();h>d&&(h=d,n=f),w(f)}}w(n),$(n),i=[]},F=function(e,t,r,n,o,a){if(void 0===o&&(o=1),void 0===a&&(a=40),void 0===n&&(n=-1),void 0===r&&(r=!0),!(1<=o&&o<=a&&a<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,l=[],f=o;;){var h=I(e,f);if(h<=8*M(f,t))break;if(f>=a)throw"Data too long";f++}if(r)for(var d=(u=[v.H,v.Q,v.M]).length;d--;)h<=8*M(f,u[d])&&(t=u[d]);for(var u=0;uC)throw"Assertion error";if(_(0,c(4,C-i.length),i),_(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[d]<<7-(7&d);return D(f,t,l,n)};return function(){function t(e){return/^#[0-9a-f]{3}(?:[0-9a-f]{3})?$/i.test(e)}function r(e,t){for(var r in e=document.createElementNS(d,e),t||{})e.setAttribute(r,t[r]);return e}var n,i,s,c,f,h,d="http://www.w3.org/2000/svg",u="",m="string"==typeof e?{msg:e}:e||{},p=m.pal||["#000"],g="100%",C=[1,0,0,1,h=(h=l(m.pad))>-1?h:4,h],w=t(w=p[0])?w:"#000",y=t(y=p[1])?y:0,_=m.vrb?0:1;for(H(m.msg||"",v[m.ecl]||v.M,0==m.ecb?0:1,m.mtx),f=o+2*h,s=o;s--;)for(c=0,i=o;i--;)a[s][i]&&(_?(c++,a[s][i-1]||(u+="M"+i+","+s+"h"+c+"v1h-"+c+"v-1z",c=0)):u+="M"+i+","+s+"h1v1h-1v-1z");return n=r("svg",{viewBox:[0,0,f,f].join(" "),width:g,height:g,fill:w,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),y&&n.appendChild(r("path",{fill:y,d:"M0,0V"+f+"H"+f+"V0H0Z"})),n.appendChild(r("path",{transform:"matrix("+C+")",d:u})),n}()}function l(e){let t=c({msg:e,pad:0,pal:["#000000","#ffffff"]}),r=new XMLSerializer;return`data:image/svg+xml;base64,${btoa(r.serializeToString(t))}`}const f={wa:{id:"wa",name:"WhatsApp",theme:{primary:"#25D366",secondary:"#ffffff"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://api.whatsapp.com/send?text=${encodeURIComponent(`${t}${e}`)}`)},fb:{id:"fb",name:"Facebook",theme:{primary:"#0c87ef",secondary:"#ffffff"},url_format:(e,t="")=>`https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent(t)}&u=${encodeURIComponent(e)}`},tw:{id:"tw",name:"Twitter",theme:{primary:"#1D9BF0",secondary:"#ffffff"},url_format:(e,t="")=>`https://twitter.com/intent/tweet?text=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`},eml:{id:"eml",name:"Email",theme:{primary:"#EA4335",secondary:"#ffffff"},url_format:(e,t="")=>`mailto:?subject=${encodeURIComponent(t)}&body=${encodeURIComponent(e)}`},lnkdn:{id:"lnkdn",name:"LinkedIn",theme:{primary:"#0A66C2",secondary:"#ffffff"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://www.linkedin.com/cws/share?url=${encodeURIComponent(`${t}${e}`)}`)},pntrst:{id:"pntrst",name:"Pinterest",theme:{primary:"#E60123",secondary:"#ffffff"},url_format:(e,t="")=>`https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}&method=button`},rdt:{id:"rdt",name:"Reddit",theme:{primary:"#e45b34",secondary:"#ffffff"},url_format:(e,t="")=>`https://reddit.com/submit?title=${encodeURIComponent(t)}&url=${encodeURIComponent(e)}`},snpcht:{id:"snpcht",name:"Snapchat",theme:{primary:"#fffC00",secondary:"#000000"},url_format:(e,t="")=>`https://snapchat.com/scan?attachmentUrl=${encodeURIComponent(e)}`},koo:{id:"koo",name:"Koo",theme:{primary:"#FACD00",secondary:"#383838"},url_format:(e,t="")=>(""!=t&&(t+="\n"),`https://www.kooapp.com/create?title=${encodeURIComponent(`${t}${e}`)}`)},tg:{id:"tg",name:"Telegram",theme:{primary:"#2aa1da",secondary:"#ffffff"},url_format:(e,t="")=>`https://t.me/share/url?url=${encodeURIComponent(e)}&text=${encodeURIComponent(t)}`}};let h=!1,d=window.location.href,u=document.title;function m(){h=!1}function p(){var e;(e=n.header_icon_container()).innerHTML=i.local.sharerIcon,e.onclick=()=>o(),n.header_title().innerText="Sharer by KP",(e=>{e.style.height="auto",e.style.aspectRatio="1"})(n.sharer_content()),g(),m()}function v(e){let t=r.setRoot(n.sharer_content()),s=f[e].url_format(d,u);var c,m;t.append(r.element("div",{class:"sharer-qr-container"},r.element("div",{class:"sharer-qr",style:`background: url(${l(s)})`},i.cdn[e]))).append(r.element("div",{class:"sharer-credits"},r.element("div",{id:"credits-container"},[r.element("div",{class:"credits-icon-container"},i.local.sharerIcon),r.element("div",{class:"credits-text"},"Powered by Sharer")]))),t.render(),(c=t.root).style.height=`${c.offsetWidth+51}px`,n.credits_container().onclick=()=>o(),h=!0,(e=>{e.innerHTML=i.local.arrowLeftIcon,e.onclick=p})(n.header_icon_container()),m=f[e],n.header_title().innerText=`Scan to open ${m.name}`,a(`Open ${m.name}`,m.theme.secondary,m.theme.primary,(()=>{o(s)}))}function g(){let e=r.setRoot(n.sharer_content());Object.keys(f).forEach((t=>{e.append(r.element("div",{id:`open-${t}-qr`,class:"sharer-applist-item"},[r.element("div",{class:"sharer-applist-icon-container"},i.cdn[t]),r.element("div",{class:"sharer-applist-app-name"},f[t].name),r.element("div",{class:"sharer-applist-arrow-right-icon"},i.local.arrowRightIcon)]))})),e.render(),Object.keys(f).forEach((e=>{document.getElementById(`open-${e}-qr`).onclick=()=>{v(e)}})),a(),m()}let C=!1;function w(){C||(C=!0,setTimeout((()=>{C=!1,n.sharer_container().style.height=document.documentElement.clientHeight-12+"px",h&&(n.sharer_content().style.height=`${n.sharer_content().offsetWidth+51}px`)}),500))}let y=!0;function _(){y=!1}function b(){if(y)try{n.sharer_container().classList.add("hide"),setTimeout((()=>{n.sharer_by_KP().classList.add("hide"),setTimeout((()=>{n.sharer_by_KP().remove(),window.removeEventListener("resize",w)}),100)}),300),document.body.classList.remove("sharer-opened");try{document.getElementById("sharer-btn-default").classList.remove("hide")}catch(e){}}catch(e){console.log(e)}y=!0}function x(){try{document.getElementById("sharer-by-KP").remove()}catch(e){}try{document.getElementById("sharer-btn-default").classList.add("hide")}catch(e){}!function(){const e=document.createElement("div");r.setAttribute(e,{id:"sharer-by-KP",class:"hide"});const t=r.setRoot(e);t.append(r.element("div",{id:"sharer-container",class:"hide"},r.element("div",{id:"sharer-window"},[r.element("div",{class:"sharer-header"},[r.element("div",{id:"header-icon-container"},i.local.sharerIcon),r.element("div",{id:"header-title"},"Sharer by KP"),r.element("div",{id:"header-close-icon"},i.local.closeIcon)]),r.element("div",{id:"sharer-content-main"}),r.element("div",{id:"sharer-footer"},r.element("div",{id:"sharer-footer-text"}))]))),document.body.prepend(e),t.render()}(),setTimeout((()=>{n.sharer_by_KP().classList.remove("hide"),n.sharer_container().classList.remove("hide")}),10),n.sharer_window().onclick=_,n.sharer_container().onclick=b,n.header_close_icon().onclick=b,[n.header_icon_container(),n.sharer_footer()].forEach((e=>{e.onclick=()=>o()})),g(),a(),w(),window.addEventListener("resize",w),document.body.classList.add("sharer-opened")}var I={setURL:function(e){return function(e){d=e}(e),this},setDefaultURL:function(){return d=window.location.href,this},setText:function(e){return function(e){u=e}(e),this},setDefaultText:function(){return u=document.title,this},open:function(){x()},close:function(){b()}};document.head.appendChild(r.setAttribute(document.createElement("link"),{id:"sharer_css_file",rel:"stylesheet",href:e.getPath(["bundle","sharerByKP.css"])}));try{localStorage.removeItem("sharer_deployment_sha")}catch(e){}return I}(); \ No newline at end of file diff --git a/bundle/sharerByKP.css b/bundle/sharerByKP.css deleted file mode 100644 index 49713a4..0000000 --- a/bundle/sharerByKP.css +++ /dev/null @@ -1 +0,0 @@ -@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";body{margin:0}body #sharer-by-KP{box-sizing:content-box;z-index:2147483647;font-family:"Inter",sans-serif;position:fixed;width:100vw;height:100vh;top:0px;left:0px;pointer-events:all;opacity:1;background-color:rgba(0,0,0,.32);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:space-around;transition:opacity .2s ease,background-color .2s ease,-webkit-backdrop-filter .2s ease;transition:opacity .2s ease,background-color .2s ease,backdrop-filter .2s ease;transition:opacity .2s ease,background-color .2s ease,backdrop-filter .2s ease,-webkit-backdrop-filter .2s ease}body #sharer-by-KP *{box-sizing:content-box}body #sharer-by-KP.hide{opacity:0;background-color:rgba(0,0,0,0);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}body #sharer-by-KP #sharer-container{position:absolute;width:calc(100vw - 12px);height:calc(100vh - 12px);display:flex;flex-direction:row;align-items:center;justify-content:space-around;top:6px;transition:top .6s ease}body #sharer-by-KP #sharer-container.hide{top:100%}body #sharer-by-KP #sharer-container #sharer-window{background-color:#fff;width:calc(100% - 42px);max-height:calc(100% - 84px);max-width:438px;padding:21px;border-radius:30px;display:flex;flex-direction:column;align-items:center;box-shadow:0 32px 128px 0 rgba(40,40,40,.32)}body #sharer-by-KP #sharer-container #sharer-window .sharer-header{width:100%;height:30px;display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-icon-container{height:calc(100% - 2px);padding:1px;aspect-ratio:1;background-color:#f6f6f6;border-radius:7px}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-icon-container:hover{cursor:pointer}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-icon-container svg{height:100%;aspect-ratio:inherit}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-title{font-family:"Inter",sans-serif;width:calc(100% - 76px);font-weight:500;font-size:20px;text-align:left;display:inline-block;white-space:nowrap;overflow:hidden !important;text-overflow:ellipsis}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-close-icon{height:100%;aspect-ratio:1;background-color:#f6f6f6;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:space-around}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-close-icon:hover{cursor:pointer}body #sharer-by-KP #sharer-container #sharer-window .sharer-header #header-close-icon svg{height:100%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main{width:100%;aspect-ratio:1;overflow:auto;border-radius:18px;-ms-overflow-style:none;scrollbar-width:none}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item{width:calc(100% - 20px);height:30px;padding:10px;border-radius:18px;display:flex;align-items:center;justify-content:space-between}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item:hover{background-color:#f6f6f6;cursor:pointer}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item .sharer-applist-icon-container{height:calc(100% - 2px);padding:1px;aspect-ratio:1;background-color:#f6f6f6;border-radius:7px}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item .sharer-applist-icon-container img{height:100%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item .sharer-applist-app-name{text-align:left;font-family:"Inter",sans-serif;width:calc(100% - 76px);display:inline-block;white-space:nowrap;overflow:hidden !important;text-overflow:ellipsis;font-size:18px}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item .sharer-applist-arrow-right-icon{height:100%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-applist-item .sharer-applist-arrow-right-icon svg{height:100%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-qr-container{width:calc(100% - 42px);aspect-ratio:1;padding:21px;padding-bottom:0}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-qr-container .sharer-qr{width:100%;aspect-ratio:1;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:space-around}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-qr-container .sharer-qr img{width:12%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits{height:72px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-around}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits #credits-container{height:30px;display:flex;align-items:center}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits #credits-container:hover{cursor:pointer}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits #credits-container .credits-icon-container{height:calc(100% - 2px);padding:1px;aspect-ratio:1;background-color:#f6f6f6;border-radius:7px;margin-right:8px}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits #credits-container .credits-icon-container svg{height:100%;aspect-ratio:1}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main .sharer-credits #credits-container .credits-text{font-family:"Inter",sans-serif;font-size:20px;font-weight:500;text-align:center}body #sharer-by-KP #sharer-container #sharer-window #sharer-content-main::-webkit-scrollbar{display:none}body #sharer-by-KP #sharer-container #sharer-window #sharer-footer{height:50px;width:100%;margin-top:21px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:space-around;text-align:center}body #sharer-by-KP #sharer-container #sharer-window #sharer-footer:hover{cursor:pointer}body #sharer-by-KP #sharer-container #sharer-window #sharer-footer #sharer-footer-text{font-family:"Inter",sans-serif;font-size:20px;font-weight:600}body.sharer-opened{overflow:hidden}@media(max-width: 500px){body #sharer-by-KP #sharer-container{align-items:end}body #sharer-by-KP #sharer-container #sharer-window{box-shadow:none}} \ No newline at end of file diff --git a/bundle/sharer_button.css b/bundle/sharer_button.css deleted file mode 100644 index ef5b389..0000000 --- a/bundle/sharer_button.css +++ /dev/null @@ -1 +0,0 @@ -body{margin:0}body #sharer-btn-default{position:fixed;bottom:20px;right:20px;width:48px;height:48px;z-index:2147483646;box-shadow:0 16px 64px 0 rgba(40,40,40,.32);border-radius:11.8px;opacity:1;transition:opacity .4s ease,bottom .4s ease,right .4s ease,width .4s ease,height .4s ease,box-shadow .4s ease;pointer-events:all}body #sharer-btn-default:hover{cursor:pointer;box-shadow:0 16px 64px 0 rgba(40,40,40,.48);bottom:16px;right:16px;width:56px;height:56px}body #sharer-btn-default.hide{opacity:0;bottom:-68px;pointer-events:none} \ No newline at end of file diff --git a/bundle/sharer_button.js b/bundle/sharer_button.js deleted file mode 100644 index cd54eba..0000000 --- a/bundle/sharer_button.js +++ /dev/null @@ -1,47 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-03-13T11:55:04.701Z -*/ -(function () { - 'use strict'; - - const cdn = { - url: "https://patelka2211.github.io/sharer/", - // url: "http://localhost:5500/", // For development purpose only. - getPath(path) { - if (typeof path === "string") - return this.url + path; - return this.url + path.join("/"); - }, - }; - - function loadSharerButton() { - document.head.appendChild(((element) => { - element.id = "sharer_button_css_file"; - element.rel = "stylesheet"; - element.href = cdn.getPath(["bundle", "sharer_button.css"]); - return element; - })(document.createElement("link"))); - let sharer_button = document.createElement("img"); - sharer_button.src = cdn.getPath(["assets", "sharerIcon.svg"]); - sharer_button.id = "sharer-btn-default"; - sharer_button.classList.add("hide"); - sharer_button.setAttribute("onclick", `try { sharer.setDefaultURL().setDefaultText().open(); } catch { alert('It appears that the Sharer module has not been fully loaded at this time.'); }`); - document.body.appendChild(sharer_button); - setTimeout(() => { - sharer_button.classList.remove("hide"); - }, 400); - } - window.addEventListener("load", loadSharerButton); - -})(); diff --git a/bundle/sharer_button.min.js b/bundle/sharer_button.min.js deleted file mode 100644 index eb43b28..0000000 --- a/bundle/sharer_button.min.js +++ /dev/null @@ -1,15 +0,0 @@ -/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel 2023 -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : 2023-03-13T11:55:04.701Z -*/ -!function(){"use strict";const e={url:"https://patelka2211.github.io/sharer/",getPath(e){return"string"==typeof e?this.url+e:this.url+e.join("/")}};window.addEventListener("load",(function(){var t;document.head.appendChild(((t=document.createElement("link")).id="sharer_button_css_file",t.rel="stylesheet",t.href=e.getPath(["bundle","sharer_button.css"]),t));let s=document.createElement("img");s.src=e.getPath(["assets","sharerIcon.svg"]),s.id="sharer-btn-default",s.classList.add("hide"),s.setAttribute("onclick","try { sharer.setDefaultURL().setDefaultText().open(); } catch { alert('It appears that the Sharer module has not been fully loaded at this time.'); }"),document.body.appendChild(s),setTimeout((()=>{s.classList.remove("hide")}),400)}))}(); \ No newline at end of file diff --git a/config.build.sh b/config.build.sh deleted file mode 100644 index 694f82b..0000000 --- a/config.build.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -# Compile JS from TS -tsc -p tsconfig.json - -# Bundle all JS -rollup -c - -# Minify bundled JS -terser ./bundle/sharer.iife.js -c -m -o ./bundle/sharer.iife.min.js -terser ./bundle/sharer.esm.js -c -m -o ./bundle/sharer.esm.min.js -terser ./bundle/sharer_button.js -c -m -o ./bundle/sharer_button.min.js \ No newline at end of file diff --git a/config.rollup.sh b/config.rollup.sh deleted file mode 100644 index 8944e07..0000000 --- a/config.rollup.sh +++ /dev/null @@ -1 +0,0 @@ -rollup -c -w \ No newline at end of file diff --git a/config.terser.sh b/config.terser.sh deleted file mode 100644 index 643329b..0000000 --- a/config.terser.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -input=$1 -output="${input/.js/.min.js}" - -terser $input -c -m -o $output \ No newline at end of file diff --git a/config.typescript.sh b/config.typescript.sh deleted file mode 100644 index 9ef887e..0000000 --- a/config.typescript.sh +++ /dev/null @@ -1 +0,0 @@ -tsc -w -p tsconfig.json \ No newline at end of file diff --git a/dist/cdn.js b/dist/cdn.js deleted file mode 100644 index 55c49de..0000000 --- a/dist/cdn.js +++ /dev/null @@ -1,10 +0,0 @@ -const cdn = { - url: "https://patelka2211.github.io/sharer/", - // url: "http://localhost:5500/", // For development purpose only. - getPath(path) { - if (typeof path === "string") - return this.url + path; - return this.url + path.join("/"); - }, -}; -export default cdn; diff --git a/dist/gui/element.js b/dist/gui/element.js deleted file mode 100644 index 631dadf..0000000 --- a/dist/gui/element.js +++ /dev/null @@ -1,13 +0,0 @@ -const elements = { - sharer_by_KP: () => document.getElementById("sharer-by-KP"), - sharer_container: () => document.getElementById("sharer-container"), - sharer_footer: () => document.getElementById("sharer-footer"), - sharer_footer_text: () => document.getElementById("sharer-footer-text"), - sharer_window: () => document.getElementById("sharer-window"), - sharer_content: () => document.getElementById("sharer-content-main"), - header_close_icon: () => document.getElementById("header-close-icon"), - header_icon_container: () => document.getElementById("header-icon-container"), - header_title: () => document.getElementById("header-title"), - credits_container: () => document.getElementById("credits-container"), -}; -export default elements; diff --git a/dist/gui/resizeObserver.js b/dist/gui/resizeObserver.js deleted file mode 100644 index ee2e9a2..0000000 --- a/dist/gui/resizeObserver.js +++ /dev/null @@ -1,21 +0,0 @@ -import elements from "./element"; -import { isQRInterfaceStateOpen } from "./sharerContent/content.functions"; -let resizeLock = false; -export function resizeObserverAction() { - if (resizeLock) - return; - resizeLock = true; - setTimeout(() => { - resizeLock = false; - elements.sharer_container().style.height = `${document.documentElement.clientHeight - 12}px`; - if (isQRInterfaceStateOpen()) { - elements.sharer_content().style.height = `${elements.sharer_content().offsetWidth + 51}px`; - } - }, 500); -} -export function startResizeObserver() { - window.addEventListener("resize", resizeObserverAction); -} -export function closeResizeObserver() { - window.removeEventListener("resize", resizeObserverAction); -} diff --git a/dist/gui/sharerContent/QRcode.js b/dist/gui/sharerContent/QRcode.js deleted file mode 100644 index 21f9065..0000000 --- a/dist/gui/sharerContent/QRcode.js +++ /dev/null @@ -1,418 +0,0 @@ -function QRCode(r) { - var n, t, o, e, a = [], f = [], i = Math.max, u = Math.min, h = Math.abs, v = Math.ceil, c = /^[0-9]*$/, s = /^[A-Z0-9 $%*+.\/:-]*$/, l = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:", g = [ - [ - -1, 7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, - 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, - 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, - ], - [ - -1, 13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, - 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - [ - -1, 17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, - 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 30, - ], - ], d = [ - [ - -1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, - 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, - 22, 24, 25, - ], - [ - -1, 1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, - 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, - 38, 40, 43, 45, 47, 49, - ], - [ - -1, 1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, - 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, - 53, 56, 59, 62, 65, 68, - ], - [ - -1, 1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, - 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, - 60, 63, 66, 70, 74, 77, 81, - ], - ], m = { L: [0, 1], M: [1, 0], Q: [2, 3], H: [3, 2] }, p = function (r, n) { - for (var t = 0, o = 8; o--;) - t = (t << 1) ^ (285 * (t >>> 7)) ^ (((n >>> o) & 1) * r); - return t; - }, C = function (r, n) { - for (var t = [], o = r.length, e = o; e;) - for (var a = r[o - e--] ^ t.shift(), f = n.length; f--;) - t[f] ^= p(n[f], a); - return t; - }, w = function (r) { - for (var n = [ - function () { - return 0 == (t + o) % 2; - }, - function () { - return 0 == t % 2; - }, - function () { - return 0 == o % 3; - }, - function () { - return 0 == (t + o) % 3; - }, - function () { - return 0 == (((t / 2) | 0) + ((o / 3) | 0)) % 2; - }, - function () { - return 0 == ((t * o) % 2) + ((t * o) % 3); - }, - function () { - return 0 == (((t * o) % 2) + ((t * o) % 3)) % 2; - }, - function () { - return 0 == (((t + o) % 2) + ((t * o) % 3)) % 2; - }, - ][r], t = e; t--;) - for (var o = e; o--;) - f[t][o] || (a[t][o] ^= n()); - }, b = function () { - for (var r = function (r, n) { - n[6] || (r += e), n.shift(), n.push(r); - }, n = function (n, o, a) { - return n && (r(o, a), (o = 0)), r((o += e), a), t(a); - }, t = function (r) { - var n = r[5], t = n > 0 && - r[4] == n && - r[3] == 3 * n && - r[2] == n && - r[1] == n; - return ((t && r[6] >= 4 * n && r[0] >= n ? 1 : 0) + - (t && r[0] >= 4 * n && r[6] >= n ? 1 : 0)); - }, o = 0, f = e * e, i = 0, u = e; u--;) { - for (var c = [0, 0, 0, 0, 0, 0, 0], s = [0, 0, 0, 0, 0, 0, 0], l = !1, g = !1, d = 0, m = 0, p = e; p--;) { - a[u][p] == l - ? 5 == ++d - ? (o += 3) - : d > 5 && o++ - : (r(d, c), (o += 40 * t(c)), (d = 1), (l = a[u][p])), - a[p][u] == g - ? 5 == ++m - ? (o += 3) - : m > 5 && o++ - : (r(m, s), - (o += 40 * t(s)), - (m = 1), - (g = a[p][u])); - var C = a[u][p]; - C && i++, - p && - u && - C == a[u][p - 1] && - C == a[u - 1][p] && - C == a[u - 1][p - 1] && - (o += 3); - } - o += 40 * n(l, d, c) + 40 * n(g, m, s); - } - return (o += 10 * (v(h(20 * i - 10 * f) / f) - 1)); - }, A = function (r, n, t) { - for (; n--;) - t.push((r >>> n) & 1); - }, M = function (r, n) { - return r.numBitsCharCount[((n + 7) / 17) | 0]; - }, B = function (r, n) { - return 0 != ((r >>> n) & 1); - }, x = function (r, n) { - for (var t = 0, o = r.length; o--;) { - var e = r[o], a = M(e, n); - if (1 << a <= e.numChars) - return 1 / 0; - t += 4 + a + e.bitData.length; - } - return t; - }, D = function (r) { - if (r < 1 || r > 40) - throw "Version number out of range"; - var n = (16 * r + 128) * r + 64; - if (r >= 2) { - var t = (r / 7) | 2; - (n -= (25 * t - 10) * t - 55), r >= 7 && (n -= 36); - } - return n; - }, I = function (r, n) { - for (var t = 2; -2 <= t; t--) - for (var o = 2; -2 <= o; o--) - E(r + o, n + t, 1 != i(h(o), h(t))); - }, H = function (r, n) { - for (var t = 4; -4 <= t; t--) - for (var o = 4; -4 <= o; o--) { - var a = i(h(o), h(t)), f = r + o, u = n + t; - 0 <= f && - f < e && - 0 <= u && - u < e && - E(f, u, 2 != a && 4 != a); - } - }, $ = function (r) { - for (var n = (t[1] << 3) | r, o = n, a = 10; a--;) - o = (o << 1) ^ (1335 * (o >>> 9)); - var f = 21522 ^ ((n << 10) | o); - if (f >>> 15 != 0) - throw "Assertion error"; - for (a = 0; a <= 5; a++) - E(8, a, B(f, a)); - E(8, 7, B(f, 6)), E(8, 8, B(f, 7)), E(7, 8, B(f, 8)); - for (a = 9; a < 15; a++) - E(14 - a, 8, B(f, a)); - for (a = 0; a < 8; a++) - E(e - 1 - a, 8, B(f, a)); - for (a = 8; a < 15; a++) - E(8, e - 15 + a, B(f, a)); - E(8, e - 8, 1); - }, O = function () { - for (var r = e; r--;) - E(6, r, 0 == r % 2), E(r, 6, 0 == r % 2); - for (var t = (function () { - var r = []; - if (n > 1) - for (var t = 2 + ((n / 7) | 0), o = 32 == n - ? 26 - : 2 * v((e - 13) / (2 * t - 2)); t--;) - r[t] = t * o + 6; - return r; - })(), o = (r = t.length); o--;) - for (var a = r; a--;) - (0 == a && 0 == o) || - (0 == a && o == r - 1) || - (a == r - 1 && 0 == o) || - I(t[a], t[o]); - H(3, 3), - H(e - 4, 3), - H(3, e - 4), - $(0), - (function () { - if (!(7 > n)) { - for (var r = n, t = 12; t--;) - r = (r << 1) ^ (7973 * (r >>> 11)); - var o = (n << 12) | r; - if (((t = 18), o >>> 18 != 0)) - throw "Assertion error"; - for (; t--;) { - var a = e - 11 + (t % 3), f = (t / 3) | 0, i = B(o, t); - E(a, f, i), E(f, a, i); - } - } - })(); - }, Q = function (r) { - if (r.length != V(n, t)) - throw "Invalid argument"; - for (var o = d[t[0]][n], e = g[t[0]][n], a = (D(n) / 8) | 0, f = o - (a % o), i = (a / o) | 0, u = [], h = (function (r) { - var n = 1, t = []; - t[r - 1] = 1; - for (var o = 0; o < r; o++) { - for (var e = 0; e < r; e++) - t[e] = p(t[e], n) ^ t[e + 1]; - n = p(n, 2); - } - return t; - })(e), v = 0, c = 0; v < o; v++) { - var s = r.slice(c, c + i - e + (v < f ? 0 : 1)); - c += s.length; - var l = C(s, h); - v < f && s.push(0), u.push(s.concat(l)); - } - var m = []; - for (v = 0; v < u[0].length; v++) - for (var w = 0; w < u.length; w++) - (v != i - e || w >= f) && m.push(u[w][v]); - return m; - }, S = function (r) { - for (var n = [], t = ((r = encodeURI(r)), 0); t < r.length; t++) - "%" != r.charAt(t) - ? n.push(r.charCodeAt(t)) - : (n.push(parseInt(r.substr(t + 1, 2), 16)), (t += 2)); - return n; - }, V = function (r, n) { - return ((D(r) / 8) | 0) - g[n[0]][r] * d[n[0]][r]; - }, E = function (r, n, t) { - (a[n][r] = t ? 1 : 0), (f[n][r] = 1); - }, R = function (r) { - for (var n = [], t = 0, o = r; t < o.length; t++) { - var e = o[t]; - A(e, 8, n); - } - return { - modeBits: 4, - numBitsCharCount: [8, 16, 16], - numChars: r.length, - bitData: n, - }; - }, Z = function (r) { - if (!c.test(r)) - throw "String contains non-numeric characters"; - for (var n = [], t = 0; t < r.length;) { - var o = u(r.length - t, 3); - A(parseInt(r.substr(t, o), 10), 3 * o + 1, n), (t += o); - } - return { - modeBits: 1, - numBitsCharCount: [10, 12, 14], - numChars: r.length, - bitData: n, - }; - }, z = function (r) { - if (!s.test(r)) - throw "String contains unencodable characters in alphanumeric mode"; - var n, t = []; - for (n = 0; n + 2 <= r.length; n += 2) { - var o = 45 * l.indexOf(r.charAt(n)); - (o += l.indexOf(r.charAt(n + 1))), A(o, 11, t); - } - return (n < r.length && A(l.indexOf(r.charAt(n)), 6, t), - { - modeBits: 2, - numBitsCharCount: [9, 11, 13], - numChars: r.length, - bitData: t, - }); - }, L = function (r, n, t, o) { - var e = (function (r) { - return "" == r - ? [] - : c.test(r) - ? [Z(r)] - : s.test(r) - ? [z(r)] - : [R(S(r))]; - })(r); - return U(e, n, t, o); - }, N = function (r, i, u, h) { - (t = i), (o = h); - for (var v = (e = 4 * (n = r) + 17); v--;) - (a[v] = []), (f[v] = []); - if ((O(), - (function (r) { - for (var n = 0, t = 1, o = e - 1, i = o; i > 0; i -= 2) { - 6 == i && --i; - for (var u = 0 > (t = -t) ? o : 0, h = 0; h < e; ++h) { - for (var v = i; v > i - 2; --v) - f[u][v] || - ((a[u][v] = B(r[n >>> 3], 7 - (7 & n))), - ++n); - u += t; - } - } - })(Q(u)), - 0 > o)) { - var c = 1e9; - for (v = 8; v--;) { - w(v), $(v); - var s = b(); - c > s && ((c = s), (o = v)), w(v); - } - } - w(o), $(o), (f = []); - }, U = function (r, n, t, o, e, a) { - if ((void 0 === e && (e = 1), - void 0 === a && (a = 40), - void 0 === o && (o = -1), - void 0 === t && (t = !0), - !(1 <= e && e <= a && a <= 40) || o < -1 || o > 7)) - throw "Invalid value"; - for (var f = [], i = 236, h = [], v = e;;) { - var c = x(r, v); - if (c <= 8 * V(v, n)) - break; - if (v >= a) - throw "Data too long"; - v++; - } - if (t) - for (var s = (l = [m.H, m.Q, m.M]).length; s--;) - c <= 8 * V(v, l[s]) && (n = l[s]); - for (var l = 0; l < r.length; l++) { - var g = r[l]; - A(g.modeBits, 4, f), A(g.numChars, M(g, v), f); - for (var d = 0, p = g.bitData; d < p.length; d++) - f.push(p[d]); - } - if (f.length != c) - throw "Assertion error"; - var C = 8 * V(v, n); - if (f.length > C) - throw "Assertion error"; - if ((A(0, u(4, C - f.length), f), - A(0, (8 - (f.length % 8)) % 8, f), - f.length % 8 != 0)) - throw "Assertion error"; - for (; f.length < C;) - A(i, 8, f), (i ^= 253); - for (s = f.length; s--;) - h[s >>> 3] |= f[s] << (7 - (7 & s)); - return N(v, n, h, o); - }; - return (function () { - function n(r) { - return /^#[0-9a-f]{3}(?:[0-9a-f]{3})?$/i.test(r); - } - function t(r, n) { - for (var t in ((r = document.createElementNS(s, r)), n || {})) - r.setAttribute(t, n[t]); - return r; - } - var o, f, i, u, v, c, s = "http://www.w3.org/2000/svg", l = "", g = "string" == typeof r ? { msg: r } : r || {}, d = g.pal || ["#000"], - // p = h(g.dim) || 256, - p = "100%", C = [1, 0, 0, 1, (c = (c = h(g.pad)) > -1 ? c : 4), c], w = n((w = d[0])) ? w : "#000", b = n((b = d[1])) ? b : 0, A = g.vrb ? 0 : 1; - for (L(g.msg || "", m[g.ecl] || m.M, 0 == g.ecb ? 0 : 1, g.mtx), - v = e + 2 * c, - i = e; i--;) - for (u = 0, f = e; f--;) - a[i][f] && - (A - ? (u++, - a[i][f - 1] || - ((l += - "M" + - f + - "," + - i + - "h" + - u + - "v1h-" + - u + - "v-1z"), - (u = 0))) - : (l += "M" + f + "," + i + "h1v1h-1v-1z")); - return ((o = t("svg", { - viewBox: [0, 0, v, v].join(" "), - width: p, - height: p, - fill: w, - "shape-rendering": "crispEdges", - xmlns: s, - version: "1.1", - })), - b && - o.appendChild(t("path", { fill: b, d: "M0,0V" + v + "H" + v + "V0H0Z" })), - o.appendChild(t("path", { transform: "matrix(" + C + ")", d: l })), - o); - })(); -} -export function qr_svg(input_data) { - let svgNode = QRCode({ - msg: input_data, - // dim: 256, - pad: 0, - // pad: 40, - // mtx: 7, - // ecl: "H", - // ecb: 0, - pal: ["#000000", "#ffffff"], - // vrb: 1, - }), _ = new XMLSerializer(); - return `data:image/svg+xml;base64,${btoa(_.serializeToString(svgNode))}`; -} diff --git a/dist/gui/sharerContent/applist.js b/dist/gui/sharerContent/applist.js deleted file mode 100644 index 249d7be..0000000 --- a/dist/gui/sharerContent/applist.js +++ /dev/null @@ -1,88 +0,0 @@ -export const applist = { - wa: { - id: "wa", - name: "WhatsApp", - theme: { primary: "#25D366", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://api.whatsapp.com/send?text=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - fb: { - id: "fb", - name: "Facebook", - theme: { primary: "#0c87ef", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent(text)}&u=${encodeURIComponent(input_url)}`; - }, - }, - tw: { - id: "tw", - name: "Twitter", - theme: { primary: "#1D9BF0", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://twitter.com/intent/tweet?text=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`; - }, - }, - eml: { - id: "eml", - name: "Email", - theme: { primary: "#EA4335", secondary: "#ffffff" }, - url_format: (body, subject = "") => { - return `mailto:?subject=${encodeURIComponent(subject)}&body=${encodeURIComponent(body)}`; - }, - }, - lnkdn: { - id: "lnkdn", - name: "LinkedIn", - theme: { primary: "#0A66C2", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.linkedin.com/cws/share?url=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - pntrst: { - id: "pntrst", - name: "Pinterest", - theme: { primary: "#E60123", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}&method=button`; - }, - }, - rdt: { - id: "rdt", - name: "Reddit", - theme: { primary: "#e45b34", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://reddit.com/submit?title=${encodeURIComponent(text)}&url=${encodeURIComponent(input_url)}`; - }, - }, - snpcht: { - id: "snpcht", - name: "Snapchat", - theme: { primary: "#fffC00", secondary: "#000000" }, - url_format: (input_url, text = "") => { - return `https://snapchat.com/scan?attachmentUrl=${encodeURIComponent(input_url)}`; - }, - }, - koo: { - id: "koo", - name: "Koo", - theme: { primary: "#FACD00", secondary: "#383838" }, - url_format: (input_url, text = "") => { - if (text != "") - text += "\n"; - return `https://www.kooapp.com/create?title=${encodeURIComponent(`${text}${input_url}`)}`; - }, - }, - tg: { - id: "tg", - name: "Telegram", - theme: { primary: "#2aa1da", secondary: "#ffffff" }, - url_format: (input_url, text = "") => { - return `https://t.me/share/url?url=${encodeURIComponent(input_url)}&text=${encodeURIComponent(text)}`; - }, - }, -}; diff --git a/dist/gui/sharerContent/content.functions.js b/dist/gui/sharerContent/content.functions.js deleted file mode 100644 index 1742bc9..0000000 --- a/dist/gui/sharerContent/content.functions.js +++ /dev/null @@ -1,93 +0,0 @@ -import j2h from "../../j2h"; -import elements from "../element"; -import { setFooterInterface } from "../sharerFooter/footer.functions"; -import { openWebsite } from "../sharerWebsite"; -import svgs from "../svgs"; -import { qr_svg } from "./QRcode"; -import { applist } from "./applist"; -let QRInterfaceState = false; -let default_url = window.location.href, default_text = document.title; -export function setSharerText(text) { - default_text = text; -} -export function setSharerURL(url) { - default_url = url; -} -export function setDefaultSharerURL() { - default_url = window.location.href; -} -export function setDefaultSharerText() { - default_text = document.title; -} -export function openQRInterfaceState() { - QRInterfaceState = true; -} -function closeQRInterfaceState() { - QRInterfaceState = false; -} -export function isQRInterfaceStateOpen() { - return QRInterfaceState; -} -export function revertBackToRoot() { - ((element) => { - element.innerHTML = svgs.local.sharerIcon; - element.onclick = () => openWebsite(); - })(elements.header_icon_container()); - elements.header_title().innerText = "Sharer by KP"; - ((element) => { - element.style.height = "auto"; - element.style.aspectRatio = "1"; - })(elements.sharer_content()); - setApplistInterface(); - closeQRInterfaceState(); -} -function setQRInterface(appid) { - let sharer_content = j2h.setRoot(elements.sharer_content()), url_to_be_shared = applist[appid].url_format(default_url, default_text); - sharer_content - .append(j2h.element("div", { - class: "sharer-qr-container", - }, j2h.element("div", { - class: "sharer-qr", - style: `background: url(${qr_svg(url_to_be_shared)})`, - }, svgs.cdn[appid]))) - .append(j2h.element("div", { class: "sharer-credits" }, j2h.element("div", { id: "credits-container" }, [ - j2h.element("div", { class: "credits-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { class: "credits-text" }, "Powered by Sharer"), - ]))); - sharer_content.render(); - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - elements.credits_container().onclick = () => openWebsite(); - openQRInterfaceState(); - ((element) => { - element.innerHTML = svgs.local.arrowLeftIcon; - element.onclick = revertBackToRoot; - })(elements.header_icon_container()); - ((app_details) => { - // elements.header_title().innerText = `Share on ${app_details.name}`; - elements.header_title().innerText = `Scan to open ${app_details.name}`; - setFooterInterface(`Open ${app_details.name}`, app_details.theme.secondary, app_details.theme.primary, () => { - openWebsite(url_to_be_shared); - }); - })(applist[appid]); -} -export function setApplistInterface() { - let applist_html = j2h.setRoot(elements.sharer_content()); - Object.keys(applist).forEach((id) => { - applist_html.append(j2h.element("div", { id: `open-${id}-qr`, class: "sharer-applist-item" }, [ - j2h.element("div", { class: "sharer-applist-icon-container" }, svgs.cdn[id]), - j2h.element("div", { class: "sharer-applist-app-name" }, applist[id].name), - j2h.element("div", { class: "sharer-applist-arrow-right-icon" }, svgs.local.arrowRightIcon), - ])); - }); - applist_html.render(); - Object.keys(applist).forEach((id) => { - document.getElementById(`open-${id}-qr`).onclick = - () => { - setQRInterface(id); - }; - }); - setFooterInterface(); - closeQRInterfaceState(); -} diff --git a/dist/gui/sharerContent/sharerCard.js b/dist/gui/sharerContent/sharerCard.js deleted file mode 100644 index 7498c98..0000000 --- a/dist/gui/sharerContent/sharerCard.js +++ /dev/null @@ -1,22 +0,0 @@ -import j2h from "../../j2h"; -import elements from "../element"; -import { openWebsite } from "../sharerWebsite"; -import svgs from "../svgs"; -import { qr_svg } from "./QRcode"; -export function setSharerCard() { - let sharer_content = j2h.setRoot(elements.sharer_content()); - sharer_content - .append(j2h.element("div", { - class: "sharer-qr-container", - style: `background: url(${qr_svg("Hello")})`, - })) - .append(j2h.element("div", { class: "sharer-credits" }, j2h.element("div", { id: "credits-container" }, [ - j2h.element("div", { class: "credits-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { class: "credits-text" }, "Powered by Sharer"), - ]))); - sharer_content.render(); - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - elements.credits_container().onclick = () => openWebsite(); -} diff --git a/dist/gui/sharerFooter/footer.functions.js b/dist/gui/sharerFooter/footer.functions.js deleted file mode 100644 index c942412..0000000 --- a/dist/gui/sharerFooter/footer.functions.js +++ /dev/null @@ -1,12 +0,0 @@ -import elements from "../element"; -import { openWebsite } from "../sharerWebsite"; -export function setFooterInterface(inputText = "Powered by Sharer", fontColor = "#5900ff", bgColor = "#5900ff14", actionPerform = () => openWebsite()) { - ((element) => { - element.innerText = inputText; - element.style.color = fontColor; - })(elements.sharer_footer_text()); - ((element) => { - element.style.backgroundColor = bgColor; - element.onclick = actionPerform; - })(elements.sharer_footer()); -} diff --git a/dist/gui/sharerHeader/header.functions.js b/dist/gui/sharerHeader/header.functions.js deleted file mode 100644 index ce2c3c6..0000000 --- a/dist/gui/sharerHeader/header.functions.js +++ /dev/null @@ -1,31 +0,0 @@ -import elements from "../element"; -import { closeResizeObserver } from "../resizeObserver"; -let continue_to_close = true; -export function setContinueToCloseFalse() { - continue_to_close = false; -} -export function closeSharer() { - if (continue_to_close) { - try { - elements.sharer_container().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().remove(); - closeResizeObserver(); - }, 100); - }, 300); - document.body.classList.remove("sharer-opened"); - try { - ((sharer_button) => { - sharer_button.classList.remove("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - } - catch (error) { - console.log(error); - } - } - continue_to_close = true; -} diff --git a/dist/gui/sharerRoot.js b/dist/gui/sharerRoot.js deleted file mode 100644 index 3a3490e..0000000 --- a/dist/gui/sharerRoot.js +++ /dev/null @@ -1,52 +0,0 @@ -import j2h from "../j2h"; -import elements from "./element"; -import { resizeObserverAction, startResizeObserver } from "./resizeObserver"; -import { setApplistInterface } from "./sharerContent/content.functions"; -import { setFooterInterface } from "./sharerFooter/footer.functions"; -import { closeSharer, setContinueToCloseFalse, } from "./sharerHeader/header.functions"; -import { openWebsite } from "./sharerWebsite"; -import svgs from "./svgs"; -function setSharerRoot() { - const Sharer_By_KP = document.createElement("div"); - j2h.setAttribute(Sharer_By_KP, { id: "sharer-by-KP", class: "hide" }); - const sharer_root = j2h.setRoot(Sharer_By_KP); - sharer_root.append(j2h.element("div", { id: "sharer-container", class: "hide" }, j2h.element("div", { id: "sharer-window" }, [ - j2h.element("div", { class: "sharer-header" }, [ - j2h.element("div", { id: "header-icon-container" }, svgs.local.sharerIcon), - j2h.element("div", { id: "header-title" }, "Sharer by KP"), - j2h.element("div", { id: "header-close-icon" }, svgs.local.closeIcon), - ]), - j2h.element("div", { id: "sharer-content-main" }), - j2h.element("div", { id: "sharer-footer" }, j2h.element("div", { id: "sharer-footer-text" })), - ]))); - document.body.prepend(Sharer_By_KP); - sharer_root.render(); -} -export function openSharer() { - try { - document.getElementById("sharer-by-KP").remove(); - } - catch (error) { } - try { - ((sharer_button) => { - sharer_button.classList.add("hide"); - })(document.getElementById("sharer-btn-default")); - } - catch (error) { } - setSharerRoot(); - setTimeout(() => { - elements.sharer_by_KP().classList.remove("hide"); - elements.sharer_container().classList.remove("hide"); - }, 10); - elements.sharer_window().onclick = setContinueToCloseFalse; - elements.sharer_container().onclick = closeSharer; - elements.header_close_icon().onclick = closeSharer; - [elements.header_icon_container(), elements.sharer_footer()].forEach((element) => { - element.onclick = () => openWebsite(); - }); - setApplistInterface(); - setFooterInterface(); - resizeObserverAction(); - startResizeObserver(); - document.body.classList.add("sharer-opened"); -} diff --git a/dist/gui/sharerWebsite.js b/dist/gui/sharerWebsite.js deleted file mode 100644 index 44f6ba4..0000000 --- a/dist/gui/sharerWebsite.js +++ /dev/null @@ -1,3 +0,0 @@ -export function openWebsite(url = "https://patelka2211.github.io/sharer/") { - window.open(url, "_blank"); -} diff --git a/dist/gui/svgs.js b/dist/gui/svgs.js deleted file mode 100644 index bd2adef..0000000 --- a/dist/gui/svgs.js +++ /dev/null @@ -1,33 +0,0 @@ -import cdn from "../cdn"; -import j2h from "../j2h"; -function getCDNsvgs(filename) { - return j2h.element("img", { - src: cdn.getPath(["assets", filename]), - }); -} -const svgs = { - local: { - sharerIcon: ` `, - closeIcon: ` `, - arrowLeftIcon: ` `, - arrowRightIcon: ` `, - }, - cdn: (function (obj) { - [ - "wa", - "fb", - "tw", - "eml", - "lnkdn", - "pntrst", - "rdt", - "snpcht", - "koo", - "tg", - ].forEach((app) => { - obj[app] = getCDNsvgs(`${app}Icon.svg`); - }); - return obj; - })({}), -}; -export default svgs; diff --git a/dist/j2h.js b/dist/j2h.js deleted file mode 100644 index f7f3f97..0000000 --- a/dist/j2h.js +++ /dev/null @@ -1,86 +0,0 @@ -class json2html { - constructor(root) { - this.root = root; - this.list = []; - } - append(input) { - this.list.push(input); - return this; - } - render(input = this.list, root = this.root, clearRoot = true) { - if (clearRoot) - root.innerHTML = ""; - input.forEach((item) => { - for (const key in item) { - if (Object.prototype.hasOwnProperty.call(item, key)) { - const element = document.createElement(key); - const value = item[key]; - j2h.setAttribute(element, value[0]); - if (typeof value[1] == "string") { - element.innerHTML = value[1]; - } - else if (typeof value[1] == "object") { - if (value[1].length === undefined) { - this.render([value[1]], element, false); - } - else if (value[1].length !== undefined) { - this.render(value[1], element, false); - } - } - root.appendChild(element); - } - } - }); - } -} -const j2h = { - setRoot: (root) => { - return new json2html(root); - }, - element: (tagName, attributes = {}, innerHTML = "") => { - return { - [tagName]: [attributes, innerHTML], - }; - }, - setAttribute: (element, attributes) => { - if (element instanceof json2html) { - element = element.root; - } - if (typeof attributes === "string") { - element.setAttribute(attributes, ""); - } - else if (typeof attributes === "object" && - attributes.length !== undefined && - typeof attributes[0] === "string") { - for (let index = 0; index < attributes.length; index++) { - const item = attributes[index]; - element.setAttribute(item, ""); - } - } - else if (attributes.length === undefined) { - for (const key in attributes) { - element.setAttribute(key, attributes[key].toString()); - } - } - else { - attributes.map((item) => { - if (item.length === undefined) { - let pairedAttribute = item; - for (const key in pairedAttribute) { - element.setAttribute(key, pairedAttribute[key].toString()); - } - } - else if (typeof item === "object") { - item.map((item) => { - element.setAttribute(item, ""); - }); - } - else { - element.setAttribute(item, ""); - } - }); - } - return element; - }, -}; -export default j2h; diff --git a/dist/sharer_button/sharer_button.js b/dist/sharer_button/sharer_button.js deleted file mode 100644 index 7d9fa86..0000000 --- a/dist/sharer_button/sharer_button.js +++ /dev/null @@ -1,19 +0,0 @@ -import cdn from "../cdn"; -function loadSharerButton() { - document.head.appendChild(((element) => { - element.id = "sharer_button_css_file"; - element.rel = "stylesheet"; - element.href = cdn.getPath(["bundle", "sharer_button.css"]); - return element; - })(document.createElement("link"))); - let sharer_button = document.createElement("img"); - sharer_button.src = cdn.getPath(["assets", "sharerIcon.svg"]); - sharer_button.id = "sharer-btn-default"; - sharer_button.classList.add("hide"); - sharer_button.setAttribute("onclick", `try { sharer.setDefaultURL().setDefaultText().open(); } catch { alert('It appears that the Sharer module has not been fully loaded at this time.'); }`); - document.body.appendChild(sharer_button); - setTimeout(() => { - sharer_button.classList.remove("hide"); - }, 400); -} -window.addEventListener("load", loadSharerButton); diff --git a/dist/sharer_esm.js b/dist/sharer_esm.js deleted file mode 100644 index 604f365..0000000 --- a/dist/sharer_esm.js +++ /dev/null @@ -1,4 +0,0 @@ -import sharer_functions from "./sharer_functions"; -// Destructuring all the functions -const setSharerURL = sharer_functions.setURL, setDefaultSharerURL = sharer_functions.setDefaultURL, setSharerText = sharer_functions.setText, setDefaultSharerText = sharer_functions.setDefaultText, openSharer = sharer_functions.open, closeSharer = sharer_functions.close; -export { setSharerURL, setDefaultSharerURL, setSharerText, setDefaultSharerText, openSharer, closeSharer, }; diff --git a/dist/sharer_functions.js b/dist/sharer_functions.js deleted file mode 100644 index 98193f7..0000000 --- a/dist/sharer_functions.js +++ /dev/null @@ -1,39 +0,0 @@ -import cdn from "./cdn"; -import { setDefaultSharerText, setDefaultSharerURL, setSharerText, setSharerURL, } from "./gui/sharerContent/content.functions"; -import { closeSharer } from "./gui/sharerHeader/header.functions"; -import { openSharer } from "./gui/sharerRoot"; -import j2h from "./j2h"; -export default { - setURL: function (url) { - setSharerURL(url); - return this; - }, - setDefaultURL: function () { - setDefaultSharerURL(); - return this; - }, - setText: function (text) { - setSharerText(text); - return this; - }, - setDefaultText: function () { - setDefaultSharerText(); - return this; - }, - open: function () { - openSharer(); - }, - close: function () { - closeSharer(); - }, -}; -// Adding Sharer css programmatically -document.head.appendChild(j2h.setAttribute(document.createElement("link"), { - id: "sharer_css_file", - rel: "stylesheet", - href: cdn.getPath(["bundle", "sharerByKP.css"]), -})); -try { - localStorage.removeItem("sharer_deployment_sha"); // To be removed after some time -} -catch (error) { } diff --git a/dist/sharer_iife.js b/dist/sharer_iife.js deleted file mode 100644 index 726b667..0000000 --- a/dist/sharer_iife.js +++ /dev/null @@ -1,2 +0,0 @@ -import sharer_functions from "./sharer_functions"; -export default sharer_functions; diff --git a/index.html b/index.html deleted file mode 100644 index 9242afb..0000000 --- a/index.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - - Sharer by KP - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- Sharer Icon -

Sharer by KP

-
- Sharer preview -

Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing - across various applications and social media platforms. Boost engagement and increase website reach with - Sharer - the top-rated JavaScript library for seamless URL sharing!

-
Discover - more about Sharer - -
-

Import the latest JavaScript library by - pasting the script tag into your HTML document's head tag. - Optimize sharing capabilities today with Sharer!

-
- - -
-
-
-

Or you can obtain the Sharer JavaScript Module by downloading the file from this GitHub - page.

-
- -

Sharer was created with the help of two libraries - "JSON2HTML" and "qrcode-svg". -

- - KP -

Developed in India with ❤️ by KP

-
-
- - - \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..a1d6caf --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6157 @@ +{ + "name": "@patelka2211/sharer", + "version": "0.1.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "@patelka2211/sharer", + "version": "0.1.0", + "license": "MIT", + "dependencies": { + "@patelka2211/dominar": "^1.2.4", + "dynamic-colors": "^1.1.4", + "html2canvas": "^1.4.1" + }, + "devDependencies": { + "@parcel/transformer-sass": "^2.9.3", + "parcel": "^2.9.3", + "rollup": "^3.27.1", + "rollup-plugin-dts": "^5.3.1", + "terser": "^5.19.2", + "typescript": "^5.1.6" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", + "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", + "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@lezer/common": { + "version": "0.15.12", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-0.15.12.tgz", + "integrity": "sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig==", + "dev": true + }, + "node_modules/@lezer/lr": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-0.15.8.tgz", + "integrity": "sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg==", + "dev": true, + "dependencies": { + "@lezer/common": "^0.15.0" + } + }, + "node_modules/@lmdb/lmdb-darwin-arm64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.7.11.tgz", + "integrity": "sha512-r6+vYq2vKzE+vgj/rNVRMwAevq0+ZR9IeMFIqcSga+wMtMdXQ27KqQ7uS99/yXASg29bos7yHP3yk4x6Iio0lw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@lmdb/lmdb-darwin-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.7.11.tgz", + "integrity": "sha512-jhj1aB4K8ycRL1HOQT5OtzlqOq70jxUQEWRN9Gqh3TIDN30dxXtiHi6EWF516tzw6v2+3QqhDMJh8O6DtTGG8Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@lmdb/lmdb-linux-arm": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.7.11.tgz", + "integrity": "sha512-dHfLFVSrw/v5X5lkwp0Vl7+NFpEeEYKfMG2DpdFJnnG1RgHQZngZxCaBagFoaJGykRpd2DYF1AeuXBFrAUAXfw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@lmdb/lmdb-linux-arm64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.7.11.tgz", + "integrity": "sha512-7xGEfPPbmVJWcY2Nzqo11B9Nfxs+BAsiiaY/OcT4aaTDdykKeCjvKMQJA3KXCtZ1AtiC9ljyGLi+BfUwdulY5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@lmdb/lmdb-linux-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.7.11.tgz", + "integrity": "sha512-vUKI3JrREMQsXX8q0Eq5zX2FlYCKWMmLiCyyJNfZK0Uyf14RBg9VtB3ObQ41b4swYh2EWaltasWVe93Y8+KDng==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@lmdb/lmdb-win32-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.7.11.tgz", + "integrity": "sha512-BJwkHlSUgtB+Ei52Ai32M1AOMerSlzyIGA/KC4dAGL+GGwVMdwG8HGCOA2TxP3KjhbgDPMYkv7bt/NmOmRIFng==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@mischnic/json-sourcemap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mischnic/json-sourcemap/-/json-sourcemap-0.1.0.tgz", + "integrity": "sha512-dQb3QnfNqmQNYA4nFSN/uLaByIic58gOXq4Y4XqLOWmOrw73KmJPt/HLyG0wvn1bnR6mBKs/Uwvkh+Hns1T0XA==", + "dev": true, + "dependencies": { + "@lezer/common": "^0.15.7", + "@lezer/lr": "^0.15.4", + "json5": "^2.2.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.2.tgz", + "integrity": "sha512-9bfjwDxIDWmmOKusUcqdS4Rw+SETlp9Dy39Xui9BEGEk19dDwH0jhipwFzEff/pFg95NKymc6TOTbRKcWeRqyQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.2.tgz", + "integrity": "sha512-lwriRAHm1Yg4iDf23Oxm9n/t5Zpw1lVnxYU3HnJPTi2lJRkKTrps1KVgvL6m7WvmhYVt/FIsssWay+k45QHeuw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.2.tgz", + "integrity": "sha512-MOI9Dlfrpi2Cuc7i5dXdxPbFIgbDBGgKR5F2yWEa6FVEtSWncfVNKW5AKjImAQ6CZlBK9tympdsZJ2xThBiWWA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.2.tgz", + "integrity": "sha512-FU20Bo66/f7He9Fp9sP2zaJ1Q8L9uLPZQDub/WlUip78JlPeMbVL8546HbZfcW9LNciEXc8d+tThSJjSC+tmsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.2.tgz", + "integrity": "sha512-gsWNDCklNy7Ajk0vBBf9jEx04RUxuDQfBse918Ww+Qb9HCPoGzS+XJTLe96iN3BVK7grnLiYghP/M4L8VsaHeA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.2.tgz", + "integrity": "sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@parcel/bundler-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.9.3.tgz", + "integrity": "sha512-JjJK8dq39/UO/MWI/4SCbB1t/qgpQRFnFDetAAAezQ8oN++b24u1fkMDa/xqQGjbuPmGeTds5zxGgYs7id7PYg==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/graph": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/cache": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/cache/-/cache-2.9.3.tgz", + "integrity": "sha512-Bj/H2uAJJSXtysG7E/x4EgTrE2hXmm7td/bc97K8M9N7+vQjxf7xb0ebgqe84ePVMkj4MVQSMEJkEucXVx4b0Q==", + "dev": true, + "dependencies": { + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/utils": "2.9.3", + "lmdb": "2.7.11" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/codeframe": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.9.3.tgz", + "integrity": "sha512-z7yTyD6h3dvduaFoHpNqur74/2yDWL++33rjQjIjCaXREBN6dKHoMGMizzo/i4vbiI1p9dDox2FIDEHCMQxqdA==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/compressor-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.9.3.tgz", + "integrity": "sha512-jz3t4/ICMsHEqgiTmv5i1DJva2k5QRpZlBELVxfY+QElJTVe8edKJ0TiKcBxh2hx7sm4aUigGmp7JiqqHRRYmA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/config-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.9.3.tgz", + "integrity": "sha512-tqN5tF7QnVABDZAu76co5E6N8mA9n8bxiWdK4xYyINYFIEHgX172oRTqXTnhEMjlMrdmASxvnGlbaPBaVnrCTw==", + "dev": true, + "dependencies": { + "@parcel/bundler-default": "2.9.3", + "@parcel/compressor-raw": "2.9.3", + "@parcel/namer-default": "2.9.3", + "@parcel/optimizer-css": "2.9.3", + "@parcel/optimizer-htmlnano": "2.9.3", + "@parcel/optimizer-image": "2.9.3", + "@parcel/optimizer-svgo": "2.9.3", + "@parcel/optimizer-swc": "2.9.3", + "@parcel/packager-css": "2.9.3", + "@parcel/packager-html": "2.9.3", + "@parcel/packager-js": "2.9.3", + "@parcel/packager-raw": "2.9.3", + "@parcel/packager-svg": "2.9.3", + "@parcel/reporter-dev-server": "2.9.3", + "@parcel/resolver-default": "2.9.3", + "@parcel/runtime-browser-hmr": "2.9.3", + "@parcel/runtime-js": "2.9.3", + "@parcel/runtime-react-refresh": "2.9.3", + "@parcel/runtime-service-worker": "2.9.3", + "@parcel/transformer-babel": "2.9.3", + "@parcel/transformer-css": "2.9.3", + "@parcel/transformer-html": "2.9.3", + "@parcel/transformer-image": "2.9.3", + "@parcel/transformer-js": "2.9.3", + "@parcel/transformer-json": "2.9.3", + "@parcel/transformer-postcss": "2.9.3", + "@parcel/transformer-posthtml": "2.9.3", + "@parcel/transformer-raw": "2.9.3", + "@parcel/transformer-react-refresh-wrap": "2.9.3", + "@parcel/transformer-svg": "2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/core": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/core/-/core-2.9.3.tgz", + "integrity": "sha512-4KlM1Zr/jpsqWuMXr2zmGsaOUs1zMMFh9vfCNKRZkptf+uk8I3sugHbNdo+F5B+4e2yMuOEb1zgAmvJLeuH6ww==", + "dev": true, + "dependencies": { + "@mischnic/json-sourcemap": "^0.1.0", + "@parcel/cache": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/graph": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/profiler": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "abortcontroller-polyfill": "^1.1.9", + "base-x": "^3.0.8", + "browserslist": "^4.6.6", + "clone": "^2.1.1", + "dotenv": "^7.0.0", + "dotenv-expand": "^5.1.0", + "json5": "^2.2.0", + "msgpackr": "^1.5.4", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/diagnostic": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.9.3.tgz", + "integrity": "sha512-6jxBdyB3D7gP4iE66ghUGntWt2v64E6EbD4AetZk+hNJpgudOOPsKTovcMi/i7I4V0qD7WXSF4tvkZUoac0jwA==", + "dev": true, + "dependencies": { + "@mischnic/json-sourcemap": "^0.1.0", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/events": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/events/-/events-2.9.3.tgz", + "integrity": "sha512-K0Scx+Bx9f9p1vuShMzNwIgiaZUkxEnexaKYHYemJrM7pMAqxIuIqhnvwurRCsZOVLUJPDDNJ626cWTc5vIq+A==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/fs": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/fs/-/fs-2.9.3.tgz", + "integrity": "sha512-/PrRKgCRw22G7rNPSpgN3Q+i2nIkZWuvIOAdMG4KWXC4XLp8C9jarNaWd5QEQ75amjhQSl3oUzABzkdCtkKrgg==", + "dev": true, + "dependencies": { + "@parcel/fs-search": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/watcher": "^2.0.7", + "@parcel/workers": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/fs-search": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/fs-search/-/fs-search-2.9.3.tgz", + "integrity": "sha512-nsNz3bsOpwS+jphcd+XjZL3F3PDq9lik0O8HPm5f6LYkqKWT+u/kgQzA8OkAHCR3q96LGiHxUywHPEBc27vI4Q==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/graph": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/graph/-/graph-2.9.3.tgz", + "integrity": "sha512-3LmRJmF8+OprAr6zJT3X2s8WAhLKkrhi6RsFlMWHifGU5ED1PFcJWFbOwJvSjcAhMQJP0fErcFIK1Ludv3Vm3g==", + "dev": true, + "dependencies": { + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/hash": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/hash/-/hash-2.9.3.tgz", + "integrity": "sha512-qlH5B85XLzVAeijgKPjm1gQu35LoRYX/8igsjnN8vOlbc3O8BYAUIutU58fbHbtE8MJPbxQQUw7tkTjeoujcQQ==", + "dev": true, + "dependencies": { + "xxhash-wasm": "^0.4.2" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/logger": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/logger/-/logger-2.9.3.tgz", + "integrity": "sha512-5FNBszcV6ilGFcijEOvoNVG6IUJGsnMiaEnGQs7Fvc1dktTjEddnoQbIYhcSZL63wEmzBZOgkT5yDMajJ/41jw==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/markdown-ansi": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.9.3.tgz", + "integrity": "sha512-/Q4X8F2aN8UNjAJrQ5NfK2OmZf6shry9DqetUSEndQ0fHonk78WKt6LT0zSKEBEW/bB/bXk6mNMsCup6L8ibjQ==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/namer-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.9.3.tgz", + "integrity": "sha512-1ynFEcap48/Ngzwwn318eLYpLUwijuuZoXQPCsEQ21OOIOtfhFQJaPwXTsw6kRitshKq76P2aafE0BioGSqxcA==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/node-resolver-core": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-3.0.3.tgz", + "integrity": "sha512-AjxNcZVHHJoNT/A99PKIdFtwvoze8PAiC3yz8E/dRggrDIOboUEodeQYV5Aq++aK76uz/iOP0tST2T8A5rhb1A==", + "dev": true, + "dependencies": { + "@mischnic/json-sourcemap": "^0.1.0", + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/optimizer-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.9.3.tgz", + "integrity": "sha512-RK1QwcSdWDNUsFvuLy0hgnYKtPQebzCb0vPPzqs6LhL+vqUu9utOyRycGaQffHCkHVQP6zGlN+KFssd7YtFGhA==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "lightningcss": "^1.16.1", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/optimizer-htmlnano": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.9.3.tgz", + "integrity": "sha512-9g/KBck3c6DokmJfvJ5zpHFBiCSolaGrcsTGx8C3YPdCTVTI9P1TDCwUxvAr4LjpcIRSa82wlLCI+nF6sSgxKA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "htmlnano": "^2.0.0", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "svgo": "^2.4.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/optimizer-htmlnano/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/@parcel/optimizer-htmlnano/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@parcel/optimizer-htmlnano/node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@parcel/optimizer-htmlnano/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "node_modules/@parcel/optimizer-htmlnano/node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@parcel/optimizer-image": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.9.3.tgz", + "integrity": "sha512-530YzthE7kmecnNhPbkAK+26yQNt69pfJrgE0Ev0BZaM1Wu2+33nki7o8qvkTkikhPrurEJLGIXt1qKmbKvCbA==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/optimizer-svgo": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.9.3.tgz", + "integrity": "sha512-ytQS0wY5JJhWU4mL0wfhYDUuHcfuw+Gy2+JcnTm1t1AZXHlOTbU6EzRWNqBShsgXjvdrQQXizAe3B6GFFlFJVQ==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "svgo": "^2.4.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/optimizer-svgo/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/@parcel/optimizer-svgo/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@parcel/optimizer-svgo/node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@parcel/optimizer-svgo/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "node_modules/@parcel/optimizer-svgo/node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@parcel/optimizer-swc": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-swc/-/optimizer-swc-2.9.3.tgz", + "integrity": "sha512-GQINNeqtdpL1ombq/Cpwi6IBk02wKJ/JJbYbyfHtk8lxlq13soenpwOlzJ5T9D2fdG+FUhai9NxpN5Ss4lNoAg==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "@swc/core": "^1.3.36", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/package-manager": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.9.3.tgz", + "integrity": "sha512-NH6omcNTEupDmW4Lm1e4NUYBjdqkURxgZ4CNESESInHJe6tblVhNB8Rpr1ar7zDar7cly9ILr8P6N3Ei7bTEjg==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/node-resolver-core": "3.0.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/packager-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.9.3.tgz", + "integrity": "sha512-mePiWiYZOULY6e1RdAIJyRoYqXqGci0srOaVZYaP7mnrzvJgA63kaZFFsDiEWghunQpMUuUjM2x/vQVHzxmhKQ==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/packager-html": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.9.3.tgz", + "integrity": "sha512-0Ex+O0EaZf9APNERRNGgGto02hFJ6f5RQEvRWBK55WAV1rXeU+kpjC0c0qZvnUaUtXfpWMsEBkevJCwDkUMeMg==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/packager-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.9.3.tgz", + "integrity": "sha512-V5xwkoE3zQ3R+WqAWhA1KGQ791FvJeW6KonOlMI1q76Djjgox68hhObqcLu66AmYNhR2R/wUpkP18hP2z8dSFw==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "globals": "^13.2.0", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/packager-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.9.3.tgz", + "integrity": "sha512-oPQTNoYanQ2DdJyL61uPYK2py83rKOT8YVh2QWAx0zsSli6Kiy64U3+xOCYWgDVCrHw9+9NpQMuAdSiFg4cq8g==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/packager-svg": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.9.3.tgz", + "integrity": "sha512-p/Ya6UO9DAkaCUFxfFGyeHZDp9YPAlpdnh1OChuwqSFOXFjjeXuoK4KLT+ZRalVBo2Jo8xF70oKMZw4MVvaL7Q==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "posthtml": "^0.16.4" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/plugin": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.9.3.tgz", + "integrity": "sha512-qN85Gqr2GMuxX1dT1mnuO9hOcvlEv1lrYrCxn7CJN2nUhbwcfG+LEvcrCzCOJ6XtIHm+ZBV9h9p7FfoPLvpw+g==", + "dev": true, + "dependencies": { + "@parcel/types": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/profiler": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/profiler/-/profiler-2.9.3.tgz", + "integrity": "sha512-pyHc9lw8VZDfgZoeZWZU9J0CVEv1Zw9O5+e0DJPDPHuXJYr72ZAOhbljtU3owWKAeW+++Q2AZWkbUGEOjI/e6g==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "chrome-trace-event": "^1.0.2" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/reporter-cli": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.9.3.tgz", + "integrity": "sha512-pZiEvQpuXFuQBafMHxkDmwH8CnnK9sWHwa3bSbsnt385aUahtE8dpY0LKt+K1zfB6degKoczN6aWVj9WycQuZQ==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "chalk": "^4.1.0", + "term-size": "^2.2.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/reporter-dev-server": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.9.3.tgz", + "integrity": "sha512-s6eboxdLEtRSvG52xi9IiNbcPKC0XMVmvTckieue2EqGDbDcaHQoHmmwkk0rNq0/Z/UxelGcQXoIYC/0xq3ykQ==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/reporter-tracer": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-tracer/-/reporter-tracer-2.9.3.tgz", + "integrity": "sha512-9cXpKWk0m6d6d+4+TlAdOe8XIPaFEIKGWMWG+5SFAQE08u3olet4PSvd49F4+ZZo5ftRE7YI3j6xNbXvJT8KGw==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "chrome-trace-event": "^1.0.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/resolver-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.9.3.tgz", + "integrity": "sha512-8ESJk1COKvDzkmOnppNXoDamNMlYVIvrKc2RuFPmp8nKVj47R6NwMgvwxEaatyPzvkmyTpq5RvG9I3HFc+r4Cw==", + "dev": true, + "dependencies": { + "@parcel/node-resolver-core": "3.0.3", + "@parcel/plugin": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/runtime-browser-hmr": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.9.3.tgz", + "integrity": "sha512-EgiDIDrVAWpz7bOzWXqVinQkaFjLwT34wsonpXAbuI7f7r00d52vNAQC9AMu+pTijA3gyKoJ+Q4NWPMZf7ACDA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/runtime-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.9.3.tgz", + "integrity": "sha512-EvIy+qXcKnB5qxHhe96zmJpSAViNVXHfQI5RSdZ2a7CPwORwhTI+zPNT9sb7xb/WwFw/WuTTgzT40b41DceU6Q==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/runtime-react-refresh": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.9.3.tgz", + "integrity": "sha512-XBgryZQIyCmi6JwEfMUCmINB3l1TpTp9a2iFxmYNpzHlqj4Ve0saKaqWOVRLvC945ZovWIBzcSW2IYqWKGtbAA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "react-error-overlay": "6.0.9", + "react-refresh": "^0.9.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/runtime-service-worker": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.9.3.tgz", + "integrity": "sha512-qLJLqv1mMdWL7gyh8aKBFFAuEiJkhUUgLKpdn6eSfH/R7kTtb76WnOwqUrhvEI9bZFUM/8Pa1bzJnPpqSOM+Sw==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/source-map": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@parcel/source-map/-/source-map-2.1.1.tgz", + "integrity": "sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==", + "dev": true, + "dependencies": { + "detect-libc": "^1.0.3" + }, + "engines": { + "node": "^12.18.3 || >=14" + } + }, + "node_modules/@parcel/transformer-babel": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.9.3.tgz", + "integrity": "sha512-pURtEsnsp3h6tOBDuzh9wRvVtw4PgIlqwAArIWdrG7iwqOUYv9D8ME4+ePWEu7MQWAp58hv9pTJtqWv4T+Sq8A==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "json5": "^2.2.0", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.9.3.tgz", + "integrity": "sha512-duWMdbEBBPjg3fQdXF16iWIdThetDZvCs2TpUD7xOlXH6kR0V5BJy8ONFT15u1RCqIV9hSNGaS3v3I9YRNY5zQ==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "lightningcss": "^1.16.1", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-html": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.9.3.tgz", + "integrity": "sha512-0NU4omcHzFXA1seqftAXA2KNZaMByoKaNdXnLgBgtCGDiYvOcL+6xGHgY6pw9LvOh5um10KI5TxSIMILoI7VtA==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2", + "srcset": "4" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-image": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.9.3.tgz", + "integrity": "sha512-7CEe35RaPadQzLIuxzTtIxnItvOoy46hcbXtOdDt6lmVa4omuOygZYRIya2lsGIP4JHvAaALMb5nt99a1uTwJg==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/transformer-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.9.3.tgz", + "integrity": "sha512-Z2MVVg5FYcPOfxlUwxqb5l9yjTMEqE3KI3zq2MBRUme6AV07KxLmCDF23b6glzZlHWQUE8MXzYCTAkOPCcPz+Q==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "@swc/helpers": "^0.5.0", + "browserslist": "^4.6.6", + "nullthrows": "^1.1.1", + "regenerator-runtime": "^0.13.7", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@parcel/transformer-json": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.9.3.tgz", + "integrity": "sha512-yNL27dbOLhkkrjaQjiQ7Im9VOxmkfuuSNSmS0rA3gEjVcm07SLKRzWkAaPnyx44Lb6bzyOTWwVrb9aMmxgADpA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "json5": "^2.2.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-postcss": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.9.3.tgz", + "integrity": "sha512-HoDvPqKzhpmvMmHqQhDnt8F1vH61m6plpGiYaYnYv2Om4HHi5ZIq9bO+9QLBnTKfaZ7ndYSefTKOxTYElg7wyw==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "clone": "^2.1.1", + "nullthrows": "^1.1.1", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-posthtml": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.9.3.tgz", + "integrity": "sha512-2fQGgrzRmaqbWf3y2/T6xhqrNjzqMMKksqJzvc8TMfK6f2kg3Ddjv158eaSW2JdkV39aY7tvAOn5f1uzo74BMA==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.9.3.tgz", + "integrity": "sha512-oqdPzMC9QzWRbY9J6TZEqltknjno+dY24QWqf8ondmdF2+W+/2mRDu59hhCzQrqUHgTq4FewowRZmSfpzHxwaQ==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-react-refresh-wrap": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.9.3.tgz", + "integrity": "sha512-cb9NyU6oJlDblFIlzqIE8AkvRQVGl2IwJNKwD4PdE7Y6sq2okGEPG4hOw3k/Y9JVjM4/2pUORqvjSRhWwd9oVQ==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "react-refresh": "^0.9.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-sass": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-sass/-/transformer-sass-2.9.3.tgz", + "integrity": "sha512-i9abj9bKg3xCHghJyTM3rUVxIEn9n1Rl+DFdpyNAD8VZ52COfOshFDQOWNuhU1hEnJOFYCjnfcO0HRTsg3dWmg==", + "dev": true, + "dependencies": { + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "sass": "^1.38.0" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/transformer-svg": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.9.3.tgz", + "integrity": "sha512-ypmE+dzB09IMCdEAkOsSxq1dEIm2A3h67nAFz4qbfHbwNgXBUuy/jB3ZMwXN/cO0f7SBh/Ap8Jhq6vmGqB5tWw==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2" + }, + "engines": { + "node": ">= 12.0.0", + "parcel": "^2.9.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/types": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/types/-/types-2.9.3.tgz", + "integrity": "sha512-NSNY8sYtRhvF1SqhnIGgGvJocyWt1K8Tnw5cVepm0g38ywtX6mwkBvMkmeehXkII4mSUn+frD9wGsydTunezvA==", + "dev": true, + "dependencies": { + "@parcel/cache": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/workers": "2.9.3", + "utility-types": "^3.10.0" + } + }, + "node_modules/@parcel/utils": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/utils/-/utils-2.9.3.tgz", + "integrity": "sha512-cesanjtj/oLehW8Waq9JFPmAImhoiHX03ihc3JTWkrvJYSbD7wYKCDgPAM3JiRAqvh1LZ6P699uITrYWNoRLUg==", + "dev": true, + "dependencies": { + "@parcel/codeframe": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/markdown-ansi": "2.9.3", + "@parcel/source-map": "^2.1.1", + "chalk": "^4.1.0", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.2.0.tgz", + "integrity": "sha512-71S4TF+IMyAn24PK4KSkdKtqJDR3zRzb0HE3yXpacItqTM7XfF2f5q9NEGLEVl0dAaBAGfNwDCjH120y25F6Tg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.2.0", + "@parcel/watcher-darwin-arm64": "2.2.0", + "@parcel/watcher-darwin-x64": "2.2.0", + "@parcel/watcher-linux-arm-glibc": "2.2.0", + "@parcel/watcher-linux-arm64-glibc": "2.2.0", + "@parcel/watcher-linux-arm64-musl": "2.2.0", + "@parcel/watcher-linux-x64-glibc": "2.2.0", + "@parcel/watcher-linux-x64-musl": "2.2.0", + "@parcel/watcher-win32-arm64": "2.2.0", + "@parcel/watcher-win32-x64": "2.2.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.2.0.tgz", + "integrity": "sha512-nU2wh00CTQT9rr1TIKTjdQ9lAGYpmz6XuKw0nAwAN+S2A5YiD55BK1u+E5WMCT8YOIDe/n6gaj4o/Bi9294SSQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.2.0.tgz", + "integrity": "sha512-cJl0UZDcodciy3TDMomoK/Huxpjlkkim3SyMgWzjovHGOZKNce9guLz2dzuFwfObBFCjfznbFMIvAZ5syXotYw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.2.0.tgz", + "integrity": "sha512-QI77zxaGrCV1StKcoRYfsUfmUmvPMPfQrubkBBy5XujV2fwaLgZivQOTQMBgp5K2+E19u1ufpspKXAPqSzpbyg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.2.0.tgz", + "integrity": "sha512-I2GPBcAXazPzabCmfsa3HRRW+MGlqxYd8g8RIueJU+a4o5nyNZDz0CR1cu0INT0QSQXEZV7w6UE8Hz9CF8u3Pg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.2.0.tgz", + "integrity": "sha512-St5mlfp+2lS9AmgixUqfwJa/DwVmTCJxC1HcOubUTz6YFOKIlkHCeUa1Bxi4E/tR/HSez8+heXHL8HQkJ4Bd8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.2.0.tgz", + "integrity": "sha512-jS+qfhhoOBVWwMLP65MaG8xdInMK30pPW8wqTCg2AAuVJh5xepMbzkhHJ4zURqHiyY3EiIRuYu4ONJKCxt8iqA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.2.0.tgz", + "integrity": "sha512-xJvJ7R2wJdi47WZBFS691RDOWvP1j/IAs3EXaWVhDI8FFITbWrWaln7KoNcR0Y3T+ZwimFY/cfb0PNht1q895g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.2.0.tgz", + "integrity": "sha512-D+NMpgr23a+RI5mu8ZPKWy7AqjBOkURFDgP5iIXXEf/K3hm0jJ3ogzi0Ed2237B/CdYREimCgXyeiAlE/FtwyA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.2.0.tgz", + "integrity": "sha512-z225cPn3aygJsyVUOWwfyW+fY0Tvk7N3XCOl66qUPFxpbuXeZuiuuJemmtm8vxyqa3Ur7peU/qJxrpC64aeI7Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.2.0.tgz", + "integrity": "sha512-JqGW0RJ61BkKx+yYzIURt9s53P7xMVbv0uxYPzAXLBINGaFmkIKSuUPyBVfy8TMbvp93lvF4SPBNDzVRJfvgOw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/workers": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/workers/-/workers-2.9.3.tgz", + "integrity": "sha512-zRrDuZJzTevrrwElYosFztgldhqW6G9q5zOeQXfVQFkkEJCNfg36ixeiofKRU8uu2x+j+T6216mhMNB6HiuY+w==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/profiler": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "peerDependencies": { + "@parcel/core": "^2.9.3" + } + }, + "node_modules/@patelka2211/dominar": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@patelka2211/dominar/-/dominar-1.2.4.tgz", + "integrity": "sha512-azlD/7yByJmn5GFLXFlQ9dEZDvrYNGA6+pAUPzrJjSh/n2ZLn6w0WGPS9mk0NZ7fQ/aBew8jQwyDnAVY0uFDGQ==" + }, + "node_modules/@swc/core": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.74.tgz", + "integrity": "sha512-P+MIExOTdWlfq8Heb1/NhBAke6UTckd4cRDuJoFcFMGBRvgoCMNWhnfP3FRRXPLI7GGg27dRZS+xHiqYyQmSrA==", + "dev": true, + "hasInstallScript": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.74", + "@swc/core-darwin-x64": "1.3.74", + "@swc/core-linux-arm-gnueabihf": "1.3.74", + "@swc/core-linux-arm64-gnu": "1.3.74", + "@swc/core-linux-arm64-musl": "1.3.74", + "@swc/core-linux-x64-gnu": "1.3.74", + "@swc/core-linux-x64-musl": "1.3.74", + "@swc/core-win32-arm64-msvc": "1.3.74", + "@swc/core-win32-ia32-msvc": "1.3.74", + "@swc/core-win32-x64-msvc": "1.3.74" + }, + "peerDependencies": { + "@swc/helpers": "^0.5.0" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.74.tgz", + "integrity": "sha512-2rMV4QxM583jXcREfo0MhV3Oj5pgRSfSh/kVrB1twL2rQxOrbzkAPT/8flmygdVoL4f2F7o1EY5lKlYxEBiIKQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.74.tgz", + "integrity": "sha512-KKEGE1wXneYXe15fWDRM8/oekd/Q4yAuccA0vWY/7i6nOSPqWYcSDR0nRtR030ltDxWt0rk/eCTmNkrOWrKs3A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.74.tgz", + "integrity": "sha512-HehH5DR6r/5fIVu7tu8ZqgrHkhSCQNewf1ztFQJgcmaQWn+H4AJERBjwkjosqh4TvUJucZv8vyRTvrFeBXaCSA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.74.tgz", + "integrity": "sha512-+xkbCRz/wczgdknoV4NwYxbRI2dD7x/qkIFcVM2buzLCq8oWLweuV8+aL4pRqu0qDh7ZSb1jcaVTUIsySCJznA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.74.tgz", + "integrity": "sha512-maKFZSCD3tQznzPV7T3V+TtiWZFEFM8YrnSS5fQNNb+K9J65sL+170uTb3M7H4cFkG+9Sm5k5yCrCIutlvV48g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.74.tgz", + "integrity": "sha512-LEXpcShF6DLTWJSiBhMSYZkLQ27UvaQ24fCFhoIV/R3dhYaUpHmIyLPPBNC82T03lB3ONUFVwrRw6fxDJ/f00A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.74.tgz", + "integrity": "sha512-sxsFctbFMZEFmDE7CmYljG0dMumH8XBTwwtGr8s6z0fYAzXBGNq2AFPcmEh2np9rPWkt7pE1m0ByESD+dMkbxQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.74.tgz", + "integrity": "sha512-F7hY9/BjFCozA4YPFYFH5FGCyWwa44vIXHqG66F5cDwXDGFn8ZtBsYIsiPfUYcx0AeAo1ojnVWKPxokZhYNYqA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.74.tgz", + "integrity": "sha512-qBAsiD1AlIdqED6wy3UNRHyAys9pWMUidX0LJ6mj24r/vfrzzTBAUrLJe5m7bzE+F1Rgi001avYJeEW1DLEJ+Q==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.74.tgz", + "integrity": "sha512-S3YAvvLprTnPRwQuy9Dkwubb5SRLpVK3JJsqYDbGfgj8PGQyKHZcVJ5X3nfFsoWLy3j9B/3Os2nawprRSzeC5A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/helpers": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", + "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", + "dev": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/abortcontroller-polyfill": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz", + "integrity": "sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001519", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz", + "integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + } + }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select/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==", + "dev": true, + "optional": true, + "peer": true, + "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/css-select/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "optional": true, + "peer": true, + "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/css-select/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "optional": true, + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "css-tree": "~2.2.0" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "dev": true, + "optional": true, + "peer": true + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?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==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dotenv": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-7.0.0.tgz", + "integrity": "sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "node_modules/dynamic-colors": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.4.tgz", + "integrity": "sha512-3hznV/H55ZdzUiqSfh2icy3jAoVTsxYv//aQUzyH961P+smqI4HT6vJYpcBrjPcUY2M2DOcL4NeY6LqtM8LoEg==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.483", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.483.tgz", + "integrity": "sha512-YLwU0iF//9R3cCEfq0wgL+pf9vglE4kwAg4S5tkVVZljUDKv7Wcz67mTY4OOj+T7YUbTGuqlbqgdl/s+7Q8KTw==", + "dev": true + }, + "node_modules/entities": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", + "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "dev": true, + "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", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "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==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/get-port": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-4.2.0.tgz", + "integrity": "sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "dependencies": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/htmlnano": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/htmlnano/-/htmlnano-2.0.4.tgz", + "integrity": "sha512-WGCkyGFwjKW1GeCBsPYacMvaMnZtFJ0zIRnC2NCddkA+IOEhTqskXrS7lep+3yYZw/nQ3dW1UAX4yA/GJyR8BA==", + "dev": true, + "dependencies": { + "cosmiconfig": "^8.0.0", + "posthtml": "^0.16.5", + "timsort": "^0.3.0" + }, + "peerDependencies": { + "cssnano": "^6.0.0", + "postcss": "^8.3.11", + "purgecss": "^5.0.0", + "relateurl": "^0.2.7", + "srcset": "4.0.0", + "svgo": "^3.0.2", + "terser": "^5.10.0", + "uncss": "^0.17.3" + }, + "peerDependenciesMeta": { + "cssnano": { + "optional": true + }, + "postcss": { + "optional": true + }, + "purgecss": { + "optional": true + }, + "relateurl": { + "optional": true + }, + "srcset": { + "optional": true + }, + "svgo": { + "optional": true + }, + "terser": { + "optional": true + }, + "uncss": { + "optional": true + } + } + }, + "node_modules/htmlparser2": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", + "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.2", + "domutils": "^2.8.0", + "entities": "^3.0.1" + } + }, + "node_modules/immutable": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-json": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-json/-/is-json-2.0.1.tgz", + "integrity": "sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lightningcss": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.21.5.tgz", + "integrity": "sha512-/pEUPeih2EwIx9n4T82aOG6CInN83tl/mWlw6B5gWLf36UplQi1L+5p3FUHsdt4fXVfOkkh9KIaM3owoq7ss8A==", + "dev": true, + "dependencies": { + "detect-libc": "^1.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-darwin-arm64": "1.21.5", + "lightningcss-darwin-x64": "1.21.5", + "lightningcss-linux-arm-gnueabihf": "1.21.5", + "lightningcss-linux-arm64-gnu": "1.21.5", + "lightningcss-linux-arm64-musl": "1.21.5", + "lightningcss-linux-x64-gnu": "1.21.5", + "lightningcss-linux-x64-musl": "1.21.5", + "lightningcss-win32-x64-msvc": "1.21.5" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.21.5.tgz", + "integrity": "sha512-z05hyLX85WY0UfhkFUOrWEFqD69lpVAmgl3aDzMKlIZJGygbhbegqb4PV8qfUrKKNBauut/qVNPKZglhTaDDxA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.21.5.tgz", + "integrity": "sha512-MSJhmej/U9MrdPxDk7+FWhO8+UqVoZUHG4VvKT5RQ4RJtqtANTiWiI97LvoVNMtdMnHaKs1Pkji6wHUFxjJsHQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.21.5.tgz", + "integrity": "sha512-xN6+5/JsMrbZHL1lPl+MiNJ3Xza12ueBKPepiyDCFQzlhFRTj7D0LG+cfNTzPBTO8KcYQynLpl1iBB8LGp3Xtw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.21.5.tgz", + "integrity": "sha512-KfzFNhC4XTbmG3ma/xcTs/IhCwieW89XALIusKmnV0N618ZDXEB0XjWOYQRCXeK9mfqPdbTBpurEHV/XZtkniQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.21.5.tgz", + "integrity": "sha512-bc0GytQO5Mn9QM6szaZ+31fQHNdidgpM1sSCwzPItz8hg3wOvKl8039rU0veMJV3ZgC9z0ypNRceLrSHeRHmXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.21.5.tgz", + "integrity": "sha512-JwMbgypPQgc2kW2av3OwzZ8cbrEuIiDiXPJdXRE6aVxu67yHauJawQLqJKTGUhiAhy6iLDG8Wg0a3/ziL+m+Kw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.21.5.tgz", + "integrity": "sha512-Ib8b6IQ/OR/VrPU6YBgy4T3QnuHY7DUa95O+nz+cwrTkMSN6fuHcTcIaz4t8TJ6HI5pl3uxUOZjmtls2pyQWow==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.21.5.tgz", + "integrity": "sha512-A8cSi8lUpBeVmoF+DqqW7cd0FemDbCuKr490IXdjyeI+KL8adpSKUs8tcqO0OXPh1EoDqK7JNkD/dELmd4Iz5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/lmdb": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-2.7.11.tgz", + "integrity": "sha512-x9bD4hVp7PFLUoELL8RglbNXhAMt5CYhkmss+CEau9KlNoilsTzNi9QDsPZb3KMpOGZXG6jmXhW3bBxE2XVztw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "msgpackr": "1.8.5", + "node-addon-api": "^4.3.0", + "node-gyp-build-optional-packages": "5.0.6", + "ordered-binary": "^1.4.0", + "weak-lru-cache": "^1.2.2" + }, + "bin": { + "download-lmdb-prebuilds": "bin/download-prebuilds.js" + }, + "optionalDependencies": { + "@lmdb/lmdb-darwin-arm64": "2.7.11", + "@lmdb/lmdb-darwin-x64": "2.7.11", + "@lmdb/lmdb-linux-arm": "2.7.11", + "@lmdb/lmdb-linux-arm64": "2.7.11", + "@lmdb/lmdb-linux-x64": "2.7.11", + "@lmdb/lmdb-win32-x64": "2.7.11" + } + }, + "node_modules/lmdb/node_modules/msgpackr": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.8.5.tgz", + "integrity": "sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg==", + "dev": true, + "optionalDependencies": { + "msgpackr-extract": "^3.0.1" + } + }, + "node_modules/lmdb/node_modules/node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz", + "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "dev": true, + "optional": true, + "peer": true + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/msgpackr": { + "version": "1.9.6", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.9.6.tgz", + "integrity": "sha512-50rmb6+ZWvEm0vJn8R8CwI1Eavss3h5rgtKrcdUal3EkZcpqw82+xsmc7RoHb8fYB5V4EOU2NDaOitDAdO0t+w==", + "dev": true, + "optionalDependencies": { + "msgpackr-extract": "^3.0.2" + } + }, + "node_modules/msgpackr-extract": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz", + "integrity": "sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "node-gyp-build-optional-packages": "5.0.7" + }, + "bin": { + "download-msgpackr-prebuilds": "bin/download-prebuilds.js" + }, + "optionalDependencies": { + "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.2" + } + }, + "node_modules/msgpackr-extract/node_modules/node-gyp-build-optional-packages": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.7.tgz", + "integrity": "sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w==", + "dev": true, + "optional": true, + "bin": { + "node-gyp-build-optional-packages": "bin.js", + "node-gyp-build-optional-packages-optional": "optional.js", + "node-gyp-build-optional-packages-test": "build-test.js" + } + }, + "node_modules/node-addon-api": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", + "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==", + "dev": true + }, + "node_modules/node-gyp-build-optional-packages": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.6.tgz", + "integrity": "sha512-2ZJErHG4du9G3/8IWl/l9Bp5BBFy63rno5GVmjQijvTuUZKsl6g8RB4KH/x3NLcV5ZBb4GsXmAuTYr6dRml3Gw==", + "dev": true, + "bin": { + "node-gyp-build-optional-packages": "bin.js", + "node-gyp-build-optional-packages-optional": "optional.js", + "node-gyp-build-optional-packages-test": "build-test.js" + } + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nullthrows": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", + "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", + "dev": true + }, + "node_modules/ordered-binary": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.4.1.tgz", + "integrity": "sha512-9LtiGlPy982CsgxZvJGNNp2/NnrgEr6EAyN3iIEP3/8vd3YLgAZQHbQ75ZrkfBRGrNg37Dk3U6tuVb+B4Xfslg==", + "dev": true + }, + "node_modules/parcel": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/parcel/-/parcel-2.9.3.tgz", + "integrity": "sha512-2GTVocFkwblV/TIg9AmT7TI2fO4xdWkyN8aFUEVtiVNWt96GTR3FgQyHFValfCbcj1k9Xf962Ws2hYXYUr9k1Q==", + "dev": true, + "dependencies": { + "@parcel/config-default": "2.9.3", + "@parcel/core": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/reporter-cli": "2.9.3", + "@parcel/reporter-dev-server": "2.9.3", + "@parcel/reporter-tracer": "2.9.3", + "@parcel/utils": "2.9.3", + "chalk": "^4.1.0", + "commander": "^7.0.0", + "get-port": "^4.2.0" + }, + "bin": { + "parcel": "lib/bin.js" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/posthtml": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.16.6.tgz", + "integrity": "sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==", + "dev": true, + "dependencies": { + "posthtml-parser": "^0.11.0", + "posthtml-render": "^3.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/posthtml-parser": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.10.2.tgz", + "integrity": "sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==", + "dev": true, + "dependencies": { + "htmlparser2": "^7.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/posthtml-render": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-3.0.0.tgz", + "integrity": "sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==", + "dev": true, + "dependencies": { + "is-json": "^2.0.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/posthtml/node_modules/posthtml-parser": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.11.0.tgz", + "integrity": "sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==", + "dev": true, + "dependencies": { + "htmlparser2": "^7.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/react-error-overlay": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", + "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==", + "dev": true + }, + "node_modules/react-refresh": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.9.0.tgz", + "integrity": "sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/rollup": { + "version": "3.27.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.1.tgz", + "integrity": "sha512-tXNDFwOkN6C2w5Blj1g6ForKeFw6c1mDu5jxoeDO3/pmYjgt+8yvIFjKzH5FQUq70OKZBkOt0zzv0THXL7vwzQ==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-dts": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-5.3.1.tgz", + "integrity": "sha512-gusMi+Z4gY/JaEQeXnB0RUdU82h1kF0WYzCWgVmV4p3hWXqelaKuCvcJawfeg+EKn2T1Ie+YWF2OiN1/L8bTVg==", + "dev": true, + "dependencies": { + "magic-string": "^0.30.2" + }, + "engines": { + "node": ">=v14.21.3" + }, + "funding": { + "url": "https://github.com/sponsors/Swatinem" + }, + "optionalDependencies": { + "@babel/code-frame": "^7.22.5" + }, + "peerDependencies": { + "rollup": "^3.0", + "typescript": "^4.1 || ^5.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/sass": { + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/srcset": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/srcset/-/srcset-4.0.0.tgz", + "integrity": "sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", + "dev": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/svgo": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", + "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.2.1", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, + "node_modules/term-size": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", + "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "dependencies": { + "utrie": "^1.0.2" + } + }, + "node_modules/timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "dev": true + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, + "node_modules/weak-lru-cache": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz", + "integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==", + "dev": true + }, + "node_modules/xxhash-wasm": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz", + "integrity": "sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", + "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.22.5" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "dev": true + }, + "@babel/highlight": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", + "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + }, + "dependencies": { + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + } + } + }, + "@lezer/common": { + "version": "0.15.12", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-0.15.12.tgz", + "integrity": "sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig==", + "dev": true + }, + "@lezer/lr": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-0.15.8.tgz", + "integrity": "sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg==", + "dev": true, + "requires": { + "@lezer/common": "^0.15.0" + } + }, + "@lmdb/lmdb-darwin-arm64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-2.7.11.tgz", + "integrity": "sha512-r6+vYq2vKzE+vgj/rNVRMwAevq0+ZR9IeMFIqcSga+wMtMdXQ27KqQ7uS99/yXASg29bos7yHP3yk4x6Iio0lw==", + "dev": true, + "optional": true + }, + "@lmdb/lmdb-darwin-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-x64/-/lmdb-darwin-x64-2.7.11.tgz", + "integrity": "sha512-jhj1aB4K8ycRL1HOQT5OtzlqOq70jxUQEWRN9Gqh3TIDN30dxXtiHi6EWF516tzw6v2+3QqhDMJh8O6DtTGG8Q==", + "dev": true, + "optional": true + }, + "@lmdb/lmdb-linux-arm": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm/-/lmdb-linux-arm-2.7.11.tgz", + "integrity": "sha512-dHfLFVSrw/v5X5lkwp0Vl7+NFpEeEYKfMG2DpdFJnnG1RgHQZngZxCaBagFoaJGykRpd2DYF1AeuXBFrAUAXfw==", + "dev": true, + "optional": true + }, + "@lmdb/lmdb-linux-arm64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-arm64/-/lmdb-linux-arm64-2.7.11.tgz", + "integrity": "sha512-7xGEfPPbmVJWcY2Nzqo11B9Nfxs+BAsiiaY/OcT4aaTDdykKeCjvKMQJA3KXCtZ1AtiC9ljyGLi+BfUwdulY5A==", + "dev": true, + "optional": true + }, + "@lmdb/lmdb-linux-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-linux-x64/-/lmdb-linux-x64-2.7.11.tgz", + "integrity": "sha512-vUKI3JrREMQsXX8q0Eq5zX2FlYCKWMmLiCyyJNfZK0Uyf14RBg9VtB3ObQ41b4swYh2EWaltasWVe93Y8+KDng==", + "dev": true, + "optional": true + }, + "@lmdb/lmdb-win32-x64": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-win32-x64/-/lmdb-win32-x64-2.7.11.tgz", + "integrity": "sha512-BJwkHlSUgtB+Ei52Ai32M1AOMerSlzyIGA/KC4dAGL+GGwVMdwG8HGCOA2TxP3KjhbgDPMYkv7bt/NmOmRIFng==", + "dev": true, + "optional": true + }, + "@mischnic/json-sourcemap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@mischnic/json-sourcemap/-/json-sourcemap-0.1.0.tgz", + "integrity": "sha512-dQb3QnfNqmQNYA4nFSN/uLaByIic58gOXq4Y4XqLOWmOrw73KmJPt/HLyG0wvn1bnR6mBKs/Uwvkh+Hns1T0XA==", + "dev": true, + "requires": { + "@lezer/common": "^0.15.7", + "@lezer/lr": "^0.15.4", + "json5": "^2.2.1" + } + }, + "@msgpackr-extract/msgpackr-extract-darwin-arm64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.2.tgz", + "integrity": "sha512-9bfjwDxIDWmmOKusUcqdS4Rw+SETlp9Dy39Xui9BEGEk19dDwH0jhipwFzEff/pFg95NKymc6TOTbRKcWeRqyQ==", + "dev": true, + "optional": true + }, + "@msgpackr-extract/msgpackr-extract-darwin-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.2.tgz", + "integrity": "sha512-lwriRAHm1Yg4iDf23Oxm9n/t5Zpw1lVnxYU3HnJPTi2lJRkKTrps1KVgvL6m7WvmhYVt/FIsssWay+k45QHeuw==", + "dev": true, + "optional": true + }, + "@msgpackr-extract/msgpackr-extract-linux-arm": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.2.tgz", + "integrity": "sha512-MOI9Dlfrpi2Cuc7i5dXdxPbFIgbDBGgKR5F2yWEa6FVEtSWncfVNKW5AKjImAQ6CZlBK9tympdsZJ2xThBiWWA==", + "dev": true, + "optional": true + }, + "@msgpackr-extract/msgpackr-extract-linux-arm64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.2.tgz", + "integrity": "sha512-FU20Bo66/f7He9Fp9sP2zaJ1Q8L9uLPZQDub/WlUip78JlPeMbVL8546HbZfcW9LNciEXc8d+tThSJjSC+tmsg==", + "dev": true, + "optional": true + }, + "@msgpackr-extract/msgpackr-extract-linux-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.2.tgz", + "integrity": "sha512-gsWNDCklNy7Ajk0vBBf9jEx04RUxuDQfBse918Ww+Qb9HCPoGzS+XJTLe96iN3BVK7grnLiYghP/M4L8VsaHeA==", + "dev": true, + "optional": true + }, + "@msgpackr-extract/msgpackr-extract-win32-x64": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.2.tgz", + "integrity": "sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ==", + "dev": true, + "optional": true + }, + "@parcel/bundler-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.9.3.tgz", + "integrity": "sha512-JjJK8dq39/UO/MWI/4SCbB1t/qgpQRFnFDetAAAezQ8oN++b24u1fkMDa/xqQGjbuPmGeTds5zxGgYs7id7PYg==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/graph": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/cache": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/cache/-/cache-2.9.3.tgz", + "integrity": "sha512-Bj/H2uAJJSXtysG7E/x4EgTrE2hXmm7td/bc97K8M9N7+vQjxf7xb0ebgqe84ePVMkj4MVQSMEJkEucXVx4b0Q==", + "dev": true, + "requires": { + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/utils": "2.9.3", + "lmdb": "2.7.11" + } + }, + "@parcel/codeframe": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.9.3.tgz", + "integrity": "sha512-z7yTyD6h3dvduaFoHpNqur74/2yDWL++33rjQjIjCaXREBN6dKHoMGMizzo/i4vbiI1p9dDox2FIDEHCMQxqdA==", + "dev": true, + "requires": { + "chalk": "^4.1.0" + } + }, + "@parcel/compressor-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.9.3.tgz", + "integrity": "sha512-jz3t4/ICMsHEqgiTmv5i1DJva2k5QRpZlBELVxfY+QElJTVe8edKJ0TiKcBxh2hx7sm4aUigGmp7JiqqHRRYmA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3" + } + }, + "@parcel/config-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.9.3.tgz", + "integrity": "sha512-tqN5tF7QnVABDZAu76co5E6N8mA9n8bxiWdK4xYyINYFIEHgX172oRTqXTnhEMjlMrdmASxvnGlbaPBaVnrCTw==", + "dev": true, + "requires": { + "@parcel/bundler-default": "2.9.3", + "@parcel/compressor-raw": "2.9.3", + "@parcel/namer-default": "2.9.3", + "@parcel/optimizer-css": "2.9.3", + "@parcel/optimizer-htmlnano": "2.9.3", + "@parcel/optimizer-image": "2.9.3", + "@parcel/optimizer-svgo": "2.9.3", + "@parcel/optimizer-swc": "2.9.3", + "@parcel/packager-css": "2.9.3", + "@parcel/packager-html": "2.9.3", + "@parcel/packager-js": "2.9.3", + "@parcel/packager-raw": "2.9.3", + "@parcel/packager-svg": "2.9.3", + "@parcel/reporter-dev-server": "2.9.3", + "@parcel/resolver-default": "2.9.3", + "@parcel/runtime-browser-hmr": "2.9.3", + "@parcel/runtime-js": "2.9.3", + "@parcel/runtime-react-refresh": "2.9.3", + "@parcel/runtime-service-worker": "2.9.3", + "@parcel/transformer-babel": "2.9.3", + "@parcel/transformer-css": "2.9.3", + "@parcel/transformer-html": "2.9.3", + "@parcel/transformer-image": "2.9.3", + "@parcel/transformer-js": "2.9.3", + "@parcel/transformer-json": "2.9.3", + "@parcel/transformer-postcss": "2.9.3", + "@parcel/transformer-posthtml": "2.9.3", + "@parcel/transformer-raw": "2.9.3", + "@parcel/transformer-react-refresh-wrap": "2.9.3", + "@parcel/transformer-svg": "2.9.3" + } + }, + "@parcel/core": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/core/-/core-2.9.3.tgz", + "integrity": "sha512-4KlM1Zr/jpsqWuMXr2zmGsaOUs1zMMFh9vfCNKRZkptf+uk8I3sugHbNdo+F5B+4e2yMuOEb1zgAmvJLeuH6ww==", + "dev": true, + "requires": { + "@mischnic/json-sourcemap": "^0.1.0", + "@parcel/cache": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/graph": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/profiler": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "abortcontroller-polyfill": "^1.1.9", + "base-x": "^3.0.8", + "browserslist": "^4.6.6", + "clone": "^2.1.1", + "dotenv": "^7.0.0", + "dotenv-expand": "^5.1.0", + "json5": "^2.2.0", + "msgpackr": "^1.5.4", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + } + }, + "@parcel/diagnostic": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.9.3.tgz", + "integrity": "sha512-6jxBdyB3D7gP4iE66ghUGntWt2v64E6EbD4AetZk+hNJpgudOOPsKTovcMi/i7I4V0qD7WXSF4tvkZUoac0jwA==", + "dev": true, + "requires": { + "@mischnic/json-sourcemap": "^0.1.0", + "nullthrows": "^1.1.1" + } + }, + "@parcel/events": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/events/-/events-2.9.3.tgz", + "integrity": "sha512-K0Scx+Bx9f9p1vuShMzNwIgiaZUkxEnexaKYHYemJrM7pMAqxIuIqhnvwurRCsZOVLUJPDDNJ626cWTc5vIq+A==", + "dev": true + }, + "@parcel/fs": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/fs/-/fs-2.9.3.tgz", + "integrity": "sha512-/PrRKgCRw22G7rNPSpgN3Q+i2nIkZWuvIOAdMG4KWXC4XLp8C9jarNaWd5QEQ75amjhQSl3oUzABzkdCtkKrgg==", + "dev": true, + "requires": { + "@parcel/fs-search": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/watcher": "^2.0.7", + "@parcel/workers": "2.9.3" + } + }, + "@parcel/fs-search": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/fs-search/-/fs-search-2.9.3.tgz", + "integrity": "sha512-nsNz3bsOpwS+jphcd+XjZL3F3PDq9lik0O8HPm5f6LYkqKWT+u/kgQzA8OkAHCR3q96LGiHxUywHPEBc27vI4Q==", + "dev": true + }, + "@parcel/graph": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/graph/-/graph-2.9.3.tgz", + "integrity": "sha512-3LmRJmF8+OprAr6zJT3X2s8WAhLKkrhi6RsFlMWHifGU5ED1PFcJWFbOwJvSjcAhMQJP0fErcFIK1Ludv3Vm3g==", + "dev": true, + "requires": { + "nullthrows": "^1.1.1" + } + }, + "@parcel/hash": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/hash/-/hash-2.9.3.tgz", + "integrity": "sha512-qlH5B85XLzVAeijgKPjm1gQu35LoRYX/8igsjnN8vOlbc3O8BYAUIutU58fbHbtE8MJPbxQQUw7tkTjeoujcQQ==", + "dev": true, + "requires": { + "xxhash-wasm": "^0.4.2" + } + }, + "@parcel/logger": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/logger/-/logger-2.9.3.tgz", + "integrity": "sha512-5FNBszcV6ilGFcijEOvoNVG6IUJGsnMiaEnGQs7Fvc1dktTjEddnoQbIYhcSZL63wEmzBZOgkT5yDMajJ/41jw==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3" + } + }, + "@parcel/markdown-ansi": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.9.3.tgz", + "integrity": "sha512-/Q4X8F2aN8UNjAJrQ5NfK2OmZf6shry9DqetUSEndQ0fHonk78WKt6LT0zSKEBEW/bB/bXk6mNMsCup6L8ibjQ==", + "dev": true, + "requires": { + "chalk": "^4.1.0" + } + }, + "@parcel/namer-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.9.3.tgz", + "integrity": "sha512-1ynFEcap48/Ngzwwn318eLYpLUwijuuZoXQPCsEQ21OOIOtfhFQJaPwXTsw6kRitshKq76P2aafE0BioGSqxcA==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/node-resolver-core": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-3.0.3.tgz", + "integrity": "sha512-AjxNcZVHHJoNT/A99PKIdFtwvoze8PAiC3yz8E/dRggrDIOboUEodeQYV5Aq++aK76uz/iOP0tST2T8A5rhb1A==", + "dev": true, + "requires": { + "@mischnic/json-sourcemap": "^0.1.0", + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + } + }, + "@parcel/optimizer-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.9.3.tgz", + "integrity": "sha512-RK1QwcSdWDNUsFvuLy0hgnYKtPQebzCb0vPPzqs6LhL+vqUu9utOyRycGaQffHCkHVQP6zGlN+KFssd7YtFGhA==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "lightningcss": "^1.16.1", + "nullthrows": "^1.1.1" + } + }, + "@parcel/optimizer-htmlnano": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.9.3.tgz", + "integrity": "sha512-9g/KBck3c6DokmJfvJ5zpHFBiCSolaGrcsTGx8C3YPdCTVTI9P1TDCwUxvAr4LjpcIRSa82wlLCI+nF6sSgxKA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "htmlnano": "^2.0.0", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "svgo": "^2.4.0" + }, + "dependencies": { + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "requires": { + "css-tree": "^1.1.2" + } + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + } + } + } + }, + "@parcel/optimizer-image": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.9.3.tgz", + "integrity": "sha512-530YzthE7kmecnNhPbkAK+26yQNt69pfJrgE0Ev0BZaM1Wu2+33nki7o8qvkTkikhPrurEJLGIXt1qKmbKvCbA==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3" + } + }, + "@parcel/optimizer-svgo": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.9.3.tgz", + "integrity": "sha512-ytQS0wY5JJhWU4mL0wfhYDUuHcfuw+Gy2+JcnTm1t1AZXHlOTbU6EzRWNqBShsgXjvdrQQXizAe3B6GFFlFJVQ==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "svgo": "^2.4.0" + }, + "dependencies": { + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dev": true, + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "requires": { + "css-tree": "^1.1.2" + } + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, + "svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dev": true, + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + } + } + } + }, + "@parcel/optimizer-swc": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-swc/-/optimizer-swc-2.9.3.tgz", + "integrity": "sha512-GQINNeqtdpL1ombq/Cpwi6IBk02wKJ/JJbYbyfHtk8lxlq13soenpwOlzJ5T9D2fdG+FUhai9NxpN5Ss4lNoAg==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "@swc/core": "^1.3.36", + "nullthrows": "^1.1.1" + } + }, + "@parcel/package-manager": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.9.3.tgz", + "integrity": "sha512-NH6omcNTEupDmW4Lm1e4NUYBjdqkURxgZ4CNESESInHJe6tblVhNB8Rpr1ar7zDar7cly9ILr8P6N3Ei7bTEjg==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/node-resolver-core": "3.0.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "semver": "^7.5.2" + } + }, + "@parcel/packager-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.9.3.tgz", + "integrity": "sha512-mePiWiYZOULY6e1RdAIJyRoYqXqGci0srOaVZYaP7mnrzvJgA63kaZFFsDiEWghunQpMUuUjM2x/vQVHzxmhKQ==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/packager-html": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.9.3.tgz", + "integrity": "sha512-0Ex+O0EaZf9APNERRNGgGto02hFJ6f5RQEvRWBK55WAV1rXeU+kpjC0c0qZvnUaUtXfpWMsEBkevJCwDkUMeMg==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5" + } + }, + "@parcel/packager-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.9.3.tgz", + "integrity": "sha512-V5xwkoE3zQ3R+WqAWhA1KGQ791FvJeW6KonOlMI1q76Djjgox68hhObqcLu66AmYNhR2R/wUpkP18hP2z8dSFw==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "globals": "^13.2.0", + "nullthrows": "^1.1.1" + } + }, + "@parcel/packager-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.9.3.tgz", + "integrity": "sha512-oPQTNoYanQ2DdJyL61uPYK2py83rKOT8YVh2QWAx0zsSli6Kiy64U3+xOCYWgDVCrHw9+9NpQMuAdSiFg4cq8g==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3" + } + }, + "@parcel/packager-svg": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.9.3.tgz", + "integrity": "sha512-p/Ya6UO9DAkaCUFxfFGyeHZDp9YPAlpdnh1OChuwqSFOXFjjeXuoK4KLT+ZRalVBo2Jo8xF70oKMZw4MVvaL7Q==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "posthtml": "^0.16.4" + } + }, + "@parcel/plugin": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.9.3.tgz", + "integrity": "sha512-qN85Gqr2GMuxX1dT1mnuO9hOcvlEv1lrYrCxn7CJN2nUhbwcfG+LEvcrCzCOJ6XtIHm+ZBV9h9p7FfoPLvpw+g==", + "dev": true, + "requires": { + "@parcel/types": "2.9.3" + } + }, + "@parcel/profiler": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/profiler/-/profiler-2.9.3.tgz", + "integrity": "sha512-pyHc9lw8VZDfgZoeZWZU9J0CVEv1Zw9O5+e0DJPDPHuXJYr72ZAOhbljtU3owWKAeW+++Q2AZWkbUGEOjI/e6g==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "chrome-trace-event": "^1.0.2" + } + }, + "@parcel/reporter-cli": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.9.3.tgz", + "integrity": "sha512-pZiEvQpuXFuQBafMHxkDmwH8CnnK9sWHwa3bSbsnt385aUahtE8dpY0LKt+K1zfB6degKoczN6aWVj9WycQuZQ==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "chalk": "^4.1.0", + "term-size": "^2.2.1" + } + }, + "@parcel/reporter-dev-server": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.9.3.tgz", + "integrity": "sha512-s6eboxdLEtRSvG52xi9IiNbcPKC0XMVmvTckieue2EqGDbDcaHQoHmmwkk0rNq0/Z/UxelGcQXoIYC/0xq3ykQ==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3" + } + }, + "@parcel/reporter-tracer": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/reporter-tracer/-/reporter-tracer-2.9.3.tgz", + "integrity": "sha512-9cXpKWk0m6d6d+4+TlAdOe8XIPaFEIKGWMWG+5SFAQE08u3olet4PSvd49F4+ZZo5ftRE7YI3j6xNbXvJT8KGw==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "chrome-trace-event": "^1.0.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/resolver-default": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.9.3.tgz", + "integrity": "sha512-8ESJk1COKvDzkmOnppNXoDamNMlYVIvrKc2RuFPmp8nKVj47R6NwMgvwxEaatyPzvkmyTpq5RvG9I3HFc+r4Cw==", + "dev": true, + "requires": { + "@parcel/node-resolver-core": "3.0.3", + "@parcel/plugin": "2.9.3" + } + }, + "@parcel/runtime-browser-hmr": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.9.3.tgz", + "integrity": "sha512-EgiDIDrVAWpz7bOzWXqVinQkaFjLwT34wsonpXAbuI7f7r00d52vNAQC9AMu+pTijA3gyKoJ+Q4NWPMZf7ACDA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3" + } + }, + "@parcel/runtime-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.9.3.tgz", + "integrity": "sha512-EvIy+qXcKnB5qxHhe96zmJpSAViNVXHfQI5RSdZ2a7CPwORwhTI+zPNT9sb7xb/WwFw/WuTTgzT40b41DceU6Q==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/runtime-react-refresh": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.9.3.tgz", + "integrity": "sha512-XBgryZQIyCmi6JwEfMUCmINB3l1TpTp9a2iFxmYNpzHlqj4Ve0saKaqWOVRLvC945ZovWIBzcSW2IYqWKGtbAA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "react-error-overlay": "6.0.9", + "react-refresh": "^0.9.0" + } + }, + "@parcel/runtime-service-worker": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.9.3.tgz", + "integrity": "sha512-qLJLqv1mMdWL7gyh8aKBFFAuEiJkhUUgLKpdn6eSfH/R7kTtb76WnOwqUrhvEI9bZFUM/8Pa1bzJnPpqSOM+Sw==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/source-map": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@parcel/source-map/-/source-map-2.1.1.tgz", + "integrity": "sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==", + "dev": true, + "requires": { + "detect-libc": "^1.0.3" + } + }, + "@parcel/transformer-babel": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.9.3.tgz", + "integrity": "sha512-pURtEsnsp3h6tOBDuzh9wRvVtw4PgIlqwAArIWdrG7iwqOUYv9D8ME4+ePWEu7MQWAp58hv9pTJtqWv4T+Sq8A==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "json5": "^2.2.0", + "nullthrows": "^1.1.1", + "semver": "^7.5.2" + } + }, + "@parcel/transformer-css": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.9.3.tgz", + "integrity": "sha512-duWMdbEBBPjg3fQdXF16iWIdThetDZvCs2TpUD7xOlXH6kR0V5BJy8ONFT15u1RCqIV9hSNGaS3v3I9YRNY5zQ==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "browserslist": "^4.6.6", + "lightningcss": "^1.16.1", + "nullthrows": "^1.1.1" + } + }, + "@parcel/transformer-html": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.9.3.tgz", + "integrity": "sha512-0NU4omcHzFXA1seqftAXA2KNZaMByoKaNdXnLgBgtCGDiYvOcL+6xGHgY6pw9LvOh5um10KI5TxSIMILoI7VtA==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2", + "srcset": "4" + } + }, + "@parcel/transformer-image": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.9.3.tgz", + "integrity": "sha512-7CEe35RaPadQzLIuxzTtIxnItvOoy46hcbXtOdDt6lmVa4omuOygZYRIya2lsGIP4JHvAaALMb5nt99a1uTwJg==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@parcel/transformer-js": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.9.3.tgz", + "integrity": "sha512-Z2MVVg5FYcPOfxlUwxqb5l9yjTMEqE3KI3zq2MBRUme6AV07KxLmCDF23b6glzZlHWQUE8MXzYCTAkOPCcPz+Q==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/utils": "2.9.3", + "@parcel/workers": "2.9.3", + "@swc/helpers": "^0.5.0", + "browserslist": "^4.6.6", + "nullthrows": "^1.1.1", + "regenerator-runtime": "^0.13.7", + "semver": "^7.5.2" + } + }, + "@parcel/transformer-json": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.9.3.tgz", + "integrity": "sha512-yNL27dbOLhkkrjaQjiQ7Im9VOxmkfuuSNSmS0rA3gEjVcm07SLKRzWkAaPnyx44Lb6bzyOTWwVrb9aMmxgADpA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "json5": "^2.2.0" + } + }, + "@parcel/transformer-postcss": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.9.3.tgz", + "integrity": "sha512-HoDvPqKzhpmvMmHqQhDnt8F1vH61m6plpGiYaYnYv2Om4HHi5ZIq9bO+9QLBnTKfaZ7ndYSefTKOxTYElg7wyw==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "clone": "^2.1.1", + "nullthrows": "^1.1.1", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.2" + } + }, + "@parcel/transformer-posthtml": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.9.3.tgz", + "integrity": "sha512-2fQGgrzRmaqbWf3y2/T6xhqrNjzqMMKksqJzvc8TMfK6f2kg3Ddjv158eaSW2JdkV39aY7tvAOn5f1uzo74BMA==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2" + } + }, + "@parcel/transformer-raw": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.9.3.tgz", + "integrity": "sha512-oqdPzMC9QzWRbY9J6TZEqltknjno+dY24QWqf8ondmdF2+W+/2mRDu59hhCzQrqUHgTq4FewowRZmSfpzHxwaQ==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3" + } + }, + "@parcel/transformer-react-refresh-wrap": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.9.3.tgz", + "integrity": "sha512-cb9NyU6oJlDblFIlzqIE8AkvRQVGl2IwJNKwD4PdE7Y6sq2okGEPG4hOw3k/Y9JVjM4/2pUORqvjSRhWwd9oVQ==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/utils": "2.9.3", + "react-refresh": "^0.9.0" + } + }, + "@parcel/transformer-sass": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-sass/-/transformer-sass-2.9.3.tgz", + "integrity": "sha512-i9abj9bKg3xCHghJyTM3rUVxIEn9n1Rl+DFdpyNAD8VZ52COfOshFDQOWNuhU1hEnJOFYCjnfcO0HRTsg3dWmg==", + "dev": true, + "requires": { + "@parcel/plugin": "2.9.3", + "@parcel/source-map": "^2.1.1", + "sass": "^1.38.0" + } + }, + "@parcel/transformer-svg": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.9.3.tgz", + "integrity": "sha512-ypmE+dzB09IMCdEAkOsSxq1dEIm2A3h67nAFz4qbfHbwNgXBUuy/jB3ZMwXN/cO0f7SBh/Ap8Jhq6vmGqB5tWw==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/plugin": "2.9.3", + "nullthrows": "^1.1.1", + "posthtml": "^0.16.5", + "posthtml-parser": "^0.10.1", + "posthtml-render": "^3.0.0", + "semver": "^7.5.2" + } + }, + "@parcel/types": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/types/-/types-2.9.3.tgz", + "integrity": "sha512-NSNY8sYtRhvF1SqhnIGgGvJocyWt1K8Tnw5cVepm0g38ywtX6mwkBvMkmeehXkII4mSUn+frD9wGsydTunezvA==", + "dev": true, + "requires": { + "@parcel/cache": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/source-map": "^2.1.1", + "@parcel/workers": "2.9.3", + "utility-types": "^3.10.0" + } + }, + "@parcel/utils": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/utils/-/utils-2.9.3.tgz", + "integrity": "sha512-cesanjtj/oLehW8Waq9JFPmAImhoiHX03ihc3JTWkrvJYSbD7wYKCDgPAM3JiRAqvh1LZ6P699uITrYWNoRLUg==", + "dev": true, + "requires": { + "@parcel/codeframe": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/hash": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/markdown-ansi": "2.9.3", + "@parcel/source-map": "^2.1.1", + "chalk": "^4.1.0", + "nullthrows": "^1.1.1" + } + }, + "@parcel/watcher": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.2.0.tgz", + "integrity": "sha512-71S4TF+IMyAn24PK4KSkdKtqJDR3zRzb0HE3yXpacItqTM7XfF2f5q9NEGLEVl0dAaBAGfNwDCjH120y25F6Tg==", + "dev": true, + "requires": { + "@parcel/watcher-android-arm64": "2.2.0", + "@parcel/watcher-darwin-arm64": "2.2.0", + "@parcel/watcher-darwin-x64": "2.2.0", + "@parcel/watcher-linux-arm-glibc": "2.2.0", + "@parcel/watcher-linux-arm64-glibc": "2.2.0", + "@parcel/watcher-linux-arm64-musl": "2.2.0", + "@parcel/watcher-linux-x64-glibc": "2.2.0", + "@parcel/watcher-linux-x64-musl": "2.2.0", + "@parcel/watcher-win32-arm64": "2.2.0", + "@parcel/watcher-win32-x64": "2.2.0", + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + } + }, + "@parcel/watcher-android-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.2.0.tgz", + "integrity": "sha512-nU2wh00CTQT9rr1TIKTjdQ9lAGYpmz6XuKw0nAwAN+S2A5YiD55BK1u+E5WMCT8YOIDe/n6gaj4o/Bi9294SSQ==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.2.0.tgz", + "integrity": "sha512-cJl0UZDcodciy3TDMomoK/Huxpjlkkim3SyMgWzjovHGOZKNce9guLz2dzuFwfObBFCjfznbFMIvAZ5syXotYw==", + "dev": true, + "optional": true + }, + "@parcel/watcher-darwin-x64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.2.0.tgz", + "integrity": "sha512-QI77zxaGrCV1StKcoRYfsUfmUmvPMPfQrubkBBy5XujV2fwaLgZivQOTQMBgp5K2+E19u1ufpspKXAPqSzpbyg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.2.0.tgz", + "integrity": "sha512-I2GPBcAXazPzabCmfsa3HRRW+MGlqxYd8g8RIueJU+a4o5nyNZDz0CR1cu0INT0QSQXEZV7w6UE8Hz9CF8u3Pg==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.2.0.tgz", + "integrity": "sha512-St5mlfp+2lS9AmgixUqfwJa/DwVmTCJxC1HcOubUTz6YFOKIlkHCeUa1Bxi4E/tR/HSez8+heXHL8HQkJ4Bd8g==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-arm64-musl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.2.0.tgz", + "integrity": "sha512-jS+qfhhoOBVWwMLP65MaG8xdInMK30pPW8wqTCg2AAuVJh5xepMbzkhHJ4zURqHiyY3EiIRuYu4ONJKCxt8iqA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-glibc": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.2.0.tgz", + "integrity": "sha512-xJvJ7R2wJdi47WZBFS691RDOWvP1j/IAs3EXaWVhDI8FFITbWrWaln7KoNcR0Y3T+ZwimFY/cfb0PNht1q895g==", + "dev": true, + "optional": true + }, + "@parcel/watcher-linux-x64-musl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.2.0.tgz", + "integrity": "sha512-D+NMpgr23a+RI5mu8ZPKWy7AqjBOkURFDgP5iIXXEf/K3hm0jJ3ogzi0Ed2237B/CdYREimCgXyeiAlE/FtwyA==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-arm64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.2.0.tgz", + "integrity": "sha512-z225cPn3aygJsyVUOWwfyW+fY0Tvk7N3XCOl66qUPFxpbuXeZuiuuJemmtm8vxyqa3Ur7peU/qJxrpC64aeI7Q==", + "dev": true, + "optional": true + }, + "@parcel/watcher-win32-x64": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.2.0.tgz", + "integrity": "sha512-JqGW0RJ61BkKx+yYzIURt9s53P7xMVbv0uxYPzAXLBINGaFmkIKSuUPyBVfy8TMbvp93lvF4SPBNDzVRJfvgOw==", + "dev": true, + "optional": true + }, + "@parcel/workers": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/@parcel/workers/-/workers-2.9.3.tgz", + "integrity": "sha512-zRrDuZJzTevrrwElYosFztgldhqW6G9q5zOeQXfVQFkkEJCNfg36ixeiofKRU8uu2x+j+T6216mhMNB6HiuY+w==", + "dev": true, + "requires": { + "@parcel/diagnostic": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/profiler": "2.9.3", + "@parcel/types": "2.9.3", + "@parcel/utils": "2.9.3", + "nullthrows": "^1.1.1" + } + }, + "@patelka2211/dominar": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@patelka2211/dominar/-/dominar-1.2.4.tgz", + "integrity": "sha512-azlD/7yByJmn5GFLXFlQ9dEZDvrYNGA6+pAUPzrJjSh/n2ZLn6w0WGPS9mk0NZ7fQ/aBew8jQwyDnAVY0uFDGQ==" + }, + "@swc/core": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.74.tgz", + "integrity": "sha512-P+MIExOTdWlfq8Heb1/NhBAke6UTckd4cRDuJoFcFMGBRvgoCMNWhnfP3FRRXPLI7GGg27dRZS+xHiqYyQmSrA==", + "dev": true, + "requires": { + "@swc/core-darwin-arm64": "1.3.74", + "@swc/core-darwin-x64": "1.3.74", + "@swc/core-linux-arm-gnueabihf": "1.3.74", + "@swc/core-linux-arm64-gnu": "1.3.74", + "@swc/core-linux-arm64-musl": "1.3.74", + "@swc/core-linux-x64-gnu": "1.3.74", + "@swc/core-linux-x64-musl": "1.3.74", + "@swc/core-win32-arm64-msvc": "1.3.74", + "@swc/core-win32-ia32-msvc": "1.3.74", + "@swc/core-win32-x64-msvc": "1.3.74" + } + }, + "@swc/core-darwin-arm64": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.74.tgz", + "integrity": "sha512-2rMV4QxM583jXcREfo0MhV3Oj5pgRSfSh/kVrB1twL2rQxOrbzkAPT/8flmygdVoL4f2F7o1EY5lKlYxEBiIKQ==", + "dev": true, + "optional": true + }, + "@swc/core-darwin-x64": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.74.tgz", + "integrity": "sha512-KKEGE1wXneYXe15fWDRM8/oekd/Q4yAuccA0vWY/7i6nOSPqWYcSDR0nRtR030ltDxWt0rk/eCTmNkrOWrKs3A==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm-gnueabihf": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.74.tgz", + "integrity": "sha512-HehH5DR6r/5fIVu7tu8ZqgrHkhSCQNewf1ztFQJgcmaQWn+H4AJERBjwkjosqh4TvUJucZv8vyRTvrFeBXaCSA==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-gnu": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.74.tgz", + "integrity": "sha512-+xkbCRz/wczgdknoV4NwYxbRI2dD7x/qkIFcVM2buzLCq8oWLweuV8+aL4pRqu0qDh7ZSb1jcaVTUIsySCJznA==", + "dev": true, + "optional": true + }, + "@swc/core-linux-arm64-musl": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.74.tgz", + "integrity": "sha512-maKFZSCD3tQznzPV7T3V+TtiWZFEFM8YrnSS5fQNNb+K9J65sL+170uTb3M7H4cFkG+9Sm5k5yCrCIutlvV48g==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-gnu": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.74.tgz", + "integrity": "sha512-LEXpcShF6DLTWJSiBhMSYZkLQ27UvaQ24fCFhoIV/R3dhYaUpHmIyLPPBNC82T03lB3ONUFVwrRw6fxDJ/f00A==", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-musl": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.74.tgz", + "integrity": "sha512-sxsFctbFMZEFmDE7CmYljG0dMumH8XBTwwtGr8s6z0fYAzXBGNq2AFPcmEh2np9rPWkt7pE1m0ByESD+dMkbxQ==", + "dev": true, + "optional": true + }, + "@swc/core-win32-arm64-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.74.tgz", + "integrity": "sha512-F7hY9/BjFCozA4YPFYFH5FGCyWwa44vIXHqG66F5cDwXDGFn8ZtBsYIsiPfUYcx0AeAo1ojnVWKPxokZhYNYqA==", + "dev": true, + "optional": true + }, + "@swc/core-win32-ia32-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.74.tgz", + "integrity": "sha512-qBAsiD1AlIdqED6wy3UNRHyAys9pWMUidX0LJ6mj24r/vfrzzTBAUrLJe5m7bzE+F1Rgi001avYJeEW1DLEJ+Q==", + "dev": true, + "optional": true + }, + "@swc/core-win32-x64-msvc": { + "version": "1.3.74", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.74.tgz", + "integrity": "sha512-S3YAvvLprTnPRwQuy9Dkwubb5SRLpVK3JJsqYDbGfgj8PGQyKHZcVJ5X3nfFsoWLy3j9B/3Os2nawprRSzeC5A==", + "dev": true, + "optional": true + }, + "@swc/helpers": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", + "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", + "dev": true, + "requires": { + "tslib": "^2.4.0" + } + }, + "@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true + }, + "abortcontroller-polyfill": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz", + "integrity": "sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==", + "dev": true + }, + "acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.21.10", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", + "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001517", + "electron-to-chromium": "^1.4.477", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.11" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001519", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz", + "integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "dev": true + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true + }, + "cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "requires": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + } + }, + "css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "requires": { + "utrie": "^1.0.2" + } + }, + "css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "dependencies": { + "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==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "optional": true, + "peer": true, + "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==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + } + }, + "entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "optional": true, + "peer": true + } + } + }, + "css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true + }, + "csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "css-tree": "~2.2.0" + }, + "dependencies": { + "css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + } + }, + "mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "dev": true, + "optional": true, + "peer": true + } + } + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "dependencies": { + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "dotenv": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-7.0.0.tgz", + "integrity": "sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==", + "dev": true + }, + "dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "dynamic-colors": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.4.tgz", + "integrity": "sha512-3hznV/H55ZdzUiqSfh2icy3jAoVTsxYv//aQUzyH961P+smqI4HT6vJYpcBrjPcUY2M2DOcL4NeY6LqtM8LoEg==" + }, + "electron-to-chromium": { + "version": "1.4.483", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.483.tgz", + "integrity": "sha512-YLwU0iF//9R3cCEfq0wgL+pf9vglE4kwAg4S5tkVVZljUDKv7Wcz67mTY4OOj+T7YUbTGuqlbqgdl/s+7Q8KTw==", + "dev": true + }, + "entities": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", + "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "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==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "get-port": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-4.2.0.tgz", + "integrity": "sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==", + "dev": true + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "requires": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + } + }, + "htmlnano": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/htmlnano/-/htmlnano-2.0.4.tgz", + "integrity": "sha512-WGCkyGFwjKW1GeCBsPYacMvaMnZtFJ0zIRnC2NCddkA+IOEhTqskXrS7lep+3yYZw/nQ3dW1UAX4yA/GJyR8BA==", + "dev": true, + "requires": { + "cosmiconfig": "^8.0.0", + "posthtml": "^0.16.5", + "timsort": "^0.3.0" + } + }, + "htmlparser2": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", + "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.2", + "domutils": "^2.8.0", + "entities": "^3.0.1" + } + }, + "immutable": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-json": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-json/-/is-json-2.0.1.tgz", + "integrity": "sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true + }, + "lightningcss": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.21.5.tgz", + "integrity": "sha512-/pEUPeih2EwIx9n4T82aOG6CInN83tl/mWlw6B5gWLf36UplQi1L+5p3FUHsdt4fXVfOkkh9KIaM3owoq7ss8A==", + "dev": true, + "requires": { + "detect-libc": "^1.0.3", + "lightningcss-darwin-arm64": "1.21.5", + "lightningcss-darwin-x64": "1.21.5", + "lightningcss-linux-arm-gnueabihf": "1.21.5", + "lightningcss-linux-arm64-gnu": "1.21.5", + "lightningcss-linux-arm64-musl": "1.21.5", + "lightningcss-linux-x64-gnu": "1.21.5", + "lightningcss-linux-x64-musl": "1.21.5", + "lightningcss-win32-x64-msvc": "1.21.5" + } + }, + "lightningcss-darwin-arm64": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.21.5.tgz", + "integrity": "sha512-z05hyLX85WY0UfhkFUOrWEFqD69lpVAmgl3aDzMKlIZJGygbhbegqb4PV8qfUrKKNBauut/qVNPKZglhTaDDxA==", + "dev": true, + "optional": true + }, + "lightningcss-darwin-x64": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.21.5.tgz", + "integrity": "sha512-MSJhmej/U9MrdPxDk7+FWhO8+UqVoZUHG4VvKT5RQ4RJtqtANTiWiI97LvoVNMtdMnHaKs1Pkji6wHUFxjJsHQ==", + "dev": true, + "optional": true + }, + "lightningcss-linux-arm-gnueabihf": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.21.5.tgz", + "integrity": "sha512-xN6+5/JsMrbZHL1lPl+MiNJ3Xza12ueBKPepiyDCFQzlhFRTj7D0LG+cfNTzPBTO8KcYQynLpl1iBB8LGp3Xtw==", + "dev": true, + "optional": true + }, + "lightningcss-linux-arm64-gnu": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.21.5.tgz", + "integrity": "sha512-KfzFNhC4XTbmG3ma/xcTs/IhCwieW89XALIusKmnV0N618ZDXEB0XjWOYQRCXeK9mfqPdbTBpurEHV/XZtkniQ==", + "dev": true, + "optional": true + }, + "lightningcss-linux-arm64-musl": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.21.5.tgz", + "integrity": "sha512-bc0GytQO5Mn9QM6szaZ+31fQHNdidgpM1sSCwzPItz8hg3wOvKl8039rU0veMJV3ZgC9z0ypNRceLrSHeRHmXw==", + "dev": true, + "optional": true + }, + "lightningcss-linux-x64-gnu": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.21.5.tgz", + "integrity": "sha512-JwMbgypPQgc2kW2av3OwzZ8cbrEuIiDiXPJdXRE6aVxu67yHauJawQLqJKTGUhiAhy6iLDG8Wg0a3/ziL+m+Kw==", + "dev": true, + "optional": true + }, + "lightningcss-linux-x64-musl": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.21.5.tgz", + "integrity": "sha512-Ib8b6IQ/OR/VrPU6YBgy4T3QnuHY7DUa95O+nz+cwrTkMSN6fuHcTcIaz4t8TJ6HI5pl3uxUOZjmtls2pyQWow==", + "dev": true, + "optional": true + }, + "lightningcss-win32-x64-msvc": { + "version": "1.21.5", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.21.5.tgz", + "integrity": "sha512-A8cSi8lUpBeVmoF+DqqW7cd0FemDbCuKr490IXdjyeI+KL8adpSKUs8tcqO0OXPh1EoDqK7JNkD/dELmd4Iz5g==", + "dev": true, + "optional": true + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "lmdb": { + "version": "2.7.11", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-2.7.11.tgz", + "integrity": "sha512-x9bD4hVp7PFLUoELL8RglbNXhAMt5CYhkmss+CEau9KlNoilsTzNi9QDsPZb3KMpOGZXG6jmXhW3bBxE2XVztw==", + "dev": true, + "requires": { + "@lmdb/lmdb-darwin-arm64": "2.7.11", + "@lmdb/lmdb-darwin-x64": "2.7.11", + "@lmdb/lmdb-linux-arm": "2.7.11", + "@lmdb/lmdb-linux-arm64": "2.7.11", + "@lmdb/lmdb-linux-x64": "2.7.11", + "@lmdb/lmdb-win32-x64": "2.7.11", + "msgpackr": "1.8.5", + "node-addon-api": "^4.3.0", + "node-gyp-build-optional-packages": "5.0.6", + "ordered-binary": "^1.4.0", + "weak-lru-cache": "^1.2.2" + }, + "dependencies": { + "msgpackr": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.8.5.tgz", + "integrity": "sha512-mpPs3qqTug6ahbblkThoUY2DQdNXcm4IapwOS3Vm/87vmpzLVelvp9h3It1y9l1VPpiFLV11vfOXnmeEwiIXwg==", + "dev": true, + "requires": { + "msgpackr-extract": "^3.0.1" + } + }, + "node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "dev": true + } + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.30.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz", + "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==", + "dev": true, + "requires": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, + "mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "dev": true, + "optional": true, + "peer": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "msgpackr": { + "version": "1.9.6", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.9.6.tgz", + "integrity": "sha512-50rmb6+ZWvEm0vJn8R8CwI1Eavss3h5rgtKrcdUal3EkZcpqw82+xsmc7RoHb8fYB5V4EOU2NDaOitDAdO0t+w==", + "dev": true, + "requires": { + "msgpackr-extract": "^3.0.2" + } + }, + "msgpackr-extract": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.2.tgz", + "integrity": "sha512-SdzXp4kD/Qf8agZ9+iTu6eql0m3kWm1A2y1hkpTeVNENutaB0BwHlSvAIaMxwntmRUAUjon2V4L8Z/njd0Ct8A==", + "dev": true, + "optional": true, + "requires": { + "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.2", + "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.2", + "node-gyp-build-optional-packages": "5.0.7" + }, + "dependencies": { + "node-gyp-build-optional-packages": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.7.tgz", + "integrity": "sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w==", + "dev": true, + "optional": true + } + } + }, + "node-addon-api": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", + "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==", + "dev": true + }, + "node-gyp-build-optional-packages": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.6.tgz", + "integrity": "sha512-2ZJErHG4du9G3/8IWl/l9Bp5BBFy63rno5GVmjQijvTuUZKsl6g8RB4KH/x3NLcV5ZBb4GsXmAuTYr6dRml3Gw==", + "dev": true + }, + "node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "nullthrows": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", + "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==", + "dev": true + }, + "ordered-binary": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.4.1.tgz", + "integrity": "sha512-9LtiGlPy982CsgxZvJGNNp2/NnrgEr6EAyN3iIEP3/8vd3YLgAZQHbQ75ZrkfBRGrNg37Dk3U6tuVb+B4Xfslg==", + "dev": true + }, + "parcel": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/parcel/-/parcel-2.9.3.tgz", + "integrity": "sha512-2GTVocFkwblV/TIg9AmT7TI2fO4xdWkyN8aFUEVtiVNWt96GTR3FgQyHFValfCbcj1k9Xf962Ws2hYXYUr9k1Q==", + "dev": true, + "requires": { + "@parcel/config-default": "2.9.3", + "@parcel/core": "2.9.3", + "@parcel/diagnostic": "2.9.3", + "@parcel/events": "2.9.3", + "@parcel/fs": "2.9.3", + "@parcel/logger": "2.9.3", + "@parcel/package-manager": "2.9.3", + "@parcel/reporter-cli": "2.9.3", + "@parcel/reporter-dev-server": "2.9.3", + "@parcel/reporter-tracer": "2.9.3", + "@parcel/utils": "2.9.3", + "chalk": "^4.1.0", + "commander": "^7.0.0", + "get-port": "^4.2.0" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "posthtml": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.16.6.tgz", + "integrity": "sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==", + "dev": true, + "requires": { + "posthtml-parser": "^0.11.0", + "posthtml-render": "^3.0.0" + }, + "dependencies": { + "posthtml-parser": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.11.0.tgz", + "integrity": "sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==", + "dev": true, + "requires": { + "htmlparser2": "^7.1.1" + } + } + } + }, + "posthtml-parser": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.10.2.tgz", + "integrity": "sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==", + "dev": true, + "requires": { + "htmlparser2": "^7.1.1" + } + }, + "posthtml-render": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-3.0.0.tgz", + "integrity": "sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==", + "dev": true, + "requires": { + "is-json": "^2.0.1" + } + }, + "react-error-overlay": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", + "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==", + "dev": true + }, + "react-refresh": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.9.0.tgz", + "integrity": "sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==", + "dev": true + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "rollup": { + "version": "3.27.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.1.tgz", + "integrity": "sha512-tXNDFwOkN6C2w5Blj1g6ForKeFw6c1mDu5jxoeDO3/pmYjgt+8yvIFjKzH5FQUq70OKZBkOt0zzv0THXL7vwzQ==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "rollup-plugin-dts": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-5.3.1.tgz", + "integrity": "sha512-gusMi+Z4gY/JaEQeXnB0RUdU82h1kF0WYzCWgVmV4p3hWXqelaKuCvcJawfeg+EKn2T1Ie+YWF2OiN1/L8bTVg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.22.5", + "magic-string": "^0.30.2" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "sass": { + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", + "dev": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "srcset": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/srcset/-/srcset-4.0.0.tgz", + "integrity": "sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==", + "dev": true + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "svgo": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", + "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.2.1", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + } + }, + "term-size": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", + "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", + "dev": true + }, + "terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "requires": { + "utrie": "^1.0.2" + } + }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "dev": true + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "dev": true + }, + "utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "requires": { + "base64-arraybuffer": "^1.0.2" + } + }, + "weak-lru-cache": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz", + "integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==", + "dev": true + }, + "xxhash-wasm": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz", + "integrity": "sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..97a2971 --- /dev/null +++ b/package.json @@ -0,0 +1,46 @@ +{ + "name": "@patelka2211/sharer", + "version": "0.1.0", + "description": "Sharer from KPVERSE!", + "main": "index.js", + "module": "index.js", + "types": "index.d.ts", + "scripts": { + "tsc-build": "tsc -p ./tsconfig.json", + "rollup-esm": "rollup -c --environment format:esm", + "rollup-iife": "rollup -c --environment format:iife", + "terser-esm": "terser ./index.js -c -m --toplevel -o ./index.js", + "terser-iife": "terser ./Sharer.js -c -m -o ./Sharer.js", + "prerelease-build": "npm run tsc-build && npm run rollup-esm && npm run rollup-iife && rm -rf ./lib/", + "build": "npm run tsc-build && npm run rollup-esm && npm run rollup-iife && npm run terser-esm && npm run terser-iife && rm -rf ./lib/", + "test-build": "npm run tsc-build && npm run rollup-esm && tsc ./test/index.ts -t es6 && rollup ./test/index.js -o ./test/out.js && rm -rf ./lib/" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/patelka2211/sharer.git" + }, + "keywords": [], + "author": "Kartavya Patel ", + "license": "MIT", + "bugs": { + "url": "https://github.com/patelka2211/sharer/issues" + }, + "homepage": "https://kpverse.in/sharer/", + "dependencies": { + "@patelka2211/dominar": "^1.2.4", + "dynamic-colors": "^1.1.4", + "html2canvas": "^1.4.1" + }, + "devDependencies": { + "@parcel/transformer-sass": "^2.9.3", + "parcel": "^2.9.3", + "rollup": "^3.27.1", + "rollup-plugin-dts": "^5.3.1", + "terser": "^5.19.2", + "typescript": "^5.1.6" + } +} \ No newline at end of file diff --git a/rollup.config.mjs b/rollup.config.mjs index d03dd34..e94aa35 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -1,37 +1,50 @@ -const outFormats = ["iife", "esm", "sharer_button"], - time = new Date(), +import dts from "rollup-plugin-dts"; + +const currentDate = new Date(), + options = { year: "numeric", month: "long", day: "numeric" }, + formattedDate = currentDate.toLocaleDateString("en-US", options), banner = `/** -* "Sharer by KP" -* - Sharer is a user-friendly JavaScript library that seamlessly enhances website sharing across various applications and social media platforms. Boost engagement and increase website reach with Sharer - the top-rated JavaScript library for seamless URL sharing! -* -* @author Kartavya Patel -* -* @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} -* -* @copyright Kartavya Patel ${time.getFullYear()} -* -* Includes {@link https://github.com/patelka2211/json2html JSON2HTML} and {@link https://github.com/datalog/qrcode-svg qrcode-svg}. -* -* Last updated at : ${time.toISOString()} -*/`; + * Sharer from KPVERSE + * + * v0.1.0 + * + * Updated on ${formattedDate}. + * + * Copyright © 2023-present, Kartavya Patel. All rights reserved. + * + * @author Kartavya Patel + * + * @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} + */`; -export default outFormats.map((format) => { - if (format === "sharer_button") - return { - input: `./dist/${format}/${format}.js`, - output: { - file: `./bundle/${format}.js`, - format: "iife", - banner: banner, - }, - }; - return { - input: `./dist/sharer_${format}.js`, +export default [ + process.env.format === "esm" && { + input: "./lib/index.js", + output: { + file: "index.js", + format: "es", + banner: `'use strict';`, + }, + }, + process.env.format === "esm" && { + input: "./src/index.ts", output: { - file: `./bundle/sharer.${format}.js`, - format: format, - name: "sharer", + file: "index.d.ts", + format: "es", + }, + plugins: [dts()], + }, + process.env.format === "iife" && { + input: "./build.iife.js", + output: { + file: "./Sharer.js", + format: "iife", banner: banner, + globals: { + "@patelka2211/dominar": "Dominar", + "dynamic-colors": "DynamicColors", + html2canvas: "html2canvas", + }, }, - }; -}); + }, +].filter(Boolean); diff --git a/src/cdn.ts b/src/cdn.ts deleted file mode 100644 index 9917da0..0000000 --- a/src/cdn.ts +++ /dev/null @@ -1,10 +0,0 @@ -const cdn = { - url: "https://patelka2211.github.io/sharer/", - // url: "http://localhost:5500/", // For development purpose only. - getPath(path: string | string[]) { - if (typeof path === "string") return this.url + path; - return this.url + path.join("/"); - }, -}; - -export default cdn; diff --git a/src/components/applist-and-qr/_style.scss b/src/components/applist-and-qr/_style.scss new file mode 100644 index 0000000..a121a36 --- /dev/null +++ b/src/components/applist-and-qr/_style.scss @@ -0,0 +1,96 @@ +@mixin sharerApplistAndQR { + #sharer-applist-n-qr { + margin: $padding; + margin-bottom: 0; + aspect-ratio: 1; + border-radius: 6.9px; + + overflow: auto; + -ms-overflow-style: none; + scrollbar-width: none; + + &::-webkit-scrollbar { + display: none; + } + + .applist-item { + padding: $padding; + width: calc(100% - 2 * $padding); + height: calc(50px - 2 * $padding); + + display: flex; + align-items: center; + justify-content: space-between; + + border-bottom: 1px solid + rgba(var(--sharer-dc-secondaryContainer-rgb), 32%); + + &:last-child { + border-bottom: none; + } + + .applist-item-icon-container { + padding: 1px; + height: calc(100% - 2px); + aspect-ratio: 1; + background-color: rgba( + var(--sharer-dc-onSecondaryContainer-rgb), + 8% + ); + border-radius: 23%; + .applist-item-icon-image { + width: 100%; + border-radius: 23%; + } + } + + .applist-item-name { + font-size: 18px; + font-weight: 500; + width: calc(100% - 120px); + color: var(--sharer-dc-onBackground); + &:hover { + cursor: default; + } + + white-space: nowrap; + overflow: hidden !important; + text-overflow: ellipsis; + } + + .applist-item-qr-icon, + .applist-item-open-icon { + height: 100%; + aspect-ratio: 1; + border-radius: 23%; + + &:hover { + cursor: pointer; + background-color: var(--sharer-dc-secondaryContainer); + + .applist-btns-icon-svg { + path { + fill: var(--sharer-dc-onSecondaryContainer); + } + } + } + + .applist-btns-icon-svg { + path { + fill: rgba( + var(--sharer-dc-onSecondaryContainer-rgb), + 32% + ); + } + } + } + + &:hover { + background-color: rgba( + var(--sharer-dc-secondaryContainer-rgb), + 32% + ); + } + } + } +} diff --git a/src/components/applist-and-qr/applistItemImage.ts b/src/components/applist-and-qr/applistItemImage.ts new file mode 100644 index 0000000..7c63f8c --- /dev/null +++ b/src/components/applist-and-qr/applistItemImage.ts @@ -0,0 +1,11 @@ +import { tag } from "@patelka2211/dominar"; +import { cdn } from "../../helper/cdn"; + +export function getApplistItemImage(appId: string) { + return tag("img", { + attributes: { + src: cdn.get(["svgs"], `${appId}-icon.svg`), + class: "applist-item-icon-image", + }, + }); +} diff --git a/src/components/applist-and-qr/applistToQRState.ts b/src/components/applist-and-qr/applistToQRState.ts new file mode 100644 index 0000000..07de634 --- /dev/null +++ b/src/components/applist-and-qr/applistToQRState.ts @@ -0,0 +1,49 @@ +import { render, SVGParser, attachEventListeners } from "@patelka2211/dominar"; +import { sharerApplistAndQRElement } from "../../elements/sharerApplistAndQR"; +import { sharerControlButtonCenterElement } from "../../elements/sharerControlButtonCenter"; +import { sharerControlButtonRightElement } from "../../elements/sharerControlButtonRight"; +import { downloadSharerQR } from "../downloadable/downloadSharerQR"; +import { prepareURL } from "../../helper/prepareURL"; +import { createQR } from "../../helper/qrcode"; +import applistIcon from "../../svgs/applist-icon"; +import { share_url } from "../../variables/main"; +import { qrToApplistState } from "./qrToApplistState"; +import { appsItemType } from "./types"; + +export function applistToQRState(applistItem: appsItemType) { + let ApplistAndQRTag = sharerApplistAndQRElement(), + ControlButtonRight = sharerControlButtonRightElement(), + ControlButtonCenter = sharerControlButtonCenterElement(); + if ( + ApplistAndQRTag !== null && + ControlButtonRight !== null && + ControlButtonCenter !== null + ) { + render( + ApplistAndQRTag, + SVGParser(createQR(prepareURL(applistItem.url_format))) + ).then(() => { + ApplistAndQRTag?.scrollTo({ top: 0 }); + }); + + render(ControlButtonRight, SVGParser(applistIcon)).then(() => { + if (ControlButtonRight !== null) + attachEventListeners(ControlButtonRight, { + click: qrToApplistState, + }); + }); + + render(ControlButtonCenter, "Download QR").then(() => { + if (ControlButtonCenter !== null) + attachEventListeners(ControlButtonCenter, { + click() { + if (share_url !== undefined) + downloadSharerQR( + share_url.hostname, + applistItem.name + ); + }, + }); + }); + } +} diff --git a/src/components/applist-and-qr/getApplist.ts b/src/components/applist-and-qr/getApplist.ts new file mode 100644 index 0000000..1305bfb --- /dev/null +++ b/src/components/applist-and-qr/getApplist.ts @@ -0,0 +1,69 @@ +import { tag, tagList, SVGParser } from "@patelka2211/dominar"; +import { openURL } from "../../helper/openURL"; +import { prepareURL } from "../../helper/prepareURL"; +import { readRecord } from "../../storage/main"; +import openLinkIcon from "../../svgs/open-link-icon"; +import qrIcon from "../../svgs/qr-icon"; +import { getApplistItemImage } from "./applistItemImage"; +import { applistToQRState } from "./applistToQRState"; +import { appsObject } from "./main"; +import { moveItemToZerothIndex } from "./moveItemToZeroIndex"; + +export function getApplist() { + const appIds = readRecord("AppsIdList"); + + if (Array.isArray(appIds)) { + return (appIds as string[]).map((appId, index) => { + const applistItem = appsObject[appId]; + return tag("div", { + attributes: { + id: `applist-item-${applistItem.id}`, + class: "applist-item", + }, + children: tagList( + tag("div", { + attributes: { + class: "applist-item-icon-container", + }, + children: getApplistItemImage(applistItem.id), + }), + tag("span", { + attributes: { + class: "applist-item-name", + title: applistItem.name, + }, + children: applistItem.name, + }), + tag("div", { + attributes: { + class: "applist-item-qr-icon", + title: "Show QR Code", + }, + children: SVGParser(qrIcon), + attachEventListeners: { + click() { + applistToQRState(applistItem); + moveItemToZerothIndex(index); + }, + }, + }), + tag("div", { + attributes: { + class: "applist-item-open-icon", + title: `Open ${applistItem.name}`, + }, + children: SVGParser(openLinkIcon), + attachEventListeners: { + click() { + openURL(prepareURL(applistItem.url_format)); + moveItemToZerothIndex(index); + }, + }, + }) + ), + }); + }); + } + + return []; +} diff --git a/src/components/applist-and-qr/main.ts b/src/components/applist-and-qr/main.ts new file mode 100644 index 0000000..723d738 --- /dev/null +++ b/src/components/applist-and-qr/main.ts @@ -0,0 +1,62 @@ +import { appsItemType } from "./types"; + +export let appsObject: { + [id: string]: appsItemType; +} = { + gml: { + id: "gml", + name: "Email", + url_format: `mailto:?subject={%text%}&body={%url%}`, + }, + mstdn: { + id: "mstdn", + name: "Mastodon", + url_format: `https://toot.kytta.dev/?text={%text%}%0A{%url%}`, + }, + fb: { + id: "fb", + name: "Facebook", + url_format: + "https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}", + }, + wa: { + id: "wa", + name: "WhatsApp", + url_format: "https://api.whatsapp.com/send?text={%text%}%0A{%url%}", + }, + x: { + id: "x", + name: "X", + url_format: `https://twitter.com/intent/tweet?text={%text%}&url={%url%}`, + }, + lnkdn: { + id: "lnkdn", + name: "LinkedIn", + url_format: `https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}`, + }, + rdt: { + id: "rdt", + name: "Reddit", + url_format: `https://reddit.com/submit?title={%text%}&url={%url%}`, + }, + pntrst: { + id: "pntrst", + name: "Pinterest", + url_format: `https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button`, + }, + snpcht: { + id: "snpcht", + name: "Snapchat", + url_format: `https://snapchat.com/scan?attachmentUrl={%url%}`, + }, + tg: { + id: "tg", + name: "Telegram", + url_format: `https://telegram.me/share/url?url={%url%}&text={%text%}`, + }, + // koo: { + // id: "koo", + // name: "Koo", + // url_format: `https://www.kooapp.com/create?title={%text%}%0A{%url%}`, + // }, +}; diff --git a/src/components/applist-and-qr/moveItemToZeroIndex.ts b/src/components/applist-and-qr/moveItemToZeroIndex.ts new file mode 100644 index 0000000..499ed7d --- /dev/null +++ b/src/components/applist-and-qr/moveItemToZeroIndex.ts @@ -0,0 +1,11 @@ +import { readRecord, updateRecord } from "../../storage/main"; + +export function moveItemToZerothIndex(index: number) { + let appIds = readRecord("AppsIdList"); + if (Array.isArray(appIds)) { + if (index >= appIds.length || index <= 0) return; + const item = appIds.splice(index, 1)[0]; + appIds.unshift(item); + updateRecord("AppsIdList", appIds); + } +} diff --git a/src/components/applist-and-qr/qrToApplistState.ts b/src/components/applist-and-qr/qrToApplistState.ts new file mode 100644 index 0000000..8414967 --- /dev/null +++ b/src/components/applist-and-qr/qrToApplistState.ts @@ -0,0 +1,40 @@ +import { + render, + tagList, + SVGParser, + attachEventListeners, +} from "@patelka2211/dominar"; +import { sharerApplistAndQRElement } from "../../elements/sharerApplistAndQR"; +import { sharerControlButtonCenterElement } from "../../elements/sharerControlButtonCenter"; +import { sharerControlButtonRightElement } from "../../elements/sharerControlButtonRight"; +import { openFeedback } from "../../helper/openFeedback"; +import { closeSharer } from "../../operations/closeSharer"; +import closeIcon from "../../svgs/close-icon"; +import { getApplist } from "./getApplist"; + +export function qrToApplistState() { + let ApplistAndQRTag = sharerApplistAndQRElement(), + ControlButtonRight = sharerControlButtonRightElement(), + ControlButtonCenter = sharerControlButtonCenterElement(); + if ( + ApplistAndQRTag !== null && + ControlButtonRight !== null && + ControlButtonCenter !== null + ) { + render(ApplistAndQRTag, tagList(...getApplist())); + + render(ControlButtonRight, SVGParser(closeIcon)).then(() => { + if (ControlButtonRight !== null) + attachEventListeners(ControlButtonRight, { + click: closeSharer, + }); + }); + + render(ControlButtonCenter, "Feedback").then(() => { + if (ControlButtonCenter !== null) + attachEventListeners(ControlButtonCenter, { + click: openFeedback, + }); + }); + } +} diff --git a/src/components/applist-and-qr/types.ts b/src/components/applist-and-qr/types.ts new file mode 100644 index 0000000..1babad4 --- /dev/null +++ b/src/components/applist-and-qr/types.ts @@ -0,0 +1,5 @@ +export type appsItemType = { + id: string; + name: string; + url_format: string; +}; diff --git a/src/components/button/_style.scss b/src/components/button/_style.scss new file mode 100644 index 0000000..76e4c30 --- /dev/null +++ b/src/components/button/_style.scss @@ -0,0 +1,69 @@ +@mixin sharerButton { + #kpverse-sharer-button { + position: fixed; + bottom: 20px; + right: 20px; + + width: 48px; + height: 48px; + + border-radius: 23%; + + box-shadow: inset 0 1px 0 transparent, 0 22px 70px 4px rgba(0, 0, 0, 0), + 0 0 0 1px rgba(0, 0, 0, 0); + + transition: all 0.4s ease; + + &.hide { + bottom: -32px; + right: 28px; + width: 32px; + height: 32px; + } + #sharer-icon-svg { + .icon-bg { + transition: all 0.4s ease; + fill: var(--sharer-dc-secondaryContainer); + } + .icon-fg { + transition: all 0.4s ease; + fill: var(--sharer-dc-onSecondaryContainer); + } + .icon-border { + transition: all 0.4s ease; + fill: rgba(var(--sharer-dc-onSecondaryContainer-rgb), 16%); + } + + .icon-stroke { + transition: all 0.4s ease; + stroke: rgba(var(--sharer-dc-onSecondaryContainer-rgb), 16%); + } + } + + &.sharer-icon-hover { + cursor: none; + width: 56px; + height: 56px; + bottom: 16px; + right: 16px; + box-shadow: inset 0 1px 0 transparent, + 0 22px 70px 4px rgba(0, 0, 0, 0.56), 0 0 0 1px rgba(0, 0, 0, 0); + + #sharer-icon-svg { + .icon-bg { + fill: var(--sharer-dc-primaryContainer); + } + .icon-fg { + fill: var(--sharer-dc-onPrimaryContainer); + } + .icon-border { + fill: rgba(var(--sharer-dc-onPrimaryContainer-rgb), 24%); + } + + .icon-stroke { + stroke: rgba(var(--sharer-dc-onPrimaryContainer-rgb), 32%); + } + } + } + } +} diff --git a/src/components/button/activate.ts b/src/components/button/activate.ts new file mode 100644 index 0000000..3cfd660 --- /dev/null +++ b/src/components/button/activate.ts @@ -0,0 +1,17 @@ +import { initializeIfNot } from "../../intialization/intializeIfNot"; +import { sharerUninitialized } from "../../intialization/main"; +import { isSharerOpen } from "../../operations/main"; +import { insertButton } from "./insertButton"; +import { isSharerButtonActive, changeSharerButtonStatus } from "./main"; + +/** + * Activates Sharer button. + * + * @returns {void} + */ +export function activate(): void { + if (isSharerButtonActive === true) return; + if (sharerUninitialized === true) initializeIfNot(); + if (isSharerButtonActive === undefined) changeSharerButtonStatus(true); + if (isSharerOpen === undefined) insertButton(); +} diff --git a/src/components/button/buttonObject.ts b/src/components/button/buttonObject.ts new file mode 100644 index 0000000..c54028a --- /dev/null +++ b/src/components/button/buttonObject.ts @@ -0,0 +1,23 @@ +import { activate } from "./activate"; +import { deactivate } from "./deactivate"; + +/** + * Represents a Sharer button with activation and deactivation functions. + */ +export const button: { + /** + * Activates the Sharer button. + * + * @returns {void} + */ + activate: () => void; + /** + * Deactivates the Sharer button. + * + * @returns {void} + */ + deactivate: () => void; +} = { + activate, + deactivate, +}; diff --git a/src/components/button/deactivate.ts b/src/components/button/deactivate.ts new file mode 100644 index 0000000..67a12e6 --- /dev/null +++ b/src/components/button/deactivate.ts @@ -0,0 +1,13 @@ +import { isSharerButtonActive, changeSharerButtonStatus } from "./main"; +import { removeButton } from "./removeButton"; + +/** + * Deactivates Sharer button. + * + * @returns {void} + */ +export function deactivate(): void { + if (isSharerButtonActive === undefined) return; + if (isSharerButtonActive === true) changeSharerButtonStatus(undefined); + removeButton(); +} diff --git a/src/components/button/insertButton.ts b/src/components/button/insertButton.ts new file mode 100644 index 0000000..7ac4306 --- /dev/null +++ b/src/components/button/insertButton.ts @@ -0,0 +1,44 @@ +import { render, tag, SVGParser } from "@patelka2211/dominar"; +import { kpverseSharerButtonElement } from "../../elements/kpverseSharerButton"; +import { getZIndex } from "../../helper/zIndex"; +import { openSharer } from "../../operations/openSharer"; +import sharerIcon from "../../svgs/sharer-icon"; + +export function insertButton() { + render( + document.body, + tag("div", { + attributes: { + id: "kpverse-sharer-button", + class: "hide", + title: "Click to Share!", + }, + children: SVGParser(sharerIcon), + attachEventListeners: { + mouseenter() { + let button = kpverseSharerButtonElement(); + button?.classList.add("sharer-icon-hover"); + }, + mouseleave() { + let button = kpverseSharerButtonElement(); + button?.classList.remove("sharer-icon-hover"); + }, + click() { + openSharer(); + }, + }, + }), + { + clearBeforeRender: false, + insertType: "prepend", + } + ).then(() => { + let tag = kpverseSharerButtonElement(); + if (tag) { + tag.style.zIndex = `${getZIndex()}`; + setTimeout(() => { + if (tag) tag.classList.remove("hide"); + }, 1); + } + }); +} diff --git a/src/components/button/main.ts b/src/components/button/main.ts new file mode 100644 index 0000000..cb35f69 --- /dev/null +++ b/src/components/button/main.ts @@ -0,0 +1,5 @@ +export let isSharerButtonActive: true | undefined = undefined; + +export function changeSharerButtonStatus(newStatus: true | undefined) { + isSharerButtonActive = newStatus; +} diff --git a/src/components/button/removeButton.ts b/src/components/button/removeButton.ts new file mode 100644 index 0000000..c910ec4 --- /dev/null +++ b/src/components/button/removeButton.ts @@ -0,0 +1,13 @@ +import { kpverseSharerButtonElement } from "../../elements/kpverseSharerButton"; + +export function removeButton() { + let button = kpverseSharerButtonElement(); + + if (button) { + button.classList.add("hide"); + button.classList.remove("sharer-icon-hover"); + setTimeout(() => { + if (button) button.remove(); + }, 400); + } +} diff --git a/src/components/control-buttons/_style.scss b/src/components/control-buttons/_style.scss new file mode 100644 index 0000000..1faa996 --- /dev/null +++ b/src/components/control-buttons/_style.scss @@ -0,0 +1,54 @@ +@mixin sharerConntrolButtonsContainer { + #sharer-cntrl-btns-container { + padding: $padding; + width: calc(100% - 2 * $padding); + height: calc(50px - 2 * $padding); + + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + + .sharer-cntrl-btn-corner, + #sharer-cntrl-btn-center { + height: 100%; + border: none; + border-radius: 6.9px; + padding: 0; + + // background-color: var(--sharer-dc-secondaryContainer); + background-color: var(--sharer-dc-secondaryContainer); + &:hover { + cursor: pointer; + } + + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + } + + .sharer-cntrl-btn-corner { + aspect-ratio: 1; + .icon-svg { + path { + // fill: var(--sharer-dc-onSecondaryContainer); + fill: var(--sharer-dc-onSecondaryContainer); + } + } + } + + #sharer-cntrl-btn-center { + width: calc(100% - 8 * $padding - 8px); + font-size: 18px; + // color: var(--sharer-dc-onSecondaryContainer); + color: var(--sharer-dc-onSecondaryContainer); + padding: 4px; + height: calc(100% - 8px); + + white-space: nowrap; + overflow: hidden !important; + text-overflow: ellipsis; + } + } +} diff --git a/src/components/control-buttons/buttonCenter.ts b/src/components/control-buttons/buttonCenter.ts new file mode 100644 index 0000000..0b37f9b --- /dev/null +++ b/src/components/control-buttons/buttonCenter.ts @@ -0,0 +1,14 @@ +import { tag } from "@patelka2211/dominar"; +import { openFeedback } from "../../helper/openFeedback"; + +export function buttonCenter() { + return tag("button", { + attributes: { + id: "sharer-cntrl-btn-center", + }, + children: "Feedback", + attachEventListeners: { + click: openFeedback, + }, + }); +} diff --git a/src/components/control-buttons/buttonLeft.ts b/src/components/control-buttons/buttonLeft.ts new file mode 100644 index 0000000..ebc61ff --- /dev/null +++ b/src/components/control-buttons/buttonLeft.ts @@ -0,0 +1,22 @@ +import { tag, render } from "@patelka2211/dominar"; +import { themeCycle } from "dynamic-colors"; +import { sharerControlButtonLeftElement } from "../../elements/sharerControlButtonLeft"; +import { currentThemeIcon } from "../../helper/getCurrentThemeIcon"; +import { updateRecord } from "../../storage/main"; + +export function buttonLeft() { + return tag("button", { + attributes: { + id: "sharer-cntrl-btn-left", + class: "sharer-cntrl-btn-corner", + }, + children: currentThemeIcon(true), + attachEventListeners: { + click() { + updateRecord("Theme", themeCycle()); + let button = sharerControlButtonLeftElement(); + if (button !== null) render(button, currentThemeIcon()); + }, + }, + }); +} diff --git a/src/components/control-buttons/buttonRight.ts b/src/components/control-buttons/buttonRight.ts new file mode 100644 index 0000000..2a3f3ae --- /dev/null +++ b/src/components/control-buttons/buttonRight.ts @@ -0,0 +1,16 @@ +import { tag, SVGParser } from "@patelka2211/dominar"; +import { closeSharer } from "../../operations/closeSharer"; +import closeIcon from "../../svgs/close-icon"; + +export function buttonRight() { + return tag("button", { + attributes: { + id: "sharer-cntrl-btn-right", + class: "sharer-cntrl-btn-corner", + }, + children: SVGParser(closeIcon), + attachEventListeners: { + click: closeSharer, + }, + }); +} diff --git a/src/components/control-buttons/main.ts b/src/components/control-buttons/main.ts new file mode 100644 index 0000000..c1b9715 --- /dev/null +++ b/src/components/control-buttons/main.ts @@ -0,0 +1,13 @@ +import { tag, tagList } from "@patelka2211/dominar"; +import { buttonLeft } from "./buttonLeft"; +import { buttonRight } from "./buttonRight"; +import { buttonCenter } from "./buttonCenter"; + +export function sharerControlButtonsComponent() { + return tag("div", { + attributes: { + id: "sharer-cntrl-btns-container", + }, + children: tagList(buttonLeft(), buttonCenter(), buttonRight()), + }); +} diff --git a/src/components/downloadable/_style.scss b/src/components/downloadable/_style.scss new file mode 100644 index 0000000..d6b04e8 --- /dev/null +++ b/src/components/downloadable/_style.scss @@ -0,0 +1,44 @@ +$padding: 10px; + +@import "../applist-and-qr/style"; + +@mixin sharerDownloadableComponent { + #sharer-downloadable-component { + width: 100%; + background-color: var(--sharer-dc-background); + + .powered-by-sharer, + #sharer-applist-n-qr { + width: calc(100% - 2 * $padding); + } + + @include sharerApplistAndQR(); + + .powered-by-sharer-container { + padding: $padding; + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + + #powered-by-sharer-svg { + max-width: 195px; + width: calc(100% - 20px); + .svg-fonts { + fill: var(--sharer-dc-onBackground); + } + + .sharer-logo-bg { + fill: var(--sharer-dc-secondaryContainer); + } + .sharer-logo-fg { + fill: var(--sharer-dc-onSecondaryContainer); + } + + &:hover { + cursor: pointer; + } + } + } + } +} diff --git a/src/components/downloadable/downloadSharerQR.ts b/src/components/downloadable/downloadSharerQR.ts new file mode 100644 index 0000000..6188d4b --- /dev/null +++ b/src/components/downloadable/downloadSharerQR.ts @@ -0,0 +1,36 @@ +import { render, tag } from "@patelka2211/dominar"; +import html2canvas from "html2canvas"; +import { sharerDownloadableComponentElement } from "../../elements/sharerDownloadable"; + +export function downloadSharerQR(website: string, platform: string) { + let element = sharerDownloadableComponentElement(); + + if (element !== null) + html2canvas(element, { + width: element.clientWidth, + height: element.clientHeight, + }).then(function (canvas) { + render( + document.body, + tag("a", { + attributes: { + id: "temporary-SharerQR", + download: `${`SharerQR share ${website} on ${platform}` + .replaceAll(" ", "-") + .replaceAll(".", "_")}.png`, + href: canvas.toDataURL("image/png"), + target: "_blank", + }, + }), + { + clearBeforeRender: false, + insertType: "append", + } + ).then(() => { + ((link) => { + link?.click(); + link?.remove(); + })(document.getElementById("temporary-SharerQR")); + }); + }); +} diff --git a/src/components/downloadable/main.ts b/src/components/downloadable/main.ts new file mode 100644 index 0000000..4e830ad --- /dev/null +++ b/src/components/downloadable/main.ts @@ -0,0 +1,25 @@ +import { tag, tagList, SVGParser } from "@patelka2211/dominar"; +import poweredBySharer from "../../svgs/powered-by-sharer"; +import { getApplist } from "../applist-and-qr/getApplist"; + +export function sharerDownloadableComponent() { + return tag("div", { + attributes: { + id: "sharer-downloadable-component", + }, + children: tagList( + tag("div", { + attributes: { + id: "sharer-applist-n-qr", + }, + children: tagList(...getApplist()), + }), + tag("div", { + attributes: { + class: "powered-by-sharer-container", + }, + children: SVGParser(poweredBySharer), + }) + ), + }); +} diff --git a/src/components/root/_style.scss b/src/components/root/_style.scss new file mode 100644 index 0000000..327deac --- /dev/null +++ b/src/components/root/_style.scss @@ -0,0 +1,41 @@ +@import "../window/style"; + +@mixin kpverseSharer { + #kpverse-sharer { + font-family: "Inter", sans-serif; + + transition: opacity 0.4s ease; + opacity: 1; + + box-sizing: content-box; + + position: fixed; + width: 100vw; + height: 100vh; + background-color: rgba(0, 0, 0, 32%); + backdrop-filter: blur(6px); + + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-around; + + &.hide { + opacity: 0; + } + + * { + box-sizing: content-box; + } + + @include sharerWindow(); + } +} + +@mixin kpverseSharerMaxWidth434px { + #kpverse-sharer { + align-items: end; + + @include sharerWindowMaxWidth434px(); + } +} diff --git a/src/components/root/main.ts b/src/components/root/main.ts new file mode 100644 index 0000000..b5add44 --- /dev/null +++ b/src/components/root/main.ts @@ -0,0 +1,21 @@ +import { tag } from "@patelka2211/dominar"; +import { closeSharer } from "../../operations/closeSharer"; +import { continueToClose, setContinueToClose } from "../../operations/main"; +import { sharerWindow } from "../window/main"; + +export function kpverseSharer() { + return tag("div", { + attributes: { + id: "kpverse-sharer", + class: "hide", + }, + children: sharerWindow(), + attachEventListeners: { + click() { + if (continueToClose || continueToClose === undefined) + closeSharer(); + setContinueToClose(true); + }, + }, + }); +} diff --git a/src/components/window/_style.scss b/src/components/window/_style.scss new file mode 100644 index 0000000..9904b99 --- /dev/null +++ b/src/components/window/_style.scss @@ -0,0 +1,40 @@ +@import "../downloadable/style"; +@import "../control-buttons/style"; + +@mixin sharerWindow { + .sharer-window { + width: 100%; + max-width: 414px; + max-height: calc(100% - 20px); + + display: flex; + flex-direction: column; + align-items: center; + + border-radius: 16.9px; + box-shadow: inset 0 1px 0 transparent, + 0 22px 70px 4px rgba(0, 0, 0, 0.56), 0 0 0 1px rgba(0, 0, 0, 0.08); + + background-color: var(--sharer-dc-background); + + overflow: auto; + -ms-overflow-style: none; + scrollbar-width: none; + &::-webkit-scrollbar { + display: none; + } + + @include sharerDownloadableComponent(); + @include sharerConntrolButtonsContainer(); + } +} + +@mixin sharerWindowMaxWidth434px { + .sharer-window { + max-width: 100%; + box-shadow: inset 0 1px 0 transparent, + 0 -22px 70px 4px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(0, 0, 0, 0.08); + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } +} diff --git a/src/components/window/main.ts b/src/components/window/main.ts new file mode 100644 index 0000000..db88615 --- /dev/null +++ b/src/components/window/main.ts @@ -0,0 +1,21 @@ +import { tag, tagList } from "@patelka2211/dominar"; +import { setContinueToClose } from "../../operations/main"; +import { sharerControlButtonsComponent } from "../control-buttons/main"; +import { sharerDownloadableComponent } from "../downloadable/main"; + +export function sharerWindow() { + return tag("div", { + attributes: { + class: "sharer-window", + }, + children: tagList( + sharerDownloadableComponent(), + sharerControlButtonsComponent() + ), + attachEventListeners: { + click() { + setContinueToClose(false); + }, + }, + }); +} diff --git a/src/elements/kpverseSharer.ts b/src/elements/kpverseSharer.ts new file mode 100644 index 0000000..d551882 --- /dev/null +++ b/src/elements/kpverseSharer.ts @@ -0,0 +1,3 @@ +export function kpverseSharerElement() { + return document.getElementById("kpverse-sharer"); +} diff --git a/src/elements/kpverseSharerButton.ts b/src/elements/kpverseSharerButton.ts new file mode 100644 index 0000000..cae60ab --- /dev/null +++ b/src/elements/kpverseSharerButton.ts @@ -0,0 +1,3 @@ +export function kpverseSharerButtonElement() { + return document.getElementById("kpverse-sharer-button"); +} diff --git a/src/elements/poweredBySharer.ts b/src/elements/poweredBySharer.ts new file mode 100644 index 0000000..c4d777e --- /dev/null +++ b/src/elements/poweredBySharer.ts @@ -0,0 +1,3 @@ +export function poweredBySharerElement() { + return document.getElementById("powered-by-sharer-svg"); +} diff --git a/src/elements/sharerApplistAndQR.ts b/src/elements/sharerApplistAndQR.ts new file mode 100644 index 0000000..54800c2 --- /dev/null +++ b/src/elements/sharerApplistAndQR.ts @@ -0,0 +1,3 @@ +export function sharerApplistAndQRElement() { + return document.getElementById("sharer-applist-n-qr"); +} diff --git a/src/elements/sharerControlButtonCenter.ts b/src/elements/sharerControlButtonCenter.ts new file mode 100644 index 0000000..3b0c621 --- /dev/null +++ b/src/elements/sharerControlButtonCenter.ts @@ -0,0 +1,3 @@ +export function sharerControlButtonCenterElement() { + return document.getElementById("sharer-cntrl-btn-center"); +} diff --git a/src/elements/sharerControlButtonLeft.ts b/src/elements/sharerControlButtonLeft.ts new file mode 100644 index 0000000..3c23258 --- /dev/null +++ b/src/elements/sharerControlButtonLeft.ts @@ -0,0 +1,3 @@ +export function sharerControlButtonLeftElement() { + return document.getElementById("sharer-cntrl-btn-left"); +} diff --git a/src/elements/sharerControlButtonRight.ts b/src/elements/sharerControlButtonRight.ts new file mode 100644 index 0000000..ea40df2 --- /dev/null +++ b/src/elements/sharerControlButtonRight.ts @@ -0,0 +1,3 @@ +export function sharerControlButtonRightElement() { + return document.getElementById("sharer-cntrl-btn-right"); +} diff --git a/src/elements/sharerDownloadable.ts b/src/elements/sharerDownloadable.ts new file mode 100644 index 0000000..47b604b --- /dev/null +++ b/src/elements/sharerDownloadable.ts @@ -0,0 +1,3 @@ +export function sharerDownloadableComponentElement() { + return document.getElementById("sharer-downloadable-component"); +} diff --git a/src/gui/_sharerContainer.scss b/src/gui/_sharerContainer.scss deleted file mode 100644 index d54353c..0000000 --- a/src/gui/_sharerContainer.scss +++ /dev/null @@ -1,28 +0,0 @@ -@import "./sharerWindow"; - -@mixin sharerContainer { - #sharer-container { - position: absolute; - width: calc(100vw - 12px); - height: calc(100vh - 12px); - display: flex; - flex-direction: row; - align-items: center; - justify-content: space-around; - top: 6px; - transition: top 0.6s ease; - - &.hide { - top: 100%; - } - - @include sharerWindow(); - } -} -@mixin sharerContainer_mobile { - #sharer-container { - align-items: end; - - @include sharerWindow_mobile(); - } -} diff --git a/src/gui/_sharerWindow.scss b/src/gui/_sharerWindow.scss deleted file mode 100644 index fcfd3c9..0000000 --- a/src/gui/_sharerWindow.scss +++ /dev/null @@ -1,28 +0,0 @@ -@import "./sharerHeader/sharerHeader"; -@import "./sharerContent/sharerContent"; -@import "./sharerFooter/sharerFooter"; - -@mixin sharerWindow { - #sharer-window { - background-color: white; - width: calc(100% - 42px); - max-height: calc(100% - 84px); - max-width: calc(480px - 42px); - padding: 21px; - border-radius: 30px; - display: flex; - flex-direction: column; - align-items: center; - box-shadow: 0 32px 128px 0 rgba(40, 40, 40, 0.32); - - @include sharerHeader(); - @include sharerContent(); - @include sharerFooter(); - } -} - -@mixin sharerWindow_mobile { - #sharer-window { - box-shadow: none; - } -} diff --git a/src/gui/element.ts b/src/gui/element.ts deleted file mode 100644 index e608bb5..0000000 --- a/src/gui/element.ts +++ /dev/null @@ -1,30 +0,0 @@ -const elements = { - sharer_by_KP: () => document.getElementById("sharer-by-KP") as HTMLElement, - - sharer_container: () => - document.getElementById("sharer-container") as HTMLElement, - - sharer_footer: () => - document.getElementById("sharer-footer") as HTMLElement, - - sharer_footer_text: () => - document.getElementById("sharer-footer-text") as HTMLElement, - - sharer_window: () => - document.getElementById("sharer-window") as HTMLElement, - - sharer_content: () => - document.getElementById("sharer-content-main") as HTMLElement, - - header_close_icon: () => - document.getElementById("header-close-icon") as HTMLElement, - - header_icon_container: () => - document.getElementById("header-icon-container") as HTMLElement, - - header_title: () => document.getElementById("header-title") as HTMLElement, - credits_container: () => - document.getElementById("credits-container") as HTMLElement, -}; - -export default elements; diff --git a/src/gui/resizeObserver.ts b/src/gui/resizeObserver.ts deleted file mode 100644 index 2fe8ce5..0000000 --- a/src/gui/resizeObserver.ts +++ /dev/null @@ -1,30 +0,0 @@ -import elements from "./element"; -import { isQRInterfaceStateOpen } from "./sharerContent/content.functions"; - -let resizeLock = false; - -export function resizeObserverAction() { - if (resizeLock) return; - - resizeLock = true; - setTimeout(() => { - resizeLock = false; - - elements.sharer_container().style.height = `${ - document.documentElement.clientHeight - 12 - }px`; - - if (isQRInterfaceStateOpen()) { - elements.sharer_content().style.height = `${ - elements.sharer_content().offsetWidth + 51 - }px`; - } - }, 500); -} - -export function startResizeObserver() { - window.addEventListener("resize", resizeObserverAction); -} -export function closeResizeObserver() { - window.removeEventListener("resize", resizeObserverAction); -} diff --git a/src/gui/sharerContent/_sharerContent.scss b/src/gui/sharerContent/_sharerContent.scss deleted file mode 100644 index 40db9ae..0000000 --- a/src/gui/sharerContent/_sharerContent.scss +++ /dev/null @@ -1,127 +0,0 @@ -@mixin sharerContent { - #sharer-content-main { - width: 100%; - aspect-ratio: 1; - overflow: auto; - border-radius: 18px; - - .sharer-applist-item { - width: calc(100% - 20px); - height: 30px; - padding: 10px; - border-radius: 18px; - - display: flex; - align-items: center; - justify-content: space-between; - - &:hover { - background-color: #f6f6f6; - cursor: pointer; - } - - .sharer-applist-icon-container { - height: calc(100% - 2px); - padding: 1px; - aspect-ratio: 1; - background-color: #f6f6f6; - border-radius: 7px; - - img { - height: 100%; - aspect-ratio: 1; - } - } - - .sharer-applist-app-name { - text-align: left; - font-family: "Inter", sans-serif; - width: calc(100% - 76px); - display: inline-block; - white-space: nowrap; - overflow: hidden !important; - text-overflow: ellipsis; - font-size: 18px; - } - - .sharer-applist-arrow-right-icon { - height: 100%; - aspect-ratio: 1; - - svg { - height: 100%; - aspect-ratio: 1; - } - } - } - - .sharer-qr-container { - width: calc(100% - 42px); - aspect-ratio: 1; - padding: 21px; - padding-bottom: 0; - - .sharer-qr { - width: 100%; - aspect-ratio: 1; - border-radius: 7px; - - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - - img { - width: 12%; - aspect-ratio: 1; - } - } - } - .sharer-credits { - height: 72px; - width: 100%; - - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - - #credits-container { - height: 30px; - - display: flex; - align-items: center; - - &:hover { - cursor: pointer; - } - .credits-icon-container { - height: calc(100% - 2px); - padding: 1px; - aspect-ratio: 1; - background-color: #f6f6f6; - border-radius: 7px; - - svg { - height: 100%; - aspect-ratio: 1; - } - margin-right: 8px; - } - - .credits-text { - font-family: "Inter", sans-serif; - font-size: 20px; - font-weight: 500; - text-align: center; - } - } - } - - &::-webkit-scrollbar { - display: none; - } - -ms-overflow-style: none; - scrollbar-width: none; - } -} diff --git a/src/gui/sharerContent/applist.ts b/src/gui/sharerContent/applist.ts deleted file mode 100644 index 224c14d..0000000 --- a/src/gui/sharerContent/applist.ts +++ /dev/null @@ -1,115 +0,0 @@ -export const applist: { - [_: string]: { - id: string; - name: string; - theme: { primary: string; secondary: string }; - url_format: (input_url: string, text: string) => string; - }; -} = { - wa: { - id: "wa", - name: "WhatsApp", - theme: { primary: "#25D366", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - if (text != "") text += "\n"; - - return `https://api.whatsapp.com/send?text=${encodeURIComponent( - `${text}${input_url}` - )}`; - }, - }, - fb: { - id: "fb", - name: "Facebook", - theme: { primary: "#0c87ef", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - return `https://www.facebook.com/sharer/sharer.php?t=${encodeURIComponent( - text - )}&u=${encodeURIComponent(input_url)}`; - }, - }, - tw: { - id: "tw", - name: "Twitter", - theme: { primary: "#1D9BF0", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - return `https://twitter.com/intent/tweet?text=${encodeURIComponent( - text - )}&url=${encodeURIComponent( - input_url - )}&hashtags=${encodeURIComponent("SharedUsingSharer,SharerByKP")}`; - }, - }, - eml: { - id: "eml", - name: "Email", - theme: { primary: "#EA4335", secondary: "#ffffff" }, - url_format: (body: string, subject = "") => { - return `mailto:?subject=${encodeURIComponent( - subject - )}&body=${encodeURIComponent(body)}`; - }, - }, - lnkdn: { - id: "lnkdn", - name: "LinkedIn", - theme: { primary: "#0A66C2", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - if (text != "") text += "\n"; - return `https://www.linkedin.com/cws/share?url=${encodeURIComponent( - `${text}${input_url}` - )}`; - }, - }, - pntrst: { - id: "pntrst", - name: "Pinterest", - theme: { primary: "#E60123", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - return `https://www.pinterest.com/pin/create/button/?description=${encodeURIComponent( - text - )}&url=${encodeURIComponent(input_url)}&method=button`; - }, - }, - rdt: { - id: "rdt", - name: "Reddit", - theme: { primary: "#e45b34", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - return `https://reddit.com/submit?title=${encodeURIComponent( - text - )}&url=${encodeURIComponent(input_url)}`; - }, - }, - snpcht: { - id: "snpcht", - name: "Snapchat", - theme: { primary: "#fffC00", secondary: "#000000" }, - url_format: (input_url: string, text = "") => { - return `https://snapchat.com/scan?attachmentUrl=${encodeURIComponent( - input_url - )}`; - }, - }, - koo: { - id: "koo", - name: "Koo", - theme: { primary: "#FACD00", secondary: "#383838" }, - url_format: (input_url: string, text = "") => { - if (text != "") text += "\n"; - return `https://www.kooapp.com/create?title=${encodeURIComponent( - `${text}${input_url}` - )}`; - }, - }, - tg: { - id: "tg", - name: "Telegram", - theme: { primary: "#2aa1da", secondary: "#ffffff" }, - url_format: (input_url: string, text = "") => { - return `https://t.me/share/url?url=${encodeURIComponent( - input_url - )}&text=${encodeURIComponent(text)}`; - }, - }, -}; diff --git a/src/gui/sharerContent/content.functions.ts b/src/gui/sharerContent/content.functions.ts deleted file mode 100644 index 6349ab4..0000000 --- a/src/gui/sharerContent/content.functions.ts +++ /dev/null @@ -1,165 +0,0 @@ -import j2h from "../../j2h"; -import elements from "../element"; -import { setFooterInterface } from "../sharerFooter/footer.functions"; -import { openWebsite } from "../sharerWebsite"; -import svgs from "../svgs"; -import { qr_svg } from "./QRcode"; -import { applist } from "./applist"; - -let QRInterfaceState = false; - -let default_url = window.location.href, - default_text = document.title; - -export function setSharerText(text: string) { - default_text = text; -} - -export function setSharerURL(url: string) { - default_url = url; -} - -export function setDefaultSharerURL() { - default_url = window.location.href; -} - -export function setDefaultSharerText() { - default_text = document.title; -} - -export function openQRInterfaceState() { - QRInterfaceState = true; -} -function closeQRInterfaceState() { - QRInterfaceState = false; -} -export function isQRInterfaceStateOpen() { - return QRInterfaceState; -} - -export function revertBackToRoot() { - ((element) => { - element.innerHTML = svgs.local.sharerIcon; - element.onclick = () => openWebsite(); - })(elements.header_icon_container()); - - elements.header_title().innerText = "Sharer by KP"; - - ((element) => { - element.style.height = "auto"; - element.style.aspectRatio = "1"; - })(elements.sharer_content()); - - setApplistInterface(); - closeQRInterfaceState(); -} - -function setQRInterface(appid: string) { - let sharer_content = j2h.setRoot(elements.sharer_content()), - url_to_be_shared = applist[appid].url_format(default_url, default_text); - - sharer_content - .append( - j2h.element( - "div", - { - class: "sharer-qr-container", - }, - j2h.element( - "div", - { - class: "sharer-qr", - style: `background: url(${qr_svg(url_to_be_shared)})`, - }, - svgs.cdn[appid] - ) - ) - ) - .append( - j2h.element( - "div", - { class: "sharer-credits" }, - j2h.element("div", { id: "credits-container" }, [ - j2h.element( - "div", - { class: "credits-icon-container" }, - svgs.local.sharerIcon - ), - j2h.element( - "div", - { class: "credits-text" }, - "Powered by Sharer" - ), - ]) - ) - ); - - sharer_content.render(); - - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - - elements.credits_container().onclick = () => openWebsite(); - openQRInterfaceState(); - - ((element) => { - element.innerHTML = svgs.local.arrowLeftIcon; - element.onclick = revertBackToRoot; - })(elements.header_icon_container()); - - ((app_details) => { - // elements.header_title().innerText = `Share on ${app_details.name}`; - elements.header_title().innerText = `Scan to open ${app_details.name}`; - setFooterInterface( - `Open ${app_details.name}`, - app_details.theme.secondary, - app_details.theme.primary, - () => { - openWebsite(url_to_be_shared); - } - ); - })(applist[appid]); -} - -export function setApplistInterface() { - let applist_html = j2h.setRoot(elements.sharer_content()); - - Object.keys(applist).forEach((id) => { - applist_html.append( - j2h.element( - "div", - { id: `open-${id}-qr`, class: "sharer-applist-item" }, - [ - j2h.element( - "div", - { class: "sharer-applist-icon-container" }, - svgs.cdn[id] - ), - j2h.element( - "div", - { class: "sharer-applist-app-name" }, - applist[id].name - ), - j2h.element( - "div", - { class: "sharer-applist-arrow-right-icon" }, - svgs.local.arrowRightIcon - ), - ] - ) - ); - }); - - applist_html.render(); - - Object.keys(applist).forEach((id) => { - (document.getElementById(`open-${id}-qr`) as HTMLElement).onclick = - () => { - setQRInterface(id); - }; - }); - - setFooterInterface(); - closeQRInterfaceState(); -} diff --git a/src/gui/sharerContent/sharerCard.ts b/src/gui/sharerContent/sharerCard.ts deleted file mode 100644 index fe91171..0000000 --- a/src/gui/sharerContent/sharerCard.ts +++ /dev/null @@ -1,43 +0,0 @@ -import j2h from "../../j2h"; -import elements from "../element"; -import { openWebsite } from "../sharerWebsite"; -import svgs from "../svgs"; -import { qr_svg } from "./QRcode"; - -export function setSharerCard() { - let sharer_content = j2h.setRoot(elements.sharer_content()); - - sharer_content - .append( - j2h.element("div", { - class: "sharer-qr-container", - style: `background: url(${qr_svg("Hello")})`, - }) - ) - .append( - j2h.element( - "div", - { class: "sharer-credits" }, - j2h.element("div", { id: "credits-container" }, [ - j2h.element( - "div", - { class: "credits-icon-container" }, - svgs.local.sharerIcon - ), - j2h.element( - "div", - { class: "credits-text" }, - "Powered by Sharer" - ), - ]) - ) - ); - - sharer_content.render(); - - ((element) => { - element.style.height = `${element.offsetWidth + 51}px`; - })(sharer_content.root); - - elements.credits_container().onclick = () => openWebsite(); -} diff --git a/src/gui/sharerFooter/_sharerFooter.scss b/src/gui/sharerFooter/_sharerFooter.scss deleted file mode 100644 index 1b44ac1..0000000 --- a/src/gui/sharerFooter/_sharerFooter.scss +++ /dev/null @@ -1,24 +0,0 @@ -@mixin sharerFooter { - #sharer-footer { - height: 50px; - width: 100%; - margin-top: 21px; - border-radius: 18px; - - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - text-align: center; - - &:hover { - cursor: pointer; - } - - #sharer-footer-text { - font-family: "Inter", sans-serif; - font-size: 20px; - font-weight: 600; - } - } -} diff --git a/src/gui/sharerFooter/footer.functions.ts b/src/gui/sharerFooter/footer.functions.ts deleted file mode 100644 index 4b654e7..0000000 --- a/src/gui/sharerFooter/footer.functions.ts +++ /dev/null @@ -1,19 +0,0 @@ -import elements from "../element"; -import { openWebsite } from "../sharerWebsite"; - -export function setFooterInterface( - inputText = "Powered by Sharer", - fontColor = "#5900ff", - bgColor = "#5900ff14", - actionPerform = () => openWebsite() -) { - ((element) => { - element.innerText = inputText; - element.style.color = fontColor; - })(elements.sharer_footer_text()); - - ((element) => { - element.style.backgroundColor = bgColor; - element.onclick = actionPerform; - })(elements.sharer_footer()); -} diff --git a/src/gui/sharerHeader/_sharerHeader.scss b/src/gui/sharerHeader/_sharerHeader.scss deleted file mode 100644 index 7bbd2ca..0000000 --- a/src/gui/sharerHeader/_sharerHeader.scss +++ /dev/null @@ -1,59 +0,0 @@ -@mixin sharerHeader { - .sharer-header { - width: 100%; - height: 30px; - display: flex; - align-items: center; - justify-content: space-between; - margin-bottom: 21px; - - #header-icon-container { - height: calc(100% - 2px); - padding: 1px; - aspect-ratio: 1; - background-color: #f6f6f6; - border-radius: 7px; - - &:hover { - cursor: pointer; - } - - svg { - height: 100%; - aspect-ratio: inherit; - } - } - - #header-title { - font-family: "Inter", sans-serif; - width: calc(100% - 76px); - font-weight: 500; - font-size: 20px; - text-align: left; - display: inline-block; - white-space: nowrap; - overflow: hidden !important; - text-overflow: ellipsis; - } - - #header-close-icon { - height: 100%; - aspect-ratio: 1; - background-color: #f6f6f6; - border-radius: 7px; - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - - &:hover { - cursor: pointer; - } - - svg { - height: 100%; - aspect-ratio: 1; - } - } - } -} diff --git a/src/gui/sharerHeader/header.functions.ts b/src/gui/sharerHeader/header.functions.ts deleted file mode 100644 index fb24bbb..0000000 --- a/src/gui/sharerHeader/header.functions.ts +++ /dev/null @@ -1,36 +0,0 @@ -import elements from "../element"; -import { closeResizeObserver } from "../resizeObserver"; - -let continue_to_close = true; - -export function setContinueToCloseFalse() { - continue_to_close = false; -} - -export function closeSharer() { - if (continue_to_close) { - try { - elements.sharer_container().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().classList.add("hide"); - setTimeout(() => { - elements.sharer_by_KP().remove(); - closeResizeObserver(); - }, 100); - }, 300); - document.body.classList.remove("sharer-opened"); - - try { - ((sharer_button) => { - sharer_button.classList.remove("hide"); - })( - document.getElementById("sharer-btn-default") as HTMLElement - ); - } catch (error) {} - } catch (error) { - console.log(error); - } - } - - continue_to_close = true; -} diff --git a/src/gui/sharerRoot.ts b/src/gui/sharerRoot.ts deleted file mode 100644 index 4b9806f..0000000 --- a/src/gui/sharerRoot.ts +++ /dev/null @@ -1,87 +0,0 @@ -import j2h from "../j2h"; -import elements from "./element"; -import { resizeObserverAction, startResizeObserver } from "./resizeObserver"; -import { setApplistInterface } from "./sharerContent/content.functions"; -import { setFooterInterface } from "./sharerFooter/footer.functions"; -import { - closeSharer, - setContinueToCloseFalse, -} from "./sharerHeader/header.functions"; -import { openWebsite } from "./sharerWebsite"; -import svgs from "./svgs"; - -function setSharerRoot() { - const Sharer_By_KP = document.createElement("div"); - - j2h.setAttribute(Sharer_By_KP, { id: "sharer-by-KP", class: "hide" }); - - const sharer_root = j2h.setRoot(Sharer_By_KP); - - sharer_root.append( - j2h.element( - "div", - { id: "sharer-container", class: "hide" }, - j2h.element("div", { id: "sharer-window" }, [ - j2h.element("div", { class: "sharer-header" }, [ - j2h.element( - "div", - { id: "header-icon-container" }, - svgs.local.sharerIcon - ), - j2h.element("div", { id: "header-title" }, "Sharer by KP"), - j2h.element( - "div", - { id: "header-close-icon" }, - svgs.local.closeIcon - ), - ]), - j2h.element("div", { id: "sharer-content-main" }), - j2h.element( - "div", - { id: "sharer-footer" }, - j2h.element("div", { id: "sharer-footer-text" }) - ), - ]) - ) - ); - - document.body.prepend(Sharer_By_KP); - sharer_root.render(); -} - -export function openSharer() { - try { - (document.getElementById("sharer-by-KP") as HTMLElement).remove(); - } catch (error) {} - try { - ((sharer_button) => { - sharer_button.classList.add("hide"); - })(document.getElementById("sharer-btn-default") as HTMLElement); - } catch (error) {} - - setSharerRoot(); - - setTimeout(() => { - elements.sharer_by_KP().classList.remove("hide"); - elements.sharer_container().classList.remove("hide"); - }, 10); - - elements.sharer_window().onclick = setContinueToCloseFalse; - - elements.sharer_container().onclick = closeSharer; - elements.header_close_icon().onclick = closeSharer; - - [elements.header_icon_container(), elements.sharer_footer()].forEach( - (element) => { - element.onclick = () => openWebsite(); - } - ); - - setApplistInterface(); - - setFooterInterface(); - - resizeObserverAction(); - startResizeObserver(); - document.body.classList.add("sharer-opened"); -} diff --git a/src/gui/sharerWebsite.ts b/src/gui/sharerWebsite.ts deleted file mode 100644 index 44f6ba4..0000000 --- a/src/gui/sharerWebsite.ts +++ /dev/null @@ -1,3 +0,0 @@ -export function openWebsite(url = "https://patelka2211.github.io/sharer/") { - window.open(url, "_blank"); -} diff --git a/src/gui/svgs.ts b/src/gui/svgs.ts deleted file mode 100644 index a561973..0000000 --- a/src/gui/svgs.ts +++ /dev/null @@ -1,36 +0,0 @@ -import cdn from "../cdn"; -import j2h from "../j2h"; - -function getCDNsvgs(filename: string) { - return j2h.element("img", { - src: cdn.getPath(["assets", filename]), - }); -} - -const svgs = { - local: { - sharerIcon: ` `, - closeIcon: ` `, - arrowLeftIcon: ` `, - arrowRightIcon: ` `, - }, - cdn: (function (obj: { [_: string]: any }) { - [ - "wa", - "fb", - "tw", - "eml", - "lnkdn", - "pntrst", - "rdt", - "snpcht", - "koo", - "tg", - ].forEach((app) => { - obj[app] = getCDNsvgs(`${app}Icon.svg`); - }); - return obj; - })({}), -}; - -export default svgs; diff --git a/src/helper/cdn.ts b/src/helper/cdn.ts new file mode 100644 index 0000000..3c20f85 --- /dev/null +++ b/src/helper/cdn.ts @@ -0,0 +1,10 @@ +import { VERSION } from "../metadata"; + +export const cdn = { + url: `https://cdn.jsdelivr.net/gh/patelka2211/sharer@${VERSION}/`, + get: (paths: string[], fileName?: string) => { + let url = cdn.url + paths.join("/") + "/"; + if (fileName === undefined) return url; + return url + fileName; + }, +}; diff --git a/src/helper/formatURL.ts b/src/helper/formatURL.ts new file mode 100644 index 0000000..8e2e657 --- /dev/null +++ b/src/helper/formatURL.ts @@ -0,0 +1,21 @@ +export function formatURL(url: string) { + try { + const trimmedURL = url.trim(); + const hasProtocol = trimmedURL.includes("://"); + let formattedURL = trimmedURL; + + if (!hasProtocol) formattedURL = `https://${trimmedURL}`; + + const urlObj = new URL(formattedURL); + + if (!urlObj.host) { + urlObj.host = urlObj.pathname; + urlObj.pathname = "/"; + } + + return urlObj; + } catch (error) { + console.error("Invalid URL:", error); + return; + } +} diff --git a/src/helper/getCurrentThemeIcon.ts b/src/helper/getCurrentThemeIcon.ts new file mode 100644 index 0000000..87b7bb6 --- /dev/null +++ b/src/helper/getCurrentThemeIcon.ts @@ -0,0 +1,29 @@ +import { SVGParser } from "@patelka2211/dominar"; +import { + getCurrentUITheme, + setAutoTheme, + setDarkTheme, + setLightTheme, +} from "dynamic-colors"; +import autoModeIcon from "../svgs/auto-mode-icon"; +import darkModeIcon from "../svgs/dark-mode-icon"; +import lightModeIcon from "../svgs/light-mode-icon"; +import { readRecord, createRecord } from "../storage/main"; + +export function currentThemeIcon(updateTheme = false) { + let currentTheme = readRecord("Theme"); + if (currentTheme === undefined) { + currentTheme = getCurrentUITheme(); + createRecord("Theme", currentTheme); + } + + if (currentTheme === "auto") { + if (updateTheme) setAutoTheme(); + return SVGParser(autoModeIcon); + } else if (currentTheme === "dark") { + if (updateTheme) setDarkTheme(); + return SVGParser(darkModeIcon); + } + if (updateTheme) setLightTheme(); + return SVGParser(lightModeIcon); +} diff --git a/src/helper/openFeedback.ts b/src/helper/openFeedback.ts new file mode 100644 index 0000000..7cc0f9d --- /dev/null +++ b/src/helper/openFeedback.ts @@ -0,0 +1,7 @@ +import { openURL } from "./openURL"; + +export function openFeedback() { + openURL( + "https://kpverse.in/sharer/feedback?utm_source=sharer&utm_medium=feedback&utm_campaign=kpverse_sharer" + ); +} diff --git a/src/helper/openURL.ts b/src/helper/openURL.ts new file mode 100644 index 0000000..84bf793 --- /dev/null +++ b/src/helper/openURL.ts @@ -0,0 +1,9 @@ +export function openURL(url: string) { + window.open( + url, + "_blank", + `resizable=yes,width=${screen.width * 0.84},height=${ + screen.height * 0.84 + },top=${screen.height * 0.08},left=${screen.width * 0.08}` + ); +} diff --git a/src/helper/prepareURL.ts b/src/helper/prepareURL.ts new file mode 100644 index 0000000..7f67b32 --- /dev/null +++ b/src/helper/prepareURL.ts @@ -0,0 +1,10 @@ +import { share_text, share_url } from "../variables/main"; + +export function prepareURL(urlFormat: string) { + if (share_text !== undefined && share_url !== undefined) { + urlFormat = urlFormat.replace(`{%text%}`, share_text); + urlFormat = urlFormat.replace(`{%url%}`, share_url.toString()); + } + + return urlFormat; +} diff --git a/src/gui/sharerContent/QRcode.js b/src/helper/qrcode.js similarity index 96% rename from src/gui/sharerContent/QRcode.js rename to src/helper/qrcode.js index 6f60ee4..b5b2d25 100644 --- a/src/gui/sharerContent/QRcode.js +++ b/src/helper/qrcode.js @@ -1,3 +1,5 @@ +/** https://github.com/datalog/qrcode-svg under MIT license */ +"use strict"; function QRCode(r) { var n, t, @@ -459,11 +461,11 @@ function QRCode(r) { l = "", g = "string" == typeof r ? { msg: r } : r || {}, d = g.pal || ["#000"], - // p = h(g.dim) || 256, - p = "100%", C = [1, 0, 0, 1, (c = (c = h(g.pad)) > -1 ? c : 4), c], - w = n((w = d[0])) ? w : "#000", - b = n((b = d[1])) ? b : 0, + // w = n((w = d[0])) ? w : "#000", + // b = n((b = d[1])) ? b : 0, + w = d[0] !== undefined ? d[0] : "#000", + b = d[1] !== undefined ? d[1] : 0, A = g.vrb ? 0 : 1; for ( L(g.msg || "", m[g.ecl] || m.M, 0 == g.ecb ? 0 : 1, g.mtx), @@ -492,8 +494,9 @@ function QRCode(r) { return ( (o = t("svg", { viewBox: [0, 0, v, v].join(" "), - width: p, - height: p, + width: "100%", + style: "aspect-ratio: 1;", + class: "sharer-qr", fill: w, "shape-rendering": "crispEdges", xmlns: s, @@ -509,19 +512,12 @@ function QRCode(r) { })(); } -export function qr_svg(input_data) { - let svgNode = QRCode({ - msg: input_data, - // dim: 256, - pad: 0, - // pad: 40, - // mtx: 7, - // ecl: "H", - // ecb: 0, - pal: ["#000000", "#ffffff"], - // vrb: 1, - }), - _ = new XMLSerializer(); - - return `data:image/svg+xml;base64,${btoa(_.serializeToString(svgNode))}`; +export function createQR(text) { + return QRCode({ + msg: text, + pad: 0, + ecl: "H", + ecb: 1, + pal: ["var(--sharer-dc-onSecondaryContainer)"], + }).outerHTML; } diff --git a/src/helper/zIndex.ts b/src/helper/zIndex.ts new file mode 100644 index 0000000..1e1f19d --- /dev/null +++ b/src/helper/zIndex.ts @@ -0,0 +1,11 @@ +export function getZIndex() { + return Math.min( + Math.max( + ...Array.from(document.querySelectorAll("body *"), (el) => + parseFloat(window.getComputedStyle(el).zIndex) + ).filter((zIndex) => !Number.isNaN(zIndex)), + 0 + ) + 50, + 2147483647 + ); +} diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..1b8f894 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,54 @@ +// import { render, tag } from "@patelka2211/dominar"; +// import { readRecord, createRecord } from "./storage/main"; +// import style from "./style"; + +// // +// function runAfterLoad() { +// render( +// document.head, +// tag("style", { +// attributes: { id: "kpverse-sharer-css" }, +// children: style, +// }), +// { +// clearBeforeRender: false, +// insertType: "append", +// } +// ).then(() => { +// // Initialization code +// let appIds = readRecord("AppsIdList"); +// if (appIds === undefined) { +// createRecord("AppsIdList", [ +// "x", +// "wa", +// "fb", +// "tg", +// "lnkdn", +// "gml", +// "rdt", +// "pntrst", +// "snpcht", +// ]); +// } + +// // // Activate Sharer button by default. +// // activate(); + +// // Remove `runAfterLoad` function after document is loaded. +// setTimeout(() => { +// removeEventListener("load", runAfterLoad); +// }, 1000); +// }); +// } + +// addEventListener("load", runAfterLoad); +// // + +console.log( + "Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer." +); + +export { closeSharer as close } from "./operations/closeSharer"; +export { openSharer as open } from "./operations/openSharer"; +export { button } from "./components/button/buttonObject"; +export { setColor } from "./variables/color"; diff --git a/src/intialization/intializeIfNot.ts b/src/intialization/intializeIfNot.ts new file mode 100644 index 0000000..a475f8f --- /dev/null +++ b/src/intialization/intializeIfNot.ts @@ -0,0 +1,38 @@ +import { render, tag } from "@patelka2211/dominar"; +import { readRecord, createRecord } from "../storage/main"; +import style from "../style"; +import { sharerUninitialized, setSharerUninitialized } from "./main"; + +export function initializeIfNot() { + if (sharerUninitialized === true) { + render( + document.head, + tag("style", { + attributes: { id: "kpverse-sharer-css" }, + children: style, + }), + { + clearBeforeRender: false, + insertType: "append", + } + ).then(() => { + let appIds = readRecord("AppsIdList"); + if (appIds === undefined) { + createRecord("AppsIdList", [ + "x", + "wa", + "mstdn", + "tg", + "lnkdn", + "fb", + "gml", + "rdt", + "pntrst", + "snpcht", + ]); + } + + setSharerUninitialized(undefined); + }); + } +} diff --git a/src/intialization/main.ts b/src/intialization/main.ts new file mode 100644 index 0000000..8f59d0e --- /dev/null +++ b/src/intialization/main.ts @@ -0,0 +1,5 @@ +export let sharerUninitialized: undefined | true = true; + +export function setSharerUninitialized(newValue: undefined | true) { + sharerUninitialized = newValue; +} diff --git a/src/j2h.ts b/src/j2h.ts deleted file mode 100644 index 3564ffc..0000000 --- a/src/j2h.ts +++ /dev/null @@ -1,260 +0,0 @@ -/** - * Copyright (c) 2023 Kartavya Patel - * Repository url: https://github.com/patelka2211/json2html - */ -type BooleanAttributeName = string; -type PairedAttribute = { - [_: string]: string | number; -}; -type CompositeAttribute = [ - PairedAttribute, - BooleanAttributeName | BooleanAttributeName[] -]; -type Attributes = - | BooleanAttributeName - | BooleanAttributeName[] - | CompositeAttribute - | PairedAttribute; -type ValidValue = string | ValidPair | ValidPair[]; -type ValidPair = { - [_: string]: [Attributes, ValidValue]; -}; - -interface elements { - a: "a"; - abbr: "abbr"; - address: "address"; - area: "area"; - article: "article"; - aside: "aside"; - audio: "audio"; - b: "b"; - base: "base"; - bdi: "bdi"; - bdo: "bdo"; - blockquote: "blockquote"; - body: "body"; - br: "br"; - button: "button"; - canvas: "canvas"; - caption: "caption"; - cite: "cite"; - code: "code"; - col: "col"; - colgroup: "colgroup"; - data: "data"; - datalist: "datalist"; - dd: "dd"; - del: "del"; - details: "details"; - dfn: "dfn"; - dialog: "dialog"; - div: "div"; - dl: "dl"; - dt: "dt"; - em: "em"; - embed: "embed"; - fieldset: "fieldset"; - figcaption: "figcaption"; - figure: "figure"; - footer: "footer"; - form: "form"; - h1: "h1"; - h2: "h2"; - h3: "h3"; - h4: "h4"; - h5: "h5"; - h6: "h6"; - head: "head"; - header: "header"; - hgroup: "hgroup"; - hr: "hr"; - html: "html"; - i: "i"; - iframe: "iframe"; - img: "img"; - input: "input"; - ins: "ins"; - kbd: "kbd"; - label: "label"; - legend: "legend"; - li: "li"; - link: "link"; - main: "main"; - map: "map"; - mark: "mark"; - menu: "menu"; - meta: "meta"; - meter: "meter"; - nav: "nav"; - noscript: "noscript"; - object: "object"; - ol: "ol"; - optgroup: "optgroup"; - option: "option"; - output: "output"; - p: "p"; - picture: "picture"; - pre: "pre"; - progress: "progress"; - q: "q"; - rp: "rp"; - rt: "rt"; - ruby: "ruby"; - s: "s"; - samp: "samp"; - script: "script"; - section: "section"; - select: "select"; - slot: "slot"; - small: "small"; - source: "source"; - span: "span"; - strong: "strong"; - style: "style"; - sub: "sub"; - summary: "summary"; - sup: "sup"; - table: "table"; - tbody: "tbody"; - td: "td"; - template: "template"; - textarea: "textarea"; - tfoot: "tfoot"; - th: "th"; - thead: "thead"; - time: "time"; - title: "title"; - tr: "tr"; - track: "track"; - u: "u"; - ul: "ul"; - var: "var"; - video: "video"; - wbr: "wbr"; -} - -class json2html { - list: ValidPair[] = []; - constructor(readonly root: HTMLElement) {} - - append(input: ValidPair): this { - this.list.push(input); - return this; - } - render( - input: ValidPair[] = this.list, - root: HTMLElement = this.root, - clearRoot: boolean = true - ): void { - if (clearRoot) root.innerHTML = ""; - input.forEach((item) => { - for (const key in item) { - if (Object.prototype.hasOwnProperty.call(item, key)) { - const element = document.createElement(key); - const value = item[key]; - - j2h.setAttribute(element, value[0]); - - if (typeof value[1] == "string") { - element.innerHTML = value[1]; - } else if ( - typeof (value[1] as ValidPair | ValidPair[]) == "object" - ) { - if ((value[1] as ValidPair).length === undefined) { - this.render( - [value[1] as ValidPair], - element, - false - ); - } else if ( - (value[1] as ValidPair[]).length !== undefined - ) { - this.render( - value[1] as ValidPair[], - element, - false - ); - } - } - - root.appendChild(element); - } - } - }); - } -} - -const j2h = { - setRoot: (root: HTMLElement) => { - return new json2html(root); - }, - - element: ( - tagName: Tag, - attributes: Attributes = {}, - innerHTML: ValidValue = "" - ): ValidPair => { - return { - [tagName]: [attributes, innerHTML], - }; - }, - - setAttribute: ( - element: HTMLElement | json2html, - attributes: Attributes - ): HTMLElement => { - if (element instanceof json2html) { - element = element.root; - } - - if (typeof attributes === "string") { - element.setAttribute(attributes as string, ""); - } else if ( - typeof attributes === "object" && - attributes.length !== undefined && - typeof (attributes as string[])[0] === "string" - ) { - for ( - let index = 0; - index < (attributes as string[]).length; - index++ - ) { - const item = (attributes as string[])[index]; - element.setAttribute(item, ""); - } - } else if ((attributes as PairedAttribute).length === undefined) { - for (const key in attributes as - | CompositeAttribute - | PairedAttribute) { - element.setAttribute( - key, - (attributes as PairedAttribute)[key].toString() - ); - } - } else { - (attributes as CompositeAttribute).map((item) => { - if ((item as PairedAttribute).length === undefined) { - let pairedAttribute: PairedAttribute = - item as PairedAttribute; - for (const key in pairedAttribute) { - (element as HTMLElement).setAttribute( - key, - pairedAttribute[key].toString() - ); - } - } else if (typeof item === "object") { - (item as BooleanAttributeName[]).map((item) => { - (element as HTMLElement).setAttribute(item, ""); - }); - } else { - (element as HTMLElement).setAttribute(item, ""); - } - }); - } - - return element; - }, -}; - -export default j2h; diff --git a/src/metadata.ts b/src/metadata.ts new file mode 100644 index 0000000..67cd59d --- /dev/null +++ b/src/metadata.ts @@ -0,0 +1,4 @@ +/** + * Sharer version. + */ +export const VERSION = "0.1.0"; diff --git a/src/operations/closeSharer.ts b/src/operations/closeSharer.ts new file mode 100644 index 0000000..0b9732e --- /dev/null +++ b/src/operations/closeSharer.ts @@ -0,0 +1,38 @@ +import { kpverseSharerElement } from "../elements/kpverseSharer"; +import { stopObservation } from "../resize-observer/stop"; +import { insertButton } from "../components/button/insertButton"; +import { isSharerButtonActive } from "../components/button/main"; +import { setShareURL, setShareText } from "../variables/main"; +import { + isSharerOpen, + changeSharerOpenStatus, + setContinueToClose, +} from "./main"; + +/** + * Closes the Sharer. + * + * @returns {void} + */ +export function closeSharer(): void { + if (isSharerOpen === undefined) return; + + setShareURL(undefined); + setShareText(undefined); + + let kpverseSharer = kpverseSharerElement(); + + if (kpverseSharer !== null) { + kpverseSharer.classList.add("hide"); + setTimeout(() => { + if (kpverseSharer !== null) kpverseSharer.remove(); + setTimeout(() => { + if (isSharerButtonActive === true) insertButton(); + document.body.classList.remove("sharer-is-open"); + changeSharerOpenStatus(undefined); + setContinueToClose(undefined); + stopObservation(); + }, 1); + }, 400); + } +} diff --git a/src/operations/main.ts b/src/operations/main.ts new file mode 100644 index 0000000..772a941 --- /dev/null +++ b/src/operations/main.ts @@ -0,0 +1,11 @@ +export let continueToClose: boolean | undefined = undefined; + +export function setContinueToClose(newValue: boolean | undefined) { + continueToClose = newValue; +} + +export let isSharerOpen: true | undefined = undefined; + +export function changeSharerOpenStatus(newStatus: true | undefined) { + isSharerOpen = newStatus; +} diff --git a/src/operations/openSharer.ts b/src/operations/openSharer.ts new file mode 100644 index 0000000..511c02b --- /dev/null +++ b/src/operations/openSharer.ts @@ -0,0 +1,78 @@ +import { render, attachEventListeners } from "@patelka2211/dominar"; +import { isSharerButtonActive } from "../components/button/main"; +import { removeButton } from "../components/button/removeButton"; +import { kpverseSharer } from "../components/root/main"; +import { kpverseSharerElement } from "../elements/kpverseSharer"; +import { poweredBySharerElement } from "../elements/poweredBySharer"; +import { openURL } from "../helper/openURL"; +import { getZIndex } from "../helper/zIndex"; +import { initializeIfNot } from "../intialization/intializeIfNot"; +import { sharerUninitialized } from "../intialization/main"; +import { startObservation } from "../resize-observer/start"; +import { setShareURL, setShareText } from "../variables/main"; +import { isSharerOpen, changeSharerOpenStatus } from "./main"; + +/** + * Opens the Sharer with the specified options. + * + * @param {object} [option] - Optional configuration for the Sharer. + * @param {string} [option.url] - The URL to be shared. + * @param {string} [option.text] - The text to be shared. + * @returns {void} + */ +export function openSharer(option?: { url?: string; text?: string }): void { + if (isSharerOpen === true) return; + + if (sharerUninitialized === true) initializeIfNot(); + + if (option !== undefined) { + let { url, text } = option; + if (url !== undefined) setShareURL(url); + else setShareURL(location.href); + + if (text !== undefined) setShareText(text); + else setShareText(document.title); + } else { + setShareURL(location.href); + setShareText(document.title); + } + + let timeout = 1; + + if (isSharerButtonActive === true) { + removeButton(); + timeout = 400; + } + + setTimeout(() => { + render(document.body, kpverseSharer(), { + clearBeforeRender: false, + insertType: "prepend", + }).then(() => { + setTimeout(() => { + let kpverseSharer = kpverseSharerElement(); + + if (kpverseSharer !== null) { + kpverseSharer.style.zIndex = `${getZIndex()}`; + kpverseSharer.classList.remove("hide"); + } + + document.body.classList.add("sharer-is-open"); + + let poweredBySharer = poweredBySharerElement(); + if (poweredBySharer) + attachEventListeners(poweredBySharer, { + click() { + openURL( + "https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer" + ); + }, + }); + + startObservation(); + + changeSharerOpenStatus(true); + }, 1); + }); + }, timeout); +} diff --git a/src/resize-observer/main.ts b/src/resize-observer/main.ts new file mode 100644 index 0000000..0c42063 --- /dev/null +++ b/src/resize-observer/main.ts @@ -0,0 +1,5 @@ +export let lock: true | undefined = undefined; + +export function setLock(newValue: true | undefined) { + lock = newValue; +} diff --git a/src/resize-observer/observer.ts b/src/resize-observer/observer.ts new file mode 100644 index 0000000..e5abc52 --- /dev/null +++ b/src/resize-observer/observer.ts @@ -0,0 +1,16 @@ +import { kpverseSharerElement } from "../elements/kpverseSharer"; +import { lock, setLock } from "./main"; + +export function observer() { + if (lock === true) return; + setLock(true); + + setTimeout(() => { + let kpverseSharer = kpverseSharerElement(); + + if (kpverseSharer !== null) + kpverseSharer.style.height = `${document.documentElement.clientHeight}px`; + + setLock(undefined); + }, 500); +} diff --git a/src/resize-observer/start.ts b/src/resize-observer/start.ts new file mode 100644 index 0000000..7ac528e --- /dev/null +++ b/src/resize-observer/start.ts @@ -0,0 +1,11 @@ +import { kpverseSharerElement } from "../elements/kpverseSharer"; +import { observer } from "./observer"; + +export function startObservation() { + let kpverseSharer = kpverseSharerElement(); + + if (kpverseSharer !== null) + kpverseSharer.style.height = `${document.documentElement.clientHeight}px`; + + addEventListener("resize", observer); +} diff --git a/src/resize-observer/stop.ts b/src/resize-observer/stop.ts new file mode 100644 index 0000000..67340e9 --- /dev/null +++ b/src/resize-observer/stop.ts @@ -0,0 +1,5 @@ +import { observer } from "./observer"; + +export function stopObservation() { + window.removeEventListener("resize", observer); +} diff --git a/src/sharerByKP.scss b/src/sharerByKP.scss deleted file mode 100644 index b313834..0000000 --- a/src/sharerByKP.scss +++ /dev/null @@ -1,51 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"); - -@import "./gui/sharerContainer"; - -body { - margin: 0; - - #sharer-by-KP { - box-sizing: content-box; - * { - box-sizing: content-box; - } - z-index: 2147483647; - font-family: "Inter", sans-serif; - position: fixed; - width: 100vw; - height: 100vh; - top: 0px; - left: 0px; - pointer-events: all; - opacity: 1; - background-color: rgba(0, 0, 0, 0.32); - backdrop-filter: blur(6px); - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - transition: opacity 0.2s ease, background-color 0.2s ease, - backdrop-filter 0.2s ease; - - &.hide { - opacity: 0; - background-color: rgba(0, 0, 0, 0); - backdrop-filter: blur(0px); - } - - @include sharerContainer(); - } - - &.sharer-opened { - overflow: hidden; - } -} - -@media (max-width: 500px) { - body { - #sharer-by-KP { - @include sharerContainer_mobile(); - } - } -} diff --git a/src/sharer_button/sharer_button.scss b/src/sharer_button/sharer_button.scss deleted file mode 100644 index ebafb12..0000000 --- a/src/sharer_button/sharer_button.scss +++ /dev/null @@ -1,31 +0,0 @@ -body { - margin: 0; - - #sharer-btn-default { - position: fixed; - bottom: 20px; - right: 20px; - width: 48px; - height: 48px; - z-index: 2147483646; - box-shadow: 0 16px 64px 0 rgba(40, 40, 40, 0.32); - border-radius: 11.8px; - opacity: 1; - transition: opacity 0.4s ease, bottom 0.4s ease, right 0.4s ease, - width 0.4s ease, height 0.4s ease, box-shadow 0.4s ease; - pointer-events: all; - &:hover { - cursor: pointer; - box-shadow: 0 16px 64px 0 rgba(40, 40, 40, 0.48); - bottom: 16px; - right: 16px; - width: 56px; - height: 56px; - } - &.hide { - opacity: 0; - bottom: -68px; - pointer-events: none; - } - } -} diff --git a/src/sharer_button/sharer_button.ts b/src/sharer_button/sharer_button.ts deleted file mode 100644 index 24d8b55..0000000 --- a/src/sharer_button/sharer_button.ts +++ /dev/null @@ -1,27 +0,0 @@ -import cdn from "../cdn"; - -function loadSharerButton() { - document.head.appendChild( - ((element) => { - element.id = "sharer_button_css_file"; - element.rel = "stylesheet"; - element.href = cdn.getPath(["bundle", "sharer_button.css"]); - return element; - })(document.createElement("link") as HTMLLinkElement) - ); - - let sharer_button = document.createElement("img"); - sharer_button.src = cdn.getPath(["assets", "sharerIcon.svg"]); - sharer_button.id = "sharer-btn-default"; - sharer_button.classList.add("hide"); - sharer_button.setAttribute( - "onclick", - `try { sharer.setDefaultURL().setDefaultText().open(); } catch { alert('It appears that the Sharer module has not been fully loaded at this time.'); }` - ); - document.body.appendChild(sharer_button); - setTimeout(() => { - sharer_button.classList.remove("hide"); - }, 400); -} - -window.addEventListener("load", loadSharerButton); diff --git a/src/sharer_esm.ts b/src/sharer_esm.ts deleted file mode 100644 index 0544299..0000000 --- a/src/sharer_esm.ts +++ /dev/null @@ -1,18 +0,0 @@ -import sharer_functions from "./sharer_functions"; - -// Destructuring all the functions -const setSharerURL = sharer_functions.setURL, - setDefaultSharerURL = sharer_functions.setDefaultURL, - setSharerText = sharer_functions.setText, - setDefaultSharerText = sharer_functions.setDefaultText, - openSharer = sharer_functions.open, - closeSharer = sharer_functions.close; - -export { - setSharerURL, - setDefaultSharerURL, - setSharerText, - setDefaultSharerText, - openSharer, - closeSharer, -}; diff --git a/src/sharer_functions.ts b/src/sharer_functions.ts deleted file mode 100644 index 58ffd4a..0000000 --- a/src/sharer_functions.ts +++ /dev/null @@ -1,48 +0,0 @@ -import cdn from "./cdn"; -import { - setDefaultSharerText, - setDefaultSharerURL, - setSharerText, - setSharerURL, -} from "./gui/sharerContent/content.functions"; -import { closeSharer } from "./gui/sharerHeader/header.functions"; -import { openSharer } from "./gui/sharerRoot"; -import j2h from "./j2h"; - -export default { - setURL: function (url: string) { - setSharerURL(url); - return this; - }, - setDefaultURL: function () { - setDefaultSharerURL(); - return this; - }, - setText: function (text: string) { - setSharerText(text); - return this; - }, - setDefaultText: function () { - setDefaultSharerText(); - return this; - }, - open: function () { - openSharer(); - }, - close: function () { - closeSharer(); - }, -}; - -// Adding Sharer css programmatically -document.head.appendChild( - j2h.setAttribute(document.createElement("link"), { - id: "sharer_css_file", - rel: "stylesheet", - href: cdn.getPath(["bundle", "sharerByKP.css"]), - }) -); - -try { - localStorage.removeItem("sharer_deployment_sha"); // To be removed after some time -} catch (error) {} diff --git a/src/sharer_iife.ts b/src/sharer_iife.ts deleted file mode 100644 index e68f325..0000000 --- a/src/sharer_iife.ts +++ /dev/null @@ -1,3 +0,0 @@ -import sharer_functions from "./sharer_functions"; - -export default sharer_functions; diff --git a/src/storage/basicDecrypt.ts b/src/storage/basicDecrypt.ts new file mode 100644 index 0000000..9b06026 --- /dev/null +++ b/src/storage/basicDecrypt.ts @@ -0,0 +1,7 @@ +export function basicDecrypt(encrypted: string) { + try { + return atob(encrypted); + } catch (error) { + return encrypted; + } +} diff --git a/src/storage/basicEncrypt.ts b/src/storage/basicEncrypt.ts new file mode 100644 index 0000000..d6dbdf8 --- /dev/null +++ b/src/storage/basicEncrypt.ts @@ -0,0 +1,7 @@ +export function basicEncrypt(plainText: string) { + try { + return btoa(plainText); + } catch (error) { + return plainText; + } +} diff --git a/src/storage/create.ts b/src/storage/create.ts new file mode 100644 index 0000000..f613fab --- /dev/null +++ b/src/storage/create.ts @@ -0,0 +1,16 @@ +import { basicEncrypt } from "./basicEncrypt"; +import { storageKeyFormat } from "./storageKeyFormat"; + +export function __storageCreate( + recordName: string, + recordValue: string | object +) { + recordName = storageKeyFormat(recordName); + if (typeof recordValue === "object") + recordValue = JSON.stringify(recordValue); + recordValue = basicEncrypt(recordValue); + localStorage.setItem(recordName, recordValue); + return { + [recordName]: recordValue, + }; +} diff --git a/src/storage/delete.ts b/src/storage/delete.ts new file mode 100644 index 0000000..9c41cd7 --- /dev/null +++ b/src/storage/delete.ts @@ -0,0 +1,6 @@ +import { storageKeyFormat } from "./storageKeyFormat"; + +export function __storageDelete(recordName: string) { + recordName = storageKeyFormat(recordName); + localStorage.removeItem(recordName); +} diff --git a/src/storage/main.ts b/src/storage/main.ts new file mode 100644 index 0000000..98a58ee --- /dev/null +++ b/src/storage/main.ts @@ -0,0 +1,40 @@ +import { render } from "@patelka2211/dominar"; +import { sharerControlButtonLeftElement } from "../elements/sharerControlButtonLeft"; +import { currentThemeIcon } from "../helper/getCurrentThemeIcon"; +import { isSharerOpen } from "../operations/main"; +import { sharerDynamicColors } from "../variables/main"; +import { basicDecrypt } from "./basicDecrypt"; +import { __storageCreate } from "./create"; +import { __storageDelete } from "./delete"; +import { __storageRead } from "./read"; +import { storageKeyFormat } from "./storageKeyFormat"; +import { __storageUpdate } from "./update"; + +export { + __storageCreate as createRecord, + __storageRead as readRecord, + __storageUpdate as updateRecord, + __storageDelete as deleteRecord, +}; + +addEventListener("storage", (ev) => { + ev.preventDefault(); + if (ev.key === storageKeyFormat("Color")) { + let { newValue } = ev; + if (newValue) + try { + sharerDynamicColors?.setColor(basicDecrypt(newValue)); + } catch (error) { + console.log(error); + } + } else if (ev.key === storageKeyFormat("Theme")) { + let { newValue } = ev; + if (newValue) { + let themeIcon = currentThemeIcon(true); + if (isSharerOpen) { + let button = sharerControlButtonLeftElement(); + if (button) render(button, themeIcon); + } + } + } +}); diff --git a/src/storage/read.ts b/src/storage/read.ts new file mode 100644 index 0000000..a4eb1b8 --- /dev/null +++ b/src/storage/read.ts @@ -0,0 +1,14 @@ +import { basicDecrypt } from "./basicDecrypt"; +import { storageKeyFormat } from "./storageKeyFormat"; + +export function __storageRead(recordName: string) { + recordName = storageKeyFormat(recordName); + let recordValue = localStorage.getItem(recordName); + if (recordValue === null) return; + recordValue = basicDecrypt(recordValue); + try { + return JSON.parse(recordValue) as object; + } catch (error) { + return recordValue; + } +} diff --git a/src/storage/storageKeyFormat.ts b/src/storage/storageKeyFormat.ts new file mode 100644 index 0000000..395ee7d --- /dev/null +++ b/src/storage/storageKeyFormat.ts @@ -0,0 +1,3 @@ +export function storageKeyFormat(param: string) { + return `kpverseSharer${param}`; +} diff --git a/src/storage/update.ts b/src/storage/update.ts new file mode 100644 index 0000000..a8a71d3 --- /dev/null +++ b/src/storage/update.ts @@ -0,0 +1,3 @@ +import { __storageCreate } from "./create"; + +export { __storageCreate as __storageUpdate }; diff --git a/src/style.scss b/src/style.scss new file mode 100644 index 0000000..ae5b68f --- /dev/null +++ b/src/style.scss @@ -0,0 +1,20 @@ +@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap"); +@import "./components/button/style"; +@import "./components/root/style"; + +body { + margin: 0; + + &.sharer-is-open { + overflow: hidden; + } + + @include sharerButton(); + @include kpverseSharer(); +} + +@media (max-width: 434px) { + body { + @include kpverseSharerMaxWidth434px(); + } +} diff --git a/src/style.ts b/src/style.ts new file mode 100644 index 0000000..448cac7 --- /dev/null +++ b/src/style.ts @@ -0,0 +1 @@ +export default `@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}`; diff --git a/src/svgs/applist-icon.ts b/src/svgs/applist-icon.ts new file mode 100644 index 0000000..214a070 --- /dev/null +++ b/src/svgs/applist-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/auto-mode-icon.ts b/src/svgs/auto-mode-icon.ts new file mode 100644 index 0000000..5130aea --- /dev/null +++ b/src/svgs/auto-mode-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/close-icon.ts b/src/svgs/close-icon.ts new file mode 100644 index 0000000..a1e7364 --- /dev/null +++ b/src/svgs/close-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/dark-mode-icon.ts b/src/svgs/dark-mode-icon.ts new file mode 100644 index 0000000..1da1155 --- /dev/null +++ b/src/svgs/dark-mode-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/light-mode-icon.ts b/src/svgs/light-mode-icon.ts new file mode 100644 index 0000000..ed1d129 --- /dev/null +++ b/src/svgs/light-mode-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/open-link-icon.ts b/src/svgs/open-link-icon.ts new file mode 100644 index 0000000..810c2ea --- /dev/null +++ b/src/svgs/open-link-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/powered-by-sharer.ts b/src/svgs/powered-by-sharer.ts new file mode 100644 index 0000000..f724452 --- /dev/null +++ b/src/svgs/powered-by-sharer.ts @@ -0,0 +1 @@ +export default ` Sharer from KPVERSE `; diff --git a/src/svgs/qr-icon.ts b/src/svgs/qr-icon.ts new file mode 100644 index 0000000..120ab07 --- /dev/null +++ b/src/svgs/qr-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/svgs/sharer-icon.ts b/src/svgs/sharer-icon.ts new file mode 100644 index 0000000..b953d63 --- /dev/null +++ b/src/svgs/sharer-icon.ts @@ -0,0 +1 @@ +export default ` `; diff --git a/src/variables/color.ts b/src/variables/color.ts new file mode 100644 index 0000000..f9316fa --- /dev/null +++ b/src/variables/color.ts @@ -0,0 +1,25 @@ +import { closeSharer } from "../operations/closeSharer"; +import { openSharer } from "../operations/openSharer"; +import { updateRecord } from "../storage/main"; +import { sharerDynamicColors } from "./main"; + +/** + * Sets the color to a new value. + * + * @param {string} newColor - The new color value. + * @returns {object} - An object with open and close functions. + * @property {function} open - The function to open the Sharer. + * @property {function} close - The function to close the Sharer. + */ +export function setColor(newColor: string): object { + try { + sharerDynamicColors?.setColor(newColor); + updateRecord("Color", newColor); + } catch (error) { + console.log(error); + } + return { + open: openSharer, + close: closeSharer, + }; +} diff --git a/src/variables/main.ts b/src/variables/main.ts new file mode 100644 index 0000000..0c46fd9 --- /dev/null +++ b/src/variables/main.ts @@ -0,0 +1,45 @@ +import { DynamicColorsType, create, getInstanceByName } from "dynamic-colors"; +import { formatURL } from "../helper/formatURL"; +import { currentThemeIcon } from "../helper/getCurrentThemeIcon"; +import { readRecord, createRecord } from "../storage/main"; + +export let share_url: URL | undefined = undefined; + +export function setShareURL(newURL: string | undefined) { + if (newURL !== undefined) + try { + let temp_url = formatURL(newURL); + if (temp_url !== undefined) share_url = temp_url; + else share_url = new URL(location.href); + } catch (error) { + console.log(error); + share_url = new URL(location.href); + } + else share_url = newURL; +} + +export let share_text: string | undefined = undefined; + +export function setShareText(newText: string | undefined) { + share_text = newText; +} + +export let sharerDynamicColors: DynamicColorsType | undefined = undefined; + +let color = readRecord("Color"); +if (typeof color !== "string") { + color = "#2596D1"; + // color = "#5900ff"; + createRecord("Color", color); +} + +try { + sharerDynamicColors = create("sharer", color); +} catch (error) { + sharerDynamicColors = getInstanceByName("sharer"); + sharerDynamicColors?.setColor(color); +} + +sharerDynamicColors?.restrictRemove(); + +currentThemeIcon(true); diff --git a/svgs/fb-icon.svg b/svgs/fb-icon.svg new file mode 100644 index 0000000..199eedb --- /dev/null +++ b/svgs/fb-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/gml-icon.svg b/svgs/gml-icon.svg new file mode 100644 index 0000000..03e4610 --- /dev/null +++ b/svgs/gml-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/koo-icon.svg b/svgs/koo-icon.svg new file mode 100644 index 0000000..153944b --- /dev/null +++ b/svgs/koo-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/lnkdn-icon.svg b/svgs/lnkdn-icon.svg new file mode 100644 index 0000000..c4c1ce2 --- /dev/null +++ b/svgs/lnkdn-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/mstdn-icon.svg b/svgs/mstdn-icon.svg new file mode 100644 index 0000000..69407df --- /dev/null +++ b/svgs/mstdn-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/pntrst-icon.svg b/svgs/pntrst-icon.svg new file mode 100644 index 0000000..ca8321c --- /dev/null +++ b/svgs/pntrst-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/rdt-icon.svg b/svgs/rdt-icon.svg new file mode 100644 index 0000000..e89df3c --- /dev/null +++ b/svgs/rdt-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/snpcht-icon.svg b/svgs/snpcht-icon.svg new file mode 100644 index 0000000..ac75825 --- /dev/null +++ b/svgs/snpcht-icon.svg @@ -0,0 +1 @@ + diff --git a/svgs/tg-icon.svg b/svgs/tg-icon.svg new file mode 100644 index 0000000..4bd4df1 --- /dev/null +++ b/svgs/tg-icon.svg @@ -0,0 +1 @@ + diff --git a/svgs/wa-icon.svg b/svgs/wa-icon.svg new file mode 100644 index 0000000..131c514 --- /dev/null +++ b/svgs/wa-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svgs/x-icon.svg b/svgs/x-icon.svg new file mode 100644 index 0000000..14a5070 --- /dev/null +++ b/svgs/x-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index b72b436..32ce3d8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,14 +1,14 @@ { "compilerOptions": { - "target": "es2016", - "module": "ES2015", + "target": "ES5", + "lib": ["ES2021", "DOM"], + "module": "ESNext", "rootDir": "./src", - "outDir": "./dist", - "esModuleInterop": true, - "forceConsistentCasingInFileNames": true, + "allowJs": true, + "outDir": "./lib", "strict": true, - "skipLibCheck": true, - "allowJs": true + "moduleResolution": "Bundler" }, - "include": ["src"] + "include": ["src"], + "exclude": ["node_modules", "test"] } diff --git a/website-stuff/script.js b/website-stuff/script.js deleted file mode 100644 index 55bd33c..0000000 --- a/website-stuff/script.js +++ /dev/null @@ -1,27 +0,0 @@ -window.addEventListener("load", () => { - document.getElementById(`${"iife"}-copy-btn`).onclick = function () { - (async (element) => { - element.select(); - try { - await navigator.clipboard.writeText(element.value); - this.innerHTML = ` `; - setTimeout(() => { - this.innerHTML = ` `; - }, 1600); - } catch (error) { - alert(`Failed to copy: ${error}`); - } - })(document.getElementById(`${"iife"}-url-input`)); - }; - ((element) => { - element.addEventListener( - "keyup", - ((temporary_function) => { - temporary_function(); - return temporary_function; - })(function () { - element.value = ``; - }) - ); - })(document.getElementById(`${"iife"}-url-input`)); -}); diff --git a/website-stuff/style.css b/website-stuff/style.css deleted file mode 100644 index 3e8ee70..0000000 --- a/website-stuff/style.css +++ /dev/null @@ -1 +0,0 @@ -@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";body{font-family:"Inter",sans-serif;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:space-around;min-width:100vw;min-height:100vh}body #main-container{width:80%;max-width:460px;padding:20px;display:flex;flex-direction:column;align-items:center}body #main-container #icon-n-title{display:flex;align-items:center;margin-bottom:24px}body #main-container #icon-n-title #sharer-icon{width:48px;aspect-ratio:1;box-shadow:0 8px 32px 0 rgba(89,0,255,.16);border-radius:12px;margin-right:16px}body #main-container #icon-n-title #sharer-title{margin:0;padding:0;font-size:32px;font-weight:600;text-align:center}body #main-container #sharer-preview-img{width:84%;margin-bottom:32px}body #main-container #sharer-description{margin:0;margin-bottom:16px;padding:0;color:#5f5f5f;text-align:center}body #main-container #notion-link{margin:0;padding:0;text-align:center;color:#5900ff;margin-bottom:16px;text-decoration:none}body #main-container .js-files{width:calc(100% - 20px);margin-bottom:10px;padding:10px;display:flex;flex-direction:column;align-items:center;border-radius:16px;background-color:#f6f6f6}body #main-container .js-files .file-info{margin:0;text-align:center}body #main-container .js-files .file-info .highlight{text-decoration:none;color:#5900ff}body #main-container .js-files .content-for-copy{width:100%;display:flex;margin-top:10px;flex-direction:row;align-items:center}body #main-container .js-files .content-for-copy .file-location{border:none;width:calc(100% - 32px);height:15px;outline:0;padding:0;border-radius:0;border-bottom-left-radius:8px;border-top-left-radius:8px;color:#5900ff;font-size:18px;border:1px solid rgba(89,0,255,.08);padding:6px}body #main-container .js-files .content-for-copy .file-location:focus{border:1px solid rgba(89,0,255,.32)}body #main-container .js-files .content-for-copy .copy-btn{padding:0;border:none;width:30px;aspect-ratio:1;background-color:rgba(89,0,255,.08);border-radius:0;border-top-right-radius:8px;border-bottom-right-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:space-around}body #main-container .js-files .content-for-copy .copy-btn:hover{cursor:pointer}body #main-container #sharer-in-action{width:100%;height:50px;font-size:20px;margin-bottom:16px;border:none;border-radius:16px;background-color:rgba(89,0,255,.08);color:#5900ff;font-weight:500}body #main-container #sharer-in-action:hover{cursor:pointer}body #main-container #special-thanks{margin:0;padding:0;margin-bottom:16px;text-align:center;color:#8d8d8d}body #main-container #special-thanks .highlight{color:#5900ff;text-decoration:none}body #main-container #developer-credits{display:flex;flex-direction:row;align-items:center;text-decoration:none}body #main-container #developer-credits #kp-img{width:30px;aspect-ratio:1;margin-right:8px;border-radius:15px}body #main-container #developer-credits #developed-by-kp{color:#8d8d8d;margin:0;padding:0;text-align:center} \ No newline at end of file diff --git a/website-stuff/style.scss b/website-stuff/style.scss deleted file mode 100644 index 9293019..0000000 --- a/website-stuff/style.scss +++ /dev/null @@ -1,178 +0,0 @@ -@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"; -body { - font-family: "Inter", sans-serif; - margin: 0; - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - min-width: 100vw; - min-height: 100vh; - - #main-container { - width: 80%; - max-width: 460px; - padding: 20px; - display: flex; - flex-direction: column; - align-items: center; - - #icon-n-title { - display: flex; - align-items: center; - margin-bottom: 24px; - #sharer-icon { - width: 48px; - aspect-ratio: 1; - box-shadow: 0 8px 32px 0 rgba(89, 0, 255, 0.16); - border-radius: 12px; - margin-right: 16px; - } - #sharer-title { - margin: 0; - padding: 0; - font-size: 32px; - font-weight: 600; - text-align: center; - } - } - - #sharer-preview-img { - width: 84%; - margin-bottom: 32px; - } - - #sharer-description { - margin: 0; - margin-bottom: 16px; - padding: 0; - color: #5f5f5f; - text-align: center; - } - - #notion-link { - margin: 0; - padding: 0; - text-align: center; - color: #5900ff; - margin-bottom: 16px; - text-decoration: none; - } - - .js-files { - width: calc(100% - 20px); - margin-bottom: 10px; - padding: 10px; - display: flex; - flex-direction: column; - align-items: center; - border-radius: 16px; - background-color: #f6f6f6; - - .file-info { - margin: 0; - text-align: center; - .highlight { - text-decoration: none; - color: #5900ff; - } - } - - .content-for-copy { - width: 100%; - display: flex; - margin-top: 10px; - flex-direction: row; - align-items: center; - - .file-location { - border: none; - width: calc(100% - 32px); - height: 15px; - outline: 0; - padding: 0; - border-radius: 0; - border-bottom-left-radius: 8px; - border-top-left-radius: 8px; - color: rgba(89, 0, 255); - font-size: 18px; - border: 1px solid rgba(89, 0, 255, 0.08); - padding: 6px; - - &:focus { - border: 1px solid rgba(89, 0, 255, 0.32); - } - } - - .copy-btn { - padding: 0; - border: none; - width: 30px; - aspect-ratio: 1; - background-color: rgba(89, 0, 255, 0.08); - border-radius: 0; - border-top-right-radius: 8px; - border-bottom-right-radius: 8px; - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - - &:hover { - cursor: pointer; - } - } - } - } - - #sharer-in-action { - width: 100%; - height: 50px; - font-size: 20px; - margin-bottom: 16px; - border: none; - border-radius: 16px; - background-color: rgba(89, 0, 255, 0.08); - color: #5900ff; - font-weight: 500; - - &:hover { - cursor: pointer; - } - } - - #special-thanks { - margin: 0; - padding: 0; - margin-bottom: 16px; - text-align: center; - color: #8d8d8d; - - .highlight { - color: #5900ff; - text-decoration: none; - } - } - - #developer-credits { - display: flex; - flex-direction: row; - align-items: center; - text-decoration: none; - - #kp-img { - width: 30px; - aspect-ratio: 1; - margin-right: 8px; - border-radius: 15px; - } - - #developed-by-kp { - color: #8d8d8d; - margin: 0; - padding: 0; - text-align: center; - } - } - } -} From fa4a23f9cc6d3d2b32ad0e5c3bf47c3de6c4d0bc Mon Sep 17 00:00:00 2001 From: Kartavya Patel <82671701+patelka2211@users.noreply.github.com> Date: Sat, 5 Aug 2023 00:37:20 +0530 Subject: [PATCH 2/5] Update --- package.json | 4 +++- utility.js | 1 + utility.ts | 43 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 utility.js create mode 100644 utility.ts diff --git a/package.json b/package.json index 97a2971..dc41e16 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,9 @@ "terser-esm": "terser ./index.js -c -m --toplevel -o ./index.js", "terser-iife": "terser ./Sharer.js -c -m -o ./Sharer.js", "prerelease-build": "npm run tsc-build && npm run rollup-esm && npm run rollup-iife && rm -rf ./lib/", - "build": "npm run tsc-build && npm run rollup-esm && npm run rollup-iife && npm run terser-esm && npm run terser-iife && rm -rf ./lib/", + "utility-build": "tsc utility.ts", + "utility-minify": "terser ./utility.js -c -m -o ./utility.js", + "build": "npm run tsc-build && npm run rollup-esm && npm run rollup-iife && npm run terser-esm && npm run terser-iife && rm -rf ./lib/ && npm run utility-build && npm run utility-minify", "test-build": "npm run tsc-build && npm run rollup-esm && tsc ./test/index.ts -t es6 && rollup ./test/index.js -o ./test/out.js && rm -rf ./lib/" }, "files": [ diff --git a/utility.js b/utility.js new file mode 100644 index 0000000..2769d20 --- /dev/null +++ b/utility.js @@ -0,0 +1 @@ +!function(){var e="Sharer is not defined. Get it from kpverse.in/sharer/.",t=function(e){return"Sharer utility script tag doesn't have ".concat(e,".")};if(window.Sharer)if(document.body){var o=document.getElementById("sharer-utility-js");if(o)o.classList.forEach((function(t){if("activate-button"===t)try{window.Sharer.button.activate()}catch(t){console.log(e)}else if(0===t.indexOf("set-color-")){var o=t.replace("set-color-","#");try{window.Sharer.setColor(o)}catch(t){console.log(e)}}}));else console.warn(t('id="sharer-utility-js"'))}else console.warn(t('"defer" attribute'));else console.log(e)}(); \ No newline at end of file diff --git a/utility.ts b/utility.ts new file mode 100644 index 0000000..096d9eb --- /dev/null +++ b/utility.ts @@ -0,0 +1,43 @@ +(function () { + const SHARER_NOT_DEFINED = + "Sharer is not defined. Get it from kpverse.in/sharer/.", + SHARER_UTILITY_PROBLEM_FORMAT = function (problem: string) { + return `Sharer utility script tag doesn't have ${problem}.`; + }; + + if (!(window as any).Sharer) { + console.log(SHARER_NOT_DEFINED); + return; + } + + if (!document.body) { + console.warn(SHARER_UTILITY_PROBLEM_FORMAT(`"defer" attribute`)); + return; + } + + let script = document.getElementById("sharer-utility-js"); + + if (!script) { + console.warn(SHARER_UTILITY_PROBLEM_FORMAT(`id="sharer-utility-js"`)); + return; + } + + let classesList = script.classList; + + classesList.forEach(function (className) { + if (className === "activate-button") { + try { + (window as any).Sharer.button.activate(); + } catch (error) { + console.log(SHARER_NOT_DEFINED); + } + } else if (className.indexOf("set-color-") === 0) { + let color = className.replace("set-color-", "#"); + try { + (window as any).Sharer.setColor(color); + } catch (error) { + console.log(SHARER_NOT_DEFINED); + } + } + }); +})(); From e7cc5efadac4539795e834f8393a4657537910be Mon Sep 17 00:00:00 2001 From: Kartavya Patel <82671701+patelka2211@users.noreply.github.com> Date: Sun, 6 Aug 2023 00:00:10 +0530 Subject: [PATCH 3/5] Update --- .gitignore | 3 + README.md | 123 ++++++++++++------ Sharer.js | 4 +- kpverse-sharer.svg | 1 + package.json | 18 ++- rollup.config.mjs | 2 +- sharer-from-kpverse.jpg | Bin 0 -> 141559 bytes src/components/button/buttonObject.ts | 3 +- .../downloadable/downloadSharerQR.ts | 2 +- src/index.ts | 52 ++------ src/metadata.ts | 4 +- src/storage/main.ts | 29 ----- src/variables/color.ts | 4 +- src/variables/main.ts | 27 ++++ 14 files changed, 147 insertions(+), 125 deletions(-) create mode 100644 kpverse-sharer.svg create mode 100644 sharer-from-kpverse.jpg diff --git a/.gitignore b/.gitignore index 82c6b34..6ecf647 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,9 @@ index.d.ts .parcel-cache dist +# testing files and folder +testing + # Build build.iife.js # build.main.sh diff --git a/README.md b/README.md index 2310d4e..32408df 100644 --- a/README.md +++ b/README.md @@ -1,63 +1,104 @@ # Sharer -Currently in testing mode. Coming soon. +Currently in testing mode. Stable version releasing soon. - +
© 2023 Kartavya Patel. All rights reserved.
+ --> diff --git a/Sharer.js b/Sharer.js index 18d2ff1..ad894d4 100644 --- a/Sharer.js +++ b/Sharer.js @@ -3,7 +3,7 @@ * * v0.1.0 * - * Updated on August 4, 2023. + * Updated on August 5, 2023. * * Copyright © 2023-present, Kartavya Patel. All rights reserved. * @@ -11,4 +11,4 @@ * * @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} */ -!function(r,e,t){"use strict";function n(){return document.getElementById("kpverse-sharer")}var a=void 0;function o(r){a=r}function i(){!0!==a&&(o(!0),setTimeout((function(){var r=n();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),o(void 0)}),500))}function s(){return document.getElementById("kpverse-sharer-button")}var C=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},b=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},w=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)E(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)E(8,o,y(i,o));for(E(8,7,y(i,6)),E(8,8,y(i,7)),E(7,8,y(i,8)),o=9;o<15;o++)E(14-o,8,y(i,o));for(o=0;o<8;o++)E(a-1-o,8,y(i,o));for(o=8;o<15;o++)E(8,a-15+o,y(i,o));E(8,a-8,1)},S=function(){for(var r=a;r--;)E(6,r,0==r%2),E(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);E(o,i,s),E(i,o,s)}}}()},_=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=B(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[b][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){b(l),Z(l);var h=w();d>h&&(d=h,n=l),b(l)}}b(n),Z(n),i=[]},R=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*B(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*B(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return P(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,b=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(b?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var Q=' ';function F(){var e=G(),t=U(),n=j();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,W())),r.render(t,r.SVGParser(E)).then((function(){null!==t&&r.attachEventListeners(t,{click:ar})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:I})})))}function $(e){var t,n=G(),a=U(),o=j();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=T(e.url_format),O({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(Q)).then((function(){null!==a&&r.attachEventListeners(a,{click:F})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==H&&N(H.hostname,e.name)}})})))}var J={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function K(r){var e=_("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),S("AppsIdList",e)}}function W(){var e=_("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=J[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:z(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(R),attachEventListeners:{click:function(){$(n),K(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(P),attachEventListeners:{click:function(){A(T(n.url_format)),K(t)}}}))})})):[]}var X='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',Y=!0;function rr(){!0===Y&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:X}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===_("AppsIdList")&&S("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),Y=void 0}))}function er(t){if(!0!==v){if(!0===Y&&rr(),void 0!==t){var a=t.url,o=t.text;V(void 0!==a?a:location.href),x(void 0!==o?o:document.title)}else V(location.href),x(document.title);var s=1;!0===l&&(h(),s=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,W())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(q)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:B(!0),attachEventListeners:{click:function(){S("Theme",e.themeCycle());var t=m();null!==t&&r.render(t,B())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:I}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(E),attachEventListeners:{click:ar}}))})),attachEventListeners:{click:function(){u(!1)}}}),attachEventListeners:{click:function(){(p||void 0===p)&&ar(),u(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=n();null!==e&&(e.style.zIndex="".concat(c()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){A("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=n();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",i)}(),f(!0)}),1)}))}),s)}}var tr=' ';function nr(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(tr),attachEventListeners:{mouseenter:function(){var r=s();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=s();null==r||r.classList.remove("sharer-icon-hover")},click:function(){er()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=s();r&&(r.style.zIndex="".concat(c()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}function ar(){if(void 0!==v){V(void 0),x(void 0);var r=n();null!==r&&(r.classList.add("hide"),setTimeout((function(){null!==r&&r.remove(),setTimeout((function(){!0===l&&nr(),document.body.classList.remove("sharer-is-open"),f(void 0),u(void 0),window.removeEventListener("resize",i)}),1)}),400))}}var or={activate:function(){!0!==l&&(!0===Y&&rr(),void 0===l&&d(!0),void 0===v&&nr())},deactivate:function(){void 0!==l&&(!0===l&&d(void 0),h())}};console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var ir=Object.freeze({__proto__:null,button:or,close:ar,open:er,setColor:function(r){try{null==L||L.setColor(r),S("Color",r)}catch(r){console.log(r)}return{open:er,close:ar}}});window.Sharer=ir}(Dominar,DynamicColors,html2canvas); \ No newline at end of file +!function(r,e,t){"use strict";function n(r){return"kpverseSharer".concat(r)}function a(r,e){var t;return r=n(r),"object"==typeof e&&(e=JSON.stringify(e)),e=function(r){try{return btoa(r)}catch(e){return r}}(e),localStorage.setItem(r,e),(t={})[r]=e,t}function o(r){try{return atob(r)}catch(e){return r}}function i(r){r=n(r);var e=localStorage.getItem(r);if(null!==e){e=o(e);try{return JSON.parse(e)}catch(r){return e}}}var s='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',C=!0;function c(){!0===C&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:s}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===i("AppsIdList")&&a("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),C=void 0}))}function l(){return document.getElementById("kpverse-sharer")}var d=void 0;function h(r){d=r}function p(){!0!==d&&(h(!0),setTimeout((function(){var r=l();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),h(void 0)}),500))}function u(){return document.getElementById("kpverse-sharer-button")}var v=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},w=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},b=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)B(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)B(8,o,y(i,o));for(B(8,7,y(i,6)),B(8,8,y(i,7)),B(7,8,y(i,8)),o=9;o<15;o++)B(14-o,8,y(i,o));for(o=0;o<8;o++)B(a-1-o,8,y(i,o));for(o=8;o<15;o++)B(8,a-15+o,y(i,o));B(8,a-8,1)},S=function(){for(var r=a;r--;)B(6,r,0==r%2),B(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);B(o,i,s),B(i,o,s)}}}()},_=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=E(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[w][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){w(l),Z(l);var h=b();d>h&&(d=h,n=l),w(l)}}w(n),Z(n),i=[]},R=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*E(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*E(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return P(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,w=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(w?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var J=' ';function K(){var e=N(),t=Q(),n=O();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,rr())),r.render(t,r.SVGParser(S)).then((function(){null!==t&&r.attachEventListeners(t,{click:ar})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:E})})))}function W(e){var t,n=N(),a=Q(),o=O();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=D(e.url_format),$({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(J)).then((function(){null!==a&&r.attachEventListeners(a,{click:K})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==A&&F(A.hostname,e.name)}})})))}var X={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function Y(r){var e=i("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),a("AppsIdList",e)}}function rr(){var e=i("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=X[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:U(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(G),attachEventListeners:{click:function(){W(n),Y(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(z),attachEventListeners:{click:function(){_(D(n.url_format)),Y(t)}}}))})})):[]}function er(t){if(!0!==V){if(!0===C&&c(),void 0!==t){var n=t.url,o=t.text;I(void 0!==n?n:location.href),T(void 0!==o?o:document.title)}else I(location.href),T(document.title);var i=1;!0===m&&(w(),i=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,rr())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(B)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:Z(!0),attachEventListeners:{click:function(){a("Theme",e.themeCycle());var t=x();null!==t&&r.render(t,Z())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:E}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(S),attachEventListeners:{click:ar}}))})),attachEventListeners:{click:function(){H(!1)}}}),attachEventListeners:{click:function(){(b||void 0===b)&&ar(),H(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=l();null!==e&&(e.style.zIndex="".concat(f()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){_("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=l();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",p)}(),y(!0)}),1)}))}),i)}}var tr=' ';function nr(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(tr),attachEventListeners:{mouseenter:function(){var r=u();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=u();null==r||r.classList.remove("sharer-icon-hover")},click:function(){er()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=u();r&&(r.style.zIndex="".concat(f()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}function ar(){if(void 0!==V){I(void 0),T(void 0);var r=l();null!==r&&(r.classList.add("hide"),setTimeout((function(){null!==r&&r.remove(),setTimeout((function(){!0===m&&nr(),document.body.classList.remove("sharer-is-open"),y(void 0),H(void 0),window.removeEventListener("resize",p)}),1)}),400))}}var or={activate:function(){!0!==m&&(!0===C&&c(),void 0===m&&g(!0),void 0===V&&nr())},deactivate:function(){void 0!==m&&(!0===m&&g(void 0),w())}};"loading"===document.readyState?window.addEventListener("load",(function r(){c(),setTimeout((function(){window.removeEventListener("load",r)}),1e3)})):c(),console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var ir=Object.freeze({__proto__:null,button:or,close:ar,open:er,setColor:function(r){try{null==P||P.setColor(r),a("Color",r)}catch(r){console.log(r)}return{open:er,close:ar}}});window.Sharer=ir}(Dominar,DynamicColors,html2canvas); \ No newline at end of file diff --git a/kpverse-sharer.svg b/kpverse-sharer.svg new file mode 100644 index 0000000..0eb54fd --- /dev/null +++ b/kpverse-sharer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/package.json b/package.json index dc41e16..4c6f608 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@patelka2211/sharer", - "version": "0.1.0", - "description": "Sharer from KPVERSE!", + "version": "0.1.1", + "description": "A URL Sharing Tool for Websites and Web Apps, from KPVERSE", "main": "index.js", "module": "index.js", "types": "index.d.ts", @@ -25,7 +25,19 @@ "type": "git", "url": "git+https://github.com/patelka2211/sharer.git" }, - "keywords": [], + "keywords": [ + "Sharer", + "KPVERSE", + "patelka2211", + "Website Sharing", + "JavaScript Library", + "Social Media", + "Web Development", + "Boost Traffic", + "Share URLs", + "Web App Integration", + "Simplify Sharing" + ], "author": "Kartavya Patel ", "license": "MIT", "bugs": { diff --git a/rollup.config.mjs b/rollup.config.mjs index e94aa35..e0b2478 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -6,7 +6,7 @@ const currentDate = new Date(), banner = `/** * Sharer from KPVERSE * - * v0.1.0 + * v0.1.1 * * Updated on ${formattedDate}. * diff --git a/sharer-from-kpverse.jpg b/sharer-from-kpverse.jpg new file mode 100644 index 0000000000000000000000000000000000000000..15818b4ff9ef1eab080b2e909cd54c7e8c90c27a GIT binary patch literal 141559 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

8)2-zS>e92w(WG@_=R9TBkM~UU>@6rb;;8Ux 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%0D@90px>k=l)?hf7Nm~Lf%1p>Zf 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

# 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

Y%PsBWv>Cu6Xby4A(#4 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∣21NBdOSY~*xr%Z`fl7Kt0`h@On1CR|pMa&n(M z5R*5Dm4Sr4s-4pQmZyw!%7eU#9%5Me8WuG+?@Rww&6CxwM&W!JMPY5{-u~B%vzXVE zWB=u$`|U?4^N*?(WK@vT-VP5!KxD^HeGvin`* zO&Oz@Qq$EVDHQw2jq{)qD?9adgO`^{85p_#h!<#WVgIefWFy`CiS4(b-@V_5R1N&S z-_dmMw^QFE);@UJ=OkBsWOLysv0=WIMh>5?f$d-WpRs-YG|MLjQ#~pR=lDifs_+H@ zg(F(F`^e%3lSab>k$RC@{XNXjcI|>V?+=b%=2=(dBC_Pm=%n7M+Q_z1UoY?a)UmCg zVQOBQ63KX}eAuB*nPfy;>g7BCKNZ$INaJy;rSP6Ntlfd5E9x6>1Ue2ATCgt9ibBt6 z5aD|I2~A1k_z6th`}cJit+BCo(0Tpiv_PizvHOnTQwUSksuyQQ!Niz(f0>7FWiNW} zHC%RD0Gc?C!l{sn@5RUX?|28G)NuE_pvI$Tlo3`zq_JrKr3=mTZ~qUtO}?f5bC!@k?Pf@lRpm}t={^5cG3 zrCWAPDm2Od(;>$PYo7~W-fwZGxJGU}Q8%>XVbeMFYiIY|8hQkGSv19`SY69qG|VY; zfOd?gu%Uh3Y7}Er_vjT>`PP

J_1bQ>GHeP9It};!j?n((uHXVSRNK8HP{pDcWtB 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 euj5L8UH|<1D*e7n|6L6KyD { -// // Initialization code -// let appIds = readRecord("AppsIdList"); -// if (appIds === undefined) { -// createRecord("AppsIdList", [ -// "x", -// "wa", -// "fb", -// "tg", -// "lnkdn", -// "gml", -// "rdt", -// "pntrst", -// "snpcht", -// ]); -// } +if (document.readyState === "loading") + window.addEventListener("load", function runAfterLoad() { + initializeIfNot(); -// // // Activate Sharer button by default. -// // activate(); - -// // Remove `runAfterLoad` function after document is loaded. -// setTimeout(() => { -// removeEventListener("load", runAfterLoad); -// }, 1000); -// }); -// } - -// addEventListener("load", runAfterLoad); -// // + setTimeout(() => { + window.removeEventListener("load", runAfterLoad); + }, 1000); + }); +else initializeIfNot(); console.log( "Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer." diff --git a/src/metadata.ts b/src/metadata.ts index 67cd59d..297806a 100644 --- a/src/metadata.ts +++ b/src/metadata.ts @@ -1,4 +1,4 @@ /** - * Sharer version. + * Sharer version */ -export const VERSION = "0.1.0"; +export const VERSION = "0.1.1"; diff --git a/src/storage/main.ts b/src/storage/main.ts index 98a58ee..b6ca0c2 100644 --- a/src/storage/main.ts +++ b/src/storage/main.ts @@ -1,13 +1,6 @@ -import { render } from "@patelka2211/dominar"; -import { sharerControlButtonLeftElement } from "../elements/sharerControlButtonLeft"; -import { currentThemeIcon } from "../helper/getCurrentThemeIcon"; -import { isSharerOpen } from "../operations/main"; -import { sharerDynamicColors } from "../variables/main"; -import { basicDecrypt } from "./basicDecrypt"; import { __storageCreate } from "./create"; import { __storageDelete } from "./delete"; import { __storageRead } from "./read"; -import { storageKeyFormat } from "./storageKeyFormat"; import { __storageUpdate } from "./update"; export { @@ -16,25 +9,3 @@ export { __storageUpdate as updateRecord, __storageDelete as deleteRecord, }; - -addEventListener("storage", (ev) => { - ev.preventDefault(); - if (ev.key === storageKeyFormat("Color")) { - let { newValue } = ev; - if (newValue) - try { - sharerDynamicColors?.setColor(basicDecrypt(newValue)); - } catch (error) { - console.log(error); - } - } else if (ev.key === storageKeyFormat("Theme")) { - let { newValue } = ev; - if (newValue) { - let themeIcon = currentThemeIcon(true); - if (isSharerOpen) { - let button = sharerControlButtonLeftElement(); - if (button) render(button, themeIcon); - } - } - } -}); diff --git a/src/variables/color.ts b/src/variables/color.ts index f9316fa..4c2cc87 100644 --- a/src/variables/color.ts +++ b/src/variables/color.ts @@ -4,10 +4,10 @@ import { updateRecord } from "../storage/main"; import { sharerDynamicColors } from "./main"; /** - * Sets the color to a new value. + * Sets Sharer color. * * @param {string} newColor - The new color value. - * @returns {object} - An object with open and close functions. + * @returns {object} An object containing open and close functions. * @property {function} open - The function to open the Sharer. * @property {function} close - The function to close the Sharer. */ diff --git a/src/variables/main.ts b/src/variables/main.ts index 0c46fd9..a470399 100644 --- a/src/variables/main.ts +++ b/src/variables/main.ts @@ -1,7 +1,12 @@ +import { render } from "@patelka2211/dominar"; import { DynamicColorsType, create, getInstanceByName } from "dynamic-colors"; +import { sharerControlButtonLeftElement } from "../elements/sharerControlButtonLeft"; import { formatURL } from "../helper/formatURL"; import { currentThemeIcon } from "../helper/getCurrentThemeIcon"; +import { isSharerOpen } from "../operations/main"; +import { basicDecrypt } from "../storage/basicDecrypt"; import { readRecord, createRecord } from "../storage/main"; +import { storageKeyFormat } from "../storage/storageKeyFormat"; export let share_url: URL | undefined = undefined; @@ -43,3 +48,25 @@ try { sharerDynamicColors?.restrictRemove(); currentThemeIcon(true); + +addEventListener("storage", (ev) => { + ev.preventDefault(); + if (ev.key === storageKeyFormat("Color")) { + let { newValue } = ev; + if (newValue) + try { + sharerDynamicColors?.setColor(basicDecrypt(newValue)); + } catch (error) { + console.log(error); + } + } else if (ev.key === storageKeyFormat("Theme")) { + let { newValue } = ev; + if (newValue) { + let themeIcon = currentThemeIcon(true); + if (isSharerOpen) { + let button = sharerControlButtonLeftElement(); + if (button) render(button, themeIcon); + } + } + } +}); From 0771ea2df6955b70a2d19fa251a1e00e3d535ef3 Mon Sep 17 00:00:00 2001 From: Kartavya Patel <82671701+patelka2211@users.noreply.github.com> Date: Mon, 7 Aug 2023 00:21:48 +0530 Subject: [PATCH 4/5] Update --- README.md | 14 ++++++++------ Sharer.js | 4 ++-- package-lock.json | 14 +++++++------- package.json | 6 +++--- rollup.config.mjs | 2 +- src/index.ts | 3 ++- src/metadata.ts | 2 +- src/variables/color.ts | 24 +++++++++++++++--------- src/variables/main.ts | 1 - utility.js | 29 ++++++++++++++++++++++++++++- utility.ts | 15 ++++++++------- 11 files changed, 75 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 32408df..0eed934 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ npm i @patelka2211/sharer Alternatively, you can include `Sharer and its dependency modules` in your website using a HTML ` + @@ -69,10 +69,13 @@ function closeSharer(): void; ```ts /** * Sets Sharer color. - * @param newColor — The new color value. - * @returns — An object containing `open` and `close` functions. + * + * @param {string | undefined} newColor - The new color value. + * @returns {object} An object containing open and close functions. + * @property {function} open - The function to open the Sharer. + * @property {function} close - The function to close the Sharer. */ -function setColor(newColor: string): object; +function setColor(newColor?: string): object; ``` --- @@ -100,5 +103,4 @@ const button: { ###

-
© 2023 Kartavya Patel. All rights reserved.
- --> +
© 2023 Kartavya Patel. All rights reserved.
--> diff --git a/Sharer.js b/Sharer.js index ad894d4..62622c3 100644 --- a/Sharer.js +++ b/Sharer.js @@ -3,7 +3,7 @@ * * v0.1.0 * - * Updated on August 5, 2023. + * Updated on August 6, 2023. * * Copyright © 2023-present, Kartavya Patel. All rights reserved. * @@ -11,4 +11,4 @@ * * @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} */ -!function(r,e,t){"use strict";function n(r){return"kpverseSharer".concat(r)}function a(r,e){var t;return r=n(r),"object"==typeof e&&(e=JSON.stringify(e)),e=function(r){try{return btoa(r)}catch(e){return r}}(e),localStorage.setItem(r,e),(t={})[r]=e,t}function o(r){try{return atob(r)}catch(e){return r}}function i(r){r=n(r);var e=localStorage.getItem(r);if(null!==e){e=o(e);try{return JSON.parse(e)}catch(r){return e}}}var s='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',C=!0;function c(){!0===C&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:s}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===i("AppsIdList")&&a("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),C=void 0}))}function l(){return document.getElementById("kpverse-sharer")}var d=void 0;function h(r){d=r}function p(){!0!==d&&(h(!0),setTimeout((function(){var r=l();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),h(void 0)}),500))}function u(){return document.getElementById("kpverse-sharer-button")}var v=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},w=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},b=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)B(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)B(8,o,y(i,o));for(B(8,7,y(i,6)),B(8,8,y(i,7)),B(7,8,y(i,8)),o=9;o<15;o++)B(14-o,8,y(i,o));for(o=0;o<8;o++)B(a-1-o,8,y(i,o));for(o=8;o<15;o++)B(8,a-15+o,y(i,o));B(8,a-8,1)},S=function(){for(var r=a;r--;)B(6,r,0==r%2),B(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);B(o,i,s),B(i,o,s)}}}()},_=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=E(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[w][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){w(l),Z(l);var h=b();d>h&&(d=h,n=l),w(l)}}w(n),Z(n),i=[]},R=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*E(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*E(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return P(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,w=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(w?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var J=' ';function K(){var e=N(),t=Q(),n=O();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,rr())),r.render(t,r.SVGParser(S)).then((function(){null!==t&&r.attachEventListeners(t,{click:ar})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:E})})))}function W(e){var t,n=N(),a=Q(),o=O();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=D(e.url_format),$({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(J)).then((function(){null!==a&&r.attachEventListeners(a,{click:K})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==A&&F(A.hostname,e.name)}})})))}var X={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function Y(r){var e=i("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),a("AppsIdList",e)}}function rr(){var e=i("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=X[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:U(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(G),attachEventListeners:{click:function(){W(n),Y(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(z),attachEventListeners:{click:function(){_(D(n.url_format)),Y(t)}}}))})})):[]}function er(t){if(!0!==V){if(!0===C&&c(),void 0!==t){var n=t.url,o=t.text;I(void 0!==n?n:location.href),T(void 0!==o?o:document.title)}else I(location.href),T(document.title);var i=1;!0===m&&(w(),i=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,rr())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(B)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:Z(!0),attachEventListeners:{click:function(){a("Theme",e.themeCycle());var t=x();null!==t&&r.render(t,Z())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:E}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(S),attachEventListeners:{click:ar}}))})),attachEventListeners:{click:function(){H(!1)}}}),attachEventListeners:{click:function(){(b||void 0===b)&&ar(),H(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=l();null!==e&&(e.style.zIndex="".concat(f()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){_("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=l();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",p)}(),y(!0)}),1)}))}),i)}}var tr=' ';function nr(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(tr),attachEventListeners:{mouseenter:function(){var r=u();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=u();null==r||r.classList.remove("sharer-icon-hover")},click:function(){er()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=u();r&&(r.style.zIndex="".concat(f()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}function ar(){if(void 0!==V){I(void 0),T(void 0);var r=l();null!==r&&(r.classList.add("hide"),setTimeout((function(){null!==r&&r.remove(),setTimeout((function(){!0===m&&nr(),document.body.classList.remove("sharer-is-open"),y(void 0),H(void 0),window.removeEventListener("resize",p)}),1)}),400))}}var or={activate:function(){!0!==m&&(!0===C&&c(),void 0===m&&g(!0),void 0===V&&nr())},deactivate:function(){void 0!==m&&(!0===m&&g(void 0),w())}};"loading"===document.readyState?window.addEventListener("load",(function r(){c(),setTimeout((function(){window.removeEventListener("load",r)}),1e3)})):c(),console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var ir=Object.freeze({__proto__:null,button:or,close:ar,open:er,setColor:function(r){try{null==P||P.setColor(r),a("Color",r)}catch(r){console.log(r)}return{open:er,close:ar}}});window.Sharer=ir}(Dominar,DynamicColors,html2canvas); \ No newline at end of file +!function(r,e,t){"use strict";function n(r){return"kpverseSharer".concat(r)}function a(r,e){var t;return r=n(r),"object"==typeof e&&(e=JSON.stringify(e)),e=function(r){try{return btoa(r)}catch(e){return r}}(e),localStorage.setItem(r,e),(t={})[r]=e,t}function o(r){try{return atob(r)}catch(e){return r}}function i(r){r=n(r);var e=localStorage.getItem(r);if(null!==e){e=o(e);try{return JSON.parse(e)}catch(r){return e}}}var s='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',C=!0;function c(){!0===C&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:s}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===i("AppsIdList")&&a("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),C=void 0}))}var l=void 0;function d(r){l=r}var h=void 0;function p(r){h=r}function u(){return document.getElementById("kpverse-sharer-button")}var v=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},w=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},b=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)B(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)B(8,o,y(i,o));for(B(8,7,y(i,6)),B(8,8,y(i,7)),B(7,8,y(i,8)),o=9;o<15;o++)B(14-o,8,y(i,o));for(o=0;o<8;o++)B(a-1-o,8,y(i,o));for(o=8;o<15;o++)B(8,a-15+o,y(i,o));B(8,a-8,1)},S=function(){for(var r=a;r--;)B(6,r,0==r%2),B(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);B(o,i,s),B(i,o,s)}}}()},E=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=_(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[w][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){w(l),Z(l);var h=b();d>h&&(d=h,n=l),w(l)}}w(n),Z(n),i=[]},P=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*_(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*_(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return R(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,w=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(w?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var W=' ';function X(){var e=Q(),t=$(),n=F();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,tr())),r.render(t,r.SVGParser(T)).then((function(){null!==t&&r.attachEventListeners(t,{click:q})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:P})})))}function Y(e){var t,n=Q(),a=$(),o=F();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=z(e.url_format),K({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(W)).then((function(){null!==a&&r.attachEventListeners(a,{click:X})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==S&&J(S.hostname,e.name)}})})))}var rr={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function er(r){var e=i("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),a("AppsIdList",e)}}function tr(){var e=i("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=rr[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:U(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(j),attachEventListeners:{click:function(){Y(n),er(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(G),attachEventListeners:{click:function(){R(z(n.url_format)),er(t)}}}))})})):[]}function nr(t){if(!0!==h){if(!0===C&&c(),void 0!==t){var n=t.url,o=t.text;E(void 0!==n?n:location.href),B(void 0!==o?o:document.title)}else E(location.href),B(document.title);var i=1;!0===m&&(w(),i=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,tr())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(D)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:Z(!0),attachEventListeners:{click:function(){a("Theme",e.themeCycle());var t=x();null!==t&&r.render(t,Z())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:P}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(T),attachEventListeners:{click:q}}))})),attachEventListeners:{click:function(){d(!1)}}}),attachEventListeners:{click:function(){(l||void 0===l)&&q(),d(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=b();null!==e&&(e.style.zIndex="".concat(f()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){R("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=b();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",y)}(),p(!0)}),1)}))}),i)}}var ar=' ';function or(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(ar),attachEventListeners:{mouseenter:function(){var r=u();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=u();null==r||r.classList.remove("sharer-icon-hover")},click:function(){nr()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=u();r&&(r.style.zIndex="".concat(f()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}var ir={activate:function(){!0!==m&&(!0===C&&c(),void 0===m&&g(!0),void 0===h&&or())},deactivate:function(){void 0!==m&&(!0===m&&g(void 0),w())}};"loading"===document.readyState?window.addEventListener("load",(function r(){c(),setTimeout((function(){window.removeEventListener("load",r)}),1e3)})):c(),console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var sr=Object.freeze({__proto__:null,VERSION:N,button:ir,close:q,open:nr,setColor:function(r){var e={open:nr,close:q};if(A){try{A.setColor(r||"#2596D1")}catch(r){console.warn(r)}a("Color",r||"#2596D1")}else console.warn('"sharerDynamicColors" is not defined.');return e}});window.Sharer=sr}(Dominar,DynamicColors,html2canvas); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a1d6caf..e1c630c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "MIT", "dependencies": { "@patelka2211/dominar": "^1.2.4", - "dynamic-colors": "^1.1.4", + "dynamic-colors": "^1.1.5", "html2canvas": "^1.4.1" }, "devDependencies": { @@ -2565,9 +2565,9 @@ "dev": true }, "node_modules/dynamic-colors": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.4.tgz", - "integrity": "sha512-3hznV/H55ZdzUiqSfh2icy3jAoVTsxYv//aQUzyH961P+smqI4HT6vJYpcBrjPcUY2M2DOcL4NeY6LqtM8LoEg==" + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.5.tgz", + "integrity": "sha512-NBhHG2/7CDB32u89InrXy3LAMKg/wjYRzEqQdXJKf/a6t8pBL5KOt/y9XotxF47t2XoSuMGKujLb0w5kCmkMMg==" }, "node_modules/electron-to-chromium": { "version": "1.4.483", @@ -5371,9 +5371,9 @@ "dev": true }, "dynamic-colors": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.4.tgz", - "integrity": "sha512-3hznV/H55ZdzUiqSfh2icy3jAoVTsxYv//aQUzyH961P+smqI4HT6vJYpcBrjPcUY2M2DOcL4NeY6LqtM8LoEg==" + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/dynamic-colors/-/dynamic-colors-1.1.5.tgz", + "integrity": "sha512-NBhHG2/7CDB32u89InrXy3LAMKg/wjYRzEqQdXJKf/a6t8pBL5KOt/y9XotxF47t2XoSuMGKujLb0w5kCmkMMg==" }, "electron-to-chromium": { "version": "1.4.483", diff --git a/package.json b/package.json index 4c6f608..6002bb1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@patelka2211/sharer", - "version": "0.1.1", + "version": "0.1.0", "description": "A URL Sharing Tool for Websites and Web Apps, from KPVERSE", "main": "index.js", "module": "index.js", @@ -46,7 +46,7 @@ "homepage": "https://kpverse.in/sharer/", "dependencies": { "@patelka2211/dominar": "^1.2.4", - "dynamic-colors": "^1.1.4", + "dynamic-colors": "^1.1.5", "html2canvas": "^1.4.1" }, "devDependencies": { @@ -57,4 +57,4 @@ "terser": "^5.19.2", "typescript": "^5.1.6" } -} \ No newline at end of file +} diff --git a/rollup.config.mjs b/rollup.config.mjs index e0b2478..e94aa35 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -6,7 +6,7 @@ const currentDate = new Date(), banner = `/** * Sharer from KPVERSE * - * v0.1.1 + * v0.1.0 * * Updated on ${formattedDate}. * diff --git a/src/index.ts b/src/index.ts index 9b4b3ec..e39eec8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -14,7 +14,8 @@ console.log( "Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer." ); +export { button } from "./components/button/buttonObject"; +export { VERSION } from "./metadata"; export { closeSharer as close } from "./operations/closeSharer"; export { openSharer as open } from "./operations/openSharer"; -export { button } from "./components/button/buttonObject"; export { setColor } from "./variables/color"; diff --git a/src/metadata.ts b/src/metadata.ts index 297806a..0264f51 100644 --- a/src/metadata.ts +++ b/src/metadata.ts @@ -1,4 +1,4 @@ /** * Sharer version */ -export const VERSION = "0.1.1"; +export const VERSION = "0.1.0"; diff --git a/src/variables/color.ts b/src/variables/color.ts index 4c2cc87..feb7b55 100644 --- a/src/variables/color.ts +++ b/src/variables/color.ts @@ -6,20 +6,26 @@ import { sharerDynamicColors } from "./main"; /** * Sets Sharer color. * - * @param {string} newColor - The new color value. + * @param {string | undefined} newColor - The new color value. * @returns {object} An object containing open and close functions. * @property {function} open - The function to open the Sharer. * @property {function} close - The function to close the Sharer. */ -export function setColor(newColor: string): object { - try { - sharerDynamicColors?.setColor(newColor); - updateRecord("Color", newColor); - } catch (error) { - console.log(error); - } - return { +export function setColor(newColor?: string): object { + const output = { open: openSharer, close: closeSharer, }; + + if (sharerDynamicColors) { + try { + sharerDynamicColors.setColor(newColor || "#2596D1"); + } catch (error) { + console.warn(error); + } + + updateRecord("Color", newColor || "#2596D1"); + } else console.warn(`"sharerDynamicColors" is not defined.`); + + return output; } diff --git a/src/variables/main.ts b/src/variables/main.ts index a470399..5ab9901 100644 --- a/src/variables/main.ts +++ b/src/variables/main.ts @@ -34,7 +34,6 @@ export let sharerDynamicColors: DynamicColorsType | undefined = undefined; let color = readRecord("Color"); if (typeof color !== "string") { color = "#2596D1"; - // color = "#5900ff"; createRecord("Color", color); } diff --git a/utility.js b/utility.js index 2769d20..639f101 100644 --- a/utility.js +++ b/utility.js @@ -1 +1,28 @@ -!function(){var e="Sharer is not defined. Get it from kpverse.in/sharer/.",t=function(e){return"Sharer utility script tag doesn't have ".concat(e,".")};if(window.Sharer)if(document.body){var o=document.getElementById("sharer-utility-js");if(o)o.classList.forEach((function(t){if("activate-button"===t)try{window.Sharer.button.activate()}catch(t){console.log(e)}else if(0===t.indexOf("set-color-")){var o=t.replace("set-color-","#");try{window.Sharer.setColor(o)}catch(t){console.log(e)}}}));else console.warn(t('id="sharer-utility-js"'))}else console.warn(t('"defer" attribute'));else console.log(e)}(); \ No newline at end of file +!(function () { + function e(e) { + return "Sharer utility script tag doesn't have ".concat(e, "."); + } + if (window.Sharer) + if (document.body) { + var t = document.getElementById("sharer-utility-js"); + if (t) + t.classList.forEach(function (e) { + if ("activate-button" === e) + try { + window.Sharer.button.activate(); + } catch (e) { + console.log(e); + } + else if (0 === e.indexOf("set-color-")) { + var t = e.replace("set-color-", "#"); + try { + window.Sharer.setColor(t); + } catch (e) { + console.log(e); + } + } + }); + else console.warn(e('id="sharer-utility-js"')); + } else console.warn(e('"defer" attribute')); + else console.log("Sharer is not defined. Get it from kpverse.in/sharer/."); +})(); diff --git a/utility.ts b/utility.ts index 096d9eb..c8c5ff8 100644 --- a/utility.ts +++ b/utility.ts @@ -1,12 +1,13 @@ (function () { + function SHARER_UTILITY_PROBLEM_FORMAT(problem: string) { + return `Sharer utility script tag doesn't have ${problem}.`; + } + const SHARER_NOT_DEFINED = - "Sharer is not defined. Get it from kpverse.in/sharer/.", - SHARER_UTILITY_PROBLEM_FORMAT = function (problem: string) { - return `Sharer utility script tag doesn't have ${problem}.`; - }; + "Sharer is not defined. Get it from kpverse.in/sharer/."; if (!(window as any).Sharer) { - console.log(SHARER_NOT_DEFINED); + console.warn(SHARER_NOT_DEFINED); return; } @@ -29,14 +30,14 @@ try { (window as any).Sharer.button.activate(); } catch (error) { - console.log(SHARER_NOT_DEFINED); + console.warn(error); } } else if (className.indexOf("set-color-") === 0) { let color = className.replace("set-color-", "#"); try { (window as any).Sharer.setColor(color); } catch (error) { - console.log(SHARER_NOT_DEFINED); + console.warn(error); } } }); From fabda0c51e92286c83b0cb675edec0ffaabb7e81 Mon Sep 17 00:00:00 2001 From: Kartavya Patel <82671701+patelka2211@users.noreply.github.com> Date: Tue, 8 Aug 2023 01:30:57 +0530 Subject: [PATCH 5/5] v1.0.0 --- README.md | 60 +++++++++++++++++---------- Sharer.js | 6 +-- package.json | 6 +-- rollup.config.mjs | 2 +- src/components/button/buttonObject.ts | 3 +- src/metadata.ts | 2 +- utility.js | 29 +------------ utility.ts | 16 +++---- 8 files changed, 55 insertions(+), 69 deletions(-) diff --git a/README.md b/README.md index 0eed934..1469746 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,4 @@ -# Sharer - -Currently in testing mode. Stable version releasing soon. - - - -Below given code is optional. But important. - + + ``` --- -## Usage +## Available APIs -### open - type `function` +### open - type _`function`_ ```ts /** @@ -53,7 +48,7 @@ Below given code is optional. But important. function openSharer(option?: { url?: string; text?: string }): void; ``` -### close - type `function` +### close - type _`function`_ ```ts /** @@ -64,7 +59,7 @@ function openSharer(option?: { url?: string; text?: string }): void; function closeSharer(): void; ``` -### setColor - type `function` +### setColor - type _`function`_ ```ts /** @@ -80,9 +75,9 @@ function setColor(newColor?: string): object; --- -### button - type `object` +### button - type _`object`_ -Sharer button is an object containing [`activate`](#buttonactivate---activates-the-sharer-button) and [`deactivate`](#buttondeactivate---deactivates-the-sharer-button) methods. +Sharer button is an object containing [`activate`](#buttonactivate---activates-the-sharer-button) and [`deactivate`](#buttondeactivate---deactivates-the-sharer-button) functions. ```ts const button: { @@ -95,6 +90,25 @@ const button: { #### `button.deactivate` - Deactivates the Sharer button. +--- + +### Method chaining + +You can use method chaining in [`setColor`](#setcolor---type-function) function. + +Suppose you need to [set color](#setcolor---type-function) theme of Sharer and then you immediately want to [open Sharer](#open---type-function), you can do this using method chaining with just single line of code. + +```js +// The given example code will set color theme to "#2596D1" and will open Sharer. +// There is only one line of code present in the given example. It looks like 4 lines of code because it is formatted, to make sure it is easily readable. +setColor("#2596D1").open({ + url: "https://kpverse.in/", + text: "The official KPVERSE website.", +}); +``` + +--- + ### License [MIT License](./LICENSE) @@ -103,4 +117,4 @@ const button: { ###
-
© 2023 Kartavya Patel. All rights reserved.
--> +
© 2023 Kartavya Patel. All rights reserved.
diff --git a/Sharer.js b/Sharer.js index 62622c3..c2096c7 100644 --- a/Sharer.js +++ b/Sharer.js @@ -1,9 +1,9 @@ /** * Sharer from KPVERSE * - * v0.1.0 + * v1.0.0 * - * Updated on August 6, 2023. + * Updated on August 8, 2023. * * Copyright © 2023-present, Kartavya Patel. All rights reserved. * @@ -11,4 +11,4 @@ * * @license {@link https://github.com/patelka2211/sharer/blob/main/LICENSE MIT} */ -!function(r,e,t){"use strict";function n(r){return"kpverseSharer".concat(r)}function a(r,e){var t;return r=n(r),"object"==typeof e&&(e=JSON.stringify(e)),e=function(r){try{return btoa(r)}catch(e){return r}}(e),localStorage.setItem(r,e),(t={})[r]=e,t}function o(r){try{return atob(r)}catch(e){return r}}function i(r){r=n(r);var e=localStorage.getItem(r);if(null!==e){e=o(e);try{return JSON.parse(e)}catch(r){return e}}}var s='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',C=!0;function c(){!0===C&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:s}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===i("AppsIdList")&&a("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),C=void 0}))}var l=void 0;function d(r){l=r}var h=void 0;function p(r){h=r}function u(){return document.getElementById("kpverse-sharer-button")}var v=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},w=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},b=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)B(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)B(8,o,y(i,o));for(B(8,7,y(i,6)),B(8,8,y(i,7)),B(7,8,y(i,8)),o=9;o<15;o++)B(14-o,8,y(i,o));for(o=0;o<8;o++)B(a-1-o,8,y(i,o));for(o=8;o<15;o++)B(8,a-15+o,y(i,o));B(8,a-8,1)},S=function(){for(var r=a;r--;)B(6,r,0==r%2),B(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);B(o,i,s),B(i,o,s)}}}()},E=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=_(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[w][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){w(l),Z(l);var h=b();d>h&&(d=h,n=l),w(l)}}w(n),Z(n),i=[]},P=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*_(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*_(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return R(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,w=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(w?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var W=' ';function X(){var e=Q(),t=$(),n=F();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,tr())),r.render(t,r.SVGParser(T)).then((function(){null!==t&&r.attachEventListeners(t,{click:q})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:P})})))}function Y(e){var t,n=Q(),a=$(),o=F();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=z(e.url_format),K({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(W)).then((function(){null!==a&&r.attachEventListeners(a,{click:X})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==S&&J(S.hostname,e.name)}})})))}var rr={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function er(r){var e=i("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),a("AppsIdList",e)}}function tr(){var e=i("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=rr[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:U(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(j),attachEventListeners:{click:function(){Y(n),er(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(G),attachEventListeners:{click:function(){R(z(n.url_format)),er(t)}}}))})})):[]}function nr(t){if(!0!==h){if(!0===C&&c(),void 0!==t){var n=t.url,o=t.text;E(void 0!==n?n:location.href),B(void 0!==o?o:document.title)}else E(location.href),B(document.title);var i=1;!0===m&&(w(),i=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,tr())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(D)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:Z(!0),attachEventListeners:{click:function(){a("Theme",e.themeCycle());var t=x();null!==t&&r.render(t,Z())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:P}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(T),attachEventListeners:{click:q}}))})),attachEventListeners:{click:function(){d(!1)}}}),attachEventListeners:{click:function(){(l||void 0===l)&&q(),d(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=b();null!==e&&(e.style.zIndex="".concat(f()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){R("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=b();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",y)}(),p(!0)}),1)}))}),i)}}var ar=' ';function or(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(ar),attachEventListeners:{mouseenter:function(){var r=u();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=u();null==r||r.classList.remove("sharer-icon-hover")},click:function(){nr()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=u();r&&(r.style.zIndex="".concat(f()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}var ir={activate:function(){!0!==m&&(!0===C&&c(),void 0===m&&g(!0),void 0===h&&or())},deactivate:function(){void 0!==m&&(!0===m&&g(void 0),w())}};"loading"===document.readyState?window.addEventListener("load",(function r(){c(),setTimeout((function(){window.removeEventListener("load",r)}),1e3)})):c(),console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var sr=Object.freeze({__proto__:null,VERSION:N,button:ir,close:q,open:nr,setColor:function(r){var e={open:nr,close:q};if(A){try{A.setColor(r||"#2596D1")}catch(r){console.warn(r)}a("Color",r||"#2596D1")}else console.warn('"sharerDynamicColors" is not defined.');return e}});window.Sharer=sr}(Dominar,DynamicColors,html2canvas); \ No newline at end of file +!function(r,e,t){"use strict";function n(r){return"kpverseSharer".concat(r)}function a(r,e){var t;return r=n(r),"object"==typeof e&&(e=JSON.stringify(e)),e=function(r){try{return btoa(r)}catch(e){return r}}(e),localStorage.setItem(r,e),(t={})[r]=e,t}function o(r){try{return atob(r)}catch(e){return r}}function i(r){r=n(r);var e=localStorage.getItem(r);if(null!==e){e=o(e);try{return JSON.parse(e)}catch(r){return e}}}var s='@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";body{margin:0}body.sharer-is-open{overflow:hidden}body #kpverse-sharer-button{border-radius:23%;width:48px;height:48px;transition:all .4s;position:fixed;bottom:20px;right:20px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000,0 0 0 1px #0000}body #kpverse-sharer-button.hide{width:32px;height:32px;bottom:-32px;right:28px}body #kpverse-sharer-button #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-secondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onSecondaryContainer);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onSecondaryContainer-rgb),16%);transition:all .4s}body #kpverse-sharer-button.sharer-icon-hover{cursor:none;width:56px;height:56px;bottom:16px;right:16px;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #0000}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-bg{fill:var(--sharer-dc-primaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-fg{fill:var(--sharer-dc-onPrimaryContainer)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-border{fill:rgba(var(--sharer-dc-onPrimaryContainer-rgb),24%)}body #kpverse-sharer-button.sharer-icon-hover #sharer-icon-svg .icon-stroke{stroke:rgba(var(--sharer-dc-onPrimaryContainer-rgb),32%)}body #kpverse-sharer{opacity:1;box-sizing:content-box;backdrop-filter:blur(6px);background-color:#00000052;flex-direction:row;justify-content:space-around;align-items:center;width:100vw;height:100vh;font-family:Inter,sans-serif;transition:opacity .4s;display:flex;position:fixed}body #kpverse-sharer.hide{opacity:0}body #kpverse-sharer *{box-sizing:content-box}body #kpverse-sharer .sharer-window{background-color:var(--sharer-dc-background);-ms-overflow-style:none;scrollbar-width:none;border-radius:16.9px;flex-direction:column;align-items:center;width:100%;max-width:414px;max-height:calc(100% - 20px);display:flex;overflow:auto;box-shadow:inset 0 1px #0000,0 22px 70px 4px #0000008f,0 0 0 1px #00000014}body #kpverse-sharer .sharer-window::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component{background-color:var(--sharer-dc-background);width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{width:calc(100% - 20px)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr{aspect-ratio:1;-ms-overflow-style:none;scrollbar-width:none;border-radius:6.9px;margin:10px 10px 0;overflow:auto}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr::-webkit-scrollbar{display:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item{border-bottom:1px solid rgba(var(--sharer-dc-secondaryContainer-rgb),32%);justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:last-child{border-bottom:none}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container{aspect-ratio:1;background-color:rgba(var(--sharer-dc-onSecondaryContainer-rgb),8%);border-radius:23%;height:calc(100% - 2px);padding:1px}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-icon-container .applist-item-icon-image{border-radius:23%;width:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name{color:var(--sharer-dc-onBackground);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 120px);font-size:18px;font-weight:500;overflow:hidden!important}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-name:hover{cursor:default}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon{aspect-ratio:1;border-radius:23%;height:100%}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover{cursor:pointer;background-color:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon:hover .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon:hover .applist-btns-icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-qr-icon .applist-btns-icon-svg path,body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item .applist-item-open-icon .applist-btns-icon-svg path{fill:rgba(var(--sharer-dc-onSecondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component #sharer-applist-n-qr .applist-item:hover{background-color:rgba(var(--sharer-dc-secondaryContainer-rgb),32%)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container{flex-direction:column;justify-content:space-around;align-items:center;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg{width:calc(100% - 20px);max-width:195px}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .svg-fonts{fill:var(--sharer-dc-onBackground)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-bg{fill:var(--sharer-dc-secondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg .sharer-logo-fg{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-downloadable-component .powered-by-sharer-container #powered-by-sharer-svg:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container{flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 20px);height:30px;padding:10px;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{background-color:var(--sharer-dc-secondaryContainer);border:none;border-radius:6.9px;flex-direction:column;justify-content:space-around;align-items:center;height:100%;padding:0;display:flex}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner:hover,body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center:hover{cursor:pointer}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner{aspect-ratio:1}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container .sharer-cntrl-btn-corner .icon-svg path{fill:var(--sharer-dc-onSecondaryContainer)}body #kpverse-sharer .sharer-window #sharer-cntrl-btns-container #sharer-cntrl-btn-center{color:var(--sharer-dc-onSecondaryContainer);white-space:nowrap;text-overflow:ellipsis;width:calc(100% - 88px);height:calc(100% - 8px);padding:4px;font-size:18px;overflow:hidden!important}@media (width<=434px){body #kpverse-sharer{align-items:end}body #kpverse-sharer .sharer-window{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;box-shadow:inset 0 1px #0000,0 -22px 70px 4px #00000047,0 0 0 1px #00000014}}',C=!0;function c(){!0===C&&r.render(document.head,r.tag("style",{attributes:{id:"kpverse-sharer-css"},children:s}),{clearBeforeRender:!1,insertType:"append"}).then((function(){void 0===i("AppsIdList")&&a("AppsIdList",["x","wa","mstdn","tg","lnkdn","fb","gml","rdt","pntrst","snpcht"]),C=void 0}))}var l=void 0;function d(r){l=r}var h=void 0;function p(r){h=r}function u(){return document.getElementById("kpverse-sharer-button")}var v=function(r,e,t){if(t||2===arguments.length)for(var n,a=0,o=e.length;a>>7)^(e>>>n&1)*r;return t},g=function(r,e){for(var t=[],n=r.length,a=n;a;)for(var o=r[n-a--]^t.shift(),i=e.length;i--;)t[i]^=m(e[i],o);return t},w=function(r){for(var e=[function(){return 0==(t+n)%2},function(){return 0==t%2},function(){return 0==n%3},function(){return 0==(t+n)%3},function(){return 0==((t/2|0)+(n/3|0))%2},function(){return 0==t*n%2+t*n%3},function(){return 0==(t*n%2+t*n%3)%2},function(){return 0==((t+n)%2+t*n%3)%2}][r],t=a;t--;)for(var n=a;n--;)i[t][n]||(o[t][n]^=e())},b=function(){for(var r=function(r,e){e[6]||(r+=a),e.shift(),e.push(r)},e=function(e,n,o){return e&&(r(n,o),n=0),r(n+=a,o),t(o)},t=function(r){var e=r[5],t=e>0&&r[4]==e&&r[3]==3*e&&r[2]==e&&r[1]==e;return(t&&r[6]>=4*e&&r[0]>=e?1:0)+(t&&r[0]>=4*e&&r[6]>=e?1:0)},n=0,i=a*a,s=0,C=a;C--;){for(var d=[0,0,0,0,0,0,0],h=[0,0,0,0,0,0,0],p=!1,u=!1,v=0,f=0,m=a;m--;){o[C][m]==p?5==++v?n+=3:v>5&&n++:(r(v,d),n+=40*t(d),v=1,p=o[C][m]),o[m][C]==u?5==++f?n+=3:f>5&&n++:(r(f,h),n+=40*t(h),f=1,u=o[m][C]);var g=o[C][m];g&&s++,m&&C&&g==o[C][m-1]&&g==o[C-1][m]&&g==o[C-1][m-1]&&(n+=3)}n+=40*e(p,v,d)+40*e(u,f,h)}return n+10*(l(c(20*s-10*i)/i)-1)},H=function(r,e,t){for(;e--;)t.push(r>>>e&1)},V=function(r,e){return r.numBitsCharCount[(e+7)/17|0]},y=function(r,e){return 0!=(r>>>e&1)},x=function(r,e){for(var t=0,n=r.length;n--;){var a=r[n],o=V(a,e);if(1<40)throw"Version number out of range";var e=(16*r+128)*r+64;if(r>=2){var t=r/7|2;e-=(25*t-10)*t-55,r>=7&&(e-=36)}return e},M=function(r,e){for(var t=2;-2<=t;t--)for(var n=2;-2<=n;n--)B(r+n,e+t,1!=s(c(n),c(t)))},k=function(r,e){for(var t=4;-4<=t;t--)for(var n=4;-4<=n;n--){var o=s(c(n),c(t)),i=r+n,C=e+t;0<=i&&i>>9);var i=21522^(e<<10|n);if(i>>>15!=0)throw"Assertion error";for(o=0;o<=5;o++)B(8,o,y(i,o));for(B(8,7,y(i,6)),B(8,8,y(i,7)),B(7,8,y(i,8)),o=9;o<15;o++)B(14-o,8,y(i,o));for(o=0;o<8;o++)B(a-1-o,8,y(i,o));for(o=8;o<15;o++)B(8,a-15+o,y(i,o));B(8,a-8,1)},S=function(){for(var r=a;r--;)B(6,r,0==r%2),B(r,6,0==r%2);for(var t=function(){var r=[];if(e>1)for(var t=2+(e/7|0),n=32==e?26:2*l((a-13)/(2*t-2));t--;)r[t]=t*n+6;return r}(),n=r=t.length;n--;)for(var o=r;o--;)0==o&&0==n||0==o&&n==r-1||o==r-1&&0==n||M(t[o],t[n]);k(3,3),k(a-4,3),k(3,a-4),Z(0),function(){if(!(7>e)){for(var r=e,t=12;t--;)r=r<<1^7973*(r>>>11);var n=e<<12|r;if(t=18,n>>>18!=0)throw"Assertion error";for(;t--;){var o=a-11+t%3,i=t/3|0,s=y(n,t);B(o,i,s),B(i,o,s)}}}()},E=function(r){for(var e=[],t=(r=encodeURI(r),0);t0;s-=2){6==s&&--s;for(var C=0>(t=-t)?n:0,c=0;cs-2;--l)i[C][l]||(o[C][l]=y(r[e>>>3],7-(7&e)),++e);C+=t}}}(function(r){if(r.length!=_(e,t))throw"Invalid argument";for(var n=v[t[0]][e],a=u[t[0]][e],o=L(e)/8|0,i=n-o%n,s=o/n|0,C=[],c=function(r){var e=1,t=[];t[r-1]=1;for(var n=0;n=i)&&f.push(C[w][l]);return f}(C)),0>n){var d=1e9;for(l=8;l--;){w(l),Z(l);var h=b();d>h&&(d=h,n=l),w(l)}}w(n),Z(n),i=[]},P=function(r,e,t,n,a,o){if(void 0===a&&(a=1),void 0===o&&(o=40),void 0===n&&(n=-1),void 0===t&&(t=!0),!(1<=a&&a<=o&&o<=40)||n<-1||n>7)throw"Invalid value";for(var i=[],s=236,c=[],l=a;;){var d=x(r,l);if(d<=8*_(l,e))break;if(l>=o)throw"Data too long";l++}if(t)for(var h=(p=[f.H,f.Q,f.M]).length;h--;)d<=8*_(l,p[h])&&(e=p[h]);for(var p=0;pg)throw"Assertion error";if(H(0,C(4,g-i.length),i),H(0,(8-i.length%8)%8,i),i.length%8!=0)throw"Assertion error";for(;i.length>>3]|=i[h]<<7-(7&h);return R(l,e,c,n)};return function(){function e(r,e){for(var t in r=document.createElementNS(d,r),e||{})r.setAttribute(t,e[t]);return r}var t,n,i,s,C,l,d="http://www.w3.org/2000/svg",h="",p="string"==typeof r?{msg:r}:r||{},u=p.pal||["#000"],v=[1,0,0,1,l=(l=c(p.pad))>-1?l:4,l],m=void 0!==u[0]?u[0]:"#000",g=void 0!==u[1]?u[1]:0,w=p.vrb?0:1;for(T(p.msg||"",f[p.ecl]||f.M,0==p.ecb?0:1,p.mtx),C=a+2*l,i=a;i--;)for(s=0,n=a;n--;)o[i][n]&&(w?(s++,o[i][n-1]||(h+="M"+n+","+i+"h"+s+"v1h-"+s+"v-1z",s=0)):h+="M"+n+","+i+"h1v1h-1v-1z");return t=e("svg",{viewBox:[0,0,C,C].join(" "),width:"100%",style:"aspect-ratio: 1;",class:"sharer-qr",fill:m,"shape-rendering":"crispEdges",xmlns:d,version:"1.1"}),g&&t.appendChild(e("path",{fill:g,d:"M0,0V"+C+"H"+C+"V0H0Z"})),t.appendChild(e("path",{transform:"matrix("+v+")",d:h})),t}()}var W=' ';function X(){var e=Q(),t=$(),n=F();null!==e&&null!==t&&null!==n&&(r.render(e,r.tagList.apply(void 0,tr())),r.render(t,r.SVGParser(T)).then((function(){null!==t&&r.attachEventListeners(t,{click:q})})),r.render(n,"Feedback").then((function(){null!==n&&r.attachEventListeners(n,{click:P})})))}function Y(e){var t,n=Q(),a=$(),o=F();null!==n&&null!==a&&null!==o&&(r.render(n,r.SVGParser((t=z(e.url_format),K({msg:t,pad:0,ecl:"H",ecb:1,pal:["var(--sharer-dc-onSecondaryContainer)"]}).outerHTML))).then((function(){null==n||n.scrollTo({top:0})})),r.render(a,r.SVGParser(W)).then((function(){null!==a&&r.attachEventListeners(a,{click:X})})),r.render(o,"Download QR").then((function(){null!==o&&r.attachEventListeners(o,{click:function(){void 0!==S&&J(S.hostname,e.name)}})})))}var rr={gml:{id:"gml",name:"Email",url_format:"mailto:?subject={%text%}&body={%url%}"},mstdn:{id:"mstdn",name:"Mastodon",url_format:"https://toot.kytta.dev/?text={%text%}%0A{%url%}"},fb:{id:"fb",name:"Facebook",url_format:"https://www.facebook.com/sharer/sharer.php?t={%text%}&u={%url%}"},wa:{id:"wa",name:"WhatsApp",url_format:"https://api.whatsapp.com/send?text={%text%}%0A{%url%}"},x:{id:"x",name:"X",url_format:"https://twitter.com/intent/tweet?text={%text%}&url={%url%}"},lnkdn:{id:"lnkdn",name:"LinkedIn",url_format:"https://www.linkedin.com/shareArticle?mini=true&url={%url%}&title={%text%}"},rdt:{id:"rdt",name:"Reddit",url_format:"https://reddit.com/submit?title={%text%}&url={%url%}"},pntrst:{id:"pntrst",name:"Pinterest",url_format:"https://www.pinterest.com/pin/create/button/?description={%text%}&url={%url%}&method=button"},snpcht:{id:"snpcht",name:"Snapchat",url_format:"https://snapchat.com/scan?attachmentUrl={%url%}"},tg:{id:"tg",name:"Telegram",url_format:"https://telegram.me/share/url?url={%url%}&text={%text%}"}};function er(r){var e=i("AppsIdList");if(Array.isArray(e)){if(r>=e.length||r<=0)return;var t=e.splice(r,1)[0];e.unshift(t),a("AppsIdList",e)}}function tr(){var e=i("AppsIdList");return Array.isArray(e)?e.map((function(e,t){var n=rr[e];return r.tag("div",{attributes:{id:"applist-item-".concat(n.id),class:"applist-item"},children:r.tagList(r.tag("div",{attributes:{class:"applist-item-icon-container"},children:U(n.id)}),r.tag("span",{attributes:{class:"applist-item-name",title:n.name},children:n.name}),r.tag("div",{attributes:{class:"applist-item-qr-icon",title:"Show QR Code"},children:r.SVGParser(j),attachEventListeners:{click:function(){Y(n),er(t)}}}),r.tag("div",{attributes:{class:"applist-item-open-icon",title:"Open ".concat(n.name)},children:r.SVGParser(G),attachEventListeners:{click:function(){R(z(n.url_format)),er(t)}}}))})})):[]}function nr(t){if(!0!==h){if(!0===C&&c(),void 0!==t){var n=t.url,o=t.text;E(void 0!==n?n:location.href),B(void 0!==o?o:document.title)}else E(location.href),B(document.title);var i=1;!0===m&&(w(),i=400),setTimeout((function(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer",class:"hide"},children:r.tag("div",{attributes:{class:"sharer-window"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-downloadable-component"},children:r.tagList(r.tag("div",{attributes:{id:"sharer-applist-n-qr"},children:r.tagList.apply(void 0,tr())}),r.tag("div",{attributes:{class:"powered-by-sharer-container"},children:r.SVGParser(D)}))}),r.tag("div",{attributes:{id:"sharer-cntrl-btns-container"},children:r.tagList(r.tag("button",{attributes:{id:"sharer-cntrl-btn-left",class:"sharer-cntrl-btn-corner"},children:Z(!0),attachEventListeners:{click:function(){a("Theme",e.themeCycle());var t=x();null!==t&&r.render(t,Z())}}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-center"},children:"Feedback",attachEventListeners:{click:P}}),r.tag("button",{attributes:{id:"sharer-cntrl-btn-right",class:"sharer-cntrl-btn-corner"},children:r.SVGParser(T),attachEventListeners:{click:q}}))})),attachEventListeners:{click:function(){d(!1)}}}),attachEventListeners:{click:function(){(l||void 0===l)&&q(),d(!0)}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){setTimeout((function(){var e=b();null!==e&&(e.style.zIndex="".concat(f()),e.classList.remove("hide")),document.body.classList.add("sharer-is-open");var t=document.getElementById("powered-by-sharer-svg");t&&r.attachEventListeners(t,{click:function(){R("https://kpverse.in/sharer?utm_source=sharer&utm_medium=powered_by_sharer&utm_campaign=kpverse_sharer")}}),function(){var r=b();null!==r&&(r.style.height="".concat(document.documentElement.clientHeight,"px")),addEventListener("resize",y)}(),p(!0)}),1)}))}),i)}}var ar=' ';function or(){r.render(document.body,r.tag("div",{attributes:{id:"kpverse-sharer-button",class:"hide",title:"Click to Share!"},children:r.SVGParser(ar),attachEventListeners:{mouseenter:function(){var r=u();null==r||r.classList.add("sharer-icon-hover")},mouseleave:function(){var r=u();null==r||r.classList.remove("sharer-icon-hover")},click:function(){nr()}}}),{clearBeforeRender:!1,insertType:"prepend"}).then((function(){var r=u();r&&(r.style.zIndex="".concat(f()),setTimeout((function(){r&&r.classList.remove("hide")}),1))}))}var ir={activate:function(){!0!==m&&(!0===C&&c(),void 0===m&&g(!0),void 0===h&&or())},deactivate:function(){void 0!==m&&(!0===m&&g(void 0),w())}};"loading"===document.readyState?window.addEventListener("load",(function r(){c(),setTimeout((function(){window.removeEventListener("load",r)}),1e3)})):c(),console.log("Discover the incredible sharing capabilities of Sharer from KPVERSE.\n\nFor more information about Sharer, visit https://kpverse.in/sharer?utm_source=sharer&utm_medium=browser_console&utm_campaign=kpverse_sharer.");var sr=Object.freeze({__proto__:null,VERSION:N,button:ir,close:q,open:nr,setColor:function(r){var e={open:nr,close:q};if(A){try{A.setColor(r||"#2596D1")}catch(r){console.warn(r)}a("Color",r||"#2596D1")}else console.warn('"sharerDynamicColors" is not defined.');return e}});window.Sharer=sr}(Dominar,DynamicColors,html2canvas); \ No newline at end of file diff --git a/package.json b/package.json index 6002bb1..058aa7a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@patelka2211/sharer", - "version": "0.1.0", - "description": "A URL Sharing Tool for Websites and Web Apps, from KPVERSE", + "version": "1.0.0", + "description": "Seamlessly Share URLs and Generate SharerQR Codes!", "main": "index.js", "module": "index.js", "types": "index.d.ts", @@ -57,4 +57,4 @@ "terser": "^5.19.2", "typescript": "^5.1.6" } -} +} \ No newline at end of file diff --git a/rollup.config.mjs b/rollup.config.mjs index e94aa35..ada2558 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -6,7 +6,7 @@ const currentDate = new Date(), banner = `/** * Sharer from KPVERSE * - * v0.1.0 + * v1.0.0 * * Updated on ${formattedDate}. * diff --git a/src/components/button/buttonObject.ts b/src/components/button/buttonObject.ts index 588b810..e628347 100644 --- a/src/components/button/buttonObject.ts +++ b/src/components/button/buttonObject.ts @@ -2,8 +2,7 @@ import { activate } from "./activate"; import { deactivate } from "./deactivate"; /** - * ### SharerButton - * - An object containing `activate` and `deactivate` methods. + * Sharer button is An object containing `activate` and `deactivate` methods. */ export const button: { /** diff --git a/src/metadata.ts b/src/metadata.ts index 0264f51..6002fd2 100644 --- a/src/metadata.ts +++ b/src/metadata.ts @@ -1,4 +1,4 @@ /** * Sharer version */ -export const VERSION = "0.1.0"; +export const VERSION = "1.0.0"; diff --git a/utility.js b/utility.js index 639f101..d5e4cc3 100644 --- a/utility.js +++ b/utility.js @@ -1,28 +1 @@ -!(function () { - function e(e) { - return "Sharer utility script tag doesn't have ".concat(e, "."); - } - if (window.Sharer) - if (document.body) { - var t = document.getElementById("sharer-utility-js"); - if (t) - t.classList.forEach(function (e) { - if ("activate-button" === e) - try { - window.Sharer.button.activate(); - } catch (e) { - console.log(e); - } - else if (0 === e.indexOf("set-color-")) { - var t = e.replace("set-color-", "#"); - try { - window.Sharer.setColor(t); - } catch (e) { - console.log(e); - } - } - }); - else console.warn(e('id="sharer-utility-js"')); - } else console.warn(e('"defer" attribute')); - else console.log("Sharer is not defined. Get it from kpverse.in/sharer/."); -})(); +!function(){var e=function(e){return"Sharer utility script tag doesn't have ".concat(e,".")},t="sharer-utility-js";if(window.Sharer)if(document.body){var r=document.getElementById(t);if(r)r.classList.forEach((function(e){if("activate-button"===e)try{window.Sharer.button.activate()}catch(e){console.warn(e)}else if(0===e.indexOf("set-color-")){var t=e.replace("set-color-","#");try{window.Sharer.setColor(t)}catch(e){console.warn(e)}}}));else console.warn(e('id="'.concat(t,'"')))}else console.warn(e('"defer" attribute'));else console.warn("Sharer is not defined. Get it today from https://kpverse.in/sharer/.")}(); \ No newline at end of file diff --git a/utility.ts b/utility.ts index c8c5ff8..70a6f35 100644 --- a/utility.ts +++ b/utility.ts @@ -1,10 +1,10 @@ (function () { - function SHARER_UTILITY_PROBLEM_FORMAT(problem: string) { - return `Sharer utility script tag doesn't have ${problem}.`; - } - - const SHARER_NOT_DEFINED = - "Sharer is not defined. Get it from kpverse.in/sharer/."; + const SHARER_UTILITY_PROBLEM_FORMAT = function (problem: string) { + return `Sharer utility script tag doesn't have ${problem}.`; + }, + SHARER_NOT_DEFINED = + "Sharer is not defined. Get it today from https://kpverse.in/sharer/.", + SCRIPT_TAG_ID = "sharer-utility-js"; if (!(window as any).Sharer) { console.warn(SHARER_NOT_DEFINED); @@ -16,10 +16,10 @@ return; } - let script = document.getElementById("sharer-utility-js"); + let script = document.getElementById(SCRIPT_TAG_ID); if (!script) { - console.warn(SHARER_UTILITY_PROBLEM_FORMAT(`id="sharer-utility-js"`)); + console.warn(SHARER_UTILITY_PROBLEM_FORMAT(`id="${SCRIPT_TAG_ID}"`)); return; }