From 9c8180144797dd7b7dd4396c4a978310bedf5c12 Mon Sep 17 00:00:00 2001 From: bearfm Date: Thu, 7 Mar 2024 18:49:59 -0800 Subject: [PATCH] p --- Makefile | 15 +- dist/404.html | 9 +- dist/418.html | 9 +- dist/blog/firstPost.html | 9 +- dist/blog/index.html | 9 +- dist/blogIndex.js | 2 +- dist/coolLinks.html | 9 +- dist/css.js | 1 + dist/css/style.css | 194 ++++++++++++++++++- dist/css/style.css.map | 1 + dist/git/index.html | 9 +- dist/index.html | 9 +- dist/sitemap.xml | 2 +- dist/snoop.html | 40 ++++ js/{ => blogIndex}/blogIndex.ts | 0 js/css/css.ts | 1 + package.json | 10 +- pnpm-lock.yaml | 318 +++++++++++++++++++++++++++++++- src/scss/style.scss | 17 ++ src/snoop.md | 7 + src/tmpl.html | 9 +- tsconfig.json | 2 +- webpack.config.js | 29 ++- 23 files changed, 666 insertions(+), 45 deletions(-) create mode 100644 dist/css.js create mode 100644 dist/css/style.css.map create mode 100644 dist/snoop.html rename js/{ => blogIndex}/blogIndex.ts (100%) create mode 100644 js/css/css.ts create mode 100644 src/snoop.md diff --git a/Makefile b/Makefile index 0bab810..3af3a5f 100644 --- a/Makefile +++ b/Makefile @@ -18,7 +18,8 @@ STATICOUT = $(patsubst $(STATICDIR)/%, $(DISTDIR)/%, $(STATICFILES)) URI = "https://bear.oops.wtf" .PHONY: all -all: html css $(DISTDIR)/robots.txt $(DISTDIR)/sitemap.xml $(DISTDIR)/blogindex.txt static js +# css +all: html $(DISTDIR)/robots.txt $(DISTDIR)/sitemap.xml $(DISTDIR)/blogindex.txt static js # Build @@ -40,14 +41,14 @@ $(DISTDIR)/%.html: $(SRCDIR)/%.md $(TMPL) js: pnpm exec webpack -.PHONY: css -css: $(CSSFILES) +#.PHONY: css +#css: $(CSSFILES) -$(CSSDIR)/%.css: $(SCSSDIR)/%.scss | $(CSSDIR) - sass --sourcemap=none --load-path=$(SCSSINCDIR) --style=compressed --scss $< $@ +#$(CSSDIR)/%.css: $(SCSSDIR)/%.scss | $(CSSDIR) +# sass --sourcemap=none --load-path=$(SCSSINCDIR) --style=compressed --scss $< $@ -$(CSSDIR): - mkdir -p $@ +#$(CSSDIR): +# mkdir -p $@ $(DISTDIR)/robots.txt: @echo "User-Agent: *" > $@ diff --git a/dist/404.html b/dist/404.html index 2bc093c..88e1c7b 100644 --- a/dist/404.html +++ b/dist/404.html @@ -4,7 +4,8 @@ - + + 404 - Not Found @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 25, 2024

Page last modified: January 25, 2024

@@ -34,4 +37,6 @@ href="xertun.webp">

+ + diff --git a/dist/418.html b/dist/418.html index d84305e..356b3c4 100644 --- a/dist/418.html +++ b/dist/418.html @@ -4,7 +4,8 @@ - + + 404 - Not Found @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 27, 2024

Page last modified: January 27, 2024

@@ -34,4 +37,6 @@ href="thing.webp">

+ + diff --git a/dist/blog/firstPost.html b/dist/blog/firstPost.html index 86f7b4b..0a55de6 100644 --- a/dist/blog/firstPost.html +++ b/dist/blog/firstPost.html @@ -4,7 +4,8 @@ - + + First Post @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 26, 2024

Page last modified: January 26, 2024

@@ -34,4 +37,6 @@

me ^

+ + diff --git a/dist/blog/index.html b/dist/blog/index.html index f1762de..53996f5 100644 --- a/dist/blog/index.html +++ b/dist/blog/index.html @@ -4,7 +4,8 @@ - + + Blog Index @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 26, 2024

Page last modified: January 26, 2024

@@ -39,4 +42,6 @@ href="blogIndex.js">

