diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..818d649bf21cdef29b21f885c8f770f9baa1714e --- /dev/null +++ b/.gitattributes @@ -0,0 +1,31 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..41390fe369cac2a131d219c42d69bf3f6d18eff3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock +venv/ +__pycache__/ +flagged/ +data +data.db +data.json diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..34d7d7f88f075b5ab419d5151852ac82ac7cdcac --- /dev/null +++ b/Makefile @@ -0,0 +1,11 @@ +build-client: + cd frontend && npm install && PUBLIC_DEV_MODE=PROD npm run build && rm -rf ../static && cp -r build/ ../static/ +build-dev: + cd frontend && npm install && PUBLIC_DEV_MODE=DEV npm run build-dev && rm -rf ../static && cp -r build/ ../static/ +run-front-dev: + cd frontend && npm install && PUBLIC_DEV_MODE=DEV npm run dev +run-dev: + rm -rf .data/ && FLASK_ENV=development python app.py +run-prod: + python app.py +build-all: run-prod \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..aebcdaa6f318ba45850b766e2887eef1a9504b2c --- /dev/null +++ b/README.md @@ -0,0 +1,13 @@ +--- +title: Sd Color Palette Generator +emoji: 📖🎨⚙️ +colorFrom: yellow +colorTo: gray +sdk: gradio +sdk_version: 3.3 +app_file: run.py +fullWidth: true +pinned: false +--- + +Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference diff --git a/app.py b/app.py new file mode 100644 index 0000000000000000000000000000000000000000..a6c9051b403a7bc6365fe57b44ee6061fdc0621e --- /dev/null +++ b/app.py @@ -0,0 +1,38 @@ +import os +from pathlib import Path +import json +from flask import Flask, request, jsonify, g +from flask_expects_json import expects_json +from flask_cors import CORS +from PIL import Image +from huggingface_hub import Repository +from flask_apscheduler import APScheduler +import shutil +import sqlite3 +import subprocess +from jsonschema import ValidationError + +MODE = os.environ.get('FLASK_ENV', 'production') +IS_DEV = MODE == 'development' +app = Flask(__name__, static_url_path='/static') +app.config['JSONIFY_PRETTYPRINT_REGULAR'] = False + +CORS(app) + +TOKEN = os.environ.get('HUGGING_FACE_HUB_TOKEN') + +@app.route('/') +def index(): + return app.send_static_file('index.html') + +if __name__ == '__main__': + # if not IS_DEV: + # print("Starting scheduler -- Running Production") + # scheduler = APScheduler() + # scheduler.add_job(id='Update Dataset Repository', + # func=update_repository, trigger='interval', hours=1) + # scheduler.start() + # else: + # print("Not Starting scheduler -- Running Development") + app.run(host='0.0.0.0', port=int( + os.environ.get('PORT', 7860)), debug=True, use_reloader=IS_DEV) diff --git a/frontend/.eslintignore b/frontend/.eslintignore new file mode 100644 index 0000000000000000000000000000000000000000..38972655faff07d2cc0383044bbf9f43b22c2248 --- /dev/null +++ b/frontend/.eslintignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/frontend/.eslintrc.cjs b/frontend/.eslintrc.cjs new file mode 100644 index 0000000000000000000000000000000000000000..3ccf435f02ce260ecb9b59ecfbb042c0dff1ea26 --- /dev/null +++ b/frontend/.eslintrc.cjs @@ -0,0 +1,20 @@ +module.exports = { + root: true, + parser: '@typescript-eslint/parser', + extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], + plugins: ['svelte3', '@typescript-eslint'], + ignorePatterns: ['*.cjs'], + overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }], + settings: { + 'svelte3/typescript': () => require('typescript') + }, + parserOptions: { + sourceType: 'module', + ecmaVersion: 2020 + }, + env: { + browser: true, + es2017: true, + node: true + } +}; diff --git a/frontend/.gitignore b/frontend/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..c24b60bf42cdf67f4d227ea610bae07f26d74b49 --- /dev/null +++ b/frontend/.gitignore @@ -0,0 +1,12 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example +.vercel +.output +venv/ +__pycache__/ \ No newline at end of file diff --git a/frontend/.npmrc b/frontend/.npmrc new file mode 100644 index 0000000000000000000000000000000000000000..b6f27f135954640c8cc5bfd7b8c9922ca6eb2aad --- /dev/null +++ b/frontend/.npmrc @@ -0,0 +1 @@ +engine-strict=true diff --git a/frontend/.prettierignore b/frontend/.prettierignore new file mode 100644 index 0000000000000000000000000000000000000000..38972655faff07d2cc0383044bbf9f43b22c2248 --- /dev/null +++ b/frontend/.prettierignore @@ -0,0 +1,13 @@ +.DS_Store +node_modules +/build +/.svelte-kit +/package +.env +.env.* +!.env.example + +# Ignore files for PNPM, NPM and YARN +pnpm-lock.yaml +package-lock.json +yarn.lock diff --git a/frontend/.prettierrc b/frontend/.prettierrc new file mode 100644 index 0000000000000000000000000000000000000000..d177cd62dd136ec70ff54638f5a17be7ed277ad0 --- /dev/null +++ b/frontend/.prettierrc @@ -0,0 +1,8 @@ +{ + "useTabs": true, + "singleQuote": true, + "trailingComma": "none", + "printWidth": 100, + "pluginSearchDirs": ["."], + "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] +} diff --git a/frontend/README.md b/frontend/README.md new file mode 100644 index 0000000000000000000000000000000000000000..5c91169b0ca6508bb24301c957a9edea5abf2b01 --- /dev/null +++ b/frontend/README.md @@ -0,0 +1,38 @@ +# create-svelte + +Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte). + +## Creating a project + +If you're seeing this, you've probably already done this step. Congrats! + +```bash +# create a new project in the current directory +npm create svelte@latest + +# create a new project in my-app +npm create svelte@latest my-app +``` + +## Developing + +Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: + +```bash +npm run dev + +# or start the server and open the app in a new browser tab +npm run dev -- --open +``` + +## Building + +To create a production version of your app: + +```bash +npm run build +``` + +You can preview the production build with `npm run preview`. + +> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000000000000000000000000000000000000..d3b106169bba0d31634c44c4aeab1cfd4effc507 --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,41 @@ +{ + "name": "frontend", + "version": "0.0.1", + "scripts": { + "dev": "NODE_ENV=development vite --config vite.config.dev.ts dev", + "build-dev": "vite build --mode development", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --check . && eslint .", + "format": "prettier --write ." + }, + "devDependencies": { + "@sveltejs/adapter-static": "^1.0.0-next.43", + "@sveltejs/kit": "next", + "@tailwindcss/forms": "^0.5.3", + "@tailwindcss/line-clamp": "^0.4.2", + "@types/cookie": "^0.5.1", + "@typescript-eslint/eslint-plugin": "^5.27.0", + "@typescript-eslint/parser": "^5.27.0", + "autoprefixer": "^10.4.11", + "eslint": "^8.16.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-svelte3": "^4.0.0", + "postcss": "^8.4.16", + "prettier": "^2.6.2", + "prettier-plugin-svelte": "^2.7.0", + "svelte": "^3.46.0", + "svelte-check": "^2.7.1", + "svelte-preprocess": "^4.10.7", + "tailwindcss": "^3.1.8", + "tslib": "^2.3.1", + "typescript": "^4.7.4", + "vite": "^3.1.0" + }, + "type": "module", + "dependencies": { + "@fontsource/fira-mono": "^4.5.0" + } +} diff --git a/frontend/postcss.config.cjs b/frontend/postcss.config.cjs new file mode 100644 index 0000000000000000000000000000000000000000..33ad091d26d8a9dc95ebdf616e217d985ec215b8 --- /dev/null +++ b/frontend/postcss.config.cjs @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/frontend/src/app.css b/frontend/src/app.css new file mode 100644 index 0000000000000000000000000000000000000000..bd6213e1dfe6b0a79ce7d8b37d0d2dc70f0250bb --- /dev/null +++ b/frontend/src/app.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; \ No newline at end of file diff --git a/frontend/src/app.d.ts b/frontend/src/app.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..a7a0dde382b64c545272190b4ddb1866350d184d --- /dev/null +++ b/frontend/src/app.d.ts @@ -0,0 +1,15 @@ +// See https://kit.svelte.dev/docs/types#app +// for information about these interfaces +// and what to do when importing types + +declare global { + namespace App { + // interface Locals {} + // interface PageData {} + // interface PageError {} + // interface Platform {} + interface Window { + parentIFrame: unknown; + } + } +} diff --git a/frontend/src/app.html b/frontend/src/app.html new file mode 100644 index 0000000000000000000000000000000000000000..297a734845729e1e41885f95394198203cec83e6 --- /dev/null +++ b/frontend/src/app.html @@ -0,0 +1,13 @@ + + + + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ + diff --git a/frontend/src/lib/store.ts b/frontend/src/lib/store.ts new file mode 100644 index 0000000000000000000000000000000000000000..a07350e7b3bb62e71d7142b7542f7b56c435ac63 --- /dev/null +++ b/frontend/src/lib/store.ts @@ -0,0 +1,3 @@ +import { writable } from 'svelte/store'; +export const loadingState = writable(''); +export const isLoading = writable(false); diff --git a/frontend/src/lib/types.ts b/frontend/src/lib/types.ts new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/frontend/src/lib/utils.ts b/frontend/src/lib/utils.ts new file mode 100644 index 0000000000000000000000000000000000000000..3979d2b09c99eea1bf88c811d44292e0cd31c676 --- /dev/null +++ b/frontend/src/lib/utils.ts @@ -0,0 +1,42 @@ +import { dev } from '$app/environment'; + +export function randomSeed() { + return BigInt(13248873089935215612 & (((1 << 63) - 1) * Math.random())); +} +export async function uploadImage(imagBlob: Blob, prompt: string): string { + // simple regex slugify string for file name + const promptSlug = slugify(prompt); + const UPLOAD_URL = dev ? 'moon/uploads' : 'https://huggingface.co/uploads'; + + const hash = crypto.randomUUID().split('-')[0]; + const fileName = `color-palette-${hash}-${promptSlug}.jpeg`; + + const file = new File([imagBlob], fileName, { type: 'image/jpeg' }); + + console.log('uploading image', file); + + const response = await fetch(UPLOAD_URL, { + method: 'POST', + headers: { + 'Content-Type': file.type, + 'X-Requested-With': 'XMLHttpRequest' + }, + body: file /// <- File inherits from Blob + }); + const url = await response.text(); + + console.log('uploaded images', url); + return url; +} + +function slugify(text: string) { + if (!text) return ''; + return text + .toString() + .toLowerCase() + .replace(/\s+/g, '-') + .replace(/[^\w\-]+/g, '') + .replace(/\-\-+/g, '-') + .replace(/^-+/, '') + .replace(/-+$/, ''); +} \ No newline at end of file diff --git a/frontend/src/routes/+layout.svelte b/frontend/src/routes/+layout.svelte new file mode 100644 index 0000000000000000000000000000000000000000..2e511e004988ec574f1b3d5406d22bb9d4f558cd --- /dev/null +++ b/frontend/src/routes/+layout.svelte @@ -0,0 +1,5 @@ + + + diff --git a/frontend/src/routes/+layout.ts b/frontend/src/routes/+layout.ts new file mode 100644 index 0000000000000000000000000000000000000000..189f71e2e1b31d4e92a0493e33539bdd5128d987 --- /dev/null +++ b/frontend/src/routes/+layout.ts @@ -0,0 +1 @@ +export const prerender = true; diff --git a/frontend/src/routes/+page.svelte b/frontend/src/routes/+page.svelte new file mode 100644 index 0000000000000000000000000000000000000000..a76d0f64d9d43c9656c64f2d16ab3f2838006100 --- /dev/null +++ b/frontend/src/routes/+page.svelte @@ -0,0 +1,41 @@ + + +
+

