mirror of
https://github.com/CharaChorder/DeviceManager.git
synced 2025-12-27 05:06:17 +00:00
Compare commits
260 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5fa284e0d4 | ||
|
888df6dd66
|
|||
|
7ad9612037
|
|||
|
3f9674b399
|
|||
|
92ba5bcb24
|
|||
|
2163a63a7c
|
|||
|
65a5a2517e
|
|||
|
21e8c291b0
|
|||
|
4106a80d53
|
|||
|
|
01fb61d27c | ||
|
3dd91a1cea
|
|||
|
cbcf705f71
|
|||
|
4007810c7b
|
|||
|
f322435c41
|
|||
|
587375e654
|
|||
|
0500a723de
|
|||
|
26dcc56aca
|
|||
|
20b65813bf
|
|||
|
87b23c04b1
|
|||
|
8b2bc6d109
|
|||
|
19cf0b26b3
|
|||
|
3e72dd3cb8
|
|||
|
a40daefbad
|
|||
|
77d4a90519
|
|||
|
c9a031a1fd
|
|||
|
254a0c1aec
|
|||
|
bd75012cf1
|
|||
|
4b738bb340
|
|||
|
3af65106bf
|
|||
|
8087d10d5a
|
|||
|
2782966505
|
|||
|
5b6d369101
|
|||
|
b423d1c661
|
|||
|
92a3c6012f
|
|||
|
8ec11c7ec9
|
|||
|
5c8eb1d19f
|
|||
|
91a044bbba
|
|||
|
1a6c85a361
|
|||
|
ecef11ac2d
|
|||
|
a23af9ba9d
|
|||
|
93849f250f
|
|||
|
33890b0aa8
|
|||
|
6f925de1af
|
|||
|
d45fe43f17
|
|||
|
59788f059d
|
|||
|
2808973ad0
|
|||
|
bef51d2a7d
|
|||
|
854ab6d3be
|
|||
|
86ec8651b6
|
|||
|
4e4bff02a0
|
|||
|
5d4dbc7e2a
|
|||
|
dfd1c0bcbd
|
|||
|
6ac2cd1993
|
|||
|
7256dc50d4
|
|||
|
f0ad19e6c2
|
|||
|
9022a09b4c
|
|||
|
7e3e61afd7
|
|||
|
08f594d164
|
|||
|
046595b51f
|
|||
|
fbc5303690
|
|||
|
ad41d39bfb
|
|||
|
6faaa18b3b
|
|||
|
6ab6959129
|
|||
|
44d89d3f35
|
|||
|
eaf0adaf01
|
|||
|
5b6a5ea36d
|
|||
|
14cbb5553b
|
|||
|
|
8ed72fe958 | ||
|
06b83f79ef
|
|||
|
5fa4b1fd09
|
|||
|
f585a0ebda
|
|||
|
a48e2b5a16
|
|||
|
fd612eda1d
|
|||
|
a1fe6f7110
|
|||
|
0e57e810e0
|
|||
|
a15d5dde38
|
|||
|
560206129e
|
|||
|
cb7c70dac1
|
|||
|
edabf8ec84
|
|||
|
f2f61f32f2
|
|||
|
a3857843d6
|
|||
|
c1b1068c4b
|
|||
|
2411dd2bea
|
|||
|
7911904906
|
|||
|
630687de80
|
|||
|
84b22e0006
|
|||
|
dd070c8856
|
|||
|
6872cd0554
|
|||
|
628007af23
|
|||
|
19fad84357
|
|||
|
f172318a78
|
|||
|
c2e3850082
|
|||
|
7a5a4eb434
|
|||
|
c878311f62
|
|||
|
fb3fb246e9
|
|||
|
b4e4ca84a4
|
|||
|
c1b1544256
|
|||
|
03dd528465
|
|||
|
81af9f2e82
|
|||
|
6bb42429e5
|
|||
|
d07751a944
|
|||
|
8867030ede
|
|||
|
faaa6dd5be
|
|||
|
43cf13094e
|
|||
|
ed523628ff
|
|||
|
98b451eec9
|
|||
|
6e37dc198f
|
|||
|
e319b1bfaf
|
|||
|
eb33b64100
|
|||
|
766bc44a85
|
|||
|
b679aa377a
|
|||
|
ea3192d4e6
|
|||
|
256daec412
|
|||
|
29a07133d1
|
|||
|
c3bd8431e5
|
|||
|
c8e04ed6cc
|
|||
|
d98653995b
|
|||
|
3dd9611ebf
|
|||
|
9d9360375b
|
|||
|
d683c8c70c
|
|||
|
d8d430f333
|
|||
|
fe850f47ec
|
|||
|
f9a63a8724
|
|||
|
af01426f43
|
|||
|
9d7cefb3b4
|
|||
|
f44e5a79de
|
|||
|
8b2e92c124
|
|||
|
f758be91a9
|
|||
|
bf4c86e698
|
|||
|
50a09d2008
|
|||
|
3c1a4de4a7
|
|||
|
8cbdf1393f
|
|||
|
1ccb17f053
|
|||
|
532dc70fe2
|
|||
|
d5893013f9
|
|||
|
80308cad73
|
|||
|
2d59bd016f
|
|||
|
298de49257
|
|||
|
3a62864a41
|
|||
|
109095e35e
|
|||
|
2dd6f39ac6
|
|||
|
b0f653e73b
|
|||
|
d552fb9220
|
|||
|
77339620e6
|
|||
|
846183bbb1
|
|||
|
1d53f6df7a
|
|||
|
58d13a4107
|
|||
|
f7d99d8d7b
|
|||
|
d9dd003b01
|
|||
|
dc798d2b9f
|
|||
|
c2ec460c8c
|
|||
|
c51bcc8ff0
|
|||
|
63b7f8ab18
|
|||
|
eaf8028538
|
|||
|
2ad0ef3b6d
|
|||
|
20705de069
|
|||
|
64b519d5b1
|
|||
|
fb490b3db6
|
|||
|
c37ae7da7b
|
|||
|
5c06c2206c
|
|||
|
f9cdf70bdb
|
|||
|
3a6483aa61
|
|||
|
|
018c7a5eac | ||
|
f73b8c1453
|
|||
|
e38d952e1d
|
|||
|
8e5692ca59
|
|||
|
a0fe925ea9
|
|||
|
e84470d577
|
|||
|
683561dc06
|
|||
|
2fd2dad6f7
|
|||
|
e2f9f87b13
|
|||
|
623d895aea
|
|||
|
561300de64
|
|||
|
c5d9defc9d
|
|||
|
acd58646f6
|
|||
|
3634264af3
|
|||
|
3515994a5a
|
|||
|
bdebe238ae
|
|||
|
ebf7d73d20
|
|||
|
e19a57efac
|
|||
|
034436f93e
|
|||
|
2710f7fc25
|
|||
|
d2276a53d0
|
|||
|
8701d7a40d
|
|||
|
94cfaf40e5
|
|||
|
c661a4b30b
|
|||
|
9b95e1d67a
|
|||
|
f7bf93fcfc
|
|||
|
08df049170
|
|||
|
65a536cdea
|
|||
|
d2fd84a6b5
|
|||
|
88429412b9
|
|||
|
ef309d603e
|
|||
|
fade2f978e
|
|||
|
a1760d518c
|
|||
|
9d33565081
|
|||
|
|
11fe12f095 | ||
|
aba390839b
|
|||
|
|
a6e7df55ff | ||
|
|
7e5e7b8f5f | ||
|
|
a34ba35889 | ||
|
|
616d15b6bd | ||
|
|
283444f0be | ||
|
|
e5e56c04a2 | ||
|
|
a34c176bcc | ||
|
e4d51cd51d
|
|||
|
a7b49de6ac
|
|||
|
fc86b31337
|
|||
|
d8f0679233
|
|||
|
c93246ee8c
|
|||
|
22905c2b56
|
|||
|
074f1da48d
|
|||
|
e7a52221d2
|
|||
|
f03b4d586b
|
|||
|
4cd9ce536d
|
|||
|
a39f57bac1
|
|||
|
bf96c1e29d
|
|||
|
a134b970ee
|
|||
|
86476cfdd8
|
|||
|
742e7a6b98
|
|||
|
607338878b
|
|||
|
777488ecd1
|
|||
|
220c8cbe67
|
|||
|
42922e7ce0
|
|||
|
9c1918e683
|
|||
|
5014e1e8e8
|
|||
|
e0f5c6440c
|
|||
|
e21ff12804
|
|||
|
2fa8d93d60
|
|||
|
aa1d4787f5
|
|||
|
4cc9462655
|
|||
|
7d148d0c2c
|
|||
|
73c71836dc
|
|||
|
e508d1312e
|
|||
|
c709878d6a
|
|||
| 374e27c7d0 | |||
| 88c7f057c9 | |||
| 6b09cbfbec | |||
| 06c1121983 | |||
| 2130b6c7b9 | |||
| e64082d578 | |||
| 21dbfa48de | |||
| 7df75e109d | |||
| 5cdf969c6d | |||
| 634073f10d | |||
| 4cc3343984 | |||
| 998a400395 | |||
| c0fb737314 | |||
| c59b2732f7 | |||
| 9bf1a13e02 | |||
| 6facaad4a2 | |||
| b04ed7fe7f | |||
| 4eb1e8c049 | |||
| 26ca9984ea | |||
| 110771a2a4 | |||
| 7fdf1cd3b4 | |||
| c4fee59446 | |||
| 088aa0dbcf | |||
| 26a6f70ccb | |||
| 391c9d8837 |
65
.github/workflows/build.yml
vendored
65
.github/workflows/build.yml
vendored
@@ -1,65 +0,0 @@
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: 🔨 Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: 🚚 Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: 🐍 Use Python 3.x
|
||||
uses: actions/setup-python@v3.1.4
|
||||
with:
|
||||
python-version: 3.x
|
||||
cache: pip
|
||||
- name: ⏬ Install Python dependencies
|
||||
run: python -m venv venv
|
||||
- run: ./venv/bin/pip install -r requirements.txt
|
||||
|
||||
- name: 🐉 Use Node.js 18.16.x
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18.16.x
|
||||
cache: 'npm'
|
||||
- name: ⏬ Install Node dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: 🔥 Optimize icon font
|
||||
run: npm run minify-icons
|
||||
- name: 🔨 Build site
|
||||
run: npm run build
|
||||
|
||||
- name: 📦 Upload build artifacts
|
||||
uses: actions/upload-artifact@v3.1.2
|
||||
with:
|
||||
name: build
|
||||
path: build
|
||||
deploy:
|
||||
name: 🚀 Deploy
|
||||
if: github.event_name == 'push' && contains(github.event.head_commit.message, '[deploy]')
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
environment:
|
||||
name: Website
|
||||
url: https://dotio.theaninova.de
|
||||
steps:
|
||||
- name: 📦 Download build artifacts
|
||||
uses: actions/download-artifact@v2.1.1
|
||||
with:
|
||||
name: build
|
||||
path: build
|
||||
- name: 🚀 Deploy
|
||||
uses: SamKirkland/web-deploy@v1
|
||||
with:
|
||||
target-server: ${{ secrets.SSH_SERVER }}
|
||||
destination-path: ~/public_html/
|
||||
source-path: ./build/
|
||||
remote-user: ${{ secrets.SSH_USER }}
|
||||
private-ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
ssh-port: ${{ secrets.SSH_PORT }}
|
||||
13
.gitignore
vendored
13
.gitignore
vendored
@@ -1,13 +0,0 @@
|
||||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
.idea
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
venv
|
||||
vite.config.js.timestamp-*
|
||||
vite.config.ts.timestamp-*
|
||||
src/lib/assets/icons.min.woff2
|
||||
@@ -5,8 +5,8 @@ RewriteCond %{HTTPS} off
|
||||
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
|
||||
|
||||
# https://kit.svelte.dev/docs/single-page-apps#apache
|
||||
RewriteBase /
|
||||
RewriteRule ^index\.html$ - [L]
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule . /index.html [L]
|
||||
# RewriteBase /
|
||||
# RewriteRule ^index\.html$ - [L]
|
||||
# RewriteCond %{REQUEST_FILENAME} !-f
|
||||
# RewriteCond %{REQUEST_FILENAME} !-d
|
||||
# RewriteRule . /index.html [QSA,L]
|
||||
@@ -1,13 +0,0 @@
|
||||
.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
|
||||
@@ -1,9 +0,0 @@
|
||||
{
|
||||
"useTabs": true,
|
||||
"singleQuote": true,
|
||||
"trailingComma": "none",
|
||||
"printWidth": 100,
|
||||
"plugins": ["prettier-plugin-svelte"],
|
||||
"pluginSearchDirs": ["."],
|
||||
"overrides": [{"files": "*.svelte", "options": {"parser": "svelte"}}]
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
{
|
||||
"extends": [
|
||||
"stylelint-config-standard-scss",
|
||||
"stylelint-config-recommended-scss",
|
||||
"stylelint-config-html/svelte",
|
||||
"stylelint-config-clean-order",
|
||||
"stylelint-config-prettier-scss"
|
||||
],
|
||||
"rules": {
|
||||
"selector-pseudo-class-no-unknown": [
|
||||
true,
|
||||
{
|
||||
"ignorePseudoClasses": ["global"]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
37
404.html
Normal file
37
404.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="/icon.svg" />
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
|
||||
<link rel="modulepreload" href="/_app/immutable/entry/start.Bz-lEuqo.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/entry.CU4Ldo_h.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/scheduler.CXEVs2ap.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/index.Lgv2TFSy.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/control.CYgJF_JY.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/entry/app.Bd0k4H-U.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/preload-helper.Dch09mLN.js">
|
||||
<link rel="modulepreload" href="/_app/immutable/chunks/index.CTdcniaS.js">
|
||||
</head>
|
||||
<body data-sveltekit-preload-data="hover">
|
||||
<div style="display: contents">
|
||||
<script>
|
||||
{
|
||||
__sveltekit_1xbcib = {
|
||||
base: ""
|
||||
};
|
||||
|
||||
const element = document.currentScript.parentElement;
|
||||
|
||||
Promise.all([
|
||||
import("/_app/immutable/entry/start.Bz-lEuqo.js"),
|
||||
import("/_app/immutable/entry/app.Bd0k4H-U.js")
|
||||
]).then(([kit, app]) => {
|
||||
kit.start(app, element);
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
661
LICENSE
661
LICENSE
@@ -1,661 +0,0 @@
|
||||
GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
Version 3, 19 November 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU Affero General Public License is a free, copyleft license for
|
||||
software and other kinds of works, specifically designed to ensure
|
||||
cooperation with the community in the case of network server software.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
our General Public Licenses are intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
Developers that use our General Public Licenses protect your rights
|
||||
with two steps: (1) assert copyright on the software, and (2) offer
|
||||
you this License which gives you legal permission to copy, distribute
|
||||
and/or modify the software.
|
||||
|
||||
A secondary benefit of defending all users' freedom is that
|
||||
improvements made in alternate versions of the program, if they
|
||||
receive widespread use, become available for other developers to
|
||||
incorporate. Many developers of free software are heartened and
|
||||
encouraged by the resulting cooperation. However, in the case of
|
||||
software used on network servers, this result may fail to come about.
|
||||
The GNU General Public License permits making a modified version and
|
||||
letting the public access it on a server without ever releasing its
|
||||
source code to the public.
|
||||
|
||||
The GNU Affero General Public License is designed specifically to
|
||||
ensure that, in such cases, the modified source code becomes available
|
||||
to the community. It requires the operator of a network server to
|
||||
provide the source code of the modified version running there to the
|
||||
users of that server. Therefore, public use of a modified version, on
|
||||
a publicly accessible server, gives the public access to the source
|
||||
code of the modified version.
|
||||
|
||||
An older license, called the Affero General Public License and
|
||||
published by Affero, was designed to accomplish similar goals. This is
|
||||
a different license, not a version of the Affero GPL, but Affero has
|
||||
released a new version of the Affero GPL which permits relicensing under
|
||||
this license.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU Affero General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Remote Network Interaction; Use with the GNU General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, if you modify the
|
||||
Program, your modified version must prominently offer all users
|
||||
interacting with it remotely through a computer network (if your version
|
||||
supports such interaction) an opportunity to receive the Corresponding
|
||||
Source of your version by providing access to the Corresponding Source
|
||||
from a network server at no charge, through some standard or customary
|
||||
means of facilitating copying of software. This Corresponding Source
|
||||
shall include the Corresponding Source for any work covered by version 3
|
||||
of the GNU General Public License that is incorporated pursuant to the
|
||||
following paragraph.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the work with which it is combined will remain governed by version
|
||||
3 of the GNU General Public License.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU Affero General Public License from time to time. Such new versions
|
||||
will be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU Affero General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU Affero General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU Affero General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published
|
||||
by the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If your software can interact with users remotely through a computer
|
||||
network, you should also make sure that it provides a way for users to
|
||||
get its source. For example, if your program is a web application, its
|
||||
interface could display a "Source" link that leads users to an archive
|
||||
of the code. There are many ways you could offer source, and different
|
||||
solutions will be better for different programs; see section 13 for the
|
||||
specific requirements.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU AGPL, see
|
||||
<https://www.gnu.org/licenses/>.
|
||||
44
README.md
44
README.md
@@ -1,44 +0,0 @@
|
||||
# dot i/o V2
|
||||
|
||||

|
||||

|
||||
[](https://dotio.theaninova.de/)
|
||||
|
||||
_This project is not affiliated or endorsed with neither the original [dot i/o](https://www.iq-eq.io/) site, nor [CharaChorder](https://www.charachorder.com/)_
|
||||
|
||||
I aim to create a new site that offers an easier, visually pleasing
|
||||
and more complete way to configure and learn CharaChorder devices.
|
||||
|
||||
## Development
|
||||
|
||||
- NodeJS >=18.16
|
||||
- Python >=3.10 virtual environment
|
||||
|
||||
I know, python in JS projects is extremely annoying, unfortunately,
|
||||
it seems to be the only platform that offers a functional
|
||||
way to subset variable woff2 fonts with ligatures.
|
||||
|
||||
In other words, either have python as a development dependency or
|
||||
serve a 3.5MB icons font of which 99.5% is completely unused.
|
||||
|
||||
## Deployment
|
||||
|
||||
### SSH Setup
|
||||
|
||||
To generate a valid ssh key that can be used by the deployment workflow,
|
||||
use the following command:
|
||||
|
||||
```shell
|
||||
ssh-keygen -m PEM -b 4096 -t rsa -f dotio
|
||||
```
|
||||
|
||||
Omitting `-m PEM -b 4096` will result in a key that rsync cannot read!
|
||||
|
||||
To double-check, make sure your private key starts with
|
||||
|
||||
```
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
```
|
||||
|
||||
After that, add the `SSH_SERVER`, `SSH_PORT`, `SSH_PRIVATE_KEY` and `SSH_USER`
|
||||
environment secrets to your environment in GitHub.
|
||||
1
__data.json
Normal file
1
__data.json
Normal file
@@ -0,0 +1 @@
|
||||
{"type":"redirect","location":"/config/"}
|
||||
1
_app/env.js
Normal file
1
_app/env.js
Normal file
@@ -0,0 +1 @@
|
||||
export const env={}
|
||||
1
_app/immutable/assets/10.CQGEDJFF.css
Normal file
1
_app/immutable/assets/10.CQGEDJFF.css
Normal file
@@ -0,0 +1 @@
|
||||
form.svelte-vncpgh{position:relative;contain:strict;overflow:hidden;display:flex;flex-direction:column;width:100%;height:100%;font-family:Noto Sans Mono,monospace;font-size:.75rem;color:var(--md-sys-color-on-secondary);border-radius:16px}fieldset.svelte-vncpgh:before{content:"$";position:absolute;bottom:8px;left:8px;font-weight:900}input.svelte-vncpgh{width:100%;margin-block-start:-16px;padding:8px;padding-block-start:24px;padding-inline-start:calc(8px + 1.5ch);font-family:Noto Sans Mono,monospace;font-weight:600;color:var(--md-sys-color-on-secondary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--md-sys-color-secondary);border:none}.io.svelte-vncpgh{--scrollbar-color:var(--md-sys-color-secondary);z-index:1;overflow-y:auto;flex:1;padding:12px;color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);border-radius:0 0 16px 16px}.svelte-vncpgh:focus-visible{outline:none}fieldset.svelte-vncpgh{all:unset;position:relative;display:block;opacity:.8;transition:opacity .25s ease}fieldset.svelte-vncpgh:focus-within{opacity:1}.anchor.svelte-vncpgh{overflow-anchor:auto;height:1px}code.svelte-vncpgh,samp.svelte-vncpgh,p.svelte-vncpgh{display:block;overflow-anchor:none;margin-block:.15rem}p.svelte-vncpgh{display:flex;justify-content:center;margin-block-end:1rem;padding:.25rem;color:var(--md-sys-color-on-secondary);background:var(--md-sys-color-secondary);border-radius:8px}code.svelte-vncpgh:before{content:"> ";margin-block-end:.25rem;font-weight:900;color:var(--md-sys-color-primary)}.svelte-vncpgh::-moz-selection{color:var(--md-sys-color-background);background:var(--md-sys-color-on-background)}.svelte-vncpgh::selection{color:var(--md-sys-color-background);background:var(--md-sys-color-on-background)}@keyframes svelte-vncpgh-blink{to,60%{opacity:1}40%,0%{opacity:0}}section.svelte-119fxqt{contain:size;overflow:hidden;display:flex;flex-direction:column;flex-grow:1;gap:16px;width:min(100%,28cm);height:100%;margin-block-end:48px}
|
||||
1
_app/immutable/assets/12.BBk4sqFm.css
Normal file
1
_app/immutable/assets/12.BBk4sqFm.css
Normal file
@@ -0,0 +1 @@
|
||||
.row.svelte-1mjktf5{position:relative;height:48px}.rating-item.svelte-1mjktf5{display:flex;gap:8px;justify-content:flex-start}.rating.svelte-1mjktf5{position:absolute;left:-48px;width:-moz-max-content;width:max-content}
|
||||
1
_app/immutable/assets/2.BTpPbOQ4.css
Normal file
1
_app/immutable/assets/2.BTpPbOQ4.css
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/assets/6.B8XtAH-7.css
Normal file
1
_app/immutable/assets/6.B8XtAH-7.css
Normal file
@@ -0,0 +1 @@
|
||||
sup.svelte-niexr.svelte-niexr{translate:0 -40%;opacity:0;transition:opacity .25s ease}.cursor.svelte-niexr.svelte-niexr{position:absolute;transform:translate(-50%);translate:0 0;width:2px;height:100%;background:var(--md-sys-color-on-secondary-container);transition:translate 50ms ease}.cursor.svelte-niexr button.svelte-niexr{position:absolute;top:-24px;left:0;height:24px;padding:0;color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);border:2px solid currentcolor;border-radius:12px 12px 12px 0}.edited.svelte-niexr.svelte-niexr{color:var(--md-sys-color-primary)}.edited.svelte-niexr sup.svelte-niexr{opacity:1}[role=textbox].svelte-niexr.svelte-niexr{cursor:text;position:relative;display:flex;align-items:center;height:1em;padding-block:4px}[role=textbox].svelte-niexr.svelte-niexr:after,[role=textbox].svelte-niexr.svelte-niexr:before{content:"";position:absolute;bottom:-4px;width:100%;height:1px;opacity:0;background:currentcolor;transition:opacity .15s ease,scale .25s ease}[role=textbox].svelte-niexr.svelte-niexr:after{scale:0 1;transition-duration:.25s}[role=textbox].svelte-niexr.svelte-niexr:hover:before{opacity:.3}[role=textbox].svelte-niexr.svelte-niexr:focus-within{outline:none}[role=textbox].svelte-niexr.svelte-niexr:focus-within:after{scale:1;opacity:1}span.svelte-1gh96s2.svelte-1gh96s2{opacity:.5}@media (prefers-contrast: more){span.svelte-1gh96s2.svelte-1gh96s2{opacity:.8}}sup.svelte-1gh96s2.svelte-1gh96s2{translate:0 -60%;opacity:0;transition:opacity .25s ease}.add.svelte-1gh96s2.svelte-1gh96s2{font-size:18px;height:20px;opacity:0;--icon-fill:1}.chord.svelte-1gh96s2:hover .add.svelte-1gh96s2{opacity:1}.chord.svelte-1gh96s2.svelte-1gh96s2{position:relative;display:inline-flex;gap:4px;height:32px;margin-inline:4px}.chord.svelte-1gh96s2.svelte-1gh96s2:focus-within{outline:none}.chord.svelte-1gh96s2.svelte-1gh96s2:after{content:"";position:absolute;top:50%;transform-origin:center left;translate:-20px 0;scale:0 1;width:calc(100% - 60px);height:1px;background:currentcolor;transition:scale .25s ease,color .25s ease}.edited.svelte-1gh96s2.svelte-1gh96s2{color:var(--md-sys-color-primary)}.edited.svelte-1gh96s2>sup.svelte-1gh96s2{opacity:1}.invalid.svelte-1gh96s2.svelte-1gh96s2,.deleted.svelte-1gh96s2.svelte-1gh96s2{color:var(--md-sys-color-error)}.deleted.svelte-1gh96s2.svelte-1gh96s2:after{scale:1}.separator.svelte-w21w7s{display:inline-flex;width:1px;height:24px;opacity:.2;background:currentcolor}button.svelte-w21w7s{transition:opacity 75ms ease}td.svelte-w21w7s{position:relative}.table-buttons.svelte-w21w7s{opacity:0;transition:opacity 75ms ease}tr:focus-within>.table-buttons.svelte-w21w7s,tr:hover>.table-buttons.svelte-w21w7s{opacity:1}.search-container.svelte-41xh3q.svelte-41xh3q{display:flex;align-items:center;justify-content:center}.paginator.svelte-41xh3q.svelte-41xh3q{display:flex;justify-content:flex-end;min-width:8ch}.new-chord.svelte-41xh3q .add{visibility:hidden}.sidebar.svelte-41xh3q.svelte-41xh3q{display:flex;flex-direction:column}.sidebar.svelte-41xh3q>button.svelte-41xh3q{padding-inline-start:0}textarea.svelte-41xh3q.svelte-41xh3q{flex:1;transition:outline-color .25s ease;background:none;color:inherit;border:1px dashed var(--md-sys-color-outline);outline:2px solid transparent;outline-offset:-1px;margin:2px;padding:8px;border-radius:4px}textarea.svelte-41xh3q.svelte-41xh3q:focus{outline-color:var(--md-sys-color-primary)}@keyframes svelte-41xh3q-pulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}input[type=search].svelte-41xh3q.svelte-41xh3q{width:512px;margin-block-start:16px;padding-block:8px;padding-inline:16px;font-size:16px;color:inherit;background:none;border:0 solid var(--md-sys-color-surface-variant);border-bottom-width:1px;transition:all .25s ease}@media (prefers-contrast: more){input[type=search].svelte-41xh3q.svelte-41xh3q{border-color:var(--md-sys-color-outline);border-style:dashed}}input[type=search].svelte-41xh3q.svelte-41xh3q::-moz-placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}input[type=search].svelte-41xh3q.svelte-41xh3q::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}input[type=search].svelte-41xh3q.svelte-41xh3q:focus{border-color:var(--md-sys-color-primary);border-style:solid;outline:none}input[type=search].loading.svelte-41xh3q.svelte-41xh3q{opacity:.4}section.svelte-41xh3q.svelte-41xh3q{position:relative;display:flex;overflow:hidden;height:100%;padding-inline:8px;border-radius:16px}.results.svelte-41xh3q.svelte-41xh3q{height:100%;min-width:min(90vw,16.5cm)}table.svelte-41xh3q.svelte-41xh3q{height:-moz-fit-content;height:fit-content;overflow:hidden;transition:all 1s ease}
|
||||
1
_app/immutable/assets/7.BVNnA3qB.css
Normal file
1
_app/immutable/assets/7.BVNnA3qB.css
Normal file
@@ -0,0 +1 @@
|
||||
text.svelte-1pn6h4o{will-change:translate,scale;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;transform-box:fill-box;transition:fill 10ms ease,opacity .2s ease,translate .2s ease,scale .2s ease}@media (prefers-contrast: more){text.svelte-1pn6h4o{--inactive-opacity:.8;--inactive-scale:.7}}text.svelte-1pn6h4o:focus-within{outline:none}rect.svelte-ct6ehu.svelte-ct6ehu{transform-origin:center;transform-box:fill-box}path.svelte-ct6ehu.svelte-ct6ehu,g.svelte-ct6ehu.svelte-ct6ehu{transform-origin:top left;transform-box:fill-box}path.svelte-ct6ehu.svelte-ct6ehu,rect.svelte-ct6ehu.svelte-ct6ehu{fill:var(--md-sys-color-background);fill-opacity:0;stroke:currentcolor}path.svelte-ct6ehu.svelte-ct6ehu{fill:currentcolor;fill-opacity:0;stroke-opacity:.3}g.svelte-ct6ehu.svelte-ct6ehu:hover{cursor:default;opacity:.6;transition:opacity .2s ease}g.svelte-ct6ehu.svelte-ct6ehu:focus-within{color:var(--md-sys-color-primary);outline:none}g.svelte-ct6ehu:focus-within>path.svelte-ct6ehu,g.svelte-ct6ehu:focus-within>rect.svelte-ct6ehu{fill:currentcolor;fill-opacity:.2}svg.svelte-1nciqmp{overflow:visible;grid-area:"d";width:min(100%,35cm);max-height:calc(100% - 170px)}.container.svelte-mcava{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;margin-bottom:96px}fieldset.svelte-mcava{position:relative;display:flex;align-items:center;justify-content:center;padding:8px;border:none}button.icon.svelte-mcava{cursor:pointer;z-index:1;font-size:24px;color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-variant);border:none;transition:all .25s ease}button.icon.svelte-mcava:nth-child(2){z-index:2;aspect-ratio:1;font-size:32px;border-radius:50%}button.icon.svelte-mcava:first-child,button.icon.svelte-mcava:last-child{aspect-ratio:unset;height:unset}button.icon.svelte-mcava:first-child{margin-inline-end:-8px;padding-inline:4px 24px;border-radius:16px 0 0 16px}button.icon.svelte-mcava:last-child{margin-inline-start:-8px;padding-inline:24px 4px;border-radius:0 16px 16px 0}button.icon.active.svelte-mcava{font-weight:900;color:var(--md-sys-color-on-tertiary);background:var(--md-sys-color-tertiary)}section.svelte-160295n{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
|
||||
1
_app/immutable/assets/8.Dmqm32Ri.css
Normal file
1
_app/immutable/assets/8.Dmqm32Ri.css
Normal file
@@ -0,0 +1 @@
|
||||
@charset "UTF-8";input[type=text].svelte-1lqm9fg{color:inherit;font-family:inherit;background:none;border:none;border-bottom:1px solid currentcolor;width:100%}input[type=text].svelte-1lqm9fg:focus{outline:none;border-color:var(--md-sys-color-secondary)}button.svelte-1lqm9fg{color:var(--md-sys-color-error)}hr.svelte-y37ne{opacity:.25}section.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{overflow-y:auto;display:flex;flex-flow:row wrap;gap:16px;justify-content:center;margin-block:auto;padding-block-end:48px}button.outline.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{border:1px solid currentcolor;border-radius:8px;height:2em;margin-block:2em;margin-inline:auto}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9,legend.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9{font-size:24px;font-weight:700;position:relative;padding:0 16px}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(label){padding:0}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:not(:has(label)){opacity:.8}input[type=checkbox].svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{font-size:12px}fieldset.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{max-width:400px;border:1px solid var(--md-sys-color-outline);border-radius:24px}fieldset.svelte-vao3s9:has(>legend input:not(:checked))>.svelte-vao3s9.svelte-vao3s9:not(legend){pointer-events:none;opacity:.7}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9{position:relative;display:flex;gap:16px;align-items:center;justify-content:space-between;margin-block:4px;font-size:14px}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9{border-radius:16px 4px 4px 16px;height:24px;text-align:center}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9:last-child:not(:only-child){border-radius:4px 16px 16px 4px}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9:only-child{border-radius:16px}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9:has(input[type=number]){cursor:text}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9:has(input[type=number]):hover{filter:none}fieldset.svelte-vao3s9 .unit.svelte-vao3s9.svelte-vao3s9{overflow:hidden;display:flex;gap:4px;align-items:center;justify-content:flex-start;width:67px;padding-inline-end:auto;font-size:12px;font-weight:700;background:var(--md-sys-color-secondary-container);border-radius:16px}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9{display:flex;width:5ch;height:100%;padding-block:4px;font-family:Noto Sans Mono,monospace;color:var(--md-sys-color-on-secondary);text-align:end;background:var(--md-sys-color-secondary);border:none}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9::-webkit-inner-spin-button{display:none}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9:after{content:"bleh"}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9:focus{outline:none}fieldset.svelte-vao3s9 ul.svelte-vao3s9.svelte-vao3s9,fieldset.svelte-vao3s9 p.svelte-vao3s9.svelte-vao3s9{font-size:10px}fieldset.svelte-vao3s9 ul.svelte-vao3s9 kbd,fieldset.svelte-vao3s9 p.svelte-vao3s9 kbd{font-size:12px;height:18px}label.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(.pending-changes){color:var(--md-sys-color-primary)}label.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(.pending-changes):before{position:absolute;font-size:16px;top:.5em;right:.25em;content:"•"}
|
||||
1
_app/immutable/assets/9.Di3VqmJi.css
Normal file
1
_app/immutable/assets/9.Di3VqmJi.css
Normal file
@@ -0,0 +1 @@
|
||||
section.svelte-aqc7uo{display:flex;flex-direction:column;gap:8px;width:100%}iframe.svelte-aqc7uo{display:none}button.svelte-aqc7uo{cursor:pointer;display:flex;align-items:center;justify-content:center;width:-moz-min-content;width:min-content;padding-inline-start:0;padding-inline-end:8px;font-size:14px;font-weight:700;color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border:none;border-radius:4px}.editor-root.svelte-aqc7uo{width:100%;height:100%}
|
||||
1
_app/immutable/assets/Action.sztx-c9-.css
Normal file
1
_app/immutable/assets/Action.sztx-c9-.css
Normal file
@@ -0,0 +1 @@
|
||||
p.svelte-18gg13o{margin-block:0}kbd.svelte-18hxb2i:not(.inline-kbd){height:24px;padding-block:auto;transition:color .25s ease}.left.svelte-18hxb2i{border-left-width:3px}.right.svelte-18hxb2i{border-right-width:3px}.dynamic.svelte-18hxb2i{padding:4px;border-radius:1px;min-width:8px;background:var(--md-sys-color-surface-variant)}.dynamic.inline.svelte-18hxb2i{padding:0}.inline-kbd.svelte-18hxb2i{margin-inline-end:2px}span+.inline-kbd.svelte-18hxb2i{margin-inline-start:2px}
|
||||
1
_app/immutable/assets/ActionSelector.BeWmbw0U.css
Normal file
1
_app/immutable/assets/ActionSelector.BeWmbw0U.css
Normal file
@@ -0,0 +1 @@
|
||||
button.svelte-z1pntr{display:flex;gap:4px;align-items:center;width:100%;height:auto;margin:0;padding:8px;font-family:Noto Sans Mono,monospace;border-radius:8px}@media not (forced-colors: active){button.svelte-z1pntr{color:inherit;background:transparent;border:none}button.svelte-z1pntr:focus-visible{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-variant);outline:none}}@media (forced-colors: active){button.svelte-z1pntr{border:1px solid ButtonBorder;margin-block:4px}button.svelte-z1pntr:hover{color:ActiveText}}.title.svelte-z1pntr{display:flex;flex:1;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:start}.warning.svelte-z1pntr{display:flex;align-items:center;gap:4px;color:var(--md-sys-color-error)}.warning.svelte-z1pntr>.icon{font-size:16px}.filters.svelte-1x90noz.svelte-1x90noz{display:flex;gap:4px;border:none}.filters.svelte-1x90noz label.svelte-1x90noz{height:unset;padding-block:2px;padding-inline:4px;font-size:14px;border:1px solid currentcolor;border-radius:6px}.filters.svelte-1x90noz label.svelte-1x90noz:has(:checked){color:var(--md-sys-color-on-secondary);background:var(--md-sys-color-secondary)}.filters.svelte-1x90noz label input.svelte-1x90noz{display:none}dialog.svelte-1x90noz.svelte-1x90noz{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#0009;border:none}aside.svelte-1x90noz.svelte-1x90noz{pointer-events:none;margin:8px;opacity:.4;border:1px dashed var(--md-sys-color-outline);border-radius:8px}aside.svelte-1x90noz>h3.svelte-1x90noz{width:-moz-fit-content;width:fit-content;margin-block-start:-13px;margin-block-end:0;margin-inline-start:16px;padding-inline:8px;background:var(--md-sys-color-background)}@media (prefers-contrast: more){aside.svelte-1x90noz.svelte-1x90noz{opacity:.8}}@media (forced-colors: active){aside.svelte-1x90noz.svelte-1x90noz{opacity:1;color:GrayText}}.search-row.svelte-1x90noz.svelte-1x90noz{display:flex;gap:4px;align-items:center;margin-inline:16px}.content.svelte-1x90noz.svelte-1x90noz{position:relative;transform-origin:top left;overflow:hidden;display:flex;flex-direction:column;width:min(30cm,90%);height:min(100% - 128px,90%);color:var(--md-sys-color-on-background);background:var(--md-sys-color-background);border-radius:16px}@media (forced-colors: active){.content.svelte-1x90noz.svelte-1x90noz{border:1px solid CanvasText}}input[type=search].svelte-1x90noz.svelte-1x90noz{width:100%;height:64px;margin-block-end:8px;padding-inline:16px;font-family:inherit;font-size:16px;color:currentcolor;background:none;border:none;border-bottom:1px solid var(--md-sys-color-surface-variant);transition:all .25s ease}input[type=search].svelte-1x90noz.svelte-1x90noz:focus{border-bottom:1px solid var(--md-sys-color-primary);outline:none}ul.svelte-1x90noz.svelte-1x90noz{--scrollbar-color:var(--md-sys-color-surface-variant);scrollbar-gutter:both-edges stable;overflow-y:auto;box-sizing:border-box;height:100%;margin:0;padding:0;padding-inline:4px}li.svelte-1x90noz.svelte-1x90noz{display:contents}.exact.svelte-1x90noz.svelte-1x90noz{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin-block-start:8px;border:1px solid var(--md-sys-color-primary);border-radius:8px}.exact.svelte-1x90noz>i.svelte-1x90noz{display:flex;gap:4px;align-items:center;justify-content:center;padding-inline:6px;color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border-radius:0 0 8px 8px}@media (forced-colors: active){.exact.svelte-1x90noz.svelte-1x90noz{background:Mark}}
|
||||
1
_app/immutable/assets/PwaStatus.BfcjJEup.css
Normal file
1
_app/immutable/assets/PwaStatus.BfcjJEup.css
Normal file
@@ -0,0 +1 @@
|
||||
button.svelte-9dwesr{cursor:pointer;color:var(--md-sys-color-on-background);background:transparent;border:none}
|
||||
1
_app/immutable/assets/SharePopup.BeWmbw0U.css
Normal file
1
_app/immutable/assets/SharePopup.BeWmbw0U.css
Normal file
@@ -0,0 +1 @@
|
||||
button.svelte-z1pntr{display:flex;gap:4px;align-items:center;width:100%;height:auto;margin:0;padding:8px;font-family:Noto Sans Mono,monospace;border-radius:8px}@media not (forced-colors: active){button.svelte-z1pntr{color:inherit;background:transparent;border:none}button.svelte-z1pntr:focus-visible{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-variant);outline:none}}@media (forced-colors: active){button.svelte-z1pntr{border:1px solid ButtonBorder;margin-block:4px}button.svelte-z1pntr:hover{color:ActiveText}}.title.svelte-z1pntr{display:flex;flex:1;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:start}.warning.svelte-z1pntr{display:flex;align-items:center;gap:4px;color:var(--md-sys-color-error)}.warning.svelte-z1pntr>.icon{font-size:16px}.filters.svelte-1x90noz.svelte-1x90noz{display:flex;gap:4px;border:none}.filters.svelte-1x90noz label.svelte-1x90noz{height:unset;padding-block:2px;padding-inline:4px;font-size:14px;border:1px solid currentcolor;border-radius:6px}.filters.svelte-1x90noz label.svelte-1x90noz:has(:checked){color:var(--md-sys-color-on-secondary);background:var(--md-sys-color-secondary)}.filters.svelte-1x90noz label input.svelte-1x90noz{display:none}dialog.svelte-1x90noz.svelte-1x90noz{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#0009;border:none}aside.svelte-1x90noz.svelte-1x90noz{pointer-events:none;margin:8px;opacity:.4;border:1px dashed var(--md-sys-color-outline);border-radius:8px}aside.svelte-1x90noz>h3.svelte-1x90noz{width:-moz-fit-content;width:fit-content;margin-block-start:-13px;margin-block-end:0;margin-inline-start:16px;padding-inline:8px;background:var(--md-sys-color-background)}@media (prefers-contrast: more){aside.svelte-1x90noz.svelte-1x90noz{opacity:.8}}@media (forced-colors: active){aside.svelte-1x90noz.svelte-1x90noz{opacity:1;color:GrayText}}.search-row.svelte-1x90noz.svelte-1x90noz{display:flex;gap:4px;align-items:center;margin-inline:16px}.content.svelte-1x90noz.svelte-1x90noz{position:relative;transform-origin:top left;overflow:hidden;display:flex;flex-direction:column;width:min(30cm,90%);height:min(100% - 128px,90%);color:var(--md-sys-color-on-background);background:var(--md-sys-color-background);border-radius:16px}@media (forced-colors: active){.content.svelte-1x90noz.svelte-1x90noz{border:1px solid CanvasText}}input[type=search].svelte-1x90noz.svelte-1x90noz{width:100%;height:64px;margin-block-end:8px;padding-inline:16px;font-family:inherit;font-size:16px;color:currentcolor;background:none;border:none;border-bottom:1px solid var(--md-sys-color-surface-variant);transition:all .25s ease}input[type=search].svelte-1x90noz.svelte-1x90noz:focus{border-bottom:1px solid var(--md-sys-color-primary);outline:none}ul.svelte-1x90noz.svelte-1x90noz{--scrollbar-color:var(--md-sys-color-surface-variant);scrollbar-gutter:both-edges stable;overflow-y:auto;box-sizing:border-box;height:100%;margin:0;padding:0;padding-inline:4px}li.svelte-1x90noz.svelte-1x90noz{display:contents}.exact.svelte-1x90noz.svelte-1x90noz{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin-block-start:8px;border:1px solid var(--md-sys-color-primary);border-radius:8px}.exact.svelte-1x90noz>i.svelte-1x90noz{display:flex;gap:4px;align-items:center;justify-content:center;padding-inline:6px;color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border-radius:0 0 8px 8px}@media (forced-colors: active){.exact.svelte-1x90noz.svelte-1x90noz{background:Mark}}
|
||||
1
_app/immutable/assets/_layout.oKCNOR5j.css
Normal file
1
_app/immutable/assets/_layout.oKCNOR5j.css
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/assets/_page.B8XtAH-7.css
Normal file
1
_app/immutable/assets/_page.B8XtAH-7.css
Normal file
@@ -0,0 +1 @@
|
||||
sup.svelte-niexr.svelte-niexr{translate:0 -40%;opacity:0;transition:opacity .25s ease}.cursor.svelte-niexr.svelte-niexr{position:absolute;transform:translate(-50%);translate:0 0;width:2px;height:100%;background:var(--md-sys-color-on-secondary-container);transition:translate 50ms ease}.cursor.svelte-niexr button.svelte-niexr{position:absolute;top:-24px;left:0;height:24px;padding:0;color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);border:2px solid currentcolor;border-radius:12px 12px 12px 0}.edited.svelte-niexr.svelte-niexr{color:var(--md-sys-color-primary)}.edited.svelte-niexr sup.svelte-niexr{opacity:1}[role=textbox].svelte-niexr.svelte-niexr{cursor:text;position:relative;display:flex;align-items:center;height:1em;padding-block:4px}[role=textbox].svelte-niexr.svelte-niexr:after,[role=textbox].svelte-niexr.svelte-niexr:before{content:"";position:absolute;bottom:-4px;width:100%;height:1px;opacity:0;background:currentcolor;transition:opacity .15s ease,scale .25s ease}[role=textbox].svelte-niexr.svelte-niexr:after{scale:0 1;transition-duration:.25s}[role=textbox].svelte-niexr.svelte-niexr:hover:before{opacity:.3}[role=textbox].svelte-niexr.svelte-niexr:focus-within{outline:none}[role=textbox].svelte-niexr.svelte-niexr:focus-within:after{scale:1;opacity:1}span.svelte-1gh96s2.svelte-1gh96s2{opacity:.5}@media (prefers-contrast: more){span.svelte-1gh96s2.svelte-1gh96s2{opacity:.8}}sup.svelte-1gh96s2.svelte-1gh96s2{translate:0 -60%;opacity:0;transition:opacity .25s ease}.add.svelte-1gh96s2.svelte-1gh96s2{font-size:18px;height:20px;opacity:0;--icon-fill:1}.chord.svelte-1gh96s2:hover .add.svelte-1gh96s2{opacity:1}.chord.svelte-1gh96s2.svelte-1gh96s2{position:relative;display:inline-flex;gap:4px;height:32px;margin-inline:4px}.chord.svelte-1gh96s2.svelte-1gh96s2:focus-within{outline:none}.chord.svelte-1gh96s2.svelte-1gh96s2:after{content:"";position:absolute;top:50%;transform-origin:center left;translate:-20px 0;scale:0 1;width:calc(100% - 60px);height:1px;background:currentcolor;transition:scale .25s ease,color .25s ease}.edited.svelte-1gh96s2.svelte-1gh96s2{color:var(--md-sys-color-primary)}.edited.svelte-1gh96s2>sup.svelte-1gh96s2{opacity:1}.invalid.svelte-1gh96s2.svelte-1gh96s2,.deleted.svelte-1gh96s2.svelte-1gh96s2{color:var(--md-sys-color-error)}.deleted.svelte-1gh96s2.svelte-1gh96s2:after{scale:1}.separator.svelte-w21w7s{display:inline-flex;width:1px;height:24px;opacity:.2;background:currentcolor}button.svelte-w21w7s{transition:opacity 75ms ease}td.svelte-w21w7s{position:relative}.table-buttons.svelte-w21w7s{opacity:0;transition:opacity 75ms ease}tr:focus-within>.table-buttons.svelte-w21w7s,tr:hover>.table-buttons.svelte-w21w7s{opacity:1}.search-container.svelte-41xh3q.svelte-41xh3q{display:flex;align-items:center;justify-content:center}.paginator.svelte-41xh3q.svelte-41xh3q{display:flex;justify-content:flex-end;min-width:8ch}.new-chord.svelte-41xh3q .add{visibility:hidden}.sidebar.svelte-41xh3q.svelte-41xh3q{display:flex;flex-direction:column}.sidebar.svelte-41xh3q>button.svelte-41xh3q{padding-inline-start:0}textarea.svelte-41xh3q.svelte-41xh3q{flex:1;transition:outline-color .25s ease;background:none;color:inherit;border:1px dashed var(--md-sys-color-outline);outline:2px solid transparent;outline-offset:-1px;margin:2px;padding:8px;border-radius:4px}textarea.svelte-41xh3q.svelte-41xh3q:focus{outline-color:var(--md-sys-color-primary)}@keyframes svelte-41xh3q-pulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}input[type=search].svelte-41xh3q.svelte-41xh3q{width:512px;margin-block-start:16px;padding-block:8px;padding-inline:16px;font-size:16px;color:inherit;background:none;border:0 solid var(--md-sys-color-surface-variant);border-bottom-width:1px;transition:all .25s ease}@media (prefers-contrast: more){input[type=search].svelte-41xh3q.svelte-41xh3q{border-color:var(--md-sys-color-outline);border-style:dashed}}input[type=search].svelte-41xh3q.svelte-41xh3q::-moz-placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}input[type=search].svelte-41xh3q.svelte-41xh3q::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.8}input[type=search].svelte-41xh3q.svelte-41xh3q:focus{border-color:var(--md-sys-color-primary);border-style:solid;outline:none}input[type=search].loading.svelte-41xh3q.svelte-41xh3q{opacity:.4}section.svelte-41xh3q.svelte-41xh3q{position:relative;display:flex;overflow:hidden;height:100%;padding-inline:8px;border-radius:16px}.results.svelte-41xh3q.svelte-41xh3q{height:100%;min-width:min(90vw,16.5cm)}table.svelte-41xh3q.svelte-41xh3q{height:-moz-fit-content;height:fit-content;overflow:hidden;transition:all 1s ease}
|
||||
1
_app/immutable/assets/_page.BBk4sqFm.css
Normal file
1
_app/immutable/assets/_page.BBk4sqFm.css
Normal file
@@ -0,0 +1 @@
|
||||
.row.svelte-1mjktf5{position:relative;height:48px}.rating-item.svelte-1mjktf5{display:flex;gap:8px;justify-content:flex-start}.rating.svelte-1mjktf5{position:absolute;left:-48px;width:-moz-max-content;width:max-content}
|
||||
1
_app/immutable/assets/_page.BVNnA3qB.css
Normal file
1
_app/immutable/assets/_page.BVNnA3qB.css
Normal file
@@ -0,0 +1 @@
|
||||
text.svelte-1pn6h4o{will-change:translate,scale;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;transform-box:fill-box;transition:fill 10ms ease,opacity .2s ease,translate .2s ease,scale .2s ease}@media (prefers-contrast: more){text.svelte-1pn6h4o{--inactive-opacity:.8;--inactive-scale:.7}}text.svelte-1pn6h4o:focus-within{outline:none}rect.svelte-ct6ehu.svelte-ct6ehu{transform-origin:center;transform-box:fill-box}path.svelte-ct6ehu.svelte-ct6ehu,g.svelte-ct6ehu.svelte-ct6ehu{transform-origin:top left;transform-box:fill-box}path.svelte-ct6ehu.svelte-ct6ehu,rect.svelte-ct6ehu.svelte-ct6ehu{fill:var(--md-sys-color-background);fill-opacity:0;stroke:currentcolor}path.svelte-ct6ehu.svelte-ct6ehu{fill:currentcolor;fill-opacity:0;stroke-opacity:.3}g.svelte-ct6ehu.svelte-ct6ehu:hover{cursor:default;opacity:.6;transition:opacity .2s ease}g.svelte-ct6ehu.svelte-ct6ehu:focus-within{color:var(--md-sys-color-primary);outline:none}g.svelte-ct6ehu:focus-within>path.svelte-ct6ehu,g.svelte-ct6ehu:focus-within>rect.svelte-ct6ehu{fill:currentcolor;fill-opacity:.2}svg.svelte-1nciqmp{overflow:visible;grid-area:"d";width:min(100%,35cm);max-height:calc(100% - 170px)}.container.svelte-mcava{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;margin-bottom:96px}fieldset.svelte-mcava{position:relative;display:flex;align-items:center;justify-content:center;padding:8px;border:none}button.icon.svelte-mcava{cursor:pointer;z-index:1;font-size:24px;color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-variant);border:none;transition:all .25s ease}button.icon.svelte-mcava:nth-child(2){z-index:2;aspect-ratio:1;font-size:32px;border-radius:50%}button.icon.svelte-mcava:first-child,button.icon.svelte-mcava:last-child{aspect-ratio:unset;height:unset}button.icon.svelte-mcava:first-child{margin-inline-end:-8px;padding-inline:4px 24px;border-radius:16px 0 0 16px}button.icon.svelte-mcava:last-child{margin-inline-start:-8px;padding-inline:24px 4px;border-radius:0 16px 16px 0}button.icon.active.svelte-mcava{font-weight:900;color:var(--md-sys-color-on-tertiary);background:var(--md-sys-color-tertiary)}section.svelte-160295n{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
|
||||
1
_app/immutable/assets/_page.CQGEDJFF.css
Normal file
1
_app/immutable/assets/_page.CQGEDJFF.css
Normal file
@@ -0,0 +1 @@
|
||||
form.svelte-vncpgh{position:relative;contain:strict;overflow:hidden;display:flex;flex-direction:column;width:100%;height:100%;font-family:Noto Sans Mono,monospace;font-size:.75rem;color:var(--md-sys-color-on-secondary);border-radius:16px}fieldset.svelte-vncpgh:before{content:"$";position:absolute;bottom:8px;left:8px;font-weight:900}input.svelte-vncpgh{width:100%;margin-block-start:-16px;padding:8px;padding-block-start:24px;padding-inline-start:calc(8px + 1.5ch);font-family:Noto Sans Mono,monospace;font-weight:600;color:var(--md-sys-color-on-secondary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--md-sys-color-secondary);border:none}.io.svelte-vncpgh{--scrollbar-color:var(--md-sys-color-secondary);z-index:1;overflow-y:auto;flex:1;padding:12px;color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container);border-radius:0 0 16px 16px}.svelte-vncpgh:focus-visible{outline:none}fieldset.svelte-vncpgh{all:unset;position:relative;display:block;opacity:.8;transition:opacity .25s ease}fieldset.svelte-vncpgh:focus-within{opacity:1}.anchor.svelte-vncpgh{overflow-anchor:auto;height:1px}code.svelte-vncpgh,samp.svelte-vncpgh,p.svelte-vncpgh{display:block;overflow-anchor:none;margin-block:.15rem}p.svelte-vncpgh{display:flex;justify-content:center;margin-block-end:1rem;padding:.25rem;color:var(--md-sys-color-on-secondary);background:var(--md-sys-color-secondary);border-radius:8px}code.svelte-vncpgh:before{content:"> ";margin-block-end:.25rem;font-weight:900;color:var(--md-sys-color-primary)}.svelte-vncpgh::-moz-selection{color:var(--md-sys-color-background);background:var(--md-sys-color-on-background)}.svelte-vncpgh::selection{color:var(--md-sys-color-background);background:var(--md-sys-color-on-background)}@keyframes svelte-vncpgh-blink{to,60%{opacity:1}40%,0%{opacity:0}}section.svelte-119fxqt{contain:size;overflow:hidden;display:flex;flex-direction:column;flex-grow:1;gap:16px;width:min(100%,28cm);height:100%;margin-block-end:48px}
|
||||
1
_app/immutable/assets/_page.Di3VqmJi.css
Normal file
1
_app/immutable/assets/_page.Di3VqmJi.css
Normal file
@@ -0,0 +1 @@
|
||||
section.svelte-aqc7uo{display:flex;flex-direction:column;gap:8px;width:100%}iframe.svelte-aqc7uo{display:none}button.svelte-aqc7uo{cursor:pointer;display:flex;align-items:center;justify-content:center;width:-moz-min-content;width:min-content;padding-inline-start:0;padding-inline-end:8px;font-size:14px;font-weight:700;color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border:none;border-radius:4px}.editor-root.svelte-aqc7uo{width:100%;height:100%}
|
||||
1
_app/immutable/assets/_page.Dmqm32Ri.css
Normal file
1
_app/immutable/assets/_page.Dmqm32Ri.css
Normal file
@@ -0,0 +1 @@
|
||||
@charset "UTF-8";input[type=text].svelte-1lqm9fg{color:inherit;font-family:inherit;background:none;border:none;border-bottom:1px solid currentcolor;width:100%}input[type=text].svelte-1lqm9fg:focus{outline:none;border-color:var(--md-sys-color-secondary)}button.svelte-1lqm9fg{color:var(--md-sys-color-error)}hr.svelte-y37ne{opacity:.25}section.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{overflow-y:auto;display:flex;flex-flow:row wrap;gap:16px;justify-content:center;margin-block:auto;padding-block-end:48px}button.outline.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{border:1px solid currentcolor;border-radius:8px;height:2em;margin-block:2em;margin-inline:auto}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9,legend.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9{font-size:24px;font-weight:700;position:relative;padding:0 16px}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(label){padding:0}legend.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:not(:has(label)){opacity:.8}input[type=checkbox].svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{font-size:12px}fieldset.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9{max-width:400px;border:1px solid var(--md-sys-color-outline);border-radius:24px}fieldset.svelte-vao3s9:has(>legend input:not(:checked))>.svelte-vao3s9.svelte-vao3s9:not(legend){pointer-events:none;opacity:.7}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9{position:relative;display:flex;gap:16px;align-items:center;justify-content:space-between;margin-block:4px;font-size:14px}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9{border-radius:16px 4px 4px 16px;height:24px;text-align:center}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9:last-child:not(:only-child){border-radius:4px 16px 16px 4px}fieldset.svelte-vao3s9>label.svelte-vao3s9>input[type=number].svelte-vao3s9:only-child{border-radius:16px}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9:has(input[type=number]){cursor:text}fieldset.svelte-vao3s9>label.svelte-vao3s9.svelte-vao3s9:has(input[type=number]):hover{filter:none}fieldset.svelte-vao3s9 .unit.svelte-vao3s9.svelte-vao3s9{overflow:hidden;display:flex;gap:4px;align-items:center;justify-content:flex-start;width:67px;padding-inline-end:auto;font-size:12px;font-weight:700;background:var(--md-sys-color-secondary-container);border-radius:16px}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9{display:flex;width:5ch;height:100%;padding-block:4px;font-family:Noto Sans Mono,monospace;color:var(--md-sys-color-on-secondary);text-align:end;background:var(--md-sys-color-secondary);border:none}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9::-webkit-inner-spin-button{display:none}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9:after{content:"bleh"}fieldset.svelte-vao3s9 input[type=number].svelte-vao3s9.svelte-vao3s9:focus{outline:none}fieldset.svelte-vao3s9 ul.svelte-vao3s9.svelte-vao3s9,fieldset.svelte-vao3s9 p.svelte-vao3s9.svelte-vao3s9{font-size:10px}fieldset.svelte-vao3s9 ul.svelte-vao3s9 kbd,fieldset.svelte-vao3s9 p.svelte-vao3s9 kbd{font-size:12px;height:18px}label.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(.pending-changes){color:var(--md-sys-color-primary)}label.svelte-vao3s9.svelte-vao3s9.svelte-vao3s9:has(.pending-changes):before{position:absolute;font-size:16px;top:.5em;right:.25em;content:"•"}
|
||||
BIN
_app/immutable/assets/icons.min.DJgoKQu_.woff2
Normal file
BIN
_app/immutable/assets/icons.min.DJgoKQu_.woff2
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
2
_app/immutable/chunks/103-key.DDCbGLWx.js
Normal file
2
_app/immutable/chunks/103-key.DDCbGLWx.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const e={name:"103-key",col:[{row:[{key:41},{key:58,offset:[1,0]},{key:59},{key:60},{key:61},{key:62,offset:[.5,0]},{key:63},{key:64},{key:65},{key:66,offset:[.5,0]},{key:67},{key:68},{key:69},{key:70,offset:[.25,0]},{key:71},{key:72}]},{offset:[0,.25],row:[{key:53},{key:30},{key:31},{key:32},{key:33},{key:34},{key:35},{key:36},{key:37},{key:38},{key:39},{key:45},{key:46},{key:42,size:[2,1]},{key:73,offset:[.25,0]},{key:74},{key:75},{key:83,offset:[.25,0]},{key:84},{key:85},{key:86}]},{row:[{key:43,size:[1.5,1]},{key:20},{key:26},{key:8},{key:21},{key:23},{key:28},{key:24},{key:12},{key:18},{key:19},{key:47},{key:48},{key:40,size:[1.5,1]},{key:76,offset:[.25,0]},{key:77},{key:78},{key:95,offset:[.25,0]},{key:96},{key:97},{key:87,size:[1,2]}]},{offset:[0,-1],row:[{key:57,size:[2,1]},{key:4},{key:22},{key:7},{key:9},{key:10},{key:11},{key:13},{key:14},{key:15},{key:51},{key:52},{key:49,size:[2,1]},{key:92,offset:[3.5,0]},{key:93},{key:94}]},{row:[{key:225,size:[2.5,1]},{key:29},{key:27},{key:6},{key:25},{key:5},{key:17},{key:16},{key:54},{key:55},{key:56},{key:229,size:[2.5,1]},{key:82,offset:[1.25,0]},{key:89,offset:[1.25,0]},{key:90},{key:91},{key:88,size:[1,2]}]},{offset:[0,-1],row:[{key:224,size:[1.5,1]},{key:227},{key:226,size:[1.5,1]},{key:44,size:[7,1]},{key:230,size:[1.5,1]},{key:231},{key:228,size:[1.5,1]},{key:80,offset:[.25,0]},{key:81},{key:79},{key:98,offset:[.25,0],size:[2,1]},{key:99}]}]};export{e as default};
|
||||
//# sourceMappingURL=103-key.DDCbGLWx.js.map
|
||||
1
_app/immutable/chunks/103-key.DDCbGLWx.js.map
Normal file
1
_app/immutable/chunks/103-key.DDCbGLWx.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"103-key.DDCbGLWx.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/Action.tNSJ0eLt.js
Normal file
2
_app/immutable/chunks/Action.tNSJ0eLt.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/Action.tNSJ0eLt.js.map
Normal file
1
_app/immutable/chunks/Action.tNSJ0eLt.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/ActionString.Chtx0xAR.js
Normal file
2
_app/immutable/chunks/ActionString.Chtx0xAR.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{s as g,y as f,i as h,f as p}from"./scheduler.CXEVs2ap.js";import{S as k,i as b,g as A,c as S,a as d,t as y,e as w,f as $,m as R,h as q}from"./index.CTdcniaS.js";import{e as _,u as v,o as B}from"./each.CypvCfon.js";import{A as C}from"./Action.tNSJ0eLt.js";const E=!0,D=E;function u(r,t,s){const i=r.slice();return i[2]=t[s],i[4]=s,i}function m(r,t){let s,i,a;return i=new C({props:{action:t[2],display:t[1]}}),{key:r,first:null,c(){s=f(),w(i.$$.fragment),this.h()},l(n){s=f(),$(i.$$.fragment,n),this.h()},h(){this.first=s},m(n,l){h(n,s,l),R(i,n,l),a=!0},p(n,l){t=n;const e={};l&1&&(e.action=t[2]),l&2&&(e.display=t[1]),i.$set(e)},i(n){a||(d(i.$$.fragment,n),a=!0)},o(n){y(i.$$.fragment,n),a=!1},d(n){n&&p(s),q(i,n)}}}function M(r){let t=[],s=new Map,i,a,n=_(r[0]);const l=e=>`${typeof e[2]=="number"?e[2]:e[2].code}:${e[4]}`;for(let e=0;e<n.length;e+=1){let o=u(r,n,e),c=l(o);s.set(c,t[e]=m(c,o))}return{c(){for(let e=0;e<t.length;e+=1)t[e].c();i=f()},l(e){for(let o=0;o<t.length;o+=1)t[o].l(e);i=f()},m(e,o){for(let c=0;c<t.length;c+=1)t[c]&&t[c].m(e,o);h(e,i,o),a=!0},p(e,[o]){o&3&&(n=_(e[0]),A(),t=v(t,o,l,1,e,n,s,i.parentNode,B,m,i,u),S())},i(e){if(!a){for(let o=0;o<n.length;o+=1)d(t[o]);a=!0}},o(e){for(let o=0;o<t.length;o+=1)y(t[o]);a=!1},d(e){e&&p(i);for(let o=0;o<t.length;o+=1)t[o].d(e)}}}function N(r,t,s){let{actions:i}=t,{display:a="inline-keys"}=t;return r.$$set=n=>{"actions"in n&&s(0,i=n.actions),"display"in n&&s(1,a=n.display)},[i,a]}class F extends k{constructor(t){super(),b(this,t,N,M,g,{actions:0,display:1})}}export{F as A,D as b};
|
||||
//# sourceMappingURL=ActionString.Chtx0xAR.js.map
|
||||
1
_app/immutable/chunks/ActionString.Chtx0xAR.js.map
Normal file
1
_app/immutable/chunks/ActionString.Chtx0xAR.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"ActionString.Chtx0xAR.js","sources":["../../../../../../node_modules/.pnpm/esm-env@1.0.0/node_modules/esm-env/prod-browser.js","../../../../../../node_modules/.pnpm/@sveltejs+kit@2.5.18_@sveltejs+vite-plugin-svelte@3.1.1_svelte@4.2.18_vite@5.3.3/node_modules/@sveltejs/kit/src/runtime/app/environment/index.js","../../../../../../src/lib/components/ActionString.svelte"],"sourcesContent":["export const BROWSER = true;\nexport const DEV = false;\n","import { BROWSER, DEV } from 'esm-env';\nexport { building, version } from '__sveltekit/environment';\n\nexport const browser = BROWSER;\n\nexport const dev = DEV;\n","<script lang=\"ts\">\n import Action from \"$lib/components/Action.svelte\";\n import type { KeyInfo } from \"$lib/serial/keymap-codes\";\n\n export let actions: Array<number | KeyInfo>;\n export let display: \"keys\" | \"inline-keys\" = \"inline-keys\";\n</script>\n\n{#each actions as action, i (`${typeof action === \"number\" ? action : action.code}:${i}`)}\n <Action {action} {display} />\n{/each}\n"],"names":["BROWSER","browser","ctx","get_key","i","actions","$$props","display"],"mappings":"sQAAO,MAAMA,EAAU,GCGVC,EAAUD,yeCKhBE,EAAO,CAAA,CAAA,EAAyB,MAAAC,EAAAD,GAAA,GAAA,OAAAA,MAAW,SAAWA,EAAM,CAAA,EAAGA,EAAM,CAAA,EAAC,IAAI,IAAIA,EAAC,CAAA,CAAA,mBAApF,OAAIE,GAAA,EAAA,4OAACF,EAAO,CAAA,CAAA,gFAAZ,OAAIE,GAAA,2IAJO,QAAAC,CAAgC,EAAAC,EAChC,CAAA,QAAAC,EAAkC,aAAa,EAAAD","x_google_ignoreList":[0,1]}
|
||||
2
_app/immutable/chunks/PwaStatus.DCC9dwtH.js
Normal file
2
_app/immutable/chunks/PwaStatus.DCC9dwtH.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{s as W,y as g,i as _,n as u,f as h,k as w,e as y,c as k,l as v,m as p,q as E}from"./scheduler.CXEVs2ap.js";import{S as x,i as L}from"./index.CTdcniaS.js";import{_ as C}from"./preload-helper.Dch09mLN.js";import{w as R}from"./index.Lgv2TFSy.js";function N(l={}){const{immediate:e=!1,onNeedRefresh:s,onOfflineReady:n,onRegistered:t,onRegisteredSW:i,onRegisterError:r}=l;let o,c,f;const b=async(a=!0)=>{await c,await f?.()};async function S(){if("serviceWorker"in navigator){if(o=await C(async()=>{const{Workbox:a}=await import("./workbox-window.prod.es5.D5gOYdM7.js");return{Workbox:a}},[],import.meta.url).then(({Workbox:a})=>new a("/sw.js",{scope:"/",type:"classic"})).catch(a=>{r?.(a)}),!o)return;f=async()=>{await o?.messageSkipWaiting()};{let a=!1;const m=()=>{a=!0,o?.addEventListener("controlling",d=>{d.isUpdate&&window.location.reload()}),s?.()};o.addEventListener("installed",d=>{typeof d.isUpdate>"u"?typeof d.isExternal<"u"?d.isExternal?m():!a&&n?.():d.isExternal?window.location.reload():!a&&n?.():d.isUpdate||n?.()}),o.addEventListener("waiting",m),o.addEventListener("externalwaiting",m)}o.register({immediate:e}).then(a=>{i?i("/sw.js",a):t?.(a)}).catch(a=>{r?.(a)})}}return c=S(),b}function P(l={}){const{immediate:e=!0,onNeedRefresh:s,onOfflineReady:n,onRegistered:t,onRegisteredSW:i,onRegisterError:r}=l,o=R(!1),c=R(!1),f=N({immediate:e,onOfflineReady(){c.set(!0),n?.()},onNeedRefresh(){o.set(!0),s?.()},onRegistered:t,onRegisteredSW:i,onRegisterError:r});return{needRefresh:o,offlineReady:c,updateServiceWorker:f}}function U(l){let e,s="offline_pin";return{c(){e=y("div"),e.textContent=s,this.h()},l(n){e=k(n,"DIV",{title:!0,class:!0,"data-svelte-h":!0}),v(e)!=="svelte-u4b4iq"&&(e.textContent=s),this.h()},h(){p(e,"title","App can now be used offline"),p(e,"class","icon")},m(n,t){_(n,e,t)},p:u,d(n){n&&h(e)}}}function O(l){let e,s='Update <span class="icon">update</span>',n,t;return{c(){e=y("button"),e.innerHTML=s,this.h()},l(i){e=k(i,"BUTTON",{title:!0,class:!0,"data-svelte-h":!0}),v(e)!=="svelte-trksef"&&(e.innerHTML=s),this.h()},h(){p(e,"title","Update ready"),p(e,"class","svelte-9dwesr")},m(i,r){_(i,e,r),n||(t=E(e,"click",l[5]),n=!0)},p:u,d(i){i&&h(e),n=!1,t()}}}function T(l){let e;function s(i,r){if(i[0])return O;if(i[1])return U}let n=s(l),t=n&&n(l);return{c(){t&&t.c(),e=g()},l(i){t&&t.l(i),e=g()},m(i,r){t&&t.m(i,r),_(i,e,r)},p(i,[r]){n===(n=s(i))&&t?t.p(i,r):(t&&t.d(1),t=n&&n(i),t&&(t.c(),t.m(e.parentNode,e)))},i:u,o:u,d(i){i&&h(e),t&&t.d(i)}}}function q(l,e,s){let n,t;const{needRefresh:i,updateServiceWorker:r,offlineReady:o}=P();return w(l,i,f=>s(0,n=f)),w(l,o,f=>s(1,t=f)),[n,t,i,r,o,()=>r(!0)]}class H extends x{constructor(e){super(),L(this,e,q,T,W,{})}}export{H as default};
|
||||
//# sourceMappingURL=PwaStatus.DCC9dwtH.js.map
|
||||
1
_app/immutable/chunks/PwaStatus.DCC9dwtH.js.map
Normal file
1
_app/immutable/chunks/PwaStatus.DCC9dwtH.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/SharePopup.DIKEC4Cs.js
Normal file
2
_app/immutable/chunks/SharePopup.DIKEC4Cs.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/SharePopup.DIKEC4Cs.js.map
Normal file
1
_app/immutable/chunks/SharePopup.DIKEC4Cs.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/_virtual_pwa-info.D2ZL56Zr.js
Normal file
2
_app/immutable/chunks/_virtual_pwa-info.D2ZL56Zr.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const e={pwaInDevEnvironment:!1,webManifest:{href:"/manifest.webmanifest",useCredentials:!1,linkTag:'<link rel="manifest" href="/manifest.webmanifest">'}};export{e as pwaInfo};
|
||||
//# sourceMappingURL=_virtual_pwa-info.D2ZL56Zr.js.map
|
||||
1
_app/immutable/chunks/_virtual_pwa-info.D2ZL56Zr.js.map
Normal file
1
_app/immutable/chunks/_virtual_pwa-info.D2ZL56Zr.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"_virtual_pwa-info.D2ZL56Zr.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/ascii-macros.BH6-GvlY.js
Normal file
2
_app/immutable/chunks/ascii-macros.BH6-GvlY.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const e={name:"ASCII Macros",description:"ASCII Characters that are macros for SHFT + key",actions:{33:{id:"!",title:"Exclamation Point"},34:{id:'"',title:"Double Quote"},35:{id:"#",title:"Hash Symbol"},36:{id:"$",title:"Dollar Sign"},37:{id:"%",title:"Percent"},38:{id:"&",title:"Ampersand"},40:{id:"(",title:"Opening Parenthesis"},41:{id:")",title:"Closing Parenthesis"},42:{id:"*",title:"Asterisk"},43:{id:"+",title:"Plus"},58:{id:":",title:"Colon"},60:{id:"<",title:"Less Than"},62:{id:">",title:"Greater Than"},63:{id:"?",title:"Question Mark"},64:{id:"@",title:"At Symbol"},65:{id:"A",title:"Uppercase A"},66:{id:"B",title:"Uppercase B"},67:{id:"C",title:"Uppercase C"},68:{id:"D",title:"Uppercase D"},69:{id:"E",title:"Uppercase E"},70:{id:"F",title:"Uppercase F"},71:{id:"G",title:"Uppercase G"},72:{id:"H",title:"Uppercase H"},73:{id:"I",title:"Uppercase I"},74:{id:"J",title:"Uppercase J"},75:{id:"K",title:"Uppercase K"},76:{id:"L",title:"Uppercase L"},77:{id:"M",title:"Uppercase M"},78:{id:"N",title:"Uppercase N"},79:{id:"O",title:"Uppercase O"},80:{id:"P",title:"Uppercase P"},81:{id:"Q",title:"Uppercase Q"},82:{id:"R",title:"Uppercase R"},83:{id:"S",title:"Uppercase S"},84:{id:"T",title:"Uppercase T"},85:{id:"U",title:"Uppercase U"},86:{id:"V",title:"Uppercase V"},87:{id:"W",title:"Uppercase W"},88:{id:"X",title:"Uppercase X"},89:{id:"Y",title:"Uppercase Y"},90:{id:"Z",title:"Uppercase Z"},94:{id:"^",title:"Caret"},95:{id:"_",title:"Underscore"},123:{id:"{",title:"Left Curly Brace"},124:{id:"|",title:"Pipe"},125:{id:"}",title:"Right Curly Brace"},126:{id:"~",title:"Tilde"}}};export{e as default};
|
||||
//# sourceMappingURL=ascii-macros.BH6-GvlY.js.map
|
||||
1
_app/immutable/chunks/ascii-macros.BH6-GvlY.js.map
Normal file
1
_app/immutable/chunks/ascii-macros.BH6-GvlY.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"ascii-macros.BH6-GvlY.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
4
_app/immutable/chunks/ascii.D6z9aYbp.js
Normal file
4
_app/immutable/chunks/ascii.D6z9aYbp.js
Normal file
@@ -0,0 +1,4 @@
|
||||
const e={name:"ASCII",description:"ASCII Charset",actions:{32:{id:"SPACE",icon:"space_bar",description:`While SPACE is used for keymaps and chord, just a " " is used in chord outputs.
|
||||
This action is unique in this way. Technically it is "printable", but it is not visible.
|
||||
`},39:{id:"'",title:"Single Quote"},44:{id:",",title:"Comma"},45:{id:"-",title:"Minus"},46:{id:".",title:"Period"},47:{id:"/",title:"Forward Slash"},48:{id:"0",title:"Zero"},49:{id:"1",title:"One"},50:{id:"2",title:"Two"},51:{id:"3",title:"Three"},52:{id:"4",title:"Four"},53:{id:"5",title:"Five"},54:{id:"6",title:"Six"},55:{id:"7",title:"Seven"},56:{id:"8",title:"Eight"},57:{id:"9",title:"Nine"},59:{id:";",title:"Semicolon"},61:{id:"=",title:"Equals"},91:{id:"[",title:"Left Bracket"},92:{id:"\\",title:"Backslash"},93:{id:"]",title:"Right Bracket"},96:{id:"`",title:"Backtick"},97:{id:"a",title:"Lowercase a"},98:{id:"b",title:"Lowercase b"},99:{id:"c",title:"Lowercase c"},100:{id:"d",title:"Lowercase d"},101:{id:"e",title:"Lowercase e"},102:{id:"f",title:"Lowercase f"},103:{id:"g",title:"Lowercase g"},104:{id:"h",title:"Lowercase h"},105:{id:"i",title:"Lowercase i"},106:{id:"j",title:"Lowercase j"},107:{id:"k",title:"Lowercase k"},108:{id:"l",title:"Lowercase l"},109:{id:"m",title:"Lowercase m"},110:{id:"n",title:"Lowercase n"},111:{id:"o",title:"Lowercase o"},112:{id:"p",title:"Lowercase p"},113:{id:"q",title:"Lowercase q"},114:{id:"r",title:"Lowercase r"},115:{id:"s",title:"Lowercase s"},116:{id:"t",title:"Lowercase t"},117:{id:"u",title:"Lowercase u"},118:{id:"v",title:"Lowercase v"},119:{id:"w",title:"Lowercase w"},120:{id:"x",title:"Lowercase x"},121:{id:"y",title:"Lowercase y"},122:{id:"z",title:"Lowercase z"},127:{id:"DEL",title:"Delete"}}};export{e as default};
|
||||
//# sourceMappingURL=ascii.D6z9aYbp.js.map
|
||||
1
_app/immutable/chunks/ascii.D6z9aYbp.js.map
Normal file
1
_app/immutable/chunks/ascii.D6z9aYbp.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"ascii.D6z9aYbp.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
||||
4
_app/immutable/chunks/chara-chorder-one.DOAjPKvk.js
Normal file
4
_app/immutable/chunks/chara-chorder-one.DOAjPKvk.js
Normal file
@@ -0,0 +1,4 @@
|
||||
const i={name:"CharaChorder One",description:`CharaChorder One specific actions.
|
||||
Mainly used for chords with unassigned 3D presses
|
||||
`,type:"unassigned",actions:{600:{id:"LH_THUMB_3_3D",title:"Left Hand Thumb Bottom 3D Click",icon:"adjust"},601:{id:"LH_THUMB_2_3D",title:"Left Hand Thumb Middle 3D Click",icon:"adjust"},602:{id:"LH_THUMB_1_3D",title:"Left Hand Thumb Top 3D Click",icon:"adjust"},603:{id:"LH_INDEX_3D",title:"Left Hand Index Finger 3D Click",icon:"adjust"},604:{id:"LH_MID_1_3D",title:"Left Hand Middle Finger 3D Click",icon:"adjust"},605:{id:"LH_RING_1_3D",title:"Left Hand Ring Finger 3D Click",icon:"adjust"},606:{id:"LH_PINKY_3D",title:"Left Hand Pinky 3D Click",icon:"adjust"},607:{id:"LH_MID_2_3D",title:"Left Hand Middle Finger 2 3D Click",icon:"adjust"},608:{id:"LH_RING_2_3D",title:"Left Hand Ring Finger 2 3D Click",icon:"adjust"},609:{id:"RH_THUMB_3_3D",title:"Right Hand Thumb Bottom 3D Click",icon:"adjust"},610:{id:"RH_THUMB_2_3D",title:"Right Hand Thumb Middle 3D Click",icon:"adjust"},611:{id:"RH_THUMB_1_3D",title:"Right Hand Thumb Top 3D Click",icon:"adjust"},612:{id:"RH_INDEX_3D",title:"Right Hand Index Finger 3D Click",icon:"adjust"},613:{id:"RH_MID_1_3D",title:"Right Hand Middle Finger 3D Click",icon:"adjust"},614:{id:"RH_RING_1_3D",title:"Right Hand Ring Finger 3D Click",icon:"adjust"},615:{id:"RH_PINKY_3D",title:"Right Hand Pinky 3D Click",icon:"adjust"},616:{id:"RH_MID_2_3D",title:"Right Hand Middle Finger 2 3D Click",icon:"adjust"},617:{id:"RH_RING_2_3D",title:"Right Hand Ring Finger 2 3D Click",icon:"adjust"}}};export{i as default};
|
||||
//# sourceMappingURL=chara-chorder-one.DOAjPKvk.js.map
|
||||
1
_app/immutable/chunks/chara-chorder-one.DOAjPKvk.js.map
Normal file
1
_app/immutable/chunks/chara-chorder-one.DOAjPKvk.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"chara-chorder-one.DOAjPKvk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
||||
30
_app/immutable/chunks/chara-chorder.Dz6u1fyJ.js
Normal file
30
_app/immutable/chunks/chara-chorder.Dz6u1fyJ.js
Normal file
@@ -0,0 +1,30 @@
|
||||
const t={name:"CharaChorder",description:"CharaChorder specific actions",actions:{0:{id:"NO_ACTION",display:"No Action"},528:{id:"RESTART",title:"Restart Device",icon:"restart_alt"},530:{id:"BOOT",title:"Reboot to Bootloader",icon:"rule_settings"},532:{id:"GTM",title:"Toggle Generative Text Menu",icon:"terminal",description:`Text based menu which is accessible anywhere you can type.
|
||||
It allows you to access various device settings and features
|
||||
without the need for software and is activated by chording both alt keys together.
|
||||
`},534:{id:"IMPULSE",title:"Toggle Impulse",icon:"heap_snapshot_multiple",description:`An 'on-the-fly' custom chord which can be spontaneously created anywhere that you can type via the GTM
|
||||
`},536:{id:"DUP",title:"Repeat Last Note",icon:"copy_all",description:`In character entry, it repeats your last input.
|
||||
In chorded entry, it is used for words with repeating letters.
|
||||
`},538:{id:"SPUR",title:"Spurring Toggle",icon:"piano",description:`'Chording only' mode which tells your device to output chords on a press rather than a press & release.
|
||||
It also enables you to jump from one chord to another without releasing everything and can be activated
|
||||
in GTM or by chording both mirror keys. It can provide significant speed gains with chording,
|
||||
but also takes away the flexibility of character entry.
|
||||
Spurring also helps new users learn how to chord by eliminating the need to focus on timing.
|
||||
Spurring is toggled by chording both of the 'mirror' keys together.
|
||||
`},540:{id:"AMBILEFT",title:"Ambidextrous Throwover",icon:"switch_left",variant:"left",description:`Entry mode designed for one-handed typing.
|
||||
Characters from the opposite hand are mirrored to the hand which activates this feature.
|
||||
`},542:{variantOf:540,id:"AMBIRIGHT",title:"Ambidextrous Throwover",icon:"switch_right",variant:"right",description:`Entry mode designed for one-handed typing.
|
||||
Characters from the opposite hand are mirrored to the hand which activates this feature.
|
||||
`},544:{variantOf:36,id:"SPACERIGHT",display:" ",title:"Right Spacebar (eg CC Lite)",icon:"space_bar",variant:"right"},548:{id:"KM_1_L",title:"Primary Keymap",icon:"counter_1",variant:"left",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},549:{variantOf:548,id:"KM_1_R",title:"Primary Keymap",icon:"counter_1",variant:"right",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},550:{id:"KM_2_L",title:"Numeric Layer",icon:"counter_2",variant:"left",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},551:{variantOf:550,id:"KM_2_R",title:"Numeric Layer",icon:"counter_2",variant:"right",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},552:{id:"KM_3_L",title:"Function Layer",icon:"counter_3",variant:"left",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},553:{variationOf:552,id:"KM_3_R",title:"Function Layer",icon:"counter_3",variant:"right",description:`Acts as a toggle if the same action is not assigned
|
||||
to the target layer
|
||||
`},576:{id:"ACTION_DELAY_1000",icon:"clock_loader_90",description:"Wait for one second"},577:{id:"ACTION_DELAY_100",icon:"clock_loader_60",description:"Wait for 100 milliseconds"},578:{id:"ACTION_DELAY_10",icon:"clock_loader_40",description:"Wait for 10 milliseconds"},579:{id:"ACTION_DELAY_1",icon:"clock_loader_10",description:"Wait for one millisecond"}}};export{t as default};
|
||||
//# sourceMappingURL=chara-chorder.Dz6u1fyJ.js.map
|
||||
1
_app/immutable/chunks/chara-chorder.Dz6u1fyJ.js.map
Normal file
1
_app/immutable/chunks/chara-chorder.Dz6u1fyJ.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"chara-chorder.Dz6u1fyJ.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
||||
5
_app/immutable/chunks/connection.wgaIHNYB.js
Normal file
5
_app/immutable/chunks/connection.wgaIHNYB.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/connection.wgaIHNYB.js.map
Normal file
1
_app/immutable/chunks/connection.wgaIHNYB.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/control.CYgJF_JY.js
Normal file
2
_app/immutable/chunks/control.CYgJF_JY.js
Normal file
@@ -0,0 +1,2 @@
|
||||
class i{constructor(t,s){this.status=t,typeof s=="string"?this.body={message:s}:s?this.body=s:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class o{constructor(t,s){this.status=t,this.location=s}}class a extends Error{constructor(t,s,e){super(e),this.status=t,this.text=s}}export{i as H,o as R,a as S};
|
||||
//# sourceMappingURL=control.CYgJF_JY.js.map
|
||||
1
_app/immutable/chunks/control.CYgJF_JY.js.map
Normal file
1
_app/immutable/chunks/control.CYgJF_JY.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"control.CYgJF_JY.js","sources":["../../../../../../node_modules/.pnpm/@sveltejs+kit@2.5.18_@sveltejs+vite-plugin-svelte@3.1.1_svelte@4.2.18_vite@5.3.3/node_modules/@sveltejs/kit/src/runtime/control.js"],"sourcesContent":["export class HttpError {\n\t/**\n\t * @param {number} status\n\t * @param {{message: string} extends App.Error ? (App.Error | string | undefined) : App.Error} body\n\t */\n\tconstructor(status, body) {\n\t\tthis.status = status;\n\t\tif (typeof body === 'string') {\n\t\t\tthis.body = { message: body };\n\t\t} else if (body) {\n\t\t\tthis.body = body;\n\t\t} else {\n\t\t\tthis.body = { message: `Error: ${status}` };\n\t\t}\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this.body);\n\t}\n}\n\nexport class Redirect {\n\t/**\n\t * @param {300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308} status\n\t * @param {string} location\n\t */\n\tconstructor(status, location) {\n\t\tthis.status = status;\n\t\tthis.location = location;\n\t}\n}\n\n/**\n * An error that was thrown from within the SvelteKit runtime that is not fatal and doesn't result in a 500, such as a 404.\n * `SvelteKitError` goes through `handleError`.\n * @extends Error\n */\nexport class SvelteKitError extends Error {\n\t/**\n\t * @param {number} status\n\t * @param {string} text\n\t * @param {string} message\n\t */\n\tconstructor(status, text, message) {\n\t\tsuper(message);\n\t\tthis.status = status;\n\t\tthis.text = text;\n\t}\n}\n\n/**\n * @template {Record<string, unknown> | undefined} [T=undefined]\n */\nexport class ActionFailure {\n\t/**\n\t * @param {number} status\n\t * @param {T} data\n\t */\n\tconstructor(status, data) {\n\t\tthis.status = status;\n\t\tthis.data = data;\n\t}\n}\n\n/**\n * This is a grotesque hack that, in dev, allows us to replace the implementations\n * of these classes that you'd get by importing them from `@sveltejs/kit` with the\n * ones that are imported via Vite and loaded internally, so that instanceof\n * checks work even though SvelteKit imports this module via Vite and consumers\n * import it via Node\n * @param {{\n * ActionFailure: typeof ActionFailure;\n * HttpError: typeof HttpError;\n * Redirect: typeof Redirect;\n * SvelteKitError: typeof SvelteKitError;\n * }} implementations\n */\nexport function replace_implementations(implementations) {\n\t// @ts-expect-error\n\tActionFailure = implementations.ActionFailure; // eslint-disable-line no-class-assign\n\t// @ts-expect-error\n\tHttpError = implementations.HttpError; // eslint-disable-line no-class-assign\n\t// @ts-expect-error\n\tRedirect = implementations.Redirect; // eslint-disable-line no-class-assign\n\t// @ts-expect-error\n\tSvelteKitError = implementations.SvelteKitError; // eslint-disable-line no-class-assign\n}\n"],"names":["HttpError","status","body","Redirect","location","SvelteKitError","text","message"],"mappings":"AAAO,MAAMA,CAAU,CAKtB,YAAYC,EAAQC,EAAM,CACzB,KAAK,OAASD,EACV,OAAOC,GAAS,SACnB,KAAK,KAAO,CAAE,QAASA,CAAI,EACjBA,EACV,KAAK,KAAOA,EAEZ,KAAK,KAAO,CAAE,QAAS,UAAUD,CAAM,GAExC,CAED,UAAW,CACV,OAAO,KAAK,UAAU,KAAK,IAAI,CAC/B,CACF,CAEO,MAAME,CAAS,CAKrB,YAAYF,EAAQG,EAAU,CAC7B,KAAK,OAASH,EACd,KAAK,SAAWG,CAChB,CACF,CAOO,MAAMC,UAAuB,KAAM,CAMzC,YAAYJ,EAAQK,EAAMC,EAAS,CAClC,MAAMA,CAAO,EACb,KAAK,OAASN,EACd,KAAK,KAAOK,CACZ,CACF","x_google_ignoreList":[0]}
|
||||
2
_app/immutable/chunks/cp-1252.BONzQ9X0.js
Normal file
2
_app/immutable/chunks/cp-1252.BONzQ9X0.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const i={name:"CP-1252",description:"CP-1252 Charset",actions:{128:{id:"€",title:"Uppercase cedilla"},129:{title:"HOP (High Octet Preset)"},130:{id:"‚",title:"Single Low-9 Quotation Mark"},131:{id:"ƒ",title:"Latin Small Letter f with Hook; Florin"},132:{id:"„",title:"Double Low-9 Quotation Mark"},133:{id:"…",title:"Horizontal Ellipsis"},134:{id:"†",title:"Dagger"},135:{id:"‡",title:"Double Dagger"},136:{id:"ˆ",title:"Circumflex"},137:{id:"‰",title:"Per Mile"},138:{id:"Š",title:"Captial S Caron"},139:{id:"‹",title:"Left Guillemet"},140:{id:"Œ",title:"Captial Ligature OE"},141:{title:"RI (Reverse Index)"},142:{id:"Ž",title:"Captial Z Caron"},143:{title:"SS3 (Single-Shift G3)"},144:{title:"DCS (Device Control String)"},145:{id:"‘",title:"Single Quote Left"},146:{id:"’",title:"Single Quote Right"},147:{id:"“",title:"Double Quote Left"},148:{id:"”",title:"Double Quote Right"},149:{id:"•",title:"Bullet"},150:{id:"–",title:"En Dash"},151:{id:"—",title:"Em Dash"},152:{id:"˜",title:"Small Tilde"},153:{id:"™",title:"Trademark"},154:{id:"š",title:"Small s Carson"},155:{id:"›",title:"Right Guillement"},156:{id:"œ",title:"Small Ligature oe"},157:{title:"Operating System Command"},158:{id:"ž",title:"Small Z Caron"},159:{id:"Ÿ",title:"Capital Y Diaresis"},160:{id:" ",title:"No Break Space"},161:{id:"¡",title:"Inverted Exclamation"},162:{id:"¢",title:"Cent"},163:{id:"£",title:"Pound"},164:{id:"¤",title:"Currency"},165:{id:"¥",title:"Yen"},166:{id:"¦",title:"Broken Bar"},167:{id:"§",title:"Section"},168:{id:"¨",title:"Diaresis"},169:{id:"©",title:"Copyright"},170:{id:"ª",title:"Feminine Ordinal"},171:{id:"«",title:"Double Left Guillement"},172:{id:"¬",title:"Not"},173:{id:"",title:"Soft Hyphen"},174:{id:"®",title:"Registered"},175:{id:"¯",title:"Macron"},176:{id:"°",title:"Degree"},177:{id:"±",title:"Plus Minus"},178:{id:"²",title:"Superscript Two"},179:{id:"³",title:"Superscript Three"},180:{id:"´",title:"Acute"},181:{id:"µ",title:"Micro"},182:{id:"¶",title:"Pilcrow"},183:{id:"·",title:"Middle Dot"},184:{id:"¸",title:"Cedilla"},185:{id:"¹",title:"Superscript One"},186:{id:"º",title:"Masculine Ordinal"},187:{id:"»",title:"Double Right Guillement"},188:{id:"¼",title:"One Quarter Fraction"},189:{id:"½",title:"One Half Fraction"},190:{id:"¾",title:"Three Quarters Fraction"},191:{id:"¿",title:"Inverted Question"},192:{id:"À",title:"Captial A Grave"},193:{id:"Á"},194:{id:"Â"},195:{id:"Ã"},196:{id:"Ä"},197:{id:"Å"},198:{id:"Æ"},199:{id:"Ç"},200:{id:"È"},201:{id:"É"},202:{id:"Ê"},203:{id:"Ë"},204:{id:"Ì"},205:{id:"Í"},206:{id:"Î"},207:{id:"Ï"},208:{id:"Ð"},209:{id:"Ñ"},210:{id:"Ò"},211:{id:"Ó"},212:{id:"Ô"},213:{id:"Õ"},214:{id:"Ö"},215:{id:"×"},216:{id:"Ø"},217:{id:"Ù"},218:{id:"Ú"},219:{id:"Û"},220:{id:"Ü"},221:{id:"Ý"},222:{id:"Þ"},223:{id:"ß"},224:{id:"à"},225:{id:"á"},226:{id:"â"},227:{id:"ã"},228:{id:"ä"},229:{id:"å"},230:{id:"æ"},231:{id:"ç"},232:{id:"è"},233:{id:"é"},234:{id:"ê"},235:{id:"ë"},236:{id:"ì"},237:{id:"í"},238:{id:"î"},239:{id:"ï"},240:{id:"ð"},241:{id:"ñ"},242:{id:"ò"},243:{id:"ó"},244:{id:"ô"},245:{id:"õ"},246:{id:"ö"},247:{id:"÷"},248:{id:"ø"},249:{id:"ù"},250:{id:"ú"},251:{id:"û"},252:{id:"ü"},253:{id:"ý"},254:{id:"þ"},255:{id:"ÿ",title:"Small y Diaeresis"}}};export{i as default};
|
||||
//# sourceMappingURL=cp-1252.BONzQ9X0.js.map
|
||||
1
_app/immutable/chunks/cp-1252.BONzQ9X0.js.map
Normal file
1
_app/immutable/chunks/cp-1252.BONzQ9X0.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"cp-1252.BONzQ9X0.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/each.CypvCfon.js
Normal file
2
_app/immutable/chunks/each.CypvCfon.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{t as j,a as q}from"./index.CTdcniaS.js";import{r as z}from"./scheduler.CXEVs2ap.js";function E(n){return n?.length!==void 0?n:Array.from(n)}function F(n,f){j(n,1,1,()=>{f.delete(n.key)})}function G(n,f,M,B,v,y,c,S,m,x,h,A){let i=n.length,o=y.length,a=i;const w={};for(;a--;)w[n[a].key]=a;const l=[],r=new Map,u=new Map,g=[];for(a=o;a--;){const e=A(v,y,a),t=M(e);let s=c.get(t);s?g.push(()=>s.p(e,f)):(s=x(t,e),s.c()),r.set(t,l[a]=s),t in w&&u.set(t,Math.abs(a-w[t]))}const p=new Set,k=new Set;function _(e){q(e,1),e.m(S,h),c.set(e.key,e),h=e.first,o--}for(;i&&o;){const e=l[o-1],t=n[i-1],s=e.key,d=t.key;e===t?(h=e.first,i--,o--):r.has(d)?!c.has(s)||p.has(s)?_(e):k.has(d)?i--:u.get(s)>u.get(d)?(k.add(s),_(e)):(p.add(d),i--):(m(t,c),i--)}for(;i--;){const e=n[i];r.has(e.key)||m(e,c)}for(;o;)_(l[o-1]);return z(g),l}export{E as e,F as o,G as u};
|
||||
//# sourceMappingURL=each.CypvCfon.js.map
|
||||
1
_app/immutable/chunks/each.CypvCfon.js.map
Normal file
1
_app/immutable/chunks/each.CypvCfon.js.map
Normal file
File diff suppressed because one or more lines are too long
4
_app/immutable/chunks/entry.CU4Ldo_h.js
Normal file
4
_app/immutable/chunks/entry.CU4Ldo_h.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/entry.CU4Ldo_h.js.map
Normal file
1
_app/immutable/chunks/entry.CU4Ldo_h.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/i18n-svelte.D0STxjoQ.js
Normal file
2
_app/immutable/chunks/i18n-svelte.D0STxjoQ.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{w as f}from"./index.Lgv2TFSy.js";var p=()=>new Proxy(Object.assign(()=>"",{}),{get:(r,e)=>e==="length"?0:p()}),y=r=>Object.fromEntries(Object.entries(r).map(([e,t])=>e!=="i"&&t&&t!="0"&&[e,t]).filter(Boolean)),L=r=>Object.fromEntries(Object.keys(r).map(e=>{const t=r[e];return[e,Array.isArray(t)?t.map(s=>s?.trim()):t===!!t?t:t?.trim()]})),E=r=>{const[e="",...t]=r.split("|"),[s="",n]=e.split(":"),[o,a]=s.split("?");return{k:o,i:n,n:a==="",f:t}},w=r=>!!(r.o||r.r),O=(r,e)=>{let[t,s]=r.split(":");s||(s=t,t=e);const n=s.split("|"),[o,a,i,l,g,d]=n,c=n.filter(P=>P!==void 0).length;return c===1?{k:t,r:o}:c===2?{k:t,o,r:a}:c===3?{k:t,z:o,o:a,r:i}:{k:t,z:o,o:a,t:i,f:l,m:g,r:d}},k=/^\{.*\}$/,h=r=>Object.fromEntries(u(r).split(",").map(e=>e.split(":")).reduce((e,t)=>t.length===2?[...e,t.map(s=>s.trim())]:(e[e.length-1][1]+=","+t[0],e),[])),m=/(\{(?:[^{}]+|\{(?:[^{}]+)*\})*\})/g,u=r=>r.substring(1,r.length-1),j=(r,e=!0,t="",s="")=>r.split(m).map(n=>{if(!n.match(m))return n;const o=u(n);if(o.startsWith("{"))return O(u(o),s);const a=E(o);return s=a.k||s,!t&&(t=s),a}).map(n=>{if(typeof n=="string")return n;n.k||(n.k=t||"0");const o=L(n);return e?y(o):o}),A=(r,e,t)=>e.reduce((s,n)=>(n.match(k)?(o=>o[s]??o["*"])(h(n)):r[n]?.(s))??s,t),_=(r,{z:e,o:t,t:s,f:n,m:o,r:a},i)=>{switch(e&&i==0?"zero":r.select(i)){case"zero":return e;case"one":return t;case"two":return s;case"few":return n??a;case"many":return o??a;default:return a}},S=/\?\?/g,I=(r,e,t,s)=>r.map(n=>{if(typeof n=="string")return n;const{k:o="0",f:a=[]}=n,i=s[o];return w(n)?((typeof i=="boolean"?i?n.o:n.r:_(e,n,i))||"").replace(S,i):(""+((a.length?A(t,a,i):i)??"")).trim()}).join(""),R=(r,e,t,s)=>{const n=s[0],o=n&&typeof n=="object"&&n.constructor===Object,a=s.length===1&&o?n:s;return I(r,e,t,a)},C=(r,e)=>r[e]||(r[e]=j(e)),T=(r,e)=>{const t={},s=new Intl.PluralRules(r);return(n,...o)=>R(C(t,n),s,e,o)};function V(r,e,t={}){return v(e,T(r,t))}var b=(r={},e)=>typeof r=="string"?e.bind(null,r):Object.assign(Object.defineProperty(()=>"","name",{writable:!0}),r),v=(r,e)=>new Proxy(b(r,e),{get:(t,s)=>s===Symbol.iterator?[][Symbol.iterator].bind(Object.values(t).map(n=>b(n,e))):v(t[s],e)}),z=(r,e={})=>{const t=f(),s=f(p()),n=B(t),o=new Proxy({},{get:(i,l)=>l==="subscribe"?s.subscribe:s[l]});return{locale:n,LL:o,setLocale:i=>{t.set(i),s.set(V(i,r[i],e[i]))}}};function B(r){return{subscribe:r.subscribe.bind(r)}}var x=r=>!!r,G=r=>Array.from(new Set(r)),N=(r,e,...t)=>{for(let s of t){let n=W(e,s);if(n)return n}return r},W=(r,e)=>{let t=e().map(o=>o.toLowerCase()),s=G(t.flatMap(o=>[o,o.split("-")[0]])),n=r.map(o=>o.toLowerCase());return s.map(o=>{let a=n.findIndex(i=>i===o);return a>=0&&r[a]}).find(x)};const X="en",F=["de","en"],U={},H={},M=(...r)=>N(X,F,...r),{locale:$,LL:q,setLocale:D}=z(U,H);export{q as L,H as a,F as b,M as d,U as l,D as s};
|
||||
//# sourceMappingURL=i18n-svelte.D0STxjoQ.js.map
|
||||
1
_app/immutable/chunks/i18n-svelte.D0STxjoQ.js.map
Normal file
1
_app/immutable/chunks/i18n-svelte.D0STxjoQ.js.map
Normal file
File diff suppressed because one or more lines are too long
11
_app/immutable/chunks/index.C1YOBj0U.js
Normal file
11
_app/immutable/chunks/index.C1YOBj0U.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import{E as v,F as b,p as S,G as k}from"./scheduler.CXEVs2ap.js";function m(o){const r=o-1;return r*r*r+1}function q(o){return o===0?o:Math.pow(2,10*(o-1))}function B(o){return o===1?o:1-Math.pow(2,-10*o)}function O(o,{delay:r=0,duration:p=400,easing:d=k}={}){const l=+getComputedStyle(o).opacity;return{delay:r,duration:p,easing:d,css:n=>`opacity: ${n*l}`}}function R(o,{delay:r=0,duration:p=400,easing:d=m,x:l=0,y:n=0,opacity:c=0}={}){const s=getComputedStyle(o),u=+s.opacity,e=s.transform==="none"?"":s.transform,t=u*(1-c),[y,i]=v(l),[$,g]=v(n);return{delay:r,duration:p,easing:d,css:(f,h)=>`
|
||||
transform: ${e} translate(${(1-f)*y}${i}, ${(1-f)*$}${g});
|
||||
opacity: ${u-t*h}`}}function V(o,{delay:r=0,duration:p=400,easing:d=m,axis:l="y"}={}){const n=getComputedStyle(o),c=+n.opacity,s=l==="y"?"height":"width",u=parseFloat(n[s]),e=l==="y"?["top","bottom"]:["left","right"],t=e.map(a=>`${a[0].toUpperCase()}${a.slice(1)}`),y=parseFloat(n[`padding${t[0]}`]),i=parseFloat(n[`padding${t[1]}`]),$=parseFloat(n[`margin${t[0]}`]),g=parseFloat(n[`margin${t[1]}`]),f=parseFloat(n[`border${t[0]}Width`]),h=parseFloat(n[`border${t[1]}Width`]);return{delay:r,duration:p,easing:d,css:a=>`overflow: hidden;opacity: ${Math.min(a*20,1)*c};${s}: ${a*u}px;padding-${e[0]}: ${a*y}px;padding-${e[1]}: ${a*i}px;margin-${e[0]}: ${a*$}px;margin-${e[1]}: ${a*g}px;border-${e[0]}-width: ${a*f}px;border-${e[1]}-width: ${a*h}px;`}}function W(o,{delay:r=0,duration:p=400,easing:d=m,start:l=0,opacity:n=0}={}){const c=getComputedStyle(o),s=+c.opacity,u=c.transform==="none"?"":c.transform,e=1-l,t=s*(1-n);return{delay:r,duration:p,easing:d,css:(y,i)=>`
|
||||
transform: ${u} scale(${1-e*i});
|
||||
opacity: ${s-t*i}
|
||||
`}}function z({fallback:o,...r}){const p=new Map,d=new Map;function l(c,s,u){const{delay:e=0,duration:t=_=>Math.sqrt(_)*30,easing:y=m}=b(b({},r),u),i=c.getBoundingClientRect(),$=s.getBoundingClientRect(),g=i.left-$.left,f=i.top-$.top,h=i.width/$.width,a=i.height/$.height,C=Math.sqrt(g*g+f*f),x=getComputedStyle(s),F=x.transform==="none"?"":x.transform,M=+x.opacity;return{delay:e,duration:S(t)?t(C):t,easing:y,css:(_,w)=>`
|
||||
opacity: ${_*M};
|
||||
transform-origin: top left;
|
||||
transform: ${F} translate(${w*g}px,${w*f}px) scale(${_+(1-_)*h}, ${_+(1-_)*a});
|
||||
`}}function n(c,s,u){return(e,t)=>(c.set(t.key,e),()=>{if(s.has(t.key)){const y=s.get(t.key);return s.delete(t.key),l(y,e,t)}return c.delete(t.key),o&&o(e,t,u)})}return[n(d,p,!1),n(p,d,!0)]}export{W as a,O as b,z as c,q as d,B as e,R as f,V as s};
|
||||
//# sourceMappingURL=index.C1YOBj0U.js.map
|
||||
1
_app/immutable/chunks/index.C1YOBj0U.js.map
Normal file
1
_app/immutable/chunks/index.C1YOBj0U.js.map
Normal file
File diff suppressed because one or more lines are too long
5
_app/immutable/chunks/index.CTdcniaS.js
Normal file
5
_app/immutable/chunks/index.CTdcniaS.js
Normal file
@@ -0,0 +1,5 @@
|
||||
import{n as x,X as q,f as V,Y as H,r as E,p as P,D as O,Z as J,G as D,_ as L,b as K,P as Q,$ as T,a0 as W,a1 as tt,O as U,a2 as et,a3 as nt,a4 as it,a5 as st,a6 as rt}from"./scheduler.CXEVs2ap.js";const X=typeof window<"u";let I=X?()=>window.performance.now():()=>Date.now(),N=X?t=>requestAnimationFrame(t):x;const k=new Set;function Y(t){k.forEach(e=>{e.c(t)||(k.delete(e),e.f())}),k.size!==0&&N(Y)}function B(t){let e;return k.size===0&&N(Y),{promise:new Promise(n=>{k.add(e={c:t,f:n})}),abort(){k.delete(e)}}}const M=new Map;let R=0;function at(t){let e=5381,n=t.length;for(;n--;)e=(e<<5)-e^t.charCodeAt(n);return e>>>0}function ot(t,e){const n={stylesheet:H(e),rules:{}};return M.set(t,n),n}function z(t,e,n,r,u,a,l,i=0){const c=16.666/r;let s=`{
|
||||
`;for(let $=0;$<=1;$+=c){const g=e+(n-e)*a($);s+=$*100+`%{${l(g,1-g)}}
|
||||
`}const _=s+`100% {${l(n,1-n)}}
|
||||
}`,f=`__svelte_${at(_)}_${i}`,m=q(t),{stylesheet:h,rules:o}=M.get(m)||ot(m,t);o[f]||(o[f]=!0,h.insertRule(`@keyframes ${f} ${_}`,h.cssRules.length));const d=t.style.animation||"";return t.style.animation=`${d?`${d}, `:""}${f} ${r}ms linear ${u}ms 1 both`,R+=1,f}function A(t,e){const n=(t.style.animation||"").split(", "),r=n.filter(e?a=>a.indexOf(e)<0:a=>a.indexOf("__svelte")===-1),u=n.length-r.length;u&&(t.style.animation=r.join(", "),R-=u,R||ft())}function ft(){N(()=>{R||(M.forEach(t=>{const{ownerNode:e}=t.stylesheet;e&&V(e)}),M.clear())})}let S;function F(){return S||(S=Promise.resolve(),S.then(()=>{S=null})),S}function w(t,e,n){t.dispatchEvent(J(`${e?"intro":"outro"}${n}`))}const C=new Set;let p;function ht(){p={r:0,c:[],p}}function mt(){p.r||E(p.c),p=p.p}function ut(t,e){t&&t.i&&(C.delete(t),t.i(e))}function gt(t,e,n,r){if(t&&t.o){if(C.has(t))return;C.add(t),p.c.push(()=>{C.delete(t),r&&(n&&t.d(1),r())}),t.o(e)}else r&&r()}const G={duration:0};function pt(t,e,n){const r={direction:"in"};let u=e(t,n,r),a=!1,l,i,c=0;function s(){l&&A(t,l)}function _(){const{delay:m=0,duration:h=300,easing:o=D,tick:d=x,css:$}=u||G;$&&(l=z(t,0,1,h,m,o,$,c++)),d(0,1);const g=I()+m,y=g+h;i&&i.abort(),a=!0,O(()=>w(t,!0,"start")),i=B(v=>{if(a){if(v>=y)return d(1,0),w(t,!0,"end"),s(),a=!1;if(v>=g){const b=o((v-g)/h);d(b,1-b)}}return a})}let f=!1;return{start(){f||(f=!0,A(t),P(u)?(u=u(r),F().then(_)):_())},invalidate(){f=!1},end(){a&&(s(),a=!1)}}}function yt(t,e,n){const r={direction:"out"};let u=e(t,n,r),a=!0,l;const i=p;i.r+=1;let c;function s(){const{delay:_=0,duration:f=300,easing:m=D,tick:h=x,css:o}=u||G;o&&(l=z(t,1,0,f,_,m,o));const d=I()+_,$=d+f;O(()=>w(t,!1,"start")),"inert"in t&&(c=t.inert,t.inert=!0),B(g=>{if(a){if(g>=$)return h(0,1),w(t,!1,"end"),--i.r||E(i.c),!1;if(g>=d){const y=m((g-d)/f);h(1-y,y)}}return a})}return P(u)?F().then(()=>{u=u(r),s()}):s(),{end(_){_&&"inert"in t&&(t.inert=c),_&&u.tick&&u.tick(1,0),a&&(l&&A(t,l),a=!1)}}}function vt(t,e,n,r){let a=e(t,n,{direction:"both"}),l=r?0:1,i=null,c=null,s=null,_;function f(){s&&A(t,s)}function m(o,d){const $=o.b-l;return d*=Math.abs($),{a:l,b:o.b,d:$,duration:d,start:o.start,end:o.start+d,group:o.group}}function h(o){const{delay:d=0,duration:$=300,easing:g=D,tick:y=x,css:v}=a||G,b={start:I()+d,b:o};o||(b.group=p,p.r+=1),"inert"in t&&(o?_!==void 0&&(t.inert=_):(_=t.inert,t.inert=!0)),i||c?c=b:(v&&(f(),s=z(t,l,o,$,d,g,v)),o&&y(0,1),i=m(b,$),O(()=>w(t,o,"start")),B(j=>{if(c&&j>c.start&&(i=m(c,$),c=null,w(t,i.b,"start"),v&&(f(),s=z(t,l,i.b,i.duration,0,g,a.css))),i){if(j>=i.end)y(l=i.b,1-l),w(t,i.b,"end"),c||(i.b?f():--i.group.r||E(i.group.c)),i=null;else if(j>=i.start){const Z=j-i.start;l=i.a+i.d*g(Z/i.duration),y(l,1-l)}}return!!(i||c)}))}return{run(o){P(a)?F().then(()=>{a=a({direction:o?"in":"out"}),h(o)}):h(o)},end(){f(),i=c=null}}}function wt(t){t&&t.c()}function xt(t,e){t&&t.l(e)}function lt(t,e,n){const{fragment:r,after_update:u}=t.$$;r&&r.m(e,n),O(()=>{const a=t.$$.on_mount.map(et).filter(P);t.$$.on_destroy?t.$$.on_destroy.push(...a):E(a),t.$$.on_mount=[]}),u.forEach(O)}function ct(t,e){const n=t.$$;n.fragment!==null&&(W(n.after_update),E(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function _t(t,e){t.$$.dirty[0]===-1&&(nt.push(t),it(),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<<e%31}function bt(t,e,n,r,u,a,l=null,i=[-1]){const c=tt;U(t);const s=t.$$={fragment:null,ctx:[],props:a,update:x,not_equal:u,bound:L(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(e.context||(c?c.$$.context:[])),callbacks:L(),dirty:i,skip_bound:!1,root:e.target||c.$$.root};l&&l(s.root);let _=!1;if(s.ctx=n?n(t,e.props||{},(f,m,...h)=>{const o=h.length?h[0]:m;return s.ctx&&u(s.ctx[f],s.ctx[f]=o)&&(!s.skip_bound&&s.bound[f]&&s.bound[f](o),_&&_t(t,f)),m}):[],s.update(),_=!0,E(s.before_update),s.fragment=r?r(s.ctx):!1,e.target){if(e.hydrate){st();const f=K(e.target);s.fragment&&s.fragment.l(f),f.forEach(V)}else s.fragment&&s.fragment.c();e.intro&&ut(t.$$.fragment),lt(t,e.target,e.anchor),rt(),Q()}U(c)}class kt{$$=void 0;$$set=void 0;$destroy(){ct(this,1),this.$destroy=x}$on(e,n){if(!P(n))return x;const r=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return r.push(n),()=>{const u=r.indexOf(n);u!==-1&&r.splice(u,1)}}$set(e){this.$$set&&!T(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const dt="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(dt);export{kt as S,ut as a,pt as b,mt as c,yt as d,wt as e,xt as f,ht as g,ct as h,bt as i,vt as j,lt as m,gt as t};
|
||||
//# sourceMappingURL=index.CTdcniaS.js.map
|
||||
1
_app/immutable/chunks/index.CTdcniaS.js.map
Normal file
1
_app/immutable/chunks/index.CTdcniaS.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/index.De_1-CT6.js
Normal file
2
_app/immutable/chunks/index.De_1-CT6.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{R as t}from"./control.CYgJF_JY.js";function n(r,e){throw new t(r,e.toString())}new TextEncoder;export{n as r};
|
||||
//# sourceMappingURL=index.De_1-CT6.js.map
|
||||
1
_app/immutable/chunks/index.De_1-CT6.js.map
Normal file
1
_app/immutable/chunks/index.De_1-CT6.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/index.Lgv2TFSy.js
Normal file
2
_app/immutable/chunks/index.Lgv2TFSy.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{n as b,o as w,r as m,s as q,p as x}from"./scheduler.CXEVs2ap.js";const a=[];function z(s,o){return{subscribe:A(s,o).subscribe}}function A(s,o=b){let t;const r=new Set;function u(n){if(q(s,n)&&(s=n,t)){const i=!a.length;for(const e of r)e[1](),a.push(e,s);if(i){for(let e=0;e<a.length;e+=2)a[e][0](a[e+1]);a.length=0}}}function f(n){u(n(s))}function l(n,i=b){const e=[n,i];return r.add(e),r.size===1&&(t=o(u,f)||b),n(s),()=>{r.delete(e),r.size===0&&t&&(t(),t=null)}}return{set:u,update:f,subscribe:l}}function E(s,o,t){const r=!Array.isArray(s),u=r?[s]:s;if(!u.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const f=o.length<2;return z(t,(l,n)=>{let i=!1;const e=[];let d=0,p=b;const y=()=>{if(d)return;p();const c=o(r?e[0]:e,l,n);f?l(c):p=x(c)?c:b},h=u.map((c,g)=>w(c,_=>{e[g]=_,d&=~(1<<g),i&&y()},()=>{d|=1<<g}));return i=!0,y(),function(){m(h),p(),i=!1}})}function S(s){return{subscribe:s.subscribe.bind(s)}}export{E as d,S as r,A as w};
|
||||
//# sourceMappingURL=index.Lgv2TFSy.js.map
|
||||
1
_app/immutable/chunks/index.Lgv2TFSy.js.map
Normal file
1
_app/immutable/chunks/index.Lgv2TFSy.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/keyboard.Dxsooo7t.js
Normal file
2
_app/immutable/chunks/keyboard.Dxsooo7t.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const e={name:"Keyboard",description:"Keyboard specific actions",icon:"keyboard",actions:{512:{id:"LEFT_CTRL",display:"CTRL",title:"Control Keyboard Modifier",keyCode:"ControlLeft",variant:"left"},513:{id:"LEFT_SHIFT",title:"Shift Keyboard Modifier",keyCode:"ShiftLeft",variant:"left",icon:"shift"},514:{id:"LEFT_ALT",display:"ALT",title:"Alt Keyboard Modifier",keyCode:"AltLeft",variant:"left"},515:{id:"LEFT_GUI",title:"GUI Keyboard Modifier",keyCode:"MetaLeft",icon:"apps",variant:"left"},516:{variationOf:512,id:"RIGHT_CTRL",display:"CTRL",title:"Control Keyboard Modifier",keyCode:"ControlRight",variant:"right"},517:{variationOf:513,id:"RIGHT_SHIFT",title:"Shift Keyboard Modifier",keyCode:"ShiftRight",variant:"right",icon:"shift"},518:{variationOf:514,id:"RIGHT_ALT",display:"ALT",title:"Alt Keyboard Modifier",keyCode:"AltRight",variant:"right"},519:{variationOf:515,id:"RIGHT_GUI",title:"GUI Keyboard Modifier",keyCode:"MetaRight",icon:"apps",variant:"right"},520:{id:"RELEASE_MOD",title:"Release all keyboard modifiers",icon:"step_out"},521:{id:"RELEASE_ALL",title:"Release all keys and keyboard modifiers",icon:"merge_type"},522:{id:"RELEASE_KEYS",title:"Release all keys, but not keyboard modifiers",icon:"text_rotate_up"},523:{id:"PRESS_NEXT",title:"Press and do not release the next key/action",icon:"download"},524:{id:"RELEASE_NEXT",title:"Release the next key/action in the sequence",icon:"upload"}}};export{e as default};
|
||||
//# sourceMappingURL=keyboard.Dxsooo7t.js.map
|
||||
1
_app/immutable/chunks/keyboard.Dxsooo7t.js.map
Normal file
1
_app/immutable/chunks/keyboard.Dxsooo7t.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"keyboard.Dxsooo7t.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/keymap-codes.DVdCLxHW.js
Normal file
2
_app/immutable/chunks/keymap-codes.DVdCLxHW.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{_ as t}from"./preload-helper.Dch09mLN.js";const r=await Promise.all(Object.values(Object.assign({"/src/lib/assets/keymaps/ascii-macros.yml":()=>t(()=>import("./ascii-macros.BH6-GvlY.js"),[],import.meta.url),"/src/lib/assets/keymaps/ascii.yml":()=>t(()=>import("./ascii.D6z9aYbp.js"),[],import.meta.url),"/src/lib/assets/keymaps/chara-chorder-one.yml":()=>t(()=>import("./chara-chorder-one.DOAjPKvk.js"),[],import.meta.url),"/src/lib/assets/keymaps/chara-chorder.yml":()=>t(()=>import("./chara-chorder.Dz6u1fyJ.js"),[],import.meta.url),"/src/lib/assets/keymaps/cp-1252.yml":()=>t(()=>import("./cp-1252.BONzQ9X0.js"),[],import.meta.url),"/src/lib/assets/keymaps/keyboard.yml":()=>t(()=>import("./keyboard.Dxsooo7t.js"),[],import.meta.url),"/src/lib/assets/keymaps/mouse.yml":()=>t(()=>import("./mouse.DYQ6LTJh.js"),[],import.meta.url),"/src/lib/assets/keymaps/scancode.yml":()=>t(()=>import("./scancode.CPuDKR4U.js"),[],import.meta.url)})).map(async e=>e().then(s=>s.default))),i=new Map(r.flatMap(e=>Object.entries(e.actions).map(([s,a])=>[Number(s),{...a,code:Number(s),category:e}]))),_=new Map(r.flatMap(e=>Object.entries(e.actions).map(([s,a])=>[a.keyCode,Number(s)])).filter(([e])=>e!==void 0)),o=new Map(r.flatMap(e=>Object.entries(e.actions).map(([s,a])=>[a.id,{...a,code:Number(s),category:e}])).filter(([e])=>e!==void 0));export{i as K,r as a,o as b,_ as c};
|
||||
//# sourceMappingURL=keymap-codes.DVdCLxHW.js.map
|
||||
1
_app/immutable/chunks/keymap-codes.DVdCLxHW.js.map
Normal file
1
_app/immutable/chunks/keymap-codes.DVdCLxHW.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"mappings":"iDAOa,MAAAA,EAAqB,MAAM,QAAQ,IAC9C,OAAO,OAAoD,8DAAAC,EAAA,iNAAAA,EAAA,kHAAAA,EAAA,wGAAAA,EAAA,mGAAAA,EAAA,oMAAAA,EAAA,4DAAE,IAC3D,MAAOC,GAASA,IAAO,KAAMC,GAAQA,EAAW,OAAO,CACzD,CACF,EAEaC,EAAe,IAAI,IAC9BJ,EAAkB,QAASK,GACzB,OAAO,QAAQA,EAAS,OAAO,EAAE,IAAI,CAAC,CAACC,EAAMC,CAAM,IAAM,CACvD,OAAOD,CAAI,EACX,CAAE,GAAGC,EAAQ,KAAM,OAAOD,CAAI,EAAG,SAAAD,CAAS,EAC3C,CACH,CACF,EAEaG,EAAkB,IAAI,IACjCR,EAAkB,QAASK,GACzB,OAAO,QAAQA,EAAS,OAAO,EAAE,IAC/B,CAAC,CAACC,EAAMC,CAAM,IAAM,CAACA,EAAO,QAAU,OAAOD,CAAI,CAAC,CACpD,GACA,OAAO,CAAC,CAACG,CAAO,IAAMA,IAAY,MAAS,CAC/C,EAEaC,EAAa,IAAI,IAC5BV,EAAkB,QAASK,GACzB,OAAO,QAAQA,EAAS,OAAO,EAAE,IAC/B,CAAC,CAACC,EAAMC,CAAM,IACZ,CAACA,EAAO,GAAK,CAAE,GAAGA,EAAQ,KAAM,OAAOD,CAAI,EAAG,SAAAD,EAAU,CAC5D,GACA,OAAO,CAAC,CAACM,CAAE,IAAMA,IAAO,MAAS,CACrC","names":["KEYMAP_CATEGORIES","__vitePreload","load","it","KEYMAP_CODES","category","code","action","KEYMAP_KEYCODES","keyCode","KEYMAP_IDS","id"],"ignoreList":[],"sources":["../../../../../../src/lib/serial/keymap-codes.ts"],"sourcesContent":["import type { ActionInfo, KeymapCategory } from \"$lib/assets/keymaps/keymap\";\n\nexport interface KeyInfo extends Partial<ActionInfo> {\n code: number;\n category?: KeymapCategory;\n}\n\nexport const KEYMAP_CATEGORIES = (await Promise.all(\n Object.values(import.meta.glob(\"$lib/assets/keymaps/*.yml\")).map(\n async (load) => load().then((it) => (it as any).default),\n ),\n)) as KeymapCategory[];\n\nexport const KEYMAP_CODES = new Map<number, KeyInfo>(\n KEYMAP_CATEGORIES.flatMap((category) =>\n Object.entries(category.actions).map(([code, action]) => [\n Number(code),\n { ...action, code: Number(code), category },\n ]),\n ),\n);\n\nexport const KEYMAP_KEYCODES = new Map<string, number>(\n KEYMAP_CATEGORIES.flatMap((category) =>\n Object.entries(category.actions).map(\n ([code, action]) => [action.keyCode!, Number(code)] as const,\n ),\n ).filter(([keyCode]) => keyCode !== undefined),\n);\n\nexport const KEYMAP_IDS = new Map<string, KeyInfo>(\n KEYMAP_CATEGORIES.flatMap((category) =>\n Object.entries(category.actions).map(\n ([code, action]) =>\n [action.id!, { ...action, code: Number(code), category }] as const,\n ),\n ).filter(([id]) => id !== undefined),\n);\n"],"file":"_app/immutable/chunks/keymap-codes.DVdCLxHW.js"}
|
||||
2
_app/immutable/chunks/lite.Bns_Dn1U.js
Normal file
2
_app/immutable/chunks/lite.Bns_Dn1U.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const e={name:"Lite",col:[{row:[{key:53},{key:54},{key:55},{key:56},{key:57},{key:58},{key:59},{key:60},{key:61},{key:62},{key:63},{key:64},{key:65},{key:66,size:[2,1]}]},{row:[{key:39,size:[1.5,1]},{key:40},{key:41},{key:42},{key:43},{key:44},{key:45},{key:46},{key:47},{key:48},{key:49},{key:50},{key:51},{key:52,size:[1.5,1]}]},{row:[{key:26,size:[1.75,1]},{key:27},{key:28},{key:29},{key:30},{key:31},{key:32},{key:33},{key:34},{key:35},{key:36},{key:37},{key:38,size:[2.25,1]}]},{row:[{key:12,size:[2,1]},{key:13},{key:14},{key:15},{key:16},{key:17},{key:18},{key:19},{key:20},{key:21},{key:22},{key:23},{key:24},{key:25}]},{row:[{key:0},{key:1,size:[1.25,1]},{key:2,size:[1.25,1]},{key:3,size:[2,1]},{key:4},{key:5},{key:6,size:[2,1]},{key:7,size:[1.25,1]},{key:8,size:[1.25,1]},{key:9},{key:10},{key:11}]}]};export{e as default};
|
||||
//# sourceMappingURL=lite.Bns_Dn1U.js.map
|
||||
1
_app/immutable/chunks/lite.Bns_Dn1U.js.map
Normal file
1
_app/immutable/chunks/lite.Bns_Dn1U.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"lite.Bns_Dn1U.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/mouse.DYQ6LTJh.js
Normal file
2
_app/immutable/chunks/mouse.DYQ6LTJh.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const i={name:"Mouse",description:"Mouse Actions",icon:"mouse",actions:{560:{id:"MS_CLICK_BWD",title:"Mouse Backward Button Click",icon:"drag_click"},561:{id:"MS_CLICK_FWD",title:"Mouse Forward Button Click",icon:"ads_click"},562:{id:"MS_CLICK_LF",title:"Mouse Left Click",icon:"left_click"},563:{id:"MS_CLICK_RT",title:"Mouse Right Click",icon:"right_click"},564:{id:"MS_CLICK_MD",title:"Mouse Middle Click",icon:"touchpad_mouse"},565:{id:"MS_MOVE_RT",title:"Mouse Move Right",icon:"arrow_circle_right"},566:{id:"MS_MOVE_LF",title:"Mouse Move Left",icon:"arrow_circle_left"},567:{id:"MS_MOVE_DN",title:"Mouse Move Down",icon:"arrow_circle_down"},568:{id:"MS_MOVE_UP",title:"Mouse Move Up",icon:"arrow_circle_up"},569:{id:"MS_SCRL_RT",title:"Mouse Scroll Right",icon:"swipe_right"},570:{id:"MS_SCRL_LF",title:"Mouse Scroll Left",icon:"swipe_left"},571:{id:"MS_SCRL_DN",title:"Mouse Scroll Down",icon:"swipe_down"},572:{id:"MS_SCRL_UP",title:"Mouse Scroll Up",icon:"swipe_up"}}};export{i as default};
|
||||
//# sourceMappingURL=mouse.DYQ6LTJh.js.map
|
||||
1
_app/immutable/chunks/mouse.DYQ6LTJh.js.map
Normal file
1
_app/immutable/chunks/mouse.DYQ6LTJh.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"mouse.DYQ6LTJh.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/one.BdTwjj45.js
Normal file
2
_app/immutable/chunks/one.BdTwjj45.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const s={name:"CC1",col:[{offset:[2,0],row:[{switch:{d:25,e:26,n:27,w:28,s:29}},{switch:{d:20,e:21,n:22,w:23,s:24}},{offset:[4,0],switch:{d:65,w:66,n:67,e:68,s:69}},{switch:{d:70,w:71,n:72,e:73,s:74}}]},{offset:[2,0],row:[{switch:{d:40,e:41,n:42,w:43,s:44}},{switch:{d:35,e:36,n:37,w:38,s:39}},{offset:[4,0],switch:{d:80,w:81,n:82,e:83,s:84}},{switch:{d:85,w:86,n:87,e:88,s:89}}]},{offset:[0,-3],row:[{switch:{d:30,e:31,n:32,w:33,s:34}},{offset:[4,0],switch:{d:15,e:16,n:17,w:18,s:19}},{switch:{d:60,w:61,n:62,e:63,s:64}},{offset:[4,0],switch:{d:75,w:76,n:77,e:78,s:79}}]},{row:[{offset:[5.5,.5],switch:{d:10,e:11,n:12,w:13,s:14}},{offset:[1,.5],switch:{d:55,w:56,n:57,e:58,s:59}}]},{row:[{offset:[4.5,-.25],switch:{d:5,e:6,n:7,w:8,s:9}},{offset:[3,-.25],switch:{d:50,w:51,n:52,e:53,s:54}}]},{row:[{offset:[3.5,-.25],switch:{d:0,e:1,n:2,w:3,s:4}},{offset:[5,-.25],switch:{d:45,w:46,n:47,e:48,s:49}}]}]};export{s as default};
|
||||
//# sourceMappingURL=one.BdTwjj45.js.map
|
||||
1
_app/immutable/chunks/one.BdTwjj45.js.map
Normal file
1
_app/immutable/chunks/one.BdTwjj45.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"one.BdTwjj45.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
2
_app/immutable/chunks/popup.Ba_9DalD.js
Normal file
2
_app/immutable/chunks/popup.Ba_9DalD.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{t as s}from"./Action.tNSJ0eLt.js";const n=(o,r)=>{let e,t;const i=s(o,{interactive:!0,trigger:"click",onShow(p){t=p.popper.querySelector(".tippy-content"),t.classList.add("active"),e??=new r({target:t})},onHidden(){e?.$destroy(),t?.classList.remove("active"),e=void 0}});return{destroy(){i.destroy()}}};export{n as p};
|
||||
//# sourceMappingURL=popup.Ba_9DalD.js.map
|
||||
1
_app/immutable/chunks/popup.Ba_9DalD.js.map
Normal file
1
_app/immutable/chunks/popup.Ba_9DalD.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"popup.Ba_9DalD.js","sources":["../../../../../../src/lib/popup.ts"],"sourcesContent":["import tippy from \"tippy.js\";\nimport type { Action } from \"svelte/action\";\nimport type { ComponentType, SvelteComponent } from \"svelte\";\n\nexport const popup: Action<HTMLButtonElement, ComponentType> = (\n node,\n Component,\n) => {\n let component: SvelteComponent | undefined;\n let target: HTMLElement | undefined;\n const edit = tippy(node, {\n interactive: true,\n trigger: \"click\",\n onShow(instance) {\n target = instance.popper.querySelector(\".tippy-content\") as HTMLElement;\n target.classList.add(\"active\");\n component ??= new Component({ target });\n },\n onHidden() {\n component?.$destroy();\n target?.classList.remove(\"active\");\n component = undefined;\n },\n });\n\n return {\n destroy() {\n edit.destroy();\n },\n };\n};\n"],"names":["popup","node","Component","component","target","edit","tippy","instance"],"mappings":"yCAIa,MAAAA,EAAkD,CAC7DC,EACAC,IACG,CACC,IAAAC,EACAC,EACE,MAAAC,EAAOC,EAAML,EAAM,CACvB,YAAa,GACb,QAAS,QACT,OAAOM,EAAU,CACNH,EAAAG,EAAS,OAAO,cAAc,gBAAgB,EAChDH,EAAA,UAAU,IAAI,QAAQ,EAC7BD,IAAc,IAAID,EAAU,CAAE,OAAAE,CAAQ,CAAA,CACxC,EACA,UAAW,CACTD,GAAW,SAAS,EACZC,GAAA,UAAU,OAAO,QAAQ,EACrBD,EAAA,MACd,CAAA,CACD,EAEM,MAAA,CACL,SAAU,CACRE,EAAK,QAAQ,CACf,CAAA,CAEJ"}
|
||||
2
_app/immutable/chunks/preload-helper.Dch09mLN.js
Normal file
2
_app/immutable/chunks/preload-helper.Dch09mLN.js
Normal file
@@ -0,0 +1,2 @@
|
||||
const v="modulepreload",y=function(a,i){return new URL(a,i).href},d={},p=function(i,l,u){let f=Promise.resolve();if(l&&l.length>0){const r=document.getElementsByTagName("link"),n=document.querySelector("meta[property=csp-nonce]"),h=n?.nonce||n?.getAttribute("nonce");f=Promise.all(l.map(e=>{if(e=y(e,u),e in d)return;d[e]=!0;const s=e.endsWith(".css"),m=s?'[rel="stylesheet"]':"";if(!!u)for(let o=r.length-1;o>=0;o--){const c=r[o];if(c.href===e&&(!s||c.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${e}"]${m}`))return;const t=document.createElement("link");if(t.rel=s?"stylesheet":v,s||(t.as="script",t.crossOrigin=""),t.href=e,h&&t.setAttribute("nonce",h),document.head.appendChild(t),s)return new Promise((o,c)=>{t.addEventListener("load",o),t.addEventListener("error",()=>c(new Error(`Unable to preload CSS for ${e}`)))})}))}return f.then(()=>i()).catch(r=>{const n=new Event("vite:preloadError",{cancelable:!0});if(n.payload=r,window.dispatchEvent(n),!n.defaultPrevented)throw r})};export{p as _};
|
||||
//# sourceMappingURL=preload-helper.Dch09mLN.js.map
|
||||
1
_app/immutable/chunks/preload-helper.Dch09mLN.js.map
Normal file
1
_app/immutable/chunks/preload-helper.Dch09mLN.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"preload-helper.Dch09mLN.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
||||
3
_app/immutable/chunks/pwa-setup.Cm4sYrbX.js
Normal file
3
_app/immutable/chunks/pwa-setup.Cm4sYrbX.js
Normal file
@@ -0,0 +1,3 @@
|
||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./virtual_pwa-register.Dmh05s80.js","./preload-helper.Dch09mLN.js"])))=>i.map(i=>d[i]);
|
||||
import{_ as e}from"./preload-helper.Dch09mLN.js";async function a(){const{pwaInfo:t}=await e(async()=>{const{pwaInfo:r}=await import("./_virtual_pwa-info.D2ZL56Zr.js");return{pwaInfo:r}},[],import.meta.url),{registerSW:i}=await e(async()=>{const{registerSW:r}=await import("./virtual_pwa-register.Dmh05s80.js");return{registerSW:r}},__vite__mapDeps([0,1]),import.meta.url);return i({immediate:!0,onRegisterError(r){console.log("ServiceWorker Registration Error",r)}}),t?t.webManifest.linkTag:""}export{a as initPwa};
|
||||
//# sourceMappingURL=pwa-setup.Cm4sYrbX.js.map
|
||||
1
_app/immutable/chunks/pwa-setup.Cm4sYrbX.js.map
Normal file
1
_app/immutable/chunks/pwa-setup.Cm4sYrbX.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"mappings":";iDAEA,eAAsBA,GAA2B,CAE/C,KAAM,CAAE,QAAAC,CAAY,QAAMC,EAAA,wBAAAD,GAAA,aAAO,iCAAkB,iBAAAA,CAAA,uBAE7C,CAAE,WAAAE,CAAe,QAAMD,EAAA,2BAAAC,GAAA,aAAO,oCAAsB,oBAAAA,CAAA,2CAC/C,OAAAA,EAAA,CACT,UAAW,GACX,gBAAgBC,EAAO,CACb,YAAI,mCAAoCA,CAAK,CACvD,EAC2B,EAEtBH,EAAUA,EAAQ,YAAY,QAAU,EACjD","names":["initPwa","pwaInfo","__vitePreload","registerSW","error"],"ignoreList":[],"sources":["../../../../../../src/routes/(app)/pwa-setup.ts"],"sourcesContent":["import type { RegisterSWOptions } from \"vite-plugin-pwa/types\";\n\nexport async function initPwa(): Promise<string> {\n // @ts-expect-error confused TS\n const { pwaInfo } = await import(\"virtual:pwa-info\");\n // @ts-expect-error confused TS\n const { registerSW } = await import(\"virtual:pwa-register\");\n registerSW({\n immediate: true,\n onRegisterError(error) {\n console.log(\"ServiceWorker Registration Error\", error);\n },\n } satisfies RegisterSWOptions);\n\n return pwaInfo ? pwaInfo.webManifest.linkTag : \"\";\n}\n"],"file":"_app/immutable/chunks/pwa-setup.Cm4sYrbX.js"}
|
||||
3
_app/immutable/chunks/scancode.CPuDKR4U.js
Normal file
3
_app/immutable/chunks/scancode.CPuDKR4U.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/scancode.CPuDKR4U.js.map
Normal file
1
_app/immutable/chunks/scancode.CPuDKR4U.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"scancode.CPuDKR4U.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
||||
2
_app/immutable/chunks/scheduler.CXEVs2ap.js
Normal file
2
_app/immutable/chunks/scheduler.CXEVs2ap.js
Normal file
File diff suppressed because one or more lines are too long
1
_app/immutable/chunks/scheduler.CXEVs2ap.js.map
Normal file
1
_app/immutable/chunks/scheduler.CXEVs2ap.js.map
Normal file
File diff suppressed because one or more lines are too long
3
_app/immutable/chunks/share-url.D1X9O966.js
Normal file
3
_app/immutable/chunks/share-url.D1X9O966.js
Normal file
@@ -0,0 +1,3 @@
|
||||
import{M as A,N as _,O as p,P as k}from"./scheduler.CXEVs2ap.js";import{g as U,t as v,c as T,a as E}from"./index.CTdcniaS.js";import{d as x,c as C}from"./connection.wgaIHNYB.js";const D=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function V(t,e){const n=e.token={};function r(s,a,o,i){if(e.token!==n)return;e.resolved=i;let c=e.ctx;o!==void 0&&(c=c.slice(),c[o]=i);const l=s&&(e.current=s)(c);let u=!1;e.block&&(e.blocks?e.blocks.forEach((d,h)=>{h!==a&&d&&(U(),v(d,1,1,()=>{e.blocks[h]===d&&(e.blocks[h]=null)}),T())}):e.block.d(1),l.c(),E(l,1),l.m(e.mount(),e.anchor),u=!0),e.block=l,e.blocks&&(e.blocks[a]=l),u&&k()}if(A(t)){const s=_();if(t.then(a=>{p(s),r(e.then,1,e.value,a),p(null)},a=>{if(p(s),r(e.catch,2,e.error,a),p(null),!e.hasCatch)throw a}),e.current!==e.pending)return r(e.pending,0),!0}else{if(e.current!==e.then)return r(e.then,1,e.value,t),!0;e.resolved=t}}function O(t,e,n){const r=e.slice(),{resolved:s}=t;t.current===t.then&&(r[t.value]=s),t.current===t.catch&&(r[t.error]=s),t.block.p(r,n)}function y(t){let e=new Uint8Array(5);const n=new DataView(e.buffer);if(n.setUint32(0,t.length),t.length===0)return e;if(typeof t[0]=="number"){n.setUint8(4,m.indexOf("number"));const r=C(t);return n.setUint32(0,r.length),w(e,r)}else{if(Array.isArray(t[0]))return n.setUint8(4,m.indexOf("array")),w(e,...t.map(y));throw new Error("Not implemented")}}function b(t,e={pos:0}){const n=new DataView(t.buffer),r=n.getUint32(e.pos);e.pos+=4;const s=m[n.getUint8(e.pos)];if(e.pos++,s==="number"){const a=x(t.slice(e.pos,e.pos+r));return e.pos+=r,a}else if(s==="array"){const a=[];for(let o=0;o<r;o++)a.push(b(t,e));return a}else throw new Error("Not implemented")}function w(...t){const e=new Uint8Array(t.reduce((r,s)=>r+s.length,0));let n=0;for(const r of t)e.set(r,n),n+=r.length;return e}async function F(t){return new Promise(async e=>{const n=new FileReader;n.onloadend=function(){e(`${n.result.replace(/^data:application\/octet-stream;base64,/,"").replaceAll("+",".").replaceAll("/","_").replaceAll("=","-")}`)},n.readAsDataURL(t)})}async function N(t,e=window.fetch){return e(`data:application/octet-stream;base64,${t.replaceAll(".","+").replaceAll("_","/").replaceAll("-","=")}`).then(n=>n.blob())}const g={layout:[["layout","array"],["device","string"]],chords:[["chords","array"]],settings:[["settings","array"]]},m=["unknown","number","string","array"],f=`
|
||||
`;async function P(t){let e=`${t.type}${f}${t.charaVersion}`;for(const[n,r]of g[t.type]){const s=t[n];if(e+=f,r==="string")e+=s;else if(r==="array"){const a=new Blob([y(s)]).stream().pipeThrough(new CompressionStream("deflate"));e+=await F(await new Response(a).blob())}else throw new Error("Not implemented")}return e}async function S(t,e=window.fetch){const[n,r,...s]=t.split(f),a={type:n,charaVersion:Number(r)};for(const[o,i]of g[n]){const c=s.shift();if(i==="string")a[o]=c;else if(i==="array"){const l=(await N(c,e)).stream().pipeThrough(new DecompressionStream("deflate")),u=new Uint8Array(await new Response(l).arrayBuffer());a[o]=b(u)}}return a}export{S as a,P as c,D as g,V as h,O as u};
|
||||
//# sourceMappingURL=share-url.D1X9O966.js.map
|
||||
1
_app/immutable/chunks/share-url.D1X9O966.js.map
Normal file
1
_app/immutable/chunks/share-url.D1X9O966.js.map
Normal file
File diff suppressed because one or more lines are too long
2
_app/immutable/chunks/share.DiRP5OJi.js
Normal file
2
_app/immutable/chunks/share.DiRP5OJi.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{r as t,w as o}from"./index.Lgv2TFSy.js";const e=o(!1),c=t(e);let a;function l(r){a?.(r)}const h=(r,s)=>(e.set(!0),a=s,{destroy(){e.set(!1),a=void 0}});export{c,h as s,l as t};
|
||||
//# sourceMappingURL=share.DiRP5OJi.js.map
|
||||
1
_app/immutable/chunks/share.DiRP5OJi.js.map
Normal file
1
_app/immutable/chunks/share.DiRP5OJi.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"share.DiRP5OJi.js","sources":["../../../../../../src/lib/share.ts"],"sourcesContent":["import type { Action } from \"svelte/action\";\nimport { readonly, writable } from \"svelte/store\";\n\nconst setCanShare = writable(false);\nexport const canShare = readonly(setCanShare);\n\nlet shareCallback: ((event: Event) => void) | undefined;\nexport function triggerShare(event: Event) {\n shareCallback?.(event);\n}\n\nexport const share: Action<Window, (event: Event) => void> = (\n _node,\n callback: (event: Event) => void,\n) => {\n setCanShare.set(true);\n shareCallback = callback;\n\n return {\n destroy() {\n setCanShare.set(false);\n shareCallback = undefined;\n },\n };\n};\n"],"names":["setCanShare","writable","canShare","readonly","shareCallback","triggerShare","event","share","_node","callback"],"mappings":"+CAGA,MAAMA,EAAcC,EAAS,EAAK,EACrBC,EAAWC,EAASH,CAAW,EAE5C,IAAII,EACG,SAASC,EAAaC,EAAc,CACzCF,IAAgBE,CAAK,CACvB,CAEa,MAAAC,EAAgD,CAC3DC,EACAC,KAEAT,EAAY,IAAI,EAAI,EACJI,EAAAK,EAET,CACL,SAAU,CACRT,EAAY,IAAI,EAAK,EACLI,EAAA,MAClB,CAAA"}
|
||||
2
_app/immutable/chunks/stores.BQ5dFziA.js
Normal file
2
_app/immutable/chunks/stores.BQ5dFziA.js
Normal file
@@ -0,0 +1,2 @@
|
||||
import{s as e}from"./entry.CU4Ldo_h.js";const r=()=>{const s=e;return{page:{subscribe:s.page.subscribe},navigating:{subscribe:s.navigating.subscribe},updated:s.updated}},b={subscribe(s){return r().page.subscribe(s)}};export{b as p};
|
||||
//# sourceMappingURL=stores.BQ5dFziA.js.map
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user