From 85b15303c8930c3838f0ae606b56a88a49c0aa1a Mon Sep 17 00:00:00 2001 From: Ayo Date: Sat, 21 Oct 2023 14:41:53 +0200 Subject: [PATCH] feat(templates): add code-block to basic template --- templates/basic/public/favicon.ico | Bin 0 -> 1150 bytes templates/basic/public/morty.png | Bin 0 -> 20431 bytes templates/basic/public/prism.css | 3 + templates/basic/public/prism.js | 7 ++ templates/basic/public/reset.css | 76 +++++++++++++++++++ templates/basic/public/robots.txt | 2 + templates/basic/src/components/code-block.js | 17 +++++ templates/basic/src/components/my-head.html | 51 +++++++++++++ templates/basic/src/pages/index.html | 56 +++++++------- 9 files changed, 183 insertions(+), 29 deletions(-) create mode 100644 templates/basic/public/favicon.ico create mode 100644 templates/basic/public/morty.png create mode 100644 templates/basic/public/prism.css create mode 100644 templates/basic/public/prism.js create mode 100644 templates/basic/public/reset.css create mode 100644 templates/basic/public/robots.txt create mode 100644 templates/basic/src/components/code-block.js create mode 100644 templates/basic/src/components/my-head.html diff --git a/templates/basic/public/favicon.ico b/templates/basic/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..edb0e4b60d048c92e395d1b447d148ab40376ee0 GIT binary patch literal 1150 zcmZQzU<5(|0R|wcz>vYhz#zuJz@P!dKp~(AL>x#lH~{6afd4=-s^f%&g#V^)0a(oi z$;AROK70Q|0lFGipj$ye+dc@d{;~)QusU@8pI+R+DvquW#K#4mzW;{TZkSo0U*Ey7 z3nak6z)6&Tm>YmG2v-04?r9A3V0Pi6K^jioe*@MJVsAQemuR~|W(J81fwaN(GkV20Dv;001`bWIg}@ literal 0 HcmV?d00001 diff --git a/templates/basic/public/morty.png b/templates/basic/public/morty.png new file mode 100644 index 0000000000000000000000000000000000000000..1a2bfd4a01b847bfa0c4b88525d544189744bc10 GIT binary patch literal 20431 zcmcFqYwM|K=_+XIscP$KYAC9x%l$`-sq1O$>6^;%n8@;2C~<%I z9C%ZP%S49LN|jkhPj7$sf!AZ2zuV=5TWyoOd-v`F9jj~Sr|xGb?q{d&-;=#+<`>`n znK|jmJwJI|^k;@hB$CPG5H_mXKU>oSofj8mUv^nN14AphE1C+|z7*$)tLy9P8>m8| zF_u>x9RLLdg&S;a;Smx3{(dUj+Lj6e7M7NRcN|k1kolQnC=p!9TD}4?3JJtbdIsV4-OVvp$ ztE(3D{P!#jV}kucZz~TKgw4**j*pE$|57*gF*d5Ow7aod)Aru(9-$=6p;7%&S$_JL z%BmmLANvOe>KhvFhsW9b1*SeSEhv0fF@*2Pe4@?4`Sa&beRrQ6KbzQa{*uyCSp)Ny zme$+Uu%hnqSO>k@(tICX4tEAhV+nEpgcpu1VgY)_`RNM3`>mJe?Nf*P!$bwDDsI$$ z$@CXR|7|ZBVrL*7cSR)AN11aN``aRqt{qi`9Y0^Y#)ze4Blta6UXu^J z5=)Z>E%Y3wJx3X$KCkb@bw}DuUOumuuh$3$1%^H21)gt+>sG72LJR4KR<=)>Akeqp zaUETE^3-0P`Qm>ga{9Xg=*C@o+68(+K=;jxA6V!OnCeMjw2^#5G2ta33Um!DKsS@T zAfSf1U*5xk9Da*nC=UEOKL9+Ag7vR~9|wAJIiv$-%8^uiV4j{`xI+fVKUyghpoPhx z=8ybzDfVEY!rLNIiYyQHbq1%Jp*~!!63y_k?ZC^Dw&A(jce5bS%w=c^7-U}p=tK-{eu%kR@Ap|SnS$y>DjWv& zO#@q)v}ju2C``l~cwwAb+iG=sg>@XLrT+WdHYk%IiW}LcS)B9>&E%)q8f1u5oBp^wwiPIsa$KF^mxk z+}ImpU1(_xrUQ>yq^fT$X*{YA9gut0WO9~m_UZUg%JfG@?a_%kSRQ{t5$P+^b8r@f zY27{EAMMO8@0e%R4t#8qAH{YwxZT6xIWTKBdK7JOr`wq9`xPOqY>XsaYc`u-pAQOS z+I+n+|Gr5ezto(x)szbDcbGa*wI!6UV{r1boe~W4_{Jz)Vp63*|B2j{!9B}2^jClP zM7G;sbA9Sy!!~p@mMZ6Rs8sZZGM>r;l7AghT(i^{QjxrCcKz*hm_}y4&J@O_tlW7x zB6AIE6ag%g?XDP9M#fGvB zM9mHj3ac&;Zrm3d98)t5?EF!~v)9 z#Fs|iX(0+baQV+z@^I)P!aul1cpf7i+F-q0?aVhpvYUWh8Nro@}T15?wq% z#R_e>BoD5UuCU%r{}q1ux|}Y){4rtK$5WM;nGg`Hj~Ucen4*@CB+UAEQGsh_wlEuA zQV{9m_n(XQ5AT7jTK?I*p?w=lffcr>j>6g6iPc}eclhzAgyrj{&Mu3oj

@$G6yD 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 B#`gdK literal 0 HcmV?d00001 diff --git a/templates/basic/public/prism.css b/templates/basic/public/prism.css new file mode 100644 index 0000000..def066e --- /dev/null +++ b/templates/basic/public/prism.css @@ -0,0 +1,3 @@ +/* PrismJS 1.29.0 +https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ +code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help} diff --git a/templates/basic/public/prism.js b/templates/basic/public/prism.js new file mode 100644 index 0000000..6adbc13 --- /dev/null +++ b/templates/basic/public/prism.js @@ -0,0 +1,7 @@ +/* PrismJS 1.29.0 +https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ +var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(e){var n=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,r={},a={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(n){return n instanceof i?new i(n.type,e(n.content),n.alias):Array.isArray(n)?n.map(e):n.replace(/&/g,"&").replace(/=g.reach);A+=w.value.length,w=w.next){var E=w.value;if(n.length>e.length)return;if(!(E instanceof i)){var P,L=1;if(y){if(!(P=l(b,A,e,m))||P.index>=e.length)break;var S=P.index,O=P.index+P[0].length,j=A;for(j+=w.value.length;S>=j;)j+=(w=w.next).value.length;if(A=j-=w.value.length,w.value instanceof i)continue;for(var C=w;C!==n.tail&&(jg.reach&&(g.reach=W);var z=w.prev;if(_&&(z=u(n,z,_),A+=_.length),c(n,z,L),w=u(n,z,new i(f,p?a.tokenize(N,p):N,k,N)),M&&u(n,w,M),L>1){var I={cause:f+","+d,reach:W};o(e,n,t,w.prev,A,I),g&&I.reach>g.reach&&(g.reach=I.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},n={value:null,prev:e,next:null};e.next=n,this.head=e,this.tail=n,this.length=0}function u(e,n,t){var r=n.next,a={value:t,prev:n,next:r};return n.next=a,r.prev=a,e.length++,a}function c(e,n,t){for(var r=n.next,a=0;a"+i.content+""},!e.document)return e.addEventListener?(a.disableWorkerMessageHandler||e.addEventListener("message",(function(n){var t=JSON.parse(n.data),r=t.language,i=t.code,l=t.immediateClose;e.postMessage(a.highlight(i,a.languages[r],r)),l&&e.close()}),!1),a):a;var g=a.util.currentScript();function f(){a.manual||a.highlightAll()}if(g&&(a.filename=g.src,g.hasAttribute("data-manual")&&(a.manual=!0)),!a.manual){var h=document.readyState;"loading"===h||"interactive"===h&&g&&g.defer?document.addEventListener("DOMContentLoaded",f):window.requestAnimationFrame?window.requestAnimationFrame(f):window.setTimeout(f,16)}return a}(_self);"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); +Prism.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",(function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(a,e){var s={};s["language-"+e]={pattern:/(^$)/i,lookbehind:!0,inside:Prism.languages[e]},s.cdata=/^$/i;var t={"included-cdata":{pattern://i,inside:s}};t["language-"+e]={pattern:/[\s\S]+/,inside:Prism.languages[e]};var n={};n[a]={pattern:RegExp("(<__[^>]*>)(?:))*\\]\\]>|(?!)".replace(/__/g,(function(){return a})),"i"),lookbehind:!0,greedy:!0,inside:t},Prism.languages.insertBefore("markup","cdata",n)}}),Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(a,e){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp("(^|[\"'\\s])(?:"+a+")\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))","i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[e,"language-"+e],inside:Prism.languages[e]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml; +!function(s){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:[^;{\\s\"']|\\s+(?!\\s)|"+e.source+")*?(?:;|(?=\\s*\\{))"),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|(?:[^\\\\\r\n()\"']|\\\\[^])*)\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var t=s.languages.markup;t&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))}(Prism); +Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp("(^|[^\\w$])(?:NaN|Infinity|0[bB][01]+(?:_[01]+)*n?|0[oO][0-7]+(?:_[0-7]+)*n?|0[xX][\\dA-Fa-f]+(?:_[\\dA-Fa-f]+)*n?|\\d+(?:_\\d+)*n|(?:\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\.\\d+(?:_\\d+)*)(?:[Ee][+-]?\\d+(?:_\\d+)*)?)(?![\\w$])"),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp("((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s]|\\b(?:return|yield))\\s*)/(?:(?:\\[(?:[^\\]\\\\\r\n]|\\\\.)*\\]|\\\\.|[^/\\\\\\[\r\n])+/[dgimyus]{0,7}|(?:\\[(?:[^[\\]\\\\\r\n]|\\\\.|\\[(?:[^[\\]\\\\\r\n]|\\\\.|\\[(?:[^[\\]\\\\\r\n]|\\\\.)*\\])*\\])*\\]|\\\\.|[^/\\\\\\[\r\n])+/[dgimyus]{0,7}v[dgimyus]{0,7})(?=(?:\\s|/\\*(?:[^*]|\\*(?!/))*\\*/)*(?:$|[\r\n,.;:})\\]]|//))"),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute("on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)","javascript")),Prism.languages.js=Prism.languages.javascript; diff --git a/templates/basic/public/reset.css b/templates/basic/public/reset.css new file mode 100644 index 0000000..20ba865 --- /dev/null +++ b/templates/basic/public/reset.css @@ -0,0 +1,76 @@ +/** +THANKS TO JOSH COMEAU FOR HIS CUSTOM CSS RESET +👉 https://www.joshwcomeau.com/css/custom-css-reset/ +**/ + +/* + 1. Use a more-intuitive box-sizing model. +*/ +*, +*::before, +*::after { + box-sizing: border-box; +} +/* + 2. Remove default margin + */ +* { + margin: 0; +} +/* + 3. Allow percentage-based heights in the application + */ +html, +body { + height: 100%; +} +/* + Typographic tweaks! + 4. Add accessible line-height + 5. Improve text rendering + */ +body { + line-height: 1.5; + -webkit-font-smoothing: antialiased; +} +/* + 6. Improve media defaults + */ +img, +picture, +video, +canvas, +svg, +iframe { + display: block; + max-width: 100%; + margin: 0 auto; +} +/* + 7. Remove built-in form typography styles + */ +input, +button, +textarea, +select { + font: inherit; +} +/* + 8. Avoid text overflows + */ +p, +h1, +h2, +h3, +h4, +h5, +h6 { + overflow-wrap: break-word; +} +/* + 9. Create a root stacking context + */ +#root, +#__next { + isolation: isolate; +} diff --git a/templates/basic/public/robots.txt b/templates/basic/public/robots.txt new file mode 100644 index 0000000..eb05362 --- /dev/null +++ b/templates/basic/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: diff --git a/templates/basic/src/components/code-block.js b/templates/basic/src/components/code-block.js new file mode 100644 index 0000000..31fca27 --- /dev/null +++ b/templates/basic/src/components/code-block.js @@ -0,0 +1,17 @@ +class CodeBlockComponent extends HTMLElement { + connectedCallback() { + this.trimmed = this.innerHTML.trim(); + const lang = this.getAttribute("language"); + const lineNumbers = this.getAttribute("line-numbers") === "true"; + + console.log(lineNumbers, lang); + + this.innerHTML = ` +

+
${this.trimmed}
+
+ `; + } +} diff --git a/templates/basic/src/components/my-head.html b/templates/basic/src/components/my-head.html new file mode 100644 index 0000000..f834f3f --- /dev/null +++ b/templates/basic/src/components/my-head.html @@ -0,0 +1,51 @@ + + + + McFly: Back to the Basics. Into the Future. + + + + + + + + + + + + + + + + diff --git a/templates/basic/src/pages/index.html b/templates/basic/src/pages/index.html index 4bbd4c0..da21fb6 100644 --- a/templates/basic/src/pages/index.html +++ b/templates/basic/src/pages/index.html @@ -1,38 +1,36 @@ - - - - McFly: Back to the Basics. Into the Future. - - + + + +
Here's a vanilla custom element: - + + +
+class HelloWorld extends HTMLElement {
+  static get observedAttributes() {
+    return ["data-name"];
+  }
+
+  connectedCallback() {
+    let count = 0;
+    this.onclick = () => {
+      this.setAttribute("data-name", `Clicked ${++count}x`);
+    };
+  }
+
+  attributeChangedCallback(property, previousValue, currentValue) {
+    if (property === "data-name" && previousValue !== currentValue) {
+      this.innerHTML = `<button style="cursor:pointer">Hello ${currentValue}!</button>`;
+    }
+  }
+}
+