diff --git a/lib/imgholder.js b/lib/imgholder.js new file mode 100644 index 0000000..6c49c28 --- /dev/null +++ b/lib/imgholder.js @@ -0,0 +1,8 @@ +import simpleSvgPlaceholder from '@cloudfour/simple-svg-placeholder'; + +const defaults = { + bgColor: '#ccc', + textColor: '#888', +} + +export const holder = (x, y) => simpleSvgPlaceholder({...defaults, width: x, height: y}); diff --git a/package-lock.json b/package-lock.json index 3064d6e..d10709e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,6 +32,11 @@ "js-tokens": "^4.0.0" } }, + "@cloudfour/simple-svg-placeholder": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@cloudfour/simple-svg-placeholder/-/simple-svg-placeholder-1.0.2.tgz", + "integrity": "sha512-vZZ4Yp+TwdDhbxigDJyMFqGJM1zujqAES11R+Rmv8thnAgjOPaRIsJzd5LiTabE2O0sZDaHq4kmbjrmy1gP6Xg==" + }, "@eslint/eslintrc": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.1.tgz", diff --git a/package.json b/package.json index e2de96d..366df3c 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "svelte": "^3.0.0" }, "dependencies": { + "@cloudfour/simple-svg-placeholder": "^1.0.2", "Validator": "^1.1.2", "bcrypt": "^5.0.0", "body-parser": "^1.19.0", diff --git a/public/build/bundle.css b/public/build/bundle.css index a9eda5a..6d73c85 100644 --- a/public/build/bundle.css +++ b/public/build/bundle.css @@ -1 +1 @@ -header.svelte-khlxmc.svelte-khlxmc{}main.svelte-khlxmc.svelte-khlxmc{}footer.svelte-khlxmc.svelte-khlxmc{display:flex;flex:flex-grow;flex-direction:row}footer.svelte-khlxmc nav.svelte-khlxmc{flex:1}@import 'sass/_variables';.inactive.svelte-1iby9by{stroke:var(--color-inactive);fill:var(--color-bg)}hero.svelte-rf35ix.svelte-rf35ix{display:block;padding:3rem;background-color:var(--color-bg-secondary)}hero.svelte-rf35ix h1.svelte-rf35ix{font-size:3rem}aside.svelte-rf35ix a.svelte-rf35ix{--text-decoration:underline}rationale.svelte-rf35ix.svelte-rf35ix{display:flex;flex-direction:column;font-size:1.5em;padding-left:4rem;padding-right:4rem}images.svelte-1bny7ze.svelte-1bny7ze{display:grid;grid-template-columns:1fr 1fr}figure:hover content{filter:grayscale(1) blur(6px);background-color:var(--color-bg-secondary);cursor:pointer}figure.svelte-1bny7ze.svelte-1bny7ze{padding:0.5em;position:sticky}figure.svelte-1bny7ze figcaption.svelte-1bny7ze{display:none;color:var(--color-text);font-size:6em;filter:drop-shadow(10px 5px 5px var(--color-shadow-secondary));font-weight:bold}figure.svelte-1bny7ze:hover figcaption.svelte-1bny7ze{display:flex;padding-top:2em;width:100%;justify-content:center;position:absolute;top:0;left:0}content.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{border:1px solid #ddd;display:flex;flex-direction:row;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:0rem}left.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-basis:200px;flex-direction:column;border-right:1px solid var(--color-bg-secondary);padding:1em;font-size:1.2em}middle.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex:2;flex-direction:column}right.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-basis:300px;flex-direction:column;border-left:1px solid var(--color-bg-secondary)}header.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{width:100%;text-align:unset}header.svelte-bnvc6y nav.svelte-bnvc6y.svelte-bnvc6y{justify-content:left}header.svelte-bnvc6y nav h4.svelte-bnvc6y.svelte-bnvc6y{}header.svelte-bnvc6y nav back.svelte-bnvc6y.svelte-bnvc6y{padding-left:1rem;padding-right:1rem}header.svelte-bnvc6y nav name h4.svelte-bnvc6y.svelte-bnvc6y{margin:unset;padding:unset}header.svelte-bnvc6y nav name span.svelte-bnvc6y.svelte-bnvc6y{font-size:0.8em;font-weight:normal}middle.svelte-bnvc6y images.svelte-bnvc6y.svelte-bnvc6y{display:grid;grid-template-columns:1fr min-content}middle.svelte-bnvc6y images figure#background.svelte-bnvc6y.svelte-bnvc6y{z-index:-1;grid-column:1/2;grid-row:1/ span 2}figure#background.svelte-bnvc6y img.svelte-bnvc6y.svelte-bnvc6y{height:200px;min-width:500px}middle.svelte-bnvc6y images figure#avatar.svelte-bnvc6y.svelte-bnvc6y{z-index:5;grid-column:1/1;grid-row:2/2}middle.svelte-bnvc6y images figure#avatar img.svelte-bnvc6y.svelte-bnvc6y{z-index:5;position:relative;top:90px;left:10px;width:128px}figure#avatar.svelte-bnvc6y img.svelte-bnvc6y.svelte-bnvc6y{border-radius:50%;border:5px white solid}button#follow.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{padding:0.8rem;border-radius:30px;border:1px var(--color) solid;background:var(--color-bg);color:var(--color);position:relative;top:60px;left:220px}button#signup.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{border-radius:30px;padding:0.5rem;width:100%;font-size:0.9em}aside#newperson.svelte-bnvc6y p.svelte-bnvc6y.svelte-bnvc6y{font-size:0.8em;color:var(--color-inactive)}recent-media.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:1px}profile.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{margin-top:6rem;margin-left:1rem;margin-right:1rem}tweet.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-direction:row}tweet.svelte-bnvc6y post.svelte-bnvc6y.svelte-bnvc6y{padding-left:1em;flex-grow:2;margin-bottom:1rem}tweet.svelte-bnvc6y figure#avatar.svelte-bnvc6y img.svelte-bnvc6y{min-width:64px;height:64px}tweet.svelte-bnvc6y post h4.svelte-bnvc6y.svelte-bnvc6y{margin:unset}tweet.svelte-bnvc6y post p.svelte-bnvc6y.svelte-bnvc6y{margin-bottom:0.5rem}tweet.svelte-bnvc6y post actions.svelte-bnvc6y.svelte-bnvc6y{display:flex;justify-content:space-evenly}hr.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{margin-top:0.5em;margin-bottom:0.5em}aside#trending.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{background-color:var(--color-bg-secondary);padding:0px}aside#trending.svelte-bnvc6y h3.svelte-bnvc6y.svelte-bnvc6y{margin-left:1em}aside#trending.svelte-bnvc6y a.svelte-bnvc6y.svelte-bnvc6y{margin-left:1em;color:var(--color)}aside#trending.svelte-bnvc6y li.svelte-bnvc6y.svelte-bnvc6y{border-top:1px var(--color-bg) solid;list-style-type:none;list-style-position:outside;padding:0.3rem}aside#trending.svelte-bnvc6y ul.svelte-bnvc6y.svelte-bnvc6y{padding-left:0px}content.svelte-1xw0xeo.svelte-1xw0xeo{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;flex:flex-grow;width:100%;flex-direction:row;padding:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{flex:1}figure.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;margin-top:4rem}search.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;flex-direction:column;margin-top:2rem}search.svelte-1xw0xeo input.svelte-1xw0xeo{align-self:center;width:50ch}search.svelte-1xw0xeo buttons.svelte-1xw0xeo{display:flex;justify-content:space-evenly}button.svelte-1xw0xeo.svelte-1xw0xeo{padding:0.5rem;background-color:#ddd;border:unset;color:#000;font-weight:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{font-weight:normal}a.svelte-1xw0xeo.svelte-1xw0xeo{color:unset;font-weight:normal}content.svelte-87j0be.svelte-87j0be{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;--sub-color:#999;--title-color:#000}header.svelte-87j0be.svelte-87j0be{display:flex;width:100%;flex-direction:row}nav.svelte-87j0be.svelte-87j0be{flex:1}nav.svelte-87j0be input.svelte-87j0be{display:flex;flex-grow:2;margin:1rem}logo.svelte-87j0be.svelte-87j0be{font-weight:bold;font-size:1rem;color:black}button.svelte-87j0be.svelte-87j0be{background-color:var(--color-bg);color:var(--color);padding:0.5rem;border-radius:2px}hr.svelte-87j0be.svelte-87j0be{margin-top:0.5rem;margin-bottom:0.5rem}main.svelte-87j0be.svelte-87j0be{display:flex;flex-direction:row}right.svelte-87j0be.svelte-87j0be{margin-left:0.5rem}left.svelte-87j0be.svelte-87j0be{margin-right:0.5rem}figcaption.svelte-87j0be a.svelte-87j0be{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-87j0be p.svelte-87j0be{font-weight:bold;margin-top:unset}figcaption.svelte-87j0be video-actions.svelte-87j0be{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}card.svelte-87j0be.svelte-87j0be{display:flex;margin-top:0.2rem;margin-bottom:0.2rem;--img-width:120px;--img-height:80px;--font-size:0.8em}card.svelte-87j0be img.svelte-87j0be{width:var(--img-width);height:var(--img-height)}card.svelte-87j0be info.svelte-87j0be{display:flex;flex-direction:column;padding:0.2rem;color:var(--sub-color);font-size:var(--font-size)}card.svelte-87j0be info h4.svelte-87j0be{font-weight:bold;color:var(--title-color);margin:0px}card.small.svelte-87j0be.svelte-87j0be{--img-width:100px;--img-height:70px;--font-size:0.6em}promotion.svelte-87j0be.svelte-87j0be{display:flex;flex-direction:column}promotion.svelte-87j0be nav button#subscribe.svelte-87j0be{background-color:red;color:#fff;border:unset}promotion.svelte-87j0be card.svelte-87j0be{--img-width:4rem;--img-height:4rem}promotion.svelte-87j0be content.svelte-87j0be{border:unset;padding-left:4rem}comments.svelte-87j0be nav.svelte-87j0be{justify-content:left;font-weight:unset}comments.svelte-87j0be nav sort.svelte-87j0be{color:var(--sub-color)}comments.svelte-87j0be card.svelte-87j0be{color:black;--img-width:4rem;--img-height:4rem;--font-size:1em}comments.svelte-87j0be card p.svelte-87j0be{color:black}comments.svelte-87j0be card reply.svelte-87j0be{color:var(--color)}a.svelte-1ri9kvn.svelte-1ri9kvn{color:var(--color)}content.svelte-1ri9kvn.svelte-1ri9kvn{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;width:100%;flex-direction:row}nav.svelte-1ri9kvn.svelte-1ri9kvn{flex:1}button.svelte-1ri9kvn.svelte-1ri9kvn{padding:0.5rem}profile.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;flow-direction:row}profile.svelte-1ri9kvn figure.svelte-1ri9kvn{padding-right:3rem;padding-left:3rem}profile.svelte-1ri9kvn info.svelte-1ri9kvn{display:flex;flex-direction:column;width:100%}profile.svelte-1ri9kvn info p.svelte-1ri9kvn{padding:0.5rem}tabs.svelte-1ri9kvn nav.svelte-1ri9kvn{justify-content:center;border-top:1px black solid;border-color:var(--color-inactive)}posts.svelte-1ri9kvn.svelte-1ri9kvn{display:grid;grid-template-columns:1fr 1fr 1fr}posts.svelte-1ri9kvn figure.svelte-1ri9kvn{}pins.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}a.svelte-i1di9h.svelte-i1di9h{color:var(--color)}content.svelte-i1di9h.svelte-i1di9h{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;padding-top:0px}header.svelte-i1di9h.svelte-i1di9h{display:flex;width:100%;flex-direction:row}header.svelte-i1di9h nav.svelte-i1di9h{flex:1}header.svelte-i1di9h nav input.svelte-i1di9h{display:flex;flex-grow:2;margin:1rem}header.svelte-i1di9h nav button.svelte-i1di9h{background-color:var(--color-bg);color:var(--color);padding:0.5rem}profile.svelte-i1di9h.svelte-i1di9h{display:flex;flow-direction:row}profile.svelte-i1di9h figure.svelte-i1di9h{padding-right:3rem;padding-left:3rem}profile.svelte-i1di9h info.svelte-i1di9h{display:flex;flex-direction:column;width:100%}profile.svelte-i1di9h info p.svelte-i1di9h{padding:0.5rem}posts.svelte-i1di9h.svelte-i1di9h{display:grid;grid-template-columns:1fr 1fr 1fr}posts.svelte-i1di9h figure.svelte-i1di9h{}related.svelte-i1di9h.svelte-i1di9h{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}nav.svelte-i1di9h a.svelte-i1di9h,a.svelte-i1di9h.svelte-i1di9h:visited,a.svelte-i1di9h.svelte-i1di9h:active{text-decoration:none;color:var(--color-text)}:root{--pin-red:#e60023}content.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;width:100%;flex-direction:row}header.svelte-79nfuj nav.svelte-79nfuj.svelte-79nfuj{display:flex;flex:1}header.svelte-79nfuj nav input.svelte-79nfuj.svelte-79nfuj{width:100%}header.svelte-79nfuj nav button.svelte-79nfuj.svelte-79nfuj{border-radius:30px;background-color:var(--color-bg-secondary);border:unset;color:var(--color-text);padding-left:1rem;padding-right:1rem}header.svelte-79nfuj nav button#signup.svelte-79nfuj.svelte-79nfuj{background-color:var(--pin-red);color:var(--color-bg)}header.svelte-79nfuj nav a.svelte-79nfuj.svelte-79nfuj{color:var(--text-color)}header.svelte-79nfuj logo.svelte-79nfuj.svelte-79nfuj{color:var(--pin-red);display:flex;font-size:1.2em}header.svelte-79nfuj left.svelte-79nfuj.svelte-79nfuj{display:flex;justify-content:space-evenly;padding:1em;flex:2}header.svelte-79nfuj input.svelte-79nfuj.svelte-79nfuj{border-radius:30px;flex:3;padding:1rem}profile.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:row;width:100%;justify-content:center}profile.svelte-79nfuj info.svelte-79nfuj.svelte-79nfuj{margin-right:2em}profile.svelte-79nfuj h1.svelte-79nfuj.svelte-79nfuj{margin-bottom:unset;font-size:3em}profile.svelte-79nfuj p.svelte-79nfuj.svelte-79nfuj{margin-bottom:0.5rem;margin-top:0.5rem}pins.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:row}pins.svelte-79nfuj lane figure.svelte-79nfuj.svelte-79nfuj{margin:0.5rem}pins.svelte-79nfuj lane figure.svelte-79nfuj img.svelte-79nfuj{border-radius:15px}pins.svelte-79nfuj lane.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:column}content.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;--sub-color:#999;--title-color:#000}main.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column}header.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;width:100%;flex-direction:row}header.svelte-9c6eed nav.svelte-9c6eed.svelte-9c6eed{flex:1;margin-left:1rem;margin-right:1rem}header.svelte-9c6eed nav input.svelte-9c6eed.svelte-9c6eed{display:flex;flex-grow:2;margin:1rem}header.svelte-9c6eed nav.svelte-9c6eed button.svelte-9c6eed{background-color:var(--color-bg);color:var(--color);padding:0.5rem}hr.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{margin-top:0.5rem;margin-bottom:0.5rem}figcaption.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{padding:1rem}figcaption.svelte-9c6eed a.svelte-9c6eed.svelte-9c6eed{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-9c6eed p.svelte-9c6eed.svelte-9c6eed{font-weight:bold;margin-top:unset}figcaption.svelte-9c6eed video-actions.svelte-9c6eed.svelte-9c6eed{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}card.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;margin-top:0.2rem;margin-bottom:0.2rem;--img-width:120px;--img-height:80px;--font-size:0.8em}card.svelte-9c6eed img.svelte-9c6eed.svelte-9c6eed{width:var(--img-width);height:var(--img-height)}card.svelte-9c6eed info.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column;padding:0.2rem;color:var(--sub-color);font-size:var(--font-size)}card.svelte-9c6eed info h4.svelte-9c6eed.svelte-9c6eed{font-weight:bold;color:var(--title-color);margin:0px}promotion.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column}promotion.svelte-9c6eed card.svelte-9c6eed.svelte-9c6eed{--img-width:4rem;--img-height:4rem}promotion.svelte-9c6eed content.svelte-9c6eed.svelte-9c6eed{border:unset;padding-left:4rem}comments.svelte-9c6eed nav.svelte-9c6eed.svelte-9c6eed{justify-content:left;font-weight:unset}comments.svelte-9c6eed nav sort.svelte-9c6eed.svelte-9c6eed{color:var(--sub-color)}comments.svelte-9c6eed card.svelte-9c6eed.svelte-9c6eed{color:black;--img-width:4rem;--img-height:4rem;--font-size:1em}comments.svelte-9c6eed card p.svelte-9c6eed.svelte-9c6eed{color:black}comments.svelte-9c6eed card reply.svelte-9c6eed.svelte-9c6eed{color:var(--color)}lower.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{padding:1rem}nav#vote-nav.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{justify-content:flex-end}nav.svelte-9c6eed a.svelte-9c6eed.svelte-9c6eed,a.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed:visited,a.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed:active{text-decoration:none;color:var(--color-text)}content.svelte-t7gl8c{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}content.svelte-1xw0xeo.svelte-1xw0xeo{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;flex:flex-grow;width:100%;flex-direction:row;padding:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{flex:1}figure.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;margin-top:4rem}search.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;flex-direction:column;margin-top:2rem}search.svelte-1xw0xeo input.svelte-1xw0xeo{align-self:center;width:50ch}search.svelte-1xw0xeo buttons.svelte-1xw0xeo{display:flex;justify-content:space-evenly}button.svelte-1xw0xeo.svelte-1xw0xeo{padding:0.5rem;background-color:#ddd;border:unset;color:#000;font-weight:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{font-weight:normal}a.svelte-1xw0xeo.svelte-1xw0xeo{color:unset;font-weight:normal}content.svelte-1prpjq7.svelte-1prpjq7{border:1px solid #ddd;display:flex;flex-direction:row;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:0rem}middle.svelte-1prpjq7.svelte-1prpjq7{display:flex;flex:2;flex-direction:column}header.svelte-1prpjq7.svelte-1prpjq7{width:100%;text-align:unset}header.svelte-1prpjq7 nav.svelte-1prpjq7{justify-content:left}header.svelte-1prpjq7 nav back.svelte-1prpjq7{padding-left:1rem;padding-right:1rem}header.svelte-1prpjq7 nav name h4.svelte-1prpjq7{margin:unset;padding:unset}header.svelte-1prpjq7 nav name span.svelte-1prpjq7{font-size:0.8em;font-weight:normal}middle.svelte-1prpjq7 images.svelte-1prpjq7{display:grid;grid-template-columns:1fr min-content}middle.svelte-1prpjq7 images figure#background.svelte-1prpjq7{z-index:-1;grid-column:1/2;grid-row:1/ span 2}figure#background.svelte-1prpjq7 img.svelte-1prpjq7{height:200px;min-width:500px}middle.svelte-1prpjq7 images figure#avatar.svelte-1prpjq7{z-index:5;grid-column:1/1;grid-row:2/2}middle.svelte-1prpjq7 images figure#avatar img.svelte-1prpjq7{z-index:5;position:relative;top:90px;left:10px;width:128px}figure#avatar.svelte-1prpjq7 img.svelte-1prpjq7{border-radius:50%;border:5px white solid}button#follow.svelte-1prpjq7.svelte-1prpjq7{padding:0.8rem;border-radius:30px;border:1px var(--color) solid;background:var(--color-bg);color:var(--color);position:relative;top:60px;left:220px}profile.svelte-1prpjq7.svelte-1prpjq7{margin-top:6rem;margin-left:1rem;margin-right:1rem}content.svelte-oxwxiv.svelte-oxwxiv{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;--sub-color:#999;--title-color:#000}header.svelte-oxwxiv.svelte-oxwxiv{display:flex;width:100%;flex-direction:row}nav.svelte-oxwxiv.svelte-oxwxiv{flex:1}nav.svelte-oxwxiv input.svelte-oxwxiv{display:flex;flex-grow:2;margin:1rem}logo.svelte-oxwxiv.svelte-oxwxiv{font-weight:bold;font-size:1rem;color:black}button.svelte-oxwxiv.svelte-oxwxiv{background-color:var(--color-bg);color:var(--color);padding:0.5rem;border-radius:2px}main.svelte-oxwxiv.svelte-oxwxiv{display:flex;flex-direction:row}figcaption.svelte-oxwxiv a.svelte-oxwxiv{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-oxwxiv p.svelte-oxwxiv{font-weight:bold;margin-top:unset}figcaption.svelte-oxwxiv video-actions.svelte-oxwxiv{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}a.svelte-oov5yx.svelte-oov5yx{color:var(--color)}content.svelte-oov5yx.svelte-oov5yx{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-oov5yx.svelte-oov5yx{display:flex;width:100%;flex-direction:row}nav.svelte-oov5yx.svelte-oov5yx{flex:1}button.svelte-oov5yx.svelte-oov5yx{padding:0.5rem}profile.svelte-oov5yx.svelte-oov5yx{display:flex;flow-direction:row}profile.svelte-oov5yx figure.svelte-oov5yx{padding-right:3rem;padding-left:3rem}profile.svelte-oov5yx info.svelte-oov5yx{display:flex;flex-direction:column;width:100%}profile.svelte-oov5yx info p.svelte-oov5yx{padding:0.5rem}pins.svelte-oov5yx.svelte-oov5yx{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}content.svelte-t7gl8c{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}:root{--pin-red:#e60023}content.svelte-1w7ltga.svelte-1w7ltga{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1w7ltga.svelte-1w7ltga{display:flex;width:100%;flex-direction:row}header.svelte-1w7ltga nav.svelte-1w7ltga{display:flex;flex:1}header.svelte-1w7ltga nav input.svelte-1w7ltga{width:100%}header.svelte-1w7ltga nav button.svelte-1w7ltga{border-radius:30px;background-color:var(--color-bg-secondary);border:unset;color:var(--color-text);padding-left:1rem;padding-right:1rem}header.svelte-1w7ltga nav button#signup.svelte-1w7ltga{background-color:var(--pin-red);color:var(--color-bg)}header.svelte-1w7ltga nav a.svelte-1w7ltga{color:var(--text-color)}header.svelte-1w7ltga logo.svelte-1w7ltga{color:var(--pin-red);display:flex;font-size:1.2em}header.svelte-1w7ltga left.svelte-1w7ltga{display:flex;justify-content:space-evenly;padding:1em;flex:2}header.svelte-1w7ltga input.svelte-1w7ltga{border-radius:30px;flex:3;padding:1rem}profile.svelte-1w7ltga.svelte-1w7ltga{display:flex;flex-direction:row;width:100%;justify-content:center}profile.svelte-1w7ltga info.svelte-1w7ltga{margin-right:2em}profile.svelte-1w7ltga h1.svelte-1w7ltga{margin-bottom:unset;font-size:3em}profile.svelte-1w7ltga p.svelte-1w7ltga{margin-bottom:0.5rem;margin-top:0.5rem}code-view.svelte-1qac1jo.svelte-1qac1jo{display:flex;flex-direction:row;justify-content:space-evenly}code-view.svelte-1qac1jo css-view.svelte-1qac1jo{flex:1}code-view.svelte-1qac1jo html-view.svelte-1qac1jo{flex:2;max-width:50%} \ No newline at end of file +header.svelte-khlxmc.svelte-khlxmc{}main.svelte-khlxmc.svelte-khlxmc{}footer.svelte-khlxmc.svelte-khlxmc{display:flex;flex:flex-grow;flex-direction:row}footer.svelte-khlxmc nav.svelte-khlxmc{flex:1}@import 'sass/_variables';.inactive.svelte-1iby9by{stroke:var(--color-inactive);fill:var(--color-bg)}hero.svelte-rf35ix.svelte-rf35ix{display:block;padding:3rem;background-color:var(--color-bg-secondary)}hero.svelte-rf35ix h1.svelte-rf35ix{font-size:3rem}aside.svelte-rf35ix a.svelte-rf35ix{--text-decoration:underline}rationale.svelte-rf35ix.svelte-rf35ix{display:flex;flex-direction:column;font-size:1.5em;padding-left:4rem;padding-right:4rem}content.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{border:1px solid #ddd;display:flex;flex-direction:row;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:0rem}left.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-basis:200px;flex-direction:column;border-right:1px solid var(--color-bg-secondary);padding:1em;font-size:1.2em}middle.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex:2;flex-direction:column}right.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-basis:300px;flex-direction:column;border-left:1px solid var(--color-bg-secondary)}header.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{width:100%;text-align:unset}header.svelte-bnvc6y nav.svelte-bnvc6y.svelte-bnvc6y{justify-content:left}header.svelte-bnvc6y nav h4.svelte-bnvc6y.svelte-bnvc6y{}header.svelte-bnvc6y nav back.svelte-bnvc6y.svelte-bnvc6y{padding-left:1rem;padding-right:1rem}header.svelte-bnvc6y nav name h4.svelte-bnvc6y.svelte-bnvc6y{margin:unset;padding:unset}header.svelte-bnvc6y nav name span.svelte-bnvc6y.svelte-bnvc6y{font-size:0.8em;font-weight:normal}middle.svelte-bnvc6y images.svelte-bnvc6y.svelte-bnvc6y{display:grid;grid-template-columns:1fr min-content}middle.svelte-bnvc6y images figure#background.svelte-bnvc6y.svelte-bnvc6y{z-index:-1;grid-column:1/2;grid-row:1/ span 2}figure#background.svelte-bnvc6y img.svelte-bnvc6y.svelte-bnvc6y{height:200px;min-width:500px}middle.svelte-bnvc6y images figure#avatar.svelte-bnvc6y.svelte-bnvc6y{z-index:5;grid-column:1/1;grid-row:2/2}middle.svelte-bnvc6y images figure#avatar img.svelte-bnvc6y.svelte-bnvc6y{z-index:5;position:relative;top:90px;left:10px;width:128px}figure#avatar.svelte-bnvc6y img.svelte-bnvc6y.svelte-bnvc6y{border-radius:50%;border:5px white solid}button#follow.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{padding:0.8rem;border-radius:30px;border:1px var(--color) solid;background:var(--color-bg);color:var(--color);position:relative;top:60px;left:220px}button#signup.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{border-radius:30px;padding:0.5rem;width:100%;font-size:0.9em}aside#newperson.svelte-bnvc6y p.svelte-bnvc6y.svelte-bnvc6y{font-size:0.8em;color:var(--color-inactive)}recent-media.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:1px}profile.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{margin-top:6rem;margin-left:1rem;margin-right:1rem}tweet.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{display:flex;flex-direction:row}tweet.svelte-bnvc6y post.svelte-bnvc6y.svelte-bnvc6y{padding-left:1em;flex-grow:2;margin-bottom:1rem}tweet.svelte-bnvc6y figure#avatar.svelte-bnvc6y img.svelte-bnvc6y{min-width:64px;height:64px}tweet.svelte-bnvc6y post h4.svelte-bnvc6y.svelte-bnvc6y{margin:unset}tweet.svelte-bnvc6y post p.svelte-bnvc6y.svelte-bnvc6y{margin-bottom:0.5rem}tweet.svelte-bnvc6y post actions.svelte-bnvc6y.svelte-bnvc6y{display:flex;justify-content:space-evenly}hr.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{margin-top:0.5em;margin-bottom:0.5em}aside#trending.svelte-bnvc6y.svelte-bnvc6y.svelte-bnvc6y{background-color:var(--color-bg-secondary);padding:0px}aside#trending.svelte-bnvc6y h3.svelte-bnvc6y.svelte-bnvc6y{margin-left:1em}aside#trending.svelte-bnvc6y a.svelte-bnvc6y.svelte-bnvc6y{margin-left:1em;color:var(--color)}aside#trending.svelte-bnvc6y li.svelte-bnvc6y.svelte-bnvc6y{border-top:1px var(--color-bg) solid;list-style-type:none;list-style-position:outside;padding:0.3rem}aside#trending.svelte-bnvc6y ul.svelte-bnvc6y.svelte-bnvc6y{padding-left:0px}images.svelte-1bny7ze.svelte-1bny7ze{display:grid;grid-template-columns:1fr 1fr}figure:hover content{filter:grayscale(1) blur(6px);background-color:var(--color-bg-secondary);cursor:pointer}figure.svelte-1bny7ze.svelte-1bny7ze{padding:0.5em;position:sticky}figure.svelte-1bny7ze figcaption.svelte-1bny7ze{display:none;color:var(--color-text);font-size:6em;filter:drop-shadow(10px 5px 5px var(--color-shadow-secondary));font-weight:bold}figure.svelte-1bny7ze:hover figcaption.svelte-1bny7ze{display:flex;padding-top:2em;width:100%;justify-content:center;position:absolute;top:0;left:0}content.svelte-1xw0xeo.svelte-1xw0xeo{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;flex:flex-grow;width:100%;flex-direction:row;padding:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{flex:1}figure.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;margin-top:4rem}search.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;flex-direction:column;margin-top:2rem}search.svelte-1xw0xeo input.svelte-1xw0xeo{align-self:center;width:50ch}search.svelte-1xw0xeo buttons.svelte-1xw0xeo{display:flex;justify-content:space-evenly}button.svelte-1xw0xeo.svelte-1xw0xeo{padding:0.5rem;background-color:#ddd;border:unset;color:#000;font-weight:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{font-weight:normal}a.svelte-1xw0xeo.svelte-1xw0xeo{color:unset;font-weight:normal}content.svelte-87j0be.svelte-87j0be{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;--sub-color:#999;--title-color:#000}header.svelte-87j0be.svelte-87j0be{display:flex;width:100%;flex-direction:row}nav.svelte-87j0be.svelte-87j0be{flex:1}nav.svelte-87j0be input.svelte-87j0be{display:flex;flex-grow:2;margin:1rem}logo.svelte-87j0be.svelte-87j0be{font-weight:bold;font-size:1rem;color:black}button.svelte-87j0be.svelte-87j0be{background-color:var(--color-bg);color:var(--color);padding:0.5rem;border-radius:2px}hr.svelte-87j0be.svelte-87j0be{margin-top:0.5rem;margin-bottom:0.5rem}main.svelte-87j0be.svelte-87j0be{display:flex;flex-direction:row}right.svelte-87j0be.svelte-87j0be{margin-left:0.5rem}left.svelte-87j0be.svelte-87j0be{margin-right:0.5rem}figcaption.svelte-87j0be a.svelte-87j0be{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-87j0be p.svelte-87j0be{font-weight:bold;margin-top:unset}figcaption.svelte-87j0be video-actions.svelte-87j0be{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}card.svelte-87j0be.svelte-87j0be{display:flex;margin-top:0.2rem;margin-bottom:0.2rem;--img-width:120px;--img-height:80px;--font-size:0.8em}card.svelte-87j0be img.svelte-87j0be{width:var(--img-width);height:var(--img-height)}card.svelte-87j0be info.svelte-87j0be{display:flex;flex-direction:column;padding:0.2rem;color:var(--sub-color);font-size:var(--font-size)}card.svelte-87j0be info h4.svelte-87j0be{font-weight:bold;color:var(--title-color);margin:0px}card.small.svelte-87j0be.svelte-87j0be{--img-width:100px;--img-height:70px;--font-size:0.6em}promotion.svelte-87j0be.svelte-87j0be{display:flex;flex-direction:column}promotion.svelte-87j0be nav button#subscribe.svelte-87j0be{background-color:red;color:#fff;border:unset}promotion.svelte-87j0be card.svelte-87j0be{--img-width:4rem;--img-height:4rem}promotion.svelte-87j0be content.svelte-87j0be{border:unset;padding-left:4rem}comments.svelte-87j0be nav.svelte-87j0be{justify-content:left;font-weight:unset}comments.svelte-87j0be nav sort.svelte-87j0be{color:var(--sub-color)}comments.svelte-87j0be card.svelte-87j0be{color:black;--img-width:4rem;--img-height:4rem;--font-size:1em}comments.svelte-87j0be card p.svelte-87j0be{color:black}comments.svelte-87j0be card reply.svelte-87j0be{color:var(--color)}a.svelte-1ri9kvn.svelte-1ri9kvn{color:var(--color)}content.svelte-1ri9kvn.svelte-1ri9kvn{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;width:100%;flex-direction:row}nav.svelte-1ri9kvn.svelte-1ri9kvn{flex:1}button.svelte-1ri9kvn.svelte-1ri9kvn{padding:0.5rem}profile.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;flow-direction:row}profile.svelte-1ri9kvn figure.svelte-1ri9kvn{padding-right:3rem;padding-left:3rem}profile.svelte-1ri9kvn info.svelte-1ri9kvn{display:flex;flex-direction:column;width:100%}profile.svelte-1ri9kvn info p.svelte-1ri9kvn{padding:0.5rem}tabs.svelte-1ri9kvn nav.svelte-1ri9kvn{justify-content:center;border-top:1px black solid;border-color:var(--color-inactive)}posts.svelte-1ri9kvn.svelte-1ri9kvn{display:grid;grid-template-columns:1fr 1fr 1fr}posts.svelte-1ri9kvn figure.svelte-1ri9kvn{}pins.svelte-1ri9kvn.svelte-1ri9kvn{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}:root{--pin-red:#e60023}content.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;width:100%;flex-direction:row}header.svelte-79nfuj nav.svelte-79nfuj.svelte-79nfuj{display:flex;flex:1}header.svelte-79nfuj nav input.svelte-79nfuj.svelte-79nfuj{width:100%}header.svelte-79nfuj nav button.svelte-79nfuj.svelte-79nfuj{border-radius:30px;background-color:var(--color-bg-secondary);border:unset;color:var(--color-text);padding-left:1rem;padding-right:1rem}header.svelte-79nfuj nav button#signup.svelte-79nfuj.svelte-79nfuj{background-color:var(--pin-red);color:var(--color-bg)}header.svelte-79nfuj nav a.svelte-79nfuj.svelte-79nfuj{color:var(--text-color)}header.svelte-79nfuj logo.svelte-79nfuj.svelte-79nfuj{color:var(--pin-red);display:flex;font-size:1.2em}header.svelte-79nfuj left.svelte-79nfuj.svelte-79nfuj{display:flex;justify-content:space-evenly;padding:1em;flex:2}header.svelte-79nfuj input.svelte-79nfuj.svelte-79nfuj{border-radius:30px;flex:3;padding:1rem}profile.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:row;width:100%;justify-content:center}profile.svelte-79nfuj info.svelte-79nfuj.svelte-79nfuj{margin-right:2em}profile.svelte-79nfuj h1.svelte-79nfuj.svelte-79nfuj{margin-bottom:unset;font-size:3em}profile.svelte-79nfuj p.svelte-79nfuj.svelte-79nfuj{margin-bottom:0.5rem;margin-top:0.5rem}pins.svelte-79nfuj.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:row}pins.svelte-79nfuj lane figure.svelte-79nfuj.svelte-79nfuj{margin:0.5rem}pins.svelte-79nfuj lane figure.svelte-79nfuj img.svelte-79nfuj{border-radius:15px}pins.svelte-79nfuj lane.svelte-79nfuj.svelte-79nfuj{display:flex;flex-direction:column}a.svelte-i1di9h.svelte-i1di9h{color:var(--color)}content.svelte-i1di9h.svelte-i1di9h{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;padding-top:0px}header.svelte-i1di9h.svelte-i1di9h{display:flex;width:100%;flex-direction:row}header.svelte-i1di9h nav.svelte-i1di9h{flex:1}header.svelte-i1di9h nav input.svelte-i1di9h{display:flex;flex-grow:2;margin:1rem}header.svelte-i1di9h nav button.svelte-i1di9h{background-color:var(--color-bg);color:var(--color);padding:0.5rem}profile.svelte-i1di9h.svelte-i1di9h{display:flex;flow-direction:row}profile.svelte-i1di9h figure.svelte-i1di9h{padding-right:3rem;padding-left:3rem}profile.svelte-i1di9h info.svelte-i1di9h{display:flex;flex-direction:column;width:100%}profile.svelte-i1di9h info p.svelte-i1di9h{padding:0.5rem}posts.svelte-i1di9h.svelte-i1di9h{display:grid;grid-template-columns:1fr 1fr 1fr}posts.svelte-i1di9h figure.svelte-i1di9h{}related.svelte-i1di9h.svelte-i1di9h{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}nav.svelte-i1di9h a.svelte-i1di9h,a.svelte-i1di9h.svelte-i1di9h:visited,a.svelte-i1di9h.svelte-i1di9h:active{text-decoration:none;color:var(--color-text)}content.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;--sub-color:#999;--title-color:#000}main.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column}header.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;width:100%;flex-direction:row}header.svelte-9c6eed nav.svelte-9c6eed.svelte-9c6eed{flex:1;margin-left:1rem;margin-right:1rem}header.svelte-9c6eed nav input.svelte-9c6eed.svelte-9c6eed{display:flex;flex-grow:2;margin:1rem}header.svelte-9c6eed nav.svelte-9c6eed button.svelte-9c6eed{background-color:var(--color-bg);color:var(--color);padding:0.5rem}hr.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{margin-top:0.5rem;margin-bottom:0.5rem}figcaption.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{padding:1rem}figcaption.svelte-9c6eed a.svelte-9c6eed.svelte-9c6eed{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-9c6eed p.svelte-9c6eed.svelte-9c6eed{font-weight:bold;margin-top:unset}figcaption.svelte-9c6eed video-actions.svelte-9c6eed.svelte-9c6eed{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}card.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;margin-top:0.2rem;margin-bottom:0.2rem;--img-width:120px;--img-height:80px;--font-size:0.8em}card.svelte-9c6eed img.svelte-9c6eed.svelte-9c6eed{width:var(--img-width);height:var(--img-height)}card.svelte-9c6eed info.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column;padding:0.2rem;color:var(--sub-color);font-size:var(--font-size)}card.svelte-9c6eed info h4.svelte-9c6eed.svelte-9c6eed{font-weight:bold;color:var(--title-color);margin:0px}promotion.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{display:flex;flex-direction:column}promotion.svelte-9c6eed card.svelte-9c6eed.svelte-9c6eed{--img-width:4rem;--img-height:4rem}promotion.svelte-9c6eed content.svelte-9c6eed.svelte-9c6eed{border:unset;padding-left:4rem}comments.svelte-9c6eed nav.svelte-9c6eed.svelte-9c6eed{justify-content:left;font-weight:unset}comments.svelte-9c6eed nav sort.svelte-9c6eed.svelte-9c6eed{color:var(--sub-color)}comments.svelte-9c6eed card.svelte-9c6eed.svelte-9c6eed{color:black;--img-width:4rem;--img-height:4rem;--font-size:1em}comments.svelte-9c6eed card p.svelte-9c6eed.svelte-9c6eed{color:black}comments.svelte-9c6eed card reply.svelte-9c6eed.svelte-9c6eed{color:var(--color)}lower.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{padding:1rem}nav#vote-nav.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed{justify-content:flex-end}nav.svelte-9c6eed a.svelte-9c6eed.svelte-9c6eed,a.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed:visited,a.svelte-9c6eed.svelte-9c6eed.svelte-9c6eed:active{text-decoration:none;color:var(--color-text)}content.svelte-t7gl8c{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}code-view.svelte-1qac1jo.svelte-1qac1jo{display:flex;flex-direction:row;justify-content:space-evenly}code-view.svelte-1qac1jo css-view.svelte-1qac1jo{flex:1}code-view.svelte-1qac1jo html-view.svelte-1qac1jo{flex:2;max-width:50%}content.svelte-1xw0xeo.svelte-1xw0xeo{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;flex:flex-grow;width:100%;flex-direction:row;padding:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{flex:1}figure.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;margin-top:4rem}search.svelte-1xw0xeo.svelte-1xw0xeo{display:flex;justify-content:center;flex-direction:column;margin-top:2rem}search.svelte-1xw0xeo input.svelte-1xw0xeo{align-self:center;width:50ch}search.svelte-1xw0xeo buttons.svelte-1xw0xeo{display:flex;justify-content:space-evenly}button.svelte-1xw0xeo.svelte-1xw0xeo{padding:0.5rem;background-color:#ddd;border:unset;color:#000;font-weight:unset}nav.svelte-1xw0xeo.svelte-1xw0xeo{font-weight:normal}a.svelte-1xw0xeo.svelte-1xw0xeo{color:unset;font-weight:normal}content.svelte-1prpjq7.svelte-1prpjq7{border:1px solid #ddd;display:flex;flex-direction:row;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:0rem}middle.svelte-1prpjq7.svelte-1prpjq7{display:flex;flex:2;flex-direction:column}header.svelte-1prpjq7.svelte-1prpjq7{width:100%;text-align:unset}header.svelte-1prpjq7 nav.svelte-1prpjq7{justify-content:left}header.svelte-1prpjq7 nav back.svelte-1prpjq7{padding-left:1rem;padding-right:1rem}header.svelte-1prpjq7 nav name h4.svelte-1prpjq7{margin:unset;padding:unset}header.svelte-1prpjq7 nav name span.svelte-1prpjq7{font-size:0.8em;font-weight:normal}middle.svelte-1prpjq7 images.svelte-1prpjq7{display:grid;grid-template-columns:1fr min-content}middle.svelte-1prpjq7 images figure#background.svelte-1prpjq7{z-index:-1;grid-column:1/2;grid-row:1/ span 2}figure#background.svelte-1prpjq7 img.svelte-1prpjq7{height:200px;min-width:500px}middle.svelte-1prpjq7 images figure#avatar.svelte-1prpjq7{z-index:5;grid-column:1/1;grid-row:2/2}middle.svelte-1prpjq7 images figure#avatar img.svelte-1prpjq7{z-index:5;position:relative;top:90px;left:10px;width:128px}figure#avatar.svelte-1prpjq7 img.svelte-1prpjq7{border-radius:50%;border:5px white solid}button#follow.svelte-1prpjq7.svelte-1prpjq7{padding:0.8rem;border-radius:30px;border:1px var(--color) solid;background:var(--color-bg);color:var(--color);position:relative;top:60px;left:220px}profile.svelte-1prpjq7.svelte-1prpjq7{margin-top:6rem;margin-left:1rem;margin-right:1rem}content.svelte-oxwxiv.svelte-oxwxiv{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem;--sub-color:#999;--title-color:#000}header.svelte-oxwxiv.svelte-oxwxiv{display:flex;width:100%;flex-direction:row}nav.svelte-oxwxiv.svelte-oxwxiv{flex:1}nav.svelte-oxwxiv input.svelte-oxwxiv{display:flex;flex-grow:2;margin:1rem}logo.svelte-oxwxiv.svelte-oxwxiv{font-weight:bold;font-size:1rem;color:black}button.svelte-oxwxiv.svelte-oxwxiv{background-color:var(--color-bg);color:var(--color);padding:0.5rem;border-radius:2px}main.svelte-oxwxiv.svelte-oxwxiv{display:flex;flex-direction:row}figcaption.svelte-oxwxiv a.svelte-oxwxiv{color:var(--color-secondary);font-size:0.8em}figcaption.svelte-oxwxiv p.svelte-oxwxiv{font-weight:bold;margin-top:unset}figcaption.svelte-oxwxiv video-actions.svelte-oxwxiv{color:var(--sub-color);font-weight:unset;display:flex;flex-grow:1;justify-content:space-between}:root{--pin-red:#e60023}content.svelte-1w7ltga.svelte-1w7ltga{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-1w7ltga.svelte-1w7ltga{display:flex;width:100%;flex-direction:row}header.svelte-1w7ltga nav.svelte-1w7ltga{display:flex;flex:1}header.svelte-1w7ltga nav input.svelte-1w7ltga{width:100%}header.svelte-1w7ltga nav button.svelte-1w7ltga{border-radius:30px;background-color:var(--color-bg-secondary);border:unset;color:var(--color-text);padding-left:1rem;padding-right:1rem}header.svelte-1w7ltga nav button#signup.svelte-1w7ltga{background-color:var(--pin-red);color:var(--color-bg)}header.svelte-1w7ltga nav a.svelte-1w7ltga{color:var(--text-color)}header.svelte-1w7ltga logo.svelte-1w7ltga{color:var(--pin-red);display:flex;font-size:1.2em}header.svelte-1w7ltga left.svelte-1w7ltga{display:flex;justify-content:space-evenly;padding:1em;flex:2}header.svelte-1w7ltga input.svelte-1w7ltga{border-radius:30px;flex:3;padding:1rem}profile.svelte-1w7ltga.svelte-1w7ltga{display:flex;flex-direction:row;width:100%;justify-content:center}profile.svelte-1w7ltga info.svelte-1w7ltga{margin-right:2em}profile.svelte-1w7ltga h1.svelte-1w7ltga{margin-bottom:unset;font-size:3em}profile.svelte-1w7ltga p.svelte-1w7ltga{margin-bottom:0.5rem;margin-top:0.5rem}a.svelte-oov5yx.svelte-oov5yx{color:var(--color)}content.svelte-oov5yx.svelte-oov5yx{border:1px solid #ddd;display:flex;flex-direction:column;flex:flex-grow;flex-basis:100%;grid-column:1/3;padding:1rem}header.svelte-oov5yx.svelte-oov5yx{display:flex;width:100%;flex-direction:row}nav.svelte-oov5yx.svelte-oov5yx{flex:1}button.svelte-oov5yx.svelte-oov5yx{padding:0.5rem}profile.svelte-oov5yx.svelte-oov5yx{display:flex;flow-direction:row}profile.svelte-oov5yx figure.svelte-oov5yx{padding-right:3rem;padding-left:3rem}profile.svelte-oov5yx info.svelte-oov5yx{display:flex;flex-direction:column;width:100%}profile.svelte-oov5yx info p.svelte-oov5yx{padding:0.5rem}pins.svelte-oov5yx.svelte-oov5yx{display:flex;flex-direction:row;justify-content:space-evenly;margin-top:1rem;margin-bottom:1rem}content.svelte-t7gl8c{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}content.svelte-fwzpwr.svelte-fwzpwr{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}tile.svelte-fwzpwr.svelte-fwzpwr{padding:0.5rem;display:flex;flex-direction:row;border:1px solid #eee;max-width:50vh}tile.svelte-fwzpwr middle.svelte-fwzpwr{padding-left:0.5rem;padding-right:0.5rem;display:flex;flex-direction:column;justify-content:flex-start;flex-shrink:3}tile.svelte-fwzpwr middle h4.svelte-fwzpwr{margin-top:0;margin-bottom:0}tile.svelte-fwzpwr right.svelte-fwzpwr{flex-shrink:0}tile.svelte-fwzpwr right button.svelte-fwzpwr{padding:0.2rem}content.svelte-fwzpwr.svelte-fwzpwr{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}tile.svelte-fwzpwr.svelte-fwzpwr{padding:0.5rem;display:flex;flex-direction:row;border:1px solid #eee;max-width:50vh}tile.svelte-fwzpwr middle.svelte-fwzpwr{padding-left:0.5rem;padding-right:0.5rem;display:flex;flex-direction:column;justify-content:flex-start;flex-shrink:3}tile.svelte-fwzpwr middle h4.svelte-fwzpwr{margin-top:0;margin-bottom:0}tile.svelte-fwzpwr right.svelte-fwzpwr{flex-shrink:0}tile.svelte-fwzpwr right button.svelte-fwzpwr{padding:0.2rem}content.svelte-s80h8.svelte-s80h8{display:flex;flex:flex-shrink;flex-grow:1;justify-content:center}card.svelte-s80h8.svelte-s80h8{display:flex;flex-direction:column;border:1px solid #eee;width:min-content}card.svelte-s80h8 top img.svelte-s80h8{padding:0;margin:0}card.svelte-s80h8 middle.svelte-s80h8{padding-left:0.5rem;padding-right:0.5rem;display:flex;flex-direction:column;justify-content:flex-start}card.svelte-s80h8 middle h4.svelte-s80h8{margin:0}card.svelte-s80h8 bottom.svelte-s80h8{flex-shrink:0}card.svelte-s80h8 bottom button.svelte-s80h8{padding:0.2rem} \ No newline at end of file diff --git a/public/build/bundle.js b/public/build/bundle.js index b9c7932..d8321c0 100644 --- a/public/build/bundle.js +++ b/public/build/bundle.js @@ -1913,129 +1913,131 @@ var app = (function () { let t19; let a1; let t21; - let t22; + let a2; + let t23; + let t24; let aside2; let h32; - let t24; + let t26; let icon2; - let t25; - let p3; let t27; + let p3; + let t29; let rationale; let section1; let h11; - let t29; + let t31; let p4; - let t30; - let b2; let t32; - let t33; - let p5; + let b2; + let t34; let t35; + let p5; + let t37; let section2; let aside3; let pre0; - let t37; - let p6; let t39; + let p6; + let t41; let section3; let aside4; let pre1; - let t41; + let t43; let hr1; - let t42; + let t44; let section4; let p7; - let t43; - let a2; let t45; - let t46; let a3; + let t47; + let t48; + let a4; let button; let link_action; - let t48; + let t50; let hr2; - let t49; - let h12; let t51; + let h12; + let t53; let p8; - let t52; - let b3; let t54; - let b4; + let b3; let t56; - let b5; + let b4; let t58; - let b6; + let b5; let t60; - let b7; + let b6; let t62; - let b8; + let b7; let t64; - let t65; - let p9; + let b8; let t66; - let b9; + let t67; + let p9; let t68; - let b10; + let b9; let t70; - let b11; + let b10; let t72; - let b12; + let b11; let t74; - let b13; + let b12; let t76; - let t77; - let p10; + let b13; let t78; - let b14; + let t79; + let p10; let t80; - let b15; + let b14; let t82; - let b16; + let b15; let t84; - let b17; + let b16; let t86; - let b18; + let b17; let t88; - let t89; - let h13; + let b18; + let t90; let t91; + let h13; + let t93; let p11; - let t92; - let b19; let t94; - let b20; + let b19; let t96; - let t97; - let p12; + let b20; let t98; - let b21; + let t99; + let p12; let t100; - let b22; + let b21; let t102; - let b23; + let b22; let t104; - let t105; - let h14; + let b23; + let t106; let t107; + let h14; + let t109; let p13; - let t108; - let b24; let t110; - let b25; + let b24; let t112; - let t113; - let p14; + let b25; let t114; - let b26; + let t115; + let p14; let t116; - let b27; + let b26; let t118; - let b28; + let b27; let t120; - let b29; + let b28; let t122; + let b29; + let t124; let current; let mounted; let dispose; @@ -2087,7 +2089,7 @@ var app = (function () { t15 = space(); aside1 = element("aside"); h31 = element("h3"); - h31.textContent = "Add Flexbox"; + h31.textContent = "Add Flexbox + Grids"; t17 = space(); create_component(icon1.$$.fragment); t18 = space(); @@ -2095,169 +2097,172 @@ var app = (function () { t19 = text("Using "); a1 = element("a"); a1.textContent = "flexbox"; - t21 = text(" you can layout anything you want without tons of divs."); - t22 = space(); + t21 = text(" and "); + a2 = element("a"); + a2.textContent = "CSS grids"; + t23 = text(" you can layout anything you want without tons of divs."); + t24 = space(); aside2 = element("aside"); h32 = element("h3"); h32.textContent = "Modify with Variables"; - t24 = space(); + t26 = space(); create_component(icon2.$$.fragment); - t25 = space(); + t27 = space(); p3 = element("p"); p3.textContent = "Using CSS variables you can replace many uses of classes and ids, avoiding most specificity\n issues. Try the dark mode button below."; - t27 = space(); + t29 = space(); rationale = element("rationale"); section1 = element("section"); h11 = element("h1"); h11.textContent = "Cleaner CSS"; - t29 = space(); + t31 = space(); p4 = element("p"); - t30 = text("This website is nothing more than a set of small demos for the idea of\n using flexbox and grids to clean up and simplify CSS. Most everything else\n about CSS stays. Filters, transforms, attributes, and everything that\n applies to the visual display of the components of a design. What gets\n removed is "); + t32 = text("This website is nothing more than a set of small demos for the idea of\n using flexbox and grids to clean up and simplify CSS. Most everything else\n about CSS stays. Filters, transforms, attributes, and everything that\n applies to the visual display of the components of a design. What gets\n removed is "); b2 = element("b"); b2.textContent = "div"; - t32 = text(" heavy, class heavy, not-semantic-at-all layout\n systems cluttering the real information available through simple HTML\n tags."); - t33 = space(); + t34 = text(" heavy, class heavy, not-semantic-at-all layout\n systems cluttering the real information available through simple HTML\n tags."); + t35 = space(); p5 = element("p"); p5.textContent = "In short, if you're writing this:"; - t35 = space(); + t37 = space(); section2 = element("section"); aside3 = element("aside"); pre0 = element("pre"); pre0.textContent = "
\n
\n ...\n
\n
"; - t37 = space(); + t39 = space(); p6 = element("p"); p6.textContent = "You could write this if you use flexbox, grids, and variables:"; - t39 = space(); + t41 = space(); section3 = element("section"); aside4 = element("aside"); pre1 = element("pre"); pre1.textContent = "\n ...\n"; - t41 = space(); + t43 = space(); hr1 = element("hr"); - t42 = space(); + t44 = space(); section4 = element("section"); p7 = element("p"); - t43 = text("I demonstrate the idea with a series of copies of existing websites and other layout problems \n people frequently encounter. If you have a suggested layout challenge for me, then tell me on Twitter "); - a2 = element("a"); - a2.textContent = "@lzsthw"; - t45 = text(" and I'll give it a shot."); - t46 = space(); + t45 = text("I demonstrate the idea with a series of copies of existing websites and other layout problems \n people frequently encounter. If you have a suggested layout challenge for me, then tell me on Twitter "); a3 = element("a"); + a3.textContent = "@lzsthw"; + t47 = text(" and I'll give it a shot."); + t48 = space(); + a4 = element("a"); button = element("button"); button.textContent = "View The Demos"; - t48 = space(); + t50 = space(); hr2 = element("hr"); - t49 = space(); + t51 = space(); h12 = element("h1"); h12.textContent = "What's wrong with classes?"; - t51 = space(); + t53 = space(); p8 = element("p"); - t52 = text("There's nothing wrong with classes in CSS. How they're used in recent CSS subverts the normal specificity rules making CSS unecessarily difficult. The original specificity rules put the base design of a component at the tag level, then a "); + t54 = text("There's nothing wrong with classes in CSS. How they're used in recent CSS subverts the normal specificity rules making CSS unecessarily difficult. The original specificity rules put the base design of a component at the tag level, then a "); b3 = element("b"); b3.textContent = "class"; - t54 = text(" can be used to modify and extend the design, and an "); + t56 = text(" can be used to modify and extend the design, and an "); b4 = element("b"); b4.textContent = "id"; - t56 = text(" can make this even more specific. In today's use of "); + t58 = text(" can make this even more specific. In today's use of "); b5 = element("b"); b5.textContent = "div.class"; - t58 = text(" heavy markup you lose this ability to alter the design as needed where its used, and instead you have to resort to "); + t60 = text(" heavy markup you lose this ability to alter the design as needed where its used, and instead you have to resort to "); b6 = element("b"); b6.textContent = "!important"; - t60 = text(" and specificity hacking to change how something looks, or add more "); + t62 = text(" and specificity hacking to change how something looks, or add more "); b7 = element("b"); b7.textContent = "div"; - t62 = text(" with more "); + t64 = text(" with more "); b8 = element("b"); b8.textContent = "class"; - t64 = text("."); - t65 = space(); + t66 = text("."); + t67 = space(); p9 = element("p"); - t66 = text("The other problem with "); + t68 = text("The other problem with "); b9 = element("b"); b9.textContent = "div.class"; - t68 = text(" is it's more difficult to debug problems with the layout. Because you're relying on specificity that can come from anywhere in the cascade it's much more difficult to find exactly "); + t70 = text(" is it's more difficult to debug problems with the layout. Because you're relying on specificity that can come from anywhere in the cascade it's much more difficult to find exactly "); b10 = element("b"); b10.textContent = "what"; - t70 = text(" bit of CSS is overriding your local decisions. If you've ever had to open the inspector in your browser to troll through CSS locations looking for the culprit then that's why. If the base design decisions are at the tag level, then your local "); + t72 = text(" bit of CSS is overriding your local decisions. If you've ever had to open the inspector in your browser to troll through CSS locations looking for the culprit then that's why. If the base design decisions are at the tag level, then your local "); b11 = element("b"); b11.textContent = "class"; - t72 = text(" and "); + t74 = text(" and "); b12 = element("b"); b12.textContent = "id"; - t74 = text(" specifics will work as expected. You can also replace many uses of class as design modifiers with scoped CSS variables and reduce the use of "); + t76 = text(" specifics will work as expected. You can also replace many uses of class as design modifiers with scoped CSS variables and reduce the use of "); b13 = element("b"); b13.textContent = "div.class"; - t76 = text(" even further."); - t77 = space(); + t78 = text(" even further."); + t79 = space(); p10 = element("p"); - t78 = text("Finally, using "); + t80 = text("Finally, using "); b14 = element("b"); b14.textContent = "div.class"; - t80 = text(" heavy layout systems polutes your markup with structure that's difficult to maintain and change over time. When you focus on using "); + t82 = text(" heavy layout systems polutes your markup with structure that's difficult to maintain and change over time. When you focus on using "); b15 = element("b"); b15.textContent = "truly"; - t82 = text(" semantic named tags and follow specificity as intended then your HTML is lighter and easier to understand because it isn't full of "); + t84 = text(" semantic named tags and follow specificity as intended then your HTML is lighter and easier to understand because it isn't full of "); b16 = element("b"); b16.textContent = "div.grid.col-1.col-mx-auto"; - t84 = text(" class rules that really have nothing to do with the actual meaning of that particular visual element. With "); + t86 = text(" class rules that really have nothing to do with the actual meaning of that particular visual element. With "); b17 = element("b"); b17.textContent = "flexbox"; - t86 = text(" and "); + t88 = text(" and "); b18 = element("b"); b18.textContent = "CSS grids"; - t88 = text(" you don't need any layout divs, and can keep the HTML clean and semantic. This also ends up being more flexible with less or the same effort as using a pre-made grid system full of divs."); - t89 = space(); + t90 = text(" you don't need any layout divs, and can keep the HTML clean and semantic. This also ends up being more flexible with less or the same effort as using a pre-made grid system full of divs."); + t91 = space(); h13 = element("h1"); h13.textContent = "Should we ban div.class?"; - t91 = space(); + t93 = space(); p11 = element("p"); - t92 = text("Hell no. The current problem of "); + t94 = text("Hell no. The current problem of "); b19 = element("b"); b19.textContent = "too much"; - t94 = text(" class based CSS is because of trends in recent years calling for everyone to irrationally ban some practice. Remember when everyone decided tables were evil? So then we banned tables and "); + t96 = text(" class based CSS is because of trends in recent years calling for everyone to irrationally ban some practice. Remember when everyone decided tables were evil? So then we banned tables and "); b20 = element("b"); b20.textContent = "grids"; - t96 = text(" completely? Then nobody could do a layout without crazy tricks and JavaScript? Nobody wants a repeat of the anti-tables \"semantic markup\" war, so please don't ban div.class."); - t97 = space(); + t98 = text(" completely? Then nobody could do a layout without crazy tricks and JavaScript? Nobody wants a repeat of the anti-tables \"semantic markup\" war, so please don't ban div.class."); + t99 = space(); p12 = element("p"); - t98 = text("All this website does is demonstrate that you don't need "); + t100 = text("All this website does is demonstrate that you don't need "); b21 = element("b"); b21.textContent = "so much div.class"; - t100 = text(". You can scrap a lot of what you're using now to do layout and go with clean easy to read HTML that has a nicer flat structure and is easy to maintain, then judiciously add in any extra things you find you need like "); + t102 = text(". You can scrap a lot of what you're using now to do layout and go with clean easy to read HTML that has a nicer flat structure and is easy to maintain, then judiciously add in any extra things you find you need like "); b22 = element("b"); b22.textContent = "div.class"; - t102 = text(". Treat "); + t104 = text(". Treat "); b23 = element("b"); b23.textContent = "div.class"; - t104 = text(" like salt. Right now you're pouring a whole box of it on your HTML when a little bit makes it taste better."); - t105 = space(); + t106 = text(" like salt. Right now you're pouring a whole box of it on your HTML when a little bit makes it taste better."); + t107 = space(); h14 = element("h1"); h14.textContent = "How did it get like this?"; - t107 = space(); + t109 = space(); p13 = element("p"); - t108 = text("Before flexbox and CSS grids there really was no choice but to use "); + t110 = text("Before flexbox and CSS grids there really was no choice but to use "); b24 = element("b"); b24.textContent = "div.class"; - t110 = text(" to make grids for layout. Since everyone in the CSS design world irrationally banned tables as a layout mechanism your only choice was to invent another table but call it "); + t112 = text(" to make grids for layout. Since everyone in the CSS design world irrationally banned tables as a layout mechanism your only choice was to invent another table but call it "); b25 = element("b"); b25.textContent = "div.grid.col-1"; - t112 = text("."); - t113 = space(); + t114 = text("."); + t115 = space(); p14 = element("p"); - t114 = text("Today we don't have to use divs for layout anymore. It's entirely possible to use flexbox and CSS grids to solve many layout problems, and to do it without too many irrelevant alterations to the meaningful HTML. You no longer have to wrap an "); + t116 = text("Today we don't have to use divs for layout anymore. It's entirely possible to use flexbox and CSS grids to solve many layout problems, and to do it without too many irrelevant alterations to the meaningful HTML. You no longer have to wrap an "); b26 = element("b"); b26.textContent = "img"; - t116 = text(" with 5 "); + t118 = text(" with 5 "); b27 = element("b"); b27.textContent = "div"; - t118 = text(" tags just to overlay it on a background. You can write the "); + t120 = text(" tags just to overlay it on a background. You can write the "); b28 = element("b"); b28.textContent = "img"; - t120 = text(", maybe a "); + t122 = text(", maybe a "); b29 = element("b"); b29.textContent = "figure"; - t122 = text(" and then use CSS to do anything you want to it."); + t124 = text(" and then use CSS to do anything you want to it."); attr_dev(h10, "class", "svelte-rf35ix"); add_location(h10, file$1, 30, 2, 463); add_location(b0, file$1, 31, 70, 551); @@ -2276,74 +2281,77 @@ var app = (function () { add_location(h31, file$1, 45, 4, 868); attr_dev(a1, "href", "https://css-tricks.com/snippets/css/a-guide-to-flexbox/"); attr_dev(a1, "class", "svelte-rf35ix"); - add_location(a1, file$1, 47, 13, 936); - add_location(p2, file$1, 47, 4, 927); + add_location(a1, file$1, 47, 13, 944); + attr_dev(a2, "href", "https://css-tricks.com/snippets/css/complete-guide-grid/"); + attr_dev(a2, "class", "svelte-rf35ix"); + add_location(a2, file$1, 47, 95, 1026); + add_location(p2, file$1, 47, 4, 935); attr_dev(aside1, "class", "svelte-rf35ix"); add_location(aside1, file$1, 44, 2, 856); - add_location(h32, file$1, 51, 4, 1099); - add_location(p3, file$1, 53, 4, 1172); - add_location(aside2, file$1, 50, 2, 1087); + add_location(h32, file$1, 51, 4, 1192); + add_location(p3, file$1, 53, 4, 1265); + add_location(aside2, file$1, 50, 2, 1180); add_location(section0, file$1, 36, 0, 603); - add_location(h11, file$1, 62, 4, 1374); - add_location(section1, file$1, 61, 2, 1360); - add_location(b2, file$1, 69, 15, 1730); - add_location(p4, file$1, 65, 2, 1411); - add_location(p5, file$1, 73, 2, 1879); - add_location(pre0, file$1, 77, 2, 1945); - add_location(aside3, file$1, 76, 2, 1935); - add_location(section2, file$1, 75, 2, 1923); - add_location(p6, file$1, 87, 2, 2067); - add_location(pre1, file$1, 91, 2, 2162); - add_location(aside4, file$1, 90, 2, 2152); - add_location(section3, file$1, 89, 2, 2140); - add_location(hr1, file$1, 99, 2, 2231); - attr_dev(a2, "href", "https://twitter.com/lzsthw"); - add_location(a2, file$1, 102, 109, 2459); - add_location(p7, file$1, 101, 4, 2252); - add_location(button, file$1, 104, 30, 2572); - attr_dev(a3, "href", "/demos"); - add_location(a3, file$1, 104, 4, 2546); - add_location(section4, file$1, 100, 2, 2238); - add_location(hr2, file$1, 107, 2, 2624); - add_location(h12, file$1, 108, 2, 2631); - add_location(b3, file$1, 110, 244, 2912); - add_location(b4, file$1, 110, 309, 2977); - add_location(b5, file$1, 110, 372, 3040); - add_location(b6, file$1, 110, 504, 3172); - add_location(b7, file$1, 110, 589, 3257); - add_location(b8, file$1, 110, 610, 3278); - add_location(p8, file$1, 110, 2, 2670); - add_location(b9, file$1, 112, 28, 3325); - add_location(b10, file$1, 112, 226, 3523); - add_location(b11, file$1, 112, 483, 3780); - add_location(b12, file$1, 112, 500, 3797); - add_location(b13, file$1, 112, 652, 3949); - add_location(p9, file$1, 112, 2, 3299); - add_location(b14, file$1, 114, 20, 4005); - add_location(b15, file$1, 114, 169, 4154); - add_location(b16, file$1, 114, 313, 4298); - add_location(b17, file$1, 114, 455, 4440); - add_location(b18, file$1, 114, 474, 4459); - add_location(p10, file$1, 114, 2, 3987); - add_location(h13, file$1, 116, 2, 4671); - add_location(b19, file$1, 118, 38, 4744); - add_location(b20, file$1, 118, 243, 4949); - add_location(p11, file$1, 118, 2, 4708); - add_location(b21, file$1, 120, 62, 5205); - add_location(b22, file$1, 120, 304, 5447); - add_location(b23, file$1, 120, 329, 5472); - add_location(p12, file$1, 120, 2, 5145); - add_location(h14, file$1, 122, 2, 5604); - add_location(b24, file$1, 123, 72, 5711); - add_location(b25, file$1, 123, 261, 5900); - add_location(p13, file$1, 123, 2, 5641); - add_location(b26, file$1, 125, 248, 6176); - add_location(b27, file$1, 125, 266, 6194); - add_location(b28, file$1, 125, 336, 6264); - add_location(b29, file$1, 125, 356, 6284); - add_location(p14, file$1, 125, 2, 5930); + add_location(h11, file$1, 62, 4, 1467); + add_location(section1, file$1, 61, 2, 1453); + add_location(b2, file$1, 69, 15, 1823); + add_location(p4, file$1, 65, 2, 1504); + add_location(p5, file$1, 73, 2, 1972); + add_location(pre0, file$1, 77, 2, 2038); + add_location(aside3, file$1, 76, 2, 2028); + add_location(section2, file$1, 75, 2, 2016); + add_location(p6, file$1, 87, 2, 2160); + add_location(pre1, file$1, 91, 2, 2255); + add_location(aside4, file$1, 90, 2, 2245); + add_location(section3, file$1, 89, 2, 2233); + add_location(hr1, file$1, 99, 2, 2324); + attr_dev(a3, "href", "https://twitter.com/lzsthw"); + add_location(a3, file$1, 102, 109, 2552); + add_location(p7, file$1, 101, 4, 2345); + add_location(button, file$1, 104, 30, 2665); + attr_dev(a4, "href", "/demos"); + add_location(a4, file$1, 104, 4, 2639); + add_location(section4, file$1, 100, 2, 2331); + add_location(hr2, file$1, 107, 2, 2717); + add_location(h12, file$1, 108, 2, 2724); + add_location(b3, file$1, 110, 244, 3005); + add_location(b4, file$1, 110, 309, 3070); + add_location(b5, file$1, 110, 372, 3133); + add_location(b6, file$1, 110, 504, 3265); + add_location(b7, file$1, 110, 589, 3350); + add_location(b8, file$1, 110, 610, 3371); + add_location(p8, file$1, 110, 2, 2763); + add_location(b9, file$1, 112, 28, 3418); + add_location(b10, file$1, 112, 226, 3616); + add_location(b11, file$1, 112, 483, 3873); + add_location(b12, file$1, 112, 500, 3890); + add_location(b13, file$1, 112, 652, 4042); + add_location(p9, file$1, 112, 2, 3392); + add_location(b14, file$1, 114, 20, 4098); + add_location(b15, file$1, 114, 169, 4247); + add_location(b16, file$1, 114, 313, 4391); + add_location(b17, file$1, 114, 455, 4533); + add_location(b18, file$1, 114, 474, 4552); + add_location(p10, file$1, 114, 2, 4080); + add_location(h13, file$1, 116, 2, 4764); + add_location(b19, file$1, 118, 38, 4837); + add_location(b20, file$1, 118, 243, 5042); + add_location(p11, file$1, 118, 2, 4801); + add_location(b21, file$1, 120, 62, 5298); + add_location(b22, file$1, 120, 304, 5540); + add_location(b23, file$1, 120, 329, 5565); + add_location(p12, file$1, 120, 2, 5238); + add_location(h14, file$1, 122, 2, 5697); + add_location(b24, file$1, 123, 72, 5804); + add_location(b25, file$1, 123, 261, 5993); + add_location(p13, file$1, 123, 2, 5734); + add_location(b26, file$1, 125, 248, 6269); + add_location(b27, file$1, 125, 266, 6287); + add_location(b28, file$1, 125, 336, 6357); + add_location(b29, file$1, 125, 356, 6377); + add_location(p14, file$1, 125, 2, 6023); attr_dev(rationale, "class", "svelte-rf35ix"); - add_location(rationale, file$1, 60, 0, 1346); + add_location(rationale, file$1, 60, 0, 1439); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -2381,132 +2389,134 @@ var app = (function () { append_dev(p2, t19); append_dev(p2, a1); append_dev(p2, t21); - append_dev(section0, t22); + append_dev(p2, a2); + append_dev(p2, t23); + append_dev(section0, t24); append_dev(section0, aside2); append_dev(aside2, h32); - append_dev(aside2, t24); + append_dev(aside2, t26); mount_component(icon2, aside2, null); - append_dev(aside2, t25); + append_dev(aside2, t27); append_dev(aside2, p3); - insert_dev(target, t27, anchor); + insert_dev(target, t29, anchor); insert_dev(target, rationale, anchor); append_dev(rationale, section1); append_dev(section1, h11); - append_dev(rationale, t29); + append_dev(rationale, t31); append_dev(rationale, p4); - append_dev(p4, t30); - append_dev(p4, b2); append_dev(p4, t32); - append_dev(rationale, t33); - append_dev(rationale, p5); + append_dev(p4, b2); + append_dev(p4, t34); append_dev(rationale, t35); + append_dev(rationale, p5); + append_dev(rationale, t37); append_dev(rationale, section2); append_dev(section2, aside3); append_dev(aside3, pre0); - append_dev(rationale, t37); - append_dev(rationale, p6); append_dev(rationale, t39); + append_dev(rationale, p6); + append_dev(rationale, t41); append_dev(rationale, section3); append_dev(section3, aside4); append_dev(aside4, pre1); - append_dev(rationale, t41); + append_dev(rationale, t43); append_dev(rationale, hr1); - append_dev(rationale, t42); + append_dev(rationale, t44); append_dev(rationale, section4); append_dev(section4, p7); - append_dev(p7, t43); - append_dev(p7, a2); append_dev(p7, t45); - append_dev(section4, t46); - append_dev(section4, a3); - append_dev(a3, button); - append_dev(rationale, t48); + append_dev(p7, a3); + append_dev(p7, t47); + append_dev(section4, t48); + append_dev(section4, a4); + append_dev(a4, button); + append_dev(rationale, t50); append_dev(rationale, hr2); - append_dev(rationale, t49); - append_dev(rationale, h12); append_dev(rationale, t51); + append_dev(rationale, h12); + append_dev(rationale, t53); append_dev(rationale, p8); - append_dev(p8, t52); - append_dev(p8, b3); append_dev(p8, t54); - append_dev(p8, b4); + append_dev(p8, b3); append_dev(p8, t56); - append_dev(p8, b5); + append_dev(p8, b4); append_dev(p8, t58); - append_dev(p8, b6); + append_dev(p8, b5); append_dev(p8, t60); - append_dev(p8, b7); + append_dev(p8, b6); append_dev(p8, t62); - append_dev(p8, b8); + append_dev(p8, b7); append_dev(p8, t64); - append_dev(rationale, t65); + append_dev(p8, b8); + append_dev(p8, t66); + append_dev(rationale, t67); append_dev(rationale, p9); - append_dev(p9, t66); - append_dev(p9, b9); append_dev(p9, t68); - append_dev(p9, b10); + append_dev(p9, b9); append_dev(p9, t70); - append_dev(p9, b11); + append_dev(p9, b10); append_dev(p9, t72); - append_dev(p9, b12); + append_dev(p9, b11); append_dev(p9, t74); - append_dev(p9, b13); + append_dev(p9, b12); append_dev(p9, t76); - append_dev(rationale, t77); + append_dev(p9, b13); + append_dev(p9, t78); + append_dev(rationale, t79); append_dev(rationale, p10); - append_dev(p10, t78); - append_dev(p10, b14); append_dev(p10, t80); - append_dev(p10, b15); + append_dev(p10, b14); append_dev(p10, t82); - append_dev(p10, b16); + append_dev(p10, b15); append_dev(p10, t84); - append_dev(p10, b17); + append_dev(p10, b16); append_dev(p10, t86); - append_dev(p10, b18); + append_dev(p10, b17); append_dev(p10, t88); - append_dev(rationale, t89); - append_dev(rationale, h13); + append_dev(p10, b18); + append_dev(p10, t90); append_dev(rationale, t91); + append_dev(rationale, h13); + append_dev(rationale, t93); append_dev(rationale, p11); - append_dev(p11, t92); - append_dev(p11, b19); append_dev(p11, t94); - append_dev(p11, b20); + append_dev(p11, b19); append_dev(p11, t96); - append_dev(rationale, t97); + append_dev(p11, b20); + append_dev(p11, t98); + append_dev(rationale, t99); append_dev(rationale, p12); - append_dev(p12, t98); - append_dev(p12, b21); append_dev(p12, t100); - append_dev(p12, b22); + append_dev(p12, b21); append_dev(p12, t102); - append_dev(p12, b23); + append_dev(p12, b22); append_dev(p12, t104); - append_dev(rationale, t105); - append_dev(rationale, h14); + append_dev(p12, b23); + append_dev(p12, t106); append_dev(rationale, t107); + append_dev(rationale, h14); + append_dev(rationale, t109); append_dev(rationale, p13); - append_dev(p13, t108); - append_dev(p13, b24); append_dev(p13, t110); - append_dev(p13, b25); + append_dev(p13, b24); append_dev(p13, t112); - append_dev(rationale, t113); + append_dev(p13, b25); + append_dev(p13, t114); + append_dev(rationale, t115); append_dev(rationale, p14); - append_dev(p14, t114); - append_dev(p14, b26); append_dev(p14, t116); - append_dev(p14, b27); + append_dev(p14, b26); append_dev(p14, t118); - append_dev(p14, b28); + append_dev(p14, b27); append_dev(p14, t120); - append_dev(p14, b29); + append_dev(p14, b28); append_dev(p14, t122); + append_dev(p14, b29); + append_dev(p14, t124); current = true; if (!mounted) { - dispose = action_destroyer(link_action = link.call(null, a3)); + dispose = action_destroyer(link_action = link.call(null, a4)); mounted = true; } }, @@ -2533,7 +2543,7 @@ var app = (function () { destroy_component(icon0); destroy_component(icon1); destroy_component(icon2); - if (detaching) detach_dev(t27); + if (detaching) detach_dev(t29); if (detaching) detach_dev(rationale); mounted = false; dispose(); @@ -2678,7 +2688,7 @@ var app = (function () { add_location(nav, file$2, 72, 4, 1033); attr_dev(header, "class", "svelte-1xw0xeo"); add_location(header, file$2, 71, 2, 1020); - if (img.src !== (img_src_value = "https://via.placeholder.com/500x200?text=Google+Doodle")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = "http://via.placeholder.com/500x200?text=Google+Doodle")) attr_dev(img, "src", img_src_value); add_location(img, file$2, 88, 6, 1349); attr_dev(a2, "href", "/demos/google"); attr_dev(a2, "class", "svelte-1xw0xeo"); @@ -2687,15 +2697,15 @@ var app = (function () { add_location(figure, file$2, 86, 2, 1296); attr_dev(input, "type", "text"); attr_dev(input, "class", "svelte-1xw0xeo"); - add_location(input, file$2, 93, 2, 1451); + add_location(input, file$2, 93, 2, 1450); attr_dev(button1, "class", "svelte-1xw0xeo"); - add_location(button1, file$2, 95, 6, 1491); + add_location(button1, file$2, 95, 6, 1490); attr_dev(button2, "class", "svelte-1xw0xeo"); - add_location(button2, file$2, 96, 6, 1528); + add_location(button2, file$2, 96, 6, 1527); attr_dev(buttons, "class", "svelte-1xw0xeo"); - add_location(buttons, file$2, 94, 4, 1475); + add_location(buttons, file$2, 94, 4, 1474); attr_dev(search, "class", "svelte-1xw0xeo"); - add_location(search, file$2, 92, 2, 1440); + add_location(search, file$2, 92, 2, 1439); attr_dev(content, "class", "svelte-1xw0xeo"); add_location(content, file$2, 70, 0, 1008); }, @@ -3278,20 +3288,20 @@ var app = (function () { add_location(nav, file$4, 76, 4, 1105); attr_dev(header, "class", "svelte-oxwxiv"); add_location(header, file$4, 75, 2, 1092); - if (img.src !== (img_src_value = "https://via.placeholder.com/800x450?text=Video")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = "http://via.placeholder.com/800x450?text=Video")) attr_dev(img, "src", img_src_value); add_location(img, file$4, 92, 8, 1604); attr_dev(a1, "class", "svelte-oxwxiv"); - add_location(a1, file$4, 94, 10, 1694); + add_location(a1, file$4, 94, 10, 1693); attr_dev(a2, "class", "svelte-oxwxiv"); - add_location(a2, file$4, 94, 22, 1706); + add_location(a2, file$4, 94, 22, 1705); attr_dev(p, "class", "svelte-oxwxiv"); - add_location(p, file$4, 95, 10, 1735); - add_location(likes, file$4, 97, 12, 1796); - add_location(video_buttons, file$4, 98, 12, 1835); + add_location(p, file$4, 95, 10, 1734); + add_location(likes, file$4, 97, 12, 1795); + add_location(video_buttons, file$4, 98, 12, 1834); set_custom_element_data(video_actions, "class", "svelte-oxwxiv"); - add_location(video_actions, file$4, 96, 10, 1768); + add_location(video_actions, file$4, 96, 10, 1767); attr_dev(figcaption, "class", "svelte-oxwxiv"); - add_location(figcaption, file$4, 93, 8, 1671); + add_location(figcaption, file$4, 93, 8, 1670); add_location(figure, file$4, 91, 6, 1587); add_location(left, file$4, 90, 4, 1574); attr_dev(main, "class", "svelte-oxwxiv"); @@ -3474,9 +3484,9 @@ var app = (function () { img = element("img"); t = space(); attr_dev(img, "alt", "Stock photo"); - if (img.src !== (img_src_value = "https://via.placeholder.com/82x82?text=Story")) attr_dev(img, "src", img_src_value); - add_location(img, file$5, 109, 6, 1889); - add_location(figure, file$5, 108, 4, 1874); + if (img.src !== (img_src_value = "http://via.placeholder.com/82x82?text=Story")) attr_dev(img, "src", img_src_value); + add_location(img, file$5, 109, 6, 1888); + add_location(figure, file$5, 108, 4, 1873); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); @@ -3636,35 +3646,35 @@ var app = (function () { attr_dev(header, "class", "svelte-oov5yx"); add_location(header, file$5, 74, 2, 1046); attr_dev(img, "alt", "Zed's Face"); - if (img.src !== (img_src_value = "https://via.placeholder.com/256x256?text=Zed's Face")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = "http://via.placeholder.com/256x256?text=Zed's Face")) attr_dev(img, "src", img_src_value); add_location(img, file$5, 87, 6, 1326); attr_dev(figure, "class", "svelte-oov5yx"); add_location(figure, file$5, 86, 4, 1311); - add_location(b1, file$5, 92, 8, 1451); + add_location(b1, file$5, 92, 8, 1450); attr_dev(button1, "class", "svelte-oov5yx"); - add_location(button1, file$5, 92, 23, 1466); + add_location(button1, file$5, 92, 23, 1465); attr_dev(p0, "class", "svelte-oov5yx"); - add_location(p0, file$5, 91, 6, 1439); - add_location(b2, file$5, 96, 8, 1520); - add_location(b3, file$5, 96, 25, 1537); - add_location(b4, file$5, 96, 48, 1560); + add_location(p0, file$5, 91, 6, 1438); + add_location(b2, file$5, 96, 8, 1519); + add_location(b3, file$5, 96, 25, 1536); + add_location(b4, file$5, 96, 48, 1559); attr_dev(p1, "class", "svelte-oov5yx"); - add_location(p1, file$5, 95, 6, 1508); - add_location(b5, file$5, 99, 9, 1604); + add_location(p1, file$5, 95, 6, 1507); + add_location(b5, file$5, 99, 9, 1603); attr_dev(p2, "class", "svelte-oov5yx"); - add_location(p2, file$5, 99, 6, 1601); - add_location(br, file$5, 100, 102, 1729); + add_location(p2, file$5, 99, 6, 1600); + add_location(br, file$5, 100, 102, 1728); attr_dev(a1, "href", "www.twitch.tv/zedashaw"); attr_dev(a1, "class", "svelte-oov5yx"); - add_location(a1, file$5, 101, 8, 1742); + add_location(a1, file$5, 101, 8, 1741); attr_dev(p3, "class", "svelte-oov5yx"); - add_location(p3, file$5, 100, 6, 1633); + add_location(p3, file$5, 100, 6, 1632); attr_dev(info, "class", "svelte-oov5yx"); - add_location(info, file$5, 90, 4, 1426); + add_location(info, file$5, 90, 4, 1425); attr_dev(profile, "class", "svelte-oov5yx"); add_location(profile, file$5, 85, 2, 1297); attr_dev(pins_1, "class", "svelte-oov5yx"); - add_location(pins_1, file$5, 106, 2, 1841); + add_location(pins_1, file$5, 106, 2, 1840); attr_dev(content, "class", "svelte-oov5yx"); add_location(content, file$5, 73, 0, 1034); }, @@ -3925,7 +3935,7 @@ var app = (function () { attr_dev(info, "class", "svelte-1w7ltga"); add_location(info, file$6, 114, 2, 1758); attr_dev(img, "alt", "Zed's Face"); - if (img.src !== (img_src_value = "https://via.placeholder.com/128x128?text=Zed's Face")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = "http://via.placeholder.com/128x128?text=Zed's Face")) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-1w7ltga"); add_location(img, file$6, 122, 4, 1969); attr_dev(figure, "class", "svelte-1w7ltga"); @@ -4177,58 +4187,272 @@ var app = (function () { } } - /* src/demos/index.svelte generated by Svelte v3.30.0 */ - const file$8 = "src/demos/index.svelte"; + function simpleSvgPlaceholder({ + width = 300, + height = 150, + text = `${width}×${height}`, + fontFamily = 'sans-serif', + fontWeight = 'bold', + fontSize = Math.floor(Math.min(width, height) * 0.2), + dy = fontSize * 0.35, + bgColor = '#ddd', + textColor = 'rgba(0,0,0,0.5)', + dataUri = true, + charset = 'UTF-8' + } = {}) { + const str = ` + + ${text} + `; + + // Thanks to: filamentgroup/directory-encoder + const cleaned = str + .replace(/[\t\n\r]/gim, '') // Strip newlines and tabs + .replace(/\s\s+/g, ' ') // Condense multiple spaces + .replace(/'/gim, '\\i'); // Normalize quotes + + if (dataUri) { + const encoded = encodeURIComponent(cleaned) + .replace(/\(/g, '%28') // Encode brackets + .replace(/\)/g, '%29'); + + return `data:image/svg+xml;charset=${charset},${encoded}`; + } + + return cleaned; + } + + var simpleSvgPlaceholder_1 = simpleSvgPlaceholder; + + const defaults = { + bgColor: '#ccc', + textColor: '#888', + }; + + const holder = (x, y) => simpleSvgPlaceholder_1({...defaults, width: x, height: y}); + + /* src/thumbs/Tiles.svelte generated by Svelte v3.30.0 */ + const file$8 = "src/thumbs/Tiles.svelte"; function create_fragment$9(ctx) { - let h1; - let t1; - let images; - let figure0; - let google; + let content; + let tile; + let left; + let img; + let img_src_value; + let t0; + let middle; + let h4; let t2; - let figcaption0; + let p; let t4; - let figure1; - let twitter; + let right; + let button0; + let icon0; let t5; - let figcaption1; - let t7; - let figure2; - let login; - let t8; - let figcaption2; - let t10; - let figure3; - let youtube; - let t11; - let figcaption3; - let t13; - let figure4; - let instagram; - let t14; - let figcaption4; - let t16; - let figure5; - let pinterest; + let button1; + let icon1; + let current; + + icon0 = new Icon({ + props: { + name: "check-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + icon1 = new Icon({ + props: { + name: "x-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + const block = { + c: function create() { + content = element("content"); + tile = element("tile"); + left = element("left"); + img = element("img"); + t0 = space(); + middle = element("middle"); + h4 = element("h4"); + h4.textContent = "Tile Example"; + t2 = space(); + p = element("p"); + p.textContent = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."; + t4 = space(); + right = element("right"); + button0 = element("button"); + create_component(icon0.$$.fragment); + t5 = space(); + button1 = element("button"); + create_component(icon1.$$.fragment); + if (img.src !== (img_src_value = holder(48, 48))) attr_dev(img, "src", img_src_value); + add_location(img, file$8, 46, 6, 779); + add_location(left, file$8, 45, 4, 766); + attr_dev(h4, "class", "svelte-fwzpwr"); + add_location(h4, file$8, 50, 6, 841); + add_location(p, file$8, 53, 6, 885); + attr_dev(middle, "class", "svelte-fwzpwr"); + add_location(middle, file$8, 49, 4, 826); + attr_dev(button0, "class", "svelte-fwzpwr"); + add_location(button0, file$8, 57, 4, 1047); + attr_dev(button1, "class", "svelte-fwzpwr"); + add_location(button1, file$8, 58, 4, 1131); + attr_dev(right, "class", "svelte-fwzpwr"); + add_location(right, file$8, 56, 4, 1035); + attr_dev(tile, "class", "svelte-fwzpwr"); + add_location(tile, file$8, 44, 2, 755); + attr_dev(content, "class", "svelte-fwzpwr"); + add_location(content, file$8, 43, 0, 743); + }, + l: function claim(nodes) { + throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); + }, + m: function mount(target, anchor) { + insert_dev(target, content, anchor); + append_dev(content, tile); + append_dev(tile, left); + append_dev(left, img); + append_dev(tile, t0); + append_dev(tile, middle); + append_dev(middle, h4); + append_dev(middle, t2); + append_dev(middle, p); + append_dev(tile, t4); + append_dev(tile, right); + append_dev(right, button0); + mount_component(icon0, button0, null); + append_dev(right, t5); + append_dev(right, button1); + mount_component(icon1, button1, null); + current = true; + }, + p: noop, + i: function intro(local) { + if (current) return; + transition_in(icon0.$$.fragment, local); + transition_in(icon1.$$.fragment, local); + current = true; + }, + o: function outro(local) { + transition_out(icon0.$$.fragment, local); + transition_out(icon1.$$.fragment, local); + current = false; + }, + d: function destroy(detaching) { + if (detaching) detach_dev(content); + destroy_component(icon0); + destroy_component(icon1); + } + }; + + dispatch_dev("SvelteRegisterBlock", { + block, + id: create_fragment$9.name, + type: "component", + source: "", + ctx + }); + + return block; + } + + function instance$9($$self, $$props, $$invalidate) { + let { $$slots: slots = {}, $$scope } = $$props; + validate_slots("Tiles", slots, []); + const writable_props = []; + + Object.keys($$props).forEach(key => { + if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); + }); + + $$self.$capture_state = () => ({ Icon, holder }); + return []; + } + + class Tiles extends SvelteComponentDev { + constructor(options) { + super(options); + init(this, options, instance$9, create_fragment$9, safe_not_equal, {}); + + dispatch_dev("SvelteRegisterComponent", { + component: this, + tagName: "Tiles", + options, + id: create_fragment$9.name + }); + } + } + + /* src/demos/index.svelte generated by Svelte v3.30.0 */ + const file$9 = "src/demos/index.svelte"; + + function create_fragment$a(ctx) { + let h10; + let t1; + let images0; + let figure0; + let google; + let t2; + let figcaption0; + let t4; + let figure1; + let twitter; + let t5; + let figcaption1; + let t7; + let figure2; + let youtube; + let t8; + let figcaption2; + let t10; + let figure3; + let instagram; + let t11; + let figcaption3; + let t13; + let figure4; + let pinterest; + let t14; + let figcaption4; + let t16; + let hr; let t17; + let h11; + let t19; + let images1; + let figure5; + let login; + let t20; let figcaption5; + let t22; + let figure6; + let tiles; + let t23; + let figcaption6; let current; let mounted; let dispose; google = new Google({ $$inline: true }); twitter = new Twitter({ $$inline: true }); - login = new Login({ $$inline: true }); youtube = new Youtube({ $$inline: true }); instagram = new Instagram({ $$inline: true }); pinterest = new Pinterest({ $$inline: true }); + login = new Login({ $$inline: true }); + tiles = new Tiles({ $$inline: true }); const block = { c: function create() { - h1 = element("h1"); - h1.textContent = "A Compendium of Layout Demos"; + h10 = element("h1"); + h10.textContent = "Full Websites"; t1 = space(); - images = element("images"); + images0 = element("images"); figure0 = element("figure"); create_component(google.$$.fragment); t2 = space(); @@ -4242,93 +4466,122 @@ var app = (function () { figcaption1.textContent = "Twitter"; t7 = space(); figure2 = element("figure"); - create_component(login.$$.fragment); + create_component(youtube.$$.fragment); t8 = space(); figcaption2 = element("figcaption"); - figcaption2.textContent = "Basic Login"; + figcaption2.textContent = "Youtube"; t10 = space(); figure3 = element("figure"); - create_component(youtube.$$.fragment); + create_component(instagram.$$.fragment); t11 = space(); figcaption3 = element("figcaption"); - figcaption3.textContent = "Youtube"; + figcaption3.textContent = "Instagram"; t13 = space(); figure4 = element("figure"); - create_component(instagram.$$.fragment); + create_component(pinterest.$$.fragment); t14 = space(); figcaption4 = element("figcaption"); - figcaption4.textContent = "Instagram"; + figcaption4.textContent = "Pinterest"; t16 = space(); - figure5 = element("figure"); - create_component(pinterest.$$.fragment); + hr = element("hr"); t17 = space(); + h11 = element("h1"); + h11.textContent = "Common UI Patterns"; + t19 = space(); + images1 = element("images"); + figure5 = element("figure"); + create_component(login.$$.fragment); + t20 = space(); figcaption5 = element("figcaption"); - figcaption5.textContent = "Pinterest"; - add_location(h1, file$8, 47, 0, 1013); + figcaption5.textContent = "Basic Login"; + t22 = space(); + figure6 = element("figure"); + create_component(tiles.$$.fragment); + t23 = space(); + figcaption6 = element("figcaption"); + figcaption6.textContent = "Tiles"; + add_location(h10, file$9, 49, 0, 1110); attr_dev(figcaption0, "class", "svelte-1bny7ze"); - add_location(figcaption0, file$8, 53, 2, 1129); + add_location(figcaption0, file$9, 55, 2, 1211); attr_dev(figure0, "class", "svelte-1bny7ze"); - add_location(figure0, file$8, 51, 0, 1062); + add_location(figure0, file$9, 53, 0, 1144); attr_dev(figcaption1, "class", "svelte-1bny7ze"); - add_location(figcaption1, file$8, 58, 2, 1239); + add_location(figcaption1, file$9, 60, 2, 1321); attr_dev(figure1, "class", "svelte-1bny7ze"); - add_location(figure1, file$8, 56, 0, 1172); + add_location(figure1, file$9, 58, 0, 1254); attr_dev(figcaption2, "class", "svelte-1bny7ze"); - add_location(figcaption2, file$8, 63, 2, 1356); - attr_dev(figure2, "id", "main"); + add_location(figcaption2, file$9, 65, 2, 1432); attr_dev(figure2, "class", "svelte-1bny7ze"); - add_location(figure2, file$8, 61, 0, 1283); + add_location(figure2, file$9, 63, 0, 1365); attr_dev(figcaption3, "class", "svelte-1bny7ze"); - add_location(figcaption3, file$8, 68, 2, 1471); + add_location(figcaption3, file$9, 70, 2, 1547); attr_dev(figure3, "class", "svelte-1bny7ze"); - add_location(figure3, file$8, 66, 0, 1404); + add_location(figure3, file$9, 68, 0, 1476); attr_dev(figcaption4, "class", "svelte-1bny7ze"); - add_location(figcaption4, file$8, 73, 2, 1586); + add_location(figcaption4, file$9, 75, 2, 1665); attr_dev(figure4, "class", "svelte-1bny7ze"); - add_location(figure4, file$8, 71, 0, 1515); + add_location(figure4, file$9, 73, 0, 1594); + attr_dev(images0, "class", "svelte-1bny7ze"); + add_location(images0, file$9, 51, 0, 1134); + add_location(hr, file$9, 79, 0, 1722); + add_location(h11, file$9, 80, 0, 1727); attr_dev(figcaption5, "class", "svelte-1bny7ze"); - add_location(figcaption5, file$8, 78, 2, 1704); + add_location(figcaption5, file$9, 85, 2, 1828); attr_dev(figure5, "class", "svelte-1bny7ze"); - add_location(figure5, file$8, 76, 0, 1633); - attr_dev(images, "class", "svelte-1bny7ze"); - add_location(images, file$8, 49, 0, 1052); + add_location(figure5, file$9, 83, 0, 1765); + attr_dev(figcaption6, "class", "svelte-1bny7ze"); + add_location(figcaption6, file$9, 91, 2, 1940); + attr_dev(figure6, "class", "svelte-1bny7ze"); + add_location(figure6, file$9, 89, 0, 1877); + attr_dev(images1, "class", "svelte-1bny7ze"); + add_location(images1, file$9, 82, 0, 1756); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); }, m: function mount(target, anchor) { - insert_dev(target, h1, anchor); + insert_dev(target, h10, anchor); insert_dev(target, t1, anchor); - insert_dev(target, images, anchor); - append_dev(images, figure0); + insert_dev(target, images0, anchor); + append_dev(images0, figure0); mount_component(google, figure0, null); append_dev(figure0, t2); append_dev(figure0, figcaption0); - append_dev(images, t4); - append_dev(images, figure1); + append_dev(images0, t4); + append_dev(images0, figure1); mount_component(twitter, figure1, null); append_dev(figure1, t5); append_dev(figure1, figcaption1); - append_dev(images, t7); - append_dev(images, figure2); - mount_component(login, figure2, null); + append_dev(images0, t7); + append_dev(images0, figure2); + mount_component(youtube, figure2, null); append_dev(figure2, t8); append_dev(figure2, figcaption2); - append_dev(images, t10); - append_dev(images, figure3); - mount_component(youtube, figure3, null); + append_dev(images0, t10); + append_dev(images0, figure3); + mount_component(instagram, figure3, null); append_dev(figure3, t11); append_dev(figure3, figcaption3); - append_dev(images, t13); - append_dev(images, figure4); - mount_component(instagram, figure4, null); + append_dev(images0, t13); + append_dev(images0, figure4); + mount_component(pinterest, figure4, null); append_dev(figure4, t14); append_dev(figure4, figcaption4); - append_dev(images, t16); - append_dev(images, figure5); - mount_component(pinterest, figure5, null); - append_dev(figure5, t17); + insert_dev(target, t16, anchor); + insert_dev(target, hr, anchor); + insert_dev(target, t17, anchor); + insert_dev(target, h11, anchor); + insert_dev(target, t19, anchor); + insert_dev(target, images1, anchor); + append_dev(images1, figure5); + mount_component(login, figure5, null); + append_dev(figure5, t20); append_dev(figure5, figcaption5); + append_dev(images1, t22); + append_dev(images1, figure6); + mount_component(tiles, figure6, null); + append_dev(figure6, t23); + append_dev(figure6, figcaption6); current = true; if (!mounted) { @@ -4338,7 +4591,8 @@ var app = (function () { listen_dev(figure2, "click", /*click_handler_2*/ ctx[2], false, false, false), listen_dev(figure3, "click", /*click_handler_3*/ ctx[3], false, false, false), listen_dev(figure4, "click", /*click_handler_4*/ ctx[4], false, false, false), - listen_dev(figure5, "click", /*click_handler_5*/ ctx[5], false, false, false) + listen_dev(figure5, "click", /*click_handler_5*/ ctx[5], false, false, false), + listen_dev(figure6, "click", /*click_handler_6*/ ctx[6], false, false, false) ]; mounted = true; @@ -4349,31 +4603,40 @@ var app = (function () { if (current) return; transition_in(google.$$.fragment, local); transition_in(twitter.$$.fragment, local); - transition_in(login.$$.fragment, local); transition_in(youtube.$$.fragment, local); transition_in(instagram.$$.fragment, local); transition_in(pinterest.$$.fragment, local); + transition_in(login.$$.fragment, local); + transition_in(tiles.$$.fragment, local); current = true; }, o: function outro(local) { transition_out(google.$$.fragment, local); transition_out(twitter.$$.fragment, local); - transition_out(login.$$.fragment, local); transition_out(youtube.$$.fragment, local); transition_out(instagram.$$.fragment, local); transition_out(pinterest.$$.fragment, local); + transition_out(login.$$.fragment, local); + transition_out(tiles.$$.fragment, local); current = false; }, d: function destroy(detaching) { - if (detaching) detach_dev(h1); + if (detaching) detach_dev(h10); if (detaching) detach_dev(t1); - if (detaching) detach_dev(images); + if (detaching) detach_dev(images0); destroy_component(google); destroy_component(twitter); - destroy_component(login); destroy_component(youtube); destroy_component(instagram); destroy_component(pinterest); + if (detaching) detach_dev(t16); + if (detaching) detach_dev(hr); + if (detaching) detach_dev(t17); + if (detaching) detach_dev(h11); + if (detaching) detach_dev(t19); + if (detaching) detach_dev(images1); + destroy_component(login); + destroy_component(tiles); mounted = false; run_all(dispose); } @@ -4381,7 +4644,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$9.name, + id: create_fragment$a.name, type: "component", source: "", ctx @@ -4390,7 +4653,7 @@ var app = (function () { return block; } - function instance$9($$self, $$props, $$invalidate) { + function instance$a($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Demos", slots, []); const writable_props = []; @@ -4401,10 +4664,11 @@ var app = (function () { const click_handler = () => push("/demos/google"); const click_handler_1 = () => push("/demos/twitter"); - const click_handler_2 = () => push("/demos/login"); - const click_handler_3 = () => push("/demos/youtube"); - const click_handler_4 = () => push("/demos/instagram"); - const click_handler_5 = () => push("/demos/pinterest"); + const click_handler_2 = () => push("/demos/youtube"); + const click_handler_3 = () => push("/demos/instagram"); + const click_handler_4 = () => push("/demos/pinterest"); + const click_handler_5 = () => push("/demos/login"); + const click_handler_6 = () => push("/demos/tiles"); $$self.$capture_state = () => ({ Google, @@ -4413,7 +4677,9 @@ var app = (function () { Instagram, Pinterest, Login, - push + Tiles, + push, + holder }); return [ @@ -4422,36 +4688,37 @@ var app = (function () { click_handler_2, click_handler_3, click_handler_4, - click_handler_5 + click_handler_5, + click_handler_6 ]; } class Demos extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$9, create_fragment$9, safe_not_equal, {}); + init(this, options, instance$a, create_fragment$a, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Demos", options, - id: create_fragment$9.name + id: create_fragment$a.name }); } } /* src/About.svelte generated by Svelte v3.30.0 */ - const file$9 = "src/About.svelte"; + const file$a = "src/About.svelte"; - function create_fragment$a(ctx) { + function create_fragment$b(ctx) { let h1; const block = { c: function create() { h1 = element("h1"); h1.textContent = "About Page"; - add_location(h1, file$9, 0, 0, 0); + add_location(h1, file$a, 0, 0, 0); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -4469,7 +4736,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$a.name, + id: create_fragment$b.name, type: "component", source: "", ctx @@ -4478,7 +4745,7 @@ var app = (function () { return block; } - function instance$a($$self, $$props) { + function instance$b($$self, $$props) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("About", slots, []); const writable_props = []; @@ -4493,29 +4760,29 @@ var app = (function () { class About extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$a, create_fragment$a, safe_not_equal, {}); + init(this, options, instance$b, create_fragment$b, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "About", options, - id: create_fragment$a.name + id: create_fragment$b.name }); } } /* src/NotFound.svelte generated by Svelte v3.30.0 */ - const file$a = "src/NotFound.svelte"; + const file$b = "src/NotFound.svelte"; - function create_fragment$b(ctx) { + function create_fragment$c(ctx) { let h1; const block = { c: function create() { h1 = element("h1"); h1.textContent = "Not found"; - add_location(h1, file$a, 0, 0, 0); + add_location(h1, file$b, 0, 0, 0); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -4533,7 +4800,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$b.name, + id: create_fragment$c.name, type: "component", source: "", ctx @@ -4542,7 +4809,7 @@ var app = (function () { return block; } - function instance$b($$self, $$props) { + function instance$c($$self, $$props) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("NotFound", slots, []); const writable_props = []; @@ -4557,13 +4824,13 @@ var app = (function () { class NotFound extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$b, create_fragment$b, safe_not_equal, {}); + init(this, options, instance$c, create_fragment$c, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "NotFound", options, - id: create_fragment$b.name + id: create_fragment$c.name }); } } @@ -6424,9 +6691,9 @@ var app = (function () { Prism.languages.svelte.tag.addInlined('script', 'javascript'); /* src/components/CodeView.svelte generated by Svelte v3.30.0 */ - const file$b = "src/components/CodeView.svelte"; + const file$c = "src/components/CodeView.svelte"; - function create_fragment$c(ctx) { + function create_fragment$d(ctx) { let code_view; let css_view; let h10; @@ -6460,20 +6727,20 @@ var app = (function () { pre1 = element("pre"); code1 = element("code"); t6 = text(/*html_code*/ ctx[1]); - add_location(h10, file$b, 39, 4, 709); + add_location(h10, file$c, 39, 4, 709); attr_dev(code0, "class", "language-svelte"); - add_location(code0, file$b, 41, 6, 738); - add_location(pre0, file$b, 40, 4, 726); + add_location(code0, file$c, 41, 6, 738); + add_location(pre0, file$c, 40, 4, 726); set_custom_element_data(css_view, "class", "svelte-1qac1jo"); - add_location(css_view, file$b, 38, 2, 694); - add_location(h11, file$b, 48, 4, 842); + add_location(css_view, file$c, 38, 2, 694); + add_location(h11, file$c, 48, 4, 842); attr_dev(code1, "class", "language-svelte"); - add_location(code1, file$b, 50, 6, 872); - add_location(pre1, file$b, 49, 4, 860); + add_location(code1, file$c, 50, 6, 872); + add_location(pre1, file$c, 49, 4, 860); set_custom_element_data(html_view, "class", "svelte-1qac1jo"); - add_location(html_view, file$b, 47, 2, 826); + add_location(html_view, file$c, 47, 2, 826); set_custom_element_data(code_view, "class", "svelte-1qac1jo"); - add_location(code_view, file$b, 37, 0, 680); + add_location(code_view, file$c, 37, 0, 680); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -6507,7 +6774,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$c.name, + id: create_fragment$d.name, type: "component", source: "", ctx @@ -6516,7 +6783,7 @@ var app = (function () { return block; } - function instance$c($$self, $$props, $$invalidate) { + function instance$d($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("CodeView", slots, []); let { source = "" } = $$props; @@ -6562,13 +6829,13 @@ var app = (function () { class CodeView extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$c, create_fragment$c, safe_not_equal, { source: 2 }); + init(this, options, instance$d, create_fragment$d, safe_not_equal, { source: 2 }); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "CodeView", options, - id: create_fragment$c.name + id: create_fragment$d.name }); } @@ -6582,9 +6849,9 @@ var app = (function () { } /* src/demos/Google.svelte generated by Svelte v3.30.0 */ - const file$c = "src/demos/Google.svelte"; + const file$d = "src/demos/Google.svelte"; - function create_fragment$d(ctx) { + function create_fragment$e(ctx) { let content; let header; let nav; @@ -6675,41 +6942,41 @@ var app = (function () { t16 = space(); create_component(codeview.$$.fragment); attr_dev(a0, "class", "svelte-1xw0xeo"); - add_location(a0, file$c, 76, 8, 1121); + add_location(a0, file$d, 77, 8, 1172); attr_dev(a1, "class", "svelte-1xw0xeo"); - add_location(a1, file$c, 77, 8, 1142); - add_location(nav_left, file$c, 75, 6, 1102); - add_location(li0, file$c, 80, 6, 1190); - add_location(li1, file$c, 81, 6, 1211); - add_location(li2, file$c, 82, 6, 1232); + add_location(a1, file$d, 78, 8, 1193); + add_location(nav_left, file$d, 76, 6, 1153); + add_location(li0, file$d, 81, 6, 1241); + add_location(li1, file$d, 82, 6, 1262); + add_location(li2, file$d, 83, 6, 1283); attr_dev(button0, "class", "svelte-1xw0xeo"); - add_location(button0, file$c, 83, 10, 1285); - add_location(li3, file$c, 83, 6, 1281); - add_location(ul, file$c, 79, 6, 1179); + add_location(button0, file$d, 84, 10, 1336); + add_location(li3, file$d, 84, 6, 1332); + add_location(ul, file$d, 80, 6, 1230); attr_dev(nav, "class", "svelte-1xw0xeo"); - add_location(nav, file$c, 74, 4, 1090); + add_location(nav, file$d, 75, 4, 1141); attr_dev(header, "class", "svelte-1xw0xeo"); - add_location(header, file$c, 73, 2, 1077); - if (img.src !== (img_src_value = "https://via.placeholder.com/500x200?text=Google+Doodle")) attr_dev(img, "src", img_src_value); - add_location(img, file$c, 90, 6, 1406); + add_location(header, file$d, 74, 2, 1128); + if (img.src !== (img_src_value = holder(500, 200))) attr_dev(img, "src", img_src_value); + add_location(img, file$d, 91, 6, 1457); attr_dev(a2, "href", "/demos/google"); attr_dev(a2, "class", "svelte-1xw0xeo"); - add_location(a2, file$c, 89, 4, 1366); + add_location(a2, file$d, 90, 4, 1417); attr_dev(figure, "class", "svelte-1xw0xeo"); - add_location(figure, file$c, 88, 2, 1353); + add_location(figure, file$d, 89, 2, 1404); attr_dev(input, "type", "text"); attr_dev(input, "class", "svelte-1xw0xeo"); - add_location(input, file$c, 95, 2, 1508); + add_location(input, file$d, 96, 2, 1524); attr_dev(button1, "class", "svelte-1xw0xeo"); - add_location(button1, file$c, 97, 6, 1548); + add_location(button1, file$d, 98, 6, 1564); attr_dev(button2, "class", "svelte-1xw0xeo"); - add_location(button2, file$c, 98, 6, 1585); + add_location(button2, file$d, 99, 6, 1601); attr_dev(buttons, "class", "svelte-1xw0xeo"); - add_location(buttons, file$c, 96, 4, 1532); + add_location(buttons, file$d, 97, 4, 1548); attr_dev(search, "class", "svelte-1xw0xeo"); - add_location(search, file$c, 94, 2, 1497); + add_location(search, file$d, 95, 2, 1513); attr_dev(content, "class", "svelte-1xw0xeo"); - add_location(content, file$c, 71, 0, 1064); + add_location(content, file$d, 72, 0, 1115); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -6778,7 +7045,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$d.name, + id: create_fragment$e.name, type: "component", source: "", ctx @@ -6787,7 +7054,7 @@ var app = (function () { return block; } - function instance$d($$self, $$props, $$invalidate) { + function instance$e($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Google", slots, []); const writable_props = []; @@ -6796,26 +7063,26 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ link, Icon, CodeView }); + $$self.$capture_state = () => ({ link, Icon, CodeView, holder }); return []; } class Google$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$d, create_fragment$d, safe_not_equal, {}); + init(this, options, instance$e, create_fragment$e, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Google", options, - id: create_fragment$d.name + id: create_fragment$e.name }); } } /* src/demos/Twitter.svelte generated by Svelte v3.30.0 */ - const file$d = "src/demos/Twitter.svelte"; + const file$e = "src/demos/Twitter.svelte"; function get_each_context$1(ctx, list, i) { const child_ctx = ctx.slice(); @@ -6823,7 +7090,7 @@ var app = (function () { return child_ctx; } - // (240:4) {#each tweets as tweet} + // (241:4) {#each tweets as tweet} function create_each_block$1(ctx) { let tweet; let figure; @@ -6926,22 +7193,22 @@ var app = (function () { attr_dev(img, "alt", "Stock photo"); if (img.src !== (img_src_value = "/profile_pic.jpg")) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-bnvc6y"); - add_location(img, file$d, 242, 12, 4508); + add_location(img, file$e, 243, 12, 4559); attr_dev(figure, "id", "avatar"); attr_dev(figure, "class", "svelte-bnvc6y"); - add_location(figure, file$d, 241, 8, 4475); + add_location(figure, file$e, 242, 8, 4526); attr_dev(h4, "class", "svelte-bnvc6y"); - add_location(h4, file$d, 245, 10, 4598); - add_location(br, file$d, 246, 162, 4789); - add_location(a, file$d, 248, 12, 4807); + add_location(h4, file$e, 246, 10, 4649); + add_location(br, file$e, 247, 162, 4840); + add_location(a, file$e, 249, 12, 4858); attr_dev(p, "class", "svelte-bnvc6y"); - add_location(p, file$d, 246, 10, 4637); + add_location(p, file$e, 247, 10, 4688); attr_dev(actions, "class", "svelte-bnvc6y"); - add_location(actions, file$d, 249, 10, 5125); + add_location(actions, file$e, 250, 10, 5176); attr_dev(post, "class", "svelte-bnvc6y"); - add_location(post, file$d, 244, 8, 4581); + add_location(post, file$e, 245, 8, 4632); attr_dev(tweet, "class", "svelte-bnvc6y"); - add_location(tweet, file$d, 240, 6, 4459); + add_location(tweet, file$e, 241, 6, 4510); }, m: function mount(target, anchor) { insert_dev(target, tweet, anchor); @@ -7003,14 +7270,14 @@ var app = (function () { block, id: create_each_block$1.name, type: "each", - source: "(240:4) {#each tweets as tweet}", + source: "(241:4) {#each tweets as tweet}", ctx }); return block; } - function create_fragment$e(ctx) { + function create_fragment$f(ctx) { let content; let left; let icon0; @@ -7340,128 +7607,128 @@ var app = (function () { li7.textContent = "News news news."; t67 = space(); create_component(codeview.$$.fragment); - add_location(h40, file$d, 202, 2, 3258); - add_location(h41, file$d, 203, 2, 3279); + add_location(h40, file$e, 203, 2, 3309); + add_location(h41, file$e, 204, 2, 3330); attr_dev(left, "class", "svelte-bnvc6y"); - add_location(left, file$d, 200, 2, 3202); + add_location(left, file$e, 201, 2, 3253); attr_dev(back, "class", "svelte-bnvc6y"); - add_location(back, file$d, 209, 8, 3403); + add_location(back, file$e, 210, 8, 3454); attr_dev(h42, "class", "svelte-bnvc6y"); - add_location(h42, file$d, 211, 10, 3468); + add_location(h42, file$e, 212, 10, 3519); attr_dev(span, "class", "svelte-bnvc6y"); - add_location(span, file$d, 212, 10, 3507); - add_location(name, file$d, 210, 8, 3451); + add_location(span, file$e, 213, 10, 3558); + add_location(name, file$e, 211, 8, 3502); attr_dev(nav, "class", "svelte-bnvc6y"); - add_location(nav, file$d, 208, 6, 3389); + add_location(nav, file$e, 209, 6, 3440); attr_dev(header, "class", "svelte-bnvc6y"); - add_location(header, file$d, 207, 4, 3374); + add_location(header, file$e, 208, 4, 3425); if (img0.src !== (img0_src_value = "/header_pic.jpg")) attr_dev(img0, "src", img0_src_value); attr_dev(img0, "class", "svelte-bnvc6y"); - add_location(img0, file$d, 219, 8, 3629); + add_location(img0, file$e, 220, 8, 3680); attr_dev(figure0, "id", "background"); attr_dev(figure0, "class", "svelte-bnvc6y"); - add_location(figure0, file$d, 218, 6, 3596); + add_location(figure0, file$e, 219, 6, 3647); if (img1.src !== (img1_src_value = "/profile_pic.jpg")) attr_dev(img1, "src", img1_src_value); attr_dev(img1, "class", "svelte-bnvc6y"); - add_location(img1, file$d, 223, 8, 3709); + add_location(img1, file$e, 224, 8, 3760); attr_dev(button0, "id", "follow"); attr_dev(button0, "class", "svelte-bnvc6y"); - add_location(button0, file$d, 224, 8, 3746); + add_location(button0, file$e, 225, 8, 3797); attr_dev(figure1, "id", "avatar"); attr_dev(figure1, "class", "svelte-bnvc6y"); - add_location(figure1, file$d, 222, 6, 3680); + add_location(figure1, file$e, 223, 6, 3731); attr_dev(images, "class", "svelte-bnvc6y"); - add_location(images, file$d, 217, 4, 3581); - add_location(h30, file$d, 229, 6, 3833); - add_location(p0, file$d, 230, 6, 3868); - add_location(p1, file$d, 231, 6, 3889); - add_location(a0, file$d, 232, 153, 4208); - add_location(p2, file$d, 232, 6, 4061); - add_location(b0, file$d, 233, 9, 4338); - add_location(b1, file$d, 233, 30, 4359); - add_location(p3, file$d, 233, 6, 4335); + add_location(images, file$e, 218, 4, 3632); + add_location(h30, file$e, 230, 6, 3884); + add_location(p0, file$e, 231, 6, 3919); + add_location(p1, file$e, 232, 6, 3940); + add_location(a0, file$e, 233, 153, 4259); + add_location(p2, file$e, 233, 6, 4112); + add_location(b0, file$e, 234, 9, 4389); + add_location(b1, file$e, 234, 30, 4410); + add_location(p3, file$e, 234, 6, 4386); attr_dev(profile, "class", "svelte-bnvc6y"); - add_location(profile, file$d, 228, 4, 3817); + add_location(profile, file$e, 229, 4, 3868); attr_dev(hr, "class", "svelte-bnvc6y"); - add_location(hr, file$d, 236, 4, 4406); - add_location(tweets_1, file$d, 238, 4, 4416); + add_location(hr, file$e, 237, 4, 4457); + add_location(tweets_1, file$e, 239, 4, 4467); attr_dev(middle, "class", "svelte-bnvc6y"); - add_location(middle, file$d, 206, 2, 3361); + add_location(middle, file$e, 207, 2, 3412); attr_dev(input, "placeholder", "Search Twitter"); - add_location(input, file$d, 263, 4, 5602); - add_location(h31, file$d, 267, 6, 5691); + add_location(input, file$e, 264, 4, 5653); + add_location(h31, file$e, 268, 6, 5742); attr_dev(p4, "class", "svelte-bnvc6y"); - add_location(p4, file$d, 268, 6, 5722); + add_location(p4, file$e, 269, 6, 5773); attr_dev(button1, "id", "signup"); attr_dev(button1, "class", "svelte-bnvc6y"); - add_location(button1, file$d, 269, 6, 5789); + add_location(button1, file$e, 270, 6, 5840); attr_dev(aside0, "id", "newperson"); attr_dev(aside0, "class", "svelte-bnvc6y"); - add_location(aside0, file$d, 266, 6, 5662); + add_location(aside0, file$e, 267, 6, 5713); attr_dev(img2, "alt", "Stock photo"); - if (img2.src !== (img2_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img2, "src", img2_src_value); - add_location(img2, file$d, 275, 12, 5910); - add_location(figure2, file$d, 274, 10, 5889); + if (img2.src !== (img2_src_value = holder(82, 82))) attr_dev(img2, "src", img2_src_value); + add_location(img2, file$e, 276, 12, 5961); + add_location(figure2, file$e, 275, 10, 5940); attr_dev(img3, "alt", "Stock photo"); - if (img3.src !== (img3_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img3, "src", img3_src_value); - add_location(img3, file$d, 278, 12, 6037); - add_location(figure3, file$d, 277, 10, 6016); + if (img3.src !== (img3_src_value = holder(82, 82))) attr_dev(img3, "src", img3_src_value); + add_location(img3, file$e, 279, 12, 6062); + add_location(figure3, file$e, 278, 10, 6041); attr_dev(img4, "alt", "Stock photo"); - if (img4.src !== (img4_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img4, "src", img4_src_value); - add_location(img4, file$d, 281, 12, 6164); - add_location(figure4, file$d, 280, 10, 6143); + if (img4.src !== (img4_src_value = holder(82, 82))) attr_dev(img4, "src", img4_src_value); + add_location(img4, file$e, 282, 12, 6162); + add_location(figure4, file$e, 281, 10, 6141); attr_dev(img5, "alt", "Stock photo"); - if (img5.src !== (img5_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img5, "src", img5_src_value); - add_location(img5, file$d, 284, 12, 6291); - add_location(figure5, file$d, 283, 10, 6270); + if (img5.src !== (img5_src_value = holder(82, 82))) attr_dev(img5, "src", img5_src_value); + add_location(img5, file$e, 285, 12, 6262); + add_location(figure5, file$e, 284, 10, 6241); attr_dev(img6, "alt", "Stock photo"); - if (img6.src !== (img6_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img6, "src", img6_src_value); - add_location(img6, file$d, 287, 12, 6418); - add_location(figure6, file$d, 286, 10, 6397); + if (img6.src !== (img6_src_value = holder(82, 82))) attr_dev(img6, "src", img6_src_value); + add_location(img6, file$e, 288, 12, 6362); + add_location(figure6, file$e, 287, 10, 6341); attr_dev(img7, "alt", "Stock photo"); - if (img7.src !== (img7_src_value = "https://via.placeholder.com/82x82?text=Media")) attr_dev(img7, "src", img7_src_value); - add_location(img7, file$d, 290, 12, 6545); - add_location(figure7, file$d, 289, 10, 6524); + if (img7.src !== (img7_src_value = holder(82, 82))) attr_dev(img7, "src", img7_src_value); + add_location(img7, file$e, 291, 12, 6462); + add_location(figure7, file$e, 290, 10, 6441); set_custom_element_data(recent_media, "class", "svelte-bnvc6y"); - add_location(recent_media, file$d, 273, 8, 5864); - add_location(aside1, file$d, 272, 6, 5848); + add_location(recent_media, file$e, 274, 8, 5915); + add_location(aside1, file$e, 273, 6, 5899); attr_dev(h32, "class", "svelte-bnvc6y"); - add_location(h32, file$d, 296, 8, 6717); + add_location(h32, file$e, 297, 8, 6607); attr_dev(li0, "class", "svelte-bnvc6y"); - add_location(li0, file$d, 298, 10, 6764); + add_location(li0, file$e, 299, 10, 6654); attr_dev(li1, "class", "svelte-bnvc6y"); - add_location(li1, file$d, 299, 10, 6795); + add_location(li1, file$e, 300, 10, 6685); attr_dev(li2, "class", "svelte-bnvc6y"); - add_location(li2, file$d, 300, 10, 6826); + add_location(li2, file$e, 301, 10, 6716); attr_dev(ul0, "class", "svelte-bnvc6y"); - add_location(ul0, file$d, 297, 8, 6749); + add_location(ul0, file$e, 298, 8, 6639); attr_dev(a1, "class", "svelte-bnvc6y"); - add_location(a1, file$d, 302, 8, 6869); + add_location(a1, file$e, 303, 8, 6759); attr_dev(aside2, "id", "trending"); attr_dev(aside2, "class", "svelte-bnvc6y"); - add_location(aside2, file$d, 295, 6, 6687); + add_location(aside2, file$e, 296, 6, 6577); attr_dev(h33, "class", "svelte-bnvc6y"); - add_location(h33, file$d, 306, 8, 6938); + add_location(h33, file$e, 307, 8, 6828); attr_dev(li3, "class", "svelte-bnvc6y"); - add_location(li3, file$d, 308, 10, 6987); + add_location(li3, file$e, 309, 10, 6877); attr_dev(li4, "class", "svelte-bnvc6y"); - add_location(li4, file$d, 309, 10, 7022); + add_location(li4, file$e, 310, 10, 6912); attr_dev(li5, "class", "svelte-bnvc6y"); - add_location(li5, file$d, 310, 10, 7057); + add_location(li5, file$e, 311, 10, 6947); attr_dev(li6, "class", "svelte-bnvc6y"); - add_location(li6, file$d, 311, 10, 7092); + add_location(li6, file$e, 312, 10, 6982); attr_dev(li7, "class", "svelte-bnvc6y"); - add_location(li7, file$d, 312, 10, 7127); + add_location(li7, file$e, 313, 10, 7017); attr_dev(ul1, "class", "svelte-bnvc6y"); - add_location(ul1, file$d, 307, 8, 6972); + add_location(ul1, file$e, 308, 8, 6862); attr_dev(aside3, "id", "trending"); attr_dev(aside3, "class", "svelte-bnvc6y"); - add_location(aside3, file$d, 305, 6, 6908); - add_location(section, file$d, 265, 4, 5646); + add_location(aside3, file$e, 306, 6, 6798); + add_location(section, file$e, 266, 4, 5697); attr_dev(right, "class", "svelte-bnvc6y"); - add_location(right, file$d, 262, 2, 5590); + add_location(right, file$e, 263, 2, 5641); attr_dev(content, "class", "svelte-bnvc6y"); - add_location(content, file$d, 199, 0, 3190); + add_location(content, file$e, 200, 0, 3241); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -7638,7 +7905,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$e.name, + id: create_fragment$f.name, type: "component", source: "", ctx @@ -7647,7 +7914,7 @@ var app = (function () { return block; } - function instance$e($$self, $$props, $$invalidate) { + function instance$f($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Twitter", slots, []); let tweets = [1, 2, 3, 4, 5]; @@ -7657,7 +7924,14 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ link, Icon, onMount, tweets, CodeView }); + $$self.$capture_state = () => ({ + link, + Icon, + onMount, + tweets, + CodeView, + holder + }); $$self.$inject_state = $$props => { if ("tweets" in $$props) $$invalidate(0, tweets = $$props.tweets); @@ -7673,19 +7947,19 @@ var app = (function () { class Twitter$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$e, create_fragment$e, safe_not_equal, {}); + init(this, options, instance$f, create_fragment$f, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Twitter", options, - id: create_fragment$e.name + id: create_fragment$f.name }); } } /* src/demos/Youtube.svelte generated by Svelte v3.30.0 */ - const file$e = "src/demos/Youtube.svelte"; + const file$f = "src/demos/Youtube.svelte"; function get_each_context$2(ctx, list, i) { const child_ctx = ctx.slice(); @@ -7705,7 +7979,7 @@ var app = (function () { return child_ctx; } - // (231:8) {#each cards as card} + // (232:8) {#each cards as card} function create_each_block_2(ctx) { let card; let img; @@ -7771,21 +8045,21 @@ var app = (function () { create_component(icon2.$$.fragment); t8 = text(" View replies"); t9 = space(); - if (img.src !== (img_src_value = "https://via.placeholder.com/64x64?text=Person")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = holder(64, 64))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-87j0be"); - add_location(img, file$e, 232, 10, 5268); + add_location(img, file$f, 233, 10, 5268); attr_dev(h4, "class", "svelte-87j0be"); - add_location(h4, file$e, 234, 12, 5355); + add_location(h4, file$f, 235, 12, 5327); attr_dev(p, "class", "svelte-87j0be"); - add_location(p, file$e, 235, 12, 5381); + add_location(p, file$f, 236, 12, 5353); attr_dev(nav, "class", "svelte-87j0be"); - add_location(nav, file$e, 236, 12, 5523); + add_location(nav, file$f, 237, 12, 5495); attr_dev(reply, "class", "svelte-87j0be"); - add_location(reply, file$e, 240, 12, 5698); + add_location(reply, file$f, 241, 12, 5670); attr_dev(info, "class", "svelte-87j0be"); - add_location(info, file$e, 233, 10, 5336); + add_location(info, file$f, 234, 10, 5308); attr_dev(card, "class", "svelte-87j0be"); - add_location(card, file$e, 231, 8, 5251); + add_location(card, file$f, 232, 8, 5251); }, m: function mount(target, anchor) { insert_dev(target, card, anchor); @@ -7834,14 +8108,14 @@ var app = (function () { block, id: create_each_block_2.name, type: "each", - source: "(231:8) {#each cards as card}", + source: "(232:8) {#each cards as card}", ctx }); return block; } - // (249:6) {#each cards as card} + // (250:6) {#each cards as card} function create_each_block_1(ctx) { let card; let img; @@ -7873,18 +8147,18 @@ var app = (function () { t6 = space(); date = element("date"); date.textContent = "2 years ago"; - if (img.src !== (img_src_value = "https://via.placeholder.com/120x80?text=Thumb")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = holder(120, 80))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-87j0be"); - add_location(img, file$e, 250, 8, 5911); + add_location(img, file$f, 251, 8, 5883); attr_dev(h4, "class", "svelte-87j0be"); - add_location(h4, file$e, 252, 10, 5994); - add_location(author, file$e, 253, 10, 6031); - add_location(views, file$e, 254, 10, 6062); - add_location(date, file$e, 255, 10, 6098); + add_location(h4, file$f, 253, 10, 5939); + add_location(author, file$f, 254, 10, 5976); + add_location(views, file$f, 255, 10, 6007); + add_location(date, file$f, 256, 10, 6043); attr_dev(info, "class", "svelte-87j0be"); - add_location(info, file$e, 251, 8, 5977); + add_location(info, file$f, 252, 8, 5922); attr_dev(card, "class", "small svelte-87j0be"); - add_location(card, file$e, 249, 6, 5882); + add_location(card, file$f, 250, 6, 5854); }, m: function mount(target, anchor) { insert_dev(target, card, anchor); @@ -7899,6 +8173,7 @@ var app = (function () { append_dev(info, t6); append_dev(info, date); }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(card); } @@ -7908,14 +8183,14 @@ var app = (function () { block, id: create_each_block_1.name, type: "each", - source: "(249:6) {#each cards as card}", + source: "(250:6) {#each cards as card}", ctx }); return block; } - // (267:6) {#each cards as card} + // (268:6) {#each cards as card} function create_each_block$2(ctx) { let card; let img; @@ -7949,18 +8224,18 @@ var app = (function () { date = element("date"); date.textContent = "2 years ago"; t8 = space(); - if (img.src !== (img_src_value = "https://via.placeholder.com/120x80?text=Thumb")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = holder(120, 80))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-87j0be"); - add_location(img, file$e, 268, 8, 6374); + add_location(img, file$f, 269, 8, 6291); attr_dev(h4, "class", "svelte-87j0be"); - add_location(h4, file$e, 270, 10, 6457); - add_location(author, file$e, 271, 10, 6494); - add_location(views, file$e, 272, 10, 6525); - add_location(date, file$e, 273, 10, 6561); + add_location(h4, file$f, 271, 10, 6347); + add_location(author, file$f, 272, 10, 6384); + add_location(views, file$f, 273, 10, 6415); + add_location(date, file$f, 274, 10, 6451); attr_dev(info, "class", "svelte-87j0be"); - add_location(info, file$e, 269, 8, 6440); + add_location(info, file$f, 270, 8, 6330); attr_dev(card, "class", "svelte-87j0be"); - add_location(card, file$e, 267, 6, 6359); + add_location(card, file$f, 268, 6, 6276); }, m: function mount(target, anchor) { insert_dev(target, card, anchor); @@ -7976,6 +8251,7 @@ var app = (function () { append_dev(info, date); append_dev(card, t8); }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(card); } @@ -7985,14 +8261,14 @@ var app = (function () { block, id: create_each_block$2.name, type: "each", - source: "(267:6) {#each cards as card}", + source: "(268:6) {#each cards as card}", ctx }); return block; } - function create_fragment$f(ctx) { + function create_fragment$g(ctx) { let content1; let header; let nav0; @@ -8156,6 +8432,10 @@ var app = (function () { each_blocks_2[i] = create_each_block_2(get_each_context_2(ctx, each_value_2, i)); } + const out = i => transition_out(each_blocks_2[i], 1, 1, () => { + each_blocks_2[i] = null; + }); + let each_value_1 = /*cards*/ ctx[0]; validate_each_argument(each_value_1); let each_blocks_1 = []; @@ -8295,85 +8575,85 @@ var app = (function () { t42 = space(); create_component(codeview.$$.fragment); attr_dev(logo, "class", "svelte-87j0be"); - add_location(logo, file$e, 175, 56, 2717); - add_location(a0, file$e, 175, 8, 2669); - add_location(nav_left, file$e, 174, 6, 2650); + add_location(logo, file$f, 176, 56, 2768); + add_location(a0, file$f, 176, 8, 2720); + add_location(nav_left, file$f, 175, 6, 2701); attr_dev(input, "id", "search"); attr_dev(input, "placeholder", "Search"); attr_dev(input, "name", "search"); attr_dev(input, "class", "svelte-87j0be"); - add_location(input, file$e, 177, 6, 2766); - add_location(li0, file$e, 179, 8, 2840); - add_location(li1, file$e, 180, 8, 2893); - add_location(li2, file$e, 181, 8, 2953); + add_location(input, file$f, 178, 6, 2817); + add_location(li0, file$f, 180, 8, 2891); + add_location(li1, file$f, 181, 8, 2944); + add_location(li2, file$f, 182, 8, 3004); attr_dev(button0, "class", "svelte-87j0be"); - add_location(button0, file$e, 182, 12, 3008); - add_location(li3, file$e, 182, 8, 3004); - add_location(ul, file$e, 178, 6, 2827); + add_location(button0, file$f, 183, 12, 3059); + add_location(li3, file$f, 183, 8, 3055); + add_location(ul, file$f, 179, 6, 2878); attr_dev(nav0, "class", "svelte-87j0be"); - add_location(nav0, file$e, 173, 4, 2638); + add_location(nav0, file$f, 174, 4, 2689); attr_dev(header, "class", "svelte-87j0be"); - add_location(header, file$e, 172, 2, 2625); - if (img0.src !== (img0_src_value = "https://via.placeholder.com/800x450?text=Video")) attr_dev(img0, "src", img0_src_value); - add_location(img0, file$e, 190, 10, 3181); + add_location(header, file$f, 173, 2, 2676); + if (img0.src !== (img0_src_value = holder(800, 450))) attr_dev(img0, "src", img0_src_value); + add_location(img0, file$f, 191, 10, 3232); attr_dev(a1, "href", "/demos/google"); - add_location(a1, file$e, 189, 8, 3137); + add_location(a1, file$f, 190, 8, 3188); attr_dev(a2, "class", "svelte-87j0be"); - add_location(a2, file$e, 193, 10, 3284); + add_location(a2, file$f, 194, 10, 3308); attr_dev(a3, "class", "svelte-87j0be"); - add_location(a3, file$e, 193, 22, 3296); + add_location(a3, file$f, 194, 22, 3320); attr_dev(p, "class", "svelte-87j0be"); - add_location(p, file$e, 194, 10, 3325); - add_location(likes, file$e, 196, 12, 3386); - add_location(video_buttons, file$e, 197, 12, 3425); + add_location(p, file$f, 195, 10, 3349); + add_location(likes, file$f, 197, 12, 3410); + add_location(video_buttons, file$f, 198, 12, 3449); set_custom_element_data(video_actions, "class", "svelte-87j0be"); - add_location(video_actions, file$e, 195, 10, 3358); + add_location(video_actions, file$f, 196, 10, 3382); attr_dev(figcaption, "class", "svelte-87j0be"); - add_location(figcaption, file$e, 192, 8, 3261); - add_location(figure0, file$e, 188, 6, 3120); + add_location(figcaption, file$f, 193, 8, 3285); + add_location(figure0, file$f, 189, 6, 3171); attr_dev(hr0, "class", "svelte-87j0be"); - add_location(hr0, file$e, 207, 6, 3819); - if (img1.src !== (img1_src_value = "https://via.placeholder.com/64x64?text=ME")) attr_dev(img1, "src", img1_src_value); + add_location(hr0, file$f, 208, 6, 3843); + if (img1.src !== (img1_src_value = holder(64, 64))) attr_dev(img1, "src", img1_src_value); attr_dev(img1, "class", "svelte-87j0be"); - add_location(img1, file$e, 211, 12, 3885); + add_location(img1, file$f, 212, 12, 3909); attr_dev(h4, "class", "svelte-87j0be"); - add_location(h4, file$e, 213, 12, 3970); - add_location(subs, file$e, 214, 12, 4003); + add_location(h4, file$f, 214, 12, 3970); + add_location(subs, file$f, 215, 12, 4003); attr_dev(info, "class", "svelte-87j0be"); - add_location(info, file$e, 212, 12, 3951); + add_location(info, file$f, 213, 12, 3951); attr_dev(card, "class", "svelte-87j0be"); - add_location(card, file$e, 210, 10, 3866); + add_location(card, file$f, 211, 10, 3890); attr_dev(button1, "id", "subscribe"); attr_dev(button1, "class", "svelte-87j0be"); - add_location(button1, file$e, 216, 10, 4057); + add_location(button1, file$f, 217, 10, 4057); attr_dev(nav1, "class", "svelte-87j0be"); - add_location(nav1, file$e, 209, 8, 3850); + add_location(nav1, file$f, 210, 8, 3874); attr_dev(content0, "class", "svelte-87j0be"); - add_location(content0, file$e, 219, 8, 4123); + add_location(content0, file$f, 220, 8, 4123); attr_dev(promotion, "class", "svelte-87j0be"); - add_location(promotion, file$e, 208, 6, 3830); + add_location(promotion, file$f, 209, 6, 3854); attr_dev(hr1, "class", "svelte-87j0be"); - add_location(hr1, file$e, 223, 6, 5052); - add_location(span, file$e, 227, 10, 5099); + add_location(hr1, file$f, 224, 6, 5052); + add_location(span, file$f, 228, 10, 5099); attr_dev(sort, "class", "svelte-87j0be"); - add_location(sort, file$e, 227, 36, 5125); + add_location(sort, file$f, 228, 36, 5125); attr_dev(nav2, "class", "svelte-87j0be"); - add_location(nav2, file$e, 226, 8, 5083); + add_location(nav2, file$f, 227, 8, 5083); attr_dev(comments, "class", "svelte-87j0be"); - add_location(comments, file$e, 225, 6, 5064); + add_location(comments, file$f, 226, 6, 5064); attr_dev(left, "class", "svelte-87j0be"); - add_location(left, file$e, 187, 4, 3107); - if (img2.src !== (img2_src_value = "https://via.placeholder.com/300x150?text=Advert")) attr_dev(img2, "src", img2_src_value); - add_location(img2, file$e, 262, 10, 6235); + add_location(left, file$f, 188, 4, 3158); + if (img2.src !== (img2_src_value = holder(300, 150))) attr_dev(img2, "src", img2_src_value); + add_location(img2, file$f, 263, 10, 6180); attr_dev(a4, "href", "/demos/google"); - add_location(a4, file$e, 261, 8, 6191); - add_location(figure1, file$e, 260, 6, 6174); + add_location(a4, file$f, 262, 8, 6136); + add_location(figure1, file$f, 261, 6, 6119); attr_dev(right, "class", "svelte-87j0be"); - add_location(right, file$e, 247, 4, 5840); + add_location(right, file$f, 248, 4, 5812); attr_dev(main, "class", "svelte-87j0be"); - add_location(main, file$e, 186, 2, 3096); + add_location(main, file$f, 187, 2, 3147); attr_dev(content1, "class", "svelte-87j0be"); - add_location(content1, file$e, 171, 0, 2613); + add_location(content1, file$f, 172, 0, 2664); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -8495,27 +8775,103 @@ var app = (function () { mounted = true; } }, - p: noop, - i: function intro(local) { - if (current) return; - transition_in(icon0.$$.fragment, local); - transition_in(icon1.$$.fragment, local); - transition_in(icon2.$$.fragment, local); - transition_in(icon3.$$.fragment, local); - transition_in(icon4.$$.fragment, local); - transition_in(icon5.$$.fragment, local); - transition_in(icon6.$$.fragment, local); - transition_in(icon7.$$.fragment, local); - transition_in(icon8.$$.fragment, local); - transition_in(icon9.$$.fragment, local); - transition_in(icon10.$$.fragment, local); - transition_in(icon11.$$.fragment, local); + p: function update(ctx, [dirty]) { + if (dirty & /*holder*/ 0) { + each_value_2 = /*cards*/ ctx[0]; + validate_each_argument(each_value_2); + let i; - for (let i = 0; i < each_value_2.length; i += 1) { - transition_in(each_blocks_2[i]); - } + for (i = 0; i < each_value_2.length; i += 1) { + const child_ctx = get_each_context_2(ctx, each_value_2, i); - transition_in(codeview.$$.fragment, local); + if (each_blocks_2[i]) { + each_blocks_2[i].p(child_ctx, dirty); + transition_in(each_blocks_2[i], 1); + } else { + each_blocks_2[i] = create_each_block_2(child_ctx); + each_blocks_2[i].c(); + transition_in(each_blocks_2[i], 1); + each_blocks_2[i].m(comments, null); + } + } + + group_outros(); + + for (i = each_value_2.length; i < each_blocks_2.length; i += 1) { + out(i); + } + + check_outros(); + } + + if (dirty & /*holder*/ 0) { + each_value_1 = /*cards*/ ctx[0]; + validate_each_argument(each_value_1); + let i; + + for (i = 0; i < each_value_1.length; i += 1) { + const child_ctx = get_each_context_1(ctx, each_value_1, i); + + if (each_blocks_1[i]) { + each_blocks_1[i].p(child_ctx, dirty); + } else { + each_blocks_1[i] = create_each_block_1(child_ctx); + each_blocks_1[i].c(); + each_blocks_1[i].m(right, t40); + } + } + + for (; i < each_blocks_1.length; i += 1) { + each_blocks_1[i].d(1); + } + + each_blocks_1.length = each_value_1.length; + } + + if (dirty & /*holder*/ 0) { + each_value = /*cards*/ ctx[0]; + validate_each_argument(each_value); + let i; + + for (i = 0; i < each_value.length; i += 1) { + const child_ctx = get_each_context$2(ctx, each_value, i); + + if (each_blocks[i]) { + each_blocks[i].p(child_ctx, dirty); + } else { + each_blocks[i] = create_each_block$2(child_ctx); + each_blocks[i].c(); + each_blocks[i].m(right, null); + } + } + + for (; i < each_blocks.length; i += 1) { + each_blocks[i].d(1); + } + + each_blocks.length = each_value.length; + } + }, + i: function intro(local) { + if (current) return; + transition_in(icon0.$$.fragment, local); + transition_in(icon1.$$.fragment, local); + transition_in(icon2.$$.fragment, local); + transition_in(icon3.$$.fragment, local); + transition_in(icon4.$$.fragment, local); + transition_in(icon5.$$.fragment, local); + transition_in(icon6.$$.fragment, local); + transition_in(icon7.$$.fragment, local); + transition_in(icon8.$$.fragment, local); + transition_in(icon9.$$.fragment, local); + transition_in(icon10.$$.fragment, local); + transition_in(icon11.$$.fragment, local); + + for (let i = 0; i < each_value_2.length; i += 1) { + transition_in(each_blocks_2[i]); + } + + transition_in(codeview.$$.fragment, local); current = true; }, o: function outro(local) { @@ -8566,7 +8922,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$f.name, + id: create_fragment$g.name, type: "component", source: "", ctx @@ -8575,7 +8931,7 @@ var app = (function () { return block; } - function instance$f($$self, $$props, $$invalidate) { + function instance$g($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Youtube", slots, []); let cards = [1, 2, 3, 4]; @@ -8590,7 +8946,14 @@ var app = (function () { if ("thumbnail" in $$props) $$invalidate(1, thumbnail = $$props.thumbnail); }; - $$self.$capture_state = () => ({ link, Icon, CodeView, cards, thumbnail }); + $$self.$capture_state = () => ({ + link, + Icon, + CodeView, + cards, + thumbnail, + holder + }); $$self.$inject_state = $$props => { if ("cards" in $$props) $$invalidate(0, cards = $$props.cards); @@ -8607,13 +8970,13 @@ var app = (function () { class Youtube$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$f, create_fragment$f, safe_not_equal, { thumbnail: 1 }); + init(this, options, instance$g, create_fragment$g, safe_not_equal, { thumbnail: 1 }); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Youtube", options, - id: create_fragment$f.name + id: create_fragment$g.name }); } @@ -8627,7 +8990,7 @@ var app = (function () { } /* src/demos/Instagram.svelte generated by Svelte v3.30.0 */ - const file$f = "src/demos/Instagram.svelte"; + const file$g = "src/demos/Instagram.svelte"; function get_each_context$3(ctx, list, i) { const child_ctx = ctx.slice(); @@ -8641,7 +9004,7 @@ var app = (function () { return child_ctx; } - // (119:2) {#each pins as pin} + // (120:2) {#each pins as pin} function create_each_block_1$1(ctx) { let figure; let img; @@ -8654,15 +9017,16 @@ var app = (function () { img = element("img"); t = space(); attr_dev(img, "alt", "Stock photo"); - if (img.src !== (img_src_value = "https://via.placeholder.com/82x82?text=Story")) attr_dev(img, "src", img_src_value); - add_location(img, file$f, 120, 6, 2080); - add_location(figure, file$f, 119, 4, 2065); + if (img.src !== (img_src_value = holder(82, 82))) attr_dev(img, "src", img_src_value); + add_location(img, file$g, 121, 6, 2099); + add_location(figure, file$g, 120, 4, 2084); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); append_dev(figure, img); append_dev(figure, t); }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(figure); } @@ -8672,14 +9036,14 @@ var app = (function () { block, id: create_each_block_1$1.name, type: "each", - source: "(119:2) {#each pins as pin}", + source: "(120:2) {#each pins as pin}", ctx }); return block; } - // (138:2) {#each posts as post} + // (139:2) {#each posts as post} function create_each_block$3(ctx) { let figure; let img; @@ -8692,16 +9056,17 @@ var app = (function () { img = element("img"); t = space(); attr_dev(img, "alt", "Stock photo"); - if (img.src !== (img_src_value = "https://via.placeholder.com/300x300?text=Post Image")) attr_dev(img, "src", img_src_value); - add_location(img, file$f, 139, 6, 2585); + if (img.src !== (img_src_value = holder(300, 300))) attr_dev(img, "src", img_src_value); + add_location(img, file$g, 140, 6, 2577); attr_dev(figure, "class", "svelte-1ri9kvn"); - add_location(figure, file$f, 138, 4, 2570); + add_location(figure, file$g, 139, 4, 2562); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); append_dev(figure, img); append_dev(figure, t); }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(figure); } @@ -8711,14 +9076,14 @@ var app = (function () { block, id: create_each_block$3.name, type: "each", - source: "(138:2) {#each posts as post}", + source: "(139:2) {#each posts as post}", ctx }); return block; } - function create_fragment$g(ctx) { + function create_fragment$h(ctx) { let content; let header; let nav0; @@ -8927,63 +9292,63 @@ var app = (function () { t33 = space(); create_component(codeview.$$.fragment); - add_location(b0, file$f, 87, 6, 1262); + add_location(b0, file$g, 88, 6, 1313); attr_dev(input, "placeholder", "Search"); - add_location(input, file$f, 88, 6, 1337); + add_location(input, file$g, 89, 6, 1388); attr_dev(button0, "class", "svelte-1ri9kvn"); - add_location(button0, file$f, 90, 12, 1389); - add_location(li0, file$f, 90, 8, 1385); + add_location(button0, file$g, 91, 12, 1440); + add_location(li0, file$g, 91, 8, 1436); attr_dev(a0, "class", "svelte-1ri9kvn"); - add_location(a0, file$f, 91, 12, 1430); - add_location(li1, file$f, 91, 8, 1426); - add_location(ul0, file$f, 89, 6, 1372); + add_location(a0, file$g, 92, 12, 1481); + add_location(li1, file$g, 92, 8, 1477); + add_location(ul0, file$g, 90, 6, 1423); attr_dev(nav0, "class", "svelte-1ri9kvn"); - add_location(nav0, file$f, 86, 4, 1250); + add_location(nav0, file$g, 87, 4, 1301); attr_dev(header, "class", "svelte-1ri9kvn"); - add_location(header, file$f, 85, 2, 1237); + add_location(header, file$g, 86, 2, 1288); attr_dev(img, "alt", "Zed's Face"); - if (img.src !== (img_src_value = "https://via.placeholder.com/256x256?text=Zed's Face")) attr_dev(img, "src", img_src_value); - add_location(img, file$f, 98, 6, 1517); + if (img.src !== (img_src_value = holder(256, 256))) attr_dev(img, "src", img_src_value); + add_location(img, file$g, 99, 6, 1568); attr_dev(figure, "class", "svelte-1ri9kvn"); - add_location(figure, file$f, 97, 4, 1502); - add_location(b1, file$f, 103, 8, 1642); + add_location(figure, file$g, 98, 4, 1553); + add_location(b1, file$g, 104, 8, 1661); attr_dev(button1, "class", "svelte-1ri9kvn"); - add_location(button1, file$f, 103, 23, 1657); + add_location(button1, file$g, 104, 23, 1676); attr_dev(p0, "class", "svelte-1ri9kvn"); - add_location(p0, file$f, 102, 6, 1630); - add_location(b2, file$f, 107, 8, 1711); - add_location(b3, file$f, 107, 25, 1728); - add_location(b4, file$f, 107, 48, 1751); + add_location(p0, file$g, 103, 6, 1649); + add_location(b2, file$g, 108, 8, 1730); + add_location(b3, file$g, 108, 25, 1747); + add_location(b4, file$g, 108, 48, 1770); attr_dev(p1, "class", "svelte-1ri9kvn"); - add_location(p1, file$f, 106, 6, 1699); - add_location(b5, file$f, 110, 9, 1795); + add_location(p1, file$g, 107, 6, 1718); + add_location(b5, file$g, 111, 9, 1814); attr_dev(p2, "class", "svelte-1ri9kvn"); - add_location(p2, file$f, 110, 6, 1792); - add_location(br, file$f, 111, 102, 1920); + add_location(p2, file$g, 111, 6, 1811); + add_location(br, file$g, 112, 102, 1939); attr_dev(a1, "href", "www.twitch.tv/zedashaw"); attr_dev(a1, "class", "svelte-1ri9kvn"); - add_location(a1, file$f, 112, 8, 1933); + add_location(a1, file$g, 113, 8, 1952); attr_dev(p3, "class", "svelte-1ri9kvn"); - add_location(p3, file$f, 111, 6, 1824); + add_location(p3, file$g, 112, 6, 1843); attr_dev(info, "class", "svelte-1ri9kvn"); - add_location(info, file$f, 101, 4, 1617); + add_location(info, file$g, 102, 4, 1636); attr_dev(profile, "class", "svelte-1ri9kvn"); - add_location(profile, file$f, 96, 2, 1488); + add_location(profile, file$g, 97, 2, 1539); attr_dev(pins_1, "class", "svelte-1ri9kvn"); - add_location(pins_1, file$f, 117, 2, 2032); - add_location(li2, file$f, 128, 8, 2229); - add_location(li3, file$f, 129, 8, 2299); - add_location(li4, file$f, 130, 8, 2370); - add_location(li5, file$f, 131, 8, 2435); - add_location(ul1, file$f, 127, 6, 2216); + add_location(pins_1, file$g, 118, 2, 2051); + add_location(li2, file$g, 129, 8, 2221); + add_location(li3, file$g, 130, 8, 2291); + add_location(li4, file$g, 131, 8, 2362); + add_location(li5, file$g, 132, 8, 2427); + add_location(ul1, file$g, 128, 6, 2208); attr_dev(nav1, "class", "svelte-1ri9kvn"); - add_location(nav1, file$f, 126, 4, 2204); + add_location(nav1, file$g, 127, 4, 2196); attr_dev(tabs, "class", "svelte-1ri9kvn"); - add_location(tabs, file$f, 125, 2, 2193); + add_location(tabs, file$g, 126, 2, 2185); attr_dev(posts_1, "class", "svelte-1ri9kvn"); - add_location(posts_1, file$f, 136, 2, 2534); + add_location(posts_1, file$g, 137, 2, 2526); attr_dev(content, "class", "svelte-1ri9kvn"); - add_location(content, file$f, 84, 0, 1225); + add_location(content, file$g, 85, 0, 1276); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -9067,7 +9432,55 @@ var app = (function () { mount_component(codeview, target, anchor); current = true; }, - p: noop, + p: function update(ctx, [dirty]) { + if (dirty & /*holder*/ 0) { + each_value_1 = /*pins*/ ctx[1]; + validate_each_argument(each_value_1); + let i; + + for (i = 0; i < each_value_1.length; i += 1) { + const child_ctx = get_each_context_1$1(ctx, each_value_1, i); + + if (each_blocks_1[i]) { + each_blocks_1[i].p(child_ctx, dirty); + } else { + each_blocks_1[i] = create_each_block_1$1(child_ctx); + each_blocks_1[i].c(); + each_blocks_1[i].m(pins_1, null); + } + } + + for (; i < each_blocks_1.length; i += 1) { + each_blocks_1[i].d(1); + } + + each_blocks_1.length = each_value_1.length; + } + + if (dirty & /*holder*/ 0) { + each_value = /*posts*/ ctx[0]; + validate_each_argument(each_value); + let i; + + for (i = 0; i < each_value.length; i += 1) { + const child_ctx = get_each_context$3(ctx, each_value, i); + + if (each_blocks[i]) { + each_blocks[i].p(child_ctx, dirty); + } else { + each_blocks[i] = create_each_block$3(child_ctx); + each_blocks[i].c(); + each_blocks[i].m(posts_1, null); + } + } + + for (; i < each_blocks.length; i += 1) { + each_blocks[i].d(1); + } + + each_blocks.length = each_value.length; + } + }, i: function intro(local) { if (current) return; transition_in(icon0.$$.fragment, local); @@ -9103,7 +9516,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$g.name, + id: create_fragment$h.name, type: "component", source: "", ctx @@ -9112,7 +9525,7 @@ var app = (function () { return block; } - function instance$g($$self, $$props, $$invalidate) { + function instance$h($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Instagram", slots, []); let posts = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; @@ -9123,7 +9536,14 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ link, Icon, CodeView, posts, pins }); + $$self.$capture_state = () => ({ + link, + Icon, + CodeView, + posts, + pins, + holder + }); $$self.$inject_state = $$props => { if ("posts" in $$props) $$invalidate(0, posts = $$props.posts); @@ -9140,19 +9560,19 @@ var app = (function () { class Instagram$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$g, create_fragment$g, safe_not_equal, {}); + init(this, options, instance$h, create_fragment$h, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Instagram", options, - id: create_fragment$g.name + id: create_fragment$h.name }); } } /* src/demos/Pinterest.svelte generated by Svelte v3.30.0 */ - const file$g = "src/demos/Pinterest.svelte"; + const file$h = "src/demos/Pinterest.svelte"; function get_each_context$4(ctx, list, i) { const child_ctx = ctx.slice(); @@ -9166,7 +9586,7 @@ var app = (function () { return child_ctx; } - // (155:2) {#if !thumbnail} + // (156:2) {#if !thumbnail} function create_if_block$1(ctx) { let profile; let info; @@ -9226,29 +9646,29 @@ var app = (function () { } attr_dev(h1, "class", "svelte-79nfuj"); - add_location(h1, file$g, 157, 8, 2475); + add_location(h1, file$h, 158, 8, 2526); attr_dev(p0, "class", "svelte-79nfuj"); - add_location(p0, file$g, 158, 8, 2509); + add_location(p0, file$h, 159, 8, 2560); attr_dev(b0, "class", "svelte-79nfuj"); - add_location(b0, file$g, 159, 11, 2550); + add_location(b0, file$h, 160, 11, 2601); attr_dev(b1, "class", "svelte-79nfuj"); - add_location(b1, file$g, 159, 29, 2568); + add_location(b1, file$h, 160, 29, 2619); attr_dev(p1, "class", "svelte-79nfuj"); - add_location(p1, file$g, 159, 8, 2547); + add_location(p1, file$h, 160, 8, 2598); attr_dev(p2, "class", "svelte-79nfuj"); - add_location(p2, file$g, 160, 8, 2603); + add_location(p2, file$h, 161, 8, 2654); attr_dev(info, "class", "svelte-79nfuj"); - add_location(info, file$g, 156, 6, 2460); + add_location(info, file$h, 157, 6, 2511); attr_dev(img, "alt", "Zed's Face"); - if (img.src !== (img_src_value = "https://via.placeholder.com/128x128?text=Zed's Face")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = holder(128, 128))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-79nfuj"); - add_location(img, file$g, 164, 8, 2707); + add_location(img, file$h, 165, 8, 2758); attr_dev(figure, "class", "svelte-79nfuj"); - add_location(figure, file$g, 163, 6, 2690); + add_location(figure, file$h, 164, 6, 2741); attr_dev(profile, "class", "svelte-79nfuj"); - add_location(profile, file$g, 155, 4, 2444); + add_location(profile, file$h, 156, 4, 2495); attr_dev(pins, "class", "svelte-79nfuj"); - add_location(pins, file$g, 168, 4, 2824); + add_location(pins, file$h, 169, 4, 2843); }, m: function mount(target, anchor) { insert_dev(target, profile, anchor); @@ -9275,7 +9695,7 @@ var app = (function () { } }, p: function update(ctx, dirty) { - if (dirty & /*random_sample, pin_sizes*/ 12) { + if (dirty & /*random_sample, pin_sizes, holder*/ 12) { each_value = /*lanes*/ ctx[1]; validate_each_argument(each_value); let i; @@ -9311,14 +9731,14 @@ var app = (function () { block, id: create_if_block$1.name, type: "if", - source: "(155:2) {#if !thumbnail}", + source: "(156:2) {#if !thumbnail}", ctx }); return block; } - // (172:8) {#each random_sample(pin_sizes, 10) as height} + // (173:8) {#each random_sample(pin_sizes, 10) as height} function create_each_block_1$2(ctx) { let figure; let img; @@ -9339,14 +9759,14 @@ var app = (function () { t1 = text("Something about Van Gogh "); t2 = text(t2_value); t3 = text(" high."); - attr_dev(img, "alt", "Zed's Face"); - if (img.src !== (img_src_value = "https://via.placeholder.com/240x" + /*height*/ ctx[9] + "?text=Art240x" + /*height*/ ctx[9])) attr_dev(img, "src", img_src_value); + attr_dev(img, "alt", "Van Gogh Art"); + if (img.src !== (img_src_value = holder(240, /*height*/ ctx[9]))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-79nfuj"); - add_location(img, file$g, 173, 12, 2956); + add_location(img, file$h, 174, 12, 2975); attr_dev(figcaption, "class", "svelte-79nfuj"); - add_location(figcaption, file$g, 174, 12, 3059); + add_location(figcaption, file$h, 175, 12, 3040); attr_dev(figure, "class", "svelte-79nfuj"); - add_location(figure, file$g, 172, 10, 2935); + add_location(figure, file$h, 173, 10, 2954); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); @@ -9367,14 +9787,14 @@ var app = (function () { block, id: create_each_block_1$2.name, type: "each", - source: "(172:8) {#each random_sample(pin_sizes, 10) as height}", + source: "(173:8) {#each random_sample(pin_sizes, 10) as height}", ctx }); return block; } - // (170:4) {#each lanes as lane} + // (171:4) {#each lanes as lane} function create_each_block$4(ctx) { let lane; let t; @@ -9396,7 +9816,7 @@ var app = (function () { t = space(); attr_dev(lane, "class", "svelte-79nfuj"); - add_location(lane, file$g, 170, 6, 2863); + add_location(lane, file$h, 171, 6, 2882); }, m: function mount(target, anchor) { insert_dev(target, lane, anchor); @@ -9408,7 +9828,7 @@ var app = (function () { append_dev(lane, t); }, p: function update(ctx, dirty) { - if (dirty & /*random_sample, pin_sizes*/ 12) { + if (dirty & /*random_sample, pin_sizes, holder*/ 12) { each_value_1 = /*random_sample*/ ctx[3](/*pin_sizes*/ ctx[2], 10); validate_each_argument(each_value_1); let i; @@ -9442,14 +9862,14 @@ var app = (function () { block, id: create_each_block$4.name, type: "each", - source: "(170:4) {#each lanes as lane}", + source: "(171:4) {#each lanes as lane}", ctx }); return block; } - function create_fragment$h(ctx) { + function create_fragment$i(ctx) { let content; let header; let nav; @@ -9518,33 +9938,33 @@ var app = (function () { t11 = space(); create_component(codeview.$$.fragment); attr_dev(logo, "class", "svelte-79nfuj"); - add_location(logo, file$g, 140, 8, 2114); + add_location(logo, file$h, 141, 8, 2165); attr_dev(a0, "class", "svelte-79nfuj"); - add_location(a0, file$g, 141, 8, 2192); + add_location(a0, file$h, 142, 8, 2243); attr_dev(a1, "class", "svelte-79nfuj"); - add_location(a1, file$g, 142, 8, 2213); + add_location(a1, file$h, 143, 8, 2264); attr_dev(left, "class", "svelte-79nfuj"); - add_location(left, file$g, 139, 6, 2099); + add_location(left, file$h, 140, 6, 2150); attr_dev(input, "placeholder", "Search"); attr_dev(input, "class", "svelte-79nfuj"); - add_location(input, file$g, 145, 6, 2249); + add_location(input, file$h, 146, 6, 2300); attr_dev(button0, "class", "svelte-79nfuj"); - add_location(button0, file$g, 148, 12, 2302); + add_location(button0, file$h, 149, 12, 2353); attr_dev(li0, "class", "svelte-79nfuj"); - add_location(li0, file$g, 148, 8, 2298); + add_location(li0, file$h, 149, 8, 2349); attr_dev(button1, "id", "signup"); attr_dev(button1, "class", "svelte-79nfuj"); - add_location(button1, file$g, 149, 12, 2343); + add_location(button1, file$h, 150, 12, 2394); attr_dev(li1, "class", "svelte-79nfuj"); - add_location(li1, file$g, 149, 8, 2339); + add_location(li1, file$h, 150, 8, 2390); attr_dev(ul, "class", "svelte-79nfuj"); - add_location(ul, file$g, 147, 6, 2285); + add_location(ul, file$h, 148, 6, 2336); attr_dev(nav, "class", "svelte-79nfuj"); - add_location(nav, file$g, 138, 4, 2087); + add_location(nav, file$h, 139, 4, 2138); attr_dev(header, "class", "svelte-79nfuj"); - add_location(header, file$g, 137, 2, 2074); + add_location(header, file$h, 138, 2, 2125); attr_dev(content, "class", "svelte-79nfuj"); - add_location(content, file$g, 136, 0, 2062); + add_location(content, file$h, 137, 0, 2113); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -9612,7 +10032,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$h.name, + id: create_fragment$i.name, type: "component", source: "", ctx @@ -9621,7 +10041,7 @@ var app = (function () { return block; } - function instance$h($$self, $$props, $$invalidate) { + function instance$i($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Pinterest", slots, []); let samples = [1, 2, 3]; @@ -9660,6 +10080,7 @@ var app = (function () { link, Icon, CodeView, + holder, samples, lanes, pin_sizes, @@ -9685,13 +10106,13 @@ var app = (function () { class Pinterest$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$h, create_fragment$h, safe_not_equal, { thumbnail: 0 }); + init(this, options, instance$i, create_fragment$i, safe_not_equal, { thumbnail: 0 }); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Pinterest", options, - id: create_fragment$h.name + id: create_fragment$i.name }); } @@ -9705,7 +10126,7 @@ var app = (function () { } /* src/demos/XorAcademy.svelte generated by Svelte v3.30.0 */ - const file$h = "src/demos/XorAcademy.svelte"; + const file$i = "src/demos/XorAcademy.svelte"; function get_each_context$5(ctx, list, i) { const child_ctx = ctx.slice(); @@ -9719,7 +10140,7 @@ var app = (function () { return child_ctx; } - // (140:2) {#each related as pin} + // (141:2) {#each related as pin} function create_each_block_1$3(ctx) { let figure; let img; @@ -9732,15 +10153,16 @@ var app = (function () { img = element("img"); t = space(); attr_dev(img, "alt", "Stock photo"); - if (img.src !== (img_src_value = "https://via.placeholder.com/82x82?text=Related")) attr_dev(img, "src", img_src_value); - add_location(img, file$h, 141, 6, 2465); - add_location(figure, file$h, 140, 4, 2450); + if (img.src !== (img_src_value = holder(82, 82))) attr_dev(img, "src", img_src_value); + add_location(img, file$i, 142, 6, 2482); + add_location(figure, file$i, 141, 4, 2467); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); append_dev(figure, img); append_dev(figure, t); }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(figure); } @@ -9750,14 +10172,14 @@ var app = (function () { block, id: create_each_block_1$3.name, type: "each", - source: "(140:2) {#each related as pin}", + source: "(141:2) {#each related as pin}", ctx }); return block; } - // (148:2) {#each posts as post} + // (149:2) {#each posts as post} function create_each_block$5(ctx) { let figure; let a; @@ -9775,13 +10197,13 @@ var app = (function () { img = element("img"); t = space(); attr_dev(img, "alt", "Placeholder"); - if (img.src !== (img_src_value = "https://via.placeholder.com/300x300?text=Video Thumb")) attr_dev(img, "src", img_src_value); - add_location(img, file$h, 150, 8, 2686); + if (img.src !== (img_src_value = holder(300, 300))) attr_dev(img, "src", img_src_value); + add_location(img, file$i, 151, 9, 2675); attr_dev(a, "href", "/demos/xoracademy/watch"); attr_dev(a, "class", "svelte-i1di9h"); - add_location(a, file$h, 149, 6, 2634); + add_location(a, file$i, 150, 6, 2622); attr_dev(figure, "class", "svelte-i1di9h"); - add_location(figure, file$h, 148, 4, 2619); + add_location(figure, file$i, 149, 4, 2607); }, m: function mount(target, anchor) { insert_dev(target, figure, anchor); @@ -9794,6 +10216,7 @@ var app = (function () { mounted = true; } }, + p: noop, d: function destroy(detaching) { if (detaching) detach_dev(figure); mounted = false; @@ -9805,14 +10228,14 @@ var app = (function () { block, id: create_each_block$5.name, type: "each", - source: "(148:2) {#each posts as post}", + source: "(149:2) {#each posts as post}", ctx }); return block; } - function create_fragment$i(ctx) { + function create_fragment$j(ctx) { let content; let header; let nav; @@ -9951,50 +10374,50 @@ var app = (function () { attr_dev(a0, "id", "logo-link"); attr_dev(a0, "href", "/demos/xoracademy"); attr_dev(a0, "class", "svelte-i1di9h"); - add_location(a0, file$h, 108, 9, 1632); - add_location(b0, file$h, 108, 6, 1629); + add_location(a0, file$i, 109, 9, 1683); + add_location(b0, file$i, 109, 6, 1680); attr_dev(input, "placeholder", "Search"); attr_dev(input, "class", "svelte-i1di9h"); - add_location(input, file$h, 109, 6, 1759); + add_location(input, file$i, 110, 6, 1810); attr_dev(button0, "class", "svelte-i1di9h"); - add_location(button0, file$h, 111, 44, 1843); + add_location(button0, file$i, 112, 44, 1894); attr_dev(a1, "href", "/demos/login"); attr_dev(a1, "class", "svelte-i1di9h"); - add_location(a1, file$h, 111, 12, 1811); - add_location(li0, file$h, 111, 8, 1807); + add_location(a1, file$i, 112, 12, 1862); + add_location(li0, file$i, 112, 8, 1858); attr_dev(a2, "class", "svelte-i1di9h"); - add_location(a2, file$h, 112, 12, 1888); - add_location(li1, file$h, 112, 8, 1884); - add_location(ul, file$h, 110, 6, 1794); + add_location(a2, file$i, 113, 12, 1939); + add_location(li1, file$i, 113, 8, 1935); + add_location(ul, file$i, 111, 6, 1845); attr_dev(nav, "class", "svelte-i1di9h"); - add_location(nav, file$h, 107, 4, 1617); + add_location(nav, file$i, 108, 4, 1668); attr_dev(header, "class", "svelte-i1di9h"); - add_location(header, file$h, 106, 2, 1604); + add_location(header, file$i, 107, 2, 1655); attr_dev(img, "alt", "Module Thumb"); - if (img.src !== (img_src_value = "https://via.placeholder.com/256x256?text=Module+Thumb")) attr_dev(img, "src", img_src_value); - add_location(img, file$h, 119, 6, 1975); + if (img.src !== (img_src_value = holder(256, 256))) attr_dev(img, "src", img_src_value); + add_location(img, file$i, 120, 6, 2026); attr_dev(figure, "class", "svelte-i1di9h"); - add_location(figure, file$h, 118, 4, 1960); - add_location(button1, file$h, 124, 8, 2104); + add_location(figure, file$i, 119, 4, 2011); + add_location(button1, file$i, 125, 8, 2121); attr_dev(p0, "class", "svelte-i1di9h"); - add_location(p0, file$h, 123, 6, 2092); - add_location(b1, file$h, 128, 8, 2158); - add_location(b2, file$h, 128, 25, 2175); + add_location(p0, file$i, 124, 6, 2109); + add_location(b1, file$i, 129, 8, 2175); + add_location(b2, file$i, 129, 25, 2192); attr_dev(p1, "class", "svelte-i1di9h"); - add_location(p1, file$h, 127, 6, 2146); - add_location(h3, file$h, 131, 6, 2216); + add_location(p1, file$i, 128, 6, 2163); + add_location(h3, file$i, 132, 6, 2233); attr_dev(p2, "class", "svelte-i1di9h"); - add_location(p2, file$h, 132, 6, 2247); + add_location(p2, file$i, 133, 6, 2264); attr_dev(info, "class", "svelte-i1di9h"); - add_location(info, file$h, 122, 4, 2079); + add_location(info, file$i, 123, 4, 2096); attr_dev(profile, "class", "svelte-i1di9h"); - add_location(profile, file$h, 117, 2, 1946); + add_location(profile, file$i, 118, 2, 1997); attr_dev(related_1, "class", "svelte-i1di9h"); - add_location(related_1, file$h, 138, 2, 2411); + add_location(related_1, file$i, 139, 2, 2428); attr_dev(posts_1, "class", "svelte-i1di9h"); - add_location(posts_1, file$h, 146, 2, 2583); + add_location(posts_1, file$i, 147, 2, 2571); attr_dev(content, "class", "svelte-i1di9h"); - add_location(content, file$h, 105, 0, 1592); + add_location(content, file$i, 106, 0, 1643); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -10061,7 +10484,55 @@ var app = (function () { mounted = true; } }, - p: noop, + p: function update(ctx, [dirty]) { + if (dirty & /*holder*/ 0) { + each_value_1 = /*related*/ ctx[1]; + validate_each_argument(each_value_1); + let i; + + for (i = 0; i < each_value_1.length; i += 1) { + const child_ctx = get_each_context_1$3(ctx, each_value_1, i); + + if (each_blocks_1[i]) { + each_blocks_1[i].p(child_ctx, dirty); + } else { + each_blocks_1[i] = create_each_block_1$3(child_ctx); + each_blocks_1[i].c(); + each_blocks_1[i].m(related_1, null); + } + } + + for (; i < each_blocks_1.length; i += 1) { + each_blocks_1[i].d(1); + } + + each_blocks_1.length = each_value_1.length; + } + + if (dirty & /*holder*/ 0) { + each_value = /*posts*/ ctx[0]; + validate_each_argument(each_value); + let i; + + for (i = 0; i < each_value.length; i += 1) { + const child_ctx = get_each_context$5(ctx, each_value, i); + + if (each_blocks[i]) { + each_blocks[i].p(child_ctx, dirty); + } else { + each_blocks[i] = create_each_block$5(child_ctx); + each_blocks[i].c(); + each_blocks[i].m(posts_1, null); + } + } + + for (; i < each_blocks.length; i += 1) { + each_blocks[i].d(1); + } + + each_blocks.length = each_value.length; + } + }, i: function intro(local) { if (current) return; transition_in(icon.$$.fragment, local); @@ -10087,7 +10558,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$i.name, + id: create_fragment$j.name, type: "component", source: "", ctx @@ -10096,7 +10567,7 @@ var app = (function () { return block; } - function instance$i($$self, $$props, $$invalidate) { + function instance$j($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("XorAcademy", slots, []); let posts = [1, 2, 3, 4, 5, 6, 7, 8, 9]; @@ -10107,7 +10578,14 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ link, Icon, CodeView, posts, related }); + $$self.$capture_state = () => ({ + link, + Icon, + CodeView, + posts, + related, + holder + }); $$self.$inject_state = $$props => { if ("posts" in $$props) $$invalidate(0, posts = $$props.posts); @@ -10124,19 +10602,19 @@ var app = (function () { class XorAcademy extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$i, create_fragment$i, safe_not_equal, {}); + init(this, options, instance$j, create_fragment$j, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "XorAcademy", options, - id: create_fragment$i.name + id: create_fragment$j.name }); } } /* src/demos/XorAcademyWatch.svelte generated by Svelte v3.30.0 */ - const file$i = "src/demos/XorAcademyWatch.svelte"; + const file$j = "src/demos/XorAcademyWatch.svelte"; function get_each_context$6(ctx, list, i) { const child_ctx = ctx.slice(); @@ -10144,7 +10622,7 @@ var app = (function () { return child_ctx; } - // (226:6) {#each cards as card} + // (227:6) {#each cards as card} function create_each_block$6(ctx) { let card; let img; @@ -10198,22 +10676,22 @@ var app = (function () { create_component(icon1.$$.fragment); t7 = text(" View replies"); t8 = space(); - if (img.src !== (img_src_value = "https://via.placeholder.com/64x64?text=Person")) attr_dev(img, "src", img_src_value); + if (img.src !== (img_src_value = holder(64, 64))) attr_dev(img, "src", img_src_value); attr_dev(img, "class", "svelte-9c6eed"); - add_location(img, file$i, 227, 8, 5002); + add_location(img, file$j, 228, 8, 5002); attr_dev(h4, "class", "svelte-9c6eed"); - add_location(h4, file$i, 229, 8, 5083); + add_location(h4, file$j, 230, 8, 5055); attr_dev(p, "class", "svelte-9c6eed"); - add_location(p, file$i, 230, 8, 5105); + add_location(p, file$j, 231, 8, 5077); attr_dev(nav, "id", "vote-nav"); attr_dev(nav, "class", "svelte-9c6eed"); - add_location(nav, file$i, 231, 8, 5243); + add_location(nav, file$j, 232, 8, 5215); attr_dev(reply, "class", "svelte-9c6eed"); - add_location(reply, file$i, 234, 8, 5351); + add_location(reply, file$j, 235, 8, 5323); attr_dev(info, "class", "svelte-9c6eed"); - add_location(info, file$i, 228, 8, 5068); + add_location(info, file$j, 229, 8, 5040); attr_dev(card, "class", "svelte-9c6eed"); - add_location(card, file$i, 226, 8, 4987); + add_location(card, file$j, 227, 8, 4987); }, m: function mount(target, anchor) { insert_dev(target, card, anchor); @@ -10257,14 +10735,14 @@ var app = (function () { block, id: create_each_block$6.name, type: "each", - source: "(226:6) {#each cards as card}", + source: "(227:6) {#each cards as card}", ctx }); return block; } - function create_fragment$j(ctx) { + function create_fragment$k(ctx) { let content1; let header; let nav0; @@ -10392,6 +10870,10 @@ var app = (function () { each_blocks[i] = create_each_block$6(get_each_context$6(ctx, each_value, i)); } + const out = i => transition_out(each_blocks[i], 1, 1, () => { + each_blocks[i] = null; + }); + codeview = new CodeView({ props: { source: "/code/XorAcademyWatch" }, $$inline: true @@ -10487,74 +10969,74 @@ var app = (function () { create_component(codeview.$$.fragment); attr_dev(a0, "href", "/demos/xoracademy"); attr_dev(a0, "class", "svelte-9c6eed"); - add_location(a0, file$i, 176, 9, 2652); - add_location(b, file$i, 176, 6, 2649); + add_location(a0, file$j, 177, 9, 2703); + add_location(b, file$j, 177, 6, 2700); attr_dev(input, "placeholder", "Search"); attr_dev(input, "class", "svelte-9c6eed"); - add_location(input, file$i, 177, 6, 2764); + add_location(input, file$j, 178, 6, 2815); attr_dev(button0, "class", "svelte-9c6eed"); - add_location(button0, file$i, 179, 44, 2848); + add_location(button0, file$j, 180, 44, 2899); attr_dev(a1, "href", "/demos/login"); attr_dev(a1, "class", "svelte-9c6eed"); - add_location(a1, file$i, 179, 12, 2816); - add_location(li0, file$i, 179, 8, 2812); + add_location(a1, file$j, 180, 12, 2867); + add_location(li0, file$j, 180, 8, 2863); attr_dev(a2, "class", "svelte-9c6eed"); - add_location(a2, file$i, 180, 12, 2893); - add_location(li1, file$i, 180, 8, 2889); - add_location(ul, file$i, 178, 6, 2799); + add_location(a2, file$j, 181, 12, 2944); + add_location(li1, file$j, 181, 8, 2940); + add_location(ul, file$j, 179, 6, 2850); attr_dev(nav0, "class", "svelte-9c6eed"); - add_location(nav0, file$i, 175, 4, 2637); + add_location(nav0, file$j, 176, 4, 2688); attr_dev(header, "class", "svelte-9c6eed"); - add_location(header, file$i, 174, 2, 2624); - if (img0.src !== (img0_src_value = "https://via.placeholder.com/1280x720?text=Video")) attr_dev(img0, "src", img0_src_value); - add_location(img0, file$i, 186, 6, 2976); + add_location(header, file$j, 175, 2, 2675); + if (img0.src !== (img0_src_value = holder(1280, 720))) attr_dev(img0, "src", img0_src_value); + add_location(img0, file$j, 187, 6, 3027); attr_dev(a3, "class", "svelte-9c6eed"); - add_location(a3, file$i, 188, 8, 3063); + add_location(a3, file$j, 189, 8, 3087); attr_dev(a4, "class", "svelte-9c6eed"); - add_location(a4, file$i, 188, 20, 3075); + add_location(a4, file$j, 189, 20, 3099); attr_dev(p, "class", "svelte-9c6eed"); - add_location(p, file$i, 189, 8, 3102); - add_location(likes, file$i, 191, 10, 3159); - add_location(video_buttons, file$i, 192, 10, 3202); + add_location(p, file$j, 190, 8, 3126); + add_location(likes, file$j, 192, 10, 3183); + add_location(video_buttons, file$j, 193, 10, 3226); set_custom_element_data(video_actions, "class", "svelte-9c6eed"); - add_location(video_actions, file$i, 190, 8, 3133); + add_location(video_actions, file$j, 191, 8, 3157); attr_dev(figcaption, "class", "svelte-9c6eed"); - add_location(figcaption, file$i, 187, 6, 3042); - add_location(figure, file$i, 185, 4, 2961); - if (img1.src !== (img1_src_value = "https://via.placeholder.com/64x64?text=ME")) attr_dev(img1, "src", img1_src_value); + add_location(figcaption, file$j, 188, 6, 3066); + add_location(figure, file$j, 186, 4, 3012); + if (img1.src !== (img1_src_value = holder(64, 64))) attr_dev(img1, "src", img1_src_value); attr_dev(img1, "class", "svelte-9c6eed"); - add_location(img1, file$i, 206, 8, 3653); + add_location(img1, file$j, 207, 8, 3677); attr_dev(h4, "class", "svelte-9c6eed"); - add_location(h4, file$i, 208, 8, 3730); - add_location(subs, file$i, 209, 8, 3759); + add_location(h4, file$j, 209, 8, 3730); + add_location(subs, file$j, 210, 8, 3759); attr_dev(info, "class", "svelte-9c6eed"); - add_location(info, file$i, 207, 8, 3715); + add_location(info, file$j, 208, 8, 3715); attr_dev(card, "class", "svelte-9c6eed"); - add_location(card, file$i, 205, 8, 3638); + add_location(card, file$j, 206, 8, 3662); attr_dev(button1, "id", "subscribe"); attr_dev(button1, "class", "svelte-9c6eed"); - add_location(button1, file$i, 211, 8, 3809); + add_location(button1, file$j, 212, 8, 3809); attr_dev(nav1, "class", "svelte-9c6eed"); - add_location(nav1, file$i, 204, 6, 3624); + add_location(nav1, file$j, 205, 6, 3648); attr_dev(content0, "class", "svelte-9c6eed"); - add_location(content0, file$i, 214, 6, 3871); + add_location(content0, file$j, 215, 6, 3871); attr_dev(promotion, "class", "svelte-9c6eed"); - add_location(promotion, file$i, 203, 6, 3606); + add_location(promotion, file$j, 204, 6, 3630); attr_dev(hr, "class", "svelte-9c6eed"); - add_location(hr, file$i, 218, 6, 4796); - add_location(span, file$i, 222, 8, 4839); + add_location(hr, file$j, 219, 6, 4796); + add_location(span, file$j, 223, 8, 4839); attr_dev(sort, "class", "svelte-9c6eed"); - add_location(sort, file$i, 222, 34, 4865); + add_location(sort, file$j, 223, 34, 4865); attr_dev(nav2, "class", "svelte-9c6eed"); - add_location(nav2, file$i, 221, 6, 4825); + add_location(nav2, file$j, 222, 6, 4825); attr_dev(comments, "class", "svelte-9c6eed"); - add_location(comments, file$i, 220, 6, 4808); + add_location(comments, file$j, 221, 6, 4808); attr_dev(lower, "class", "svelte-9c6eed"); - add_location(lower, file$i, 202, 4, 3592); + add_location(lower, file$j, 203, 4, 3616); attr_dev(main, "class", "svelte-9c6eed"); - add_location(main, file$i, 184, 2, 2950); + add_location(main, file$j, 185, 2, 3001); attr_dev(content1, "class", "svelte-9c6eed"); - add_location(content1, file$i, 173, 0, 2612); + add_location(content1, file$j, 174, 0, 2663); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -10646,7 +11128,35 @@ var app = (function () { mounted = true; } }, - p: noop, + p: function update(ctx, [dirty]) { + if (dirty & /*holder*/ 0) { + each_value = /*cards*/ ctx[0]; + validate_each_argument(each_value); + let i; + + for (i = 0; i < each_value.length; i += 1) { + const child_ctx = get_each_context$6(ctx, each_value, i); + + if (each_blocks[i]) { + each_blocks[i].p(child_ctx, dirty); + transition_in(each_blocks[i], 1); + } else { + each_blocks[i] = create_each_block$6(child_ctx); + each_blocks[i].c(); + transition_in(each_blocks[i], 1); + each_blocks[i].m(comments, null); + } + } + + group_outros(); + + for (i = each_value.length; i < each_blocks.length; i += 1) { + out(i); + } + + check_outros(); + } + }, i: function intro(local) { if (current) return; transition_in(icon0.$$.fragment, local); @@ -10700,7 +11210,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$j.name, + id: create_fragment$k.name, type: "component", source: "", ctx @@ -10709,7 +11219,7 @@ var app = (function () { return block; } - function instance$j($$self, $$props, $$invalidate) { + function instance$k($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("XorAcademyWatch", slots, []); let cards = [1, 2, 3, 4]; @@ -10719,7 +11229,7 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ link, Icon, CodeView, cards }); + $$self.$capture_state = () => ({ link, Icon, CodeView, cards, holder }); $$self.$inject_state = $$props => { if ("cards" in $$props) $$invalidate(0, cards = $$props.cards); @@ -10735,21 +11245,21 @@ var app = (function () { class XorAcademyWatch extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$j, create_fragment$j, safe_not_equal, {}); + init(this, options, instance$k, create_fragment$k, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "XorAcademyWatch", options, - id: create_fragment$j.name + id: create_fragment$k.name }); } } /* src/demos/Login.svelte generated by Svelte v3.30.0 */ - const file$j = "src/demos/Login.svelte"; + const file$k = "src/demos/Login.svelte"; - function create_fragment$k(ctx) { + function create_fragment$l(ctx) { let content; let spacer0; let t0; @@ -10805,31 +11315,31 @@ var app = (function () { spacer1 = element("spacer"); t12 = space(); create_component(codeview.$$.fragment); - add_location(spacer0, file$j, 14, 2, 211); - add_location(header, file$j, 16, 4, 242); + add_location(spacer0, file$k, 15, 2, 262); + add_location(header, file$k, 17, 4, 293); attr_dev(label0, "for", "username"); - add_location(label0, file$j, 17, 4, 269); + add_location(label0, file$k, 18, 4, 320); attr_dev(input0, "type", "text"); attr_dev(input0, "id", "username"); attr_dev(input0, "name", "username"); attr_dev(input0, "size", "32"); attr_dev(input0, "placeholder", "Username"); - add_location(input0, file$j, 18, 4, 312); + add_location(input0, file$k, 19, 4, 363); attr_dev(label1, "for", "password"); - add_location(label1, file$j, 19, 4, 399); + add_location(label1, file$k, 20, 4, 450); attr_dev(input1, "type", "password"); attr_dev(input1, "id", "password"); attr_dev(input1, "name", "password"); attr_dev(input1, "size", "32"); attr_dev(input1, "placeholder", "Password"); - add_location(input1, file$j, 20, 4, 442); - add_location(br, file$j, 21, 4, 533); + add_location(input1, file$k, 21, 4, 493); + add_location(br, file$k, 22, 4, 584); attr_dev(button, "type", "submit"); - add_location(button, file$j, 22, 4, 542); - add_location(form, file$j, 15, 2, 231); - add_location(spacer1, file$j, 24, 2, 591); + add_location(button, file$k, 23, 4, 593); + add_location(form, file$k, 16, 2, 282); + add_location(spacer1, file$k, 25, 2, 642); attr_dev(content, "class", "svelte-t7gl8c"); - add_location(content, file$j, 13, 0, 199); + add_location(content, file$k, 14, 0, 250); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); @@ -10877,7 +11387,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$k.name, + id: create_fragment$l.name, type: "component", source: "", ctx @@ -10886,7 +11396,7 @@ var app = (function () { return block; } - function instance$k($$self, $$props, $$invalidate) { + function instance$l($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Login", slots, []); const writable_props = []; @@ -10895,60 +11405,411 @@ var app = (function () { if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); }); - $$self.$capture_state = () => ({ CodeView }); + $$self.$capture_state = () => ({ CodeView, holder }); return []; } class Login$1 extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$k, create_fragment$k, safe_not_equal, {}); + init(this, options, instance$l, create_fragment$l, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Login", options, - id: create_fragment$k.name + id: create_fragment$l.name }); } } - var routes = { - "/": Home, - "/about": About, - "/demos": Demos, - "/demos/login": Login$1, - "/demos/google": Google$1, - "/demos/twitter": Twitter$1, - "/demos/youtube": Youtube$1, - "/demos/instagram": Instagram$1, - "/demos/pinterest": Pinterest$1, - "/demos/xoracademy": XorAcademy, - "/demos/xoracademy/watch": XorAcademyWatch, - "*": NotFound, - }; - - /* src/components/Darkmode.svelte generated by Svelte v3.30.0 */ - const file$k = "src/components/Darkmode.svelte"; - - // (26:0) {:else} - function create_else_block$1(ctx) { - let span; - let icon; - let current; - let mounted; - let dispose; - - icon = new Icon({ - props: { name: "sunset", size: "32" }, - $$inline: true - }); + /* src/demos/Tiles.svelte generated by Svelte v3.30.0 */ + const file$l = "src/demos/Tiles.svelte"; - const block = { - c: function create() { + function create_fragment$m(ctx) { + let content; + let tile; + let left; + let img; + let img_src_value; + let t0; + let middle; + let h4; + let t2; + let p; + let t4; + let right; + let button0; + let icon0; + let t5; + let button1; + let icon1; + let t6; + let codeview; + let current; + + icon0 = new Icon({ + props: { + name: "check-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + icon1 = new Icon({ + props: { + name: "x-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + codeview = new CodeView({ + props: { source: "/code/Tiles" }, + $$inline: true + }); + + const block = { + c: function create() { + content = element("content"); + tile = element("tile"); + left = element("left"); + img = element("img"); + t0 = space(); + middle = element("middle"); + h4 = element("h4"); + h4.textContent = "Tile Example"; + t2 = space(); + p = element("p"); + p.textContent = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."; + t4 = space(); + right = element("right"); + button0 = element("button"); + create_component(icon0.$$.fragment); + t5 = space(); + button1 = element("button"); + create_component(icon1.$$.fragment); + t6 = space(); + create_component(codeview.$$.fragment); + if (img.src !== (img_src_value = holder(48, 48))) attr_dev(img, "src", img_src_value); + add_location(img, file$l, 48, 6, 836); + add_location(left, file$l, 47, 4, 823); + attr_dev(h4, "class", "svelte-fwzpwr"); + add_location(h4, file$l, 52, 6, 898); + add_location(p, file$l, 55, 6, 942); + attr_dev(middle, "class", "svelte-fwzpwr"); + add_location(middle, file$l, 51, 4, 883); + attr_dev(button0, "class", "svelte-fwzpwr"); + add_location(button0, file$l, 59, 4, 1104); + attr_dev(button1, "class", "svelte-fwzpwr"); + add_location(button1, file$l, 60, 4, 1188); + attr_dev(right, "class", "svelte-fwzpwr"); + add_location(right, file$l, 58, 4, 1092); + attr_dev(tile, "class", "svelte-fwzpwr"); + add_location(tile, file$l, 46, 2, 812); + attr_dev(content, "class", "svelte-fwzpwr"); + add_location(content, file$l, 45, 0, 800); + }, + l: function claim(nodes) { + throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); + }, + m: function mount(target, anchor) { + insert_dev(target, content, anchor); + append_dev(content, tile); + append_dev(tile, left); + append_dev(left, img); + append_dev(tile, t0); + append_dev(tile, middle); + append_dev(middle, h4); + append_dev(middle, t2); + append_dev(middle, p); + append_dev(tile, t4); + append_dev(tile, right); + append_dev(right, button0); + mount_component(icon0, button0, null); + append_dev(right, t5); + append_dev(right, button1); + mount_component(icon1, button1, null); + insert_dev(target, t6, anchor); + mount_component(codeview, target, anchor); + current = true; + }, + p: noop, + i: function intro(local) { + if (current) return; + transition_in(icon0.$$.fragment, local); + transition_in(icon1.$$.fragment, local); + transition_in(codeview.$$.fragment, local); + current = true; + }, + o: function outro(local) { + transition_out(icon0.$$.fragment, local); + transition_out(icon1.$$.fragment, local); + transition_out(codeview.$$.fragment, local); + current = false; + }, + d: function destroy(detaching) { + if (detaching) detach_dev(content); + destroy_component(icon0); + destroy_component(icon1); + if (detaching) detach_dev(t6); + destroy_component(codeview, detaching); + } + }; + + dispatch_dev("SvelteRegisterBlock", { + block, + id: create_fragment$m.name, + type: "component", + source: "", + ctx + }); + + return block; + } + + function instance$m($$self, $$props, $$invalidate) { + let { $$slots: slots = {}, $$scope } = $$props; + validate_slots("Tiles", slots, []); + const writable_props = []; + + Object.keys($$props).forEach(key => { + if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); + }); + + $$self.$capture_state = () => ({ CodeView, Icon, holder }); + return []; + } + + class Tiles$1 extends SvelteComponentDev { + constructor(options) { + super(options); + init(this, options, instance$m, create_fragment$m, safe_not_equal, {}); + + dispatch_dev("SvelteRegisterComponent", { + component: this, + tagName: "Tiles", + options, + id: create_fragment$m.name + }); + } + } + + /* src/demos/Cards.svelte generated by Svelte v3.30.0 */ + const file$m = "src/demos/Cards.svelte"; + + function create_fragment$n(ctx) { + let content; + let card; + let top; + let img; + let img_src_value; + let t0; + let middle; + let h4; + let t2; + let p; + let t4; + let bottom; + let button0; + let icon0; + let t5; + let button1; + let icon1; + let t6; + let codeview; + let current; + + icon0 = new Icon({ + props: { + name: "check-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + icon1 = new Icon({ + props: { + name: "x-circle", + color: "var(--color-bg)", + size: "24" + }, + $$inline: true + }); + + codeview = new CodeView({ + props: { source: "/code/Cards" }, + $$inline: true + }); + + const block = { + c: function create() { + content = element("content"); + card = element("card"); + top = element("top"); + img = element("img"); + t0 = space(); + middle = element("middle"); + h4 = element("h4"); + h4.textContent = "Card Example"; + t2 = space(); + p = element("p"); + p.textContent = "Lorem ipsum dolor sit amet, consectetur\n adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."; + t4 = space(); + bottom = element("bottom"); + button0 = element("button"); + create_component(icon0.$$.fragment); + t5 = space(); + button1 = element("button"); + create_component(icon1.$$.fragment); + t6 = space(); + create_component(codeview.$$.fragment); + if (img.src !== (img_src_value = holder(16 * 30, 9 * 30))) attr_dev(img, "src", img_src_value); + attr_dev(img, "class", "svelte-s80h8"); + add_location(img, file$m, 50, 6, 782); + add_location(top, file$m, 49, 4, 770); + attr_dev(h4, "class", "svelte-s80h8"); + add_location(h4, file$m, 54, 6, 852); + add_location(p, file$m, 57, 6, 896); + attr_dev(middle, "class", "svelte-s80h8"); + add_location(middle, file$m, 53, 4, 837); + attr_dev(button0, "class", "svelte-s80h8"); + add_location(button0, file$m, 62, 4, 1065); + attr_dev(button1, "class", "svelte-s80h8"); + add_location(button1, file$m, 63, 4, 1149); + attr_dev(bottom, "class", "svelte-s80h8"); + add_location(bottom, file$m, 61, 4, 1052); + attr_dev(card, "class", "svelte-s80h8"); + add_location(card, file$m, 48, 2, 759); + attr_dev(content, "class", "svelte-s80h8"); + add_location(content, file$m, 47, 0, 747); + }, + l: function claim(nodes) { + throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); + }, + m: function mount(target, anchor) { + insert_dev(target, content, anchor); + append_dev(content, card); + append_dev(card, top); + append_dev(top, img); + append_dev(card, t0); + append_dev(card, middle); + append_dev(middle, h4); + append_dev(middle, t2); + append_dev(middle, p); + append_dev(card, t4); + append_dev(card, bottom); + append_dev(bottom, button0); + mount_component(icon0, button0, null); + append_dev(bottom, t5); + append_dev(bottom, button1); + mount_component(icon1, button1, null); + insert_dev(target, t6, anchor); + mount_component(codeview, target, anchor); + current = true; + }, + p: noop, + i: function intro(local) { + if (current) return; + transition_in(icon0.$$.fragment, local); + transition_in(icon1.$$.fragment, local); + transition_in(codeview.$$.fragment, local); + current = true; + }, + o: function outro(local) { + transition_out(icon0.$$.fragment, local); + transition_out(icon1.$$.fragment, local); + transition_out(codeview.$$.fragment, local); + current = false; + }, + d: function destroy(detaching) { + if (detaching) detach_dev(content); + destroy_component(icon0); + destroy_component(icon1); + if (detaching) detach_dev(t6); + destroy_component(codeview, detaching); + } + }; + + dispatch_dev("SvelteRegisterBlock", { + block, + id: create_fragment$n.name, + type: "component", + source: "", + ctx + }); + + return block; + } + + function instance$n($$self, $$props, $$invalidate) { + let { $$slots: slots = {}, $$scope } = $$props; + validate_slots("Cards", slots, []); + const writable_props = []; + + Object.keys($$props).forEach(key => { + if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") console.warn(` was created with unknown prop '${key}'`); + }); + + $$self.$capture_state = () => ({ CodeView, Icon, holder }); + return []; + } + + class Cards extends SvelteComponentDev { + constructor(options) { + super(options); + init(this, options, instance$n, create_fragment$n, safe_not_equal, {}); + + dispatch_dev("SvelteRegisterComponent", { + component: this, + tagName: "Cards", + options, + id: create_fragment$n.name + }); + } + } + + var routes = { + "/": Home, + "/about": About, + "/demos": Demos, + "/demos/login": Login$1, + "/demos/tiles": Tiles$1, + "/demos/cards": Cards, + "/demos/google": Google$1, + "/demos/twitter": Twitter$1, + "/demos/youtube": Youtube$1, + "/demos/instagram": Instagram$1, + "/demos/pinterest": Pinterest$1, + "/demos/xoracademy": XorAcademy, + "/demos/xoracademy/watch": XorAcademyWatch, + "*": NotFound, + }; + + /* src/components/Darkmode.svelte generated by Svelte v3.30.0 */ + const file$n = "src/components/Darkmode.svelte"; + + // (26:0) {:else} + function create_else_block$1(ctx) { + let span; + let icon; + let current; + let mounted; + let dispose; + + icon = new Icon({ + props: { name: "sunset", size: "32" }, + $$inline: true + }); + + const block = { + c: function create() { span = element("span"); create_component(icon.$$.fragment); - add_location(span, file$k, 26, 2, 578); + add_location(span, file$n, 26, 2, 578); }, m: function mount(target, anchor) { insert_dev(target, span, anchor); @@ -11006,7 +11867,7 @@ var app = (function () { c: function create() { span = element("span"); create_component(icon.$$.fragment); - add_location(span, file$k, 22, 2, 485); + add_location(span, file$n, 22, 2, 485); }, m: function mount(target, anchor) { insert_dev(target, span, anchor); @@ -11047,7 +11908,7 @@ var app = (function () { return block; } - function create_fragment$l(ctx) { + function create_fragment$o(ctx) { let current_block_type_index; let if_block; let if_block_anchor; @@ -11120,7 +11981,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$l.name, + id: create_fragment$o.name, type: "component", source: "", ctx @@ -11129,7 +11990,7 @@ var app = (function () { return block; } - function instance$l($$self, $$props, $$invalidate) { + function instance$o($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("Darkmode", slots, []); @@ -11180,13 +12041,13 @@ var app = (function () { class Darkmode extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$l, create_fragment$l, safe_not_equal, { theme: 0 }); + init(this, options, instance$o, create_fragment$o, safe_not_equal, { theme: 0 }); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "Darkmode", options, - id: create_fragment$l.name + id: create_fragment$o.name }); } @@ -11200,43 +12061,42 @@ var app = (function () { } /* src/App.svelte generated by Svelte v3.30.0 */ - const file$l = "src/App.svelte"; + const file$o = "src/App.svelte"; - function create_fragment$m(ctx) { - let t0; + function create_fragment$p(ctx) { let header; let nav0; let a0; let icon0; let link_action; - let t1; + let t0; let ul0; let li0; let a1; let link_action_1; - let t3; + let t2; let li1; let a2; let link_action_2; - let t5; + let t4; let main; let router; - let t6; + let t5; let hr; - let t7; + let t6; let footer; let nav1; let a3; let p; let link_action_3; - let t9; + let t8; let ul1; let li2; let icon1; - let t10; + let t9; let li3; let icon2; - let t11; + let t10; let li4; let darkmode; let current; @@ -11267,103 +12127,100 @@ var app = (function () { const block = { c: function create() { - t0 = space(); header = element("header"); nav0 = element("nav"); a0 = element("a"); create_component(icon0.$$.fragment); - t1 = space(); + t0 = space(); ul0 = element("ul"); li0 = element("li"); a1 = element("a"); a1.textContent = "Demos"; - t3 = space(); + t2 = space(); li1 = element("li"); a2 = element("a"); a2.textContent = "About"; - t5 = space(); + t4 = space(); main = element("main"); create_component(router.$$.fragment); - t6 = space(); + t5 = space(); hr = element("hr"); - t7 = space(); + t6 = space(); footer = element("footer"); nav1 = element("nav"); a3 = element("a"); p = element("p"); p.textContent = "Copyright (C) Big Corp."; - t9 = space(); + t8 = space(); ul1 = element("ul"); li2 = element("li"); create_component(icon1.$$.fragment); - t10 = space(); + t9 = space(); li3 = element("li"); create_component(icon2.$$.fragment); - t11 = space(); + t10 = space(); li4 = element("li"); create_component(darkmode.$$.fragment); - document.title = "LJSTHW Starter Template"; attr_dev(a0, "href", "/"); - add_location(a0, file$l, 32, 4, 494); + add_location(a0, file$o, 28, 4, 423); attr_dev(a1, "href", "/demos"); - add_location(a1, file$l, 36, 10, 584); - add_location(li0, file$l, 36, 6, 580); + add_location(a1, file$o, 32, 10, 513); + add_location(li0, file$o, 32, 6, 509); attr_dev(a2, "href", "/about"); - add_location(a2, file$l, 37, 10, 635); - add_location(li1, file$l, 37, 6, 631); - add_location(ul0, file$l, 35, 4, 569); - add_location(nav0, file$l, 31, 2, 484); + add_location(a2, file$o, 33, 10, 564); + add_location(li1, file$o, 33, 6, 560); + add_location(ul0, file$o, 31, 4, 498); + add_location(nav0, file$o, 27, 2, 413); attr_dev(header, "class", "svelte-khlxmc"); - add_location(header, file$l, 30, 0, 473); + add_location(header, file$o, 26, 0, 402); attr_dev(main, "class", "svelte-khlxmc"); - add_location(main, file$l, 42, 0, 706); - add_location(hr, file$l, 46, 0, 773); - add_location(p, file$l, 50, 6, 827); + add_location(main, file$o, 38, 0, 635); + add_location(hr, file$o, 42, 0, 702); + add_location(p, file$o, 46, 6, 756); attr_dev(a3, "href", "/"); - add_location(a3, file$l, 49, 4, 799); - add_location(li2, file$l, 53, 6, 882); - add_location(li3, file$l, 54, 6, 931); - add_location(li4, file$l, 55, 6, 982); - add_location(ul1, file$l, 52, 4, 871); + add_location(a3, file$o, 45, 4, 728); + add_location(li2, file$o, 49, 6, 811); + add_location(li3, file$o, 50, 6, 860); + add_location(li4, file$o, 51, 6, 911); + add_location(ul1, file$o, 48, 4, 800); attr_dev(nav1, "class", "svelte-khlxmc"); - add_location(nav1, file$l, 48, 2, 789); + add_location(nav1, file$o, 44, 2, 718); attr_dev(footer, "class", "svelte-khlxmc"); - add_location(footer, file$l, 47, 0, 778); + add_location(footer, file$o, 43, 0, 707); }, l: function claim(nodes) { throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option"); }, m: function mount(target, anchor) { - insert_dev(target, t0, anchor); insert_dev(target, header, anchor); append_dev(header, nav0); append_dev(nav0, a0); mount_component(icon0, a0, null); - append_dev(nav0, t1); + append_dev(nav0, t0); append_dev(nav0, ul0); append_dev(ul0, li0); append_dev(li0, a1); - append_dev(ul0, t3); + append_dev(ul0, t2); append_dev(ul0, li1); append_dev(li1, a2); - insert_dev(target, t5, anchor); + insert_dev(target, t4, anchor); insert_dev(target, main, anchor); mount_component(router, main, null); - insert_dev(target, t6, anchor); + insert_dev(target, t5, anchor); insert_dev(target, hr, anchor); - insert_dev(target, t7, anchor); + insert_dev(target, t6, anchor); insert_dev(target, footer, anchor); append_dev(footer, nav1); append_dev(nav1, a3); append_dev(a3, p); - append_dev(nav1, t9); + append_dev(nav1, t8); append_dev(nav1, ul1); append_dev(ul1, li2); mount_component(icon1, li2, null); - append_dev(ul1, t10); + append_dev(ul1, t9); append_dev(ul1, li3); mount_component(icon2, li3, null); - append_dev(ul1, t11); + append_dev(ul1, t10); append_dev(ul1, li4); mount_component(darkmode, li4, null); current = true; @@ -11398,15 +12255,14 @@ var app = (function () { current = false; }, d: function destroy(detaching) { - if (detaching) detach_dev(t0); if (detaching) detach_dev(header); destroy_component(icon0); - if (detaching) detach_dev(t5); + if (detaching) detach_dev(t4); if (detaching) detach_dev(main); destroy_component(router); - if (detaching) detach_dev(t6); + if (detaching) detach_dev(t5); if (detaching) detach_dev(hr); - if (detaching) detach_dev(t7); + if (detaching) detach_dev(t6); if (detaching) detach_dev(footer); destroy_component(icon1); destroy_component(icon2); @@ -11418,7 +12274,7 @@ var app = (function () { dispatch_dev("SvelteRegisterBlock", { block, - id: create_fragment$m.name, + id: create_fragment$p.name, type: "component", source: "", ctx @@ -11427,7 +12283,7 @@ var app = (function () { return block; } - function instance$m($$self, $$props, $$invalidate) { + function instance$p($$self, $$props, $$invalidate) { let { $$slots: slots = {}, $$scope } = $$props; validate_slots("App", slots, []); const writable_props = []; @@ -11443,13 +12299,13 @@ var app = (function () { class App extends SvelteComponentDev { constructor(options) { super(options); - init(this, options, instance$m, create_fragment$m, safe_not_equal, {}); + init(this, options, instance$p, create_fragment$p, safe_not_equal, {}); dispatch_dev("SvelteRegisterComponent", { component: this, tagName: "App", options, - id: create_fragment$m.name + id: create_fragment$p.name }); } } diff --git a/public/build/bundle.js.map b/public/build/bundle.js.map index c2f109a..1616d57 100644 --- a/public/build/bundle.js.map +++ b/public/build/bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"bundle.js","sources":["../../node_modules/svelte/internal/index.mjs","../../node_modules/svelte-spa-router/wrap.js","../../node_modules/svelte/store/index.mjs","../../node_modules/regexparam/dist/regexparam.mjs","../../node_modules/svelte-spa-router/Router.svelte","../../src/components/Icon.svelte","../../src/thumbs/Youtube.svelte","../../src/thumbs/Instagram.svelte","../../src/demos/index.svelte","../../node_modules/prismjs/prism.js","../../node_modules/prism-svelte/index.js","../../src/components/CodeView.svelte","../../src/demos/Twitter.svelte","../../src/demos/Youtube.svelte","../../src/demos/Instagram.svelte","../../src/demos/Pinterest.svelte","../../src/demos/XorAcademy.svelte","../../src/demos/XorAcademyWatch.svelte","../../src/routes.js","../../src/components/Darkmode.svelte","../../src/App.svelte","../../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n // @ts-ignore\n for (const k in src)\n tar[k] = src[k];\n return tar;\n}\nfunction is_promise(value) {\n return value && typeof value === 'object' && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n element.__svelte_meta = {\n loc: { file, line, column, char }\n };\n}\nfunction run(fn) {\n return fn();\n}\nfunction blank_object() {\n return Object.create(null);\n}\nfunction run_all(fns) {\n fns.forEach(run);\n}\nfunction is_function(thing) {\n return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n return a != a ? b == b : a !== b;\n}\nfunction is_empty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction validate_store(store, name) {\n if (store != null && typeof store.subscribe !== 'function') {\n throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n }\n}\nfunction subscribe(store, ...callbacks) {\n if (store == null) {\n return noop;\n }\n const unsub = store.subscribe(...callbacks);\n return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\nfunction get_store_value(store) {\n let value;\n subscribe(store, _ => value = _)();\n return value;\n}\nfunction component_subscribe(component, store, callback) {\n component.$$.on_destroy.push(subscribe(store, callback));\n}\nfunction create_slot(definition, ctx, $$scope, fn) {\n if (definition) {\n const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n return definition[0](slot_ctx);\n }\n}\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n return definition[1] && fn\n ? assign($$scope.ctx.slice(), definition[1](fn(ctx)))\n : $$scope.ctx;\n}\nfunction get_slot_changes(definition, $$scope, dirty, fn) {\n if (definition[2] && fn) {\n const lets = definition[2](fn(dirty));\n if ($$scope.dirty === undefined) {\n return lets;\n }\n if (typeof lets === 'object') {\n const merged = [];\n const len = Math.max($$scope.dirty.length, lets.length);\n for (let i = 0; i < len; i += 1) {\n merged[i] = $$scope.dirty[i] | lets[i];\n }\n return merged;\n }\n return $$scope.dirty | lets;\n }\n return $$scope.dirty;\n}\nfunction update_slot(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction update_slot_spread(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_spread_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_spread_changes_fn(dirty) | get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction exclude_internal_props(props) {\n const result = {};\n for (const k in props)\n if (k[0] !== '$')\n result[k] = props[k];\n return result;\n}\nfunction compute_rest_props(props, keys) {\n const rest = {};\n keys = new Set(keys);\n for (const k in props)\n if (!keys.has(k) && k[0] !== '$')\n rest[k] = props[k];\n return rest;\n}\nfunction compute_slots(slots) {\n const result = {};\n for (const key in slots) {\n result[key] = true;\n }\n return result;\n}\nfunction once(fn) {\n let ran = false;\n return function (...args) {\n if (ran)\n return;\n ran = true;\n fn.call(this, ...args);\n };\n}\nfunction null_to_empty(value) {\n return value == null ? '' : value;\n}\nfunction set_store_value(store, ret, value = ret) {\n store.set(value);\n return ret;\n}\nconst has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nfunction action_destroyer(action_result) {\n return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n ? () => window.performance.now()\n : () => Date.now();\nlet raf = is_client ? cb => requestAnimationFrame(cb) : noop;\n// used internally for testing\nfunction set_now(fn) {\n now = fn;\n}\nfunction set_raf(fn) {\n raf = fn;\n}\n\nconst tasks = new Set();\nfunction run_tasks(now) {\n tasks.forEach(task => {\n if (!task.c(now)) {\n tasks.delete(task);\n task.f();\n }\n });\n if (tasks.size !== 0)\n raf(run_tasks);\n}\n/**\n * For testing purposes only!\n */\nfunction clear_loops() {\n tasks.clear();\n}\n/**\n * Creates a new task that runs on each raf frame\n * until it returns a falsy value or is aborted\n */\nfunction loop(callback) {\n let task;\n if (tasks.size === 0)\n raf(run_tasks);\n return {\n promise: new Promise(fulfill => {\n tasks.add(task = { c: callback, f: fulfill });\n }),\n abort() {\n tasks.delete(task);\n }\n };\n}\n\nfunction append(target, node) {\n target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n node.parentNode.removeChild(node);\n}\nfunction destroy_each(iterations, detaching) {\n for (let i = 0; i < iterations.length; i += 1) {\n if (iterations[i])\n iterations[i].d(detaching);\n }\n}\nfunction element(name) {\n return document.createElement(name);\n}\nfunction element_is(name, is) {\n return document.createElement(name, { is });\n}\nfunction object_without_properties(obj, exclude) {\n const target = {};\n for (const k in obj) {\n if (has_prop(obj, k)\n // @ts-ignore\n && exclude.indexOf(k) === -1) {\n // @ts-ignore\n target[k] = obj[k];\n }\n }\n return target;\n}\nfunction svg_element(name) {\n return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n return document.createTextNode(data);\n}\nfunction space() {\n return text(' ');\n}\nfunction empty() {\n return text('');\n}\nfunction listen(node, event, handler, options) {\n node.addEventListener(event, handler, options);\n return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n return function (event) {\n event.preventDefault();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction stop_propagation(fn) {\n return function (event) {\n event.stopPropagation();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction self(fn) {\n return function (event) {\n // @ts-ignore\n if (event.target === this)\n fn.call(this, event);\n };\n}\nfunction attr(node, attribute, value) {\n if (value == null)\n node.removeAttribute(attribute);\n else if (node.getAttribute(attribute) !== value)\n node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n // @ts-ignore\n const descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n for (const key in attributes) {\n if (attributes[key] == null) {\n node.removeAttribute(key);\n }\n else if (key === 'style') {\n node.style.cssText = attributes[key];\n }\n else if (key === '__value') {\n node.value = node[key] = attributes[key];\n }\n else if (descriptors[key] && descriptors[key].set) {\n node[key] = attributes[key];\n }\n else {\n attr(node, key, attributes[key]);\n }\n }\n}\nfunction set_svg_attributes(node, attributes) {\n for (const key in attributes) {\n attr(node, key, attributes[key]);\n }\n}\nfunction set_custom_element_data(node, prop, value) {\n if (prop in node) {\n node[prop] = value;\n }\n else {\n attr(node, prop, value);\n }\n}\nfunction xlink_attr(node, attribute, value) {\n node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group, __value, checked) {\n const value = new Set();\n for (let i = 0; i < group.length; i += 1) {\n if (group[i].checked)\n value.add(group[i].__value);\n }\n if (!checked) {\n value.delete(__value);\n }\n return Array.from(value);\n}\nfunction to_number(value) {\n return value === '' ? null : +value;\n}\nfunction time_ranges_to_array(ranges) {\n const array = [];\n for (let i = 0; i < ranges.length; i += 1) {\n array.push({ start: ranges.start(i), end: ranges.end(i) });\n }\n return array;\n}\nfunction children(element) {\n return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeName === name) {\n let j = 0;\n const remove = [];\n while (j < node.attributes.length) {\n const attribute = node.attributes[j++];\n if (!attributes[attribute.name]) {\n remove.push(attribute.name);\n }\n }\n for (let k = 0; k < remove.length; k++) {\n node.removeAttribute(remove[k]);\n }\n return nodes.splice(i, 1)[0];\n }\n }\n return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeType === 3) {\n node.data = '' + data;\n return nodes.splice(i, 1)[0];\n }\n }\n return text(data);\n}\nfunction claim_space(nodes) {\n return claim_text(nodes, ' ');\n}\nfunction set_data(text, data) {\n data = '' + data;\n if (text.wholeText !== data)\n text.data = data;\n}\nfunction set_input_value(input, value) {\n input.value = value == null ? '' : value;\n}\nfunction set_input_type(input, type) {\n try {\n input.type = type;\n }\n catch (e) {\n // do nothing\n }\n}\nfunction set_style(node, key, value, important) {\n node.style.setProperty(key, value, important ? 'important' : '');\n}\nfunction select_option(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n if (option.__value === value) {\n option.selected = true;\n return;\n }\n }\n}\nfunction select_options(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n option.selected = ~value.indexOf(option.__value);\n }\n}\nfunction select_value(select) {\n const selected_option = select.querySelector(':checked') || select.options[0];\n return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\nlet crossorigin;\nfunction is_crossorigin() {\n if (crossorigin === undefined) {\n crossorigin = false;\n try {\n if (typeof window !== 'undefined' && window.parent) {\n void window.parent.document;\n }\n }\n catch (error) {\n crossorigin = true;\n }\n }\n return crossorigin;\n}\nfunction add_resize_listener(node, fn) {\n const computed_style = getComputedStyle(node);\n const z_index = (parseInt(computed_style.zIndex) || 0) - 1;\n if (computed_style.position === 'static') {\n node.style.position = 'relative';\n }\n const iframe = element('iframe');\n iframe.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\n `overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: ${z_index};`);\n iframe.setAttribute('aria-hidden', 'true');\n iframe.tabIndex = -1;\n const crossorigin = is_crossorigin();\n let unsubscribe;\n if (crossorigin) {\n iframe.src = \"data:text/html,\";\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n if (crossorigin) {\n unsubscribe();\n }\n else if (unsubscribe && iframe.contentWindow) {\n unsubscribe();\n }\n detach(iframe);\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, false, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor(anchor = null) {\n this.a = anchor;\n this.e = this.n = null;\n }\n m(html, target, anchor = null) {\n if (!this.e) {\n this.e = element(target.nodeName);\n this.t = target;\n this.h(html);\n }\n this.i(anchor);\n }\n h(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(this.t, this.n[i], anchor);\n }\n }\n p(html) {\n this.d();\n this.h(html);\n this.i(this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\nfunction attribute_to_object(attributes) {\n const result = {};\n for (const attribute of attributes) {\n result[attribute.name] = attribute.value;\n }\n return result;\n}\nfunction get_custom_elements_slots(element) {\n const result = {};\n element.childNodes.forEach((node) => {\n result[node.slot || 'default'] = true;\n });\n return result;\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = node.ownerDocument;\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = doc.head.appendChild(element('style')).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error('Function called outside component initialization');\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\nfunction hasContext(key) {\n return get_current_component().$$.context.has(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n callbacks.slice().forEach(fn => fn(event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n set_current_component(null);\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = program.b - t;\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program || pending_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n info.blocks[i] = null;\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n if (!info.hasCatch) {\n throw error;\n }\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next);\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error('Cannot have duplicate keys in a keyed each');\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += ' ' + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += ' ' + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${String(value).replace(/\"/g, '"').replace(/'/g, ''')}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, options = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, options);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : '';\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const prop_values = options.props || {};\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : []),\n // everything else\n callbacks: blank_object(),\n dirty,\n skip_bound: false\n };\n let ready = false;\n $$.ctx = instance\n ? instance(component, prop_values, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if (!$$.skip_bound && $$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor);\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n };\n}\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.30.0' }, detail)));\n}\nfunction append_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev('SvelteDOMRemove', { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });\n else\n dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev('SvelteDOMSetProperty', { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev('SvelteDOMSetDataset', { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.wholeText === data)\n return;\n dispatch_dev('SvelteDOMSetData', { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(\"'target' is a required option\");\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn('Component was already destroyed'); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error('Infinite loop detected');\n }\n };\n}\n\nexport { HtmlTag, SvelteComponent, SvelteComponentDev, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, escape, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getContext, get_binding_group_value, get_current_component, get_custom_elements_slots, get_slot_changes, get_slot_context, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, update_keyed_each, update_slot, update_slot_spread, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","/**\n * @typedef {Object} WrappedComponent Object returned by the `wrap` method\n * @property {SvelteComponent} component - Component to load (this is always asynchronous)\n * @property {RoutePrecondition[]} [conditions] - Route pre-conditions to validate\n * @property {Object} [props] - Optional dictionary of static props\n * @property {Object} [userData] - Optional user data dictionary\n * @property {bool} _sveltesparouter - Internal flag; always set to true\n */\n\n/**\n * @callback AsyncSvelteComponent\n * @returns {Promise} Returns a Promise that resolves with a Svelte component\n */\n\n/**\n * @callback RoutePrecondition\n * @param {RouteDetail} detail - Route detail object\n * @returns {boolean|Promise} If the callback returns a false-y value, it's interpreted as the precondition failed, so it aborts loading the component (and won't process other pre-condition callbacks)\n */\n\n/**\n * @typedef {Object} WrapOptions Options object for the call to `wrap`\n * @property {SvelteComponent} [component] - Svelte component to load (this is incompatible with `asyncComponent`)\n * @property {AsyncSvelteComponent} [asyncComponent] - Function that returns a Promise that fulfills with a Svelte component (e.g. `{asyncComponent: () => import('Foo.svelte')}`)\n * @property {SvelteComponent} [loadingComponent] - Svelte component to be displayed while the async route is loading (as a placeholder); when unset or false-y, no component is shown while component\n * @property {object} [loadingParams] - Optional dictionary passed to the `loadingComponent` component as params (for an exported prop called `params`)\n * @property {object} [userData] - Optional object that will be passed to events such as `routeLoading`, `routeLoaded`, `conditionsFailed`\n * @property {object} [props] - Optional key-value dictionary of static props that will be passed to the component. The props are expanded with {...props}, so the key in the dictionary becomes the name of the prop.\n * @property {RoutePrecondition[]|RoutePrecondition} [conditions] - Route pre-conditions to add, which will be executed in order\n */\n\n/**\n * Wraps a component to enable multiple capabilities:\n * 1. Using dynamically-imported component, with (e.g. `{asyncComponent: () => import('Foo.svelte')}`), which also allows bundlers to do code-splitting.\n * 2. Adding route pre-conditions (e.g. `{conditions: [...]}`)\n * 3. Adding static props that are passed to the component\n * 4. Adding custom userData, which is passed to route events (e.g. route loaded events) or to route pre-conditions (e.g. `{userData: {foo: 'bar}}`)\n * \n * @param {WrapOptions} args - Arguments object\n * @returns {WrappedComponent} Wrapped component\n */\nexport function wrap(args) {\n if (!args) {\n throw Error('Parameter args is required')\n }\n\n // We need to have one and only one of component and asyncComponent\n // This does a \"XNOR\"\n if (!args.component == !args.asyncComponent) {\n throw Error('One and only one of component and asyncComponent is required')\n }\n\n // If the component is not async, wrap it into a function returning a Promise\n if (args.component) {\n args.asyncComponent = () => Promise.resolve(args.component)\n }\n\n // Parameter asyncComponent and each item of conditions must be functions\n if (typeof args.asyncComponent != 'function') {\n throw Error('Parameter asyncComponent must be a function')\n }\n if (args.conditions) {\n // Ensure it's an array\n if (!Array.isArray(args.conditions)) {\n args.conditions = [args.conditions]\n }\n for (let i = 0; i < args.conditions.length; i++) {\n if (!args.conditions[i] || typeof args.conditions[i] != 'function') {\n throw Error('Invalid parameter conditions[' + i + ']')\n }\n }\n }\n\n // Check if we have a placeholder component\n if (args.loadingComponent) {\n args.asyncComponent.loading = args.loadingComponent\n args.asyncComponent.loadingParams = args.loadingParams || undefined\n }\n\n // Returns an object that contains all the functions to execute too\n // The _sveltesparouter flag is to confirm the object was created by this router\n const obj = {\n component: args.asyncComponent,\n userData: args.userData,\n conditions: (args.conditions && args.conditions.length) ? args.conditions : undefined,\n props: (args.props && Object.keys(args.props).length) ? args.props : {},\n _sveltesparouter: true\n }\n\n return obj\n}\n\nexport default wrap\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';\nexport { get_store_value as get } from '../internal/index.mjs';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = [];\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (let i = 0; i < subscribers.length; i += 1) {\n const s = subscribers[i];\n s[1]();\n subscriber_queue.push(s, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.push(subscriber);\n if (subscribers.length === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n const index = subscribers.indexOf(subscriber);\n if (index !== -1) {\n subscribers.splice(index, 1);\n }\n if (subscribers.length === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","export default function (str, loose) {\n\tif (str instanceof RegExp) return { keys:false, pattern:str };\n\tvar c, o, tmp, ext, keys=[], pattern='', arr = str.split('/');\n\tarr[0] || arr.shift();\n\n\twhile (tmp = arr.shift()) {\n\t\tc = tmp[0];\n\t\tif (c === '*') {\n\t\t\tkeys.push('wild');\n\t\t\tpattern += '/(.*)';\n\t\t} else if (c === ':') {\n\t\t\to = tmp.indexOf('?', 1);\n\t\t\text = tmp.indexOf('.', 1);\n\t\t\tkeys.push( tmp.substring(1, !!~o ? o : !!~ext ? ext : tmp.length) );\n\t\t\tpattern += !!~o && !~ext ? '(?:/([^/]+?))?' : '/([^/]+?)';\n\t\t\tif (!!~ext) pattern += (!!~o ? '?' : '') + '\\\\' + tmp.substring(ext);\n\t\t} else {\n\t\t\tpattern += '/' + tmp;\n\t\t}\n\t}\n\n\treturn {\n\t\tkeys: keys,\n\t\tpattern: new RegExp('^' + pattern + (loose ? '(?=$|\\/)' : '\\/?$'), 'i')\n\t};\n}\n","\n\n{#if componentParams}\n \n{:else}\n \n{/if}\n\n\n","\n\n\n\n\n \n \n\n\n","\n\n\n\n\n\n
\n \n
\n
\n \n
\n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Stats Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n
\n
\n","\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Zed's\n
\n\n \n

\n zedshaw \n

\n\n

\n 280 posts 4,695 followers 1,778 following\n

\n\n

Zed A. Shaw

\n

Painter in oil, watercolor, and pastel. I’m doing live streams of little paintings on Twitch:
\n www.twitch.tv/zedashaw\n

\n
\n
\n\n \n {#each pins as pin}\n
\n \"Stock\n
\n {/each}\n
\n
\n","\n\n\n\n

A Compendium of Layout Demos

\n\n\n\n
push('/demos/google') }>\n \n
Google
\n
\n\n
push('/demos/twitter') }>\n \n
Twitter
\n
\n\n
push('/demos/login') }>\n \n
Basic Login
\n
\n\n
push('/demos/youtube') }>\n \n
Youtube
\n
\n\n
push('/demos/instagram') }>\n \n
Instagram
\n
\n\n
push('/demos/pinterest') }>\n \n
Pinterest
\n
\n
\n\n","\n/* **********************************************\n Begin prism-core.js\n********************************************** */\n\n/// \n\nvar _self = (typeof window !== 'undefined')\n\t? window // if in browser\n\t: (\n\t\t(typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope)\n\t\t? self // if in worker\n\t\t: {} // if in node js\n\t);\n\n/**\n * Prism: Lightweight, robust, elegant syntax highlighting\n *\n * @license MIT \n * @author Lea Verou \n * @namespace\n * @public\n */\nvar Prism = (function (_self){\n\n// Private helper vars\nvar lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\nvar uniqueId = 0;\n\n\nvar _ = {\n\t/**\n\t * By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the\n\t * current page after the page finished loading. This might be a problem if e.g. you wanted to asynchronously load\n\t * additional languages or plugins yourself.\n\t *\n\t * By setting this value to `true`, Prism will not automatically highlight all code elements on the page.\n\t *\n\t * You obviously have to change this value before the automatic highlighting started. To do this, you can add an\n\t * empty Prism object into the global scope before loading the Prism script like this:\n\t *\n\t * ```js\n\t * window.Prism = window.Prism || {};\n\t * Prism.manual = true;\n\t * // add a new \n\n\n\n\n \n

CSS

\n
\n      \n    {css_code}\n      \n    
\n
\n\n \n

HTML

\n
\n      \n    {html_code}\n      \n    
\n
\n
\n","\n\n\n\n\n\n \n \n

# Explore

\n

Settings

\n
\n\n \n
\n \n
\n\n \n
\n \n
\n\n
\n \n \n
\n
\n\n \n

Zed A. Shaw, Writer

\n

@lzsthw

\n

The author of The Hard Way Series published by Addison/Wesley including Learn Python The Hard Way and many more. Follow me here for coding tips and book news.

\n

Some Place, KY learnjsthehardway.org Joined Jan, 1999.

\n

167 Following 10.4k Followers

\n
\n\n
\n\n \n {#each tweets as tweet}\n \n
\n \"Stock\n
\n \n

Zed A. Shaw, Writer

\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam:
\n\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

\n \n 2\n 1\n 12\n \n \n
\n \n
\n {/each}\n
\n
\n\n \n \n\n
\n \n\n \n\n \n\n \n
\n
\n
\n\n\n","\n\n\n\n\n\n
\n \n
\n
\n \n
\n \n \n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Stats Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n
\n \n \n\n \n Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur\n \n \n
\n\n \n \n\n {#each cards as card}\n \n \n \n

Guys

\n

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque

\n \n View replies\n
\n
\n {/each}\n
\n
\n\n \n {#each cards as card}\n \n \n \n

Video Thumb Title

\n Zed\n 1.1M views\n 2 years ago\n
\n
\n {/each}\n\n
\n \n \n \n
\n\n {#each cards as card}\n \n \n \n

Video Thumb Title

\n Zed\n 1.1M views\n 2 years ago\n
\n
\n {/each}\n
\n
\n
\n\n\n","\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Zed's\n
\n\n \n

\n zedshaw \n

\n\n

\n 280 posts 4,695 followers 1,778 following\n

\n\n

Zed A. Shaw

\n

Painter in oil, watercolor, and pastel. I’m doing live streams of little paintings on Twitch:
\n www.twitch.tv/zedashaw\n

\n
\n
\n\n \n {#each pins as pin}\n
\n \"Stock\n
\n {/each}\n
\n\n \n \n \n\n \n {#each posts as post}\n
\n \"Stock\n
\n {/each}\n
\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n\n {#if !thumbnail}\n \n \n

Vincent van Gogh

\n

Collection by A Person

\n

420 Pins • 3.59k Followers

\n

\"I dream my painting and I paint my dream.\" ~ Vincent van Gogh\n \n\n

\n \"Zed's\n
\n
\n\n \n {#each lanes as lane}\n \n {#each random_sample(pin_sizes, 10) as height}\n
\n \"Zed's\n
Something about Van Gogh {height} high.
\n
\n {/each}\n
\n {/each}\n
\n {/if}\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Module\n
\n\n \n

\n \n

\n\n

\n 10 videos 4,695 followers\n

\n\n

Drawing Level 1

\n

The first module you should take. It covers the basics of drawing and how to get started\n making drawing a habit.\n

\n
\n
\n\n \n {#each related as pin}\n
\n \"Stock\n
\n {/each}\n
\n\n \n {#each posts as post}\n
\n \n \"Placeholder\"\n \n
\n {/each}\n
\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n
\n
\n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Likes Other Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n \n \n \n\n \n Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur\n \n \n
\n\n \n \n\n {#each cards as card}\n \n \n \n

Guys

\n

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque

\n \n View replies\n
\n
\n {/each}\n
\n
\n
\n
\n\n\n","import Home from \"./Home.svelte\";\nimport Demos from \"./demos/index.svelte\";\nimport About from \"./About.svelte\";\nimport NotFound from \"./NotFound.svelte\";\nimport Google from \"./demos/Google.svelte\";\nimport Twitter from \"./demos/Twitter.svelte\";\nimport Youtube from \"./demos/Youtube.svelte\";\nimport Instagram from \"./demos/Instagram.svelte\";\nimport Pinterest from \"./demos/Pinterest.svelte\";\nimport XorAcademy from \"./demos/XorAcademy.svelte\";\nimport XorAcademyWatch from \"./demos/XorAcademyWatch.svelte\";\nimport Login from \"./demos/Login.svelte\";\n\nexport default {\n \"/\": Home,\n \"/about\": About,\n \"/demos\": Demos,\n \"/demos/login\": Login,\n \"/demos/google\": Google,\n \"/demos/twitter\": Twitter,\n \"/demos/youtube\": Youtube,\n \"/demos/instagram\": Instagram,\n \"/demos/pinterest\": Pinterest,\n \"/demos/xoracademy\": XorAcademy,\n \"/demos/xoracademy/watch\": XorAcademyWatch,\n \"*\": NotFound,\n}\n","\n\n{#if theme == 'dark'}\n toggle() }>\n \n \n{:else}\n toggle() }>\n \n \n{/if}\n\n","\n\n\n LJSTHW Starter Template\n\n\n\n\n
\n \n
\n\n
\n \n
\n\n
\n\n","import App from './App.svelte';\n\nconst app = new App({\n\ttarget: document.body,\n\tprops: {\n\t\tname: 'world'\n\t}\n});\n\nexport default app;"],"names":["wrap","_wrap","global","Prism","Login","Google","Twitter","Youtube","Instagram","Pinterest"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SCPjC,KAAK,IAAI,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BCwGb,GAAI;;;;oCAAT,MAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAvGF,IAAI,IAAI,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"} \ No newline at end of file +{"version":3,"file":"bundle.js","sources":["../../node_modules/svelte/internal/index.mjs","../../node_modules/svelte-spa-router/wrap.js","../../node_modules/svelte/store/index.mjs","../../node_modules/regexparam/dist/regexparam.mjs","../../node_modules/svelte-spa-router/Router.svelte","../../src/components/Icon.svelte","../../src/thumbs/Youtube.svelte","../../src/thumbs/Instagram.svelte","../../node_modules/@cloudfour/simple-svg-placeholder/index.js","../../lib/imgholder.js","../../src/thumbs/Tiles.svelte","../../src/demos/index.svelte","../../node_modules/prismjs/prism.js","../../node_modules/prism-svelte/index.js","../../src/components/CodeView.svelte","../../src/demos/Google.svelte","../../src/demos/Twitter.svelte","../../src/demos/Youtube.svelte","../../src/demos/Instagram.svelte","../../src/demos/Pinterest.svelte","../../src/demos/XorAcademy.svelte","../../src/demos/XorAcademyWatch.svelte","../../src/demos/Tiles.svelte","../../src/demos/Cards.svelte","../../src/routes.js","../../src/components/Darkmode.svelte","../../src/App.svelte","../../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n // @ts-ignore\n for (const k in src)\n tar[k] = src[k];\n return tar;\n}\nfunction is_promise(value) {\n return value && typeof value === 'object' && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n element.__svelte_meta = {\n loc: { file, line, column, char }\n };\n}\nfunction run(fn) {\n return fn();\n}\nfunction blank_object() {\n return Object.create(null);\n}\nfunction run_all(fns) {\n fns.forEach(run);\n}\nfunction is_function(thing) {\n return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n return a != a ? b == b : a !== b;\n}\nfunction is_empty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction validate_store(store, name) {\n if (store != null && typeof store.subscribe !== 'function') {\n throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n }\n}\nfunction subscribe(store, ...callbacks) {\n if (store == null) {\n return noop;\n }\n const unsub = store.subscribe(...callbacks);\n return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\nfunction get_store_value(store) {\n let value;\n subscribe(store, _ => value = _)();\n return value;\n}\nfunction component_subscribe(component, store, callback) {\n component.$$.on_destroy.push(subscribe(store, callback));\n}\nfunction create_slot(definition, ctx, $$scope, fn) {\n if (definition) {\n const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n return definition[0](slot_ctx);\n }\n}\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n return definition[1] && fn\n ? assign($$scope.ctx.slice(), definition[1](fn(ctx)))\n : $$scope.ctx;\n}\nfunction get_slot_changes(definition, $$scope, dirty, fn) {\n if (definition[2] && fn) {\n const lets = definition[2](fn(dirty));\n if ($$scope.dirty === undefined) {\n return lets;\n }\n if (typeof lets === 'object') {\n const merged = [];\n const len = Math.max($$scope.dirty.length, lets.length);\n for (let i = 0; i < len; i += 1) {\n merged[i] = $$scope.dirty[i] | lets[i];\n }\n return merged;\n }\n return $$scope.dirty | lets;\n }\n return $$scope.dirty;\n}\nfunction update_slot(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction update_slot_spread(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_spread_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_spread_changes_fn(dirty) | get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction exclude_internal_props(props) {\n const result = {};\n for (const k in props)\n if (k[0] !== '$')\n result[k] = props[k];\n return result;\n}\nfunction compute_rest_props(props, keys) {\n const rest = {};\n keys = new Set(keys);\n for (const k in props)\n if (!keys.has(k) && k[0] !== '$')\n rest[k] = props[k];\n return rest;\n}\nfunction compute_slots(slots) {\n const result = {};\n for (const key in slots) {\n result[key] = true;\n }\n return result;\n}\nfunction once(fn) {\n let ran = false;\n return function (...args) {\n if (ran)\n return;\n ran = true;\n fn.call(this, ...args);\n };\n}\nfunction null_to_empty(value) {\n return value == null ? '' : value;\n}\nfunction set_store_value(store, ret, value = ret) {\n store.set(value);\n return ret;\n}\nconst has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nfunction action_destroyer(action_result) {\n return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n ? () => window.performance.now()\n : () => Date.now();\nlet raf = is_client ? cb => requestAnimationFrame(cb) : noop;\n// used internally for testing\nfunction set_now(fn) {\n now = fn;\n}\nfunction set_raf(fn) {\n raf = fn;\n}\n\nconst tasks = new Set();\nfunction run_tasks(now) {\n tasks.forEach(task => {\n if (!task.c(now)) {\n tasks.delete(task);\n task.f();\n }\n });\n if (tasks.size !== 0)\n raf(run_tasks);\n}\n/**\n * For testing purposes only!\n */\nfunction clear_loops() {\n tasks.clear();\n}\n/**\n * Creates a new task that runs on each raf frame\n * until it returns a falsy value or is aborted\n */\nfunction loop(callback) {\n let task;\n if (tasks.size === 0)\n raf(run_tasks);\n return {\n promise: new Promise(fulfill => {\n tasks.add(task = { c: callback, f: fulfill });\n }),\n abort() {\n tasks.delete(task);\n }\n };\n}\n\nfunction append(target, node) {\n target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n node.parentNode.removeChild(node);\n}\nfunction destroy_each(iterations, detaching) {\n for (let i = 0; i < iterations.length; i += 1) {\n if (iterations[i])\n iterations[i].d(detaching);\n }\n}\nfunction element(name) {\n return document.createElement(name);\n}\nfunction element_is(name, is) {\n return document.createElement(name, { is });\n}\nfunction object_without_properties(obj, exclude) {\n const target = {};\n for (const k in obj) {\n if (has_prop(obj, k)\n // @ts-ignore\n && exclude.indexOf(k) === -1) {\n // @ts-ignore\n target[k] = obj[k];\n }\n }\n return target;\n}\nfunction svg_element(name) {\n return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n return document.createTextNode(data);\n}\nfunction space() {\n return text(' ');\n}\nfunction empty() {\n return text('');\n}\nfunction listen(node, event, handler, options) {\n node.addEventListener(event, handler, options);\n return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n return function (event) {\n event.preventDefault();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction stop_propagation(fn) {\n return function (event) {\n event.stopPropagation();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction self(fn) {\n return function (event) {\n // @ts-ignore\n if (event.target === this)\n fn.call(this, event);\n };\n}\nfunction attr(node, attribute, value) {\n if (value == null)\n node.removeAttribute(attribute);\n else if (node.getAttribute(attribute) !== value)\n node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n // @ts-ignore\n const descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n for (const key in attributes) {\n if (attributes[key] == null) {\n node.removeAttribute(key);\n }\n else if (key === 'style') {\n node.style.cssText = attributes[key];\n }\n else if (key === '__value') {\n node.value = node[key] = attributes[key];\n }\n else if (descriptors[key] && descriptors[key].set) {\n node[key] = attributes[key];\n }\n else {\n attr(node, key, attributes[key]);\n }\n }\n}\nfunction set_svg_attributes(node, attributes) {\n for (const key in attributes) {\n attr(node, key, attributes[key]);\n }\n}\nfunction set_custom_element_data(node, prop, value) {\n if (prop in node) {\n node[prop] = value;\n }\n else {\n attr(node, prop, value);\n }\n}\nfunction xlink_attr(node, attribute, value) {\n node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group, __value, checked) {\n const value = new Set();\n for (let i = 0; i < group.length; i += 1) {\n if (group[i].checked)\n value.add(group[i].__value);\n }\n if (!checked) {\n value.delete(__value);\n }\n return Array.from(value);\n}\nfunction to_number(value) {\n return value === '' ? null : +value;\n}\nfunction time_ranges_to_array(ranges) {\n const array = [];\n for (let i = 0; i < ranges.length; i += 1) {\n array.push({ start: ranges.start(i), end: ranges.end(i) });\n }\n return array;\n}\nfunction children(element) {\n return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeName === name) {\n let j = 0;\n const remove = [];\n while (j < node.attributes.length) {\n const attribute = node.attributes[j++];\n if (!attributes[attribute.name]) {\n remove.push(attribute.name);\n }\n }\n for (let k = 0; k < remove.length; k++) {\n node.removeAttribute(remove[k]);\n }\n return nodes.splice(i, 1)[0];\n }\n }\n return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeType === 3) {\n node.data = '' + data;\n return nodes.splice(i, 1)[0];\n }\n }\n return text(data);\n}\nfunction claim_space(nodes) {\n return claim_text(nodes, ' ');\n}\nfunction set_data(text, data) {\n data = '' + data;\n if (text.wholeText !== data)\n text.data = data;\n}\nfunction set_input_value(input, value) {\n input.value = value == null ? '' : value;\n}\nfunction set_input_type(input, type) {\n try {\n input.type = type;\n }\n catch (e) {\n // do nothing\n }\n}\nfunction set_style(node, key, value, important) {\n node.style.setProperty(key, value, important ? 'important' : '');\n}\nfunction select_option(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n if (option.__value === value) {\n option.selected = true;\n return;\n }\n }\n}\nfunction select_options(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n option.selected = ~value.indexOf(option.__value);\n }\n}\nfunction select_value(select) {\n const selected_option = select.querySelector(':checked') || select.options[0];\n return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\nlet crossorigin;\nfunction is_crossorigin() {\n if (crossorigin === undefined) {\n crossorigin = false;\n try {\n if (typeof window !== 'undefined' && window.parent) {\n void window.parent.document;\n }\n }\n catch (error) {\n crossorigin = true;\n }\n }\n return crossorigin;\n}\nfunction add_resize_listener(node, fn) {\n const computed_style = getComputedStyle(node);\n const z_index = (parseInt(computed_style.zIndex) || 0) - 1;\n if (computed_style.position === 'static') {\n node.style.position = 'relative';\n }\n const iframe = element('iframe');\n iframe.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\n `overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: ${z_index};`);\n iframe.setAttribute('aria-hidden', 'true');\n iframe.tabIndex = -1;\n const crossorigin = is_crossorigin();\n let unsubscribe;\n if (crossorigin) {\n iframe.src = \"data:text/html,\";\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n if (crossorigin) {\n unsubscribe();\n }\n else if (unsubscribe && iframe.contentWindow) {\n unsubscribe();\n }\n detach(iframe);\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, false, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor(anchor = null) {\n this.a = anchor;\n this.e = this.n = null;\n }\n m(html, target, anchor = null) {\n if (!this.e) {\n this.e = element(target.nodeName);\n this.t = target;\n this.h(html);\n }\n this.i(anchor);\n }\n h(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(this.t, this.n[i], anchor);\n }\n }\n p(html) {\n this.d();\n this.h(html);\n this.i(this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\nfunction attribute_to_object(attributes) {\n const result = {};\n for (const attribute of attributes) {\n result[attribute.name] = attribute.value;\n }\n return result;\n}\nfunction get_custom_elements_slots(element) {\n const result = {};\n element.childNodes.forEach((node) => {\n result[node.slot || 'default'] = true;\n });\n return result;\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = node.ownerDocument;\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = doc.head.appendChild(element('style')).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error('Function called outside component initialization');\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\nfunction hasContext(key) {\n return get_current_component().$$.context.has(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n callbacks.slice().forEach(fn => fn(event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n set_current_component(null);\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = program.b - t;\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program || pending_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n info.blocks[i] = null;\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n if (!info.hasCatch) {\n throw error;\n }\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next);\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error('Cannot have duplicate keys in a keyed each');\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += ' ' + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += ' ' + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${String(value).replace(/\"/g, '"').replace(/'/g, ''')}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, options = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, options);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : '';\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const prop_values = options.props || {};\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : []),\n // everything else\n callbacks: blank_object(),\n dirty,\n skip_bound: false\n };\n let ready = false;\n $$.ctx = instance\n ? instance(component, prop_values, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if (!$$.skip_bound && $$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor);\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n };\n}\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.30.0' }, detail)));\n}\nfunction append_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev('SvelteDOMRemove', { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });\n else\n dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev('SvelteDOMSetProperty', { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev('SvelteDOMSetDataset', { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.wholeText === data)\n return;\n dispatch_dev('SvelteDOMSetData', { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(\"'target' is a required option\");\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn('Component was already destroyed'); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error('Infinite loop detected');\n }\n };\n}\n\nexport { HtmlTag, SvelteComponent, SvelteComponentDev, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, escape, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getContext, get_binding_group_value, get_current_component, get_custom_elements_slots, get_slot_changes, get_slot_context, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, update_keyed_each, update_slot, update_slot_spread, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","/**\n * @typedef {Object} WrappedComponent Object returned by the `wrap` method\n * @property {SvelteComponent} component - Component to load (this is always asynchronous)\n * @property {RoutePrecondition[]} [conditions] - Route pre-conditions to validate\n * @property {Object} [props] - Optional dictionary of static props\n * @property {Object} [userData] - Optional user data dictionary\n * @property {bool} _sveltesparouter - Internal flag; always set to true\n */\n\n/**\n * @callback AsyncSvelteComponent\n * @returns {Promise} Returns a Promise that resolves with a Svelte component\n */\n\n/**\n * @callback RoutePrecondition\n * @param {RouteDetail} detail - Route detail object\n * @returns {boolean|Promise} If the callback returns a false-y value, it's interpreted as the precondition failed, so it aborts loading the component (and won't process other pre-condition callbacks)\n */\n\n/**\n * @typedef {Object} WrapOptions Options object for the call to `wrap`\n * @property {SvelteComponent} [component] - Svelte component to load (this is incompatible with `asyncComponent`)\n * @property {AsyncSvelteComponent} [asyncComponent] - Function that returns a Promise that fulfills with a Svelte component (e.g. `{asyncComponent: () => import('Foo.svelte')}`)\n * @property {SvelteComponent} [loadingComponent] - Svelte component to be displayed while the async route is loading (as a placeholder); when unset or false-y, no component is shown while component\n * @property {object} [loadingParams] - Optional dictionary passed to the `loadingComponent` component as params (for an exported prop called `params`)\n * @property {object} [userData] - Optional object that will be passed to events such as `routeLoading`, `routeLoaded`, `conditionsFailed`\n * @property {object} [props] - Optional key-value dictionary of static props that will be passed to the component. The props are expanded with {...props}, so the key in the dictionary becomes the name of the prop.\n * @property {RoutePrecondition[]|RoutePrecondition} [conditions] - Route pre-conditions to add, which will be executed in order\n */\n\n/**\n * Wraps a component to enable multiple capabilities:\n * 1. Using dynamically-imported component, with (e.g. `{asyncComponent: () => import('Foo.svelte')}`), which also allows bundlers to do code-splitting.\n * 2. Adding route pre-conditions (e.g. `{conditions: [...]}`)\n * 3. Adding static props that are passed to the component\n * 4. Adding custom userData, which is passed to route events (e.g. route loaded events) or to route pre-conditions (e.g. `{userData: {foo: 'bar}}`)\n * \n * @param {WrapOptions} args - Arguments object\n * @returns {WrappedComponent} Wrapped component\n */\nexport function wrap(args) {\n if (!args) {\n throw Error('Parameter args is required')\n }\n\n // We need to have one and only one of component and asyncComponent\n // This does a \"XNOR\"\n if (!args.component == !args.asyncComponent) {\n throw Error('One and only one of component and asyncComponent is required')\n }\n\n // If the component is not async, wrap it into a function returning a Promise\n if (args.component) {\n args.asyncComponent = () => Promise.resolve(args.component)\n }\n\n // Parameter asyncComponent and each item of conditions must be functions\n if (typeof args.asyncComponent != 'function') {\n throw Error('Parameter asyncComponent must be a function')\n }\n if (args.conditions) {\n // Ensure it's an array\n if (!Array.isArray(args.conditions)) {\n args.conditions = [args.conditions]\n }\n for (let i = 0; i < args.conditions.length; i++) {\n if (!args.conditions[i] || typeof args.conditions[i] != 'function') {\n throw Error('Invalid parameter conditions[' + i + ']')\n }\n }\n }\n\n // Check if we have a placeholder component\n if (args.loadingComponent) {\n args.asyncComponent.loading = args.loadingComponent\n args.asyncComponent.loadingParams = args.loadingParams || undefined\n }\n\n // Returns an object that contains all the functions to execute too\n // The _sveltesparouter flag is to confirm the object was created by this router\n const obj = {\n component: args.asyncComponent,\n userData: args.userData,\n conditions: (args.conditions && args.conditions.length) ? args.conditions : undefined,\n props: (args.props && Object.keys(args.props).length) ? args.props : {},\n _sveltesparouter: true\n }\n\n return obj\n}\n\nexport default wrap\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';\nexport { get_store_value as get } from '../internal/index.mjs';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = [];\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (let i = 0; i < subscribers.length; i += 1) {\n const s = subscribers[i];\n s[1]();\n subscriber_queue.push(s, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.push(subscriber);\n if (subscribers.length === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n const index = subscribers.indexOf(subscriber);\n if (index !== -1) {\n subscribers.splice(index, 1);\n }\n if (subscribers.length === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","export default function (str, loose) {\n\tif (str instanceof RegExp) return { keys:false, pattern:str };\n\tvar c, o, tmp, ext, keys=[], pattern='', arr = str.split('/');\n\tarr[0] || arr.shift();\n\n\twhile (tmp = arr.shift()) {\n\t\tc = tmp[0];\n\t\tif (c === '*') {\n\t\t\tkeys.push('wild');\n\t\t\tpattern += '/(.*)';\n\t\t} else if (c === ':') {\n\t\t\to = tmp.indexOf('?', 1);\n\t\t\text = tmp.indexOf('.', 1);\n\t\t\tkeys.push( tmp.substring(1, !!~o ? o : !!~ext ? ext : tmp.length) );\n\t\t\tpattern += !!~o && !~ext ? '(?:/([^/]+?))?' : '/([^/]+?)';\n\t\t\tif (!!~ext) pattern += (!!~o ? '?' : '') + '\\\\' + tmp.substring(ext);\n\t\t} else {\n\t\t\tpattern += '/' + tmp;\n\t\t}\n\t}\n\n\treturn {\n\t\tkeys: keys,\n\t\tpattern: new RegExp('^' + pattern + (loose ? '(?=$|\\/)' : '\\/?$'), 'i')\n\t};\n}\n","\n\n{#if componentParams}\n \n{:else}\n \n{/if}\n\n\n","\n\n\n\n\n \n \n\n\n","\n\n\n\n\n\n
\n \n
\n
\n \n
\n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Stats Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n
\n
\n","\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Zed's\n
\n\n \n

\n zedshaw \n

\n\n

\n 280 posts 4,695 followers 1,778 following\n

\n\n

Zed A. Shaw

\n

Painter in oil, watercolor, and pastel. I’m doing live streams of little paintings on Twitch:
\n www.twitch.tv/zedashaw\n

\n
\n
\n\n \n {#each pins as pin}\n
\n \"Stock\n
\n {/each}\n
\n
\n","function simpleSvgPlaceholder({\n width = 300,\n height = 150,\n text = `${width}×${height}`,\n fontFamily = 'sans-serif',\n fontWeight = 'bold',\n fontSize = Math.floor(Math.min(width, height) * 0.2),\n dy = fontSize * 0.35,\n bgColor = '#ddd',\n textColor = 'rgba(0,0,0,0.5)',\n dataUri = true,\n charset = 'UTF-8'\n} = {}) {\n const str = `\n \n ${text}\n `;\n\n // Thanks to: filamentgroup/directory-encoder\n const cleaned = str\n .replace(/[\\t\\n\\r]/gim, '') // Strip newlines and tabs\n .replace(/\\s\\s+/g, ' ') // Condense multiple spaces\n .replace(/'/gim, '\\\\i'); // Normalize quotes\n\n if (dataUri) {\n const encoded = encodeURIComponent(cleaned)\n .replace(/\\(/g, '%28') // Encode brackets\n .replace(/\\)/g, '%29');\n\n return `data:image/svg+xml;charset=${charset},${encoded}`;\n }\n\n return cleaned;\n}\n\nmodule.exports = simpleSvgPlaceholder;\n","import simpleSvgPlaceholder from '@cloudfour/simple-svg-placeholder';\n\nconst defaults = {\n bgColor: '#ccc',\n textColor: '#888',\n}\n\nexport const holder = (x, y) => simpleSvgPlaceholder({...defaults, width: x, height: y});\n","\n\n\n\n \n \n \n \n\n \n

\n Tile Example\n

\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

\n
\n\n \n \n \n \n
\n
\n\n","\n\n\n\n

Full Websites

\n\n\n\n
push('/demos/google') }>\n \n
Google
\n
\n\n
push('/demos/twitter') }>\n \n
Twitter
\n
\n\n
push('/demos/youtube') }>\n \n
Youtube
\n
\n\n
push('/demos/instagram') }>\n \n
Instagram
\n
\n\n
push('/demos/pinterest') }>\n \n
Pinterest
\n
\n
\n\n
\n

Common UI Patterns

\n\n\n
push('/demos/login') }>\n \n
Basic Login
\n
\n\n\n
push('/demos/tiles') }>\n \n
Tiles
\n
\n
\n","\n/* **********************************************\n Begin prism-core.js\n********************************************** */\n\n/// \n\nvar _self = (typeof window !== 'undefined')\n\t? window // if in browser\n\t: (\n\t\t(typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope)\n\t\t? self // if in worker\n\t\t: {} // if in node js\n\t);\n\n/**\n * Prism: Lightweight, robust, elegant syntax highlighting\n *\n * @license MIT \n * @author Lea Verou \n * @namespace\n * @public\n */\nvar Prism = (function (_self){\n\n// Private helper vars\nvar lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\nvar uniqueId = 0;\n\n\nvar _ = {\n\t/**\n\t * By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the\n\t * current page after the page finished loading. This might be a problem if e.g. you wanted to asynchronously load\n\t * additional languages or plugins yourself.\n\t *\n\t * By setting this value to `true`, Prism will not automatically highlight all code elements on the page.\n\t *\n\t * You obviously have to change this value before the automatic highlighting started. To do this, you can add an\n\t * empty Prism object into the global scope before loading the Prism script like this:\n\t *\n\t * ```js\n\t * window.Prism = window.Prism || {};\n\t * Prism.manual = true;\n\t * // add a new \n\n\n\n\n \n

CSS

\n
\n      \n    {css_code}\n      \n    
\n
\n\n \n

HTML

\n
\n      \n    {html_code}\n      \n    
\n
\n
\n","\n\n\n\n\n\n\n
\n \n
\n\n
\n \n \n \n
\n\n \n \n \n \n \n \n \n\n
\n\n\n","\n\n\n\n\n\n \n \n

# Explore

\n

Settings

\n
\n\n \n
\n \n
\n\n \n
\n \n
\n\n
\n \n \n
\n
\n\n \n

Zed A. Shaw, Writer

\n

@lzsthw

\n

The author of The Hard Way Series published by Addison/Wesley including Learn Python The Hard Way and many more. Follow me here for coding tips and book news.

\n

Some Place, KY learnjsthehardway.org Joined Jan, 1999.

\n

167 Following 10.4k Followers

\n
\n\n
\n\n \n {#each tweets as tweet}\n \n
\n \"Stock\n
\n \n

Zed A. Shaw, Writer

\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam:
\n\n quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

\n \n 2\n 1\n 12\n \n \n
\n \n
\n {/each}\n
\n
\n\n \n \n\n
\n \n\n \n\n \n\n \n
\n
\n
\n\n\n","\n\n\n\n\n\n
\n \n
\n
\n \n
\n \n \n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Stats Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n
\n \n \n\n \n Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur\n \n \n
\n\n \n \n\n {#each cards as card}\n \n \n \n

Guys

\n

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque

\n \n View replies\n
\n
\n {/each}\n
\n
\n\n \n {#each cards as card}\n \n \n \n

Video Thumb Title

\n Zed\n 1.1M views\n 2 years ago\n
\n
\n {/each}\n\n
\n \n \n \n
\n\n {#each cards as card}\n \n \n \n

Video Thumb Title

\n Zed\n 1.1M views\n 2 years ago\n
\n
\n {/each}\n
\n
\n
\n\n\n","\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Zed's\n
\n\n \n

\n zedshaw \n

\n\n

\n 280 posts 4,695 followers 1,778 following\n

\n\n

Zed A. Shaw

\n

Painter in oil, watercolor, and pastel. I’m doing live streams of little paintings on Twitch:
\n www.twitch.tv/zedashaw\n

\n
\n
\n\n \n {#each pins as pin}\n
\n \"Stock\n
\n {/each}\n
\n\n \n \n \n\n \n {#each posts as post}\n
\n \"Stock\n
\n {/each}\n
\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n\n {#if !thumbnail}\n \n \n

Vincent van Gogh

\n

Collection by A Person

\n

420 Pins • 3.59k Followers

\n

\"I dream my painting and I paint my dream.\" ~ Vincent van Gogh\n \n\n

\n \"Zed's\n
\n
\n\n \n {#each lanes as lane}\n \n {#each random_sample(pin_sizes, 10) as height}\n
\n \"Van\n
Something about Van Gogh {height} high.
\n
\n {/each}\n
\n {/each}\n
\n {/if}\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n\n \n
\n \"Module\n
\n\n \n

\n \n

\n\n

\n 10 videos 4,695 followers\n

\n\n

Drawing Level 1

\n

The first module you should take. It covers the basics of drawing and how to get started\n making drawing a habit.\n

\n
\n
\n\n \n {#each related as pin}\n
\n \"Stock\n
\n {/each}\n
\n\n \n {#each posts as post}\n
\n \n \"Placeholder\"\n \n
\n {/each}\n
\n
\n\n\n","\n\n\n\n\n\n\n
\n \n
\n
\n
\n \n
\n #tag #anothertag\n

Title And Stuff

\n \n Likes Other Stats\n \n 1.1K\n 22\n SHARE\n SAVE\n \n \n \n
\n
\n \n \n \n\n \n Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur\n \n \n
\n\n \n \n\n {#each cards as card}\n \n \n \n

Guys

\n

Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque

\n \n View replies\n
\n
\n {/each}\n
\n
\n
\n
\n\n\n","\n\n\n\n \n \n \n \n\n \n

\n Tile Example\n

\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

\n
\n\n \n \n \n \n
\n
\n\n\n","\n\n\n\n \n \n \n \n\n \n

\n Card Example\n

\n

Lorem ipsum dolor sit amet, consectetur\n adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

\n
\n\n \n \n \n \n
\n
\n\n\n","import Home from \"./Home.svelte\";\nimport Demos from \"./demos/index.svelte\";\nimport About from \"./About.svelte\";\nimport NotFound from \"./NotFound.svelte\";\nimport Google from \"./demos/Google.svelte\";\nimport Twitter from \"./demos/Twitter.svelte\";\nimport Youtube from \"./demos/Youtube.svelte\";\nimport Instagram from \"./demos/Instagram.svelte\";\nimport Pinterest from \"./demos/Pinterest.svelte\";\nimport XorAcademy from \"./demos/XorAcademy.svelte\";\nimport XorAcademyWatch from \"./demos/XorAcademyWatch.svelte\";\nimport Login from \"./demos/Login.svelte\";\nimport Tiles from \"./demos/Tiles.svelte\";\nimport Cards from \"./demos/Cards.svelte\";\n\nexport default {\n \"/\": Home,\n \"/about\": About,\n \"/demos\": Demos,\n \"/demos/login\": Login,\n \"/demos/tiles\": Tiles,\n \"/demos/cards\": Cards,\n \"/demos/google\": Google,\n \"/demos/twitter\": Twitter,\n \"/demos/youtube\": Youtube,\n \"/demos/instagram\": Instagram,\n \"/demos/pinterest\": Pinterest,\n \"/demos/xoracademy\": XorAcademy,\n \"/demos/xoracademy/watch\": XorAcademyWatch,\n \"*\": NotFound,\n}\n","\n\n{#if theme == 'dark'}\n toggle() }>\n \n \n{:else}\n toggle() }>\n \n \n{/if}\n\n","\n\n\n\n
\n \n
\n\n
\n \n
\n\n
\n\n","import App from './App.svelte';\n\nconst app = new App({\n\ttarget: document.body,\n\tprops: {\n\t\tname: 'world'\n\t}\n});\n\nexport default app;"],"names":["wrap","_wrap","simpleSvgPlaceholder","global","Prism","Login","Tiles","Google","Twitter","Youtube","Instagram","Pinterest"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SCPjC,KAAK,IAAI,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BCwGb,GAAI;;;;oCAAT,MAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAvGF,IAAI,IAAI,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"} \ No newline at end of file diff --git a/public/code/Cards.css b/public/code/Cards.css new file mode 100644 index 0000000..8249f19 --- /dev/null +++ b/public/code/Cards.css @@ -0,0 +1,38 @@ +content { + display: flex; + flex: flex-shrink; + flex-grow: 1; + justify-content: center; +} + +card { + display: flex; + flex-direction: column; + border: 1px solid #eee; + width: min-content; +} + +card top img { + padding: 0; + margin: 0; +} + +card middle { + padding-left: 0.5rem; + padding-right: 0.5rem; + display: flex; + flex-direction: column; + justify-content: flex-start; +} + +card middle h4 { + margin: 0; +} + +card bottom { + flex-shrink: 0; +} + +card bottom button { + padding: 0.2rem; +} diff --git a/public/code/Cards.html b/public/code/Cards.html new file mode 100644 index 0000000..bc42c38 --- /dev/null +++ b/public/code/Cards.html @@ -0,0 +1,20 @@ + + + + + + + +

+ Card Example +

+

Lorem ipsum dolor sit amet, consectetur + adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
diff --git a/public/code/Tiles.css b/public/code/Tiles.css new file mode 100644 index 0000000..c6e74fa --- /dev/null +++ b/public/code/Tiles.css @@ -0,0 +1,36 @@ +content { + display: flex; + flex: flex-shrink; + flex-grow: 1; + justify-content: center; +} + +tile { + padding: 0.5rem; + display: flex; + flex-direction: row; + border: 1px solid #eee; + max-width: 50vh; /* only for this display, I'd remove this. */ +} + +tile middle { + padding-left: 0.5rem; + padding-right: 0.5rem; + display: flex; + flex-direction: column; + justify-content: flex-start; + flex-shrink: 3; +} + +tile middle h4 { + margin-top: 0; + margin-bottom: 0; +} + +tile right { + flex-shrink: 0; +} + +tile right button { + padding: 0.2rem; +} diff --git a/public/code/Tiles.html b/public/code/Tiles.html new file mode 100644 index 0000000..5bc8522 --- /dev/null +++ b/public/code/Tiles.html @@ -0,0 +1,20 @@ + + + + + + + +

+ Tile Example +

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
+ diff --git a/src/App.svelte b/src/App.svelte index b050a50..7574946 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -6,10 +6,6 @@ import Darkmode from './components/Darkmode.svelte'; - - LJSTHW Starter Template - - + + + + + + + + +

+ Card Example +

+

Lorem ipsum dolor sit amet, consectetur + adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
+ + diff --git a/src/demos/Google.svelte b/src/demos/Google.svelte index 3c8f9fc..c3f81ae 100644 --- a/src/demos/Google.svelte +++ b/src/demos/Google.svelte @@ -2,6 +2,7 @@ import { link } from 'svelte-spa-router'; import Icon from '../components/Icon.svelte'; import CodeView from '../components/CodeView.svelte'; + import { holder } from '../../lib/imgholder.js'; + + + + + + + + +

+ Tile Example +

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
+ + diff --git a/src/demos/Twitter.svelte b/src/demos/Twitter.svelte index efc8b97..8a05134 100644 --- a/src/demos/Twitter.svelte +++ b/src/demos/Twitter.svelte @@ -4,6 +4,7 @@ import { onMount } from 'svelte'; let tweets = [1,2,3,4,5]; import CodeView from '../components/CodeView.svelte'; + import { holder } from '../../lib/imgholder.js'; -

A Compendium of Layout Demos

+

Full Websites

@@ -59,11 +61,6 @@
Twitter
-
push('/demos/login') }> - -
Basic Login
-
-
push('/demos/youtube') }>
Youtube
@@ -80,3 +77,18 @@
+
+

Common UI Patterns

+ + +
push('/demos/login') }> + +
Basic Login
+
+ + +
push('/demos/tiles') }> + +
Tiles
+
+
diff --git a/src/routes.js b/src/routes.js index c65f0b1..13a72ab 100644 --- a/src/routes.js +++ b/src/routes.js @@ -10,12 +10,16 @@ import Pinterest from "./demos/Pinterest.svelte"; import XorAcademy from "./demos/XorAcademy.svelte"; import XorAcademyWatch from "./demos/XorAcademyWatch.svelte"; import Login from "./demos/Login.svelte"; +import Tiles from "./demos/Tiles.svelte"; +import Cards from "./demos/Cards.svelte"; export default { "/": Home, "/about": About, "/demos": Demos, "/demos/login": Login, + "/demos/tiles": Tiles, + "/demos/cards": Cards, "/demos/google": Google, "/demos/twitter": Twitter, "/demos/youtube": Youtube, diff --git a/src/thumbs/Cards.svelte b/src/thumbs/Cards.svelte new file mode 100644 index 0000000..91b2159 --- /dev/null +++ b/src/thumbs/Cards.svelte @@ -0,0 +1,68 @@ + + + + + + + + + + +

+ Card Example +

+

Lorem ipsum dolor sit amet, consectetur + adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
+ diff --git a/src/thumbs/Google.svelte b/src/thumbs/Google.svelte index d4534ee..d087b43 100644 --- a/src/thumbs/Google.svelte +++ b/src/thumbs/Google.svelte @@ -86,7 +86,7 @@
- +
diff --git a/src/thumbs/Instagram.svelte b/src/thumbs/Instagram.svelte index 6f84f5c..896c7ba 100644 --- a/src/thumbs/Instagram.svelte +++ b/src/thumbs/Instagram.svelte @@ -85,7 +85,7 @@
- Zed's Face + Zed's Face
@@ -107,7 +107,7 @@ {#each pins as pin}
- Stock photo + Stock photo
{/each}
diff --git a/src/thumbs/Pinterest.svelte b/src/thumbs/Pinterest.svelte index 8b3b962..e87401a 100644 --- a/src/thumbs/Pinterest.svelte +++ b/src/thumbs/Pinterest.svelte @@ -120,7 +120,7 @@
- Zed's Face + Zed's Face
diff --git a/src/thumbs/Tiles.svelte b/src/thumbs/Tiles.svelte new file mode 100644 index 0000000..22f9a36 --- /dev/null +++ b/src/thumbs/Tiles.svelte @@ -0,0 +1,63 @@ + + + + + + + + + + +

+ Tile Example +

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

+
+ + + + + +
+
+ diff --git a/src/thumbs/Youtube.svelte b/src/thumbs/Youtube.svelte index 6fb72c8..435bb19 100644 --- a/src/thumbs/Youtube.svelte +++ b/src/thumbs/Youtube.svelte @@ -90,7 +90,7 @@
- +
#tag #anothertag

Title And Stuff