+ + diff --git a/dist/blogIndex.js b/dist/blogIndex.js index 316c370..8a167ff 100644 --- a/dist/blogIndex.js +++ b/dist/blogIndex.js @@ -1 +1 @@ -({481:function(){var e=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(e){o(e)}}function c(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,c)}l((r=r.apply(e,t||[])).next())}))},t=this&&this.__generator||function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function c(c){return function(l){return function(c){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&c[0]?r.return:c[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,c[1])).done)return i;switch(r=0,i&&(c=[2&c[0],i.value]),c[0]){case 0:case 1:i=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!((i=(i=a.trys).length>0&&i[i.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!i||c[1]>i[0]&&c[1]0&&i[i.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!i||c[1]>i[0]&&c[1] - + + Blog Index @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 26, 2024

Page last modified: March 4, 2024

@@ -35,4 +38,6 @@ Page

+ + diff --git a/dist/css.js b/dist/css.js new file mode 100644 index 0000000..547f99c --- /dev/null +++ b/dist/css.js @@ -0,0 +1 @@ +(()=>{"use strict";var e,t,r,o,n,a,i,c,l,d,s,p,u,f,m={777:(e,t,r)=>{r.d(t,{A:()=>c});var o=r(620),n=r.n(o),a=r(69),i=r.n(a)()(n());i.push([e.id,"@import url(https://fonts.googleapis.com/icon?family=Material+Icons);"]),i.push([e.id,'body{font-family:Arial,sans-serif;font-size:1.5em;margin:2em;line-height:1.6;height:100vh;width:auto;margin:0;padding:0;text-align:left;background-color:#1b1b1b;color:#ebdbb2;white-space:normal}.header-container{width:100vw;text-align:center;justify-content:center}.center-image{display:block;margin-left:auto;margin-right:auto}.meta{font-size:.75em;line-height:1;color:#504945}.center-box{text-align:left;width:15%;margin:auto}header{background-color:#2c2927;color:#ebdbb2;height:auto}header a{color:#ebdbb2;text-decoration:dotted;font-size:1.5rem}header a i{vertical-align:middle;display:inline-block}nav{background-color:#2c2927;color:#ebdbb2;display:flex;flex-direction:row;padding-top:.25%;padding-bottom:.25%;align-items:center;justify-content:center;gap:6px}.title{font-weight:bolder;text-align:center}.article{margin-top:0;margin-bottom:auto;margin-left:0;margin-right:0;text-align:left;padding-left:42.25%;padding-right:42.25%;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:left;align-items:normal;white-space:normal}.article p{text-align:left}.article h1,.article h2,.article h3,.article h4,.article h5,.article h6{text-align:left;display:block}ul,li,ol{margin:0;padding:0;list-style:none;display:block}h1,h2,h3,h4,h5,h6{color:#fbf1c7;display:block}a{color:#458588;display:block}a:hover{color:#689d6a}button{background-color:#b16286;color:#fbf1c7}button:hover{background-color:#458588}p{margin-bottom:1em;display:inline-block;white-space:normal}pre{background-color:#504945;padding:.5em;overflow:auto}code{font-family:"Courier New",Courier,monospace;background-color:#504945;color:#d65d0e;padding:.2em;border-radius:3px;display:block}table{border-collapse:collapse;width:100%;margin-bottom:1em;border-collapse:collapse;display:table}table th,table td{border:1px solid #2c2927;padding:8px;text-align:left}th,td{border:1px solid #fbf1c7;padding:8px;text-align:left}th{background-color:#ebdbb2}blockquote{border-left:2px solid #504945;margin:1em 0;padding-left:1em}footer{background-color:#2c2927;color:#d5c4a1}',""]);const c=i},69:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",o=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),o&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),o&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,o,n,a){"string"==typeof e&&(e=[[null,e,void 0]]);var i={};if(o)for(var c=0;c0?" ".concat(s[5]):""," {").concat(s[1],"}")),s[5]=a),r&&(s[2]?(s[1]="@media ".concat(s[2]," {").concat(s[1],"}"),s[2]=r):s[2]=r),n&&(s[4]?(s[1]="@supports (".concat(s[4],") {").concat(s[1],"}"),s[4]=n):s[4]="".concat(n)),t.push(s))}},t}},620:e=>{e.exports=function(e){return e[1]}},646:e=>{var t=[];function r(e){for(var r=-1,o=0;o{var t={};e.exports=function(e,r){var o=function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}(e);if(!o)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");o.appendChild(r)}},506:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},942:(e,t,r)=>{e.exports=function(e){var t=r.nc;t&&e.setAttribute("nonce",t)}},959:e=>{e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(r){!function(e,t,r){var o="";r.supports&&(o+="@supports (".concat(r.supports,") {")),r.media&&(o+="@media ".concat(r.media," {"));var n=void 0!==r.layer;n&&(o+="@layer".concat(r.layer.length>0?" ".concat(r.layer):""," {")),o+=r.css,n&&(o+="}"),r.media&&(o+="}"),r.supports&&(o+="}");var a=r.sourceMap;a&&"undefined"!=typeof btoa&&(o+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),t.styleTagTransform(o,e,t.options)}(t,e,r)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},215:e=>{e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}}},b={};function h(e){var t=b[e];if(void 0!==t)return t.exports;var r=b[e]={id:e,exports:{}};return m[e](r,r.exports,h),r.exports}h.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return h.d(t,{a:t}),t},h.d=(e,t)=>{for(var r in t)h.o(t,r)&&!h.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},h.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),h.nc=void 0,e=h(646),t=h.n(e),r=h(959),o=h.n(r),n=h(13),a=h.n(n),i=h(942),c=h.n(i),l=h(506),d=h.n(l),s=h(215),p=h.n(s),u=h(777),(f={}).styleTagTransform=p(),f.setAttributes=c(),f.insert=a().bind(null,"head"),f.domAPI=o(),f.insertStyleElement=d(),t()(u.A,f),u.A&&u.A.locals&&u.A.locals})(); \ No newline at end of file diff --git a/dist/css/style.css b/dist/css/style.css index 4c9401b..52aa885 100644 --- a/dist/css/style.css +++ b/dist/css/style.css @@ -1 +1,193 @@ -@import "https://fonts.googleapis.com/icon?family=Material+Icons";body{font-family:Arial, sans-serif;font-size:1.5em;margin:2em;line-height:1.6;height:100vh;width:auto;margin:0;padding:0;text-align:left;background-color:#1b1b1b;color:#ebdbb2}.center-image{display:block;margin-left:auto;margin-right:auto}.meta{font-size:0.75em;line-height:1;color:#504945}.center-box{text-align:left;width:15%;margin:auto}header{background-color:#2c2927;color:#ebdbb2;height:auto}header a{color:#ebdbb2;text-decoration:dotted;font-size:1.5rem}header a i{vertical-align:middle;display:inline-block}nav{background-color:#2c2927;color:#ebdbb2;display:flex;flex-direction:row;padding-top:.25%;padding-bottom:.25%;align-items:center;justify-content:center;gap:6px}.title{font-weight:bolder;text-align:center}.article{margin-top:0;margin-bottom:auto;margin-left:0;margin-right:0;text-align:left;padding-left:42.25%;padding-right:42.25%;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:left;align-items:normal}.article p{text-align:left}.article h1,.article h2,.article h3,.article h4,.article h5,.article h6{text-align:left}ul,li,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{color:#fbf1c7}a{color:#458588}a:hover{color:#689d6a}button{background-color:#b16286;color:#fbf1c7}button:hover{background-color:#458588}p{margin-bottom:1em}pre{background-color:#504945;padding:0.5em;overflow:auto}code{font-family:'Courier New', Courier, monospace;background-color:#504945;color:#d65d0e;padding:0.2em;border-radius:3px}table{border-collapse:collapse;width:100%;margin-bottom:1em;border-collapse:collapse}table th,table td{border:1px solid #2c2927;padding:8px;text-align:left}th,td{border:1px solid #fbf1c7;padding:8px;text-align:left}th{background-color:#ebdbb2}blockquote{border-left:2px solid #504945;margin:1em 0;padding-left:1em}footer{background-color:#2c2927;color:#d5c4a1} +/* + * Copyright (c) 2024 BearFM + + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +@import "https://fonts.googleapis.com/icon?family=Material+Icons"; +body { + font-family: Arial, sans-serif; + font-size: 1.5em; + margin: 2em; + line-height: 1.6; + height: 100vh; + width: auto; + margin: 0; + padding: 0; + text-align: left; + background-color: #1b1b1b; + color: #ebdbb2; +} + +.center-image { + display: block; + margin-left: auto; + margin-right: auto; +} + +.meta { + font-size: 0.75em; + line-height: 1; + color: #504945; +} + +.center-box { + text-align: left; + width: 15%; + margin: auto; +} + +header { + background-color: #2c2927; + color: #ebdbb2; + height: auto; +} +header a { + color: #ebdbb2; + text-decoration: dotted; + font-size: 1.5rem; +} +header a i { + vertical-align: middle; + display: inline-block; +} + +nav { + background-color: #2c2927; + color: #ebdbb2; + display: flex; + flex-direction: row; + padding-top: 0.25%; + padding-bottom: 0.25%; + align-items: center; + justify-content: center; + gap: 6px; +} + +.title { + font-weight: bolder; + text-align: center; +} + +.article { + margin-top: 0; + margin-bottom: auto; + margin-left: 0; + margin-right: 0; + text-align: left; + padding-left: 42.25%; + padding-right: 42.25%; + display: flex; + flex-direction: column; + flex-wrap: wrap; + justify-content: left; + align-items: normal; + white-space: normal; +} +.article p { + text-align: left; +} + +.article h1, +.article h2, +.article h3, +.article h4, +.article h5, +.article h6 { + text-align: left; + display: initial; +} + +ul, li, ol { + margin: 0; + padding: 0; + list-style: none; + display: initial; +} + +h1, h2, h3, h4, h5, h6 { + color: #fbf1c7; + display: initial; +} + +a { + color: #458588; + display: initial; +} +a:hover { + color: #689d6a; +} + +button { + background-color: #b16286; + color: #fbf1c7; +} +button:hover { + background-color: #458588; +} + +p { + margin-bottom: 1em; + display: initial; +} + +pre { + background-color: #504945; + padding: 0.5em; + overflow: auto; +} + +code { + font-family: "Courier New", Courier, monospace; + background-color: #504945; + color: #d65d0e; + padding: 0.2em; + border-radius: 3px; + display: block; +} + +table { + border-collapse: collapse; + width: 100%; + margin-bottom: 1em; + border-collapse: collapse; + display: table; +} +table th, table td { + border: 1px solid #2c2927; + padding: 8px; + text-align: left; +} + +th, td { + border: 1px solid #fbf1c7; + padding: 8px; + text-align: left; +} + +th { + background-color: #ebdbb2; +} + +blockquote { + border-left: 2px solid #504945; + margin: 1em 0; + padding-left: 1em; +} + +footer { + background-color: #2c2927; + color: #d5c4a1; +} + +/*# sourceMappingURL=style.css.map */ diff --git a/dist/css/style.css.map b/dist/css/style.css.map new file mode 100644 index 0000000..8c82d72 --- /dev/null +++ b/dist/css/style.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["../../src/scss/style.scss"],"names":[],"mappings":"AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAgBQ;AAkBR;EACI;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EAEA,kBA9BS;EA+BT,OA9BS;;;AAiCb;EACI;EACA;EACA;;;AAGJ;EACI;EACA;EACA,OAxCY;;;AA2ChB;EACI;EACA;EACA;;;AAGJ;EACI,kBAnDY;EAoDZ,OArDS;EAuDT;;AAEA;EACI,OA1DK;EA2DL;EACA;;AACA;EACI;EACA;;;AAKZ;EAGI,kBAtEY;EAuEZ,OApEa;EAqEb;EACA;EAEA,aAPM;EAQN,gBARM;EAUN;EACA;EAEA;;;AAGJ;EACI;EACA;;;AAGJ;EAGI;EACA;EACA;EACA;EACA;EAEA,cARM;EASN,eATM;EAWN;EACA;EACA;EACA;EACA;EAIA;;AAHA;EACI;;;AAKR;AAAA;AAAA;AAAA;AAAA;AAAA;EAMI;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI,OAhIa;EAiIb;;;AAGJ;EACI,OA9HW;EAkIX;;AAHA;EACE,OA9HS;;;AAmIf;EACI,kBArIa;EAsIb,OA9Ia;;AA+Ib;EACE,kBAzIS;;;AA8If;EACI;EACA;;;AAGJ;EACI,kBA5JY;EA6JZ;EACA;;;AAGJ;EACI;EACA,kBAnKY;EAoKZ,OAzJa;EA0Jb;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EAMA;;AALA;EACI;EACA;EACA;;;AAKR;EACI;EACA;EACA;;;AAGJ;EACI,kBA5La;;;AA+LjB;EACI;EACA;EACA;;;AAGJ;EACI,kBAzMY;EA0MZ,OAtMa","file":"style.css"} \ No newline at end of file diff --git a/dist/git/index.html b/dist/git/index.html index 4d1dc8f..5dd9dbd 100644 --- a/dist/git/index.html +++ b/dist/git/index.html @@ -4,7 +4,8 @@ - + + You shouldn’t be here… @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 26, 2024

Page last modified: January 26, 2024

@@ -34,4 +37,6 @@

Until next time…

+ + diff --git a/dist/index.html b/dist/index.html index 8ffadeb..26430c6 100644 --- a/dist/index.html +++ b/dist/index.html @@ -4,7 +4,8 @@ - + + bear.oops.wtf @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: January 6, 2024

Page last modified: January 25, 2024

@@ -35,4 +38,6 @@

Blog Posts

+ + diff --git a/dist/sitemap.xml b/dist/sitemap.xml index 6e3e109..20156ab 100644 --- a/dist/sitemap.xml +++ b/dist/sitemap.xml @@ -3,8 +3,8 @@ https://bear.oops.wtf/418.html https://bear.oops.wtf/blog/firstPost.html https://bear.oops.wtf/blog/index.html -https://bear.oops.wtf/blog/secondPost.html https://bear.oops.wtf/coolLinks.html https://bear.oops.wtf/git/index.html https://bear.oops.wtf/index.html +https://bear.oops.wtf/snoop.html diff --git a/dist/snoop.html b/dist/snoop.html new file mode 100644 index 0000000..9e9279f --- /dev/null +++ b/dist/snoop.html @@ -0,0 +1,40 @@ + + + + + + + + + bear.oops.wtf + + + + + + + + + + + +
+ +
+
+

BEAR.OOPS.WTF

+
+
+

Page created: January 6, 2024

+

Page last modified: January 25, 2024

+
+
+ +
+ + + + diff --git a/js/blogIndex.ts b/js/blogIndex/blogIndex.ts similarity index 100% rename from js/blogIndex.ts rename to js/blogIndex/blogIndex.ts diff --git a/js/css/css.ts b/js/css/css.ts new file mode 100644 index 0000000..60c7674 --- /dev/null +++ b/js/css/css.ts @@ -0,0 +1 @@ +import "../../src/scss/style.scss"; \ No newline at end of file diff --git a/package.json b/package.json index af6b97a..25028a5 100644 --- a/package.json +++ b/package.json @@ -2,10 +2,15 @@ "devDependencies": { "@webpack-cli/generators": "^3.0.7", "css-loader": "^6.10.0", + "devtools-detector": "^2.0.15", + "disable-tree-shaking-for-chunk-plugin": "^2.0.0", + "glob": "^10.3.10", "mini-css-extract-plugin": "^2.8.1", + "node-sass": "^9.0.0", "sass": "^1.71.1", "sass-loader": "^14.1.1", "style-loader": "^3.3.4", + "terser-webpack-plugin": "^5.3.10", "ts-loader": "^9.5.1", "typescript": "^5.3.3", "webpack": "^5.90.3", @@ -14,5 +19,8 @@ "scripts": { "build": "NODE_ENV=production make", "dev": "NODE_ENV=development make" - } + }, + "sideEffects": [ + "./js/main.ts" + ] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9aca02c..38aa177 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,18 +11,33 @@ devDependencies: css-loader: specifier: ^6.10.0 version: 6.10.0(webpack@5.90.3) + devtools-detector: + specifier: ^2.0.15 + version: 2.0.15 + disable-tree-shaking-for-chunk-plugin: + specifier: ^2.0.0 + version: 2.0.0(webpack@5.90.3) + glob: + specifier: ^10.3.10 + version: 10.3.10 mini-css-extract-plugin: specifier: ^2.8.1 version: 2.8.1(webpack@5.90.3) + node-sass: + specifier: ^9.0.0 + version: 9.0.0 sass: specifier: ^1.71.1 version: 1.71.1 sass-loader: specifier: ^14.1.1 - version: 14.1.1(sass@1.71.1)(webpack@5.90.3) + version: 14.1.1(node-sass@9.0.0)(sass@1.71.1)(webpack@5.90.3) style-loader: specifier: ^3.3.4 version: 3.3.4(webpack@5.90.3) + terser-webpack-plugin: + specifier: ^5.3.10 + version: 5.3.10(webpack@5.90.3) ts-loader: specifier: ^9.5.1 version: 9.5.1(typescript@5.3.3)(webpack@5.90.3) @@ -555,6 +570,10 @@ packages: resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==} dev: true + /@types/minimist@1.2.5: + resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} + dev: true + /@types/node@15.14.9: resolution: {integrity: sha512-qjd88DrCxupx/kJD5yQgZdcYKZKSIGBVDIBE1/LTGcNm3d2Np/jxojkdePDdfnBHJc5W7vSMpbJ1aB7p/Py69A==} dev: true @@ -924,6 +943,11 @@ packages: engines: {node: '>=8'} dev: true + /arrify@1.0.1: + resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} + engines: {node: '>=0.10.0'} + dev: true + /arrify@2.0.1: resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==} engines: {node: '>=8'} @@ -933,6 +957,10 @@ packages: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: true + /async-foreach@0.1.3: + resolution: {integrity: sha512-VUeSMD8nEGBWaZK4lizI1sf3yEC7pnAQ/mrI7pC2fBz2s/tq5jWWEngTwaf0Gruu/OoXRGLGg1XFqpYBiGTYJA==} + dev: true + /async@3.2.5: resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==} dev: true @@ -1108,6 +1136,20 @@ packages: unique-filename: 3.0.0 dev: true + /camelcase-keys@6.2.2: + resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} + engines: {node: '>=8'} + dependencies: + camelcase: 5.3.1 + map-obj: 4.3.0 + quick-lru: 4.0.1 + dev: true + + /camelcase@5.3.1: + resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} + engines: {node: '>=6'} + dev: true + /caniuse-lite@1.0.30001593: resolution: {integrity: sha512-UWM1zlo3cZfkpBysd7AS+z+v007q9G1+fLTUU42rQnY6t2axoogPW/xol6T7juU5EUoOhML4WgBIdG+9yYqAjQ==} dev: true @@ -1187,6 +1229,15 @@ packages: engines: {node: '>= 10'} dev: true + /cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + /clone-buffer@1.0.0: resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} engines: {node: '>= 0.10'} @@ -1287,6 +1338,10 @@ packages: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} dev: true + /compare-versions@3.6.0: + resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==} + dev: true + /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: true @@ -1363,6 +1418,19 @@ packages: deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. dev: true + /decamelize-keys@1.1.1: + resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} + engines: {node: '>=0.10.0'} + dependencies: + decamelize: 1.2.0 + map-obj: 1.0.1 + dev: true + + /decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + dev: true + /deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} @@ -1382,6 +1450,12 @@ packages: resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} dev: true + /devtools-detector@2.0.15: + resolution: {integrity: sha512-JWls4QM/iSp2jUjzWXbnITXxVWvNNM1TFW6mFiyfQ4Ta1a+kZxSrggN4gvkWmB0G3BCt96kSChz9Hil2NkimbA==} + dependencies: + compare-versions: 3.6.0 + dev: true + /dezalgo@1.0.4: resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==} dependencies: @@ -1401,6 +1475,16 @@ packages: path-type: 4.0.0 dev: true + /disable-tree-shaking-for-chunk-plugin@2.0.0(webpack@5.90.3): + resolution: {integrity: sha512-XnpHhdD6FCvosmzfX8L1aEwzYf5mCu8Yvbz7PscctwmQTqK6KZnS/r2FkRegH4Ff2NB3xmUUtnwOJbTjRsXq0g==} + engines: {node: 12.x, npm: 7.x || 8.x} + requiresBuild: true + peerDependencies: + webpack: 5.x + dependencies: + webpack: 5.90.3(webpack-cli@5.1.4) + dev: true + /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true @@ -1710,6 +1794,23 @@ packages: wide-align: 1.1.5 dev: true + /gaze@1.1.3: + resolution: {integrity: sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==} + engines: {node: '>= 4.0.0'} + dependencies: + globule: 1.3.4 + dev: true + + /get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + dev: true + + /get-stdin@4.0.1: + resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==} + engines: {node: '>=0.10.0'} + dev: true + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -1747,6 +1848,17 @@ packages: path-scurry: 1.10.1 dev: true + /glob@7.1.7: + resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -1781,6 +1893,15 @@ packages: slash: 3.0.0 dev: true + /globule@1.3.4: + resolution: {integrity: sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==} + engines: {node: '>= 0.10'} + dependencies: + glob: 7.1.7 + lodash: 4.17.21 + minimatch: 3.0.8 + dev: true + /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true @@ -1790,6 +1911,11 @@ packages: engines: {node: '>=8.0.0'} dev: true + /hard-rejection@2.1.0: + resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} + engines: {node: '>=6'} + dev: true + /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -2049,6 +2175,11 @@ packages: engines: {node: '>=0.12.0'} dev: true + /is-plain-obj@1.1.0: + resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} + engines: {node: '>=0.10.0'} + dev: true + /is-plain-obj@2.1.0: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} @@ -2139,6 +2270,10 @@ packages: supports-color: 8.1.1 dev: true + /js-base64@2.6.4: + resolution: {integrity: sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==} + dev: true + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: true @@ -2329,6 +2464,16 @@ packages: - supports-color dev: true + /map-obj@1.0.1: + resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} + engines: {node: '>=0.10.0'} + dev: true + + /map-obj@4.3.0: + resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} + engines: {node: '>=8'} + dev: true + /mem-fs-editor@9.7.0(mem-fs@2.3.0): resolution: {integrity: sha512-ReB3YD24GNykmu4WeUL/FDIQtkoyGB6zfJv60yfCo3QjKeimNcTqv2FT83bP0ccs6uu+sm5zyoBlspAzigmsdg==} engines: {node: '>=12.10.0'} @@ -2361,6 +2506,24 @@ packages: vinyl-file: 3.0.0 dev: true + /meow@9.0.0: + resolution: {integrity: sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==} + engines: {node: '>=10'} + dependencies: + '@types/minimist': 1.2.5 + camelcase-keys: 6.2.2 + decamelize: 1.2.0 + decamelize-keys: 1.1.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 3.0.3 + read-pkg-up: 7.0.1 + redent: 3.0.0 + trim-newlines: 3.0.1 + type-fest: 0.18.1 + yargs-parser: 20.2.9 + dev: true + /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} dev: true @@ -2395,6 +2558,11 @@ packages: engines: {node: '>=6'} dev: true + /min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true + /mini-css-extract-plugin@2.8.1(webpack@5.90.3): resolution: {integrity: sha512-/1HDlyFRxWIZPI1ZpgqlZ8jMw/1Dp/dl3P0L1jtZ+zVcHqwPhGwaJwKL00WVgfnBy6PWCde9W65or7IIETImuA==} engines: {node: '>= 12.13.0'} @@ -2406,6 +2574,12 @@ packages: webpack: 5.90.3(webpack-cli@5.1.4) dev: true + /minimatch@3.0.8: + resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==} + dependencies: + brace-expansion: 1.1.11 + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -2433,6 +2607,15 @@ packages: brace-expansion: 2.0.1 dev: true + /minimist-options@4.1.0: + resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} + engines: {node: '>= 6'} + dependencies: + arrify: 1.0.1 + is-plain-obj: 1.1.0 + kind-of: 6.0.3 + dev: true + /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: true @@ -2568,6 +2751,10 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true + /nan@2.18.0: + resolution: {integrity: sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==} + dev: true + /nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -2640,6 +2827,31 @@ packages: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true + /node-sass@9.0.0: + resolution: {integrity: sha512-yltEuuLrfH6M7Pq2gAj5B6Zm7m+gdZoG66wTqG6mIZV/zijq3M2OO2HswtT6oBspPyFhHDcaxWpsBm0fRNDHPg==} + engines: {node: '>=16'} + hasBin: true + requiresBuild: true + dependencies: + async-foreach: 0.1.3 + chalk: 4.1.2 + cross-spawn: 7.0.3 + gaze: 1.1.3 + get-stdin: 4.0.1 + glob: 7.2.3 + lodash: 4.17.21 + make-fetch-happen: 10.2.1 + meow: 9.0.0 + nan: 2.18.0 + node-gyp: 8.4.1 + sass-graph: 4.0.1 + stdout-stream: 1.4.1 + true-case-path: 2.2.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /nopt@5.0.0: resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} engines: {node: '>=6'} @@ -2665,6 +2877,16 @@ packages: validate-npm-package-license: 3.0.4 dev: true + /normalize-package-data@3.0.3: + resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} + engines: {node: '>=10'} + dependencies: + hosted-git-info: 4.1.0 + is-core-module: 2.13.1 + semver: 7.6.0 + validate-npm-package-license: 3.0.4 + dev: true + /normalize-package-data@5.0.0: resolution: {integrity: sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3204,6 +3426,11 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} dev: true + /quick-lru@4.0.1: + resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} + engines: {node: '>=8'} + dev: true + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -3323,6 +3550,14 @@ packages: resolve: 1.22.8 dev: true + /redent@3.0.0: + resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} + engines: {node: '>=8'} + dependencies: + indent-string: 4.0.0 + strip-indent: 3.0.0 + dev: true + /remove-trailing-separator@1.1.0: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} dev: true @@ -3332,6 +3567,11 @@ packages: engines: {node: '>= 0.10'} dev: true + /require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + dev: true + /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -3412,7 +3652,18 @@ packages: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true - /sass-loader@14.1.1(sass@1.71.1)(webpack@5.90.3): + /sass-graph@4.0.1: + resolution: {integrity: sha512-5YCfmGBmxoIRYHnKK2AKzrAkCoQ8ozO+iumT8K4tXJXRVCPf+7s1/9KxTSW3Rbvf+7Y7b4FR3mWyLnQr3PHocA==} + engines: {node: '>=12'} + hasBin: true + dependencies: + glob: 7.2.3 + lodash: 4.17.21 + scss-tokenizer: 0.4.3 + yargs: 17.7.2 + dev: true + + /sass-loader@14.1.1(node-sass@9.0.0)(sass@1.71.1)(webpack@5.90.3): resolution: {integrity: sha512-QX8AasDg75monlybel38BZ49JP5Z+uSKfKwF2rO7S74BywaRmGQMUBw9dtkS+ekyM/QnP+NOrRYq8ABMZ9G8jw==} engines: {node: '>= 18.12.0'} peerDependencies: @@ -3434,6 +3685,7 @@ packages: optional: true dependencies: neo-async: 2.6.2 + node-sass: 9.0.0 sass: 1.71.1 webpack: 5.90.3(webpack-cli@5.1.4) dev: true @@ -3472,6 +3724,13 @@ packages: engines: {node: '>=8'} dev: true + /scss-tokenizer@0.4.3: + resolution: {integrity: sha512-raKLgf1LI5QMQnG+RxHz6oK0sL3x3I4FN2UDLqgLOGO8hodECNnNh5BXn7fAyBxrA8zVzdQizQ6XjNJQ+uBwMw==} + dependencies: + js-base64: 2.6.4 + source-map: 0.7.4 + dev: true + /semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -3667,6 +3926,12 @@ packages: minipass: 3.3.6 dev: true + /stdout-stream@1.4.1: + resolution: {integrity: sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==} + dependencies: + readable-stream: 2.3.8 + dev: true + /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -3743,6 +4008,13 @@ packages: engines: {node: '>=6'} dev: true + /strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + dependencies: + min-indent: 1.0.1 + dev: true + /style-loader@3.3.4(webpack@5.90.3): resolution: {integrity: sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==} engines: {node: '>= 12.13.0'} @@ -3865,6 +4137,15 @@ packages: resolution: {integrity: sha512-whw60l7r+8ZU8Tu/Uc2yxtc4ZTZbR/PF3u1IPNKGQ6p8EICLb3Z2lAgoqw9bqYd8IkgnsaOcLzYHFckjqNsf0g==} dev: true + /trim-newlines@3.0.1: + resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} + engines: {node: '>=8'} + dev: true + + /true-case-path@2.2.1: + resolution: {integrity: sha512-0z3j8R7MCjy10kc/g+qg7Ln3alJTodw9aDuVWZa3uiWqfuBMKeAeP2ocWcxoyM3D73yz3Jt/Pu4qPr4wHSdB/Q==} + dev: true + /ts-loader@9.5.1(typescript@5.3.3)(webpack@5.90.3): resolution: {integrity: sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==} engines: {node: '>=12.0.0'} @@ -3896,6 +4177,11 @@ packages: - supports-color dev: true + /type-fest@0.18.1: + resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} + engines: {node: '>=10'} + dev: true + /type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} @@ -4225,10 +4511,38 @@ packages: signal-exit: 3.0.7 dev: true + /y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + dev: true + /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true + /yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + dev: true + + /yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + dev: true + + /yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + dependencies: + cliui: 8.0.1 + escalade: 3.1.2 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + dev: true + /yeoman-environment@3.19.3: resolution: {integrity: sha512-/+ODrTUHtlDPRH9qIC0JREH8+7nsRcjDl3Bxn2Xo/rvAaVvixH5275jHwg0C85g4QsF4P6M2ojfScPPAl+pLAg==} engines: {node: '>=12.10.0'} diff --git a/src/scss/style.scss b/src/scss/style.scss index 69b8a6f..c024e2d 100644 --- a/src/scss/style.scss +++ b/src/scss/style.scss @@ -48,6 +48,14 @@ body { background-color: $gruvbox-bg; color: $gruvbox-fg; + + white-space: normal; +} + +.header-container { + width: 100vw; + text-align: center; + justify-content: center; } .center-image { @@ -127,6 +135,7 @@ nav { p { text-align: left; } + white-space: normal; } .article h1, @@ -136,16 +145,19 @@ nav { .article h5, .article h6 { text-align: left; + display: block; } ul, li, ol { margin: 0; padding: 0; list-style: none; + display: block; } h1, h2, h3, h4, h5, h6 { color: $gruvbox-light0; + display: block; } a { @@ -153,6 +165,7 @@ a { &:hover { color: $gruvbox-aqua; } + display: block; } button { @@ -166,6 +179,8 @@ button { p { margin-bottom: 1em; + display: inline-block; + white-space: normal; } pre { @@ -180,6 +195,7 @@ code { color: $gruvbox-orange; padding: 0.2em; border-radius: 3px; + display: block; } table { @@ -192,6 +208,7 @@ table { padding: 8px; text-align: left; } + display: table; } th, td { diff --git a/src/snoop.md b/src/snoop.md new file mode 100644 index 0000000..3726fc3 --- /dev/null +++ b/src/snoop.md @@ -0,0 +1,7 @@ +--- +title: bear.oops.wtf +author: BearFM +date: January 6, 2024 +modified: January 25, 2024 +header: +--- \ No newline at end of file diff --git a/src/tmpl.html b/src/tmpl.html index 9c3227b..f0174a7 100644 --- a/src/tmpl.html +++ b/src/tmpl.html @@ -4,7 +4,8 @@ - + + $title$ @@ -23,7 +24,9 @@ bookBlog -

BEAR.OOPS.WTF

+
+

BEAR.OOPS.WTF

+

Page created: $date$

Page last modified: $modified$

@@ -32,4 +35,6 @@ $body$ + + diff --git a/tsconfig.json b/tsconfig.json index c7405b1..620a8ed 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,5 +6,5 @@ "target": "es5", "allowJs": true }, - "include": ["./js/**/*"] + "include": ["./js/**/*", "./src/scss/**/*.scss"] } diff --git a/webpack.config.js b/webpack.config.js index 6ebde4f..9210334 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -2,17 +2,19 @@ const path = require('path'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const DisableTreeShakingForChunk = require('disable-tree-shaking-for-chunk-plugin'); +const TerserPlugin = require("terser-webpack-plugin"); +const glob = require("glob"); const isProduction = process.env.NODE_ENV == 'production'; - const stylesHandler = MiniCssExtractPlugin.loader; - - const config = { entry: { - blogIndex: "./js/blogIndex.ts" + blogIndex: glob.sync("./js/blogIndex/**/*.ts").map(file => path.resolve(file)), + css: glob.sync("./js/css/**/*.ts").map(file => path.resolve(file)).concat(["./src/scss/style.scss"]), + }, output: { filename: "[name].js", @@ -20,9 +22,9 @@ const config = { }, plugins: [ new MiniCssExtractPlugin(), - - // Add your plugins here - // Learn more about plugins from https://webpack.js.org/configuration/plugins/ + new DisableTreeShakingForChunk({ + test: "main" + }), ], module: { rules: [ @@ -33,31 +35,28 @@ const config = { }, { test: /\.css$/i, - use: [stylesHandler,'css-loader'], + use: ["style-loader", 'css-loader'], }, { test: /\.s[ac]ss$/i, - use: [stylesHandler, 'css-loader', 'sass-loader'], + use: ["style-loader", 'css-loader', 'sass-loader'], }, { test: /\.(eot|svg|ttf|woff|woff2|png|jpg|gif)$/i, type: 'asset', }, - - // Add your rules for custom modules here - // Learn more about loaders from https://webpack.js.org/loaders/ ], }, resolve: { - extensions: ['.tsx', '.ts', '.jsx', '.js', '...'], + extensions: ['.tsx', '.ts', '.jsx', '.js', '.scss', '...'], }, }; module.exports = () => { if (isProduction) { config.mode = 'production'; - - + + } else { config.mode = 'development'; }