Stable Diffussion Outpainting Multiplayer

+

+

+
+ + +
+
+
+ + diff --git a/frontend/static/favicon.png b/frontend/static/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..825b9e65af7c104cfb07089bb28659393b4f2097 Binary files /dev/null and b/frontend/static/favicon.png differ diff --git a/frontend/static/robots.txt b/frontend/static/robots.txt new file mode 100644 index 0000000000000000000000000000000000000000..e9e57dc4d41b9b46e05112e9f45b7ea6ac0ba15e --- /dev/null +++ b/frontend/static/robots.txt @@ -0,0 +1,3 @@ +# https://www.robotstxt.org/robotstxt.html +User-agent: * +Disallow: diff --git a/frontend/svelte.config.js b/frontend/svelte.config.js new file mode 100644 index 0000000000000000000000000000000000000000..0b33eb5783441ed41968a0b18ad904ea3e179818 --- /dev/null +++ b/frontend/svelte.config.js @@ -0,0 +1,26 @@ +import adapter from '@sveltejs/adapter-static'; +import preprocess from 'svelte-preprocess'; + +const dev = process.env.NODE_ENV === 'development'; +console.log(dev) +/** @type {import('@sveltejs/kit').Config} */ +const config = { + preprocess: [ + preprocess({ + postcss: true + }) + ], + kit: { + paths: { + base: dev ? '/static' : '/embed/huggingface-projects/stable-diffusion-multiplayer/static' + }, + adapter: adapter({ + pages: 'build', + assets: 'build', + fallback: null, + precompress: false + }) + } +}; + +export default config; diff --git a/frontend/tailwind.config.cjs b/frontend/tailwind.config.cjs new file mode 100644 index 0000000000000000000000000000000000000000..8012d9571321dc60aa6943b1e5c497aeb2827309 --- /dev/null +++ b/frontend/tailwind.config.cjs @@ -0,0 +1,6 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: ['./src/**/*.{html,js,svelte,ts}'], + theme: {}, + plugins: [require('@tailwindcss/forms'), require('@tailwindcss/line-clamp')] +}; diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json new file mode 100644 index 0000000000000000000000000000000000000000..6ae0c8c44d08a78140c9c62c1b0f745edd05e804 --- /dev/null +++ b/frontend/tsconfig.json @@ -0,0 +1,17 @@ +{ + "extends": "./.svelte-kit/tsconfig.json", + "compilerOptions": { + "allowJs": true, + "checkJs": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "skipLibCheck": true, + "sourceMap": true, + "strict": true + } + // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias + // + // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes + // from the referenced tsconfig.json - TypeScript does not merge them in +} diff --git a/frontend/vite.config.dev.ts b/frontend/vite.config.dev.ts new file mode 100644 index 0000000000000000000000000000000000000000..bc127c858452aa79bccb57ff8b1b85c9a2874d04 --- /dev/null +++ b/frontend/vite.config.dev.ts @@ -0,0 +1,18 @@ +import { sveltekit } from '@sveltejs/kit/vite'; +import type { UserConfig } from 'vite'; + +const config: UserConfig = { + plugins: [sveltekit()], + server: { + proxy: { + '/moon': { + target: 'https://huggingface.co', + changeOrigin: true, + cookieDomainRewrite: 'localhost', + rewrite: (path) => path.replace(/^\/moon/, '') + } + } + } +}; + +export default config; diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts new file mode 100644 index 0000000000000000000000000000000000000000..16950342c1a41f60729f1abfcbbf67676c08e1bb --- /dev/null +++ b/frontend/vite.config.ts @@ -0,0 +1,8 @@ +import { sveltekit } from '@sveltejs/kit/vite'; +import type { UserConfig } from 'vite'; + +const config: UserConfig = { + plugins: [sveltekit()] +}; + +export default config; diff --git a/package.json b/package.json new file mode 100644 index 0000000000000000000000000000000000000000..0d4745d3380627165ed1d71ed15cfc3e6b4f23b1 --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "devDependencies": { + "@types/smoothscroll-polyfill": "^0.3.1" + } +} diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..82e30b02d4dbe71cef038a08dd0578e0fd349528 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,8 @@ +datasets +flask +flask_cors +flask_expects_json +requests +Pillow +gradio +Flask-APScheduler \ No newline at end of file diff --git a/run.py b/run.py new file mode 100644 index 0000000000000000000000000000000000000000..4383dff4c849fe1564a48f33b271ea8771ff27b7 --- /dev/null +++ b/run.py @@ -0,0 +1,3 @@ +import subprocess + +subprocess.run(["make", "build-all"], shell=False) \ No newline at end of file diff --git a/static/_app/immutable/assets/_layout-015c4ec5.css b/static/_app/immutable/assets/_layout-015c4ec5.css new file mode 100644 index 0000000000000000000000000000000000000000..d2aab84944afd7d98e2b92ea0f6e0647d288c172 --- /dev/null +++ b/static/_app/immutable/assets/_layout-015c4ec5.css @@ -0,0 +1 @@ +*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple]{background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-webkit-backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.relative{position:relative}.top-0{top:0px}.z-0{z-index:0}.z-50{z-index:50}.col-span-4{grid-column:span 4 / span 4}.col-span-2{grid-column:span 2 / span 2}.mx-auto{margin-left:auto;margin-right:auto}.ml-2{margin-left:.5rem}.grid{display:grid}.max-w-screen-md{max-width:768px}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.rounded-2xl{border-radius:1rem}.border-2{border-width:2px}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity))}.px-3{padding-left:.75rem;padding-right:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.italic{font-style:italic}.leading-normal{line-height:1.5}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.placeholder\:text-white::-moz-placeholder{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.placeholder\:text-white::placeholder{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.placeholder\:text-opacity-30::-moz-placeholder{--tw-text-opacity: .3}.placeholder\:text-opacity-30::placeholder{--tw-text-opacity: .3}.hover\:text-gray-500:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.hover\:no-underline:hover{text-decoration-line:none}.focus\:border-gray-400:focus{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:opacity-50:disabled{opacity:.5}@media (prefers-color-scheme: dark){.dark\:bg-\[rgb\(11\,15\,25\)\]{--tw-bg-opacity: 1;background-color:rgb(11 15 25 / var(--tw-bg-opacity))}.dark\:bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.dark\:bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.dark\:text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.dark\:placeholder\:text-black::-moz-placeholder{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.dark\:placeholder\:text-black::placeholder{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}.dark\:placeholder\:text-opacity-10::-moz-placeholder{--tw-text-opacity: .1}.dark\:placeholder\:text-opacity-10::placeholder{--tw-text-opacity: .1}}@media (min-width: 768px){.md\:col-span-5{grid-column:span 5 / span 5}.md\:col-span-1{grid-column:span 1 / span 1}} diff --git a/static/_app/immutable/assets/_page-85a666f5.css b/static/_app/immutable/assets/_page-85a666f5.css new file mode 100644 index 0000000000000000000000000000000000000000..a77bb5fedab6a751b4d922755961a049484af63e --- /dev/null +++ b/static/_app/immutable/assets/_page-85a666f5.css @@ -0,0 +1 @@ +.input.svelte-zbscw1{grid-column:span 4 / span 4;border-radius:1rem;border-width:2px;--tw-border-opacity:1;border-color:rgb(0 0 0 / var(--tw-border-opacity));--tw-bg-opacity:1;background-color:rgb(15 23 42 / var(--tw-bg-opacity));padding-left:.5rem;padding-right:.5rem;font-size:.875rem;line-height:1.25rem;font-style:italic;--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow:0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input.svelte-zbscw1::-moz-placeholder{color:rgb(255 255 255 / var(--tw-text-opacity));--tw-text-opacity:.3 }.input.svelte-zbscw1::placeholder{color:rgb(255 255 255 / var(--tw-text-opacity));--tw-text-opacity:.3 }.input.svelte-zbscw1:focus{--tw-border-opacity:1;border-color:rgb(156 163 175 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.input.svelte-zbscw1:disabled{opacity:.5}@media (prefers-color-scheme: dark){.input.svelte-zbscw1{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))}.input.svelte-zbscw1::-moz-placeholder{color:rgb(0 0 0 / var(--tw-text-opacity));--tw-text-opacity:.1 }.input.svelte-zbscw1::placeholder{color:rgb(0 0 0 / var(--tw-text-opacity));--tw-text-opacity:.1 }}@media (min-width: 768px){.input.svelte-zbscw1{grid-column:span 5 / span 5}}.button.svelte-zbscw1{grid-column:span 2 / span 2;margin-left:.5rem;border-radius:1rem;border-width:2px;--tw-border-opacity:1;border-color:rgb(0 0 0 / var(--tw-border-opacity));padding:.5rem;font-size:.75rem;line-height:1rem;font-weight:700;--tw-shadow:0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.button.svelte-zbscw1:focus{--tw-border-opacity:1;border-color:rgb(156 163 175 / var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px}.button.svelte-zbscw1:disabled{opacity:.5}@media (prefers-color-scheme: dark){.button.svelte-zbscw1{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))}}@media (min-width: 768px){.button.svelte-zbscw1{grid-column:span 1 / span 1}} diff --git a/static/_app/immutable/chunks/0-1abd987b.js b/static/_app/immutable/chunks/0-1abd987b.js new file mode 100644 index 0000000000000000000000000000000000000000..70f67ffda742744bb7ab591a5a2154aa243bb9aa --- /dev/null +++ b/static/_app/immutable/chunks/0-1abd987b.js @@ -0,0 +1 @@ +import{_ as r}from"./_layout-1daba58d.js";import{default as t}from"../components/pages/_layout.svelte-5787f024.js";export{t as component,r as shared}; diff --git a/static/_app/immutable/chunks/1-90e0463d.js b/static/_app/immutable/chunks/1-90e0463d.js new file mode 100644 index 0000000000000000000000000000000000000000..26ac32c2b83984344c506c26259407ab2a304829 --- /dev/null +++ b/static/_app/immutable/chunks/1-90e0463d.js @@ -0,0 +1 @@ +import{default as t}from"../components/error.svelte-faf15aa0.js";export{t as component}; diff --git a/static/_app/immutable/chunks/2-a5cb95d6.js b/static/_app/immutable/chunks/2-a5cb95d6.js new file mode 100644 index 0000000000000000000000000000000000000000..5835c1c7635feb3ea4abadc068f71981c6583f1b --- /dev/null +++ b/static/_app/immutable/chunks/2-a5cb95d6.js @@ -0,0 +1 @@ +import{default as t}from"../components/pages/_page.svelte-f8258116.js";export{t as component}; diff --git a/static/_app/immutable/chunks/_layout-1daba58d.js b/static/_app/immutable/chunks/_layout-1daba58d.js new file mode 100644 index 0000000000000000000000000000000000000000..470b827d2ea3fc294e0b8a1ff4ca645db498ef5a --- /dev/null +++ b/static/_app/immutable/chunks/_layout-1daba58d.js @@ -0,0 +1 @@ +const e=!0,r=Object.freeze(Object.defineProperty({__proto__:null,prerender:!0},Symbol.toStringTag,{value:"Module"}));export{r as _,e as p}; diff --git a/static/_app/immutable/chunks/index-4f5b2732.js b/static/_app/immutable/chunks/index-4f5b2732.js new file mode 100644 index 0000000000000000000000000000000000000000..b7a77d25e245a51d2dc32b21ad443d0b3d176d85 --- /dev/null +++ b/static/_app/immutable/chunks/index-4f5b2732.js @@ -0,0 +1 @@ +function N(){}function F(t,n){for(const e in n)t[e]=n[e];return t}function B(t){return t()}function C(){return Object.create(null)}function p(t){t.forEach(B)}function G(t){return typeof t=="function"}function ct(t,n){return t!=t?n==n:t!==n||t&&typeof t=="object"||typeof t=="function"}function H(t){return Object.keys(t).length===0}function I(t,...n){if(t==null)return N;const e=t.subscribe(...n);return e.unsubscribe?()=>e.unsubscribe():e}function lt(t,n,e){t.$$.on_destroy.push(I(n,e))}function ut(t,n,e,i){if(t){const r=T(t,n,e,i);return t[0](r)}}function T(t,n,e,i){return t[1]&&i?F(e.ctx.slice(),t[1](i(n))):e.ctx}function ot(t,n,e,i){if(t[2]&&i){const r=t[2](i(e));if(n.dirty===void 0)return r;if(typeof r=="object"){const s=[],c=Math.max(n.dirty.length,r.length);for(let o=0;o32){const n=[],e=t.ctx.length/32;for(let i=0;i>1);e(r)<=i?t=r+1:n=r}return t}function K(t){if(t.hydrate_init)return;t.hydrate_init=!0;let n=t.childNodes;if(t.nodeName==="HEAD"){const l=[];for(let u=0;u0&&n[e[r]].claim_order<=u?r+1:J(1,r,y=>n[e[y]].claim_order,u))-1;i[l]=e[a]+1;const f=a+1;e[f]=l,r=Math.max(f,r)}const s=[],c=[];let o=n.length-1;for(let l=e[r]+1;l!=0;l=i[l-1]){for(s.push(n[l-1]);o>=l;o--)c.push(n[o]);o--}for(;o>=0;o--)c.push(n[o]);s.reverse(),c.sort((l,u)=>l.claim_order-u.claim_order);for(let l=0,u=0;l=s[u].claim_order;)u++;const a=u{for(let c=t.claim_info.last_index;c=0;c--){const o=t[c];if(n(o)){const l=e(o);return l===void 0?t.splice(c,1):t[c]=l,r?l===void 0&&t.claim_info.last_index--:t.claim_info.last_index=c,o}}return i()})();return s.claim_order=t.claim_info.total_claimed,t.claim_info.total_claimed+=1,s}function Y(t,n,e,i){return O(t,r=>r.nodeName===n,r=>{const s=[];for(let c=0;cr.removeAttribute(c))},()=>i(n))}function mt(t,n,e){return Y(t,n,e,U)}function Z(t,n){return O(t,e=>e.nodeType===3,e=>{const i=""+n;if(e.data.startsWith(i)){if(e.data.length!==i.length)return e.splitText(i.length)}else e.data=i},()=>A(n),!0)}function pt(t){return Z(t," ")}function yt(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function gt(t,n,e,i){e===null?t.style.removeProperty(n):t.style.setProperty(n,e,i?"important":"")}let m;function h(t){m=t}function P(){if(!m)throw new Error("Function called outside component initialization");return m}function xt(t){P().$$.on_mount.push(t)}function bt(t){P().$$.after_update.push(t)}const _=[],k=[],x=[],M=[],q=Promise.resolve();let v=!1;function z(){v||(v=!0,q.then(D))}function $t(){return z(),q}function E(t){x.push(t)}const w=new Set;let g=0;function D(){const t=m;do{for(;g<_.length;){const n=_[g];g++,h(n),tt(n.$$)}for(h(null),_.length=0,g=0;k.length;)k.pop()();for(let n=0;n{b.delete(t),i&&(e&&t.d(1),i())}),t.o(n)}else i&&i()}function Nt(t){t&&t.c()}function At(t,n){t&&t.l(n)}function et(t,n,e,i){const{fragment:r,on_mount:s,on_destroy:c,after_update:o}=t.$$;r&&r.m(n,e),i||E(()=>{const l=s.map(B).filter(G);c?c.push(...l):p(l),t.$$.on_mount=[]}),o.forEach(E)}function it(t,n){const e=t.$$;e.fragment!==null&&(p(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}function rt(t,n){t.$$.dirty[0]===-1&&(_.push(t),z(),t.$$.dirty.fill(0)),t.$$.dirty[n/31|0]|=1<{const j=S.length?S[0]:y;return u.ctx&&r(u.ctx[f],u.ctx[f]=j)&&(!u.skip_bound&&u.bound[f]&&u.bound[f](j),a&&rt(t,f)),y}):[],u.update(),a=!0,p(u.before_update),u.fragment=i?i(u.ctx):!1,n.target){if(n.hydrate){L();const f=V(n.target);u.fragment&&u.fragment.l(f),f.forEach(R)}else u.fragment&&u.fragment.c();n.intro&&nt(t.$$.fragment),et(t,n.target,n.anchor,n.customElement),W(),D()}h(l)}class jt{$destroy(){it(this,1),this.$destroy=N}$on(n,e){const i=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return i.push(e),()=>{const r=i.indexOf(e);r!==-1&&i.splice(r,1)}}$set(n){this.$$set&&!H(n)&&(this.$$.skip_bound=!0,this.$$set(n),this.$$.skip_bound=!1)}}export{N as A,ut as B,st as C,ft as D,ot as E,Q as F,lt as G,jt as S,dt as a,at as b,pt as c,vt as d,_t as e,nt as f,wt as g,R as h,St as i,bt as j,U as k,mt as l,V as m,ht as n,xt as o,gt as p,A as q,Z as r,ct as s,Et as t,yt as u,Nt as v,At as w,et as x,it as y,$t as z}; diff --git a/static/_app/immutable/chunks/index-594200a8.js b/static/_app/immutable/chunks/index-594200a8.js new file mode 100644 index 0000000000000000000000000000000000000000..cbc3acfeee457ba3e99fcc461f60a2c5d9468935 --- /dev/null +++ b/static/_app/immutable/chunks/index-594200a8.js @@ -0,0 +1 @@ +import{A as f,s as l}from"./index-4f5b2732.js";const e=[];function h(n,u=f){let o;const i=new Set;function r(t){if(l(n,t)&&(n=t,o)){const c=!e.length;for(const s of i)s[1](),e.push(s,n);if(c){for(let s=0;s{i.delete(s),i.size===0&&(o(),o=null)}}return{set:r,update:b,subscribe:p}}export{h as w}; diff --git a/static/_app/immutable/chunks/singletons-826d93d7.js b/static/_app/immutable/chunks/singletons-826d93d7.js new file mode 100644 index 0000000000000000000000000000000000000000..455f5b97f0015de15aa214d04e676c4ff97c77a0 --- /dev/null +++ b/static/_app/immutable/chunks/singletons-826d93d7.js @@ -0,0 +1 @@ +import{w as u}from"./index-594200a8.js";let f="",b="";function g(n){f=n.base,b=n.assets||f}function m(n){let e=n.baseURI;if(!e){const t=n.getElementsByTagName("base");e=t.length?t[0].href:n.URL}return e}function _(){return{x:pageXOffset,y:pageYOffset}}function k(n){let e,t=null,r=null,a=null;for(const s of n.composedPath())s instanceof Element&&(!e&&s.nodeName.toUpperCase()==="A"&&(e=s),t===null&&(t=l(s,"data-sveltekit-noscroll")),r===null&&(r=l(s,"data-sveltekit-prefetch")),a===null&&(a=l(s,"data-sveltekit-reload")));const o=e&&new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI);return{a:e,url:o,options:{noscroll:t,prefetch:r,reload:a}}}function l(n,e){const t=n.getAttribute(e);return t===null?t:t===""?!0:(t==="off",!1)}function d(n){const e=u(n);let t=!0;function r(){t=!0,e.update(s=>s)}function a(s){t=!1,e.set(s)}function o(s){let i;return e.subscribe(c=>{(i===void 0||t&&c!==i)&&s(i=c)})}return{notify:r,set:a,subscribe:o}}function p(){const{set:n,subscribe:e}=u(!1);let t;async function r(){clearTimeout(t);const a=await fetch(`${b}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(a.ok){const{version:o}=await a.json(),s=o!=="1663894080788";return s&&(n(!0),clearTimeout(t)),s}else throw new Error(`Version check failed: ${a.status}`)}return{subscribe:e,check:r}}function v(n){n.client}const w={url:d({}),page:d({}),navigating:u(null),updated:p()};export{_ as a,g as b,k as f,m as g,v as i,w as s}; diff --git a/static/_app/immutable/components/error.svelte-faf15aa0.js b/static/_app/immutable/components/error.svelte-faf15aa0.js new file mode 100644 index 0000000000000000000000000000000000000000..210f431eeade724b490739b56d6533c95d5c3fb8 --- /dev/null +++ b/static/_app/immutable/components/error.svelte-faf15aa0.js @@ -0,0 +1 @@ +import{S as A,i as C,s as F,k as v,q as k,a as h,e as q,l as g,m as E,r as $,h as p,c as R,b as u,F as P,u as S,A as w,G}from"../chunks/index-4f5b2732.js";import{s as H}from"../chunks/singletons-826d93d7.js";const O=()=>{const t=H,s={page:{subscribe:t.page.subscribe},navigating:{subscribe:t.navigating.subscribe},updated:t.updated};return Object.defineProperties(s,{preloading:{get(){return console.error("stores.preloading is deprecated; use stores.navigating instead"),{subscribe:t.navigating.subscribe}},enumerable:!1},session:{get(){return B(),{}},enumerable:!1}}),s},z={subscribe(t){return O().page.subscribe(t)}};function B(){throw new Error("stores.session is no longer available. See https://github.com/sveltejs/kit/discussions/5883")}function N(t){let s,i=t[0].error.frame+"",o;return{c(){s=v("pre"),o=k(i)},l(r){s=g(r,"PRE",{});var a=E(s);o=$(a,i),a.forEach(p)},m(r,a){u(r,s,a),P(s,o)},p(r,a){a&1&&i!==(i=r[0].error.frame+"")&&S(o,i)},d(r){r&&p(s)}}}function y(t){let s,i=t[0].error.stack+"",o;return{c(){s=v("pre"),o=k(i)},l(r){s=g(r,"PRE",{});var a=E(s);o=$(a,i),a.forEach(p)},m(r,a){u(r,s,a),P(s,o)},p(r,a){a&1&&i!==(i=r[0].error.stack+"")&&S(o,i)},d(r){r&&p(s)}}}function D(t){let s,i=t[0].status+"",o,r,a,b=t[0].error.message+"",_,d,c,m,l=t[0].error.frame&&N(t),n=t[0].error.stack&&y(t);return{c(){s=v("h1"),o=k(i),r=h(),a=v("pre"),_=k(b),d=h(),l&&l.c(),c=h(),n&&n.c(),m=q()},l(e){s=g(e,"H1",{});var f=E(s);o=$(f,i),f.forEach(p),r=R(e),a=g(e,"PRE",{});var j=E(a);_=$(j,b),j.forEach(p),d=R(e),l&&l.l(e),c=R(e),n&&n.l(e),m=q()},m(e,f){u(e,s,f),P(s,o),u(e,r,f),u(e,a,f),P(a,_),u(e,d,f),l&&l.m(e,f),u(e,c,f),n&&n.m(e,f),u(e,m,f)},p(e,[f]){f&1&&i!==(i=e[0].status+"")&&S(o,i),f&1&&b!==(b=e[0].error.message+"")&&S(_,b),e[0].error.frame?l?l.p(e,f):(l=N(e),l.c(),l.m(c.parentNode,c)):l&&(l.d(1),l=null),e[0].error.stack?n?n.p(e,f):(n=y(e),n.c(),n.m(m.parentNode,m)):n&&(n.d(1),n=null)},i:w,o:w,d(e){e&&p(s),e&&p(r),e&&p(a),e&&p(d),l&&l.d(e),e&&p(c),n&&n.d(e),e&&p(m)}}}function I(t,s,i){let o;return G(t,z,r=>i(0,o=r)),[o]}class L extends A{constructor(s){super(),C(this,s,I,D,F,{})}}export{L as default}; diff --git a/static/_app/immutable/components/pages/_layout.svelte-5787f024.js b/static/_app/immutable/components/pages/_layout.svelte-5787f024.js new file mode 100644 index 0000000000000000000000000000000000000000..f166f597eb2b3b31392e1a56ad8ffcc86a6905c5 --- /dev/null +++ b/static/_app/immutable/components/pages/_layout.svelte-5787f024.js @@ -0,0 +1 @@ +import{S as l,i,s as r,B as u,C as f,D as _,E as c,f as p,t as d}from"../../chunks/index-4f5b2732.js";function m(n){let s;const o=n[1].default,e=u(o,n,n[0],null);return{c(){e&&e.c()},l(t){e&&e.l(t)},m(t,a){e&&e.m(t,a),s=!0},p(t,[a]){e&&e.p&&(!s||a&1)&&f(e,o,t,t[0],s?c(o,t[0],a,null):_(t[0]),null)},i(t){s||(p(e,t),s=!0)},o(t){d(e,t),s=!1},d(t){e&&e.d(t)}}}function $(n,s,o){let{$$slots:e={},$$scope:t}=s;return n.$$set=a=>{"$$scope"in a&&o(0,t=a.$$scope)},[t,e]}class h extends l{constructor(s){super(),i(this,s,$,m,r,{})}}export{h as default}; diff --git a/static/_app/immutable/components/pages/_page.svelte-f8258116.js b/static/_app/immutable/components/pages/_page.svelte-f8258116.js new file mode 100644 index 0000000000000000000000000000000000000000..b1c1e9ab85087577bfcd380e458df642e4cdf132 --- /dev/null +++ b/static/_app/immutable/components/pages/_page.svelte-f8258116.js @@ -0,0 +1 @@ +import{S as k,i as C,s as F,k as c,q as D,a as w,l as p,m,r as I,h as u,c as E,n as e,b as M,F as s,A as O,G as T}from"../../chunks/index-4f5b2732.js";import{w as $}from"../../chunks/index-594200a8.js";const q=$(!1);function A(h){let t,i,d,b,_,g,f,n,l,x,r,y;return{c(){t=c("div"),i=c("h1"),d=D("Stable Diffussion Outpainting Multiplayer"),b=w(),_=c("p"),g=w(),f=c("div"),n=c("form"),l=c("input"),x=w(),r=c("button"),y=D("Create Palette"),this.h()},l(o){t=p(o,"DIV",{class:!0});var a=m(t);i=p(a,"H1",{class:!0});var P=m(i);d=I(P,"Stable Diffussion Outpainting Multiplayer"),P.forEach(u),b=E(a),_=p(a,"P",{class:!0}),m(_).forEach(u),g=E(a),f=p(a,"DIV",{class:!0});var S=m(f);n=p(S,"FORM",{class:!0});var v=m(n);l=p(v,"INPUT",{class:!0,placeholder:!0,title:!0,type:!0,name:!0}),x=E(v),r=p(v,"BUTTON",{class:!0,title:!0});var z=m(r);y=I(z,"Create Palette"),z.forEach(u),v.forEach(u),S.forEach(u),a.forEach(u),this.h()},h(){e(i,"class","text-3xl font-bold leading-normal"),e(_,"class","text-sm"),e(l,"class","input svelte-zbscw1"),e(l,"placeholder","A photo of a beautiful sunset in San Francisco"),e(l,"title","Input prompt to generate image and obtain palette"),e(l,"type","text"),e(l,"name","prompt"),l.disabled=h[0],e(r,"class","button svelte-zbscw1"),r.disabled=h[0],e(r,"title","Generate Palette"),e(n,"class","grid grid-cols-6"),e(f,"class","relative top-0 z-50 bg-white dark:bg-black py-3"),e(t,"class","max-w-screen-md mx-auto px-3 py-8 relative z-0")},m(o,a){M(o,t,a),s(t,i),s(i,d),s(t,b),s(t,_),s(t,g),s(t,f),s(f,n),s(n,l),s(n,x),s(n,r),s(r,y)},p(o,[a]){a&1&&(l.disabled=o[0]),a&1&&(r.disabled=o[0])},i:O,o:O,d(o){o&&u(t)}}}function G(h,t,i){let d;return T(h,q,b=>i(0,d=b)),[d]}class U extends k{constructor(t){super(),C(this,t,G,A,F,{})}}export{U as default}; diff --git a/static/_app/immutable/modules/pages/_layout.ts-b8ee4d7c.js b/static/_app/immutable/modules/pages/_layout.ts-b8ee4d7c.js new file mode 100644 index 0000000000000000000000000000000000000000..bce84918a025adf81c9aa5b1fbba49f77c9044e6 --- /dev/null +++ b/static/_app/immutable/modules/pages/_layout.ts-b8ee4d7c.js @@ -0,0 +1 @@ +import{p}from"../../chunks/_layout-1daba58d.js";export{p as prerender}; diff --git a/static/_app/immutable/start-9c5e89c3.js b/static/_app/immutable/start-9c5e89c3.js new file mode 100644 index 0000000000000000000000000000000000000000..7fb30f91230433a572e00e472f2f0b976f33c368 --- /dev/null +++ b/static/_app/immutable/start-9c5e89c3.js @@ -0,0 +1 @@ +import{S as Ge,i as We,s as He,a as Me,e as z,c as Xe,b as W,g as ie,t as K,d as le,f as x,h as F,j as Ye,o as be,k as Qe,l as Ze,m as et,n as ge,p as C,q as tt,r as nt,u as rt,v as H,w as Se,x as M,y as X,z as De}from"./chunks/index-4f5b2732.js";import{g as Ce,f as qe,s as G,a as ve,b as at,i as st}from"./chunks/singletons-826d93d7.js";const ot=function(){const e=document.createElement("link").relList;return e&&e.supports&&e.supports("modulepreload")?"modulepreload":"preload"}(),it=function(r,e){return new URL(r,e).href},Ve={},se=function(e,t,c){return!t||t.length===0?e():Promise.all(t.map(o=>{if(o=it(o,c),o in Ve)return;Ve[o]=!0;const d=o.endsWith(".css"),n=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${n}`))return;const f=document.createElement("link");if(f.rel=d?"stylesheet":ot,d||(f.as="script",f.crossOrigin=""),f.href=o,document.head.appendChild(f),d)return new Promise((w,_)=>{f.addEventListener("load",w),f.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>e())};class we{constructor(e,t){this.status=e,typeof t=="string"?this.body={message:t}:t?this.body=t:this.body={message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}}class Be{constructor(e,t){this.status=e,this.location=t}}function lt(r,e){return r==="/"||e==="ignore"?r:e==="never"?r.endsWith("/")?r.slice(0,-1):r:e==="always"&&!r.endsWith("/")?r+"/":r}function ct(r){for(const e in r)r[e]=r[e].replace(/%23/g,"#").replace(/%3[Bb]/g,";").replace(/%2[Cc]/g,",").replace(/%2[Ff]/g,"/").replace(/%3[Ff]/g,"?").replace(/%3[Aa]/g,":").replace(/%40/g,"@").replace(/%26/g,"&").replace(/%3[Dd]/g,"=").replace(/%2[Bb]/g,"+").replace(/%24/g,"$");return r}const ft=["href","pathname","search","searchParams","toString","toJSON"];function ut(r,e){const t=new URL(r);for(const c of ft){let o=t[c];Object.defineProperty(t,c,{get(){return e(),o},enumerable:!0,configurable:!0})}return t[Symbol.for("nodejs.util.inspect.custom")]=(c,o,d)=>d(r,o),dt(t),t}function dt(r){Object.defineProperty(r,"hash",{get(){throw new Error("Cannot access event.url.hash. Consider using `$page.url.hash` inside a component instead")}})}function pt(r){let e=5381,t=r.length;if(typeof r=="string")for(;t;)e=e*33^r.charCodeAt(--t);else for(;t;)e=e*33^r[--t];return(e>>>0).toString(36)}const Re=window.fetch;window.fetch=(r,e)=>{if((r instanceof Request?r.method:(e==null?void 0:e.method)||"GET")!=="GET"){const c=new URL(r instanceof Request?r.url:r.toString(),document.baseURI).href;oe.delete(c)}return Re(r,e)};const oe=new Map;function ht(r,e,t){let o=`script[data-sveltekit-fetched][data-url=${JSON.stringify(typeof r=="string"?r:r.url)}]`;t&&typeof t.body=="string"&&(o+=`[data-hash="${pt(t.body)}"]`);const d=document.querySelector(o);if(d!=null&&d.textContent){const{body:n,...f}=JSON.parse(d.textContent),w=d.getAttribute("data-ttl");return w&&oe.set(e,{body:n,init:f,ttl:1e3*Number(w)}),Promise.resolve(new Response(n,f))}return Re(r,t)}function mt(r,e){const t=oe.get(r);if(t){if(performance.now(){const w=decodeURIComponent(d),_=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(w);if(_)return e.push(_[1]),t.push(_[2]),"(?:/(.*))?";const b=n===f.length-1;return w&&"/"+w.split(/\[(.+?)\]/).map(($,S)=>{if(S%2){const N=_t.exec($);if(!N)throw new Error(`Invalid param: ${$}. Params and matcher names can only have underscores and alphanumeric characters.`);const[,j,T,q]=N;return e.push(T),t.push(q),j?"(.*?)":"([^/]+?)"}return b&&$.includes(".")&&(c=!1),$.normalize().replace(/%5[Bb]/g,"[").replace(/%5[Dd]/g,"]").replace(/#/g,"%23").replace(/\?/g,"%3F").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}).join("")}).join("")}${c?"/?":""}$`),names:e,types:t}}function wt(r){return!/^\([^)]+\)$/.test(r)}function yt(r,e,t,c){const o={};for(let d=0;d{const{pattern:$,names:S,types:N}=gt(f),j={id:f,exec:T=>{const q=$.exec(T);if(q)return yt(q,S,N,c)},errors:[1,...b||[]].map(T=>r[T]),layouts:[0,..._||[]].map(n),leaf:d(w)};return j.errors.length=j.layouts.length=Math.max(j.errors.length,j.layouts.length),j});function d(f){const w=f<0;return w&&(f=~f),[w,r[f]]}function n(f){return f===void 0?f:[o.has(f),r[f]]}}function vt(r){let e,t,c;var o=r[0][0];function d(n){return{props:{data:n[2],form:n[1]}}}return o&&(e=new o(d(r))),{c(){e&&H(e.$$.fragment),t=z()},l(n){e&&Se(e.$$.fragment,n),t=z()},m(n,f){e&&M(e,n,f),W(n,t,f),c=!0},p(n,f){const w={};if(f&4&&(w.data=n[2]),f&2&&(w.form=n[1]),o!==(o=n[0][0])){if(e){ie();const _=e;K(_.$$.fragment,1,0,()=>{X(_,1)}),le()}o?(e=new o(d(n)),H(e.$$.fragment),x(e.$$.fragment,1),M(e,t.parentNode,t)):e=null}else o&&e.$set(w)},i(n){c||(e&&x(e.$$.fragment,n),c=!0)},o(n){e&&K(e.$$.fragment,n),c=!1},d(n){n&&F(t),e&&X(e,n)}}}function kt(r){let e,t,c;var o=r[0][0];function d(n){return{props:{data:n[2],$$slots:{default:[Et]},$$scope:{ctx:n}}}}return o&&(e=new o(d(r))),{c(){e&&H(e.$$.fragment),t=z()},l(n){e&&Se(e.$$.fragment,n),t=z()},m(n,f){e&&M(e,n,f),W(n,t,f),c=!0},p(n,f){const w={};if(f&4&&(w.data=n[2]),f&523&&(w.$$scope={dirty:f,ctx:n}),o!==(o=n[0][0])){if(e){ie();const _=e;K(_.$$.fragment,1,0,()=>{X(_,1)}),le()}o?(e=new o(d(n)),H(e.$$.fragment),x(e.$$.fragment,1),M(e,t.parentNode,t)):e=null}else o&&e.$set(w)},i(n){c||(e&&x(e.$$.fragment,n),c=!0)},o(n){e&&K(e.$$.fragment,n),c=!1},d(n){n&&F(t),e&&X(e,n)}}}function Et(r){let e,t,c;var o=r[0][1];function d(n){return{props:{data:n[3],form:n[1]}}}return o&&(e=new o(d(r))),{c(){e&&H(e.$$.fragment),t=z()},l(n){e&&Se(e.$$.fragment,n),t=z()},m(n,f){e&&M(e,n,f),W(n,t,f),c=!0},p(n,f){const w={};if(f&8&&(w.data=n[3]),f&2&&(w.form=n[1]),o!==(o=n[0][1])){if(e){ie();const _=e;K(_.$$.fragment,1,0,()=>{X(_,1)}),le()}o?(e=new o(d(n)),H(e.$$.fragment),x(e.$$.fragment,1),M(e,t.parentNode,t)):e=null}else o&&e.$set(w)},i(n){c||(e&&x(e.$$.fragment,n),c=!0)},o(n){e&&K(e.$$.fragment,n),c=!1},d(n){n&&F(t),e&&X(e,n)}}}function Je(r){let e,t=r[5]&&ze(r);return{c(){e=Qe("div"),t&&t.c(),this.h()},l(c){e=Ze(c,"DIV",{id:!0,"aria-live":!0,"aria-atomic":!0,style:!0});var o=et(e);t&&t.l(o),o.forEach(F),this.h()},h(){ge(e,"id","svelte-announcer"),ge(e,"aria-live","assertive"),ge(e,"aria-atomic","true"),C(e,"position","absolute"),C(e,"left","0"),C(e,"top","0"),C(e,"clip","rect(0 0 0 0)"),C(e,"clip-path","inset(50%)"),C(e,"overflow","hidden"),C(e,"white-space","nowrap"),C(e,"width","1px"),C(e,"height","1px")},m(c,o){W(c,e,o),t&&t.m(e,null)},p(c,o){c[5]?t?t.p(c,o):(t=ze(c),t.c(),t.m(e,null)):t&&(t.d(1),t=null)},d(c){c&&F(e),t&&t.d()}}}function ze(r){let e;return{c(){e=tt(r[6])},l(t){e=nt(t,r[6])},m(t,c){W(t,e,c)},p(t,c){c&64&&rt(e,t[6])},d(t){t&&F(e)}}}function St(r){let e,t,c,o,d;const n=[kt,vt],f=[];function w(b,$){return b[0][1]?0:1}e=w(r),t=f[e]=n[e](r);let _=r[4]&&Je(r);return{c(){t.c(),c=Me(),_&&_.c(),o=z()},l(b){t.l(b),c=Xe(b),_&&_.l(b),o=z()},m(b,$){f[e].m(b,$),W(b,c,$),_&&_.m(b,$),W(b,o,$),d=!0},p(b,[$]){let S=e;e=w(b),e===S?f[e].p(b,$):(ie(),K(f[S],1,1,()=>{f[S]=null}),le(),t=f[e],t?t.p(b,$):(t=f[e]=n[e](b),t.c()),x(t,1),t.m(c.parentNode,c)),b[4]?_?_.p(b,$):(_=Je(b),_.c(),_.m(o.parentNode,o)):_&&(_.d(1),_=null)},i(b){d||(x(t),d=!0)},o(b){K(t),d=!1},d(b){f[e].d(b),b&&F(c),_&&_.d(b),b&&F(o)}}}function Rt(r,e,t){let{stores:c}=e,{page:o}=e,{components:d}=e,{form:n}=e,{data_0:f=null}=e,{data_1:w=null}=e;Ye(c.page.notify);let _=!1,b=!1,$=null;return be(()=>{const S=c.page.subscribe(()=>{_&&(t(5,b=!0),t(6,$=document.title||"untitled page"))});return t(4,_=!0),S}),r.$$set=S=>{"stores"in S&&t(7,c=S.stores),"page"in S&&t(8,o=S.page),"components"in S&&t(0,d=S.components),"form"in S&&t(1,n=S.form),"data_0"in S&&t(2,f=S.data_0),"data_1"in S&&t(3,w=S.data_1)},r.$$.update=()=>{r.$$.dirty&384&&c.page.set(o)},[d,n,f,w,_,b,$,c,o]}class $t extends Ge{constructor(e){super(),We(this,e,Rt,St,He,{stores:7,page:8,components:0,form:1,data_0:2,data_1:3})}}const Lt={},ce=[()=>se(()=>import("./chunks/0-1abd987b.js"),["chunks/0-1abd987b.js","chunks/_layout-1daba58d.js","components/pages/_layout.svelte-5787f024.js","assets/_layout-015c4ec5.css","chunks/index-4f5b2732.js"],import.meta.url),()=>se(()=>import("./chunks/1-90e0463d.js"),["chunks/1-90e0463d.js","components/error.svelte-faf15aa0.js","chunks/index-4f5b2732.js","chunks/singletons-826d93d7.js","chunks/index-594200a8.js"],import.meta.url),()=>se(()=>import("./chunks/2-a5cb95d6.js"),["chunks/2-a5cb95d6.js","components/pages/_page.svelte-f8258116.js","assets/_page-85a666f5.css","chunks/index-4f5b2732.js","chunks/index-594200a8.js"],import.meta.url)],Pt=[],Ot={"":[2]},jt={handleError:({error:r})=>(console.error(r),{message:"Internal Error"})},Ut="/__data.js",Fe="sveltekit:scroll",J="sveltekit:index",ne=bt(ce,Pt,Ot,Lt),ke=ce[0],Ee=ce[1];ke();Ee();let ee={};try{ee=JSON.parse(sessionStorage[Fe])}catch{}function ye(r){ee[r]=ve()}function It({target:r,base:e,trailing_slash:t}){var Ne;const c=[],o={id:null,promise:null},d={before_navigate:[],after_navigate:[]};let n={branch:[],error:null,session_id:0,url:null},f=!1,w=!0,_=!1,b=1,$=null,S=!1,N,j=(Ne=history.state)==null?void 0:Ne[J];j||(j=Date.now(),history.replaceState({...history.state,[J]:j},"",location.href));const T=ee[j];T&&(history.scrollRestoration="manual",scrollTo(T.x,T.y));let q=!1,V,$e;function Le(){if(!$){const a=new URL(location.href);$=Promise.resolve().then(async()=>{const i=pe(a,!0);await Oe(i,a,[]),$=null,S=!1})}return $}async function fe(a,{noscroll:i=!1,replaceState:p=!1,keepfocus:s=!1,state:l={}},h){return typeof a=="string"&&(a=new URL(a,Ce(document))),he({url:a,scroll:i?ve():null,keepfocus:s,redirect_chain:h,details:{state:l,replaceState:p},accepted:()=>{},blocked:()=>{},type:"goto"})}async function Pe(a){const i=pe(a,!1);if(!i)throw new Error("Attempted to prefetch a URL that does not belong to this app");return o.promise=Ie(i),o.id=i.id,o.promise}async function Oe(a,i,p,s,l){var v,k;const h=$e={};let m=a&&await Ie(a);if(!m&&i.origin===location.origin&&i.pathname===location.pathname&&(m=await te({status:404,error:new Error(`Not found: ${i.pathname}`),url:i,routeId:null})),!m)return await Q(i),!1;if(i=(a==null?void 0:a.url)||i,$e!==h)return!1;if(c.length=0,m.type==="redirect")if(p.length>10||p.includes(i.pathname))m=await te({status:500,error:new Error("Redirect loop"),url:i,routeId:null});else return fe(new URL(m.location,i).href,{},[...p,i.pathname]),!1;else((k=(v=m.props)==null?void 0:v.page)==null?void 0:k.status)>=400&&await G.updated.check()&&await Q(i);if(_=!0,s&&s.details){const{details:y}=s,g=y.replaceState?0:1;y.state[J]=j+=g,history[y.replaceState?"replaceState":"pushState"](y.state,"",i)}if(f){n=m.state,m.props.page&&(m.props.page.url=i);const y=ae();N.$set(m.props),y()}else je(m);if(s){const{scroll:y,keepfocus:g}=s;if(!g){const E=document.body,U=E.getAttribute("tabindex");E.tabIndex=-1,E.focus({preventScroll:!0}),setTimeout(()=>{var L;(L=getSelection())==null||L.removeAllRanges()}),U!==null?E.setAttribute("tabindex",U):E.removeAttribute("tabindex")}if(await De(),w){const E=i.hash&&document.getElementById(i.hash.slice(1));y?scrollTo(y.x,y.y):E?E.scrollIntoView():scrollTo(0,0)}}else await De();o.promise=null,o.id=null,w=!0,m.props.page&&(V=m.props.page),l&&l(),_=!1}function je(a){var l,h;n=a.state;const i=document.querySelector("style[data-sveltekit]");i&&i.remove(),V=a.props.page;const p=ae();N=new $t({target:r,props:{...a.props,stores:G},hydrate:!0}),p();const s={from:null,to:re("to",{params:n.params,routeId:(h=(l=n.route)==null?void 0:l.id)!=null?h:null,url:new URL(location.href)}),type:"load"};d.after_navigate.forEach(m=>m(s)),f=!0}async function Y({url:a,params:i,branch:p,status:s,error:l,route:h,form:m}){var U;const v=p.filter(Boolean),k={type:"loaded",state:{url:a,params:i,branch:p,error:l,route:h,session_id:b},props:{components:v.map(L=>L.node.component)}};m!==void 0&&(k.props.form=m);let y={},g=!V;for(let L=0;LA===I))&&(k.props[`data_${L}`]=y,g=g||Object.keys((U=I.data)!=null?U:{}).length>0)}if(g||(g=Object.keys(V.data).length!==Object.keys(y).length),!n.url||a.href!==n.url.href||n.error!==l||g){k.props.page={error:l,params:i,routeId:h&&h.id,status:s,url:a,data:g?y:V.data};const L=(I,A)=>{Object.defineProperty(k.props.page,I,{get:()=>{throw new Error(`$page.${I} has been replaced by $page.url.${A}`)}})};L("origin","origin"),L("path","pathname"),L("query","searchParams")}return k}async function ue({loader:a,parent:i,url:p,params:s,routeId:l,server_data_node:h}){var y,g,E,U,L;let m=null;const v={dependencies:new Set,params:new Set,parent:!1,url:!1},k=await a();if((y=k.shared)!=null&&y.load){let I=function(...u){for(const R of u){const{href:O}=new URL(R,p);v.dependencies.add(O)}};const A={};for(const u in s)Object.defineProperty(A,u,{get(){return v.params.add(u),s[u]},enumerable:!0});const B={routeId:l,params:A,data:(g=h==null?void 0:h.data)!=null?g:null,url:ut(p,()=>{v.url=!0}),async fetch(u,R){let O;typeof u=="string"?O=u:(O=u.url,R={body:u.method==="GET"||u.method==="HEAD"?void 0:await u.blob(),cache:u.cache,credentials:u.credentials,headers:u.headers,integrity:u.integrity,keepalive:u.keepalive,method:u.method,mode:u.mode,redirect:u.redirect,referrer:u.referrer,referrerPolicy:u.referrerPolicy,signal:u.signal,...R});const P=new URL(O,p).href;return I(P),f?mt(P,R):ht(O,P,R)},setHeaders:()=>{},depends:I,parent(){return v.parent=!0,i()}};Object.defineProperties(B,{props:{get(){throw new Error("@migration task: Replace `props` with `data` stuff https://github.com/sveltejs/kit/discussions/5774#discussioncomment-3292693")},enumerable:!1},session:{get(){throw new Error("session is no longer available. See https://github.com/sveltejs/kit/discussions/5883")},enumerable:!1},stuff:{get(){throw new Error("@migration task: Remove stuff https://github.com/sveltejs/kit/discussions/5774#discussioncomment-3292693")},enumerable:!1}}),m=(E=await k.shared.load.call(null,B))!=null?E:null}return{node:k,loader:a,server:h,shared:(U=k.shared)!=null&&U.load?{type:"data",data:m,uses:v}:null,data:(L=m!=null?m:h==null?void 0:h.data)!=null?L:null}}function Ue(a,i,p){if(S)return!0;if(!p)return!1;if(p.parent&&i||a.url&&p.url)return!0;for(const s of a.params)if(p.params.has(s))return!0;for(const s of p.dependencies)if(c.some(l=>l(new URL(s))))return!0;return!1}function de(a,i){var p,s;return(a==null?void 0:a.type)==="data"?{type:"data",data:a.data,uses:{dependencies:new Set((p=a.uses.dependencies)!=null?p:[]),params:new Set((s=a.uses.params)!=null?s:[]),parent:!!a.uses.parent,url:!!a.uses.url}}:(a==null?void 0:a.type)==="skip"&&i!=null?i:null}async function Ie({id:a,invalidating:i,url:p,params:s,route:l}){var B;if(o.id===a&&o.promise)return o.promise;const{errors:h,layouts:m,leaf:v}=l,k=n.url&&{url:a!==n.url.pathname+n.url.search,params:Object.keys(s).filter(u=>n.params[u]!==s[u])},y=[...m,v];h.forEach(u=>u==null?void 0:u().catch(()=>{})),y.forEach(u=>u==null?void 0:u[1]().catch(()=>{}));let g=null;const E=y.reduce((u,R,O)=>{var D;const P=n.branch[O],Z=!!(R!=null&&R[0])&&((P==null?void 0:P.loader)!==R[1]||Ue(k,u.some(Boolean),(D=P.server)==null?void 0:D.uses));return u.push(Z),u},[]);if(E.some(Boolean)){try{g=await Ke(p,E)}catch(u){return te({status:500,error:u,url:p,routeId:l.id})}if(g.type==="redirect")return g}const U=g==null?void 0:g.nodes;let L=!1;const I=y.map(async(u,R)=>{var D;if(!u)return;const O=n.branch[R],P=U==null?void 0:U[R];if((!P||P.type==="skip")&&u[1]===(O==null?void 0:O.loader)&&!Ue(k,L,(D=O.shared)==null?void 0:D.uses))return O;if(L=!0,(P==null?void 0:P.type)==="error")throw P;return ue({loader:u[1],url:p,params:s,routeId:l.id,parent:async()=>{var Te;const me={};for(let _e=0;_e{});const A=[];for(let u=0;uPromise.resolve({}),server_data_node:de(m)}),k={node:await Ee(),loader:Ee,shared:null,server:null,data:null};return await Y({url:p,params:l,branch:[v,k],status:a,error:i instanceof we?i.body:xe(i,{url:p,params:l,routeId:null}),route:null})}function pe(a,i){if(Ae(a))return;const p=decodeURI(a.pathname.slice(e.length)||"/");for(const s of ne){const l=s.exec(p);if(l){const h=new URL(a.origin+lt(a.pathname,t)+a.search+a.hash);return{id:h.pathname+h.search,invalidating:i,route:s,params:ct(l),url:h}}}}function Ae(a){return a.origin!==location.origin||!a.pathname.startsWith(e)}async function he({url:a,scroll:i,keepfocus:p,redirect_chain:s,details:l,type:h,delta:m,accepted:v,blocked:k}){var L,I,A,B;let y=!1;const g=pe(a,!1),E={from:re("from",{params:n.params,routeId:(I=(L=n.route)==null?void 0:L.id)!=null?I:null,url:n.url}),to:re("to",{params:(A=g==null?void 0:g.params)!=null?A:null,routeId:(B=g==null?void 0:g.route.id)!=null?B:null,url:a}),type:h};m!==void 0&&(E.delta=m);const U={...E,cancel:()=>{y=!0}};if(d.before_navigate.forEach(u=>u(U)),y){k();return}ye(j),v(),f&&G.navigating.set(E),await Oe(g,a,s,{scroll:i,keepfocus:p,details:l},()=>{d.after_navigate.forEach(u=>u(E)),G.navigating.set(null)})}function Q(a){return location.href=a.href,new Promise(()=>{})}return{after_navigate:a=>{be(()=>(d.after_navigate.push(a),()=>{const i=d.after_navigate.indexOf(a);d.after_navigate.splice(i,1)}))},before_navigate:a=>{be(()=>(d.before_navigate.push(a),()=>{const i=d.before_navigate.indexOf(a);d.before_navigate.splice(i,1)}))},disable_scroll_handling:()=>{(_||!f)&&(w=!1)},goto:(a,i={})=>fe(a,i,[]),invalidate:a=>{if(a===void 0)throw new Error("`invalidate()` (with no arguments) has been replaced by `invalidateAll()`");if(typeof a=="function")c.push(a);else{const{href:i}=new URL(a,location.href);c.push(p=>p.href===i)}return Le()},invalidateAll:()=>(S=!0,Le()),prefetch:async a=>{const i=new URL(a,Ce(document));await Pe(i)},prefetch_routes:async a=>{const p=(a?ne.filter(s=>a.some(l=>s.exec(l))):ne).map(s=>Promise.all([...s.layouts,s.leaf].map(l=>l==null?void 0:l[1]())));await Promise.all(p)},apply_action:async a=>{if(a.type==="error"){const i=new URL(location.href),{branch:p,route:s}=n;if(!s)return;let l=n.branch.length;for(;l--;)if(s.errors[l]){let h,m=l;for(;!p[m];)m-=1;try{h={node:await s.errors[l](),loader:s.errors[l],data:{},server:null,shared:null};const v=await Y({url:i,params:n.params,branch:p.slice(0,m+1).concat(h),status:500,error:a.error,route:s});n=v.state;const k=ae();N.$set(v.props),k();return}catch{continue}}}else if(a.type==="redirect")fe(a.location,{},[]);else{const i={form:a.data};a.status!==V.status&&(i.page={...V,status:a.status});const p=ae();N.$set(i),p()}},_start_router:()=>{history.scrollRestoration="manual",addEventListener("beforeunload",s=>{var m,v;let l=!1;const h={from:re("from",{params:n.params,routeId:(v=(m=n.route)==null?void 0:m.id)!=null?v:null,url:n.url}),to:null,type:"unload",cancel:()=>l=!0};d.before_navigate.forEach(k=>k(h)),l?(s.preventDefault(),s.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{if(document.visibilityState==="hidden"){ye(j);try{sessionStorage[Fe]=JSON.stringify(ee)}catch{}}});const a=s=>{const{url:l,options:h}=qe(s);if(l&&h.prefetch){if(Ae(l))return;Pe(l)}};let i;const p=s=>{clearTimeout(i),i=setTimeout(()=>{var l;(l=s.target)==null||l.dispatchEvent(new CustomEvent("sveltekit:trigger_prefetch",{bubbles:!0}))},20)};addEventListener("touchstart",a),addEventListener("mousemove",p),addEventListener("sveltekit:trigger_prefetch",a),addEventListener("click",s=>{if(s.button||s.which!==1||s.metaKey||s.ctrlKey||s.shiftKey||s.altKey||s.defaultPrevented)return;const{a:l,url:h,options:m}=qe(s);if(!l||!h)return;const v=l instanceof SVGAElement;if(!v&&!(h.protocol==="https:"||h.protocol==="http:"))return;const k=(l.getAttribute("rel")||"").split(/\s+/);if(l.hasAttribute("download")||k.includes("external")||m.reload||(v?l.target.baseVal:l.target))return;const[y,g]=h.href.split("#");if(g!==void 0&&y===location.href.split("#")[0]){q=!0,ye(j),n.url=h,G.page.set({...V,url:h}),G.page.notify();return}he({url:h,scroll:m.noscroll?ve():null,keepfocus:!1,redirect_chain:[],details:{state:{},replaceState:h.href===location.href},accepted:()=>s.preventDefault(),blocked:()=>s.preventDefault(),type:"link"})}),addEventListener("popstate",s=>{if(s.state){if(s.state[J]===j)return;const l=s.state[J]-j;he({url:new URL(location.href),scroll:ee[s.state[J]],keepfocus:!1,redirect_chain:[],details:null,accepted:()=>{j=s.state[J]},blocked:()=>{history.go(-l)},type:"popstate",delta:l})}}),addEventListener("hashchange",()=>{q&&(q=!1,history.replaceState({...history.state,[J]:++j},"",location.href))});for(const s of document.querySelectorAll("link"))s.rel==="icon"&&(s.href=s.href);addEventListener("pageshow",s=>{s.persisted&&G.navigating.set(null)})},_hydrate:async({status:a,error:i,node_ids:p,params:s,routeId:l,data:h,form:m})=>{var y;const v=new URL(location.href);let k;try{const g=p.map(async(E,U)=>{const L=h[U];return ue({loader:ce[E],url:v,params:s,routeId:l,parent:async()=>{const I={};for(let A=0;AE.id===l))!=null?y:null})}catch(g){const E=g;if(E instanceof Be){await Q(new URL(g.location,location.href));return}k=await te({status:E instanceof we?E.status:500,error:E,url:v,routeId:l})}je(k)}}}let At=1;async function Ke(r,e){const t=new URL(r);t.pathname=r.pathname.replace(/\/$/,"")+Ut,t.searchParams.set("__invalid",e.map(o=>o?"y":"n").join("")),t.searchParams.set("__id",String(At++)),await se(()=>import(t.href),[],import.meta.url);const c=window.__sveltekit_data;return delete window.__sveltekit_data,c}function xe(r,e){var t;return(t=jt.handleError({error:r,event:e}))!=null?t:{message:"Internal Error"}}const Nt=["hash","href","host","hostname","origin","pathname","port","protocol","search","searchParams","toString","toJSON"];function re(r,e){for(const t of Nt)Object.defineProperty(e,t,{get(){throw new Error(`The navigation shape changed - ${r}.${t} should now be ${r}.url.${t}`)}});return e}function ae(){return()=>{}}async function Ct({env:r,hydrate:e,paths:t,target:c,trailing_slash:o}){at(t);const d=It({target:c,base:t.base,trailing_slash:o});st({client:d}),e?await d._hydrate(e):d.goto(location.href,{replaceState:!0}),d._start_router()}export{Ct as start}; diff --git a/static/_app/version.json b/static/_app/version.json new file mode 100644 index 0000000000000000000000000000000000000000..29d179df19c67a55e9856cd2b740f1016daa4d29 --- /dev/null +++ b/static/_app/version.json @@ -0,0 +1 @@ +{"version":"1663894080788"} \ No newline at end of file diff --git a/static/favicon.png b/static/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..825b9e65af7c104cfb07089bb28659393b4f2097 Binary files /dev/null and b/static/favicon.png differ diff --git a/static/index.html b/static/index.html new file mode 100644 index 0000000000000000000000000000000000000000..1723b9b10afcd6d8e7f09ebd76d08c04813af6c9 --- /dev/null +++ b/static/index.html @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + +
+ + +

Stable Diffussion Outpainting Multiplayer

+

+
+
+
+ + + +
+ + diff --git a/static/robots.txt b/static/robots.txt new file mode 100644 index 0000000000000000000000000000000000000000..e9e57dc4d41b9b46e05112e9f45b7ea6ac0ba15e --- /dev/null +++ b/static/robots.txt @@ -0,0 +1,3 @@ +# https://www.robotstxt.org/robotstxt.html +User-agent: * +Disallow: diff --git a/static/vite-manifest.json b/static/vite-manifest.json new file mode 100644 index 0000000000000000000000000000000000000000..aa8bf3e7fc3af128f1028bd83997f5ac780a6cb5 --- /dev/null +++ b/static/vite-manifest.json @@ -0,0 +1,107 @@ +{ + "node_modules/@sveltejs/kit/src/runtime/client/start.js": { + "file": "_app/immutable/start-9c5e89c3.js", + "src": "node_modules/@sveltejs/kit/src/runtime/client/start.js", + "isEntry": true, + "imports": [ + "_index-4f5b2732.js", + "_singletons-826d93d7.js" + ], + "dynamicImports": [ + ".svelte-kit/generated/nodes/0.js", + ".svelte-kit/generated/nodes/1.js", + ".svelte-kit/generated/nodes/2.js" + ] + }, + "src/routes/+layout.svelte": { + "file": "_app/immutable/components/pages/_layout.svelte-5787f024.js", + "src": "src/routes/+layout.svelte", + "isEntry": true, + "imports": [ + "_index-4f5b2732.js" + ], + "css": [ + "_app/immutable/assets/_layout-015c4ec5.css" + ] + }, + "node_modules/@sveltejs/kit/src/runtime/components/error.svelte": { + "file": "_app/immutable/components/error.svelte-faf15aa0.js", + "src": "node_modules/@sveltejs/kit/src/runtime/components/error.svelte", + "isEntry": true, + "imports": [ + "_index-4f5b2732.js", + "_singletons-826d93d7.js" + ] + }, + "src/routes/+page.svelte": { + "file": "_app/immutable/components/pages/_page.svelte-f8258116.js", + "src": "src/routes/+page.svelte", + "isEntry": true, + "imports": [ + "_index-4f5b2732.js", + "_index-594200a8.js" + ], + "css": [ + "_app/immutable/assets/_page-85a666f5.css" + ] + }, + "src/routes/+layout.ts": { + "file": "_app/immutable/modules/pages/_layout.ts-b8ee4d7c.js", + "src": "src/routes/+layout.ts", + "isEntry": true, + "imports": [ + "__layout-1daba58d.js" + ] + }, + "_singletons-826d93d7.js": { + "file": "_app/immutable/chunks/singletons-826d93d7.js", + "imports": [ + "_index-594200a8.js" + ] + }, + "_index-4f5b2732.js": { + "file": "_app/immutable/chunks/index-4f5b2732.js" + }, + "_index-594200a8.js": { + "file": "_app/immutable/chunks/index-594200a8.js", + "imports": [ + "_index-4f5b2732.js" + ] + }, + "__layout-1daba58d.js": { + "file": "_app/immutable/chunks/_layout-1daba58d.js" + }, + ".svelte-kit/generated/nodes/0.js": { + "file": "_app/immutable/chunks/0-1abd987b.js", + "src": ".svelte-kit/generated/nodes/0.js", + "isDynamicEntry": true, + "imports": [ + "__layout-1daba58d.js", + "src/routes/+layout.svelte" + ] + }, + ".svelte-kit/generated/nodes/1.js": { + "file": "_app/immutable/chunks/1-90e0463d.js", + "src": ".svelte-kit/generated/nodes/1.js", + "isDynamicEntry": true, + "imports": [ + "node_modules/@sveltejs/kit/src/runtime/components/error.svelte" + ] + }, + ".svelte-kit/generated/nodes/2.js": { + "file": "_app/immutable/chunks/2-a5cb95d6.js", + "src": ".svelte-kit/generated/nodes/2.js", + "isDynamicEntry": true, + "imports": [ + "src/routes/+page.svelte" + ] + }, + "src/routes/+page.css": { + "file": "_app/immutable/assets/_page-85a666f5.css", + "src": "src/routes/+page.css" + }, + "src/routes/+layout.css": { + "file": "_app/immutable/assets/_layout-015c4ec5.css", + "src": "src/routes/+layout.css" + } +} \ No newline at end of file