diff --git a/.changes/cli-no-targets.md b/.changes/cli-no-targets.md index 068413721e1..881360cacd2 100644 --- a/.changes/cli-no-targets.md +++ b/.changes/cli-no-targets.md @@ -1,5 +1,5 @@ --- -"tauri-cli": minor +"cli.rs": minor --- You can now run `cargo tauri build -t none` to speed up the build if you don't need executables. diff --git a/.changes/cli-rust.md b/.changes/cli-rust.md index 38991bb2dc9..f9dc4b2dbe3 100644 --- a/.changes/cli-rust.md +++ b/.changes/cli-rust.md @@ -1,5 +1,5 @@ --- -"tauri-cli": minor +"cli.rs": minor "tauri-bundler": minor --- diff --git a/.changes/command-shell.md b/.changes/command-shell.md index f411c179cc5..6f98f734929 100644 --- a/.changes/command-shell.md +++ b/.changes/command-shell.md @@ -1,5 +1,5 @@ --- -"tauri-cli": patch +"cli.rs": patch --- Run `beforeDevCommand` and `beforeBuildCommand` in a shell. diff --git a/.changes/config.json b/.changes/config.json index 2c3abbb2fed..247d7d51113 100644 --- a/.changes/config.json +++ b/.changes/config.json @@ -140,21 +140,21 @@ }, "packages": { "api": { - "path": "./api", + "path": "./tooling/api", "manager": "javascript", "assets": [ { - "path": "./api/tauri-${ pkgFile.version }.tgz", + "path": "./tooling/api/tauri-${ pkgFile.version }.tgz", "name": "api-${ pkgFile.version }.tgz" } ] }, "tauri-bundler": { - "path": "./cli/tauri-bundler", + "path": "./tooling/bundler", "manager": "rust" }, - "tauri-cli": { - "path": "./cli/core", + "cli.rs": { + "path": "./tooling/cli.rs", "manager": "rust", "dependencies": [ "api", @@ -162,16 +162,16 @@ "tauri" ] }, - "tauri.js": { - "path": "./cli/tauri.js", + "cli.js": { + "path": "./tooling/cli.js", "manager": "javascript", "dependencies": [ - "tauri-cli" + "cli.rs" ], "assets": [ { - "path": "./cli/tauri.js/tauri-${ pkgFile.version }.tgz", - "name": "tauri.js-${ pkgFile.version }.tgz" + "path": "./tooling/cli.js/tauri-${ pkgFile.version }.tgz", + "name": "cli.js-${ pkgFile.version }.tgz" } ] }, @@ -179,7 +179,7 @@ "path": "./cli/create-tauri-app", "manager": "javascript", "dependencies": [ - "tauri.js" + "cli.js" ] }, "tauri-utils": { diff --git a/.changes/fix-blank-hyperlinks-polyfiil.md b/.changes/fix-blank-hyperlinks-polyfiil.md index ce239706c6a..0b884bc5534 100644 --- a/.changes/fix-blank-hyperlinks-polyfiil.md +++ b/.changes/fix-blank-hyperlinks-polyfiil.md @@ -1,5 +1,5 @@ --- -"tauri-cli": patch +"cli.rs": patch --- Fixes `` polyfill. diff --git a/.changes/fix-ts-api-typings.md b/.changes/fix-ts-api-typings.md index f3ed4603b35..c3e0f2c3c2b 100644 --- a/.changes/fix-ts-api-typings.md +++ b/.changes/fix-ts-api-typings.md @@ -1,5 +1,5 @@ --- -"tauri.js": patch +"cli.js": patch "tauri": minor --- diff --git a/.changes/license.md b/.changes/license.md index 8c66413e467..11075f3c92b 100644 --- a/.changes/license.md +++ b/.changes/license.md @@ -1,8 +1,8 @@ --- "api": patch "tauri-bundler": patch -"tauri-cli": patch -"tauri.js": patch +"cli.rs": patch +"cli.js": patch "tauri-utils": patch "tauri-macros": patch "tauri-build": patch diff --git a/.changes/package-config.md b/.changes/package-config.md index a15afac1754..cfde969b641 100644 --- a/.changes/package-config.md +++ b/.changes/package-config.md @@ -1,6 +1,6 @@ --- "tauri": minor -"tauri-cli": minor +"cli.rs": minor --- Adds `productName` and `version` configs on `tauri.conf.json > package`. diff --git a/.changes/readme.md b/.changes/readme.md index 09af985a7a0..fe4afd7d62c 100644 --- a/.changes/readme.md +++ b/.changes/readme.md @@ -12,8 +12,8 @@ Use the following format: --- "api": patch "tauri-bundler": patch -"tauri-cli": patch -"tauri.js": patch +"cli.rs": patch +"cli.js": patch "tauri-utils": patch "tauri-macros": patch "tauri-build": patch diff --git a/.changes/refactor-info.md b/.changes/refactor-info.md index 61405b6a2c7..d8110872403 100644 --- a/.changes/refactor-info.md +++ b/.changes/refactor-info.md @@ -1,6 +1,6 @@ --- -"tauri-cli": minor -"tauri.js": minor +"cli.rs": minor +"cli.js": minor --- The `info` command was rewritten in Rust. diff --git a/.changes/refactor-init.md b/.changes/refactor-init.md index bb05c4bb73d..0d9824434a7 100644 --- a/.changes/refactor-init.md +++ b/.changes/refactor-init.md @@ -1,6 +1,6 @@ --- -"tauri-cli": minor -"tauri.js": minor +"cli.rs": minor +"cli.js": minor --- The `init` command was rewritten in Rust. diff --git a/.changes/remove-no-server.md b/.changes/remove-no-server.md index 0fb98de60ac..f8a07f0e279 100644 --- a/.changes/remove-no-server.md +++ b/.changes/remove-no-server.md @@ -1,6 +1,6 @@ --- "tauri": minor -"tauri.js": minor +"cli.js": minor --- Removed the `no-server` mode, the `inliner`, the `dev` server proxy and the `loadAsset` API. diff --git a/.changes/revert-and-shift-tauri-create.md b/.changes/revert-and-shift-tauri-create.md index a3cf873da3b..31ea1671ba3 100644 --- a/.changes/revert-and-shift-tauri-create.md +++ b/.changes/revert-and-shift-tauri-create.md @@ -1,6 +1,6 @@ --- "create-tauri-app": minor -"tauri.js": patch +"cli.js": patch --- Revert `tauri create` deletion and shift remaining pieces that weren't deleted to `create-tauri-app`. diff --git a/.changes/tauri-api.md b/.changes/tauri-api.md index 2c31e3a725e..54c5269d8be 100644 --- a/.changes/tauri-api.md +++ b/.changes/tauri-api.md @@ -1,5 +1,5 @@ --- -"tauri.js": minor +"cli.js": minor --- The Tauri API interface is now shipped with the `@tauri-apps/api` package instead of the deprecated `tauri` package. diff --git a/.changes/tauri-cli.md b/.changes/tauri-cli.md index df8a1fb808e..b25b56f929c 100644 --- a/.changes/tauri-cli.md +++ b/.changes/tauri-cli.md @@ -1,5 +1,5 @@ --- -"tauri.js": minor +"cli.js": minor --- The Tauri Node.js CLI package is now `@tauri-apps/cli`. diff --git a/.changes/tauri-dev-propagate-args.md b/.changes/tauri-dev-propagate-args.md index ddeea4ae7ac..ee7d651c2a5 100644 --- a/.changes/tauri-dev-propagate-args.md +++ b/.changes/tauri-dev-propagate-args.md @@ -1,6 +1,6 @@ --- -"tauri-cli": patch -"tauri.js": patch +"cli.rs": patch +"cli.js": patch --- All the arguments passed after `tauri dev --` are now propagated to the binary. diff --git a/.changes/taurijs-dead-code-elim.md b/.changes/taurijs-dead-code-elim.md index bd48f4c3bff..091c4c65474 100644 --- a/.changes/taurijs-dead-code-elim.md +++ b/.changes/taurijs-dead-code-elim.md @@ -1,5 +1,5 @@ --- -"tauri.js": patch +"cli.js": patch --- -Eliminate the dead code in tauri.js. Also removed some unused dependencies and updated the publish config that we are not publishing the Typescript files (since this is now primarily a CLI). +Eliminate the dead code in cli.js. Also removed some unused dependencies and updated the publish config that we are not publishing the Typescript files (since this is now primarily a CLI). diff --git a/.changes/updater-alpha.md b/.changes/updater-alpha.md index b92704e7534..77da634780f 100644 --- a/.changes/updater-alpha.md +++ b/.changes/updater-alpha.md @@ -1,5 +1,5 @@ --- -"tauri-cli": minor +"cli.rs": minor "tauri-bundler": minor "tauri": minor --- diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 49d83932477..b141445ba42 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -13,10 +13,12 @@ /examples/ @tauri-apps/testing -/cli/tauri-bundler/ @tauri-apps/bundler +/tooling/api/ @tauri-apps/core -/cli/core/ @tauri-apps/core +/tooling/bundler/ @tauri-apps/bundler -/cli/tauri.js/ @tauri-apps/js-cli +/tooling/cli.rs/ @tauri-apps/core + +/tooling/cli.js/ @tauri-apps/js-cli /core/** @tauri-apps/core diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index b0ba43bdb98..e37d457ad18 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -46,43 +46,43 @@ Hi! We, the maintainers, are really excited that you are interested in contribut First, [join our Discord server](https://discord.gg/SpmNs4S) and let us know that you want to contribute. This way we can point you in the right direction and help ensure your contribution will be as helpful as possible. -To set up your machine for development, follow the [Tauri setup guide](https://tauri.studio/en/docs/getting-started/intro#setting-up-your-environment) to get all the tools you need to develop Tauri apps. The only additional tool you may need is [Yarn](https://yarnpkg.com/), it is only required if you are developing the Node CLI/API (`cli/tauri.js` and `api`). Next, fork and clone this repo. It is structured as a monorepo, which means that all the various Tauri packages are under the same repository. The development process varies depending on what part of Tauri you are contributing to, see the guides below for per-package instructions. +To set up your machine for development, follow the [Tauri setup guide](https://tauri.studio/en/docs/getting-started/intro#setting-up-your-environment) to get all the tools you need to develop Tauri apps. The only additional tool you may need is [Yarn](https://yarnpkg.com/), it is only required if you are developing the Node CLI/API (`tooling/cli.js` and `api`). Next, fork and clone this repo. It is structured as a monorepo, which means that all the various Tauri packages are under the same repository. The development process varies depending on what part of Tauri you are contributing to, see the guides below for per-package instructions. Some Tauri packages will be automatically built when running one of the examples. Others, however, will need to be built beforehand. To build these automatically, run the `.scripts/setup.sh` (Linux and macOS) or `.scripts/setup.ps1` (Windows) script. This will install the Rust and Node.js CLI and build the JS API. After that, you should be able to run all the examples. ### Packages Overview -- The JS API (`/api`) contains JS bindings to the builtin Rust functions in the Rust API. -- Tauri.js (`/cli/tauri.js`) is the primary CLI for creating and developing Tauri apps. -- The Rust CLI (`/cli/core`) is a new version of the CLI that will replace Tauri.js, but now it only supports build and dev commands. Tauri.js will automatically use the Rust CLI for these commands. -- Tauri Bundler (`/cli/tauri-bundler`) is used by the Rust CLI to package executables into installers. +- The JS API (`/tooling/api`) contains JS bindings to the builtin Rust functions in the Rust API. +- The Rust CLI (`/tooling/cli.rs`) is the primary CLI for creating and developing Tauri apps. +- cli.js (`/tooling/cli.js`) is a Node.js CLI wrapper for `cli.rs`. +- Tauri Bundler (`/tooling/bundler`) is used by the Rust CLI to package executables into installers. - Tauri Core (`/core/tauri`) is the heart of Tauri. It contains the code that starts the app, configures communication between Rust and the Webview, and ties all the other packages together. - The Macros (`/core/tauri-macros`) are used by Tauri Core for various functions. -### Developing The Node.js CLI (Tauri.js) +### Developing The Node.js CLI (cli.js) -Tauri.js is a CLI tool that houses the `init`, `info`, `icon`, and `deps` command. It also handles the `build` and `dev` command by forwarding them to the Rust CLI, which will eventually replace this modules completely. The code for Tauri.js is located in `[Tauri repo root]/cli/tauri.js`. There are a few package scripts you should be aware of: +`cli.js` is a CLI tool that houses the `icon`, and `deps` command. The code for cli.js is located in `[Tauri repo root]/tooling/cli.js`. There are a few package scripts you should be aware of: - `build` builds the CLI - `test` runs the unit and e2e test suite - `lint` runs ESLint to catch linting errors - `format` formats code with Prettier to match the style guide -To test your changes, we recommend using the helloworld example app, located in `[Tauri repo root]/examples/helloworld`. Run `yarn tauri [COMMAND]` to run a command using your local Tauri.js copy. You will need to rebuild Tauri.js after every change by running `yarn build` in the Tauri.js directory. +To test your changes, we recommend using the helloworld example app, located in `[Tauri repo root]/examples/helloworld`. Run `yarn tauri [COMMAND]` to run a command using your local cli.js copy. You will need to rebuild cli.js after every change by running `yarn build` in the cli.js directory. -If you want to use your local copy of Tauri.js in another app, we recommend using [Yarn link](https://classic.yarnpkg.com/en/docs/cli/link/). First, make sure you have don't have Tauri.js installed globally by running `npm uninstall -g tauri && yarn global remove tauri`. Then, run `yarn link` in the Tauri.js directory (note that the setup script will do this for you, so you can skip this step if you ran that). Now, you can just run `tauri [COMMAND]` anywhere, and your local copy will be used. +If you want to use your local copy of cli.js in another app, we recommend using [yarn link](https://classic.yarnpkg.com/en/docs/cli/link/). First, make sure you have don't have cli.js installed globally by running `npm uninstall -g tauri && yarn global remove tauri`. Then, run `yarn link` in the cli.js directory (note that the setup script will do this for you, so you can skip this step if you ran that). Now, you can just run `tauri [COMMAND]` anywhere, and your local copy will be used. ### Developing Tauri Bundler and Rust CLI -The code for the bundler is located in `[Tauri repo root]/cli/tauri-bundler`, and the code for the Rust CLI is located in `[Tauri repo root]/cli/core`. If you are using your local copy of Tauri.js (see above), any changes you make to the bundler and CLI will be automatically built and applied when running the build or dev command. Otherwise, running `cargo install --path .` in the Rust CLI directory will allow you to run `cargo tauri build` and `cargo tauri dev` anywhere, using the updated copy of the bundler and cli. You will have to run this command each time you make a change in either package. +The code for the bundler is located in `[Tauri repo root]/tooling/bundler`, and the code for the Rust CLI is located in `[Tauri repo root]/tooling/cli.rs`. If you are using your local copy of cli.js (see above), any changes you make to the bundler and CLI will be automatically built and applied when running the build or dev command. Otherwise, running `cargo install --path .` in the Rust CLI directory will allow you to run `cargo tauri build` and `cargo tauri dev` anywhere, using the updated copy of the bundler and cli. You will have to run this command each time you make a change in either package. -### Developing Tauri Core and Related Components (Rust API, Macros, and Utils) +### Developing Tauri Core and Related Components (Rust API, Macros, Codegen, and Utils) The code for Tauri Core is located in `[Tauri repo root]/core/tauri`, and the Rust API, Macros, and Utils are in `[Tauri repo root]/core/tauri-(api/macros/utils)`. The easiest way to test your changes is to use the `[Tauri repo root]/examples/helloworld` app. It automatically rebuilds and uses your local copy of the Tauri core packages. Just run `yarn tauri build` or `yarn tauri dev` in the helloworld app directory after making changes to test them out. To use your local changes in another project, edit its `src-tauri/Cargo.toml` file so that the `tauri` key looks like `tauri = { path = "PATH", features = [ "api-all", "cli" ] }`, where `PATH` is the relative path to `[Tauri repo root]/core/tauri`. Then, your local copy of the Tauri core packages will be rebuilt and used whenever you build that project. ### Developing the JS API -The JS API provides bindings between the developer's JS in the Webview and the builtin Tauri APIs, written in Rust. Its code is located in `[Tauri repo root]/api`. After making changes to the code, run `yarn build` to build it. To test your changes, we recommend using the API example app, located in `[Tauri repo root]/examples/api`. It will automatically use your local copy of the JS API and provides a helpful UI to test the various commands. +The JS API provides bindings between the developer's JS in the Webview and the builtin Tauri APIs, written in Rust. Its code is located in `[Tauri repo root]/tooling/api`. After making changes to the code, run `yarn build` to build it. To test your changes, we recommend using the API example app, located in `[Tauri repo root]/examples/api`. It will automatically use your local copy of the JS API and provides a helpful UI to test the various commands. ## Financial Contribution diff --git a/.github/workflows/artifacts-updater.yml b/.github/workflows/artifacts-updater.yml index d40c9e1a838..14201aa20f2 100644 --- a/.github/workflows/artifacts-updater.yml +++ b/.github/workflows/artifacts-updater.yml @@ -8,8 +8,8 @@ on: paths: - '.github/workflows/artifacts-updater.yml' - 'core/tauri/**' - - 'cli/core/**' - - 'cli/tauri-bundler/**' + - 'tooling/cli.rs/**' + - 'tooling/bundler/**' - 'examples/updater/**' jobs: @@ -32,18 +32,18 @@ jobs: run: | sudo apt-get update sudo apt-get install -y webkit2gtk-4.0 - - run: cargo install --path ./cli/core --force + - run: cargo install --path ./tooling/cli.rs --force - name: install cli deps via yarn - working-directory: ./cli/tauri.js + working-directory: ./tooling/cli.js run: yarn - name: build cli - working-directory: ./cli/tauri.js + working-directory: ./tooling/cli.js run: yarn build - name: build sample artifacts (updater) working-directory: ./examples/updater run: | yarn install - node ../../cli/tauri.js/bin/tauri build + node ../../tooling/cli.js/bin/tauri build env: TAURI_PRIVATE_KEY: dW50cnVzdGVkIGNvbW1lbnQ6IHJzaWduIGVuY3J5cHRlZCBzZWNyZXQga2V5ClJXUlRZMEl5YTBGV3JiTy9lRDZVd3NkL0RoQ1htZmExNDd3RmJaNmRMT1ZGVjczWTBKZ0FBQkFBQUFBQUFBQUFBQUlBQUFBQWdMekUzVkE4K0tWQ1hjeGt1Vkx2QnRUR3pzQjVuV0ZpM2czWXNkRm9hVUxrVnB6TUN3K1NheHJMREhQbUVWVFZRK3NIL1VsMDBHNW5ET1EzQno0UStSb21nRW4vZlpTaXIwZFh5ZmRlL1lSN0dKcHdyOUVPclVvdzFhVkxDVnZrbHM2T1o4Tk1NWEU9Cg== - uses: actions/upload-artifact@v2 diff --git a/.github/workflows/audit.yml b/.github/workflows/audit.yml index dadd56de62d..37f1a7f160b 100644 --- a/.github/workflows/audit.yml +++ b/.github/workflows/audit.yml @@ -30,5 +30,5 @@ jobs: steps: - uses: actions/checkout@v2 - name: yarn audit - working-directory: cli/tauri.js + working-directory: tooling/cli.js run: yarn audit diff --git a/.github/workflows/build-smoke-tests.yml b/.github/workflows/build-smoke-tests.yml index 7c07f5f836c..9cc34c15edc 100644 --- a/.github/workflows/build-smoke-tests.yml +++ b/.github/workflows/build-smoke-tests.yml @@ -71,10 +71,10 @@ jobs: sudo apt-get update sudo apt-get install -y webkit2gtk-4.0 - name: yarn install for cli - working-directory: tauri/cli/tauri.js + working-directory: tauri/tooling/cli.js run: yarn - - name: build tauri.js - working-directory: tauri/cli/tauri.js + - name: build cli.js + working-directory: tauri/tooling/cli.js run: | yarn build-release yarn global add $PWD diff --git a/.github/workflows/core-lint-fmt.yml b/.github/workflows/core-lint-fmt.yml index 2758f70a573..8c4eb20e44a 100644 --- a/.github/workflows/core-lint-fmt.yml +++ b/.github/workflows/core-lint-fmt.yml @@ -10,7 +10,7 @@ on: - '.github/workflows/core-lint-fmt.yml' - 'core/**' - 'examples/**' - - 'cli/core/**' + - 'tooling/cli.rs/**' jobs: workspace_clippy_fmt_check: @@ -48,7 +48,7 @@ jobs: - uses: actions-rs/clippy-check@v1 with: token: ${{ secrets.GITHUB_TOKEN }} - args: --manifest-path ./cli/core/Cargo.toml --all-targets --all-features -- -D warnings + args: --manifest-path ./tooling/cli.rs/Cargo.toml --all-targets --all-features -- -D warnings name: cli - uses: actions-rs/toolchain@v1 with: @@ -59,7 +59,7 @@ jobs: - uses: actions-rs/cargo@v1 with: command: fmt - args: --manifest-path ./cli/core/Cargo.toml --all -- --check + args: --manifest-path ./tooling/cli.rs/Cargo.toml --all -- --check core_clippy_check: runs-on: ubuntu-latest diff --git a/.github/workflows/covector-version-or-publish.yml b/.github/workflows/covector-version-or-publish.yml index a6781107b10..35ad6384c44 100644 --- a/.github/workflows/covector-version-or-publish.yml +++ b/.github/workflows/covector-version-or-publish.yml @@ -106,8 +106,8 @@ jobs: fail-fast: false matrix: package: - - name: tauri.js - registryName: tauri + - name: cli.js + registryName: \@tauri-apps/cli - name: tauri-bundler registryName: tauri-bundler - name: tauri-utils diff --git a/.github/workflows/js-lint.yml b/.github/workflows/js-lint.yml index 454546b5722..a7ddf4aa581 100644 --- a/.github/workflows/js-lint.yml +++ b/.github/workflows/js-lint.yml @@ -8,7 +8,7 @@ on: pull_request: paths: - '.github/workflows/js-lint.yml' - - 'cli/tauri.js/**' + - 'tooling/cli.js/**' jobs: eslint-check: @@ -19,11 +19,11 @@ jobs: with: node-version: '12' - name: install deps via yarn - working-directory: ./cli/tauri.js/ + working-directory: ./tooling/cli.js/ run: yarn - name: run eslint - working-directory: ./cli/tauri.js/ + working-directory: ./tooling/cli.js/ run: yarn lint - name: run prettier - working-directory: ./cli/tauri.js/ + working-directory: ./tooling/cli.js/ run: yarn format:check diff --git a/.github/workflows/test-bundler.yml b/.github/workflows/test-bundler.yml index f21dd131870..d50d1e4248c 100644 --- a/.github/workflows/test-bundler.yml +++ b/.github/workflows/test-bundler.yml @@ -8,7 +8,7 @@ on: pull_request: paths: - '.github/workflows/test-bundler.yml' - - 'cli/tauri-bundler/**' + - 'tooling/bundler/**' env: RUST_BACKTRACE: 1 @@ -34,7 +34,7 @@ jobs: sudo apt-get install -y webkit2gtk-4.0 - name: test run: | - cd ./cli/tauri-bundler + cd ./tooling/bundler cargo test clippy-fmt-check: @@ -52,7 +52,7 @@ jobs: uses: actions-rs/clippy-check@v1 with: token: ${{ secrets.GITHUB_TOKEN }} - args: --manifest-path ./cli/tauri-bundler/Cargo.toml --all-targets -- -D warnings + args: --manifest-path ./tooling/bundler/Cargo.toml --all-targets -- -D warnings name: bundler - name: install rustfmt uses: actions-rs/toolchain@v1 @@ -65,4 +65,4 @@ jobs: uses: actions-rs/cargo@v1 with: command: fmt - args: --manifest-path ./cli/tauri-bundler/Cargo.toml --all -- --check + args: --manifest-path ./tooling/bundler/Cargo.toml --all -- --check diff --git a/.github/workflows/test-core.yml b/.github/workflows/test-core.yml index f95e01e2ab2..91de5c68487 100644 --- a/.github/workflows/test-core.yml +++ b/.github/workflows/test-core.yml @@ -55,13 +55,13 @@ jobs: toolchain: stable override: true - name: build api - working-directory: ./api + working-directory: ./tooling/api run: yarn && yarn build - name: build CLI uses: actions-rs/cargo@v1 with: command: build - args: --manifest-path ./cli/core/Cargo.toml + args: --manifest-path ./tooling/cli.rs/Cargo.toml test-tauri-js-cli: runs-on: ${{ matrix.platform }} @@ -81,10 +81,10 @@ jobs: - name: test timeout-minutes: 30 run: | - cd ./cli/tauri.js + cd ./tooling/cli.js yarn yarn test - name: run release build timeout-minutes: 15 - working-directory: cli/tauri.js + working-directory: tooling/cli.js run: yarn build-release diff --git a/.github/workflows/udeps.yml b/.github/workflows/udeps.yml index 34e5c5b3cf3..c49ba84f95f 100644 --- a/.github/workflows/udeps.yml +++ b/.github/workflows/udeps.yml @@ -9,8 +9,8 @@ on: paths: - '.github/workflows/udeps.yml' - 'core/**' - - 'cli/tauri-bundler/**' - - 'cli/core/**' + - 'tooling/bundler/**' + - 'tooling/cli.rs/**' jobs: udeps: @@ -45,13 +45,13 @@ jobs: - name: Cache bundler cargo target uses: actions/cache@v2 with: - path: cli/tauri-bundler/target + path: tooling/bundler/target key: ubuntu-latest-nightly-cargo-build-bundler-target-${{ hashFiles('**/Cargo.toml') }} - name: Cache CLI cargo target uses: actions/cache@v2 with: - path: cli/core/target + path: tooling/cli.rs/target key: ubuntu-latest-nightly-cargo-build-cli-target-${{ hashFiles('**/Cargo.toml') }} - uses: actions-rs/cargo@v1 @@ -72,9 +72,9 @@ jobs: - uses: actions-rs/cargo@v1 with: command: udeps - args: --manifest-path ./cli/tauri-bundler/Cargo.toml --all-targets --all-features + args: --manifest-path ./tooling/bundler/Cargo.toml --all-targets --all-features - uses: actions-rs/cargo@v1 with: command: udeps - args: --manifest-path ./cli/core/Cargo.toml --all-targets --all-features + args: --manifest-path ./tooling/cli.rs/Cargo.toml --all-targets --all-features diff --git a/.github/workflows/update-docs.yml b/.github/workflows/update-docs.yml index e6d0e25c3ac..b557123e012 100644 --- a/.github/workflows/update-docs.yml +++ b/.github/workflows/update-docs.yml @@ -47,7 +47,7 @@ jobs: - name: run typedocusaurus uses: tauri-apps/typedocusaurus/github-action@v1 with: - originPath: ./tauri/api/ + originPath: ./tauri/tooling/api/ sidebarFile: sidebars.json targetPath: en/api/js docusaurusPath: ./tauri-docs/ diff --git a/.gitignore b/.gitignore index 33d79f0f133..7df6c31c6d6 100644 --- a/.gitignore +++ b/.gitignore @@ -79,11 +79,11 @@ target /Cargo.lock /yarn.lock -/cli/tauri.js/test/jest/tmp +/tooling/cli.js/test/jest/tmp # doing this because of how our tests currently (naively) drop the tauri.conf.js in that folder # todo: needs a proper fic -/cli/tauri.js/tauri.conf.js +/tooling/cli.js/tauri.conf.js # ignore frida handlers __handlers__/ diff --git a/.husky/pre-commit b/.husky/pre-commit index 332603aa7a7..ae76c9bddd3 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,9 +1,9 @@ #!/bin/sh . "$(dirname "$0")/_/husky.sh" -cd api +cd tooling/api yarn format yarn lint-fix -cd ../cli/tauri.js +cd ../cli.js yarn format yarn lint-fix diff --git a/.scripts/setup.sh b/.scripts/setup.sh index 6afeecbbe07..c5552f01f06 100644 --- a/.scripts/setup.sh +++ b/.scripts/setup.sh @@ -9,7 +9,7 @@ yarn && yarn build cd .. echo "Building the Tauri Rust CLI..." -cd cli/core +cd tooling/cli.rs cargo install --path . cd ../.. echo "Tauri Rust CLI installed. Run it with '$ cargo tauri [COMMAND]'." @@ -18,7 +18,7 @@ echo "Do you want to install the Node.js CLI?" select yn in "Yes" "No"; do case $yn in Yes ) - cd cli/tauri.js + cd tooling/cli.js yarn && yarn build && yarn link cd ../.. echo "Tauri Node.js CLI installed. Run it with '$ tauri [COMMAND]'." diff --git a/README.md b/README.md index 908690b49c5..31c19f82d50 100644 --- a/README.md +++ b/README.md @@ -20,12 +20,13 @@ Tauri Apps ## Current Releases -| Component | Description | Version | Lin | Win | Mac | -|-----------|---------|------|-----|-----|-----| -| [**tauri.js CLI**](https://github.com/tauri-apps/tauri/tree/dev/cli/tauri.js) | create, develop and build apps | [![](https://img.shields.io/npm/v/tauri.svg)](https://www.npmjs.com/package/tauri) |✅|✅|✅| -| [**tauri core**](https://github.com/tauri-apps/tauri/tree/dev/tauri) | binding to the low level WEBVIEW | [![](https://img.shields.io/crates/v/tauri.svg)](https://crates.io/crates/tauri)|✅|✅|✅| -| [**tauri bundler**](https://github.com/tauri-apps/tauri/tree/dev/cli/tauri-bundler) | manufacture the final binaries | [![](https://img.shields.io/crates/v/tauri-bundler.svg)](https://crates.io/crates/tauri-bundler) |✅|✅|✅ | -| [**tauri utils**](https://github.com/tauri-apps/tauri/tree/dev/tauri-utils) | common tools for tauri| [![](https://img.shields.io/crates/v/tauri-utils.svg)](https://crates.io/crates/tauri-utils) |✅|✅|✅ | +| Component | Description | Version | Lin | Win | Mac | +| --------------------------------------------------------------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------ | --- | --- | --- | +| [**cli.rs**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli.rs) | create, develop and build apps | [![](https://img.shields.io/crates/v/tauri-cli.svg)](https://crates.io/crates/tauri-cli) | ✅ | ✅ | ✅ | +| [**cli.js**](https://github.com/tauri-apps/tauri/tree/dev/tooling/cli.js) | Node.js CLI wrapper for cli.rs | [![](https://img.shields.io/npm/v/tauri.svg)](https://www.npmjs.com/package/tauri) | ✅ | ✅ | ✅ | +| [**core**](https://github.com/tauri-apps/tauri/tree/dev/core/tauri) | runtime core | [![](https://img.shields.io/crates/v/tauri.svg)](https://crates.io/crates/tauri) | ✅ | ✅ | ✅ | +| [**bundler**](https://github.com/tauri-apps/tauri/tree/dev/tooling/bundler) | manufacture the final binaries | [![](https://img.shields.io/crates/v/tauri-bundler.svg)](https://crates.io/crates/tauri-bundler) | ✅ | ✅ | ✅ | +| [**utils**](https://github.com/tauri-apps/tauri/tree/dev/core/tauri-utils) | common tools for tauri | [![](https://img.shields.io/crates/v/tauri-utils.svg)](https://crates.io/crates/tauri-utils) | ✅ | ✅ | ✅ | ## Introduction @@ -91,28 +92,28 @@ If you are interested in making a tauri-app, please visit the [documentation web ### Comparison between Tauri and Electron -| Detail | Tauri | Electron | -|--|--------|----------| -| Installer Size Linux | 3.1 MB | 52.1 MB | -| Memory Consumption Linux | 180 MB | 462 MB | -| Launch Time Linux | 0.39s | .80s | -| Interface Service Provider | Varies | Chromium | -| Backend Binding | Rust | Node.js (ECMAScript) | -| Underlying Engine | C/C++ | V8 (C/C++) | -| FLOSS | Yes | No | -| Multithreading | Yes | Yes | -| Bytecode Delivery | Yes | No | -| Multiple Windows | Soon | Yes | -| Auto Updater | Soon | Yes (1) | -| Cross Platform | Yes | Yes | -| Custom App Icon | Yes | Yes | -| Windows Binary | Yes | Yes | -| MacOS Binary | Yes | Yes | -| Linux Binary | Yes | Yes | -| iOS Binary | Soon | No | -| Android Binary | Soon | No | -| Desktop Tray | Soon | Yes | -| Sidecar Binaries | Yes | No | +| Detail | Tauri | Electron | +| -------------------------- | ------ | -------------------- | +| Installer Size Linux | 3.1 MB | 52.1 MB | +| Memory Consumption Linux | 180 MB | 462 MB | +| Launch Time Linux | 0.39s | .80s | +| Interface Service Provider | Varies | Chromium | +| Backend Binding | Rust | Node.js (ECMAScript) | +| Underlying Engine | C/C++ | V8 (C/C++) | +| FLOSS | Yes | No | +| Multithreading | Yes | Yes | +| Bytecode Delivery | Yes | No | +| Multiple Windows | Soon | Yes | +| Auto Updater | Soon | Yes (1) | +| Cross Platform | Yes | Yes | +| Custom App Icon | Yes | Yes | +| Windows Binary | Yes | Yes | +| MacOS Binary | Yes | Yes | +| Linux Binary | Yes | Yes | +| iOS Binary | Soon | No | +| Android Binary | Soon | No | +| Desktop Tray | Soon | Yes | +| Sidecar Binaries | Yes | No | #### Notes 1. Electron has no native auto updater on Linux, but is offered by electron-packager diff --git a/cli/tauri.js/test/jest/raw-loader-transformer.js b/cli/tauri.js/test/jest/raw-loader-transformer.js deleted file mode 100644 index d64cef70180..00000000000 --- a/cli/tauri.js/test/jest/raw-loader-transformer.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - process: (content) => `module.exports = {default: ${JSON.stringify(content)}}` -} diff --git a/core/tauri/scripts/bundle.js b/core/tauri/scripts/bundle.js index d6f6748a312..0c74e8714bf 100644 --- a/core/tauri/scripts/bundle.js +++ b/core/tauri/scripts/bundle.js @@ -1 +1 @@ -/* SPDX-License-Identifier: Apache-2.0 OR MIT */function _inherits(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),r&&_setPrototypeOf(e,r)}function _setPrototypeOf(e,r){return(_setPrototypeOf=Object.setPrototypeOf||function(e,r){return e.__proto__=r,e})(e,r)}function _createSuper(e){var r=_isNativeReflectConstruct();return function(){var t,n=_getPrototypeOf(e);if(r){var a=_getPrototypeOf(this).constructor;t=Reflect.construct(n,arguments,a)}else t=n.apply(this,arguments);return _possibleConstructorReturn(this,t)}}function _possibleConstructorReturn(e,r){return!r||"object"!==_typeof(r)&&"function"!=typeof r?_assertThisInitialized(e):r}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _createForOfIteratorHelper(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,i=!1;return{s:function(){t=e[Symbol.iterator]()},n:function(){var e=t.next();return u=e.done,e},e:function(e){i=!0,o=e},f:function(){try{u||null==t.return||t.return()}finally{if(i)throw o}}}}function _unsupportedIterableToArray(e,r){if(e){if("string"==typeof e)return _arrayLikeToArray(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t=0;--o){var u=this.tryEntries[o],i=u.completion;if("root"===u.tryLoc)return a("end");if(u.tryLoc<=this.prev){var c=n.call(u,"catchLoc"),s=n.call(u,"finallyLoc");if(c&&s){if(this.prev=0;--t){var a=this.tryEntries[t];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev=0;--r){var t=this.tryEntries[r];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),O(t),d}},catch:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.tryLoc===e){var n=t.completion;if("throw"===n.type){var a=n.arg;O(t)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:M(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=r),d}},e}("object"===("undefined"==typeof module?"undefined":_typeof(module))?module.exports:{});try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}function t(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==arguments[1]&&arguments[1],a=n();return Object.defineProperty(window,a,{value:function(n){return r&&Reflect.deleteProperty(window,a),t([e,"optionalCall",function(e){return e(n)}])},writable:!1,configurable:!0}),a}function o(e){return u.apply(this,arguments)}function u(){return(u=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",new Promise((function(e,n){var o=a((function(r){e(r),Reflect.deleteProperty(window,u)}),!0),u=a((function(e){n(e),Reflect.deleteProperty(window,o)}),!0);window.rpc.notify(r,_objectSpread({callback:o,error:u},t))})));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var i=Object.freeze({__proto__:null,transformCallback:a,invoke:o});function c(e){return s.apply(this,arguments)}function s(){return(s=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o("tauri",r));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function p(){return(p=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getAppVersion"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function l(){return(l=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getAppName"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function f(){return(f=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getTauriVersion"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function h(){return(h=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.length>0&&void 0!==t[0]?t[0]:0,e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"exit",exitCode:r}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function m(){return(m=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"relaunch"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var d=Object.freeze({__proto__:null,getName:function(){return l.apply(this,arguments)},getVersion:function(){return p.apply(this,arguments)},getTauriVersion:function(){return f.apply(this,arguments)},relaunch:function(){return m.apply(this,arguments)},exit:function(){return h.apply(this,arguments)}});function y(){return(y=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Cli",message:{cmd:"cliMatches"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var _=Object.freeze({__proto__:null,getMatches:function(){return y.apply(this,arguments)}});function g(){return(g=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(r=t.length>0&&void 0!==t[0]?t[0]:{})&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"openDialog",options:r}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function v(){return(v=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(r=t.length>0&&void 0!==t[0]?t[0]:{})&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"saveDialog",options:r}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var w=Object.freeze({__proto__:null,open:function(){return g.apply(this,arguments)},save:function(){return v.apply(this,arguments)}});function b(e,r){return R.apply(this,arguments)}function R(){return(R=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Event",message:{cmd:"listen",event:r,handler:a(t)}}).then((function(e){return _asyncToGenerator(regeneratorRuntime.mark((function r(){return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",k(e));case 1:case"end":return r.stop()}}),r)})))})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function k(e){return x.apply(this,arguments)}function x(){return(x=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Event",message:{cmd:"unlisten",eventId:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function T(e,r){return G.apply(this,arguments)}function G(){return(G=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",b(r,t));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e,r){return P.apply(this,arguments)}function P(){return(P=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",b(r,(function(e){t(e),k(e.id).catch((function(){}))})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function M(e,r,t){return j.apply(this,arguments)}function j(){return(j=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c({__tauriModule:"Event",message:{cmd:"emit",event:r,windowLabel:t,payload:n}});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function C(){return(C=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",M(r,void 0,t));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var F=Object.freeze({__proto__:null,emit:function(e,r){return C.apply(this,arguments)},listen:T,once:O});function A(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readTextFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function W(){return(W=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readBinaryFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function I(){return(I=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(t=n.length>1&&void 0!==n[1]?n[1]:{})&&Object.freeze(t),"object"===_typeof(r)&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"writeFile",path:r.path,contents:r.contents,options:t}}));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}!function(e){e[e.Audio=1]="Audio";e[e.Cache=2]="Cache";e[e.Config=3]="Config";e[e.Data=4]="Data";e[e.LocalData=5]="LocalData";e[e.Desktop=6]="Desktop";e[e.Document=7]="Document";e[e.Download=8]="Download";e[e.Executable=9]="Executable";e[e.Font=10]="Font";e[e.Home=11]="Home";e[e.Picture=12]="Picture";e[e.Public=13]="Public";e[e.Runtime=14]="Runtime";e[e.Template=15]="Template";e[e.Video=16]="Video";e[e.Resource=17]="Resource";e[e.App=18]="App";e[e.Current=19]="Current"}(E||(E={}));var N=65536;function H(e){var r=function(e){if(e.length1&&void 0!==n[1]?n[1]:{})&&Object.freeze(t),"object"===_typeof(r)&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"writeBinaryFile",path:r.path,contents:H(r.contents),options:t}}));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function U(){return(U=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function q(){return(q=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"createDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function V(){return(V=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"removeDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Y(){return(Y=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>2&&void 0!==a[2]?a[2]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"copyFile",source:r,destination:t,options:n}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function J(){return(J=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"removeFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function K(){return(K=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>2&&void 0!==a[2]?a[2]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"renameFile",oldPath:r,newPath:t,options:n}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var X=Object.freeze({__proto__:null,get BaseDirectory(){return E},get Dir(){return E},readTextFile:function(e){return z.apply(this,arguments)},readBinaryFile:function(e){return W.apply(this,arguments)},writeFile:function(e){return I.apply(this,arguments)},writeBinaryFile:function(e){return B.apply(this,arguments)},readDir:function(e){return U.apply(this,arguments)},createDir:function(e){return q.apply(this,arguments)},removeDir:function(e){return V.apply(this,arguments)},copyFile:function(e,r){return Y.apply(this,arguments)},removeFile:function(e){return J.apply(this,arguments)},renameFile:function(e,r){return K.apply(this,arguments)}});function $(){return($=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.App}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Q(){return(Q=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Audio}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Z(){return(Z=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Cache}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ee(){return(ee=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Config}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function re(){return(re=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Data}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function te(){return(te=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Desktop}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ne(){return(ne=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Document}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ae(){return(ae=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Download}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function oe(){return(oe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Executable}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ue(){return(ue=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Font}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ie(){return(ie=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Home}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ce(){return(ce=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.LocalData}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function se(){return(se=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Picture}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function pe(){return(pe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Public}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function le(){return(le=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Resource}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function fe(){return(fe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Runtime}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function he(){return(he=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Template}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function me(){return(me=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Video}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function de(){return(de=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Current}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ye(){return(ye=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:r,directory:t}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var _e,ge=Object.freeze({__proto__:null,appDir:function(){return $.apply(this,arguments)},audioDir:function(){return Q.apply(this,arguments)},cacheDir:function(){return Z.apply(this,arguments)},configDir:function(){return ee.apply(this,arguments)},dataDir:function(){return re.apply(this,arguments)},desktopDir:function(){return te.apply(this,arguments)},documentDir:function(){return ne.apply(this,arguments)},downloadDir:function(){return ae.apply(this,arguments)},executableDir:function(){return oe.apply(this,arguments)},fontDir:function(){return ue.apply(this,arguments)},homeDir:function(){return ie.apply(this,arguments)},localDataDir:function(){return ce.apply(this,arguments)},pictureDir:function(){return se.apply(this,arguments)},publicDir:function(){return pe.apply(this,arguments)},resourceDir:function(){return le.apply(this,arguments)},runtimeDir:function(){return fe.apply(this,arguments)},templateDir:function(){return he.apply(this,arguments)},videoDir:function(){return me.apply(this,arguments)},currentDir:function(){return de.apply(this,arguments)},resolvePath:function(e,r){return ye.apply(this,arguments)}});function ve(e,r){return null!=e?e:r()}function we(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==arguments[1]?arguments[1]:[];return _classCallCheck(this,a),r=n.call(this),a.prototype.__init2.call(_assertThisInitialized(r)),a.prototype.__init3.call(_assertThisInitialized(r)),a.prototype.__init4.call(_assertThisInitialized(r)),a.prototype.__init5.call(_assertThisInitialized(r)),r.program=e,r.args="string"==typeof t?[t]:t,r}return _createClass(a,[{key:"__init2",value:function(){this.sidecar=!1}},{key:"__init3",value:function(){this.stdout=new je}},{key:"__init4",value:function(){this.stderr=new je}},{key:"__init5",value:function(){this.pid=null}},{key:"spawn",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Pe(this.program,this.sidecar,(function(e){switch(e.event){case"Error":r._emit("error",e.payload);break;case"Terminated":r._emit("close",e.payload);break;case"Stdout":r.stdout._emit("data",e.payload);break;case"Stderr":r.stderr._emit("data",e.payload)}}),this.args).then((function(e){return new Ce(e)})));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"execute",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,t){r.on("error",t);var n=[],a=[];r.stdout.on("data",(function(e){n.push(e)})),r.stderr.on("data",(function(e){a.push(e)})),r.on("close",(function(r){e({code:r.code,signal:r.signal,stdout:n.join("\n"),stderr:a.join("\n")})})),r.spawn().catch(t)})));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})}],[{key:"sidecar",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=new a(e,r);return t.sidecar=!0,t}}]),a}(je);function Ae(){return(Ae=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Shell",message:{cmd:"open",path:r,with:t}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var De=Object.freeze({__proto__:null,Command:Fe,Child:Ce,open:function(e,r){return Ae.apply(this,arguments)}});function Se(){return window.__TAURI__.__windows}var Ee=["tauri://created","tauri://error"],Le=function(){function e(r){_classCallCheck(this,e),this.label=r,this.listeners=Object.create(null)}var r,t,n;return _createClass(e,[{key:"listen",value:(n=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._handleTauriEvent(r,t)){e.next=2;break}return e.abrupt("return",Promise.resolve((function(){var e=n.listeners[r];e.splice(e.indexOf(t),1)})));case 2:return e.abrupt("return",T(r,t));case 3:case"end":return e.stop()}}),e,this)}))),function(e,r){return n.apply(this,arguments)})},{key:"once",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._handleTauriEvent(r,t)){e.next=2;break}return e.abrupt("return",Promise.resolve((function(){var e=n.listeners[r];e.splice(e.indexOf(t),1)})));case 2:return e.abrupt("return",O(r,t));case 3:case"end":return e.stop()}}),e,this)}))),function(e,r){return t.apply(this,arguments)})},{key:"emit",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Ee.includes(r)){e.next=4;break}n=_createForOfIteratorHelper(this.listeners[r]||[]);try{for(n.s();!(a=n.n()).done;)(0,a.value)({event:r,id:-1,payload:t})}catch(e){n.e(e)}finally{n.f()}return e.abrupt("return",Promise.resolve());case 4:return e.abrupt("return",M(r,this.label,t));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"_handleTauriEvent",value:function(e,r){return!!Ee.includes(e)&&(e in this.listeners?this.listeners[e].push(r):this.listeners[e]=[r],!0)}}]),e}(),ze=function(e){_inherits(t,e);var r=_createSuper(t);function t(e){var n,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _classCallCheck(this,t),n=r.call(this,e),c({__tauriModule:"Window",message:{cmd:"createWebview",options:_objectSpread({label:e},a)}}).then(_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.emit("tauri://created"));case 1:case"end":return e.stop()}}),e)})))).catch(function(){var e=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.emit("tauri://error",r));case 1:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}()),n}return _createClass(t,null,[{key:"getByLabel",value:function(e){return Se().some((function(r){return r.label===e}))?new Le(e):null}}]),t}(Le),We=new(function(){function e(){_classCallCheck(this,e)}var r,t,n,a,o,u,i,s,p,l,f,h,m,d,y,_,g,v,w,b,R;return _createClass(e,[{key:"setResizable",value:(R=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setResizable",resizable:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return R.apply(this,arguments)})},{key:"setTitle",value:(b=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setTitle",title:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return b.apply(this,arguments)})},{key:"maximize",value:(w=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"maximize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return w.apply(this,arguments)})},{key:"unmaximize",value:(v=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"unmaximize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return v.apply(this,arguments)})},{key:"minimize",value:(g=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"minimize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return g.apply(this,arguments)})},{key:"unminimize",value:(_=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"unminimize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return _.apply(this,arguments)})},{key:"show",value:(y=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"show"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return y.apply(this,arguments)})},{key:"hide",value:(d=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"hide"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return d.apply(this,arguments)})},{key:"close",value:(m=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"close"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return m.apply(this,arguments)})},{key:"setDecorations",value:(h=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setDecorations",decorations:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return h.apply(this,arguments)})},{key:"setAlwaysOnTop",value:(f=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setAlwaysOnTop",alwaysOnTop:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return f.apply(this,arguments)})},{key:"setWidth",value:(l=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setWidth",width:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return l.apply(this,arguments)})},{key:"setHeight",value:(p=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setHeight",height:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return p.apply(this,arguments)})},{key:"resize",value:(s=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"resize",width:r,height:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return s.apply(this,arguments)})},{key:"setMinSize",value:(i=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setMinSize",minWidth:r,minHeight:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return i.apply(this,arguments)})},{key:"setMaxSize",value:(u=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setMaxSize",maxWidth:r,maxHeight:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return u.apply(this,arguments)})},{key:"setX",value:(o=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setX",x:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"setY",value:(a=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setY",y:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return a.apply(this,arguments)})},{key:"setPosition",value:(n=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setPosition",x:r,y:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return n.apply(this,arguments)})},{key:"setFullscreen",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setFullscreen",fullscreen:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"setIcon",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setIcon",icon:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})}]),e}()),Ie=Object.freeze({__proto__:null,WebviewWindow:ze,getCurrent:function(){return new Le(window.__TAURI__.__currentWindow.label)},getAll:Se,appWindow:We});function Ne(){return(Ne=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("default"===window.Notification.permission){e.next=2;break}return e.abrupt("return",Promise.resolve("granted"===window.Notification.permission));case 2:return e.abrupt("return",c({__tauriModule:"Notification",message:{cmd:"isNotificationPermissionGranted"}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function He(){return(He=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.Notification.requestPermission());case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Be=Object.freeze({__proto__:null,sendNotification:function(e){"string"==typeof e?new window.Notification(e):new window.Notification(e.title,e)},requestPermission:function(){return He.apply(this,arguments)},isPermissionGranted:function(){return Ne.apply(this,arguments)}});function Ue(){return(Ue=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"register",shortcut:r,handler:a(t)}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function qe(){return(qe=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"registerAll",shortcuts:r,handler:a(t)}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ve(){return(Ve=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"isRegistered",shortcut:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ye(){return(Ye=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"unregister",shortcut:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Je(){return(Je=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"unregisterAll"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Ke=Object.freeze({__proto__:null,register:function(e,r){return Ue.apply(this,arguments)},registerAll:function(e,r){return qe.apply(this,arguments)},isRegistered:function(e){return Ve.apply(this,arguments)},unregister:function(e){return Ye.apply(this,arguments)},unregisterAll:function(){return Je.apply(this,arguments)}});e.app=d,e.cli=_,e.dialog=w,e.event=F,e.fs=X,e.globalShortcut=Ke,e.http=Oe,e.notification=Be,e.path=ge,e.shell=De,e.tauri=i,e.updater=L,e.window=Ie,Object.defineProperty(e,"__esModule",{value:!0})})); +function _inherits(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),r&&_setPrototypeOf(e,r)}function _setPrototypeOf(e,r){return(_setPrototypeOf=Object.setPrototypeOf||function(e,r){return e.__proto__=r,e})(e,r)}function _createSuper(e){var r=_isNativeReflectConstruct();return function(){var t,n=_getPrototypeOf(e);if(r){var a=_getPrototypeOf(this).constructor;t=Reflect.construct(n,arguments,a)}else t=n.apply(this,arguments);return _possibleConstructorReturn(this,t)}}function _possibleConstructorReturn(e,r){return!r||"object"!==_typeof(r)&&"function"!=typeof r?_assertThisInitialized(e):r}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _createForOfIteratorHelper(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=_unsupportedIterableToArray(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,u=!0,i=!1;return{s:function(){t=e[Symbol.iterator]()},n:function(){var e=t.next();return u=e.done,e},e:function(e){i=!0,o=e},f:function(){try{u||null==t.return||t.return()}finally{if(i)throw o}}}}function _unsupportedIterableToArray(e,r){if(e){if("string"==typeof e)return _arrayLikeToArray(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(e,r):void 0}}function _arrayLikeToArray(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t=0;--o){var u=this.tryEntries[o],i=u.completion;if("root"===u.tryLoc)return a("end");if(u.tryLoc<=this.prev){var c=n.call(u,"catchLoc"),s=n.call(u,"finallyLoc");if(c&&s){if(this.prev=0;--t){var a=this.tryEntries[t];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev=0;--r){var t=this.tryEntries[r];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),O(t),d}},catch:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.tryLoc===e){var n=t.completion;if("throw"===n.type){var a=n.arg;O(t)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:M(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=r),d}},e}("object"===("undefined"==typeof module?"undefined":_typeof(module))?module.exports:{});try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}function t(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==arguments[1]&&arguments[1],a=n();return Object.defineProperty(window,a,{value:function(n){return r&&Reflect.deleteProperty(window,a),t([e,"optionalCall",function(e){return e(n)}])},writable:!1,configurable:!0}),a}function o(e){return u.apply(this,arguments)}function u(){return(u=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",new Promise((function(e,n){var o=a((function(r){e(r),Reflect.deleteProperty(window,u)}),!0),u=a((function(e){n(e),Reflect.deleteProperty(window,o)}),!0);window.rpc.notify(r,_objectSpread({callback:o,error:u},t))})));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var i=Object.freeze({__proto__:null,transformCallback:a,invoke:o});function c(e){return s.apply(this,arguments)}function s(){return(s=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o("tauri",r));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function p(){return(p=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getAppVersion"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function l(){return(l=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getAppName"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function f(){return(f=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"getTauriVersion"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function h(){return(h=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.length>0&&void 0!==t[0]?t[0]:0,e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"exit",exitCode:r}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function m(){return(m=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"App",mainThread:!0,message:{cmd:"relaunch"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var d=Object.freeze({__proto__:null,getName:function(){return l.apply(this,arguments)},getVersion:function(){return p.apply(this,arguments)},getTauriVersion:function(){return f.apply(this,arguments)},relaunch:function(){return m.apply(this,arguments)},exit:function(){return h.apply(this,arguments)}});function y(){return(y=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Cli",message:{cmd:"cliMatches"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var _=Object.freeze({__proto__:null,getMatches:function(){return y.apply(this,arguments)}});function g(){return(g=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(r=t.length>0&&void 0!==t[0]?t[0]:{})&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"openDialog",options:r}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function v(){return(v=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r,t=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(r=t.length>0&&void 0!==t[0]?t[0]:{})&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"saveDialog",options:r}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var w=Object.freeze({__proto__:null,open:function(){return g.apply(this,arguments)},save:function(){return v.apply(this,arguments)}});function b(e,r){return R.apply(this,arguments)}function R(){return(R=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Event",message:{cmd:"listen",event:r,handler:a(t)}}).then((function(e){return _asyncToGenerator(regeneratorRuntime.mark((function r(){return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",k(e));case 1:case"end":return r.stop()}}),r)})))})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function k(e){return x.apply(this,arguments)}function x(){return(x=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Event",message:{cmd:"unlisten",eventId:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function T(e,r){return G.apply(this,arguments)}function G(){return(G=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",b(r,t));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e,r){return P.apply(this,arguments)}function P(){return(P=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",b(r,(function(e){t(e),k(e.id).catch((function(){}))})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function M(e,r,t){return j.apply(this,arguments)}function j(){return(j=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t,n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c({__tauriModule:"Event",message:{cmd:"emit",event:r,windowLabel:t,payload:n}});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function C(){return(C=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",M(r,void 0,t));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var F=Object.freeze({__proto__:null,emit:function(e,r){return C.apply(this,arguments)},listen:T,once:O});function A(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readTextFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function W(){return(W=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readBinaryFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function I(){return(I=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return"object"===_typeof(t=n.length>1&&void 0!==n[1]?n[1]:{})&&Object.freeze(t),"object"===_typeof(r)&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"writeFile",path:r.path,contents:r.contents,options:t}}));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}!function(e){e[e.Audio=1]="Audio";e[e.Cache=2]="Cache";e[e.Config=3]="Config";e[e.Data=4]="Data";e[e.LocalData=5]="LocalData";e[e.Desktop=6]="Desktop";e[e.Document=7]="Document";e[e.Download=8]="Download";e[e.Executable=9]="Executable";e[e.Font=10]="Font";e[e.Home=11]="Home";e[e.Picture=12]="Picture";e[e.Public=13]="Public";e[e.Runtime=14]="Runtime";e[e.Template=15]="Template";e[e.Video=16]="Video";e[e.Resource=17]="Resource";e[e.App=18]="App";e[e.Current=19]="Current"}(E||(E={}));var N=65536;function H(e){var r=function(e){if(e.length1&&void 0!==n[1]?n[1]:{})&&Object.freeze(t),"object"===_typeof(r)&&Object.freeze(r),e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"writeBinaryFile",path:r.path,contents:H(r.contents),options:t}}));case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function U(){return(U=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"readDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function q(){return(q=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"createDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function V(){return(V=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"removeDir",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Y(){return(Y=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>2&&void 0!==a[2]?a[2]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"copyFile",source:r,destination:t,options:n}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function J(){return(J=_asyncToGenerator(regeneratorRuntime.mark((function e(r){var t,n=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=n.length>1&&void 0!==n[1]?n[1]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"removeFile",path:r,options:t}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function K(){return(K=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>2&&void 0!==a[2]?a[2]:{},e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"renameFile",oldPath:r,newPath:t,options:n}}));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var X=Object.freeze({__proto__:null,get BaseDirectory(){return E},get Dir(){return E},readTextFile:function(e){return z.apply(this,arguments)},readBinaryFile:function(e){return W.apply(this,arguments)},writeFile:function(e){return I.apply(this,arguments)},writeBinaryFile:function(e){return B.apply(this,arguments)},readDir:function(e){return U.apply(this,arguments)},createDir:function(e){return q.apply(this,arguments)},removeDir:function(e){return V.apply(this,arguments)},copyFile:function(e,r){return Y.apply(this,arguments)},removeFile:function(e){return J.apply(this,arguments)},renameFile:function(e,r){return K.apply(this,arguments)}});function $(){return($=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.App}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Q(){return(Q=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Audio}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Z(){return(Z=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Cache}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ee(){return(ee=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Config}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function re(){return(re=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Data}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function te(){return(te=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Desktop}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ne(){return(ne=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Document}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ae(){return(ae=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Download}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function oe(){return(oe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Executable}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ue(){return(ue=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Font}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ie(){return(ie=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Home}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ce(){return(ce=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.LocalData}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function se(){return(se=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Picture}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function pe(){return(pe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Public}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function le(){return(le=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Resource}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function fe(){return(fe=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Runtime}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function he(){return(he=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Template}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function me(){return(me=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Video}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function de(){return(de=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:"",directory:E.Current}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ye(){return(ye=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Fs",message:{cmd:"resolvePath",path:r,directory:t}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var _e,ge=Object.freeze({__proto__:null,appDir:function(){return $.apply(this,arguments)},audioDir:function(){return Q.apply(this,arguments)},cacheDir:function(){return Z.apply(this,arguments)},configDir:function(){return ee.apply(this,arguments)},dataDir:function(){return re.apply(this,arguments)},desktopDir:function(){return te.apply(this,arguments)},documentDir:function(){return ne.apply(this,arguments)},downloadDir:function(){return ae.apply(this,arguments)},executableDir:function(){return oe.apply(this,arguments)},fontDir:function(){return ue.apply(this,arguments)},homeDir:function(){return ie.apply(this,arguments)},localDataDir:function(){return ce.apply(this,arguments)},pictureDir:function(){return se.apply(this,arguments)},publicDir:function(){return pe.apply(this,arguments)},resourceDir:function(){return le.apply(this,arguments)},runtimeDir:function(){return fe.apply(this,arguments)},templateDir:function(){return he.apply(this,arguments)},videoDir:function(){return me.apply(this,arguments)},currentDir:function(){return de.apply(this,arguments)},resolvePath:function(e,r){return ye.apply(this,arguments)}});function ve(e,r){return null!=e?e:r()}function we(e){for(var r=void 0,t=e[0],n=1;n1&&void 0!==arguments[1]?arguments[1]:[];return _classCallCheck(this,a),r=n.call(this),a.prototype.__init2.call(_assertThisInitialized(r)),a.prototype.__init3.call(_assertThisInitialized(r)),a.prototype.__init4.call(_assertThisInitialized(r)),a.prototype.__init5.call(_assertThisInitialized(r)),r.program=e,r.args="string"==typeof t?[t]:t,r}return _createClass(a,[{key:"__init2",value:function(){this.sidecar=!1}},{key:"__init3",value:function(){this.stdout=new je}},{key:"__init4",value:function(){this.stderr=new je}},{key:"__init5",value:function(){this.pid=null}},{key:"spawn",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Pe(this.program,this.sidecar,(function(e){switch(e.event){case"Error":r._emit("error",e.payload);break;case"Terminated":r._emit("close",e.payload);break;case"Stdout":r.stdout._emit("data",e.payload);break;case"Stderr":r.stderr._emit("data",e.payload)}}),this.args).then((function(e){return new Ce(e)})));case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"execute",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,t){r.on("error",t);var n=[],a=[];r.stdout.on("data",(function(e){n.push(e)})),r.stderr.on("data",(function(e){a.push(e)})),r.on("close",(function(r){e({code:r.code,signal:r.signal,stdout:n.join("\n"),stderr:a.join("\n")})})),r.spawn().catch(t)})));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})}],[{key:"sidecar",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=new a(e,r);return t.sidecar=!0,t}}]),a}(je);function Ae(){return(Ae=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Shell",message:{cmd:"open",path:r,with:t}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var De=Object.freeze({__proto__:null,Command:Fe,Child:Ce,open:function(e,r){return Ae.apply(this,arguments)}});function Se(){return window.__TAURI__.__windows}var Ee=["tauri://created","tauri://error"],Le=function(){function e(r){_classCallCheck(this,e),this.label=r,this.listeners=Object.create(null)}var r,t,n;return _createClass(e,[{key:"listen",value:(n=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._handleTauriEvent(r,t)){e.next=2;break}return e.abrupt("return",Promise.resolve((function(){var e=n.listeners[r];e.splice(e.indexOf(t),1)})));case 2:return e.abrupt("return",T(r,t));case 3:case"end":return e.stop()}}),e,this)}))),function(e,r){return n.apply(this,arguments)})},{key:"once",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._handleTauriEvent(r,t)){e.next=2;break}return e.abrupt("return",Promise.resolve((function(){var e=n.listeners[r];e.splice(e.indexOf(t),1)})));case 2:return e.abrupt("return",O(r,t));case 3:case"end":return e.stop()}}),e,this)}))),function(e,r){return t.apply(this,arguments)})},{key:"emit",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){var n,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Ee.includes(r)){e.next=4;break}n=_createForOfIteratorHelper(this.listeners[r]||[]);try{for(n.s();!(a=n.n()).done;)(0,a.value)({event:r,id:-1,payload:t})}catch(e){n.e(e)}finally{n.f()}return e.abrupt("return",Promise.resolve());case 4:return e.abrupt("return",M(r,this.label,t));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"_handleTauriEvent",value:function(e,r){return!!Ee.includes(e)&&(e in this.listeners?this.listeners[e].push(r):this.listeners[e]=[r],!0)}}]),e}(),ze=function(e){_inherits(t,e);var r=_createSuper(t);function t(e){var n,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _classCallCheck(this,t),n=r.call(this,e),c({__tauriModule:"Window",message:{cmd:"createWebview",options:_objectSpread({label:e},a)}}).then(_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.emit("tauri://created"));case 1:case"end":return e.stop()}}),e)})))).catch(function(){var e=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.emit("tauri://error",r));case 1:case"end":return e.stop()}}),e)})));return function(r){return e.apply(this,arguments)}}()),n}return _createClass(t,null,[{key:"getByLabel",value:function(e){return Se().some((function(r){return r.label===e}))?new Le(e):null}}]),t}(Le),We=new(function(){function e(){_classCallCheck(this,e)}var r,t,n,a,o,u,i,s,p,l,f,h,m,d,y,_,g,v,w,b,R;return _createClass(e,[{key:"setResizable",value:(R=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setResizable",resizable:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return R.apply(this,arguments)})},{key:"setTitle",value:(b=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setTitle",title:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return b.apply(this,arguments)})},{key:"maximize",value:(w=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"maximize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return w.apply(this,arguments)})},{key:"unmaximize",value:(v=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"unmaximize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return v.apply(this,arguments)})},{key:"minimize",value:(g=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"minimize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return g.apply(this,arguments)})},{key:"unminimize",value:(_=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"unminimize"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return _.apply(this,arguments)})},{key:"show",value:(y=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"show"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return y.apply(this,arguments)})},{key:"hide",value:(d=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"hide"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return d.apply(this,arguments)})},{key:"close",value:(m=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"close"}}));case 1:case"end":return e.stop()}}),e)}))),function(){return m.apply(this,arguments)})},{key:"setDecorations",value:(h=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setDecorations",decorations:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return h.apply(this,arguments)})},{key:"setAlwaysOnTop",value:(f=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setAlwaysOnTop",alwaysOnTop:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return f.apply(this,arguments)})},{key:"setWidth",value:(l=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setWidth",width:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return l.apply(this,arguments)})},{key:"setHeight",value:(p=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setHeight",height:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return p.apply(this,arguments)})},{key:"resize",value:(s=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"resize",width:r,height:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return s.apply(this,arguments)})},{key:"setMinSize",value:(i=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setMinSize",minWidth:r,minHeight:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return i.apply(this,arguments)})},{key:"setMaxSize",value:(u=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setMaxSize",maxWidth:r,maxHeight:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return u.apply(this,arguments)})},{key:"setX",value:(o=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setX",x:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return o.apply(this,arguments)})},{key:"setY",value:(a=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setY",y:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return a.apply(this,arguments)})},{key:"setPosition",value:(n=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setPosition",x:r,y:t}}));case 1:case"end":return e.stop()}}),e)}))),function(e,r){return n.apply(this,arguments)})},{key:"setFullscreen",value:(t=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setFullscreen",fullscreen:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"setIcon",value:(r=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"Window",message:{cmd:"setIcon",icon:r}}));case 1:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})}]),e}()),Ie=Object.freeze({__proto__:null,WebviewWindow:ze,getCurrent:function(){return new Le(window.__TAURI__.__currentWindow.label)},getAll:Se,appWindow:We});function Ne(){return(Ne=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("default"===window.Notification.permission){e.next=2;break}return e.abrupt("return",Promise.resolve("granted"===window.Notification.permission));case 2:return e.abrupt("return",c({__tauriModule:"Notification",message:{cmd:"isNotificationPermissionGranted"}}));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function He(){return(He=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.Notification.requestPermission());case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Be=Object.freeze({__proto__:null,sendNotification:function(e){"string"==typeof e?new window.Notification(e):new window.Notification(e.title,e)},requestPermission:function(){return He.apply(this,arguments)},isPermissionGranted:function(){return Ne.apply(this,arguments)}});function Ue(){return(Ue=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"register",shortcut:r,handler:a(t)}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function qe(){return(qe=_asyncToGenerator(regeneratorRuntime.mark((function e(r,t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"registerAll",shortcuts:r,handler:a(t)}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ve(){return(Ve=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"isRegistered",shortcut:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ye(){return(Ye=_asyncToGenerator(regeneratorRuntime.mark((function e(r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"unregister",shortcut:r}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Je(){return(Je=_asyncToGenerator(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c({__tauriModule:"GlobalShortcut",message:{cmd:"unregisterAll"}}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Ke=Object.freeze({__proto__:null,register:function(e,r){return Ue.apply(this,arguments)},registerAll:function(e,r){return qe.apply(this,arguments)},isRegistered:function(e){return Ve.apply(this,arguments)},unregister:function(e){return Ye.apply(this,arguments)},unregisterAll:function(){return Je.apply(this,arguments)}});e.app=d,e.cli=_,e.dialog=w,e.event=F,e.fs=X,e.globalShortcut=Ke,e.http=Oe,e.notification=Be,e.path=ge,e.shell=De,e.tauri=i,e.updater=L,e.window=Ie,Object.defineProperty(e,"__esModule",{value:!0})})); diff --git a/examples/api/package.json b/examples/api/package.json index da89e33ef7e..9dbc72dc2d5 100644 --- a/examples/api/package.json +++ b/examples/api/package.json @@ -5,7 +5,7 @@ "build": "rollup -c", "dev": "rollup -c -w", "start": "sirv public", - "tauri": "node ../../cli/tauri.js/bin/tauri" + "tauri": "node ../../tooling/cli.js/bin/tauri" }, "devDependencies": { "@rollup/plugin-commonjs": "17.1.0", @@ -17,7 +17,7 @@ "svelte": "3.35.0" }, "dependencies": { - "@tauri-apps/api": "link:../../api", + "@tauri-apps/api": "link:../../tooling/api", "sirv-cli": "1.0.11" } -} +} \ No newline at end of file diff --git a/examples/api/public/build/bundle.js b/examples/api/public/build/bundle.js index c861a8edd6b..12a1b9263aa 100644 --- a/examples/api/public/build/bundle.js +++ b/examples/api/public/build/bundle.js @@ -1,486 +1,5 @@ -(function (l, r) { - if (l.getElementById("livereloadscript")) return; - r = l.createElement("script"); - r.async = 1; - r.src = - "//" + - (window.location.host || "localhost").split(":")[0] + - ":35729/livereload.js?snipver=1"; - r.id = "livereloadscript"; - l.getElementsByTagName("head")[0].appendChild(r); -})(window.document); -var app = (function () { - "use strict"; - - function noop() {} - function add_location(element, file, line, column, char) { - element.__svelte_meta = { - loc: { file, line, column, char }, - }; - } - function run(fn) { - return fn(); - } - function blank_object() { - return Object.create(null); - } - function run_all(fns) { - fns.forEach(run); - } - function is_function(thing) { - return typeof thing === "function"; - } - function safe_not_equal(a, b) { - return a != a - ? b == b - : a !== b || (a && typeof a === "object") || typeof a === "function"; - } - function is_empty(obj) { - return Object.keys(obj).length === 0; - } - function validate_store(store, name) { - if (store != null && typeof store.subscribe !== "function") { - throw new Error(`'${name}' is not a store with a 'subscribe' method`); - } - } - function subscribe(store, ...callbacks) { - if (store == null) { - return noop; - } - const unsub = store.subscribe(...callbacks); - return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub; - } - function component_subscribe(component, store, callback) { - component.$$.on_destroy.push(subscribe(store, callback)); - } - - function append(target, node) { - target.appendChild(node); - } - function insert(target, node, anchor) { - target.insertBefore(node, anchor || null); - } - function detach(node) { - node.parentNode.removeChild(node); - } - function destroy_each(iterations, detaching) { - for (let i = 0; i < iterations.length; i += 1) { - if (iterations[i]) iterations[i].d(detaching); - } - } - function element(name) { - return document.createElement(name); - } - function text(data) { - return document.createTextNode(data); - } - function space() { - return text(" "); - } - function listen(node, event, handler, options) { - node.addEventListener(event, handler, options); - return () => node.removeEventListener(event, handler, options); - } - function prevent_default(fn) { - return function (event) { - event.preventDefault(); - // @ts-ignore - return fn.call(this, event); - }; - } - function attr(node, attribute, value) { - if (value == null) node.removeAttribute(attribute); - else if (node.getAttribute(attribute) !== value) - node.setAttribute(attribute, value); - } - function to_number(value) { - return value === "" ? null : +value; - } - function children(element) { - return Array.from(element.childNodes); - } - function set_input_value(input, value) { - input.value = value == null ? "" : value; - } - function set_style(node, key, value, important) { - node.style.setProperty(key, value, important ? "important" : ""); - } - function select_option(select, value) { - for (let i = 0; i < select.options.length; i += 1) { - const option = select.options[i]; - if (option.__value === value) { - option.selected = true; - return; - } - } - } - function select_value(select) { - const selected_option = - select.querySelector(":checked") || select.options[0]; - return selected_option && selected_option.__value; - } - function custom_event(type, detail) { - const e = document.createEvent("CustomEvent"); - e.initCustomEvent(type, false, false, detail); - return e; - } - - let current_component; - function set_current_component(component) { - current_component = component; - } - function get_current_component() { - if (!current_component) - throw new Error("Function called outside component initialization"); - return current_component; - } - function onMount(fn) { - get_current_component().$$.on_mount.push(fn); - } - function onDestroy(fn) { - get_current_component().$$.on_destroy.push(fn); - } - - const dirty_components = []; - const binding_callbacks = []; - const render_callbacks = []; - const flush_callbacks = []; - const resolved_promise = Promise.resolve(); - let update_scheduled = false; - function schedule_update() { - if (!update_scheduled) { - update_scheduled = true; - resolved_promise.then(flush); - } - } - function add_render_callback(fn) { - render_callbacks.push(fn); - } - let flushing = false; - const seen_callbacks = new Set(); - function flush() { - if (flushing) return; - flushing = true; - do { - // first, call beforeUpdate functions - // and update components - for (let i = 0; i < dirty_components.length; i += 1) { - const component = dirty_components[i]; - set_current_component(component); - update(component.$$); - } - set_current_component(null); - dirty_components.length = 0; - while (binding_callbacks.length) binding_callbacks.pop()(); - // then, once components are updated, call - // afterUpdate functions. This may cause - // subsequent updates... - for (let i = 0; i < render_callbacks.length; i += 1) { - const callback = render_callbacks[i]; - if (!seen_callbacks.has(callback)) { - // ...so guard against infinite loops - seen_callbacks.add(callback); - callback(); - } - } - render_callbacks.length = 0; - } while (dirty_components.length); - while (flush_callbacks.length) { - flush_callbacks.pop()(); - } - update_scheduled = false; - flushing = false; - seen_callbacks.clear(); - } - function update($$) { - if ($$.fragment !== null) { - $$.update(); - run_all($$.before_update); - const dirty = $$.dirty; - $$.dirty = [-1]; - $$.fragment && $$.fragment.p($$.ctx, dirty); - $$.after_update.forEach(add_render_callback); - } - } - const outroing = new Set(); - let outros; - function group_outros() { - outros = { - r: 0, - c: [], - p: outros, // parent group - }; - } - function check_outros() { - if (!outros.r) { - run_all(outros.c); - } - outros = outros.p; - } - function transition_in(block, local) { - if (block && block.i) { - outroing.delete(block); - block.i(local); - } - } - function transition_out(block, local, detach, callback) { - if (block && block.o) { - if (outroing.has(block)) return; - outroing.add(block); - outros.c.push(() => { - outroing.delete(block); - if (callback) { - if (detach) block.d(1); - callback(); - } - }); - block.o(local); - } - } - - const globals = - typeof window !== "undefined" - ? window - : typeof globalThis !== "undefined" - ? globalThis - : global; - function create_component(block) { - block && block.c(); - } - function mount_component(component, target, anchor, customElement) { - const { fragment, on_mount, on_destroy, after_update } = component.$$; - fragment && fragment.m(target, anchor); - if (!customElement) { - // onMount happens before the initial afterUpdate - add_render_callback(() => { - const new_on_destroy = on_mount.map(run).filter(is_function); - if (on_destroy) { - on_destroy.push(...new_on_destroy); - } else { - // Edge case - component was destroyed immediately, - // most likely as a result of a binding initialising - run_all(new_on_destroy); - } - component.$$.on_mount = []; - }); - } - after_update.forEach(add_render_callback); - } - function destroy_component(component, detaching) { - const $$ = component.$$; - if ($$.fragment !== null) { - run_all($$.on_destroy); - $$.fragment && $$.fragment.d(detaching); - // TODO null out other refs, including component.$$ (but need to - // preserve final state?) - $$.on_destroy = $$.fragment = null; - $$.ctx = []; - } - } - function make_dirty(component, i) { - if (component.$$.dirty[0] === -1) { - dirty_components.push(component); - schedule_update(); - component.$$.dirty.fill(0); - } - component.$$.dirty[(i / 31) | 0] |= 1 << i % 31; - } - function init( - component, - options, - instance, - create_fragment, - not_equal, - props, - dirty = [-1] - ) { - const parent_component = current_component; - set_current_component(component); - const $$ = (component.$$ = { - fragment: null, - ctx: null, - // state - props, - update: noop, - not_equal, - bound: blank_object(), - // lifecycle - on_mount: [], - on_destroy: [], - on_disconnect: [], - before_update: [], - after_update: [], - context: new Map(parent_component ? parent_component.$$.context : []), - // everything else - callbacks: blank_object(), - dirty, - skip_bound: false, - }); - let ready = false; - $$.ctx = instance - ? instance(component, options.props || {}, (i, ret, ...rest) => { - const value = rest.length ? rest[0] : ret; - if ($$.ctx && not_equal($$.ctx[i], ($$.ctx[i] = value))) { - if (!$$.skip_bound && $$.bound[i]) $$.bound[i](value); - if (ready) make_dirty(component, i); - } - return ret; - }) - : []; - $$.update(); - ready = true; - run_all($$.before_update); - // `false` as a special case of no DOM component - $$.fragment = create_fragment ? create_fragment($$.ctx) : false; - if (options.target) { - if (options.hydrate) { - const nodes = children(options.target); - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.l(nodes); - nodes.forEach(detach); - } else { - // eslint-disable-next-line @typescript-eslint/no-non-null-assertion - $$.fragment && $$.fragment.c(); - } - if (options.intro) transition_in(component.$$.fragment); - mount_component( - component, - options.target, - options.anchor, - options.customElement - ); - flush(); - } - set_current_component(parent_component); - } - /** - * Base class for Svelte components. Used when dev=false. - */ - class SvelteComponent { - $destroy() { - destroy_component(this, 1); - this.$destroy = noop; - } - $on(type, callback) { - const callbacks = - this.$$.callbacks[type] || (this.$$.callbacks[type] = []); - callbacks.push(callback); - return () => { - const index = callbacks.indexOf(callback); - if (index !== -1) callbacks.splice(index, 1); - }; - } - $set($$props) { - if (this.$$set && !is_empty($$props)) { - this.$$.skip_bound = true; - this.$$set($$props); - this.$$.skip_bound = false; - } - } - } - - function dispatch_dev(type, detail) { - document.dispatchEvent( - custom_event(type, Object.assign({ version: "3.35.0" }, detail)) - ); - } - function append_dev(target, node) { - dispatch_dev("SvelteDOMInsert", { target, node }); - append(target, node); - } - function insert_dev(target, node, anchor) { - dispatch_dev("SvelteDOMInsert", { target, node, anchor }); - insert(target, node, anchor); - } - function detach_dev(node) { - dispatch_dev("SvelteDOMRemove", { node }); - detach(node); - } - function listen_dev( - node, - event, - handler, - options, - has_prevent_default, - has_stop_propagation - ) { - const modifiers = - options === true - ? ["capture"] - : options - ? Array.from(Object.keys(options)) - : []; - if (has_prevent_default) modifiers.push("preventDefault"); - if (has_stop_propagation) modifiers.push("stopPropagation"); - dispatch_dev("SvelteDOMAddEventListener", { - node, - event, - handler, - modifiers, - }); - const dispose = listen(node, event, handler, options); - return () => { - dispatch_dev("SvelteDOMRemoveEventListener", { - node, - event, - handler, - modifiers, - }); - dispose(); - }; - } - function attr_dev(node, attribute, value) { - attr(node, attribute, value); - if (value == null) - dispatch_dev("SvelteDOMRemoveAttribute", { node, attribute }); - else dispatch_dev("SvelteDOMSetAttribute", { node, attribute, value }); - } - function set_data_dev(text, data) { - data = "" + data; - if (text.wholeText === data) return; - dispatch_dev("SvelteDOMSetData", { node: text, data }); - text.data = data; - } - function validate_each_argument(arg) { - if ( - typeof arg !== "string" && - !(arg && typeof arg === "object" && "length" in arg) - ) { - let msg = "{#each} only iterates over array-like objects."; - if (typeof Symbol === "function" && arg && Symbol.iterator in arg) { - msg += " You can use a spread to convert this iterable into an array."; - } - throw new Error(msg); - } - } - function validate_slots(name, slot, keys) { - for (const slot_key of Object.keys(slot)) { - if (!~keys.indexOf(slot_key)) { - console.warn(`<${name}> received an unexpected slot "${slot_key}".`); - } - } - } - /** - * Base class for Svelte components with some minor dev-enhancements. Used when dev=true. - */ - class SvelteComponentDev extends SvelteComponent { - constructor(options) { - if (!options || (!options.target && !options.$$inline)) { - throw new Error("'target' is a required option"); - } - super(); - } - $destroy() { - super.$destroy(); - this.$destroy = () => { - console.warn("Component was already destroyed"); // eslint-disable-line no-console - }; - } - $capture_state() {} - $inject_state() {} - } - - /*! ***************************************************************************** +var app=function(){"use strict";function t(){}function e(t){return t()}function n(){return Object.create(null)}function i(t){t.forEach(e)}function o(t){return"function"==typeof t}function r(t,e){return t!=t?e==e:t!==e||t&&"object"==typeof t||"function"==typeof t}function u(e,n,i){e.$$.on_destroy.push(function(e,...n){if(null==e)return t;const i=e.subscribe(...n);return i.unsubscribe?()=>i.unsubscribe():i}(n,i))}function s(t,e){t.appendChild(e)}function c(t,e,n){t.insertBefore(e,n||null)}function a(t){t.parentNode.removeChild(t)}function l(t,e){for(let n=0;nt.removeEventListener(e,n,i)}function v(t){return function(e){return e.preventDefault(),t.call(this,e)}}function m(t,e,n){null==n?t.removeAttribute(e):t.getAttribute(e)!==n&&t.setAttribute(e,n)}function g(t){return""===t?null:+t}function b(t,e){e=""+e,t.wholeText!==e&&(t.data=e)}function _(t,e){t.value=null==e?"":e}function y(t,e,n,i){t.style.setProperty(e,n,i?"important":"")}function w(t,e){for(let n=0;n{R.delete(t),i&&(n&&t.d(1),i())})),t.o(e)}}function q(t){t&&t.c()}function B(t,n,r,u){const{fragment:s,on_mount:c,on_destroy:a,after_update:l}=t.$$;s&&s.m(n,r),u||j((()=>{const n=c.map(e).filter(o);a?a.push(...n):i(n),t.$$.on_mount=[]})),l.forEach(j)}function N(t,e){const n=t.$$;null!==n.fragment&&(i(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function H(t,e){-1===t.$$.dirty[0]&&(T.push(t),S||(S=!0,z.then(D)),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<{const o=i.length?i[0]:n;return f.ctx&&s(f.ctx[t],f.ctx[t]=o)&&(!f.skip_bound&&f.bound[t]&&f.bound[t](o),h&&H(e,t)),n})):[],f.update(),h=!0,i(f.before_update),f.fragment=!!u&&u(f.ctx),o.target){if(o.hydrate){const t=function(t){return Array.from(t.childNodes)}(o.target);f.fragment&&f.fragment.l(t),t.forEach(a)}else f.fragment&&f.fragment.c();o.intro&&I(e.$$.fragment),B(e,o.target,o.anchor,o.customElement),D()}M(d)}class V{$destroy(){N(this,1),this.$destroy=t}$on(t,e){const n=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return n.push(e),()=>{const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}$set(t){var e;this.$$set&&(e=t,0!==Object.keys(e).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}} +/*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any @@ -493,5585 +12,5 @@ var app = (function () { LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */ - var t = function (n, e) { - return (t = - Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && - function (t, n) { - t.__proto__ = n; - }) || - function (t, n) { - for (var e in n) - Object.prototype.hasOwnProperty.call(n, e) && (t[e] = n[e]); - })(n, e); - }; - function n$5(n, e) { - if ("function" != typeof e && null !== e) - throw new TypeError( - "Class extends value " + String(e) + " is not a constructor or null" - ); - function r() { - this.constructor = n; - } - t(n, e), - (n.prototype = - null === e ? Object.create(e) : ((r.prototype = e.prototype), new r())); - } - var e$2 = function () { - return (e$2 = - Object.assign || - function (t) { - for (var n, e = 1, r = arguments.length; e < r; e++) - for (var o in (n = arguments[e])) - Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o]); - return t; - }).apply(this, arguments); - }; - function r$3(t, n, e, r) { - return new (e || (e = Promise))(function (o, a) { - function i(t) { - try { - u(r.next(t)); - } catch (t) { - a(t); - } - } - function c(t) { - try { - u(r.throw(t)); - } catch (t) { - a(t); - } - } - function u(t) { - var n; - t.done - ? o(t.value) - : ((n = t.value), - n instanceof e - ? n - : new e(function (t) { - t(n); - })).then(i, c); - } - u((r = r.apply(t, n || [])).next()); - }); - } - function o$6(t, n) { - var e, - r, - o, - a, - i = { - label: 0, - sent: function () { - if (1 & o[0]) throw o[1]; - return o[1]; - }, - trys: [], - ops: [], - }; - return ( - (a = { next: c(0), throw: c(1), return: c(2) }), - "function" == typeof Symbol && - (a[Symbol.iterator] = function () { - return this; - }), - a - ); - function c(a) { - return function (c) { - return (function (a) { - if (e) throw new TypeError("Generator is already executing."); - for (; i; ) - try { - if ( - ((e = 1), - r && - (o = - 2 & a[0] - ? r.return - : a[0] - ? r.throw || ((o = r.return) && o.call(r), 0) - : r.next) && - !(o = o.call(r, a[1])).done) - ) - return o; - switch (((r = 0), o && (a = [2 & a[0], o.value]), a[0])) { - case 0: - case 1: - o = a; - break; - case 4: - return i.label++, { value: a[1], done: !1 }; - case 5: - i.label++, (r = a[1]), (a = [0]); - continue; - case 7: - (a = i.ops.pop()), i.trys.pop(); - continue; - default: - if ( - !((o = i.trys), - (o = o.length > 0 && o[o.length - 1]) || - (6 !== a[0] && 2 !== a[0])) - ) { - i = 0; - continue; - } - if (3 === a[0] && (!o || (a[1] > o[0] && a[1] < o[3]))) { - i.label = a[1]; - break; - } - if (6 === a[0] && i.label < o[1]) { - (i.label = o[1]), (o = a); - break; - } - if (o && i.label < o[2]) { - (i.label = o[2]), i.ops.push(a); - break; - } - o[2] && i.ops.pop(), i.trys.pop(); - continue; - } - a = n.call(t, i); - } catch (t) { - (a = [6, t]), (r = 0); - } finally { - e = o = 0; - } - if (5 & a[0]) throw a[1]; - return { value: a[0] ? a[1] : void 0, done: !0 }; - })([a, c]); - }; - } - } - function a$5(t, n) { - void 0 === n && (n = !1); - var e = (function () { - var t = new Int8Array(1); - window.crypto.getRandomValues(t); - var n = new Uint8Array(Math.max(16, Math.abs(t[0]))); - return window.crypto.getRandomValues(n), n.join(""); - })(); - return ( - Object.defineProperty(window, e, { - value: function (r) { - return ( - n && Reflect.deleteProperty(window, e), null == t ? void 0 : t(r) - ); - }, - writable: !1, - configurable: !0, - }), - e - ); - } - function i$3(t, n) { - return ( - void 0 === n && (n = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (r) { - return [ - 2, - new Promise(function (r, o) { - var i = a$5(function (t) { - r(t), Reflect.deleteProperty(window, c); - }, !0), - c = a$5(function (t) { - o(t), Reflect.deleteProperty(window, i); - }, !0); - window.rpc.notify(t, e$2({ callback: i, error: c }, n)); - }), - ]; - }); - }) - ); - } - Object.freeze({ __proto__: null, transformCallback: a$5, invoke: i$3 }); - - function n$4(n) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (i) { - return [2, i$3("tauri", n)]; - }); - }); - } - - function o$5(n, o, s, u) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return ( - "object" == typeof u && Object.freeze(u), - [ - 2, - n$4({ - __tauriModule: "Shell", - message: { - cmd: "execute", - program: n, - sidecar: o, - onEventFn: a$5(s), - args: "string" == typeof u ? [u] : u, - }, - }), - ] - ); - }); - }); - } - var s$4 = (function () { - function t() { - this.eventListeners = Object.create(null); - } - return ( - (t.prototype.addEventListener = function (t, e) { - t in this.eventListeners - ? this.eventListeners[t].push(e) - : (this.eventListeners[t] = [e]); - }), - (t.prototype._emit = function (t, e) { - if (t in this.eventListeners) - for (var n = 0, r = this.eventListeners[t]; n < r.length; n++) { - (0, r[n])(e); - } - }), - (t.prototype.on = function (t, e) { - return this.addEventListener(t, e), this; - }), - t - ); - })(), - u$6 = (function () { - function n(t) { - this.pid = t; - } - return ( - (n.prototype.write = function (n) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Shell", - message: { cmd: "stdinWrite", pid: this.pid, buffer: n }, - }), - ]; - }); - }); - }), - (n.prototype.kill = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Shell", - message: { cmd: "killChild", pid: this.pid }, - }), - ]; - }); - }); - }), - n - ); - })(), - a$4 = (function (r) { - function i(t, e) { - void 0 === e && (e = []); - var n = r.call(this) || this; - return ( - (n.sidecar = !1), - (n.stdout = new s$4()), - (n.stderr = new s$4()), - (n.pid = null), - (n.program = t), - (n.args = "string" == typeof e ? [e] : e), - n - ); - } - return ( - n$5(i, r), - (i.sidecar = function (t, e) { - void 0 === e && (e = []); - var n = new i(t, e); - return (n.sidecar = !0), n; - }), - (i.prototype.spawn = function () { - return r$3(this, void 0, void 0, function () { - var t = this; - return o$6(this, function (e) { - return [ - 2, - o$5( - this.program, - this.sidecar, - function (e) { - switch (e.event) { - case "Error": - t._emit("error", e.payload); - break; - case "Terminated": - t._emit("close", e.payload); - break; - case "Stdout": - t.stdout._emit("data", e.payload); - break; - case "Stderr": - t.stderr._emit("data", e.payload); - } - }, - this.args - ).then(function (t) { - return new u$6(t); - }), - ]; - }); - }); - }), - (i.prototype.execute = function () { - return r$3(this, void 0, void 0, function () { - var t = this; - return o$6(this, function (e) { - return [ - 2, - new Promise(function (e, n) { - t.on("error", n); - var r = [], - i = []; - t.stdout.on("data", function (t) { - r.push(t); - }), - t.stderr.on("data", function (t) { - i.push(t); - }), - t.on("close", function (t) { - e({ - code: t.code, - signal: t.signal, - stdout: r.join("\n"), - stderr: i.join("\n"), - }); - }), - t.spawn().catch(n); - }), - ]; - }); - }); - }), - i - ); - })(s$4); - function d$3(n, r) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Shell", - message: { cmd: "open", path: n, with: r }, - }), - ]; - }); - }); - } - Object.freeze({ __proto__: null, Command: a$4, Child: u$6, open: d$3 }); - - function r$2() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "App", - mainThread: !0, - message: { cmd: "getAppVersion" }, - }), - ]; - }); - }); - } - function n$3() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "App", - mainThread: !0, - message: { cmd: "getAppName" }, - }), - ]; - }); - }); - } - function u$5() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "App", - mainThread: !0, - message: { cmd: "getTauriVersion" }, - }), - ]; - }); - }); - } - function o$4(r) { - return ( - void 0 === r && (r = 0), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "App", - mainThread: !0, - message: { cmd: "exit", exitCode: r }, - }), - ]; - }); - }) - ); - } - function a$3() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "App", - mainThread: !0, - message: { cmd: "relaunch" }, - }), - ]; - }); - }); - } - Object.freeze({ - __proto__: null, - getName: n$3, - getVersion: r$2, - getTauriVersion: u$5, - relaunch: a$3, - exit: o$4, - }); - - /* src/components/Welcome.svelte generated by Svelte v3.35.0 */ - - const file$b = "src/components/Welcome.svelte"; - - function create_fragment$b(ctx) { - let h1; - let t1; - let p0; - let t3; - let p1; - let t4; - let t5; - let t6; - let p2; - let t7; - let t8; - let t9; - let p3; - let t10; - let t11; - let t12; - let button0; - let t14; - let button1; - let mounted; - let dispose; - - const block = { - c: function create() { - h1 = element("h1"); - h1.textContent = "Welcome"; - t1 = space(); - p0 = element("p"); - p0.textContent = - "Tauri's API capabilities using the ` @tauri-apps/api ` package. It's used as\n the main validation app, serving as the testbed of our development process. In\n the future, this app will be used on Tauri's integration tests."; - t3 = space(); - p1 = element("p"); - t4 = text("Current App version: "); - t5 = text(/*version*/ ctx[0]); - t6 = space(); - p2 = element("p"); - t7 = text("Current Tauri version: "); - t8 = text(/*tauriVersion*/ ctx[1]); - t9 = space(); - p3 = element("p"); - t10 = text("Current App name: "); - t11 = text(/*appName*/ ctx[2]); - t12 = space(); - button0 = element("button"); - button0.textContent = "Close application"; - t14 = space(); - button1 = element("button"); - button1.textContent = "Relaunch application"; - add_location(h1, file$b, 18, 0, 431); - add_location(p0, file$b, 19, 0, 448); - add_location(p1, file$b, 25, 0, 684); - add_location(p2, file$b, 26, 0, 722); - add_location(p3, file$b, 27, 0, 767); - attr_dev(button0, "class", "button"); - add_location(button0, file$b, 29, 0, 803); - attr_dev(button1, "class", "button"); - add_location(button1, file$b, 30, 0, 873); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, h1, anchor); - insert_dev(target, t1, anchor); - insert_dev(target, p0, anchor); - insert_dev(target, t3, anchor); - insert_dev(target, p1, anchor); - append_dev(p1, t4); - append_dev(p1, t5); - insert_dev(target, t6, anchor); - insert_dev(target, p2, anchor); - append_dev(p2, t7); - append_dev(p2, t8); - insert_dev(target, t9, anchor); - insert_dev(target, p3, anchor); - append_dev(p3, t10); - append_dev(p3, t11); - insert_dev(target, t12, anchor); - insert_dev(target, button0, anchor); - insert_dev(target, t14, anchor); - insert_dev(target, button1, anchor); - - if (!mounted) { - dispose = [ - listen_dev( - button0, - "click", - /*closeApp*/ ctx[3], - false, - false, - false - ), - listen_dev( - button1, - "click", - /*relaunchApp*/ ctx[4], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*version*/ 1) set_data_dev(t5, /*version*/ ctx[0]); - if (dirty & /*tauriVersion*/ 2) - set_data_dev(t8, /*tauriVersion*/ ctx[1]); - if (dirty & /*appName*/ 4) set_data_dev(t11, /*appName*/ ctx[2]); - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(h1); - if (detaching) detach_dev(t1); - if (detaching) detach_dev(p0); - if (detaching) detach_dev(t3); - if (detaching) detach_dev(p1); - if (detaching) detach_dev(t6); - if (detaching) detach_dev(p2); - if (detaching) detach_dev(t9); - if (detaching) detach_dev(p3); - if (detaching) detach_dev(t12); - if (detaching) detach_dev(button0); - if (detaching) detach_dev(t14); - if (detaching) detach_dev(button1); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$b.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$b($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Welcome", slots, []); - let version = 0; - let tauriVersion = 0; - let appName = "Unknown"; - - n$3().then((n) => { - $$invalidate(2, (appName = n)); - }); - - r$2().then((v) => { - $$invalidate(0, (version = v)); - }); - - u$5().then((v) => { - $$invalidate(1, (tauriVersion = v)); - }); - - async function closeApp() { - await o$4(); - } - - async function relaunchApp() { - await a$3(); - } - - const writable_props = []; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - $$self.$capture_state = () => ({ - getName: n$3, - getVersion: r$2, - getTauriVersion: u$5, - relaunch: a$3, - exit: o$4, - version, - tauriVersion, - appName, - closeApp, - relaunchApp, - }); - - $$self.$inject_state = ($$props) => { - if ("version" in $$props) $$invalidate(0, (version = $$props.version)); - if ("tauriVersion" in $$props) - $$invalidate(1, (tauriVersion = $$props.tauriVersion)); - if ("appName" in $$props) $$invalidate(2, (appName = $$props.appName)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [version, tauriVersion, appName, closeApp, relaunchApp]; - } - - class Welcome extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$b, create_fragment$b, safe_not_equal, {}); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Welcome", - options, - id: create_fragment$b.name, - }); - } - } - - function e$1() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Cli", message: { cmd: "cliMatches" } }), - ]; - }); - }); - } - Object.freeze({ __proto__: null, getMatches: e$1 }); - - /* src/components/Cli.svelte generated by Svelte v3.35.0 */ - const file$a = "src/components/Cli.svelte"; - - function create_fragment$a(ctx) { - let div; - let button; - let mounted; - let dispose; - - const block = { - c: function create() { - div = element("div"); - button = element("button"); - button.textContent = "Get matches"; - attr_dev(button, "class", "button"); - attr_dev(button, "id", "cli-matches"); - add_location(button, file$a, 11, 2, 187); - add_location(div, file$a, 10, 0, 179); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div, anchor); - append_dev(div, button); - - if (!mounted) { - dispose = listen_dev( - button, - "click", - /*cliMatches*/ ctx[0], - false, - false, - false - ); - mounted = true; - } - }, - p: noop, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div); - mounted = false; - dispose(); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$a.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$a($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Cli", slots, []); - let { onMessage } = $$props; - - function cliMatches() { - e$1().then(onMessage).catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(1, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ getMatches: e$1, onMessage, cliMatches }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(1, (onMessage = $$props.onMessage)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [cliMatches, onMessage]; - } - - class Cli extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$a, create_fragment$a, safe_not_equal, { - onMessage: 1, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Cli", - options, - id: create_fragment$a.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[1] === undefined && !("onMessage" in props)) { - console.warn(" was created without expected prop 'onMessage'"); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - function e(e, o) { - return r$3(this, void 0, void 0, function () { - var s = this; - return o$6(this, function (c) { - return [ - 2, - n$4({ - __tauriModule: "Event", - message: { cmd: "listen", event: e, handler: a$5(o) }, - }).then(function (i) { - return function () { - return r$3(s, void 0, void 0, function () { - return o$6(this, function (n) { - return [2, u$4(i)]; - }); - }); - }; - }), - ]; - }); - }); - } - function u$4(i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (n) { - return [ - 2, - n$4({ - __tauriModule: "Event", - message: { cmd: "unlisten", eventId: i }, - }), - ]; - }); - }); - } - function o$3(i, r) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (n) { - return [2, e(i, r)]; - }); - }); - } - function s$3(i, r) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (n) { - return [ - 2, - e(i, function (n) { - r(n), u$4(n.id).catch(function () {}); - }), - ]; - }); - }); - } - function c$3(i, e, u) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (n) { - switch (n.label) { - case 0: - return [ - 4, - n$4({ - __tauriModule: "Event", - message: { cmd: "emit", event: i, windowLabel: e, payload: u }, - }), - ]; - case 1: - return n.sent(), [2]; - } - }); - }); - } - - function n$2(r, i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, c$3(r, void 0, i)]; - }); - }); - } - Object.freeze({ __proto__: null, emit: n$2, listen: o$3, once: s$3 }); - - /* src/components/Communication.svelte generated by Svelte v3.35.0 */ - const file$9 = "src/components/Communication.svelte"; - - function create_fragment$9(ctx) { - let div; - let button0; - let t1; - let button1; - let t3; - let button2; - let mounted; - let dispose; - - const block = { - c: function create() { - div = element("div"); - button0 = element("button"); - button0.textContent = "Call Log API"; - t1 = space(); - button1 = element("button"); - button1.textContent = "Call Request (async) API"; - t3 = space(); - button2 = element("button"); - button2.textContent = "Send event to Rust"; - attr_dev(button0, "class", "button"); - attr_dev(button0, "id", "log"); - add_location(button0, file$9, 42, 2, 839); - attr_dev(button1, "class", "button"); - attr_dev(button1, "id", "request"); - add_location(button1, file$9, 43, 2, 910); - attr_dev(button2, "class", "button"); - attr_dev(button2, "id", "event"); - add_location(button2, file$9, 46, 2, 1016); - add_location(div, file$9, 41, 0, 831); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div, anchor); - append_dev(div, button0); - append_dev(div, t1); - append_dev(div, button1); - append_dev(div, t3); - append_dev(div, button2); - - if (!mounted) { - dispose = [ - listen_dev(button0, "click", /*log*/ ctx[0], false, false, false), - listen_dev( - button1, - "click", - /*performRequest*/ ctx[1], - false, - false, - false - ), - listen_dev( - button2, - "click", - /*emitEvent*/ ctx[2], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: noop, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$9.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$9($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Communication", slots, []); - let { onMessage } = $$props; - let unlisten; - - onMount(async () => { - unlisten = await o$3("rust-event", onMessage); - }); - - onDestroy(() => { - if (unlisten) { - unlisten(); - } - }); - - function log() { - i$3("log_operation", { - event: "tauri-click", - payload: "this payload is optional because we used Option in Rust", - }); - } - - function performRequest() { - i$3("perform_request", { - endpoint: "dummy endpoint arg", - body: { id: 5, name: "test" }, - }) - .then(onMessage) - .catch(onMessage); - } - - function emitEvent() { - n$2("js-event", "this is the payload string"); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(3, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - listen: o$3, - emit: n$2, - invoke: i$3, - onMount, - onDestroy, - onMessage, - unlisten, - log, - performRequest, - emitEvent, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(3, (onMessage = $$props.onMessage)); - if ("unlisten" in $$props) unlisten = $$props.unlisten; - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [log, performRequest, emitEvent, onMessage]; - } - - class Communication extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$9, create_fragment$9, safe_not_equal, { - onMessage: 3, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Communication", - options, - id: create_fragment$9.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[3] === undefined && !("onMessage" in props)) { - console.warn( - " was created without expected prop 'onMessage'" - ); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - function i$2(i) { - return ( - void 0 === i && (i = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (o) { - return ( - "object" == typeof i && Object.freeze(i), - [ - 2, - n$4({ - __tauriModule: "Dialog", - mainThread: !0, - message: { cmd: "openDialog", options: i }, - }), - ] - ); - }); - }) - ); - } - function r$1(i) { - return ( - void 0 === i && (i = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (o) { - return ( - "object" == typeof i && Object.freeze(i), - [ - 2, - n$4({ - __tauriModule: "Dialog", - mainThread: !0, - message: { cmd: "saveDialog", options: i }, - }), - ] - ); - }); - }) - ); - } - Object.freeze({ __proto__: null, open: i$2, save: r$1 }); - - var r; - function o$2(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "readTextFile", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function n$1(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "readBinaryFile", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function u$3(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return ( - "object" == typeof o && Object.freeze(o), - "object" == typeof r && Object.freeze(r), - [ - 2, - n$4({ - __tauriModule: "Fs", - message: { - cmd: "writeFile", - path: r.path, - contents: r.contents, - options: o, - }, - }), - ] - ); - }); - }) - ); - } - !(function (t) { - (t[(t.Audio = 1)] = "Audio"), - (t[(t.Cache = 2)] = "Cache"), - (t[(t.Config = 3)] = "Config"), - (t[(t.Data = 4)] = "Data"), - (t[(t.LocalData = 5)] = "LocalData"), - (t[(t.Desktop = 6)] = "Desktop"), - (t[(t.Document = 7)] = "Document"), - (t[(t.Download = 8)] = "Download"), - (t[(t.Executable = 9)] = "Executable"), - (t[(t.Font = 10)] = "Font"), - (t[(t.Home = 11)] = "Home"), - (t[(t.Picture = 12)] = "Picture"), - (t[(t.Public = 13)] = "Public"), - (t[(t.Runtime = 14)] = "Runtime"), - (t[(t.Template = 15)] = "Template"), - (t[(t.Video = 16)] = "Video"), - (t[(t.Resource = 17)] = "Resource"), - (t[(t.App = 18)] = "App"), - (t[(t.Current = 19)] = "Current"); - })(r || (r = {})); - function a$2(t) { - var e = (function (t) { - if (t.length < 65536) - return String.fromCharCode.apply(null, Array.from(t)); - for (var e = "", i = t.length, r = 0; r < i; r++) { - var o = t.subarray(65536 * r, 65536 * (r + 1)); - e += String.fromCharCode.apply(null, Array.from(o)); - } - return e; - })(new Uint8Array(t)); - return btoa(e); - } - function s$2(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return ( - "object" == typeof o && Object.freeze(o), - "object" == typeof r && Object.freeze(r), - [ - 2, - n$4({ - __tauriModule: "Fs", - message: { - cmd: "writeBinaryFile", - path: r.path, - contents: a$2(r.contents), - options: o, - }, - }), - ] - ); - }); - }) - ); - } - function c$2(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "readDir", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function d$2(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "createDir", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function f$1(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "removeDir", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function l$1(r, o, n) { - return ( - void 0 === n && (n = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { - cmd: "copyFile", - source: r, - destination: o, - options: n, - }, - }), - ]; - }); - }) - ); - } - function m(r, o) { - return ( - void 0 === o && (o = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { cmd: "removeFile", path: r, options: o }, - }), - ]; - }); - }) - ); - } - function p(r, o, n) { - return ( - void 0 === n && (n = {}), - r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Fs", - message: { - cmd: "renameFile", - oldPath: r, - newPath: o, - options: n, - }, - }), - ]; - }); - }) - ); - } - Object.freeze({ - __proto__: null, - get BaseDirectory() { - return r; - }, - get Dir() { - return r; - }, - readTextFile: o$2, - readBinaryFile: n$1, - writeFile: u$3, - writeBinaryFile: s$2, - readDir: c$2, - createDir: d$2, - removeDir: f$1, - copyFile: l$1, - removeFile: m, - renameFile: p, - }); - - /* src/components/Dialog.svelte generated by Svelte v3.35.0 */ - const file$8 = "src/components/Dialog.svelte"; - - function add_css$1() { - var style = element("style"); - style.id = "svelte-1eg58yg-style"; - style.textContent = - "#dialog-filter.svelte-1eg58yg{width:260px}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlhbG9nLnN2ZWx0ZSIsInNvdXJjZXMiOlsiRGlhbG9nLnN2ZWx0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyI8c2NyaXB0PlxuICBpbXBvcnQgeyBvcGVuLCBzYXZlIH0gZnJvbSBcIkB0YXVyaS1hcHBzL2FwaS9kaWFsb2dcIjtcbiAgaW1wb3J0IHsgcmVhZEJpbmFyeUZpbGUgfSBmcm9tIFwiQHRhdXJpLWFwcHMvYXBpL2ZzXCI7XG5cbiAgZXhwb3J0IGxldCBvbk1lc3NhZ2U7XG4gIGxldCBkZWZhdWx0UGF0aCA9IG51bGw7XG4gIGxldCBmaWx0ZXIgPSBudWxsO1xuICBsZXQgbXVsdGlwbGUgPSBmYWxzZTtcbiAgbGV0IGRpcmVjdG9yeSA9IGZhbHNlO1xuXG4gIGZ1bmN0aW9uIGFycmF5QnVmZmVyVG9CYXNlNjQoYnVmZmVyLCBjYWxsYmFjaykge1xuICAgIHZhciBibG9iID0gbmV3IEJsb2IoW2J1ZmZlcl0sIHtcbiAgICAgIHR5cGU6IFwiYXBwbGljYXRpb24vb2N0ZXQtYmluYXJ5XCIsXG4gICAgfSk7XG4gICAgdmFyIHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgcmVhZGVyLm9ubG9hZCA9IGZ1bmN0aW9uIChldnQpIHtcbiAgICAgIHZhciBkYXRhdXJsID0gZXZ0LnRhcmdldC5yZXN1bHQ7XG4gICAgICBjYWxsYmFjayhkYXRhdXJsLnN1YnN0cihkYXRhdXJsLmluZGV4T2YoXCIsXCIpICsgMSkpO1xuICAgIH07XG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoYmxvYik7XG4gIH1cblxuICBmdW5jdGlvbiBvcGVuRGlhbG9nKCkge1xuICAgIG9wZW4oe1xuICAgICAgZGVmYXVsdFBhdGgsXG4gICAgICBmaWx0ZXJzOiBmaWx0ZXJcbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6IFwiVGF1cmkgRXhhbXBsZVwiLFxuICAgICAgICAgICAgICBleHRlbnNpb25zOiBmaWx0ZXIuc3BsaXQoXCIsXCIpLm1hcCgoZikgPT4gZi50cmltKCkpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgICAgIDogW10sXG4gICAgICBtdWx0aXBsZSxcbiAgICAgIGRpcmVjdG9yeSxcbiAgICB9KVxuICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlcykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXMpKSB7XG4gICAgICAgICAgb25NZXNzYWdlKHJlcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFyIHBhdGhUb1JlYWQgPSByZXM7XG4gICAgICAgICAgdmFyIGlzRmlsZSA9IHBhdGhUb1JlYWQubWF0Y2goL1xcUytcXC5cXFMrJC9nKTtcbiAgICAgICAgICByZWFkQmluYXJ5RmlsZShwYXRoVG9SZWFkKVxuICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgIGlmIChpc0ZpbGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICBwYXRoVG9SZWFkLmluY2x1ZGVzKFwiLnBuZ1wiKSB8fFxuICAgICAgICAgICAgICAgICAgcGF0aFRvUmVhZC5pbmNsdWRlcyhcIi5qcGdcIilcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIGFycmF5QnVmZmVyVG9CYXNlNjQoXG4gICAgICAgICAgICAgICAgICAgIG5ldyBVaW50OEFycmF5KHJlc3BvbnNlKSxcbiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKGJhc2U2NCkge1xuICAgICAgICAgICAgICAgICAgICAgIHZhciBzcmMgPSBcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxcIiArIGJhc2U2NDtcbiAgICAgICAgICAgICAgICAgICAgICBvbk1lc3NhZ2UoJzxpbWcgc3JjPVwiJyArIHNyYyArICdcIj48L2ltZz4nKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgb25NZXNzYWdlKHJlcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9uTWVzc2FnZShyZXMpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKG9uTWVzc2FnZShyZXMpKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5jYXRjaChvbk1lc3NhZ2UpO1xuICB9XG5cbiAgZnVuY3Rpb24gc2F2ZURpYWxvZygpIHtcbiAgICBzYXZlKHtcbiAgICAgIGRlZmF1bHRQYXRoLFxuICAgICAgZmlsdGVyczogZmlsdGVyXG4gICAgICAgID8gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiBcIlRhdXJpIEV4YW1wbGVcIixcbiAgICAgICAgICAgICAgZXh0ZW5zaW9uczogZmlsdGVyLnNwbGl0KFwiLFwiKS5tYXAoKGYpID0+IGYudHJpbSgpKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXVxuICAgICAgICA6IFtdLFxuICAgIH0pXG4gICAgICAudGhlbihvbk1lc3NhZ2UpXG4gICAgICAuY2F0Y2gob25NZXNzYWdlKTtcbiAgfVxuPC9zY3JpcHQ+XG5cbjxkaXY+XG4gIDxpbnB1dFxuICAgIGlkPVwiZGlhbG9nLWRlZmF1bHQtcGF0aFwiXG4gICAgcGxhY2Vob2xkZXI9XCJEZWZhdWx0IHBhdGhcIlxuICAgIGJpbmQ6dmFsdWU9e2RlZmF1bHRQYXRofVxuICAvPlxuICA8aW5wdXRcbiAgICBpZD1cImRpYWxvZy1maWx0ZXJcIlxuICAgIHBsYWNlaG9sZGVyPVwiRXh0ZW5zaW9ucyBmaWx0ZXIsIGNvbW1hLXNlcGFyYXRlZFwiXG4gICAgYmluZDp2YWx1ZT17ZmlsdGVyfVxuICAvPlxuICA8ZGl2PlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBpZD1cImRpYWxvZy1tdWx0aXBsZVwiIGJpbmQ6Y2hlY2tlZD17bXVsdGlwbGV9IC8+XG4gICAgPGxhYmVsIGZvcj1cImRpYWxvZy1tdWx0aXBsZVwiPk11bHRpcGxlPC9sYWJlbD5cbiAgPC9kaXY+XG4gIDxkaXY+XG4gICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGlkPVwiZGlhbG9nLWRpcmVjdG9yeVwiIGJpbmQ6Y2hlY2tlZD17ZGlyZWN0b3J5fSAvPlxuICAgIDxsYWJlbCBmb3I9XCJkaWFsb2ctZGlyZWN0b3J5XCI+RGlyZWN0b3J5PC9sYWJlbD5cbiAgPC9kaXY+XG5cbiAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiIGlkPVwib3Blbi1kaWFsb2dcIiBvbjpjbGljaz17b3BlbkRpYWxvZ31cbiAgICA+T3BlbiBkaWFsb2c8L2J1dHRvblxuICA+XG4gIDxidXR0b24gY2xhc3M9XCJidXR0b25cIiBpZD1cInNhdmUtZGlhbG9nXCIgb246Y2xpY2s9e3NhdmVEaWFsb2d9XG4gICAgPk9wZW4gc2F2ZSBkaWFsb2c8L2J1dHRvblxuICA+XG48L2Rpdj5cblxuPHN0eWxlPlxuICAjZGlhbG9nLWZpbHRlciB7XG4gICAgd2lkdGg6IDI2MHB4O1xuICB9XG48L3N0eWxlPlxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1IRSxjQUFjLGVBQUMsQ0FBQyxBQUNkLEtBQUssQ0FBRSxLQUFLLEFBQ2QsQ0FBQyJ9 */"; - append_dev(document.head, style); - } - - function create_fragment$8(ctx) { - let div2; - let input0; - let t0; - let input1; - let t1; - let div0; - let input2; - let t2; - let label0; - let t4; - let div1; - let input3; - let t5; - let label1; - let t7; - let button0; - let t9; - let button1; - let mounted; - let dispose; - - const block = { - c: function create() { - div2 = element("div"); - input0 = element("input"); - t0 = space(); - input1 = element("input"); - t1 = space(); - div0 = element("div"); - input2 = element("input"); - t2 = space(); - label0 = element("label"); - label0.textContent = "Multiple"; - t4 = space(); - div1 = element("div"); - input3 = element("input"); - t5 = space(); - label1 = element("label"); - label1.textContent = "Directory"; - t7 = space(); - button0 = element("button"); - button0.textContent = "Open dialog"; - t9 = space(); - button1 = element("button"); - button1.textContent = "Open save dialog"; - attr_dev(input0, "id", "dialog-default-path"); - attr_dev(input0, "placeholder", "Default path"); - add_location(input0, file$8, 87, 2, 2186); - attr_dev(input1, "id", "dialog-filter"); - attr_dev(input1, "placeholder", "Extensions filter, comma-separated"); - attr_dev(input1, "class", "svelte-1eg58yg"); - add_location(input1, file$8, 92, 2, 2289); - attr_dev(input2, "type", "checkbox"); - attr_dev(input2, "id", "dialog-multiple"); - add_location(input2, file$8, 98, 4, 2413); - attr_dev(label0, "for", "dialog-multiple"); - add_location(label0, file$8, 99, 4, 2488); - add_location(div0, file$8, 97, 2, 2403); - attr_dev(input3, "type", "checkbox"); - attr_dev(input3, "id", "dialog-directory"); - add_location(input3, file$8, 102, 4, 2555); - attr_dev(label1, "for", "dialog-directory"); - add_location(label1, file$8, 103, 4, 2632); - add_location(div1, file$8, 101, 2, 2545); - attr_dev(button0, "class", "button"); - attr_dev(button0, "id", "open-dialog"); - add_location(button0, file$8, 106, 2, 2692); - attr_dev(button1, "class", "button"); - attr_dev(button1, "id", "save-dialog"); - add_location(button1, file$8, 109, 2, 2785); - add_location(div2, file$8, 86, 0, 2178); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div2, anchor); - append_dev(div2, input0); - set_input_value(input0, /*defaultPath*/ ctx[0]); - append_dev(div2, t0); - append_dev(div2, input1); - set_input_value(input1, /*filter*/ ctx[1]); - append_dev(div2, t1); - append_dev(div2, div0); - append_dev(div0, input2); - input2.checked = /*multiple*/ ctx[2]; - append_dev(div0, t2); - append_dev(div0, label0); - append_dev(div2, t4); - append_dev(div2, div1); - append_dev(div1, input3); - input3.checked = /*directory*/ ctx[3]; - append_dev(div1, t5); - append_dev(div1, label1); - append_dev(div2, t7); - append_dev(div2, button0); - append_dev(div2, t9); - append_dev(div2, button1); - - if (!mounted) { - dispose = [ - listen_dev(input0, "input", /*input0_input_handler*/ ctx[7]), - listen_dev(input1, "input", /*input1_input_handler*/ ctx[8]), - listen_dev(input2, "change", /*input2_change_handler*/ ctx[9]), - listen_dev(input3, "change", /*input3_change_handler*/ ctx[10]), - listen_dev( - button0, - "click", - /*openDialog*/ ctx[4], - false, - false, - false - ), - listen_dev( - button1, - "click", - /*saveDialog*/ ctx[5], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if ( - dirty & /*defaultPath*/ 1 && - input0.value !== /*defaultPath*/ ctx[0] - ) { - set_input_value(input0, /*defaultPath*/ ctx[0]); - } - - if (dirty & /*filter*/ 2 && input1.value !== /*filter*/ ctx[1]) { - set_input_value(input1, /*filter*/ ctx[1]); - } - - if (dirty & /*multiple*/ 4) { - input2.checked = /*multiple*/ ctx[2]; - } - - if (dirty & /*directory*/ 8) { - input3.checked = /*directory*/ ctx[3]; - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div2); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$8.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function arrayBufferToBase64$1(buffer, callback) { - var blob = new Blob([buffer], { type: "application/octet-binary" }); - var reader = new FileReader(); - - reader.onload = function (evt) { - var dataurl = evt.target.result; - callback(dataurl.substr(dataurl.indexOf(",") + 1)); - }; - - reader.readAsDataURL(blob); - } - - function instance$8($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Dialog", slots, []); - let { onMessage } = $$props; - let defaultPath = null; - let filter = null; - let multiple = false; - let directory = false; - - function openDialog() { - i$2({ - defaultPath, - filters: filter - ? [ - { - name: "Tauri Example", - extensions: filter.split(",").map((f) => f.trim()), - }, - ] - : [], - multiple, - directory, - }) - .then(function (res) { - if (Array.isArray(res)) { - onMessage(res); - } else { - var pathToRead = res; - var isFile = pathToRead.match(/\S+\.\S+$/g); - - n$1(pathToRead) - .then(function (response) { - if (isFile) { - if ( - pathToRead.includes(".png") || - pathToRead.includes(".jpg") - ) { - arrayBufferToBase64$1( - new Uint8Array(response), - function (base64) { - var src = "data:image/png;base64," + base64; - onMessage(''); - } - ); - } else { - onMessage(res); - } - } else { - onMessage(res); - } - }) - .catch(onMessage(res)); - } - }) - .catch(onMessage); - } - - function saveDialog() { - r$1({ - defaultPath, - filters: filter - ? [ - { - name: "Tauri Example", - extensions: filter.split(",").map((f) => f.trim()), - }, - ] - : [], - }) - .then(onMessage) - .catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function input0_input_handler() { - defaultPath = this.value; - $$invalidate(0, defaultPath); - } - - function input1_input_handler() { - filter = this.value; - $$invalidate(1, filter); - } - - function input2_change_handler() { - multiple = this.checked; - $$invalidate(2, multiple); - } - - function input3_change_handler() { - directory = this.checked; - $$invalidate(3, directory); - } - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - open: i$2, - save: r$1, - readBinaryFile: n$1, - onMessage, - defaultPath, - filter, - multiple, - directory, - arrayBufferToBase64: arrayBufferToBase64$1, - openDialog, - saveDialog, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - if ("defaultPath" in $$props) - $$invalidate(0, (defaultPath = $$props.defaultPath)); - if ("filter" in $$props) $$invalidate(1, (filter = $$props.filter)); - if ("multiple" in $$props) $$invalidate(2, (multiple = $$props.multiple)); - if ("directory" in $$props) - $$invalidate(3, (directory = $$props.directory)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [ - defaultPath, - filter, - multiple, - directory, - openDialog, - saveDialog, - onMessage, - input0_input_handler, - input1_input_handler, - input2_change_handler, - input3_change_handler, - ]; - } - - class Dialog extends SvelteComponentDev { - constructor(options) { - super(options); - if (!document.getElementById("svelte-1eg58yg-style")) add_css$1(); - init(this, options, instance$8, create_fragment$8, safe_not_equal, { - onMessage: 6, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Dialog", - options, - id: create_fragment$8.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[6] === undefined && !("onMessage" in props)) { - console.warn(" was created without expected prop 'onMessage'"); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - /* src/components/FileSystem.svelte generated by Svelte v3.35.0 */ - - const { Object: Object_1 } = globals; - const file$7 = "src/components/FileSystem.svelte"; - - function get_each_context$2(ctx, list, i) { - const child_ctx = ctx.slice(); - child_ctx[5] = list[i]; - return child_ctx; - } - - // (79:4) {#each DirOptions as dir} - function create_each_block$2(ctx) { - let option; - let t_value = /*dir*/ ctx[5][0] + ""; - let t; - - const block = { - c: function create() { - option = element("option"); - t = text(t_value); - option.__value = /*dir*/ ctx[5][1]; - option.value = option.__value; - add_location(option, file$7, 79, 6, 2408); - }, - m: function mount(target, anchor) { - insert_dev(target, option, anchor); - append_dev(option, t); - }, - p: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(option); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_each_block$2.name, - type: "each", - source: "(79:4) {#each DirOptions as dir}", - ctx, - }); - - return block; - } - - function create_fragment$7(ctx) { - let form; - let select; - let option; - let t1; - let input; - let t2; - let button; - let mounted; - let dispose; - let each_value = /*DirOptions*/ ctx[1]; - validate_each_argument(each_value); - let each_blocks = []; - - for (let i = 0; i < each_value.length; i += 1) { - each_blocks[i] = create_each_block$2( - get_each_context$2(ctx, each_value, i) - ); - } - - const block = { - c: function create() { - form = element("form"); - select = element("select"); - option = element("option"); - option.textContent = "None"; - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].c(); - } - - t1 = space(); - input = element("input"); - t2 = space(); - button = element("button"); - button.textContent = "Read"; - option.__value = ""; - option.value = option.__value; - add_location(option, file$7, 77, 4, 2341); - attr_dev(select, "class", "button"); - attr_dev(select, "id", "dir"); - add_location(select, file$7, 76, 2, 2304); - attr_dev(input, "id", "path-to-read"); - attr_dev(input, "placeholder", "Type the path to read..."); - add_location(input, file$7, 82, 2, 2475); - attr_dev(button, "class", "button"); - attr_dev(button, "id", "read"); - add_location(button, file$7, 87, 2, 2582); - add_location(form, file$7, 75, 0, 2263); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, form, anchor); - append_dev(form, select); - append_dev(select, option); - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].m(select, null); - } - - append_dev(form, t1); - append_dev(form, input); - set_input_value(input, /*pathToRead*/ ctx[0]); - append_dev(form, t2); - append_dev(form, button); - - if (!mounted) { - dispose = [ - listen_dev(input, "input", /*input_input_handler*/ ctx[4]), - listen_dev( - form, - "submit", - prevent_default(/*read*/ ctx[2]), - false, - true, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*DirOptions*/ 2) { - each_value = /*DirOptions*/ ctx[1]; - validate_each_argument(each_value); - let i; - - for (i = 0; i < each_value.length; i += 1) { - const child_ctx = get_each_context$2(ctx, each_value, i); - - if (each_blocks[i]) { - each_blocks[i].p(child_ctx, dirty); - } else { - each_blocks[i] = create_each_block$2(child_ctx); - each_blocks[i].c(); - each_blocks[i].m(select, null); - } - } - - for (; i < each_blocks.length; i += 1) { - each_blocks[i].d(1); - } - - each_blocks.length = each_value.length; - } - - if (dirty & /*pathToRead*/ 1 && input.value !== /*pathToRead*/ ctx[0]) { - set_input_value(input, /*pathToRead*/ ctx[0]); - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(form); - destroy_each(each_blocks, detaching); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$7.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function getDir() { - const dirSelect = document.getElementById("dir"); - return dirSelect.value ? parseInt(dir.value) : null; - } - - function arrayBufferToBase64(buffer, callback) { - const blob = new Blob([buffer], { type: "application/octet-binary" }); - const reader = new FileReader(); - - reader.onload = function (evt) { - const dataurl = evt.target.result; - callback(dataurl.substr(dataurl.indexOf(",") + 1)); - }; - - reader.readAsDataURL(blob); - } - - function instance$7($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("FileSystem", slots, []); - let { onMessage } = $$props; - let pathToRead = ""; - const DirOptions = Object.keys(r) - .filter((key) => isNaN(parseInt(key))) - .map((dir) => [dir, r[dir]]); - - function read() { - const isFile = pathToRead.match(/\S+\.\S+$/g); - const opts = { dir: getDir() }; - - const promise = isFile ? n$1(pathToRead, opts) : c$2(pathToRead, opts); - - promise - .then(function (response) { - if (isFile) { - if (pathToRead.includes(".png") || pathToRead.includes(".jpg")) { - arrayBufferToBase64(new Uint8Array(response), function (base64) { - const src = "data:image/png;base64," + base64; - onMessage(''); - }); - } else { - const value = String.fromCharCode.apply(null, response); - onMessage( - '' - ); - - setTimeout(() => { - const fileInput = document.getElementById("file-response"); - fileInput.value = value; - - document - .getElementById("file-save") - .addEventListener("click", function () { - writeFile( - { - file: pathToRead, - contents: fileInput.value, - }, - { dir: getDir() } - ).catch(onMessage); - }); - }); - } - } else { - onMessage(response); - } - }) - .catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object_1.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function input_input_handler() { - pathToRead = this.value; - $$invalidate(0, pathToRead); - } - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(3, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - readBinaryFile: n$1, - readDir: c$2, - Dir: r, - onMessage, - pathToRead, - getDir, - arrayBufferToBase64, - DirOptions, - read, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(3, (onMessage = $$props.onMessage)); - if ("pathToRead" in $$props) - $$invalidate(0, (pathToRead = $$props.pathToRead)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [pathToRead, DirOptions, read, onMessage, input_input_handler]; - } - - class FileSystem extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$7, create_fragment$7, safe_not_equal, { - onMessage: 3, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "FileSystem", - options, - id: create_fragment$7.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[3] === undefined && !("onMessage" in props)) { - console.warn( - " was created without expected prop 'onMessage'" - ); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - var i$1; - !(function (t) { - (t[(t.JSON = 1)] = "JSON"), - (t[(t.Text = 2)] = "Text"), - (t[(t.Binary = 3)] = "Binary"); - })(i$1 || (i$1 = {})); - var o$1 = (function () { - function t(t, n) { - (this.type = t), (this.payload = n); - } - return ( - (t.form = function (n) { - return new t("Form", n); - }), - (t.json = function (n) { - return new t("Json", n); - }), - (t.text = function (n) { - return new t("Text", n); - }), - (t.bytes = function (n) { - return new t("Bytes", n); - }), - t - ); - })(), - u$2 = (function () { - function i(t) { - this.id = t; - } - return ( - (i.prototype.drop = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Http", - message: { cmd: "dropClient", client: this.id }, - }), - ]; - }); - }); - }), - (i.prototype.request = function (e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Http", - message: { cmd: "httpRequest", client: this.id, options: e }, - }), - ]; - }); - }); - }), - (i.prototype.get = function (r, i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, this.request(e$2({ method: "GET", url: r }, i))]; - }); - }); - }), - (i.prototype.post = function (r, i, o) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - this.request(e$2({ method: "POST", url: r, body: i }, o)), - ]; - }); - }); - }), - (i.prototype.put = function (r, i, o) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - this.request(e$2({ method: "PUT", url: r, body: i }, o)), - ]; - }); - }); - }), - (i.prototype.patch = function (r, i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, this.request(e$2({ method: "PATCH", url: r }, i))]; - }); - }); - }), - (i.prototype.delete = function (r, i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, this.request(e$2({ method: "DELETE", url: r }, i))]; - }); - }); - }), - i - ); - })(); - function s$1(e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Http", - message: { cmd: "createClient", options: e }, - }).then(function (t) { - return new u$2(t); - }), - ]; - }); - }); - } - var c$1 = null; - function d$1(r, i) { - var o; - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - switch (t.label) { - case 0: - return null !== c$1 ? [3, 2] : [4, s$1()]; - case 1: - (c$1 = t.sent()), (t.label = 2); - case 2: - return [ - 2, - c$1.request( - e$2( - { - url: r, - method: - null !== (o = null == i ? void 0 : i.method) && - void 0 !== o - ? o - : "GET", - }, - i - ) - ), - ]; - } - }); - }); - } - Object.freeze({ - __proto__: null, - get ResponseType() { - return i$1; - }, - Body: o$1, - Client: u$2, - getClient: s$1, - fetch: d$1, - }); - - /* src/components/Http.svelte generated by Svelte v3.35.0 */ - const file$6 = "src/components/Http.svelte"; - - function create_fragment$6(ctx) { - let form; - let select; - let option0; - let option1; - let option2; - let option3; - let option4; - let t5; - let input; - let t6; - let br; - let t7; - let textarea; - let t8; - let button; - let mounted; - let dispose; - - const block = { - c: function create() { - form = element("form"); - select = element("select"); - option0 = element("option"); - option0.textContent = "GET"; - option1 = element("option"); - option1.textContent = "POST"; - option2 = element("option"); - option2.textContent = "PUT"; - option3 = element("option"); - option3.textContent = "PATCH"; - option4 = element("option"); - option4.textContent = "DELETE"; - t5 = space(); - input = element("input"); - t6 = space(); - br = element("br"); - t7 = space(); - textarea = element("textarea"); - t8 = space(); - button = element("button"); - button.textContent = "Make request"; - option0.__value = "GET"; - option0.value = option0.__value; - add_location(option0, file$6, 33, 4, 862); - option1.__value = "POST"; - option1.value = option1.__value; - add_location(option1, file$6, 34, 4, 899); - option2.__value = "PUT"; - option2.value = option2.__value; - add_location(option2, file$6, 35, 4, 938); - option3.__value = "PATCH"; - option3.value = option3.__value; - add_location(option3, file$6, 36, 4, 975); - option4.__value = "DELETE"; - option4.value = option4.__value; - add_location(option4, file$6, 37, 4, 1016); - attr_dev(select, "class", "button"); - attr_dev(select, "id", "request-method"); - if (/*httpMethod*/ ctx[0] === void 0) - add_render_callback(() => - /*select_change_handler*/ ctx[5].call(select) - ); - add_location(select, file$6, 32, 2, 790); - attr_dev(input, "id", "request-url"); - attr_dev(input, "placeholder", "Type the request URL..."); - add_location(input, file$6, 39, 2, 1069); - add_location(br, file$6, 44, 2, 1171); - attr_dev(textarea, "id", "request-body"); - attr_dev(textarea, "placeholder", "Request body"); - attr_dev(textarea, "rows", "5"); - set_style(textarea, "width", "100%"); - set_style(textarea, "margin-right", "10px"); - set_style(textarea, "font-size", "12px"); - add_location(textarea, file$6, 45, 2, 1180); - attr_dev(button, "class", "button"); - attr_dev(button, "id", "make-request"); - add_location(button, file$6, 52, 2, 1345); - add_location(form, file$6, 31, 0, 738); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, form, anchor); - append_dev(form, select); - append_dev(select, option0); - append_dev(select, option1); - append_dev(select, option2); - append_dev(select, option3); - append_dev(select, option4); - select_option(select, /*httpMethod*/ ctx[0]); - append_dev(form, t5); - append_dev(form, input); - set_input_value(input, /*httpUrl*/ ctx[1]); - append_dev(form, t6); - append_dev(form, br); - append_dev(form, t7); - append_dev(form, textarea); - set_input_value(textarea, /*httpBody*/ ctx[2]); - append_dev(form, t8); - append_dev(form, button); - - if (!mounted) { - dispose = [ - listen_dev(select, "change", /*select_change_handler*/ ctx[5]), - listen_dev(input, "input", /*input_input_handler*/ ctx[6]), - listen_dev(textarea, "input", /*textarea_input_handler*/ ctx[7]), - listen_dev( - form, - "submit", - prevent_default(/*makeHttpRequest*/ ctx[3]), - false, - true, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*httpMethod*/ 1) { - select_option(select, /*httpMethod*/ ctx[0]); - } - - if (dirty & /*httpUrl*/ 2 && input.value !== /*httpUrl*/ ctx[1]) { - set_input_value(input, /*httpUrl*/ ctx[1]); - } - - if (dirty & /*httpBody*/ 4) { - set_input_value(textarea, /*httpBody*/ ctx[2]); - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(form); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$6.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$6($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Http", slots, []); - let httpMethod = "GET"; - let httpUrl = ""; - let httpBody = ""; - let { onMessage } = $$props; - - async function makeHttpRequest() { - const client = await s$1(); - let method = httpMethod || "GET"; - let url = httpUrl || ""; - const options = { url: url || "", method: method || "GET" }; - - if ( - (httpBody.startsWith("{") && httpBody.endsWith("}")) || - (httpBody.startsWith("[") && httpBody.endsWith("]")) - ) { - options.body = o$1.json(JSON.parse(httpBody)); - } else if (httpBody !== "") { - options.body = o$1.text(httpBody); - } - - client.request(options).then(onMessage).catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function select_change_handler() { - httpMethod = select_value(this); - $$invalidate(0, httpMethod); - } - - function input_input_handler() { - httpUrl = this.value; - $$invalidate(1, httpUrl); - } - - function textarea_input_handler() { - httpBody = this.value; - $$invalidate(2, httpBody); - } - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(4, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - getClient: s$1, - Body: o$1, - httpMethod, - httpUrl, - httpBody, - onMessage, - makeHttpRequest, - }); - - $$self.$inject_state = ($$props) => { - if ("httpMethod" in $$props) - $$invalidate(0, (httpMethod = $$props.httpMethod)); - if ("httpUrl" in $$props) $$invalidate(1, (httpUrl = $$props.httpUrl)); - if ("httpBody" in $$props) $$invalidate(2, (httpBody = $$props.httpBody)); - if ("onMessage" in $$props) - $$invalidate(4, (onMessage = $$props.onMessage)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [ - httpMethod, - httpUrl, - httpBody, - makeHttpRequest, - onMessage, - select_change_handler, - input_input_handler, - textarea_input_handler, - ]; - } - - class Http extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$6, create_fragment$6, safe_not_equal, { - onMessage: 4, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Http", - options, - id: create_fragment$6.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[4] === undefined && !("onMessage" in props)) { - console.warn(" was created without expected prop 'onMessage'"); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - /* src/components/Notifications.svelte generated by Svelte v3.35.0 */ - - const file$5 = "src/components/Notifications.svelte"; - - function create_fragment$5(ctx) { - let button; - let mounted; - let dispose; - - const block = { - c: function create() { - button = element("button"); - button.textContent = "Send test notification"; - attr_dev(button, "class", "button"); - attr_dev(button, "id", "notification"); - add_location(button, file$5, 28, 0, 678); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, button, anchor); - - if (!mounted) { - dispose = listen_dev( - button, - "click", - /*sendNotification*/ ctx[0], - false, - false, - false - ); - mounted = true; - } - }, - p: noop, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(button); - mounted = false; - dispose(); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$5.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function _sendNotification() { - new Notification("Notification title", { - body: "This is the notification body", - }); - } - - function instance$5($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Notifications", slots, []); - let { onMessage } = $$props; - - function sendNotification() { - if (Notification.permission === "default") { - Notification.requestPermission() - .then(function (response) { - if (response === "granted") { - _sendNotification(); - } else { - onMessage("Permission is " + response); - } - }) - .catch(onMessage); - } else if (Notification.permission === "granted") { - _sendNotification(); - } else { - onMessage("Permission is denied"); - } - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(1, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - onMessage, - _sendNotification, - sendNotification, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(1, (onMessage = $$props.onMessage)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [sendNotification, onMessage]; - } - - class Notifications extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$5, create_fragment$5, safe_not_equal, { - onMessage: 1, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Notifications", - options, - id: create_fragment$5.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[1] === undefined && !("onMessage" in props)) { - console.warn( - " was created without expected prop 'onMessage'" - ); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - function d() { - return new f(window.__TAURI__.__currentWindow.label); - } - function c() { - return window.__TAURI__.__windows; - } - var a$1 = ["tauri://created", "tauri://error"], - f = (function () { - function i(t) { - (this.label = t), (this.listeners = Object.create(null)); - } - return ( - (i.prototype.listen = function (i, e) { - return r$3(this, void 0, void 0, function () { - var t = this; - return o$6(this, function (n) { - return this._handleTauriEvent(i, e) - ? [ - 2, - Promise.resolve(function () { - var n = t.listeners[i]; - n.splice(n.indexOf(e), 1); - }), - ] - : [2, o$3(i, e)]; - }); - }); - }), - (i.prototype.once = function (i, e) { - return r$3(this, void 0, void 0, function () { - var t = this; - return o$6(this, function (n) { - return this._handleTauriEvent(i, e) - ? [ - 2, - Promise.resolve(function () { - var n = t.listeners[i]; - n.splice(n.indexOf(e), 1); - }), - ] - : [2, s$3(i, e)]; - }); - }); - }), - (i.prototype.emit = function (i, e) { - return r$3(this, void 0, void 0, function () { - var t, o; - return o$6(this, function (n) { - if (a$1.includes(i)) { - for (t = 0, o = this.listeners[i] || []; t < o.length; t++) - (0, o[t])({ event: i, id: -1, payload: e }); - return [2, Promise.resolve()]; - } - return [2, c$3(i, this.label, e)]; - }); - }); - }), - (i.prototype._handleTauriEvent = function (t, n) { - return ( - !!a$1.includes(t) && - (t in this.listeners - ? this.listeners[t].push(n) - : (this.listeners[t] = [n]), - !0) - ); - }), - i - ); - })(), - h = (function (r) { - function u(i, u) { - void 0 === u && (u = {}); - var s = r.call(this, i) || this; - return ( - n$4({ - __tauriModule: "Window", - message: { cmd: "createWebview", options: e$2({ label: i }, u) }, - }) - .then(function () { - return r$3(s, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, this.emit("tauri://created")]; - }); - }); - }) - .catch(function (i) { - return r$3(s, void 0, void 0, function () { - return o$6(this, function (t) { - return [2, this.emit("tauri://error", i)]; - }); - }); - }), - s - ); - } - return ( - n$5(u, r), - (u.getByLabel = function (t) { - return c().some(function (n) { - return n.label === t; - }) - ? new f(t) - : null; - }), - u - ); - })(f), - l = new ((function () { - function i() {} - return ( - (i.prototype.setResizable = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setResizable", resizable: i }, - }), - ]; - }); - }); - }), - (i.prototype.setTitle = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setTitle", title: i }, - }), - ]; - }); - }); - }), - (i.prototype.maximize = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Window", message: { cmd: "maximize" } }), - ]; - }); - }); - }), - (i.prototype.unmaximize = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "unmaximize" }, - }), - ]; - }); - }); - }), - (i.prototype.minimize = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Window", message: { cmd: "minimize" } }), - ]; - }); - }); - }), - (i.prototype.unminimize = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "unminimize" }, - }), - ]; - }); - }); - }), - (i.prototype.show = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Window", message: { cmd: "show" } }), - ]; - }); - }); - }), - (i.prototype.hide = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Window", message: { cmd: "hide" } }), - ]; - }); - }); - }), - (i.prototype.close = function () { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ __tauriModule: "Window", message: { cmd: "close" } }), - ]; - }); - }); - }), - (i.prototype.setDecorations = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setDecorations", decorations: i }, - }), - ]; - }); - }); - }), - (i.prototype.setAlwaysOnTop = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setAlwaysOnTop", alwaysOnTop: i }, - }), - ]; - }); - }); - }), - (i.prototype.setWidth = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setWidth", width: i }, - }), - ]; - }); - }); - }), - (i.prototype.setHeight = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setHeight", height: i }, - }), - ]; - }); - }); - }), - (i.prototype.resize = function (i, e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "resize", width: i, height: e }, - }), - ]; - }); - }); - }), - (i.prototype.setMinSize = function (i, e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setMinSize", minWidth: i, minHeight: e }, - }), - ]; - }); - }); - }), - (i.prototype.setMaxSize = function (i, e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setMaxSize", maxWidth: i, maxHeight: e }, - }), - ]; - }); - }); - }), - (i.prototype.setX = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setX", x: i }, - }), - ]; - }); - }); - }), - (i.prototype.setY = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setY", y: i }, - }), - ]; - }); - }); - }), - (i.prototype.setPosition = function (i, e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setPosition", x: i, y: e }, - }), - ]; - }); - }); - }), - (i.prototype.setFullscreen = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setFullscreen", fullscreen: i }, - }), - ]; - }); - }); - }), - (i.prototype.setIcon = function (i) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "Window", - message: { cmd: "setIcon", icon: i }, - }), - ]; - }); - }); - }), - i - ); - })())(); - Object.freeze({ - __proto__: null, - WebviewWindow: h, - getCurrent: d, - getAll: c, - appWindow: l, - }); - - /* src/components/Window.svelte generated by Svelte v3.35.0 */ - const file$4 = "src/components/Window.svelte"; - - function add_css() { - var style = element("style"); - style.id = "svelte-b76pvm-style"; - style.textContent = - ".flex-row.svelte-b76pvm.svelte-b76pvm{flex-direction:row}.grow.svelte-b76pvm.svelte-b76pvm{flex-grow:1}.window-controls.svelte-b76pvm input.svelte-b76pvm{width:50px}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2luZG93LnN2ZWx0ZSIsInNvdXJjZXMiOlsiV2luZG93LnN2ZWx0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyI8c2NyaXB0PlxuICBpbXBvcnQgeyBhcHBXaW5kb3cgfSBmcm9tIFwiQHRhdXJpLWFwcHMvYXBpL3dpbmRvd1wiO1xuICBpbXBvcnQgeyBvcGVuIGFzIG9wZW5EaWFsb2cgfSBmcm9tIFwiQHRhdXJpLWFwcHMvYXBpL2RpYWxvZ1wiO1xuICBpbXBvcnQgeyBvcGVuIH0gZnJvbSBcIkB0YXVyaS1hcHBzL2FwaS9zaGVsbFwiO1xuXG4gIGNvbnN0IHtcbiAgICBzZXRSZXNpemFibGUsXG4gICAgc2V0VGl0bGUsXG4gICAgbWF4aW1pemUsXG4gICAgdW5tYXhpbWl6ZSxcbiAgICBtaW5pbWl6ZSxcbiAgICB1bm1pbmltaXplLFxuICAgIHNob3csXG4gICAgaGlkZSxcbiAgICBzZXRUcmFuc3BhcmVudCxcbiAgICBzZXREZWNvcmF0aW9ucyxcbiAgICBzZXRBbHdheXNPblRvcCxcbiAgICBzZXRXaWR0aCxcbiAgICBzZXRIZWlnaHQsXG4gICAgLy8gcmVzaXplLFxuICAgIHNldE1pblNpemUsXG4gICAgc2V0TWF4U2l6ZSxcbiAgICBzZXRYLFxuICAgIHNldFksXG4gICAgLy8gc2V0UG9zaXRpb24sXG4gICAgc2V0RnVsbHNjcmVlbixcbiAgICBzZXRJY29uLFxuICB9ID0gYXBwV2luZG93O1xuXG4gIGxldCB1cmxWYWx1ZSA9IFwiaHR0cHM6Ly90YXVyaS5zdHVkaW9cIjtcbiAgbGV0IHJlc2l6YWJsZSA9IHRydWU7XG4gIGxldCBtYXhpbWl6ZWQgPSBmYWxzZTtcbiAgbGV0IHRyYW5zcGFyZW50ID0gZmFsc2U7XG4gIGxldCBkZWNvcmF0aW9ucyA9IHRydWU7XG4gIGxldCBhbHdheXNPblRvcCA9IGZhbHNlO1xuICBsZXQgZnVsbHNjcmVlbiA9IGZhbHNlO1xuICBsZXQgd2lkdGggPSA5MDA7XG4gIGxldCBoZWlnaHQgPSA3MDA7XG4gIGxldCBtaW5XaWR0aCA9IDYwMDtcbiAgbGV0IG1pbkhlaWdodCA9IDYwMDtcbiAgbGV0IG1heFdpZHRoID0gbnVsbDtcbiAgbGV0IG1heEhlaWdodCA9IG51bGw7XG4gIGxldCB4ID0gMTAwO1xuICBsZXQgeSA9IDEwMDtcblxuICBsZXQgd2luZG93VGl0bGUgPSBcIkF3ZXNvbWUgVGF1cmkgRXhhbXBsZSFcIjtcblxuICBmdW5jdGlvbiBvcGVuVXJsKCkge1xuICAgIG9wZW4odXJsVmFsdWUpO1xuICB9XG5cbiAgZnVuY3Rpb24gc2V0VGl0bGVfKCkge1xuICAgIHNldFRpdGxlKHdpbmRvd1RpdGxlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGhpZGVfKCkge1xuICAgIGhpZGUoKTtcbiAgICBzZXRUaW1lb3V0KHNob3csIDIwMDApO1xuICB9XG5cbiAgZnVuY3Rpb24gbWluaW1pemVfKCkge1xuICAgIG1pbmltaXplKCk7XG4gICAgc2V0VGltZW91dCh1bm1pbmltaXplLCAyMDAwKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGdldEljb24oKSB7XG4gICAgb3BlbkRpYWxvZyh7XG4gICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgfSkudGhlbihzZXRJY29uKTtcbiAgfVxuXG4gICQ6IHNldFJlc2l6YWJsZShyZXNpemFibGUpO1xuICAkOiBtYXhpbWl6ZWQgPyBtYXhpbWl6ZSgpIDogdW5tYXhpbWl6ZSgpO1xuICAvLyQ6IHNldFRyYW5zcGFyZW50KHRyYW5zcGFyZW50KVxuICAkOiBzZXREZWNvcmF0aW9ucyhkZWNvcmF0aW9ucyk7XG4gICQ6IHNldEFsd2F5c09uVG9wKGFsd2F5c09uVG9wKTtcbiAgJDogc2V0RnVsbHNjcmVlbihmdWxsc2NyZWVuKTtcblxuICAkOiBzZXRXaWR0aCh3aWR0aCk7XG4gICQ6IHNldEhlaWdodChoZWlnaHQpO1xuICAkOiBtaW5XaWR0aCAmJiBtaW5IZWlnaHQgJiYgc2V0TWluU2l6ZShtaW5XaWR0aCwgbWluSGVpZ2h0KTtcbiAgJDogbWF4V2lkdGggJiYgbWF4SGVpZ2h0ICYmIHNldE1heFNpemUobWF4V2lkdGgsIG1heEhlaWdodCk7XG4gICQ6IHNldFgoeCk7XG4gICQ6IHNldFkoeSk7XG48L3NjcmlwdD5cblxuPGRpdiBjbGFzcz1cImZsZXggY29sXCI+XG4gIDxkaXY+XG4gICAgPGxhYmVsPlxuICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGJpbmQ6Y2hlY2tlZD17cmVzaXphYmxlfSAvPlxuICAgICAgUmVzaXphYmxlXG4gICAgPC9sYWJlbD5cbiAgICA8bGFiZWw+XG4gICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgYmluZDpjaGVja2VkPXttYXhpbWl6ZWR9IC8+XG4gICAgICBNYXhpbWl6ZVxuICAgIDwvbGFiZWw+XG4gICAgPGJ1dHRvbiB0aXRsZT1cIlVubWluaW1pemVzIGFmdGVyIDIgc2Vjb25kc1wiIG9uOmNsaWNrPXttaW5pbWl6ZV99PlxuICAgICAgTWluaW1pemVcbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uIHRpdGxlPVwiVmlzaWJsZSBhZ2FpbiBhZnRlciAyIHNlY29uZHNcIiBvbjpjbGljaz17aGlkZV99PlxuICAgICAgSGlkZVxuICAgIDwvYnV0dG9uPlxuICAgIDxsYWJlbD5cbiAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBiaW5kOmNoZWNrZWQ9e3RyYW5zcGFyZW50fSAvPlxuICAgICAgVHJhbnNwYXJlbnRcbiAgICA8L2xhYmVsPlxuICAgIDxsYWJlbD5cbiAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBiaW5kOmNoZWNrZWQ9e2RlY29yYXRpb25zfSAvPlxuICAgICAgSGFzIGRlY29yYXRpb25zXG4gICAgPC9sYWJlbD5cbiAgICA8bGFiZWw+XG4gICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgYmluZDpjaGVja2VkPXthbHdheXNPblRvcH0gLz5cbiAgICAgIEFsd2F5cyBvbiB0b3BcbiAgICA8L2xhYmVsPlxuICAgIDxsYWJlbD5cbiAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBiaW5kOmNoZWNrZWQ9e2Z1bGxzY3JlZW59IC8+XG4gICAgICBGdWxsc2NyZWVuXG4gICAgPC9sYWJlbD5cbiAgICA8YnV0dG9uIG9uOmNsaWNrPXtnZXRJY29ufT4gQ2hhbmdlIGljb24gPC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ3aW5kb3ctY29udHJvbHMgZmxleCBmbGV4LXJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggY29sIGdyb3dcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICBYXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBiaW5kOnZhbHVlPXt4fSBtaW49XCIwXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgWVxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgYmluZDp2YWx1ZT17eX0gbWluPVwiMFwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGNvbCBncm93XCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgV2lkdGhcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGJpbmQ6dmFsdWU9e3dpZHRofSBtaW49XCI0MDBcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICBIZWlnaHRcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGJpbmQ6dmFsdWU9e2hlaWdodH0gbWluPVwiNDAwXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggY29sIGdyb3dcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICBNaW4gd2lkdGhcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGJpbmQ6dmFsdWU9e21pbldpZHRofSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICBNaW4gaGVpZ2h0XG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBiaW5kOnZhbHVlPXttaW5IZWlnaHR9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGNvbCBncm93XCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgTWF4IHdpZHRoXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBiaW5kOnZhbHVlPXttYXhXaWR0aH0gbWluPVwiNDAwXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgTWF4IGhlaWdodFxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgYmluZDp2YWx1ZT17bWF4SGVpZ2h0fSBtaW49XCI0MDBcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuPGZvcm0gc3R5bGU9XCJtYXJnaW4tdG9wOiAyNHB4XCIgb246c3VibWl0fHByZXZlbnREZWZhdWx0PXtzZXRUaXRsZV99PlxuICA8aW5wdXQgaWQ9XCJ0aXRsZVwiIGJpbmQ6dmFsdWU9e3dpbmRvd1RpdGxlfSAvPlxuICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uXCIgdHlwZT1cInN1Ym1pdFwiPlNldCB0aXRsZTwvYnV0dG9uPlxuPC9mb3JtPlxuPGZvcm0gc3R5bGU9XCJtYXJnaW4tdG9wOiAyNHB4XCIgb246c3VibWl0fHByZXZlbnREZWZhdWx0PXtvcGVuVXJsfT5cbiAgPGlucHV0IGlkPVwidXJsXCIgYmluZDp2YWx1ZT17dXJsVmFsdWV9IC8+XG4gIDxidXR0b24gY2xhc3M9XCJidXR0b25cIiBpZD1cIm9wZW4tdXJsXCI+IE9wZW4gVVJMIDwvYnV0dG9uPlxuPC9mb3JtPlxuXG48c3R5bGU+XG4gIC5mbGV4LXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5ncm93IHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICAud2luZG93LWNvbnRyb2xzIGlucHV0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuPC9zdHlsZT5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrTEUsU0FBUyw0QkFBQyxDQUFDLEFBQ1QsY0FBYyxDQUFFLEdBQUcsQUFDckIsQ0FBQyxBQUVELEtBQUssNEJBQUMsQ0FBQyxBQUNMLFNBQVMsQ0FBRSxDQUFDLEFBQ2QsQ0FBQyxBQUVELDhCQUFnQixDQUFDLEtBQUssY0FBQyxDQUFDLEFBQ3RCLEtBQUssQ0FBRSxJQUFJLEFBQ2IsQ0FBQyJ9 */"; - append_dev(document.head, style); - } - - function create_fragment$4(ctx) { - let div15; - let div0; - let label0; - let input0; - let t0; - let t1; - let label1; - let input1; - let t2; - let t3; - let button0; - let t5; - let button1; - let t7; - let label2; - let input2; - let t8; - let t9; - let label3; - let input3; - let t10; - let t11; - let label4; - let input4; - let t12; - let t13; - let label5; - let input5; - let t14; - let t15; - let button2; - let t17; - let div14; - let div13; - let div3; - let div1; - let t18; - let input6; - let t19; - let div2; - let t20; - let input7; - let t21; - let div6; - let div4; - let t22; - let input8; - let t23; - let div5; - let t24; - let input9; - let t25; - let div9; - let div7; - let t26; - let input10; - let t27; - let div8; - let t28; - let input11; - let t29; - let div12; - let div10; - let t30; - let input12; - let t31; - let div11; - let t32; - let input13; - let t33; - let form0; - let input14; - let t34; - let button3; - let t36; - let form1; - let input15; - let t37; - let button4; - let mounted; - let dispose; - - const block = { - c: function create() { - div15 = element("div"); - div0 = element("div"); - label0 = element("label"); - input0 = element("input"); - t0 = text("\n Resizable"); - t1 = space(); - label1 = element("label"); - input1 = element("input"); - t2 = text("\n Maximize"); - t3 = space(); - button0 = element("button"); - button0.textContent = "Minimize"; - t5 = space(); - button1 = element("button"); - button1.textContent = "Hide"; - t7 = space(); - label2 = element("label"); - input2 = element("input"); - t8 = text("\n Transparent"); - t9 = space(); - label3 = element("label"); - input3 = element("input"); - t10 = text("\n Has decorations"); - t11 = space(); - label4 = element("label"); - input4 = element("input"); - t12 = text("\n Always on top"); - t13 = space(); - label5 = element("label"); - input5 = element("input"); - t14 = text("\n Fullscreen"); - t15 = space(); - button2 = element("button"); - button2.textContent = "Change icon"; - t17 = space(); - div14 = element("div"); - div13 = element("div"); - div3 = element("div"); - div1 = element("div"); - t18 = text("X\n "); - input6 = element("input"); - t19 = space(); - div2 = element("div"); - t20 = text("Y\n "); - input7 = element("input"); - t21 = space(); - div6 = element("div"); - div4 = element("div"); - t22 = text("Width\n "); - input8 = element("input"); - t23 = space(); - div5 = element("div"); - t24 = text("Height\n "); - input9 = element("input"); - t25 = space(); - div9 = element("div"); - div7 = element("div"); - t26 = text("Min width\n "); - input10 = element("input"); - t27 = space(); - div8 = element("div"); - t28 = text("Min height\n "); - input11 = element("input"); - t29 = space(); - div12 = element("div"); - div10 = element("div"); - t30 = text("Max width\n "); - input12 = element("input"); - t31 = space(); - div11 = element("div"); - t32 = text("Max height\n "); - input13 = element("input"); - t33 = space(); - form0 = element("form"); - input14 = element("input"); - t34 = space(); - button3 = element("button"); - button3.textContent = "Set title"; - t36 = space(); - form1 = element("form"); - input15 = element("input"); - t37 = space(); - button4 = element("button"); - button4.textContent = "Open URL"; - attr_dev(input0, "type", "checkbox"); - add_location(input0, file$4, 89, 6, 1739); - add_location(label0, file$4, 88, 4, 1725); - attr_dev(input1, "type", "checkbox"); - add_location(input1, file$4, 93, 6, 1837); - add_location(label1, file$4, 92, 4, 1823); - attr_dev(button0, "title", "Unminimizes after 2 seconds"); - add_location(button0, file$4, 96, 4, 1920); - attr_dev(button1, "title", "Visible again after 2 seconds"); - add_location(button1, file$4, 99, 4, 2019); - attr_dev(input2, "type", "checkbox"); - add_location(input2, file$4, 103, 6, 2126); - add_location(label2, file$4, 102, 4, 2112); - attr_dev(input3, "type", "checkbox"); - add_location(input3, file$4, 107, 6, 2228); - add_location(label3, file$4, 106, 4, 2214); - attr_dev(input4, "type", "checkbox"); - add_location(input4, file$4, 111, 6, 2334); - add_location(label4, file$4, 110, 4, 2320); - attr_dev(input5, "type", "checkbox"); - add_location(input5, file$4, 115, 6, 2438); - add_location(label5, file$4, 114, 4, 2424); - add_location(button2, file$4, 118, 4, 2524); - add_location(div0, file$4, 87, 2, 1715); - attr_dev(input6, "type", "number"); - attr_dev(input6, "min", "0"); - attr_dev(input6, "class", "svelte-b76pvm"); - add_location(input6, file$4, 125, 10, 2709); - add_location(div1, file$4, 123, 8, 2681); - attr_dev(input7, "type", "number"); - attr_dev(input7, "min", "0"); - attr_dev(input7, "class", "svelte-b76pvm"); - add_location(input7, file$4, 129, 10, 2807); - add_location(div2, file$4, 127, 8, 2779); - attr_dev(div3, "class", "flex col grow svelte-b76pvm"); - add_location(div3, file$4, 122, 6, 2645); - attr_dev(input8, "type", "number"); - attr_dev(input8, "min", "400"); - attr_dev(input8, "class", "svelte-b76pvm"); - add_location(input8, file$4, 136, 10, 2957); - add_location(div4, file$4, 134, 8, 2925); - attr_dev(input9, "type", "number"); - attr_dev(input9, "min", "400"); - attr_dev(input9, "class", "svelte-b76pvm"); - add_location(input9, file$4, 140, 10, 3066); - add_location(div5, file$4, 138, 8, 3033); - attr_dev(div6, "class", "flex col grow svelte-b76pvm"); - add_location(div6, file$4, 133, 6, 2889); - attr_dev(input10, "type", "number"); - attr_dev(input10, "class", "svelte-b76pvm"); - add_location(input10, file$4, 147, 10, 3227); - add_location(div7, file$4, 145, 8, 3191); - attr_dev(input11, "type", "number"); - attr_dev(input11, "class", "svelte-b76pvm"); - add_location(input11, file$4, 151, 10, 3333); - add_location(div8, file$4, 149, 8, 3296); - attr_dev(div9, "class", "flex col grow svelte-b76pvm"); - add_location(div9, file$4, 144, 6, 3155); - attr_dev(input12, "type", "number"); - attr_dev(input12, "min", "400"); - attr_dev(input12, "class", "svelte-b76pvm"); - add_location(input12, file$4, 158, 10, 3487); - add_location(div10, file$4, 156, 8, 3451); - attr_dev(input13, "type", "number"); - attr_dev(input13, "min", "400"); - attr_dev(input13, "class", "svelte-b76pvm"); - add_location(input13, file$4, 162, 10, 3603); - add_location(div11, file$4, 160, 8, 3566); - attr_dev(div12, "class", "flex col grow svelte-b76pvm"); - add_location(div12, file$4, 155, 6, 3415); - attr_dev(div13, "class", "window-controls flex flex-row svelte-b76pvm"); - add_location(div13, file$4, 121, 4, 2595); - add_location(div14, file$4, 120, 2, 2585); - attr_dev(div15, "class", "flex col"); - add_location(div15, file$4, 86, 0, 1690); - attr_dev(input14, "id", "title"); - add_location(input14, file$4, 169, 2, 3786); - attr_dev(button3, "class", "button"); - attr_dev(button3, "type", "submit"); - add_location(button3, file$4, 170, 2, 3834); - set_style(form0, "margin-top", "24px"); - add_location(form0, file$4, 168, 0, 3715); - attr_dev(input15, "id", "url"); - add_location(input15, file$4, 173, 2, 3967); - attr_dev(button4, "class", "button"); - attr_dev(button4, "id", "open-url"); - add_location(button4, file$4, 174, 2, 4010); - set_style(form1, "margin-top", "24px"); - add_location(form1, file$4, 172, 0, 3898); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div15, anchor); - append_dev(div15, div0); - append_dev(div0, label0); - append_dev(label0, input0); - input0.checked = /*resizable*/ ctx[0]; - append_dev(label0, t0); - append_dev(div0, t1); - append_dev(div0, label1); - append_dev(label1, input1); - input1.checked = /*maximized*/ ctx[1]; - append_dev(label1, t2); - append_dev(div0, t3); - append_dev(div0, button0); - append_dev(div0, t5); - append_dev(div0, button1); - append_dev(div0, t7); - append_dev(div0, label2); - append_dev(label2, input2); - input2.checked = /*transparent*/ ctx[14]; - append_dev(label2, t8); - append_dev(div0, t9); - append_dev(div0, label3); - append_dev(label3, input3); - input3.checked = /*decorations*/ ctx[2]; - append_dev(label3, t10); - append_dev(div0, t11); - append_dev(div0, label4); - append_dev(label4, input4); - input4.checked = /*alwaysOnTop*/ ctx[3]; - append_dev(label4, t12); - append_dev(div0, t13); - append_dev(div0, label5); - append_dev(label5, input5); - input5.checked = /*fullscreen*/ ctx[4]; - append_dev(label5, t14); - append_dev(div0, t15); - append_dev(div0, button2); - append_dev(div15, t17); - append_dev(div15, div14); - append_dev(div14, div13); - append_dev(div13, div3); - append_dev(div3, div1); - append_dev(div1, t18); - append_dev(div1, input6); - set_input_value(input6, /*x*/ ctx[11]); - append_dev(div3, t19); - append_dev(div3, div2); - append_dev(div2, t20); - append_dev(div2, input7); - set_input_value(input7, /*y*/ ctx[12]); - append_dev(div13, t21); - append_dev(div13, div6); - append_dev(div6, div4); - append_dev(div4, t22); - append_dev(div4, input8); - set_input_value(input8, /*width*/ ctx[5]); - append_dev(div6, t23); - append_dev(div6, div5); - append_dev(div5, t24); - append_dev(div5, input9); - set_input_value(input9, /*height*/ ctx[6]); - append_dev(div13, t25); - append_dev(div13, div9); - append_dev(div9, div7); - append_dev(div7, t26); - append_dev(div7, input10); - set_input_value(input10, /*minWidth*/ ctx[7]); - append_dev(div9, t27); - append_dev(div9, div8); - append_dev(div8, t28); - append_dev(div8, input11); - set_input_value(input11, /*minHeight*/ ctx[8]); - append_dev(div13, t29); - append_dev(div13, div12); - append_dev(div12, div10); - append_dev(div10, t30); - append_dev(div10, input12); - set_input_value(input12, /*maxWidth*/ ctx[9]); - append_dev(div12, t31); - append_dev(div12, div11); - append_dev(div11, t32); - append_dev(div11, input13); - set_input_value(input13, /*maxHeight*/ ctx[10]); - insert_dev(target, t33, anchor); - insert_dev(target, form0, anchor); - append_dev(form0, input14); - set_input_value(input14, /*windowTitle*/ ctx[15]); - append_dev(form0, t34); - append_dev(form0, button3); - insert_dev(target, t36, anchor); - insert_dev(target, form1, anchor); - append_dev(form1, input15); - set_input_value(input15, /*urlValue*/ ctx[13]); - append_dev(form1, t37); - append_dev(form1, button4); - - if (!mounted) { - dispose = [ - listen_dev(input0, "change", /*input0_change_handler*/ ctx[21]), - listen_dev(input1, "change", /*input1_change_handler*/ ctx[22]), - listen_dev( - button0, - "click", - /*minimize_*/ ctx[19], - false, - false, - false - ), - listen_dev( - button1, - "click", - /*hide_*/ ctx[18], - false, - false, - false - ), - listen_dev(input2, "change", /*input2_change_handler*/ ctx[23]), - listen_dev(input3, "change", /*input3_change_handler*/ ctx[24]), - listen_dev(input4, "change", /*input4_change_handler*/ ctx[25]), - listen_dev(input5, "change", /*input5_change_handler*/ ctx[26]), - listen_dev( - button2, - "click", - /*getIcon*/ ctx[20], - false, - false, - false - ), - listen_dev(input6, "input", /*input6_input_handler*/ ctx[27]), - listen_dev(input7, "input", /*input7_input_handler*/ ctx[28]), - listen_dev(input8, "input", /*input8_input_handler*/ ctx[29]), - listen_dev(input9, "input", /*input9_input_handler*/ ctx[30]), - listen_dev(input10, "input", /*input10_input_handler*/ ctx[31]), - listen_dev(input11, "input", /*input11_input_handler*/ ctx[32]), - listen_dev(input12, "input", /*input12_input_handler*/ ctx[33]), - listen_dev(input13, "input", /*input13_input_handler*/ ctx[34]), - listen_dev(input14, "input", /*input14_input_handler*/ ctx[35]), - listen_dev( - form0, - "submit", - prevent_default(/*setTitle_*/ ctx[17]), - false, - true, - false - ), - listen_dev(input15, "input", /*input15_input_handler*/ ctx[36]), - listen_dev( - form1, - "submit", - prevent_default(/*openUrl*/ ctx[16]), - false, - true, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, dirty) { - if (dirty[0] & /*resizable*/ 1) { - input0.checked = /*resizable*/ ctx[0]; - } - - if (dirty[0] & /*maximized*/ 2) { - input1.checked = /*maximized*/ ctx[1]; - } - - if (dirty[0] & /*transparent*/ 16384) { - input2.checked = /*transparent*/ ctx[14]; - } - - if (dirty[0] & /*decorations*/ 4) { - input3.checked = /*decorations*/ ctx[2]; - } - - if (dirty[0] & /*alwaysOnTop*/ 8) { - input4.checked = /*alwaysOnTop*/ ctx[3]; - } - - if (dirty[0] & /*fullscreen*/ 16) { - input5.checked = /*fullscreen*/ ctx[4]; - } - - if ( - dirty[0] & /*x*/ 2048 && - to_number(input6.value) !== /*x*/ ctx[11] - ) { - set_input_value(input6, /*x*/ ctx[11]); - } - - if ( - dirty[0] & /*y*/ 4096 && - to_number(input7.value) !== /*y*/ ctx[12] - ) { - set_input_value(input7, /*y*/ ctx[12]); - } - - if ( - dirty[0] & /*width*/ 32 && - to_number(input8.value) !== /*width*/ ctx[5] - ) { - set_input_value(input8, /*width*/ ctx[5]); - } - - if ( - dirty[0] & /*height*/ 64 && - to_number(input9.value) !== /*height*/ ctx[6] - ) { - set_input_value(input9, /*height*/ ctx[6]); - } - - if ( - dirty[0] & /*minWidth*/ 128 && - to_number(input10.value) !== /*minWidth*/ ctx[7] - ) { - set_input_value(input10, /*minWidth*/ ctx[7]); - } - - if ( - dirty[0] & /*minHeight*/ 256 && - to_number(input11.value) !== /*minHeight*/ ctx[8] - ) { - set_input_value(input11, /*minHeight*/ ctx[8]); - } - - if ( - dirty[0] & /*maxWidth*/ 512 && - to_number(input12.value) !== /*maxWidth*/ ctx[9] - ) { - set_input_value(input12, /*maxWidth*/ ctx[9]); - } - - if ( - dirty[0] & /*maxHeight*/ 1024 && - to_number(input13.value) !== /*maxHeight*/ ctx[10] - ) { - set_input_value(input13, /*maxHeight*/ ctx[10]); - } - - if ( - dirty[0] & /*windowTitle*/ 32768 && - input14.value !== /*windowTitle*/ ctx[15] - ) { - set_input_value(input14, /*windowTitle*/ ctx[15]); - } - - if ( - dirty[0] & /*urlValue*/ 8192 && - input15.value !== /*urlValue*/ ctx[13] - ) { - set_input_value(input15, /*urlValue*/ ctx[13]); - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div15); - if (detaching) detach_dev(t33); - if (detaching) detach_dev(form0); - if (detaching) detach_dev(t36); - if (detaching) detach_dev(form1); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$4.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$4($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Window", slots, []); - - const { - setResizable, - setTitle, - maximize, - unmaximize, - minimize, - unminimize, - show, - hide, - setTransparent, - setDecorations, - setAlwaysOnTop, - setWidth, - setHeight, // resize, - setMinSize, - setMaxSize, - setX, - setY, // setPosition, - setFullscreen, - setIcon, - } = l; - - let urlValue = "https://tauri.studio"; - let resizable = true; - let maximized = false; - let transparent = false; - let decorations = true; - let alwaysOnTop = false; - let fullscreen = false; - let width = 900; - let height = 700; - let minWidth = 600; - let minHeight = 600; - let maxWidth = null; - let maxHeight = null; - let x = 100; - let y = 100; - let windowTitle = "Awesome Tauri Example!"; - - function openUrl() { - d$3(urlValue); - } - - function setTitle_() { - setTitle(windowTitle); - } - - function hide_() { - hide(); - setTimeout(show, 2000); - } - - function minimize_() { - minimize(); - setTimeout(unminimize, 2000); - } - - function getIcon() { - i$2({ multiple: false }).then(setIcon); - } - - const writable_props = []; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function input0_change_handler() { - resizable = this.checked; - $$invalidate(0, resizable); - } - - function input1_change_handler() { - maximized = this.checked; - $$invalidate(1, maximized); - } - - function input2_change_handler() { - transparent = this.checked; - $$invalidate(14, transparent); - } - - function input3_change_handler() { - decorations = this.checked; - $$invalidate(2, decorations); - } - - function input4_change_handler() { - alwaysOnTop = this.checked; - $$invalidate(3, alwaysOnTop); - } - - function input5_change_handler() { - fullscreen = this.checked; - $$invalidate(4, fullscreen); - } - - function input6_input_handler() { - x = to_number(this.value); - $$invalidate(11, x); - } - - function input7_input_handler() { - y = to_number(this.value); - $$invalidate(12, y); - } - - function input8_input_handler() { - width = to_number(this.value); - $$invalidate(5, width); - } - - function input9_input_handler() { - height = to_number(this.value); - $$invalidate(6, height); - } - - function input10_input_handler() { - minWidth = to_number(this.value); - $$invalidate(7, minWidth); - } - - function input11_input_handler() { - minHeight = to_number(this.value); - $$invalidate(8, minHeight); - } - - function input12_input_handler() { - maxWidth = to_number(this.value); - $$invalidate(9, maxWidth); - } - - function input13_input_handler() { - maxHeight = to_number(this.value); - $$invalidate(10, maxHeight); - } - - function input14_input_handler() { - windowTitle = this.value; - $$invalidate(15, windowTitle); - } - - function input15_input_handler() { - urlValue = this.value; - $$invalidate(13, urlValue); - } - - $$self.$capture_state = () => ({ - appWindow: l, - openDialog: i$2, - open: d$3, - setResizable, - setTitle, - maximize, - unmaximize, - minimize, - unminimize, - show, - hide, - setTransparent, - setDecorations, - setAlwaysOnTop, - setWidth, - setHeight, - setMinSize, - setMaxSize, - setX, - setY, - setFullscreen, - setIcon, - urlValue, - resizable, - maximized, - transparent, - decorations, - alwaysOnTop, - fullscreen, - width, - height, - minWidth, - minHeight, - maxWidth, - maxHeight, - x, - y, - windowTitle, - openUrl, - setTitle_, - hide_, - minimize_, - getIcon, - }); - - $$self.$inject_state = ($$props) => { - if ("urlValue" in $$props) - $$invalidate(13, (urlValue = $$props.urlValue)); - if ("resizable" in $$props) - $$invalidate(0, (resizable = $$props.resizable)); - if ("maximized" in $$props) - $$invalidate(1, (maximized = $$props.maximized)); - if ("transparent" in $$props) - $$invalidate(14, (transparent = $$props.transparent)); - if ("decorations" in $$props) - $$invalidate(2, (decorations = $$props.decorations)); - if ("alwaysOnTop" in $$props) - $$invalidate(3, (alwaysOnTop = $$props.alwaysOnTop)); - if ("fullscreen" in $$props) - $$invalidate(4, (fullscreen = $$props.fullscreen)); - if ("width" in $$props) $$invalidate(5, (width = $$props.width)); - if ("height" in $$props) $$invalidate(6, (height = $$props.height)); - if ("minWidth" in $$props) $$invalidate(7, (minWidth = $$props.minWidth)); - if ("minHeight" in $$props) - $$invalidate(8, (minHeight = $$props.minHeight)); - if ("maxWidth" in $$props) $$invalidate(9, (maxWidth = $$props.maxWidth)); - if ("maxHeight" in $$props) - $$invalidate(10, (maxHeight = $$props.maxHeight)); - if ("x" in $$props) $$invalidate(11, (x = $$props.x)); - if ("y" in $$props) $$invalidate(12, (y = $$props.y)); - if ("windowTitle" in $$props) - $$invalidate(15, (windowTitle = $$props.windowTitle)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - $$self.$$.update = () => { - if ($$self.$$.dirty[0] & /*resizable*/ 1) { - setResizable(resizable); - } - - if ($$self.$$.dirty[0] & /*maximized*/ 2) { - maximized ? maximize() : unmaximize(); - } - - if ($$self.$$.dirty[0] & /*decorations*/ 4) { - //$: setTransparent(transparent) - setDecorations(decorations); - } - - if ($$self.$$.dirty[0] & /*alwaysOnTop*/ 8) { - setAlwaysOnTop(alwaysOnTop); - } - - if ($$self.$$.dirty[0] & /*fullscreen*/ 16) { - setFullscreen(fullscreen); - } - - if ($$self.$$.dirty[0] & /*width*/ 32) { - setWidth(width); - } - - if ($$self.$$.dirty[0] & /*height*/ 64) { - setHeight(height); - } - - if ($$self.$$.dirty[0] & /*minWidth, minHeight*/ 384) { - minWidth && minHeight && setMinSize(minWidth, minHeight); - } - - if ($$self.$$.dirty[0] & /*maxWidth, maxHeight*/ 1536) { - maxWidth && maxHeight && setMaxSize(maxWidth, maxHeight); - } - - if ($$self.$$.dirty[0] & /*x*/ 2048) { - setX(x); - } - - if ($$self.$$.dirty[0] & /*y*/ 4096) { - setY(y); - } - }; - - return [ - resizable, - maximized, - decorations, - alwaysOnTop, - fullscreen, - width, - height, - minWidth, - minHeight, - maxWidth, - maxHeight, - x, - y, - urlValue, - transparent, - windowTitle, - openUrl, - setTitle_, - hide_, - minimize_, - getIcon, - input0_change_handler, - input1_change_handler, - input2_change_handler, - input3_change_handler, - input4_change_handler, - input5_change_handler, - input6_input_handler, - input7_input_handler, - input8_input_handler, - input9_input_handler, - input10_input_handler, - input11_input_handler, - input12_input_handler, - input13_input_handler, - input14_input_handler, - input15_input_handler, - ]; - } - - class Window extends SvelteComponentDev { - constructor(options) { - super(options); - if (!document.getElementById("svelte-b76pvm-style")) add_css(); - init(this, options, instance$4, create_fragment$4, safe_not_equal, {}, [ - -1, - -1, - ]); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Window", - options, - id: create_fragment$4.name, - }); - } - } - - const subscriber_queue = []; - /** - * Create a `Writable` store that allows both updating and reading by subscription. - * @param {*=}value initial value - * @param {StartStopNotifier=}start start and stop notifications for subscriptions - */ - function writable(value, start = noop) { - let stop; - const subscribers = []; - function set(new_value) { - if (safe_not_equal(value, new_value)) { - value = new_value; - if (stop) { - // store is ready - const run_queue = !subscriber_queue.length; - for (let i = 0; i < subscribers.length; i += 1) { - const s = subscribers[i]; - s[1](); - subscriber_queue.push(s, value); - } - if (run_queue) { - for (let i = 0; i < subscriber_queue.length; i += 2) { - subscriber_queue[i][0](subscriber_queue[i + 1]); - } - subscriber_queue.length = 0; - } - } - } - } - function update(fn) { - set(fn(value)); - } - function subscribe(run, invalidate = noop) { - const subscriber = [run, invalidate]; - subscribers.push(subscriber); - if (subscribers.length === 1) { - stop = start(set) || noop; - } - run(value); - return () => { - const index = subscribers.indexOf(subscriber); - if (index !== -1) { - subscribers.splice(index, 1); - } - if (subscribers.length === 0) { - stop(); - stop = null; - } - }; - } - return { set, update, subscribe }; - } - - function u$1(u, n) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "GlobalShortcut", - message: { cmd: "register", shortcut: u, handler: a$5(n) }, - }), - ]; - }); - }); - } - function n(u, n) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "GlobalShortcut", - message: { cmd: "registerAll", shortcuts: u, handler: a$5(n) }, - }), - ]; - }); - }); - } - function o(e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "GlobalShortcut", - message: { cmd: "isRegistered", shortcut: e }, - }), - ]; - }); - }); - } - function s(e) { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "GlobalShortcut", - message: { cmd: "unregister", shortcut: e }, - }), - ]; - }); - }); - } - function a() { - return r$3(this, void 0, void 0, function () { - return o$6(this, function (t) { - return [ - 2, - n$4({ - __tauriModule: "GlobalShortcut", - message: { cmd: "unregisterAll" }, - }), - ]; - }); - }); - } - Object.freeze({ - __proto__: null, - register: u$1, - registerAll: n, - isRegistered: o, - unregister: s, - unregisterAll: a, - }); - - /* src/components/Shortcuts.svelte generated by Svelte v3.35.0 */ - - const file$3 = "src/components/Shortcuts.svelte"; - - function get_each_context$1(ctx, list, i) { - const child_ctx = ctx.slice(); - child_ctx[9] = list[i]; - return child_ctx; - } - - // (56:4) {#each $shortcuts as savedShortcut} - function create_each_block$1(ctx) { - let div; - let t0_value = /*savedShortcut*/ ctx[9] + ""; - let t0; - let t1; - let button; - let mounted; - let dispose; - - function click_handler() { - return /*click_handler*/ ctx[8](/*savedShortcut*/ ctx[9]); - } - - const block = { - c: function create() { - div = element("div"); - t0 = text(t0_value); - t1 = space(); - button = element("button"); - button.textContent = "Unregister"; - attr_dev(button, "type", "button"); - add_location(button, file$3, 58, 8, 1488); - add_location(div, file$3, 56, 6, 1450); - }, - m: function mount(target, anchor) { - insert_dev(target, div, anchor); - append_dev(div, t0); - append_dev(div, t1); - append_dev(div, button); - - if (!mounted) { - dispose = listen_dev( - button, - "click", - click_handler, - false, - false, - false - ); - mounted = true; - } - }, - p: function update(new_ctx, dirty) { - ctx = new_ctx; - if ( - dirty & /*$shortcuts*/ 2 && - t0_value !== (t0_value = /*savedShortcut*/ ctx[9] + "") - ) - set_data_dev(t0, t0_value); - }, - d: function destroy(detaching) { - if (detaching) detach_dev(div); - mounted = false; - dispose(); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_each_block$1.name, - type: "each", - source: "(56:4) {#each $shortcuts as savedShortcut}", - ctx, - }); - - return block; - } - - // (64:4) {#if $shortcuts.length} - function create_if_block$1(ctx) { - let button; - let mounted; - let dispose; - - const block = { - c: function create() { - button = element("button"); - button.textContent = "Unregister all"; - attr_dev(button, "type", "button"); - add_location(button, file$3, 64, 6, 1652); - }, - m: function mount(target, anchor) { - insert_dev(target, button, anchor); - - if (!mounted) { - dispose = listen_dev( - button, - "click", - /*unregisterAll*/ ctx[5], - false, - false, - false - ); - mounted = true; - } - }, - p: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(button); - mounted = false; - dispose(); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_if_block$1.name, - type: "if", - source: "(64:4) {#if $shortcuts.length}", - ctx, - }); - - return block; - } - - function create_fragment$3(ctx) { - let div2; - let div0; - let input; - let t0; - let button; - let t2; - let div1; - let t3; - let mounted; - let dispose; - let each_value = /*$shortcuts*/ ctx[1]; - validate_each_argument(each_value); - let each_blocks = []; - - for (let i = 0; i < each_value.length; i += 1) { - each_blocks[i] = create_each_block$1( - get_each_context$1(ctx, each_value, i) - ); - } - - let if_block = /*$shortcuts*/ ctx[1].length && create_if_block$1(ctx); - - const block = { - c: function create() { - div2 = element("div"); - div0 = element("div"); - input = element("input"); - t0 = space(); - button = element("button"); - button.textContent = "Register"; - t2 = space(); - div1 = element("div"); - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].c(); - } - - t3 = space(); - if (if_block) if_block.c(); - attr_dev( - input, - "placeholder", - "Type a shortcut with '+' as separator..." - ); - add_location(input, file$3, 48, 4, 1220); - attr_dev(button, "type", "button"); - add_location(button, file$3, 52, 4, 1327); - add_location(div0, file$3, 47, 2, 1210); - add_location(div1, file$3, 54, 2, 1398); - add_location(div2, file$3, 46, 0, 1202); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div2, anchor); - append_dev(div2, div0); - append_dev(div0, input); - set_input_value(input, /*shortcut*/ ctx[0]); - append_dev(div0, t0); - append_dev(div0, button); - append_dev(div2, t2); - append_dev(div2, div1); - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].m(div1, null); - } - - append_dev(div1, t3); - if (if_block) if_block.m(div1, null); - - if (!mounted) { - dispose = [ - listen_dev(input, "input", /*input_input_handler*/ ctx[7]), - listen_dev( - button, - "click", - /*register*/ ctx[3], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*shortcut*/ 1 && input.value !== /*shortcut*/ ctx[0]) { - set_input_value(input, /*shortcut*/ ctx[0]); - } - - if (dirty & /*unregister, $shortcuts*/ 18) { - each_value = /*$shortcuts*/ ctx[1]; - validate_each_argument(each_value); - let i; - - for (i = 0; i < each_value.length; i += 1) { - const child_ctx = get_each_context$1(ctx, each_value, i); - - if (each_blocks[i]) { - each_blocks[i].p(child_ctx, dirty); - } else { - each_blocks[i] = create_each_block$1(child_ctx); - each_blocks[i].c(); - each_blocks[i].m(div1, t3); - } - } - - for (; i < each_blocks.length; i += 1) { - each_blocks[i].d(1); - } - - each_blocks.length = each_value.length; - } - - if (/*$shortcuts*/ ctx[1].length) { - if (if_block) { - if_block.p(ctx, dirty); - } else { - if_block = create_if_block$1(ctx); - if_block.c(); - if_block.m(div1, null); - } - } else if (if_block) { - if_block.d(1); - if_block = null; - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div2); - destroy_each(each_blocks, detaching); - if (if_block) if_block.d(); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$3.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$3($$self, $$props, $$invalidate) { - let $shortcuts; - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Shortcuts", slots, []); - let { onMessage } = $$props; - const shortcuts = writable([]); - validate_store(shortcuts, "shortcuts"); - component_subscribe($$self, shortcuts, (value) => - $$invalidate(1, ($shortcuts = value)) - ); - let shortcut = "CmdOrControl+X"; - - function register() { - const shortcut_ = shortcut; - - u$1(shortcut_, () => { - onMessage(`Shortcut ${shortcut_} triggered`); - }) - .then(() => { - shortcuts.update((shortcuts_) => [...shortcuts_, shortcut_]); - onMessage(`Shortcut ${shortcut_} registered successfully`); - }) - .catch(onMessage); - } - - function unregister(shortcut) { - const shortcut_ = shortcut; - - s(shortcut_) - .then(() => { - shortcuts.update((shortcuts_) => - shortcuts_.filter((s) => s !== shortcut_) - ); - onMessage(`Shortcut ${shortcut_} unregistered`); - }) - .catch(onMessage); - } - - function unregisterAll() { - a() - .then(() => { - shortcuts.update(() => []); - onMessage(`Unregistered all shortcuts`); - }) - .catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function input_input_handler() { - shortcut = this.value; - $$invalidate(0, shortcut); - } - - const click_handler = (savedShortcut) => unregister(savedShortcut); - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - writable, - registerShortcut: u$1, - unregisterShortcut: s, - unregisterAllShortcuts: a, - onMessage, - shortcuts, - shortcut, - register, - unregister, - unregisterAll, - $shortcuts, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - if ("shortcut" in $$props) $$invalidate(0, (shortcut = $$props.shortcut)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [ - shortcut, - $shortcuts, - shortcuts, - register, - unregister, - unregisterAll, - onMessage, - input_input_handler, - click_handler, - ]; - } - - class Shortcuts extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$3, create_fragment$3, safe_not_equal, { - onMessage: 6, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Shortcuts", - options, - id: create_fragment$3.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[6] === undefined && !("onMessage" in props)) { - console.warn( - " was created without expected prop 'onMessage'" - ); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - /* src/components/Shell.svelte generated by Svelte v3.35.0 */ - const file$2 = "src/components/Shell.svelte"; - - // (47:4) {#if child} - function create_if_block(ctx) { - let input; - let t0; - let button; - let mounted; - let dispose; - - const block = { - c: function create() { - input = element("input"); - t0 = space(); - button = element("button"); - button.textContent = "Write"; - attr_dev(input, "placeholder", "write to stdin"); - add_location(input, file$2, 47, 6, 1223); - attr_dev(button, "class", "button"); - add_location(button, file$2, 48, 6, 1285); - }, - m: function mount(target, anchor) { - insert_dev(target, input, anchor); - set_input_value(input, /*stdin*/ ctx[1]); - insert_dev(target, t0, anchor); - insert_dev(target, button, anchor); - - if (!mounted) { - dispose = [ - listen_dev(input, "input", /*input_input_handler_1*/ ctx[8]), - listen_dev( - button, - "click", - /*writeToStdin*/ ctx[5], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, dirty) { - if (dirty & /*stdin*/ 2 && input.value !== /*stdin*/ ctx[1]) { - set_input_value(input, /*stdin*/ ctx[1]); - } - }, - d: function destroy(detaching) { - if (detaching) detach_dev(input); - if (detaching) detach_dev(t0); - if (detaching) detach_dev(button); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_if_block.name, - type: "if", - source: "(47:4) {#if child}", - ctx, - }); - - return block; - } - - function create_fragment$2(ctx) { - let div1; - let div0; - let input; - let t0; - let button0; - let t2; - let button1; - let t4; - let mounted; - let dispose; - let if_block = /*child*/ ctx[2] && create_if_block(ctx); - - const block = { - c: function create() { - div1 = element("div"); - div0 = element("div"); - input = element("input"); - t0 = space(); - button0 = element("button"); - button0.textContent = "Run"; - t2 = space(); - button1 = element("button"); - button1.textContent = "Kill"; - t4 = space(); - if (if_block) if_block.c(); - add_location(input, file$2, 43, 4, 1059); - attr_dev(button0, "class", "button"); - add_location(button0, file$2, 44, 4, 1091); - attr_dev(button1, "class", "button"); - add_location(button1, file$2, 45, 4, 1148); - add_location(div0, file$2, 42, 2, 1049); - add_location(div1, file$2, 41, 0, 1041); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div1, anchor); - append_dev(div1, div0); - append_dev(div0, input); - set_input_value(input, /*script*/ ctx[0]); - append_dev(div0, t0); - append_dev(div0, button0); - append_dev(div0, t2); - append_dev(div0, button1); - append_dev(div0, t4); - if (if_block) if_block.m(div0, null); - - if (!mounted) { - dispose = [ - listen_dev(input, "input", /*input_input_handler*/ ctx[7]), - listen_dev(button0, "click", /*spawn*/ ctx[3], false, false, false), - listen_dev(button1, "click", /*kill*/ ctx[4], false, false, false), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*script*/ 1 && input.value !== /*script*/ ctx[0]) { - set_input_value(input, /*script*/ ctx[0]); - } - - if (/*child*/ ctx[2]) { - if (if_block) { - if_block.p(ctx, dirty); - } else { - if_block = create_if_block(ctx); - if_block.c(); - if_block.m(div0, null); - } - } else if (if_block) { - if_block.d(1); - if_block = null; - } - }, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div1); - if (if_block) if_block.d(); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$2.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$2($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Shell", slots, []); - const windows = navigator.userAgent.includes("Windows"); - let cmd = windows ? "cmd" : "sh"; - let args = windows ? ["/C"] : ["-c"]; - let { onMessage } = $$props; - let script = 'echo "hello world"'; - let stdin = ""; - let child; - - function spawn() { - $$invalidate(2, (child = null)); - const command = new a$4(cmd, [...args, script]); - - command.on("close", (data) => { - onMessage( - `command finished with code ${data.code} and signal ${data.signal}` - ); - $$invalidate(2, (child = null)); - }); - - command.on("error", (error) => onMessage(`command error: "${error}"`)); - command.stdout.on("data", (line) => - onMessage(`command stdout: "${line}"`) - ); - command.stderr.on("data", (line) => - onMessage(`command stderr: "${line}"`) - ); - - command - .spawn() - .then((c) => { - $$invalidate(2, (child = c)); - }) - .catch(onMessage); - } - - function kill() { - child - .kill() - .then(() => onMessage("killed child process")) - .error(onMessage); - } - - function writeToStdin() { - child.write(stdin).catch(onMessage); - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - function input_input_handler() { - script = this.value; - $$invalidate(0, script); - } - - function input_input_handler_1() { - stdin = this.value; - $$invalidate(1, stdin); - } - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - Command: a$4, - windows, - cmd, - args, - onMessage, - script, - stdin, - child, - spawn, - kill, - writeToStdin, - }); - - $$self.$inject_state = ($$props) => { - if ("cmd" in $$props) cmd = $$props.cmd; - if ("args" in $$props) args = $$props.args; - if ("onMessage" in $$props) - $$invalidate(6, (onMessage = $$props.onMessage)); - if ("script" in $$props) $$invalidate(0, (script = $$props.script)); - if ("stdin" in $$props) $$invalidate(1, (stdin = $$props.stdin)); - if ("child" in $$props) $$invalidate(2, (child = $$props.child)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [ - script, - stdin, - child, - spawn, - kill, - writeToStdin, - onMessage, - input_input_handler, - input_input_handler_1, - ]; - } - - class Shell extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$2, create_fragment$2, safe_not_equal, { - onMessage: 6, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Shell", - options, - id: create_fragment$2.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[6] === undefined && !("onMessage" in props)) { - console.warn(" was created without expected prop 'onMessage'"); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - function i() { - return r$3(this, void 0, void 0, function () { - function t() { - r && r(), (r = void 0); - } - var r; - return o$6(this, function (n) { - return [ - 2, - new Promise(function (n, i) { - o$3("tauri://update-status", function (o) { - var a; - (a = null == o ? void 0 : o.payload).error - ? (t(), i(a.error)) - : "DONE" === a.status && (t(), n()); - }) - .then(function (t) { - r = t; - }) - .catch(function (n) { - throw (t(), n); - }), - console.log("EMIT EVENT"), - c$3("tauri://update-install").catch(function (n) { - throw (t(), n); - }); - }), - ]; - }); - }); - } - function u() { - return r$3(this, void 0, void 0, function () { - function t() { - i && i(), (i = void 0); - } - var i; - return o$6(this, function (n) { - return [ - 2, - new Promise(function (n, u) { - s$3("tauri://update-available", function (o) { - var a; - (a = null == o ? void 0 : o.payload), - t(), - n({ manifest: a, shouldUpdate: !0 }); - }).catch(function (n) { - throw (t(), n); - }), - o$3("tauri://update-status", function (o) { - var a; - (a = null == o ? void 0 : o.payload).error - ? (t(), u(a.error)) - : "UPTODATE" === a.status && (t(), n({ shouldUpdate: !1 })); - }) - .then(function (t) { - i = t; - }) - .catch(function (n) { - throw (t(), n); - }), - c$3("tauri://update").catch(function (n) { - throw (t(), n); - }); - }), - ]; - }); - }); - } - Object.freeze({ __proto__: null, installUpdate: i, checkUpdate: u }); - - /* src/components/Updater.svelte generated by Svelte v3.35.0 */ - const file$1 = "src/components/Updater.svelte"; - - function create_fragment$1(ctx) { - let div; - let button0; - let t1; - let button1; - let mounted; - let dispose; - - const block = { - c: function create() { - div = element("div"); - button0 = element("button"); - button0.textContent = "Check update"; - t1 = space(); - button1 = element("button"); - button1.textContent = "Install update"; - attr_dev(button0, "class", "button"); - attr_dev(button0, "id", "check_update"); - add_location(button0, file$1, 56, 2, 1362); - attr_dev(button1, "class", "button hidden"); - attr_dev(button1, "id", "start_update"); - add_location(button1, file$1, 57, 2, 1444); - add_location(div, file$1, 55, 0, 1354); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, div, anchor); - append_dev(div, button0); - append_dev(div, t1); - append_dev(div, button1); - - if (!mounted) { - dispose = [ - listen_dev(button0, "click", /*check*/ ctx[0], false, false, false), - listen_dev( - button1, - "click", - /*install*/ ctx[1], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: noop, - i: noop, - o: noop, - d: function destroy(detaching) { - if (detaching) detach_dev(div); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment$1.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance$1($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("Updater", slots, []); - let { onMessage } = $$props; - let unlisten; - - onMount(async () => { - unlisten = await o$3("tauri://update-status", onMessage); - }); - - onDestroy(() => { - if (unlisten) { - unlisten(); - } - }); - - async function check() { - try { - document.getElementById("check_update").classList.add("hidden"); - const { shouldUpdate, manifest } = await u(); - onMessage(`Should update: ${shouldUpdate}`); - onMessage(manifest); - - if (shouldUpdate) { - document.getElementById("start_update").classList.remove("hidden"); - } - } catch (e) { - onMessage(e); - } - } - - async function install() { - try { - document.getElementById("start_update").classList.add("hidden"); - await i(); - onMessage("Installation complete, restart required."); - await a$3(); - } catch (e) { - onMessage(e); - } - } - - const writable_props = ["onMessage"]; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - $$self.$$set = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(2, (onMessage = $$props.onMessage)); - }; - - $$self.$capture_state = () => ({ - onMount, - onDestroy, - checkUpdate: u, - installUpdate: i, - listen: o$3, - relaunch: a$3, - onMessage, - unlisten, - check, - install, - }); - - $$self.$inject_state = ($$props) => { - if ("onMessage" in $$props) - $$invalidate(2, (onMessage = $$props.onMessage)); - if ("unlisten" in $$props) unlisten = $$props.unlisten; - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [check, install, onMessage]; - } - - class Updater extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance$1, create_fragment$1, safe_not_equal, { - onMessage: 2, - }); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "Updater", - options, - id: create_fragment$1.name, - }); - - const { ctx } = this.$$; - const props = options.props || {}; - - if (/*onMessage*/ ctx[2] === undefined && !("onMessage" in props)) { - console.warn(" was created without expected prop 'onMessage'"); - } - } - - get onMessage() { - throw new Error( - ": Props cannot be read directly from the component instance unless compiling with 'accessors: true' or ''" - ); - } - - set onMessage(value) { - throw new Error( - ": Props cannot be set directly on the component instance unless compiling with 'accessors: true' or ''" - ); - } - } - - /* src/App.svelte generated by Svelte v3.35.0 */ - const file = "src/App.svelte"; - - function get_each_context(ctx, list, i) { - const child_ctx = ctx.slice(); - child_ctx[8] = list[i]; - return child_ctx; - } - - // (99:6) {#each views as view} - function create_each_block(ctx) { - let p; - let t0_value = /*view*/ ctx[8].label + ""; - let t0; - let t1; - let p_class_value; - let mounted; - let dispose; - - function click_handler() { - return /*click_handler*/ ctx[6](/*view*/ ctx[8]); - } - - const block = { - c: function create() { - p = element("p"); - t0 = text(t0_value); - t1 = space(); - - attr_dev( - p, - "class", - (p_class_value = - "nv noselect " + - /*selected*/ (ctx[0] === /*view*/ ctx[8] ? "nv_selected" : "")) - ); - - add_location(p, file, 99, 6, 2408); - }, - m: function mount(target, anchor) { - insert_dev(target, p, anchor); - append_dev(p, t0); - append_dev(p, t1); - - if (!mounted) { - dispose = listen_dev(p, "click", click_handler, false, false, false); - mounted = true; - } - }, - p: function update(new_ctx, dirty) { - ctx = new_ctx; - - if ( - dirty & /*selected*/ 1 && - p_class_value !== - (p_class_value = - "nv noselect " + - /*selected*/ (ctx[0] === /*view*/ ctx[8] ? "nv_selected" : "")) - ) { - attr_dev(p, "class", p_class_value); - } - }, - d: function destroy(detaching) { - if (detaching) detach_dev(p); - mounted = false; - dispose(); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_each_block.name, - type: "each", - source: "(99:6) {#each views as view}", - ctx, - }); - - return block; - } - - function create_fragment(ctx) { - let main; - let div1; - let img; - let img_src_value; - let t0; - let div0; - let a0; - let t2; - let a1; - let t4; - let a2; - let t6; - let div4; - let div2; - let t7; - let div3; - let switch_instance; - let t8; - let div5; - let p; - let strong; - let t10; - let a3; - let t12; - let t13; - let current; - let mounted; - let dispose; - let each_value = /*views*/ ctx[2]; - validate_each_argument(each_value); - let each_blocks = []; - - for (let i = 0; i < each_value.length; i += 1) { - each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i)); - } - - var switch_value = /*selected*/ ctx[0].component; - - function switch_props(ctx) { - return { - props: { onMessage: /*onMessage*/ ctx[4] }, - $$inline: true, - }; - } - - if (switch_value) { - switch_instance = new switch_value(switch_props(ctx)); - } - - const block = { - c: function create() { - main = element("main"); - div1 = element("div"); - img = element("img"); - t0 = space(); - div0 = element("div"); - a0 = element("a"); - a0.textContent = "Documentation"; - t2 = space(); - a1 = element("a"); - a1.textContent = "Github"; - t4 = space(); - a2 = element("a"); - a2.textContent = "Source"; - t6 = space(); - div4 = element("div"); - div2 = element("div"); - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].c(); - } - - t7 = space(); - div3 = element("div"); - if (switch_instance) create_component(switch_instance.$$.fragment); - t8 = space(); - div5 = element("div"); - p = element("p"); - strong = element("strong"); - strong.textContent = "Tauri Console"; - t10 = space(); - a3 = element("a"); - a3.textContent = "clear"; - t12 = space(); - t13 = text(/*responses*/ ctx[1]); - if (img.src !== (img_src_value = "tauri.png")) - attr_dev(img, "src", img_src_value); - attr_dev(img, "height", "60"); - attr_dev(img, "alt", "logo"); - add_location(img, file, 83, 4, 1812); - attr_dev(a0, "class", "dark-link"); - attr_dev(a0, "target", "_blank"); - attr_dev( - a0, - "href", - "https://tauri.studio/en/docs/getting-started/intro" - ); - add_location(a0, file, 85, 6, 1898); - attr_dev(a1, "class", "dark-link"); - attr_dev(a1, "target", "_blank"); - attr_dev(a1, "href", "https://github.com/tauri-apps/tauri"); - add_location(a1, file, 88, 6, 2033); - attr_dev(a2, "class", "dark-link"); - attr_dev(a2, "target", "_blank"); - attr_dev( - a2, - "href", - "https://github.com/tauri-apps/tauri/tree/dev/tauri/examples/api" - ); - add_location(a2, file, 91, 6, 2146); - add_location(div0, file, 84, 4, 1886); - attr_dev(div1, "class", "flex row noselect just-around"); - attr_dev(div1, "style", "margin=1em;"); - add_location(div1, file, 82, 2, 1744); - set_style(div2, "width", "15em"); - set_style(div2, "margin-left", "0.5em"); - add_location(div2, file, 97, 4, 2330); - attr_dev(div3, "class", "content"); - add_location(div3, file, 105, 4, 2572); - attr_dev(div4, "class", "flex row"); - add_location(div4, file, 96, 2, 2303); - add_location(strong, file, 111, 6, 2774); - attr_dev(a3, "class", "nv"); - add_location(a3, file, 112, 6, 2811); - attr_dev(p, "class", "flex row just-around"); - add_location(p, file, 110, 4, 2735); - attr_dev(div5, "id", "response"); - set_style(div5, "white-space", "pre-line"); - add_location(div5, file, 109, 2, 2681); - add_location(main, file, 81, 0, 1735); - }, - l: function claim(nodes) { - throw new Error( - "options.hydrate only works if the component was compiled with the `hydratable: true` option" - ); - }, - m: function mount(target, anchor) { - insert_dev(target, main, anchor); - append_dev(main, div1); - append_dev(div1, img); - append_dev(div1, t0); - append_dev(div1, div0); - append_dev(div0, a0); - append_dev(div0, t2); - append_dev(div0, a1); - append_dev(div0, t4); - append_dev(div0, a2); - append_dev(main, t6); - append_dev(main, div4); - append_dev(div4, div2); - - for (let i = 0; i < each_blocks.length; i += 1) { - each_blocks[i].m(div2, null); - } - - append_dev(div4, t7); - append_dev(div4, div3); - - if (switch_instance) { - mount_component(switch_instance, div3, null); - } - - append_dev(main, t8); - append_dev(main, div5); - append_dev(div5, p); - append_dev(p, strong); - append_dev(p, t10); - append_dev(p, a3); - append_dev(div5, t12); - append_dev(div5, t13); - current = true; - - if (!mounted) { - dispose = [ - listen_dev( - img, - "click", - /*onLogoClick*/ ctx[5], - false, - false, - false - ), - listen_dev( - a3, - "click", - /*click_handler_1*/ ctx[7], - false, - false, - false - ), - ]; - - mounted = true; - } - }, - p: function update(ctx, [dirty]) { - if (dirty & /*selected, views, select*/ 13) { - each_value = /*views*/ ctx[2]; - validate_each_argument(each_value); - let i; - - for (i = 0; i < each_value.length; i += 1) { - const child_ctx = get_each_context(ctx, each_value, i); - - if (each_blocks[i]) { - each_blocks[i].p(child_ctx, dirty); - } else { - each_blocks[i] = create_each_block(child_ctx); - each_blocks[i].c(); - each_blocks[i].m(div2, null); - } - } - - for (; i < each_blocks.length; i += 1) { - each_blocks[i].d(1); - } - - each_blocks.length = each_value.length; - } - - if (switch_value !== (switch_value = /*selected*/ ctx[0].component)) { - if (switch_instance) { - group_outros(); - const old_component = switch_instance; - - transition_out(old_component.$$.fragment, 1, 0, () => { - destroy_component(old_component, 1); - }); - - check_outros(); - } - - if (switch_value) { - switch_instance = new switch_value(switch_props(ctx)); - create_component(switch_instance.$$.fragment); - transition_in(switch_instance.$$.fragment, 1); - mount_component(switch_instance, div3, null); - } else { - switch_instance = null; - } - } - - if (!current || dirty & /*responses*/ 2) - set_data_dev(t13, /*responses*/ ctx[1]); - }, - i: function intro(local) { - if (current) return; - if (switch_instance) transition_in(switch_instance.$$.fragment, local); - current = true; - }, - o: function outro(local) { - if (switch_instance) transition_out(switch_instance.$$.fragment, local); - current = false; - }, - d: function destroy(detaching) { - if (detaching) detach_dev(main); - destroy_each(each_blocks, detaching); - if (switch_instance) destroy_component(switch_instance); - mounted = false; - run_all(dispose); - }, - }; - - dispatch_dev("SvelteRegisterBlock", { - block, - id: create_fragment.name, - type: "component", - source: "", - ctx, - }); - - return block; - } - - function instance($$self, $$props, $$invalidate) { - let { $$slots: slots = {}, $$scope } = $$props; - validate_slots("App", slots, []); - - const views = [ - { label: "Welcome", component: Welcome }, - { - label: "Messages", - component: Communication, - }, - { label: "CLI", component: Cli }, - { label: "Dialog", component: Dialog }, - { - label: "File system", - component: FileSystem, - }, - { label: "HTTP", component: Http }, - { - label: "Notifications", - component: Notifications, - }, - { label: "Window", component: Window }, - { label: "Shortcuts", component: Shortcuts }, - { label: "Shell", component: Shell }, - { label: "Updater", component: Updater }, - ]; - - let selected = views[0]; - let responses = [""]; - - function select(view) { - $$invalidate(0, (selected = view)); - } - - function onMessage(value) { - $$invalidate( - 1, - (responses += typeof value === "string" ? value : JSON.stringify(value)) - ); - - $$invalidate(1, (responses += "\n")); - } - - function onLogoClick() { - d$3("https://tauri.studio/"); - } - - const writable_props = []; - - Object.keys($$props).forEach((key) => { - if (!~writable_props.indexOf(key) && key.slice(0, 2) !== "$$") - console.warn(` was created with unknown prop '${key}'`); - }); - - const click_handler = (view) => select(view); - - const click_handler_1 = () => { - $$invalidate(1, (responses = [""])); - }; - - $$self.$capture_state = () => ({ - onMount, - open: d$3, - Welcome, - Cli, - Communication, - Dialog, - FileSystem, - Http, - Notifications, - Window, - Shortcuts, - Shell, - Updater, - views, - selected, - responses, - select, - onMessage, - onLogoClick, - }); - - $$self.$inject_state = ($$props) => { - if ("selected" in $$props) $$invalidate(0, (selected = $$props.selected)); - if ("responses" in $$props) - $$invalidate(1, (responses = $$props.responses)); - }; - - if ($$props && "$$inject" in $$props) { - $$self.$inject_state($$props.$$inject); - } - - return [ - selected, - responses, - views, - select, - onMessage, - onLogoClick, - click_handler, - click_handler_1, - ]; - } - - class App extends SvelteComponentDev { - constructor(options) { - super(options); - init(this, options, instance, create_fragment, safe_not_equal, {}); - - dispatch_dev("SvelteRegisterComponent", { - component: this, - tagName: "App", - options, - id: create_fragment.name, - }); - } - } - - const app = new App({ - target: document.body, - }); - - return app; -})(); + ***************************************************************************** */var J=function(t,e){return(J=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,e)};function X(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=t}J(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var Y=function(){return(Y=Object.assign||function(t){for(var e,n=1,i=arguments.length;n0&&o[o.length-1])||6!==r[0]&&2!==r[0])){u=0;continue}if(3===r[0]&&(!o||r[1]>o[0]&&r[1]{n(2,r=t)})),at().then((t=>{n(0,i=t)})),dt().then((t=>{n(1,o=t)})),[i,o,r,async function(){await ft()},async function(){await ht()}]}Object.freeze({__proto__:null,Command:st,Child:ut,open:ct}),Object.freeze({__proto__:null,getName:lt,getVersion:at,getTauriVersion:dt,relaunch:ht,exit:ft});class mt extends V{constructor(t){super(),G(this,t,vt,pt,r,{})}}function gt(){return K(this,void 0,void 0,(function(){return Q(this,(function(t){return[2,et({__tauriModule:"Cli",message:{cmd:"cliMatches"}})]}))}))}function bt(e){let n,i,o,r;return{c(){n=d("div"),i=d("button"),i.textContent="Get matches",m(i,"class","button"),m(i,"id","cli-matches")},m(t,u){c(t,n,u),s(n,i),o||(r=p(i,"click",e[0]),o=!0)},p:t,i:t,o:t,d(t){t&&a(n),o=!1,r()}}}function _t(t,e,n){let{onMessage:i}=e;return t.$$set=t=>{"onMessage"in t&&n(1,i=t.onMessage)},[function(){gt().then(i).catch(i)},i]}Object.freeze({__proto__:null,getMatches:gt});class yt extends V{constructor(t){super(),G(this,t,_t,bt,r,{onMessage:1})}}function wt(t,e){return K(this,void 0,void 0,(function(){var n=this;return Q(this,(function(i){return[2,et({__tauriModule:"Event",message:{cmd:"listen",event:t,handler:Z(e)}}).then((function(t){return function(){return K(n,void 0,void 0,(function(){return Q(this,(function(e){return[2,xt(t)]}))}))}}))]}))}))}function xt(t){return K(this,void 0,void 0,(function(){return Q(this,(function(e){return[2,et({__tauriModule:"Event",message:{cmd:"unlisten",eventId:t}})]}))}))}function Mt(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,wt(t,e)]}))}))}function $t(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,wt(t,(function(t){e(t),xt(t.id).catch((function(){}))}))]}))}))}function kt(t,e,n){return K(this,void 0,void 0,(function(){return Q(this,(function(i){switch(i.label){case 0:return[4,et({__tauriModule:"Event",message:{cmd:"emit",event:t,windowLabel:e,payload:n}})];case 1:return i.sent(),[2]}}))}))}function Ct(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,kt(t,void 0,e)]}))}))}function Tt(e){let n,o,r,u,l,f,v,g;return{c(){n=d("div"),o=d("button"),o.textContent="Call Log API",r=h(),u=d("button"),u.textContent="Call Request (async) API",l=h(),f=d("button"),f.textContent="Send event to Rust",m(o,"class","button"),m(o,"id","log"),m(u,"class","button"),m(u,"id","request"),m(f,"class","button"),m(f,"id","event")},m(t,i){c(t,n,i),s(n,o),s(n,r),s(n,u),s(n,l),s(n,f),v||(g=[p(o,"click",e[0]),p(u,"click",e[1]),p(f,"click",e[2])],v=!0)},p:t,i:t,o:t,d(t){t&&a(n),v=!1,i(g)}}}function Ot(t,e,n){let i,{onMessage:o}=e;return k((async()=>{i=await Mt("rust-event",o)})),C((()=>{i&&i()})),t.$$set=t=>{"onMessage"in t&&n(3,o=t.onMessage)},[function(){tt("log_operation",{event:"tauri-click",payload:"this payload is optional because we used Option in Rust"})},function(){tt("perform_request",{endpoint:"dummy endpoint arg",body:{id:5,name:"test"}}).then(o).catch(o)},function(){Ct("js-event","this is the payload string")},o]}Object.freeze({__proto__:null,emit:Ct,listen:Mt,once:$t});class Et extends V{constructor(t){super(),G(this,t,Ot,Tt,r,{onMessage:3})}}function At(t){return void 0===t&&(t={}),K(this,void 0,void 0,(function(){return Q(this,(function(e){return"object"==typeof t&&Object.freeze(t),[2,et({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"openDialog",options:t}})]}))}))}function zt(t){return void 0===t&&(t={}),K(this,void 0,void 0,(function(){return Q(this,(function(e){return"object"==typeof t&&Object.freeze(t),[2,et({__tauriModule:"Dialog",mainThread:!0,message:{cmd:"saveDialog",options:t}})]}))}))}function St(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"Fs",message:{cmd:"readBinaryFile",path:t,options:e}})]}))}))}function jt(t){var e=function(t){if(t.length<65536)return String.fromCharCode.apply(null,Array.from(t));for(var e="",n=t.length,i=0;i{"onMessage"in t&&n(6,i=t.onMessage)},[o,r,u,s,function(){At({defaultPath:o,filters:r?[{name:"Tauri Example",extensions:r.split(",").map((t=>t.trim()))}]:[],multiple:u,directory:s}).then((function(t){if(Array.isArray(t))i(t);else{var e=t,n=e.match(/\S+\.\S+$/g);St(e).then((function(o){var r,u,s,c;n&&(e.includes(".png")||e.includes(".jpg"))?(r=new Uint8Array(o),u=function(t){i('')},s=new Blob([r],{type:"application/octet-binary"}),(c=new FileReader).onload=function(t){var e=t.target.result;u(e.substr(e.indexOf(",")+1))},c.readAsDataURL(s)):i(t)})).catch(i(t))}})).catch(i)},function(){zt({defaultPath:o,filters:r?[{name:"Tauri Example",extensions:r.split(",").map((t=>t.trim()))}]:[]}).then(i).catch(i)},i,function(){o=this.value,n(0,o)},function(){r=this.value,n(1,r)},function(){u=this.checked,n(2,u)},function(){s=this.checked,n(3,s)}]}Object.freeze({__proto__:null,open:At,save:zt}),function(t){t[t.Audio=1]="Audio",t[t.Cache=2]="Cache",t[t.Config=3]="Config",t[t.Data=4]="Data",t[t.LocalData=5]="LocalData",t[t.Desktop=6]="Desktop",t[t.Document=7]="Document",t[t.Download=8]="Download",t[t.Executable=9]="Executable",t[t.Font=10]="Font",t[t.Home=11]="Home",t[t.Picture=12]="Picture",t[t.Public=13]="Public",t[t.Runtime=14]="Runtime",t[t.Template=15]="Template",t[t.Video=16]="Video",t[t.Resource=17]="Resource",t[t.App=18]="App",t[t.Current=19]="Current"}(it||(it={})),Object.freeze({__proto__:null,get BaseDirectory(){return it},get Dir(){return it},readTextFile:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"Fs",message:{cmd:"readTextFile",path:t,options:e}})]}))}))},readBinaryFile:St,writeFile:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return"object"==typeof e&&Object.freeze(e),"object"==typeof t&&Object.freeze(t),[2,et({__tauriModule:"Fs",message:{cmd:"writeFile",path:t.path,contents:t.contents,options:e}})]}))}))},writeBinaryFile:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return"object"==typeof e&&Object.freeze(e),"object"==typeof t&&Object.freeze(t),[2,et({__tauriModule:"Fs",message:{cmd:"writeBinaryFile",path:t.path,contents:jt(t.contents),options:e}})]}))}))},readDir:Pt,createDir:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"Fs",message:{cmd:"createDir",path:t,options:e}})]}))}))},removeDir:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"Fs",message:{cmd:"removeDir",path:t,options:e}})]}))}))},copyFile:function(t,e,n){return void 0===n&&(n={}),K(this,void 0,void 0,(function(){return Q(this,(function(i){return[2,et({__tauriModule:"Fs",message:{cmd:"copyFile",source:t,destination:e,options:n}})]}))}))},removeFile:function(t,e){return void 0===e&&(e={}),K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"Fs",message:{cmd:"removeFile",path:t,options:e}})]}))}))},renameFile:function(t,e,n){return void 0===n&&(n={}),K(this,void 0,void 0,(function(){return Q(this,(function(i){return[2,et({__tauriModule:"Fs",message:{cmd:"renameFile",oldPath:t,newPath:e,options:n}})]}))}))}});class Ft extends V{constructor(t){var e;super(),document.getElementById("svelte-1eg58yg-style")||((e=d("style")).id="svelte-1eg58yg-style",e.textContent="#dialog-filter.svelte-1eg58yg{width:260px}",s(document.head,e)),G(this,t,Dt,Wt,r,{onMessage:6})}}function Rt(t,e,n){const i=t.slice();return i[5]=e[n],i}function Lt(e){let n,i,o=e[5][0]+"";return{c(){n=d("option"),i=f(o),n.__value=e[5][1],n.value=n.__value},m(t,e){c(t,n,e),s(n,i)},p:t,d(t){t&&a(n)}}}function It(e){let n,o,r,u,f,g,b,y,w,x=e[1],M=[];for(let t=0;tisNaN(parseInt(t)))).map((t=>[t,it[t]]));return t.$$set=t=>{"onMessage"in t&&n(3,i=t.onMessage)},[o,r,function(){const t=o.match(/\S+\.\S+$/g),e={dir:Ut()};(t?St(o,e):Pt(o,e)).then((function(e){if(t)if(o.includes(".png")||o.includes(".jpg"))!function(t,e){const n=new Blob([t],{type:"application/octet-binary"}),i=new FileReader;i.onload=function(t){const n=t.target.result;e(n.substr(n.indexOf(",")+1))},i.readAsDataURL(n)}(new Uint8Array(e),(function(t){i('')}));else{const t=String.fromCharCode.apply(null,e);i(''),setTimeout((()=>{const e=document.getElementById("file-response");e.value=t,document.getElementById("file-save").addEventListener("click",(function(){writeFile({file:o,contents:e.value},{dir:Ut()}).catch(i)}))}))}else i(e)})).catch(i)},i,function(){o=this.value,n(0,o)}]}class Bt extends V{constructor(t){super(),G(this,t,qt,It,r,{onMessage:3})}}!function(t){t[t.JSON=1]="JSON",t[t.Text=2]="Text",t[t.Binary=3]="Binary"}(ot||(ot={}));var Nt=function(){function t(t,e){this.type=t,this.payload=e}return t.form=function(e){return new t("Form",e)},t.json=function(e){return new t("Json",e)},t.text=function(e){return new t("Text",e)},t.bytes=function(e){return new t("Bytes",e)},t}(),Ht=function(){function t(t){this.id=t}return t.prototype.drop=function(){return K(this,void 0,void 0,(function(){return Q(this,(function(t){return[2,et({__tauriModule:"Http",message:{cmd:"dropClient",client:this.id}})]}))}))},t.prototype.request=function(t){return K(this,void 0,void 0,(function(){return Q(this,(function(e){return[2,et({__tauriModule:"Http",message:{cmd:"httpRequest",client:this.id,options:t}})]}))}))},t.prototype.get=function(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,this.request(Y({method:"GET",url:t},e))]}))}))},t.prototype.post=function(t,e,n){return K(this,void 0,void 0,(function(){return Q(this,(function(i){return[2,this.request(Y({method:"POST",url:t,body:e},n))]}))}))},t.prototype.put=function(t,e,n){return K(this,void 0,void 0,(function(){return Q(this,(function(i){return[2,this.request(Y({method:"PUT",url:t,body:e},n))]}))}))},t.prototype.patch=function(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,this.request(Y({method:"PATCH",url:t},e))]}))}))},t.prototype.delete=function(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,this.request(Y({method:"DELETE",url:t},e))]}))}))},t}();function Gt(t){return K(this,void 0,void 0,(function(){return Q(this,(function(e){return[2,et({__tauriModule:"Http",message:{cmd:"createClient",options:t}}).then((function(t){return new Ht(t)}))]}))}))}var Vt=null;function Jt(e){let n,o,r,u,l,f,g,b,x,M,$,k,C,T,O,E,A;return{c(){n=d("form"),o=d("select"),r=d("option"),r.textContent="GET",u=d("option"),u.textContent="POST",l=d("option"),l.textContent="PUT",f=d("option"),f.textContent="PATCH",g=d("option"),g.textContent="DELETE",b=h(),x=d("input"),M=h(),$=d("br"),k=h(),C=d("textarea"),T=h(),O=d("button"),O.textContent="Make request",r.__value="GET",r.value=r.__value,u.__value="POST",u.value=u.__value,l.__value="PUT",l.value=l.__value,f.__value="PATCH",f.value=f.__value,g.__value="DELETE",g.value=g.__value,m(o,"class","button"),m(o,"id","request-method"),void 0===e[0]&&j((()=>e[5].call(o))),m(x,"id","request-url"),m(x,"placeholder","Type the request URL..."),m(C,"id","request-body"),m(C,"placeholder","Request body"),m(C,"rows","5"),y(C,"width","100%"),y(C,"margin-right","10px"),y(C,"font-size","12px"),m(O,"class","button"),m(O,"id","make-request")},m(t,i){c(t,n,i),s(n,o),s(o,r),s(o,u),s(o,l),s(o,f),s(o,g),w(o,e[0]),s(n,b),s(n,x),_(x,e[1]),s(n,M),s(n,$),s(n,k),s(n,C),_(C,e[2]),s(n,T),s(n,O),E||(A=[p(o,"change",e[5]),p(x,"input",e[6]),p(C,"input",e[7]),p(n,"submit",v(e[3]))],E=!0)},p(t,[e]){1&e&&w(o,t[0]),2&e&&x.value!==t[1]&&_(x,t[1]),4&e&&_(C,t[2])},i:t,o:t,d(t){t&&a(n),E=!1,i(A)}}}function Xt(t,e,n){let i="GET",o="",r="",{onMessage:u}=e;return t.$$set=t=>{"onMessage"in t&&n(4,u=t.onMessage)},[i,o,r,async function(){const t=await Gt(),e={url:o||""||"",method:i||"GET"||"GET"};r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]")?e.body=Nt.json(JSON.parse(r)):""!==r&&(e.body=Nt.text(r)),t.request(e).then(u).catch(u)},u,function(){i=function(t){const e=t.querySelector(":checked")||t.options[0];return e&&e.__value}(this),n(0,i)},function(){o=this.value,n(1,o)},function(){r=this.value,n(2,r)}]}Object.freeze({__proto__:null,get ResponseType(){return ot},Body:Nt,Client:Ht,getClient:Gt,fetch:function(t,e){var n;return K(this,void 0,void 0,(function(){return Q(this,(function(i){switch(i.label){case 0:return null!==Vt?[3,2]:[4,Gt()];case 1:Vt=i.sent(),i.label=2;case 2:return[2,Vt.request(Y({url:t,method:null!==(n=null==e?void 0:e.method)&&void 0!==n?n:"GET"},e))]}}))}))}});class Yt extends V{constructor(t){super(),G(this,t,Xt,Jt,r,{onMessage:4})}}function Kt(e){let n,i,o;return{c(){n=d("button"),n.textContent="Send test notification",m(n,"class","button"),m(n,"id","notification")},m(t,r){c(t,n,r),i||(o=p(n,"click",e[0]),i=!0)},p:t,i:t,o:t,d(t){t&&a(n),i=!1,o()}}}function Qt(){new Notification("Notification title",{body:"This is the notification body"})}function Zt(t,e,n){let{onMessage:i}=e;return t.$$set=t=>{"onMessage"in t&&n(1,i=t.onMessage)},[function(){"default"===Notification.permission?Notification.requestPermission().then((function(t){"granted"===t?Qt():i("Permission is "+t)})).catch(i):"granted"===Notification.permission?Qt():i("Permission is denied")},i]}class te extends V{constructor(t){super(),G(this,t,Zt,Kt,r,{onMessage:1})}}function ee(){return window.__TAURI__.__windows}var ne=["tauri://created","tauri://error"],ie=function(){function t(t){this.label=t,this.listeners=Object.create(null)}return t.prototype.listen=function(t,e){return K(this,void 0,void 0,(function(){var n=this;return Q(this,(function(i){return this._handleTauriEvent(t,e)?[2,Promise.resolve((function(){var i=n.listeners[t];i.splice(i.indexOf(e),1)}))]:[2,Mt(t,e)]}))}))},t.prototype.once=function(t,e){return K(this,void 0,void 0,(function(){var n=this;return Q(this,(function(i){return this._handleTauriEvent(t,e)?[2,Promise.resolve((function(){var i=n.listeners[t];i.splice(i.indexOf(e),1)}))]:[2,$t(t,e)]}))}))},t.prototype.emit=function(t,e){return K(this,void 0,void 0,(function(){var n,i;return Q(this,(function(o){if(ne.includes(t)){for(n=0,i=this.listeners[t]||[];n{1&t.$$.dirty[0]&&i($),2&t.$$.dirty[0]&&(k?r():u()),4&t.$$.dirty[0]&&f(T),8&t.$$.dirty[0]&&h(O),16&t.$$.dirty[0]&&w(E),32&t.$$.dirty[0]&&p(A),64&t.$$.dirty[0]&&v(z),384&t.$$.dirty[0]&&S&&j&&m(S,j),1536&t.$$.dirty[0]&&P&&W&&b(P,W),2048&t.$$.dirty[0]&&_(D),4096&t.$$.dirty[0]&&y(F)},[$,k,T,O,E,A,z,S,j,P,W,D,F,M,C,R,function(){ct(M)},function(){o(R)},function(){l(),setTimeout(a,2e3)},function(){s(),setTimeout(c,2e3)},function(){At({multiple:!1}).then(x)},function(){$=this.checked,n(0,$)},function(){k=this.checked,n(1,k)},function(){C=this.checked,n(14,C)},function(){T=this.checked,n(2,T)},function(){O=this.checked,n(3,O)},function(){E=this.checked,n(4,E)},function(){D=g(this.value),n(11,D)},function(){F=g(this.value),n(12,F)},function(){A=g(this.value),n(5,A)},function(){z=g(this.value),n(6,z)},function(){S=g(this.value),n(7,S)},function(){j=g(this.value),n(8,j)},function(){P=g(this.value),n(9,P)},function(){W=g(this.value),n(10,W)},function(){R=this.value,n(15,R)},function(){M=this.value,n(13,M)}]}Object.freeze({__proto__:null,WebviewWindow:oe,getCurrent:function(){return new ie(window.__TAURI__.__currentWindow.label)},getAll:ee,appWindow:re});class ce extends V{constructor(t){var e;super(),document.getElementById("svelte-b76pvm-style")||((e=d("style")).id="svelte-b76pvm-style",e.textContent=".flex-row.svelte-b76pvm.svelte-b76pvm{flex-direction:row}.grow.svelte-b76pvm.svelte-b76pvm{flex-grow:1}.window-controls.svelte-b76pvm input.svelte-b76pvm{width:50px}",s(document.head,e)),G(this,t,se,ue,r,{},[-1,-1])}}const ae=[];function le(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"GlobalShortcut",message:{cmd:"register",shortcut:t,handler:Z(e)}})]}))}))}function de(t){return K(this,void 0,void 0,(function(){return Q(this,(function(e){return[2,et({__tauriModule:"GlobalShortcut",message:{cmd:"unregister",shortcut:t}})]}))}))}function fe(){return K(this,void 0,void 0,(function(){return Q(this,(function(t){return[2,et({__tauriModule:"GlobalShortcut",message:{cmd:"unregisterAll"}})]}))}))}function he(t,e,n){const i=t.slice();return i[9]=e[n],i}function pe(t){let e,n,i,o,r,u,l=t[9]+"";function v(){return t[8](t[9])}return{c(){e=d("div"),n=f(l),i=h(),o=d("button"),o.textContent="Unregister",m(o,"type","button")},m(t,a){c(t,e,a),s(e,n),s(e,i),s(e,o),r||(u=p(o,"click",v),r=!0)},p(e,i){t=e,2&i&&l!==(l=t[9]+"")&&b(n,l)},d(t){t&&a(e),r=!1,u()}}}function ve(e){let n,i,o;return{c(){n=d("button"),n.textContent="Unregister all",m(n,"type","button")},m(t,r){c(t,n,r),i||(o=p(n,"click",e[5]),i=!0)},p:t,d(t){t&&a(n),i=!1,o()}}}function me(e){let n,o,r,u,f,v,g,b,y,w,x=e[1],M=[];for(let t=0;t{const t=o.indexOf(c);-1!==t&&o.splice(t,1),0===o.length&&(i(),i=null)}}}}([]);u(e,c,(t=>i(1,o=t)));let a="CmdOrControl+X";function l(t){const e=t;de(e).then((()=>{c.update((t=>t.filter((t=>t!==e)))),s(`Shortcut ${e} unregistered`)})).catch(s)}return e.$$set=t=>{"onMessage"in t&&i(6,s=t.onMessage)},[a,o,c,function(){const t=a;le(t,(()=>{s(`Shortcut ${t} triggered`)})).then((()=>{c.update((e=>[...e,t])),s(`Shortcut ${t} registered successfully`)})).catch(s)},l,function(){fe().then((()=>{c.update((()=>[])),s("Unregistered all shortcuts")})).catch(s)},s,function(){a=this.value,i(0,a)},t=>l(t)]}Object.freeze({__proto__:null,register:le,registerAll:function(t,e){return K(this,void 0,void 0,(function(){return Q(this,(function(n){return[2,et({__tauriModule:"GlobalShortcut",message:{cmd:"registerAll",shortcuts:t,handler:Z(e)}})]}))}))},isRegistered:function(t){return K(this,void 0,void 0,(function(){return Q(this,(function(e){return[2,et({__tauriModule:"GlobalShortcut",message:{cmd:"isRegistered",shortcut:t}})]}))}))},unregister:de,unregisterAll:fe});class be extends V{constructor(t){super(),G(this,t,ge,me,r,{onMessage:6})}}function _e(t){let e,n,o,r,u;return{c(){e=d("input"),n=h(),o=d("button"),o.textContent="Write",m(e,"placeholder","write to stdin"),m(o,"class","button")},m(i,s){c(i,e,s),_(e,t[1]),c(i,n,s),c(i,o,s),r||(u=[p(e,"input",t[8]),p(o,"click",t[5])],r=!0)},p(t,n){2&n&&e.value!==t[1]&&_(e,t[1])},d(t){t&&a(e),t&&a(n),t&&a(o),r=!1,i(u)}}}function ye(e){let n,o,r,u,l,f,v,g,b,y,w=e[2]&&_e(e);return{c(){n=d("div"),o=d("div"),r=d("input"),u=h(),l=d("button"),l.textContent="Run",f=h(),v=d("button"),v.textContent="Kill",g=h(),w&&w.c(),m(l,"class","button"),m(v,"class","button")},m(t,i){c(t,n,i),s(n,o),s(o,r),_(r,e[0]),s(o,u),s(o,l),s(o,f),s(o,v),s(o,g),w&&w.m(o,null),b||(y=[p(r,"input",e[7]),p(l,"click",e[3]),p(v,"click",e[4])],b=!0)},p(t,[e]){1&e&&r.value!==t[0]&&_(r,t[0]),t[2]?w?w.p(t,e):(w=_e(t),w.c(),w.m(o,null)):w&&(w.d(1),w=null)},i:t,o:t,d(t){t&&a(n),w&&w.d(),b=!1,i(y)}}}function we(t,e,n){const i=navigator.userAgent.includes("Windows");let o,r=i?"cmd":"sh",u=i?["/C"]:["-c"],{onMessage:s}=e,c='echo "hello world"',a="";return t.$$set=t=>{"onMessage"in t&&n(6,s=t.onMessage)},[c,a,o,function(){n(2,o=null);const t=new st(r,[...u,c]);t.on("close",(t=>{s(`command finished with code ${t.code} and signal ${t.signal}`),n(2,o=null)})),t.on("error",(t=>s(`command error: "${t}"`))),t.stdout.on("data",(t=>s(`command stdout: "${t}"`))),t.stderr.on("data",(t=>s(`command stderr: "${t}"`))),t.spawn().then((t=>{n(2,o=t)})).catch(s)},function(){o.kill().then((()=>s("killed child process"))).error(s)},function(){o.write(a).catch(s)},s,function(){c=this.value,n(0,c)},function(){a=this.value,n(1,a)}]}class xe extends V{constructor(t){super(),G(this,t,we,ye,r,{onMessage:6})}}function Me(){return K(this,void 0,void 0,(function(){function t(){e&&e(),e=void 0}var e;return Q(this,(function(n){return[2,new Promise((function(n,i){Mt("tauri://update-status",(function(e){var o;(o=null==e?void 0:e.payload).error?(t(),i(o.error)):"DONE"===o.status&&(t(),n())})).then((function(t){e=t})).catch((function(e){throw t(),e})),kt("tauri://update-install").catch((function(e){throw t(),e}))}))]}))}))}function $e(){return K(this,void 0,void 0,(function(){function t(){e&&e(),e=void 0}var e;return Q(this,(function(n){return[2,new Promise((function(n,i){$t("tauri://update-available",(function(e){var i;i=null==e?void 0:e.payload,t(),n({manifest:i,shouldUpdate:!0})})).catch((function(e){throw t(),e})),Mt("tauri://update-status",(function(e){var o;(o=null==e?void 0:e.payload).error?(t(),i(o.error)):"UPTODATE"===o.status&&(t(),n({shouldUpdate:!1}))})).then((function(t){e=t})).catch((function(e){throw t(),e})),kt("tauri://update").catch((function(e){throw t(),e}))}))]}))}))}function ke(e){let n,o,r,u,l,f;return{c(){n=d("div"),o=d("button"),o.textContent="Check update",r=h(),u=d("button"),u.textContent="Install update",m(o,"class","button"),m(o,"id","check_update"),m(u,"class","button hidden"),m(u,"id","start_update")},m(t,i){c(t,n,i),s(n,o),s(n,r),s(n,u),l||(f=[p(o,"click",e[0]),p(u,"click",e[1])],l=!0)},p:t,i:t,o:t,d(t){t&&a(n),l=!1,i(f)}}}function Ce(t,e,n){let i,{onMessage:o}=e;return k((async()=>{i=await Mt("tauri://update-status",o)})),C((()=>{i&&i()})),t.$$set=t=>{"onMessage"in t&&n(2,o=t.onMessage)},[async function(){try{document.getElementById("check_update").classList.add("hidden");const{shouldUpdate:t,manifest:e}=await $e();o(`Should update: ${t}`),o(e),t&&document.getElementById("start_update").classList.remove("hidden")}catch(t){o(t)}},async function(){try{document.getElementById("start_update").classList.add("hidden"),await Me(),o("Installation complete, restart required."),await ht()}catch(t){o(t)}},o]}Object.freeze({__proto__:null,installUpdate:Me,checkUpdate:$e});class Te extends V{constructor(t){super(),G(this,t,Ce,ke,r,{onMessage:2})}}function Oe(t,e,n){const i=t.slice();return i[8]=e[n],i}function Ee(t){let e,n,i,o,r,u,l=t[8].label+"";function v(){return t[6](t[8])}return{c(){e=d("p"),n=f(l),i=h(),m(e,"class",o="nv noselect "+(t[0]===t[8]?"nv_selected":""))},m(t,o){c(t,e,o),s(e,n),s(e,i),r||(u=p(e,"click",v),r=!0)},p(n,i){t=n,1&i&&o!==(o="nv noselect "+(t[0]===t[8]?"nv_selected":""))&&m(e,"class",o)},d(t){t&&a(e),r=!1,u()}}}function Ae(t){let e,n,o,r,u,v,g,_,w,x,M,$,k,C,T,O,E,A,z,S,j,P,W,D=t[2],F=[];for(let e=0;eDocumentation \n Github \n Source',g=h(),_=d("div"),w=d("div");for(let t=0;t{N(t,1)})),L.r||i(L.c),L=L.p}R?($=new R(H(t)),q($.$$.fragment),I($.$$.fragment,1),B($,M,null)):$=null}(!j||2&e)&&b(S,t[1])},i(t){j||($&&I($.$$.fragment,t),j=!0)},o(t){$&&U($.$$.fragment,t),j=!1},d(t){t&&a(e),l(F,t),$&&N($),P=!1,i(W)}}}function ze(t,e,n){const i=[{label:"Welcome",component:mt},{label:"Messages",component:Et},{label:"CLI",component:yt},{label:"Dialog",component:Ft},{label:"File system",component:Bt},{label:"HTTP",component:Yt},{label:"Notifications",component:te},{label:"Window",component:ce},{label:"Shortcuts",component:be},{label:"Shell",component:xe},{label:"Updater",component:Te}];let o=i[0],r=[""];function u(t){n(0,o=t)}return[o,r,i,u,function(t){n(1,r+="string"==typeof t?t:JSON.stringify(t)),n(1,r+="\n")},function(){ct("https://tauri.studio/")},t=>u(t),()=>{n(1,r=[""])}]}return new class extends V{constructor(t){super(),G(this,t,ze,Ae,r,{})}}({target:document.body})}(); //# sourceMappingURL=bundle.js.map diff --git a/examples/api/public/build/bundle.js.map b/examples/api/public/build/bundle.js.map index a72a9db898f..c0d67ed7778 100644 --- a/examples/api/public/build/bundle.js.map +++ b/examples/api/public/build/bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"bundle.js","sources":["../../node_modules/svelte/internal/index.mjs","../../../../api/dist/tauri-56299985.js","../../../../api/dist/tauri-05b15753.js","../../../../api/dist/shell-91b57b18.js","../../../../api/dist/app-cffbb81a.js","../../src/components/Welcome.svelte","../../../../api/dist/cli-39723bef.js","../../src/components/Cli.svelte","../../../../api/dist/event-f9c41e5c.js","../../../../api/dist/event-ad5a2619.js","../../src/components/Communication.svelte","../../../../api/dist/dialog-b3dc50e4.js","../../../../api/dist/fs-0eab629e.js","../../src/components/Dialog.svelte","../../src/components/FileSystem.svelte","../../../../api/dist/http-5f8de1e0.js","../../src/components/Http.svelte","../../src/components/Notifications.svelte","../../../../api/dist/window-f54aeaaf.js","../../src/components/Window.svelte","../../node_modules/svelte/store/index.mjs","../../../../api/dist/globalShortcut-b15b9830.js","../../src/components/Shortcuts.svelte","../../src/components/Shell.svelte","../../../../api/dist/updater-0183dec1.js","../../src/components/Updater.svelte","../../src/App.svelte","../../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n // @ts-ignore\n for (const k in src)\n tar[k] = src[k];\n return tar;\n}\nfunction is_promise(value) {\n return value && typeof value === 'object' && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n element.__svelte_meta = {\n loc: { file, line, column, char }\n };\n}\nfunction run(fn) {\n return fn();\n}\nfunction blank_object() {\n return Object.create(null);\n}\nfunction run_all(fns) {\n fns.forEach(run);\n}\nfunction is_function(thing) {\n return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n return a != a ? b == b : a !== b;\n}\nfunction is_empty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction validate_store(store, name) {\n if (store != null && typeof store.subscribe !== 'function') {\n throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n }\n}\nfunction subscribe(store, ...callbacks) {\n if (store == null) {\n return noop;\n }\n const unsub = store.subscribe(...callbacks);\n return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\nfunction get_store_value(store) {\n let value;\n subscribe(store, _ => value = _)();\n return value;\n}\nfunction component_subscribe(component, store, callback) {\n component.$$.on_destroy.push(subscribe(store, callback));\n}\nfunction create_slot(definition, ctx, $$scope, fn) {\n if (definition) {\n const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n return definition[0](slot_ctx);\n }\n}\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n return definition[1] && fn\n ? assign($$scope.ctx.slice(), definition[1](fn(ctx)))\n : $$scope.ctx;\n}\nfunction get_slot_changes(definition, $$scope, dirty, fn) {\n if (definition[2] && fn) {\n const lets = definition[2](fn(dirty));\n if ($$scope.dirty === undefined) {\n return lets;\n }\n if (typeof lets === 'object') {\n const merged = [];\n const len = Math.max($$scope.dirty.length, lets.length);\n for (let i = 0; i < len; i += 1) {\n merged[i] = $$scope.dirty[i] | lets[i];\n }\n return merged;\n }\n return $$scope.dirty | lets;\n }\n return $$scope.dirty;\n}\nfunction update_slot(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction update_slot_spread(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_spread_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_spread_changes_fn(dirty) | get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction exclude_internal_props(props) {\n const result = {};\n for (const k in props)\n if (k[0] !== '$')\n result[k] = props[k];\n return result;\n}\nfunction compute_rest_props(props, keys) {\n const rest = {};\n keys = new Set(keys);\n for (const k in props)\n if (!keys.has(k) && k[0] !== '$')\n rest[k] = props[k];\n return rest;\n}\nfunction compute_slots(slots) {\n const result = {};\n for (const key in slots) {\n result[key] = true;\n }\n return result;\n}\nfunction once(fn) {\n let ran = false;\n return function (...args) {\n if (ran)\n return;\n ran = true;\n fn.call(this, ...args);\n };\n}\nfunction null_to_empty(value) {\n return value == null ? '' : value;\n}\nfunction set_store_value(store, ret, value = ret) {\n store.set(value);\n return ret;\n}\nconst has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nfunction action_destroyer(action_result) {\n return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n ? () => window.performance.now()\n : () => Date.now();\nlet raf = is_client ? cb => requestAnimationFrame(cb) : noop;\n// used internally for testing\nfunction set_now(fn) {\n now = fn;\n}\nfunction set_raf(fn) {\n raf = fn;\n}\n\nconst tasks = new Set();\nfunction run_tasks(now) {\n tasks.forEach(task => {\n if (!task.c(now)) {\n tasks.delete(task);\n task.f();\n }\n });\n if (tasks.size !== 0)\n raf(run_tasks);\n}\n/**\n * For testing purposes only!\n */\nfunction clear_loops() {\n tasks.clear();\n}\n/**\n * Creates a new task that runs on each raf frame\n * until it returns a falsy value or is aborted\n */\nfunction loop(callback) {\n let task;\n if (tasks.size === 0)\n raf(run_tasks);\n return {\n promise: new Promise(fulfill => {\n tasks.add(task = { c: callback, f: fulfill });\n }),\n abort() {\n tasks.delete(task);\n }\n };\n}\n\nfunction append(target, node) {\n target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n node.parentNode.removeChild(node);\n}\nfunction destroy_each(iterations, detaching) {\n for (let i = 0; i < iterations.length; i += 1) {\n if (iterations[i])\n iterations[i].d(detaching);\n }\n}\nfunction element(name) {\n return document.createElement(name);\n}\nfunction element_is(name, is) {\n return document.createElement(name, { is });\n}\nfunction object_without_properties(obj, exclude) {\n const target = {};\n for (const k in obj) {\n if (has_prop(obj, k)\n // @ts-ignore\n && exclude.indexOf(k) === -1) {\n // @ts-ignore\n target[k] = obj[k];\n }\n }\n return target;\n}\nfunction svg_element(name) {\n return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n return document.createTextNode(data);\n}\nfunction space() {\n return text(' ');\n}\nfunction empty() {\n return text('');\n}\nfunction listen(node, event, handler, options) {\n node.addEventListener(event, handler, options);\n return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n return function (event) {\n event.preventDefault();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction stop_propagation(fn) {\n return function (event) {\n event.stopPropagation();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction self(fn) {\n return function (event) {\n // @ts-ignore\n if (event.target === this)\n fn.call(this, event);\n };\n}\nfunction attr(node, attribute, value) {\n if (value == null)\n node.removeAttribute(attribute);\n else if (node.getAttribute(attribute) !== value)\n node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n // @ts-ignore\n const descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n for (const key in attributes) {\n if (attributes[key] == null) {\n node.removeAttribute(key);\n }\n else if (key === 'style') {\n node.style.cssText = attributes[key];\n }\n else if (key === '__value') {\n node.value = node[key] = attributes[key];\n }\n else if (descriptors[key] && descriptors[key].set) {\n node[key] = attributes[key];\n }\n else {\n attr(node, key, attributes[key]);\n }\n }\n}\nfunction set_svg_attributes(node, attributes) {\n for (const key in attributes) {\n attr(node, key, attributes[key]);\n }\n}\nfunction set_custom_element_data(node, prop, value) {\n if (prop in node) {\n node[prop] = value;\n }\n else {\n attr(node, prop, value);\n }\n}\nfunction xlink_attr(node, attribute, value) {\n node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group, __value, checked) {\n const value = new Set();\n for (let i = 0; i < group.length; i += 1) {\n if (group[i].checked)\n value.add(group[i].__value);\n }\n if (!checked) {\n value.delete(__value);\n }\n return Array.from(value);\n}\nfunction to_number(value) {\n return value === '' ? null : +value;\n}\nfunction time_ranges_to_array(ranges) {\n const array = [];\n for (let i = 0; i < ranges.length; i += 1) {\n array.push({ start: ranges.start(i), end: ranges.end(i) });\n }\n return array;\n}\nfunction children(element) {\n return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeName === name) {\n let j = 0;\n const remove = [];\n while (j < node.attributes.length) {\n const attribute = node.attributes[j++];\n if (!attributes[attribute.name]) {\n remove.push(attribute.name);\n }\n }\n for (let k = 0; k < remove.length; k++) {\n node.removeAttribute(remove[k]);\n }\n return nodes.splice(i, 1)[0];\n }\n }\n return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeType === 3) {\n node.data = '' + data;\n return nodes.splice(i, 1)[0];\n }\n }\n return text(data);\n}\nfunction claim_space(nodes) {\n return claim_text(nodes, ' ');\n}\nfunction set_data(text, data) {\n data = '' + data;\n if (text.wholeText !== data)\n text.data = data;\n}\nfunction set_input_value(input, value) {\n input.value = value == null ? '' : value;\n}\nfunction set_input_type(input, type) {\n try {\n input.type = type;\n }\n catch (e) {\n // do nothing\n }\n}\nfunction set_style(node, key, value, important) {\n node.style.setProperty(key, value, important ? 'important' : '');\n}\nfunction select_option(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n if (option.__value === value) {\n option.selected = true;\n return;\n }\n }\n}\nfunction select_options(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n option.selected = ~value.indexOf(option.__value);\n }\n}\nfunction select_value(select) {\n const selected_option = select.querySelector(':checked') || select.options[0];\n return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\nlet crossorigin;\nfunction is_crossorigin() {\n if (crossorigin === undefined) {\n crossorigin = false;\n try {\n if (typeof window !== 'undefined' && window.parent) {\n void window.parent.document;\n }\n }\n catch (error) {\n crossorigin = true;\n }\n }\n return crossorigin;\n}\nfunction add_resize_listener(node, fn) {\n const computed_style = getComputedStyle(node);\n if (computed_style.position === 'static') {\n node.style.position = 'relative';\n }\n const iframe = element('iframe');\n iframe.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\n 'overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;');\n iframe.setAttribute('aria-hidden', 'true');\n iframe.tabIndex = -1;\n const crossorigin = is_crossorigin();\n let unsubscribe;\n if (crossorigin) {\n iframe.src = \"data:text/html,\";\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n if (crossorigin) {\n unsubscribe();\n }\n else if (unsubscribe && iframe.contentWindow) {\n unsubscribe();\n }\n detach(iframe);\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, false, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor(anchor = null) {\n this.a = anchor;\n this.e = this.n = null;\n }\n m(html, target, anchor = null) {\n if (!this.e) {\n this.e = element(target.nodeName);\n this.t = target;\n this.h(html);\n }\n this.i(anchor);\n }\n h(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(this.t, this.n[i], anchor);\n }\n }\n p(html) {\n this.d();\n this.h(html);\n this.i(this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\nfunction attribute_to_object(attributes) {\n const result = {};\n for (const attribute of attributes) {\n result[attribute.name] = attribute.value;\n }\n return result;\n}\nfunction get_custom_elements_slots(element) {\n const result = {};\n element.childNodes.forEach((node) => {\n result[node.slot || 'default'] = true;\n });\n return result;\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = node.ownerDocument;\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = doc.head.appendChild(element('style')).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error('Function called outside component initialization');\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\nfunction hasContext(key) {\n return get_current_component().$$.context.has(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n callbacks.slice().forEach(fn => fn(event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n set_current_component(null);\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = program.b - t;\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program || pending_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n if (info.blocks[i] === block) {\n info.blocks[i] = null;\n }\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n if (!info.hasCatch) {\n throw error;\n }\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next);\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error('Cannot have duplicate keys in a keyed each');\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += ' ' + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += ' ' + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${String(value).replace(/\"/g, '"').replace(/'/g, ''')}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, options = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, options);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : '';\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor, customElement) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n if (!customElement) {\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n }\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n on_disconnect: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : []),\n // everything else\n callbacks: blank_object(),\n dirty,\n skip_bound: false\n };\n let ready = false;\n $$.ctx = instance\n ? instance(component, options.props || {}, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if (!$$.skip_bound && $$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor, options.customElement);\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n const { on_mount } = this.$$;\n this.$$.on_disconnect = on_mount.map(run).filter(is_function);\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n disconnectedCallback() {\n run_all(this.$$.on_disconnect);\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n };\n}\n/**\n * Base class for Svelte components. Used when dev=false.\n */\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.35.0' }, detail)));\n}\nfunction append_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev('SvelteDOMRemove', { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });\n else\n dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev('SvelteDOMSetProperty', { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev('SvelteDOMSetDataset', { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.wholeText === data)\n return;\n dispatch_dev('SvelteDOMSetData', { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\n/**\n * Base class for Svelte components with some minor dev-enhancements. Used when dev=true.\n */\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(\"'target' is a required option\");\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn('Component was already destroyed'); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\n/**\n * Base class to create strongly typed Svelte components.\n * This only exists for typing purposes and should be used in `.d.ts` files.\n *\n * ### Example:\n *\n * You have component library on npm called `component-library`, from which\n * you export a component called `MyComponent`. For Svelte+TypeScript users,\n * you want to provide typings. Therefore you create a `index.d.ts`:\n * ```ts\n * import { SvelteComponentTyped } from \"svelte\";\n * export class MyComponent extends SvelteComponentTyped<{foo: string}> {}\n * ```\n * Typing this makes it possible for IDEs like VS Code with the Svelte extension\n * to provide intellisense and to use the component like this in a Svelte file\n * with TypeScript:\n * ```svelte\n * \n * \n * ```\n *\n * #### Why not make this part of `SvelteComponent(Dev)`?\n * Because\n * ```ts\n * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {}\n * const component: typeof SvelteComponent = ASubclassOfSvelteComponent;\n * ```\n * will throw a type error, so we need to seperate the more strictly typed class.\n */\nclass SvelteComponentTyped extends SvelteComponentDev {\n constructor(options) {\n super(options);\n }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error('Infinite loop detected');\n }\n };\n}\n\nexport { HtmlTag, SvelteComponent, SvelteComponentDev, SvelteComponentTyped, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, escape, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getContext, get_binding_group_value, get_current_component, get_custom_elements_slots, get_slot_changes, get_slot_context, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, update_keyed_each, update_slot, update_slot_spread, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar t = function (n, e) {\n return (t =\n Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array &&\n function (t, n) {\n t.__proto__ = n\n }) ||\n function (t, n) {\n for (var e in n)\n Object.prototype.hasOwnProperty.call(n, e) && (t[e] = n[e])\n })(n, e)\n}\nfunction n(n, e) {\n if ('function' != typeof e && null !== e)\n throw new TypeError(\n 'Class extends value ' + String(e) + ' is not a constructor or null'\n )\n function r() {\n this.constructor = n\n }\n t(n, e),\n (n.prototype =\n null === e ? Object.create(e) : ((r.prototype = e.prototype), new r()))\n}\nvar e = function () {\n return (e =\n Object.assign ||\n function (t) {\n for (var n, e = 1, r = arguments.length; e < r; e++)\n for (var o in (n = arguments[e]))\n Object.prototype.hasOwnProperty.call(n, o) && (t[o] = n[o])\n return t\n }).apply(this, arguments)\n}\nfunction r(t, n, e, r) {\n return new (e || (e = Promise))(function (o, a) {\n function i(t) {\n try {\n u(r.next(t))\n } catch (t) {\n a(t)\n }\n }\n function c(t) {\n try {\n u(r.throw(t))\n } catch (t) {\n a(t)\n }\n }\n function u(t) {\n var n\n t.done\n ? o(t.value)\n : ((n = t.value),\n n instanceof e\n ? n\n : new e(function (t) {\n t(n)\n })).then(i, c)\n }\n u((r = r.apply(t, n || [])).next())\n })\n}\nfunction o(t, n) {\n var e,\n r,\n o,\n a,\n i = {\n label: 0,\n sent: function () {\n if (1 & o[0]) throw o[1]\n return o[1]\n },\n trys: [],\n ops: []\n }\n return (\n (a = { next: c(0), throw: c(1), return: c(2) }),\n 'function' == typeof Symbol &&\n (a[Symbol.iterator] = function () {\n return this\n }),\n a\n )\n function c(a) {\n return function (c) {\n return (function (a) {\n if (e) throw new TypeError('Generator is already executing.')\n for (; i; )\n try {\n if (\n ((e = 1),\n r &&\n (o =\n 2 & a[0]\n ? r.return\n : a[0]\n ? r.throw || ((o = r.return) && o.call(r), 0)\n : r.next) &&\n !(o = o.call(r, a[1])).done)\n )\n return o\n switch (((r = 0), o && (a = [2 & a[0], o.value]), a[0])) {\n case 0:\n case 1:\n o = a\n break\n case 4:\n return i.label++, { value: a[1], done: !1 }\n case 5:\n i.label++, (r = a[1]), (a = [0])\n continue\n case 7:\n ;(a = i.ops.pop()), i.trys.pop()\n continue\n default:\n if (\n !((o = i.trys),\n (o = o.length > 0 && o[o.length - 1]) ||\n (6 !== a[0] && 2 !== a[0]))\n ) {\n i = 0\n continue\n }\n if (3 === a[0] && (!o || (a[1] > o[0] && a[1] < o[3]))) {\n i.label = a[1]\n break\n }\n if (6 === a[0] && i.label < o[1]) {\n ;(i.label = o[1]), (o = a)\n break\n }\n if (o && i.label < o[2]) {\n ;(i.label = o[2]), i.ops.push(a)\n break\n }\n o[2] && i.ops.pop(), i.trys.pop()\n continue\n }\n a = n.call(t, i)\n } catch (t) {\n ;(a = [6, t]), (r = 0)\n } finally {\n e = o = 0\n }\n if (5 & a[0]) throw a[1]\n return { value: a[0] ? a[1] : void 0, done: !0 }\n })([a, c])\n }\n }\n}\nfunction a(t, n) {\n void 0 === n && (n = !1)\n var e = (function () {\n var t = new Int8Array(1)\n window.crypto.getRandomValues(t)\n var n = new Uint8Array(Math.max(16, Math.abs(t[0])))\n return window.crypto.getRandomValues(n), n.join('')\n })()\n return (\n Object.defineProperty(window, e, {\n value: function (r) {\n return n && Reflect.deleteProperty(window, e), null == t ? void 0 : t(r)\n },\n writable: !1,\n configurable: !0\n }),\n e\n )\n}\nfunction i(t, n) {\n return (\n void 0 === n && (n = {}),\n r(this, void 0, void 0, function () {\n return o(this, function (r) {\n return [\n 2,\n new Promise(function (r, o) {\n var i = a(function (t) {\n r(t), Reflect.deleteProperty(window, c)\n }, !0),\n c = a(function (t) {\n o(t), Reflect.deleteProperty(window, i)\n }, !0)\n window.rpc.notify(t, e({ callback: i, error: c }, n))\n })\n ]\n })\n })\n )\n}\nvar c = Object.freeze({ __proto__: null, transformCallback: a, invoke: i })\nexport { r as _, o as a, e as b, c, n as d, i, a as t }\n","import { _ as i, a as t, i as r } from './tauri-56299985.js'\nfunction n(n) {\n return i(this, void 0, void 0, function () {\n return t(this, function (i) {\n return [2, r('tauri', n)]\n })\n })\n}\nexport { n as i }\n","import { _ as t, a as e, d as n, t as r } from './tauri-56299985.js'\nimport { i } from './tauri-05b15753.js'\nfunction o(n, o, s, u) {\n return t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return (\n 'object' == typeof u && Object.freeze(u),\n [\n 2,\n i({\n __tauriModule: 'Shell',\n message: {\n cmd: 'execute',\n program: n,\n sidecar: o,\n onEventFn: r(s),\n args: 'string' == typeof u ? [u] : u\n }\n })\n ]\n )\n })\n })\n}\nvar s = (function () {\n function t() {\n this.eventListeners = Object.create(null)\n }\n return (\n (t.prototype.addEventListener = function (t, e) {\n t in this.eventListeners\n ? this.eventListeners[t].push(e)\n : (this.eventListeners[t] = [e])\n }),\n (t.prototype._emit = function (t, e) {\n if (t in this.eventListeners)\n for (var n = 0, r = this.eventListeners[t]; n < r.length; n++) {\n ;(0, r[n])(e)\n }\n }),\n (t.prototype.on = function (t, e) {\n return this.addEventListener(t, e), this\n }),\n t\n )\n })(),\n u = (function () {\n function n(t) {\n this.pid = t\n }\n return (\n (n.prototype.write = function (n) {\n return t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Shell',\n message: { cmd: 'stdinWrite', pid: this.pid, buffer: n }\n })\n ]\n })\n })\n }),\n (n.prototype.kill = function () {\n return t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Shell',\n message: { cmd: 'killChild', pid: this.pid }\n })\n ]\n })\n })\n }),\n n\n )\n })(),\n a = (function (r) {\n function i(t, e) {\n void 0 === e && (e = [])\n var n = r.call(this) || this\n return (\n (n.sidecar = !1),\n (n.stdout = new s()),\n (n.stderr = new s()),\n (n.pid = null),\n (n.program = t),\n (n.args = 'string' == typeof e ? [e] : e),\n n\n )\n }\n return (\n n(i, r),\n (i.sidecar = function (t, e) {\n void 0 === e && (e = [])\n var n = new i(t, e)\n return (n.sidecar = !0), n\n }),\n (i.prototype.spawn = function () {\n return t(this, void 0, void 0, function () {\n var t = this\n return e(this, function (e) {\n return [\n 2,\n o(\n this.program,\n this.sidecar,\n function (e) {\n switch (e.event) {\n case 'Error':\n t._emit('error', e.payload)\n break\n case 'Terminated':\n t._emit('close', e.payload)\n break\n case 'Stdout':\n t.stdout._emit('data', e.payload)\n break\n case 'Stderr':\n t.stderr._emit('data', e.payload)\n }\n },\n this.args\n ).then(function (t) {\n return new u(t)\n })\n ]\n })\n })\n }),\n (i.prototype.execute = function () {\n return t(this, void 0, void 0, function () {\n var t = this\n return e(this, function (e) {\n return [\n 2,\n new Promise(function (e, n) {\n t.on('error', n)\n var r = [],\n i = []\n t.stdout.on('data', function (t) {\n r.push(t)\n }),\n t.stderr.on('data', function (t) {\n i.push(t)\n }),\n t.on('close', function (t) {\n e({\n code: t.code,\n signal: t.signal,\n stdout: r.join('\\n'),\n stderr: i.join('\\n')\n })\n }),\n t.spawn().catch(n)\n })\n ]\n })\n })\n }),\n i\n )\n })(s)\nfunction d(n, r) {\n return t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Shell',\n message: { cmd: 'open', path: n, with: r }\n })\n ]\n })\n })\n}\nvar c = Object.freeze({ __proto__: null, Command: a, Child: u, open: d })\nexport { a as C, u as a, d as o, c as s }\n","import { _ as t, a as i } from './tauri-56299985.js'\nimport { i as e } from './tauri-05b15753.js'\nfunction r() {\n return t(this, void 0, void 0, function () {\n return i(this, function (t) {\n return [\n 2,\n e({\n __tauriModule: 'App',\n mainThread: !0,\n message: { cmd: 'getAppVersion' }\n })\n ]\n })\n })\n}\nfunction n() {\n return t(this, void 0, void 0, function () {\n return i(this, function (t) {\n return [\n 2,\n e({\n __tauriModule: 'App',\n mainThread: !0,\n message: { cmd: 'getAppName' }\n })\n ]\n })\n })\n}\nfunction u() {\n return t(this, void 0, void 0, function () {\n return i(this, function (t) {\n return [\n 2,\n e({\n __tauriModule: 'App',\n mainThread: !0,\n message: { cmd: 'getTauriVersion' }\n })\n ]\n })\n })\n}\nfunction o(r) {\n return (\n void 0 === r && (r = 0),\n t(this, void 0, void 0, function () {\n return i(this, function (t) {\n return [\n 2,\n e({\n __tauriModule: 'App',\n mainThread: !0,\n message: { cmd: 'exit', exitCode: r }\n })\n ]\n })\n })\n )\n}\nfunction a() {\n return t(this, void 0, void 0, function () {\n return i(this, function (t) {\n return [\n 2,\n e({\n __tauriModule: 'App',\n mainThread: !0,\n message: { cmd: 'relaunch' }\n })\n ]\n })\n })\n}\nvar s = Object.freeze({\n __proto__: null,\n getName: n,\n getVersion: r,\n getTauriVersion: u,\n relaunch: a,\n exit: o\n})\nexport { s as a, r as b, u as c, o as e, n as g, a as r }\n","\n

Welcome

\n

\n Tauri's API capabilities using the ` @tauri-apps/api ` package. It's used as\n the main validation app, serving as the testbed of our development process. In\n the future, this app will be used on Tauri's integration tests.\n

\n\n

Current App version: {version}

\n

Current Tauri version: {tauriVersion}

\n

Current App name: {appName}

\n\n\n\n","import { _ as t, a as r } from './tauri-56299985.js'\nimport { i } from './tauri-05b15753.js'\nfunction e() {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [2, i({ __tauriModule: 'Cli', message: { cmd: 'cliMatches' } })]\n })\n })\n}\nvar a = Object.freeze({ __proto__: null, getMatches: e })\nexport { a as c, e as g }\n","\n\n
\n \n
\n","import { _ as n, a as t, t as i } from './tauri-56299985.js'\nimport { i as r } from './tauri-05b15753.js'\nfunction e(e, o) {\n return n(this, void 0, void 0, function () {\n var s = this\n return t(this, function (c) {\n return [\n 2,\n r({\n __tauriModule: 'Event',\n message: { cmd: 'listen', event: e, handler: i(o) }\n }).then(function (i) {\n return function () {\n return n(s, void 0, void 0, function () {\n return t(this, function (n) {\n return [2, u(i)]\n })\n })\n }\n })\n ]\n })\n })\n}\nfunction u(i) {\n return n(this, void 0, void 0, function () {\n return t(this, function (n) {\n return [\n 2,\n r({ __tauriModule: 'Event', message: { cmd: 'unlisten', eventId: i } })\n ]\n })\n })\n}\nfunction o(i, r) {\n return n(this, void 0, void 0, function () {\n return t(this, function (n) {\n return [2, e(i, r)]\n })\n })\n}\nfunction s(i, r) {\n return n(this, void 0, void 0, function () {\n return t(this, function (n) {\n return [\n 2,\n e(i, function (n) {\n r(n), u(n.id).catch(function () {})\n })\n ]\n })\n })\n}\nfunction c(i, e, u) {\n return n(this, void 0, void 0, function () {\n return t(this, function (n) {\n switch (n.label) {\n case 0:\n return [\n 4,\n r({\n __tauriModule: 'Event',\n message: { cmd: 'emit', event: i, windowLabel: e, payload: u }\n })\n ]\n case 1:\n return n.sent(), [2]\n }\n })\n })\n}\nexport { c as e, o as l, s as o }\n","import { _ as t, a as e } from './tauri-56299985.js'\nimport { e as o, l as r, o as i } from './event-f9c41e5c.js'\nfunction n(r, i) {\n return t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [2, o(r, void 0, i)]\n })\n })\n}\nvar s = Object.freeze({ __proto__: null, emit: n, listen: r, once: i })\nexport { n as a, s as e }\n","\n\n
\n \n \n \n
\n","import { _ as o, a as e } from './tauri-56299985.js'\nimport { i as t } from './tauri-05b15753.js'\nfunction i(i) {\n return (\n void 0 === i && (i = {}),\n o(this, void 0, void 0, function () {\n return e(this, function (o) {\n return (\n 'object' == typeof i && Object.freeze(i),\n [\n 2,\n t({\n __tauriModule: 'Dialog',\n mainThread: !0,\n message: { cmd: 'openDialog', options: i }\n })\n ]\n )\n })\n })\n )\n}\nfunction r(i) {\n return (\n void 0 === i && (i = {}),\n o(this, void 0, void 0, function () {\n return e(this, function (o) {\n return (\n 'object' == typeof i && Object.freeze(i),\n [\n 2,\n t({\n __tauriModule: 'Dialog',\n mainThread: !0,\n message: { cmd: 'saveDialog', options: i }\n })\n ]\n )\n })\n })\n )\n}\nvar n = Object.freeze({ __proto__: null, open: i, save: r })\nexport { n as d, i as o, r as s }\n","import { _ as t, a as e } from './tauri-56299985.js'\nimport { i } from './tauri-05b15753.js'\nvar r\nfunction o(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'readTextFile', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction n(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'readBinaryFile', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction u(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return (\n 'object' == typeof o && Object.freeze(o),\n 'object' == typeof r && Object.freeze(r),\n [\n 2,\n i({\n __tauriModule: 'Fs',\n message: {\n cmd: 'writeFile',\n path: r.path,\n contents: r.contents,\n options: o\n }\n })\n ]\n )\n })\n })\n )\n}\n!(function (t) {\n ;(t[(t.Audio = 1)] = 'Audio'),\n (t[(t.Cache = 2)] = 'Cache'),\n (t[(t.Config = 3)] = 'Config'),\n (t[(t.Data = 4)] = 'Data'),\n (t[(t.LocalData = 5)] = 'LocalData'),\n (t[(t.Desktop = 6)] = 'Desktop'),\n (t[(t.Document = 7)] = 'Document'),\n (t[(t.Download = 8)] = 'Download'),\n (t[(t.Executable = 9)] = 'Executable'),\n (t[(t.Font = 10)] = 'Font'),\n (t[(t.Home = 11)] = 'Home'),\n (t[(t.Picture = 12)] = 'Picture'),\n (t[(t.Public = 13)] = 'Public'),\n (t[(t.Runtime = 14)] = 'Runtime'),\n (t[(t.Template = 15)] = 'Template'),\n (t[(t.Video = 16)] = 'Video'),\n (t[(t.Resource = 17)] = 'Resource'),\n (t[(t.App = 18)] = 'App'),\n (t[(t.Current = 19)] = 'Current')\n})(r || (r = {}))\nfunction a(t) {\n var e = (function (t) {\n if (t.length < 65536) return String.fromCharCode.apply(null, Array.from(t))\n for (var e = '', i = t.length, r = 0; r < i; r++) {\n var o = t.subarray(65536 * r, 65536 * (r + 1))\n e += String.fromCharCode.apply(null, Array.from(o))\n }\n return e\n })(new Uint8Array(t))\n return btoa(e)\n}\nfunction s(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return (\n 'object' == typeof o && Object.freeze(o),\n 'object' == typeof r && Object.freeze(r),\n [\n 2,\n i({\n __tauriModule: 'Fs',\n message: {\n cmd: 'writeBinaryFile',\n path: r.path,\n contents: a(r.contents),\n options: o\n }\n })\n ]\n )\n })\n })\n )\n}\nfunction c(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'readDir', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction d(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'createDir', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction f(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'removeDir', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction l(r, o, n) {\n return (\n void 0 === n && (n = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'copyFile', source: r, destination: o, options: n }\n })\n ]\n })\n })\n )\n}\nfunction m(r, o) {\n return (\n void 0 === o && (o = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'removeFile', path: r, options: o }\n })\n ]\n })\n })\n )\n}\nfunction p(r, o, n) {\n return (\n void 0 === n && (n = {}),\n t(this, void 0, void 0, function () {\n return e(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'Fs',\n message: { cmd: 'renameFile', oldPath: r, newPath: o, options: n }\n })\n ]\n })\n })\n )\n}\nvar h = Object.freeze({\n __proto__: null,\n get BaseDirectory() {\n return r\n },\n get Dir() {\n return r\n },\n readTextFile: o,\n readBinaryFile: n,\n writeFile: u,\n writeBinaryFile: s,\n readDir: c,\n createDir: d,\n removeDir: f,\n copyFile: l,\n removeFile: m,\n renameFile: p\n})\nexport {\n r as B,\n n as a,\n s as b,\n c,\n d,\n f as e,\n h as f,\n l as g,\n m as h,\n p as i,\n o as r,\n u as w\n}\n","\n\n
\n \n \n
\n \n \n
\n
\n \n \n
\n\n
\n\n\n","\n\n
\n \n \n \n\n","import { _ as t, a as n, b as e } from './tauri-56299985.js'\nimport { i as r } from './tauri-05b15753.js'\nvar i\n!(function (t) {\n ;(t[(t.JSON = 1)] = 'JSON'),\n (t[(t.Text = 2)] = 'Text'),\n (t[(t.Binary = 3)] = 'Binary')\n})(i || (i = {}))\nvar o = (function () {\n function t(t, n) {\n ;(this.type = t), (this.payload = n)\n }\n return (\n (t.form = function (n) {\n return new t('Form', n)\n }),\n (t.json = function (n) {\n return new t('Json', n)\n }),\n (t.text = function (n) {\n return new t('Text', n)\n }),\n (t.bytes = function (n) {\n return new t('Bytes', n)\n }),\n t\n )\n })(),\n u = (function () {\n function i(t) {\n this.id = t\n }\n return (\n (i.prototype.drop = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n r({\n __tauriModule: 'Http',\n message: { cmd: 'dropClient', client: this.id }\n })\n ]\n })\n })\n }),\n (i.prototype.request = function (e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n r({\n __tauriModule: 'Http',\n message: { cmd: 'httpRequest', client: this.id, options: e }\n })\n ]\n })\n })\n }),\n (i.prototype.get = function (r, i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.request(e({ method: 'GET', url: r }, i))]\n })\n })\n }),\n (i.prototype.post = function (r, i, o) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.request(e({ method: 'POST', url: r, body: i }, o))]\n })\n })\n }),\n (i.prototype.put = function (r, i, o) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.request(e({ method: 'PUT', url: r, body: i }, o))]\n })\n })\n }),\n (i.prototype.patch = function (r, i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.request(e({ method: 'PATCH', url: r }, i))]\n })\n })\n }),\n (i.prototype.delete = function (r, i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.request(e({ method: 'DELETE', url: r }, i))]\n })\n })\n }),\n i\n )\n })()\nfunction s(e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n r({\n __tauriModule: 'Http',\n message: { cmd: 'createClient', options: e }\n }).then(function (t) {\n return new u(t)\n })\n ]\n })\n })\n}\nvar c = null\nfunction d(r, i) {\n var o\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n switch (t.label) {\n case 0:\n return null !== c ? [3, 2] : [4, s()]\n case 1:\n ;(c = t.sent()), (t.label = 2)\n case 2:\n return [\n 2,\n c.request(\n e(\n {\n url: r,\n method:\n null !== (o = null == i ? void 0 : i.method) && void 0 !== o\n ? o\n : 'GET'\n },\n i\n )\n )\n ]\n }\n })\n })\n}\nvar f = Object.freeze({\n __proto__: null,\n get ResponseType() {\n return i\n },\n Body: o,\n Client: u,\n getClient: s,\n fetch: d\n})\nexport { o as B, u as C, i as R, d as f, s as g, f as h }\n","\n\n
\n \n \n
\n \n \n\n","\n\n\n","import { _ as t, a as n, d as i, b as e } from './tauri-56299985.js'\nimport { i as o } from './tauri-05b15753.js'\nimport { l as r, o as u, e as s } from './event-f9c41e5c.js'\nfunction d() {\n return new f(window.__TAURI__.__currentWindow.label)\n}\nfunction c() {\n return window.__TAURI__.__windows\n}\nvar a = ['tauri://created', 'tauri://error'],\n f = (function () {\n function i(t) {\n ;(this.label = t), (this.listeners = Object.create(null))\n }\n return (\n (i.prototype.listen = function (i, e) {\n return t(this, void 0, void 0, function () {\n var t = this\n return n(this, function (n) {\n return this._handleTauriEvent(i, e)\n ? [\n 2,\n Promise.resolve(function () {\n var n = t.listeners[i]\n n.splice(n.indexOf(e), 1)\n })\n ]\n : [2, r(i, e)]\n })\n })\n }),\n (i.prototype.once = function (i, e) {\n return t(this, void 0, void 0, function () {\n var t = this\n return n(this, function (n) {\n return this._handleTauriEvent(i, e)\n ? [\n 2,\n Promise.resolve(function () {\n var n = t.listeners[i]\n n.splice(n.indexOf(e), 1)\n })\n ]\n : [2, u(i, e)]\n })\n })\n }),\n (i.prototype.emit = function (i, e) {\n return t(this, void 0, void 0, function () {\n var t, o\n return n(this, function (n) {\n if (a.includes(i)) {\n for (t = 0, o = this.listeners[i] || []; t < o.length; t++)\n (0, o[t])({ event: i, id: -1, payload: e })\n return [2, Promise.resolve()]\n }\n return [2, s(i, this.label, e)]\n })\n })\n }),\n (i.prototype._handleTauriEvent = function (t, n) {\n return (\n !!a.includes(t) &&\n (t in this.listeners\n ? this.listeners[t].push(n)\n : (this.listeners[t] = [n]),\n !0)\n )\n }),\n i\n )\n })(),\n h = (function (r) {\n function u(i, u) {\n void 0 === u && (u = {})\n var s = r.call(this, i) || this\n return (\n o({\n __tauriModule: 'Window',\n message: { cmd: 'createWebview', options: e({ label: i }, u) }\n })\n .then(function () {\n return t(s, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.emit('tauri://created')]\n })\n })\n })\n .catch(function (i) {\n return t(s, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, this.emit('tauri://error', i)]\n })\n })\n }),\n s\n )\n }\n return (\n i(u, r),\n (u.getByLabel = function (t) {\n return c().some(function (n) {\n return n.label === t\n })\n ? new f(t)\n : null\n }),\n u\n )\n })(f),\n l = new ((function () {\n function i() {}\n return (\n (i.prototype.setResizable = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setResizable', resizable: i }\n })\n ]\n })\n })\n }),\n (i.prototype.setTitle = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setTitle', title: i }\n })\n ]\n })\n })\n }),\n (i.prototype.maximize = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'maximize' } })\n ]\n })\n })\n }),\n (i.prototype.unmaximize = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'unmaximize' } })\n ]\n })\n })\n }),\n (i.prototype.minimize = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'minimize' } })\n ]\n })\n })\n }),\n (i.prototype.unminimize = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'unminimize' } })\n ]\n })\n })\n }),\n (i.prototype.show = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, o({ __tauriModule: 'Window', message: { cmd: 'show' } })]\n })\n })\n }),\n (i.prototype.hide = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [2, o({ __tauriModule: 'Window', message: { cmd: 'hide' } })]\n })\n })\n }),\n (i.prototype.close = function () {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'close' } })\n ]\n })\n })\n }),\n (i.prototype.setDecorations = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setDecorations', decorations: i }\n })\n ]\n })\n })\n }),\n (i.prototype.setAlwaysOnTop = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setAlwaysOnTop', alwaysOnTop: i }\n })\n ]\n })\n })\n }),\n (i.prototype.setWidth = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setWidth', width: i }\n })\n ]\n })\n })\n }),\n (i.prototype.setHeight = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setHeight', height: i }\n })\n ]\n })\n })\n }),\n (i.prototype.resize = function (i, e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'resize', width: i, height: e }\n })\n ]\n })\n })\n }),\n (i.prototype.setMinSize = function (i, e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setMinSize', minWidth: i, minHeight: e }\n })\n ]\n })\n })\n }),\n (i.prototype.setMaxSize = function (i, e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setMaxSize', maxWidth: i, maxHeight: e }\n })\n ]\n })\n })\n }),\n (i.prototype.setX = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'setX', x: i } })\n ]\n })\n })\n }),\n (i.prototype.setY = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({ __tauriModule: 'Window', message: { cmd: 'setY', y: i } })\n ]\n })\n })\n }),\n (i.prototype.setPosition = function (i, e) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setPosition', x: i, y: e }\n })\n ]\n })\n })\n }),\n (i.prototype.setFullscreen = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setFullscreen', fullscreen: i }\n })\n ]\n })\n })\n }),\n (i.prototype.setIcon = function (i) {\n return t(this, void 0, void 0, function () {\n return n(this, function (t) {\n return [\n 2,\n o({\n __tauriModule: 'Window',\n message: { cmd: 'setIcon', icon: i }\n })\n ]\n })\n })\n }),\n i\n )\n })())(),\n m = Object.freeze({\n __proto__: null,\n WebviewWindow: h,\n getCurrent: d,\n getAll: c,\n appWindow: l\n })\nexport { h as W, c as a, l as b, d as g, m as w }\n","\n\n
\n
\n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n X\n \n
\n
\n Y\n \n
\n
\n\n
\n
\n Width\n \n
\n
\n Height\n \n
\n
\n\n
\n
\n Min width\n \n
\n
\n Min height\n \n
\n
\n\n
\n
\n Max width\n \n
\n
\n Max height\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n\n\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';\nexport { get_store_value as get } from '../internal/index.mjs';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = [];\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (let i = 0; i < subscribers.length; i += 1) {\n const s = subscribers[i];\n s[1]();\n subscriber_queue.push(s, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.push(subscriber);\n if (subscribers.length === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n const index = subscribers.indexOf(subscriber);\n if (index !== -1) {\n subscribers.splice(index, 1);\n }\n if (subscribers.length === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","import { _ as t, a as r, t as e } from './tauri-56299985.js'\nimport { i } from './tauri-05b15753.js'\nfunction u(u, n) {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'GlobalShortcut',\n message: { cmd: 'register', shortcut: u, handler: e(n) }\n })\n ]\n })\n })\n}\nfunction n(u, n) {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'GlobalShortcut',\n message: { cmd: 'registerAll', shortcuts: u, handler: e(n) }\n })\n ]\n })\n })\n}\nfunction o(e) {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'GlobalShortcut',\n message: { cmd: 'isRegistered', shortcut: e }\n })\n ]\n })\n })\n}\nfunction s(e) {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'GlobalShortcut',\n message: { cmd: 'unregister', shortcut: e }\n })\n ]\n })\n })\n}\nfunction a() {\n return t(this, void 0, void 0, function () {\n return r(this, function (t) {\n return [\n 2,\n i({\n __tauriModule: 'GlobalShortcut',\n message: { cmd: 'unregisterAll' }\n })\n ]\n })\n })\n}\nvar c = Object.freeze({\n __proto__: null,\n register: u,\n registerAll: n,\n isRegistered: o,\n unregister: s,\n unregisterAll: a\n})\nexport { n as a, a as b, c as g, o as i, u as r, s as u }\n","\n\n
\n
\n \n \n
\n
\n {#each $shortcuts as savedShortcut}\n
\n {savedShortcut}\n
\n {/each}\n {#if $shortcuts.length}\n \n {/if}\n
\n
\n","\n\n
\n
\n \n \n \n {#if child}\n \n \n {/if}\n
\n
\n","import { _ as t, a as n } from './tauri-56299985.js'\nimport { l as o, e as a, o as r } from './event-f9c41e5c.js'\nfunction i() {\n return t(this, void 0, void 0, function () {\n function t() {\n r && r(), (r = void 0)\n }\n var r\n return n(this, function (n) {\n return [\n 2,\n new Promise(function (n, i) {\n o('tauri://update-status', function (o) {\n var a\n ;(a = null == o ? void 0 : o.payload).error\n ? (t(), i(a.error))\n : 'DONE' === a.status && (t(), n())\n })\n .then(function (t) {\n r = t\n })\n .catch(function (n) {\n throw (t(), n)\n }),\n console.log('EMIT EVENT'),\n a('tauri://update-install').catch(function (n) {\n throw (t(), n)\n })\n })\n ]\n })\n })\n}\nfunction u() {\n return t(this, void 0, void 0, function () {\n function t() {\n i && i(), (i = void 0)\n }\n var i\n return n(this, function (n) {\n return [\n 2,\n new Promise(function (n, u) {\n r('tauri://update-available', function (o) {\n var a\n ;(a = null == o ? void 0 : o.payload),\n t(),\n n({ manifest: a, shouldUpdate: !0 })\n }).catch(function (n) {\n throw (t(), n)\n }),\n o('tauri://update-status', function (o) {\n var a\n ;(a = null == o ? void 0 : o.payload).error\n ? (t(), u(a.error))\n : 'UPTODATE' === a.status && (t(), n({ shouldUpdate: !1 }))\n })\n .then(function (t) {\n i = t\n })\n .catch(function (n) {\n throw (t(), n)\n }),\n a('tauri://update').catch(function (n) {\n throw (t(), n)\n })\n })\n ]\n })\n })\n}\nvar e = Object.freeze({ __proto__: null, installUpdate: i, checkUpdate: u })\nexport { u as c, i, e as u }\n","\n\n
\n \n \n
\n","\n\n
\n \n
\n
\n {#each views as view}\n

select(view)}\n >\n {view.label}\n

\n {/each}\n
\n
\n \n
\n
\n
\n

\n Tauri Console\n {\n responses = [\"\"];\n }}>clear\n

\n {responses}\n
\n
\n","import App from \"./App.svelte\";\n\nconst app = new App({\n target: document.body,\n});\n\nexport default app;\n"],"names":["n","e","r","o","a","i","t","s","u","d","getName","getVersion","getTauriVersion","exit","relaunch","getMatches","c","listen","invoke","emit","f","l","arrayBufferToBase64","open","readBinaryFile","save","Dir","readDir","getClient","Body","appWindow","openDialog","registerShortcut","unregisterShortcut","unregisterAllShortcuts","Command","checkUpdate","installUpdate"],"mappings":";;;;;IAAA,SAAS,IAAI,GAAG,GAAG;IAWnB,SAAS,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACzD,IAAI,OAAO,CAAC,aAAa,GAAG;IAC5B,QAAQ,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACzC,KAAK,CAAC;IACN,CAAC;IACD,SAAS,GAAG,CAAC,EAAE,EAAE;IACjB,IAAI,OAAO,EAAE,EAAE,CAAC;IAChB,CAAC;IACD,SAAS,YAAY,GAAG;IACxB,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IACD,SAAS,OAAO,CAAC,GAAG,EAAE;IACtB,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,SAAS,WAAW,CAAC,KAAK,EAAE;IAC5B,IAAI,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;IACvC,CAAC;IACD,SAAS,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE;IAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,KAAK,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC;IAClG,CAAC;IAID,SAAS,QAAQ,CAAC,GAAG,EAAE;IACvB,IAAI,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACzC,CAAC;IACD,SAAS,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE;IACrC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,UAAU,EAAE;IAChE,QAAQ,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAC9E,KAAK;IACL,CAAC;IACD,SAAS,SAAS,CAAC,KAAK,EAAE,GAAG,SAAS,EAAE;IACxC,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE;IACvB,QAAQ,OAAO,IAAI,CAAC;IACpB,KAAK;IACL,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC;IAChD,IAAI,OAAO,KAAK,CAAC,WAAW,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC;IACjE,CAAC;IAMD,SAAS,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;IACzD,IAAI,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7D,CAAC;AAsID;IACA,SAAS,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE;IAC9B,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,SAAS,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IACtC,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,SAAS,MAAM,CAAC,IAAI,EAAE;IACtB,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,SAAS,YAAY,CAAC,UAAU,EAAE,SAAS,EAAE;IAC7C,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IACnD,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC;IACzB,YAAY,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvC,KAAK;IACL,CAAC;IACD,SAAS,OAAO,CAAC,IAAI,EAAE;IACvB,IAAI,OAAO,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAmBD,SAAS,IAAI,CAAC,IAAI,EAAE;IACpB,IAAI,OAAO,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,SAAS,KAAK,GAAG;IACjB,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAID,SAAS,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE;IAC/C,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,IAAI,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IACD,SAAS,eAAe,CAAC,EAAE,EAAE;IAC7B,IAAI,OAAO,UAAU,KAAK,EAAE;IAC5B,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;IAC/B;IACA,QAAQ,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpC,KAAK,CAAC;IACN,CAAC;IAeD,SAAS,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;IACtC,IAAI,IAAI,KAAK,IAAI,IAAI;IACrB,QAAQ,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACxC,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,KAAK;IACnD,QAAQ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAiDD,SAAS,SAAS,CAAC,KAAK,EAAE;IAC1B,IAAI,OAAO,KAAK,KAAK,EAAE,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC;IACxC,CAAC;IAQD,SAAS,QAAQ,CAAC,OAAO,EAAE;IAC3B,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAuCD,SAAS,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE;IACvC,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC;IAC7C,CAAC;IASD,SAAS,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE;IAChD,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,SAAS,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE;IACtC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IACvD,QAAQ,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzC,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE;IACtC,YAAY,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IACnC,YAAY,OAAO;IACnB,SAAS;IACT,KAAK;IACL,CAAC;IAOD,SAAS,YAAY,CAAC,MAAM,EAAE;IAC9B,IAAI,MAAM,eAAe,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAClF,IAAI,OAAO,eAAe,IAAI,eAAe,CAAC,OAAO,CAAC;IACtD,CAAC;IA4DD,SAAS,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE;IACpC,IAAI,MAAM,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAClD,IAAI,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,CAAC;IACb,CAAC;AAmLD;IACA,IAAI,iBAAiB,CAAC;IACtB,SAAS,qBAAqB,CAAC,SAAS,EAAE;IAC1C,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAClC,CAAC;IACD,SAAS,qBAAqB,GAAG;IACjC,IAAI,IAAI,CAAC,iBAAiB;IAC1B,QAAQ,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IAC5E,IAAI,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAID,SAAS,OAAO,CAAC,EAAE,EAAE;IACrB,IAAI,qBAAqB,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAID,SAAS,SAAS,CAAC,EAAE,EAAE;IACvB,IAAI,qBAAqB,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;AAiCD;IACA,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAE5B,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAC5B,MAAM,eAAe,GAAG,EAAE,CAAC;IAC3B,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3C,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,SAAS,eAAe,GAAG;IAC3B,IAAI,IAAI,CAAC,gBAAgB,EAAE;IAC3B,QAAQ,gBAAgB,GAAG,IAAI,CAAC;IAChC,QAAQ,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,KAAK;IACL,CAAC;IAKD,SAAS,mBAAmB,CAAC,EAAE,EAAE;IACjC,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAID,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,SAAS,KAAK,GAAG;IACjB,IAAI,IAAI,QAAQ;IAChB,QAAQ,OAAO;IACf,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,GAAG;IACP;IACA;IACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IAC7D,YAAY,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAClD,YAAY,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC7C,YAAY,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACjC,SAAS;IACT,QAAQ,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACpC,QAAQ,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,QAAQ,OAAO,iBAAiB,CAAC,MAAM;IACvC,YAAY,iBAAiB,CAAC,GAAG,EAAE,EAAE,CAAC;IACtC;IACA;IACA;IACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IAC7D,YAAY,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACjD,YAAY,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;IAC/C;IACA,gBAAgB,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,gBAAgB,QAAQ,EAAE,CAAC;IAC3B,aAAa;IACb,SAAS;IACT,QAAQ,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,KAAK,QAAQ,gBAAgB,CAAC,MAAM,EAAE;IACtC,IAAI,OAAO,eAAe,CAAC,MAAM,EAAE;IACnC,QAAQ,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC;IAChC,KAAK;IACL,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IACD,SAAS,MAAM,CAAC,EAAE,EAAE;IACpB,IAAI,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,EAAE;IAC9B,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC;IACpB,QAAQ,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IAClC,QAAQ,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;IAC/B,QAAQ,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACpD,QAAQ,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrD,KAAK;IACL,CAAC;IAeD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC;IACX,SAAS,YAAY,GAAG;IACxB,IAAI,MAAM,GAAG;IACb,QAAQ,CAAC,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,EAAE;IACb,QAAQ,CAAC,EAAE,MAAM;IACjB,KAAK,CAAC;IACN,CAAC;IACD,SAAS,YAAY,GAAG;IACxB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE;IACnB,QAAQ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1B,KAAK;IACL,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,SAAS,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE;IACrC,IAAI,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE;IAC1B,QAAQ,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,QAAQ,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvB,KAAK;IACL,CAAC;IACD,SAAS,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE;IACxD,IAAI,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE;IAC1B,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;IAC/B,YAAY,OAAO;IACnB,QAAQ,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,QAAQ,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;IAC5B,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,YAAY,IAAI,QAAQ,EAAE;IAC1B,gBAAgB,IAAI,MAAM;IAC1B,oBAAoB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,gBAAgB,QAAQ,EAAE,CAAC;IAC3B,aAAa;IACb,SAAS,CAAC,CAAC;IACX,QAAQ,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvB,KAAK;IACL,CAAC;AAwSD;IACA,MAAM,OAAO,IAAI,OAAO,MAAM,KAAK,WAAW;IAC9C,MAAM,MAAM;IACZ,MAAM,OAAO,UAAU,KAAK,WAAW;IACvC,UAAU,UAAU;IACpB,UAAU,MAAM,CAAC,CAAC;IA6RlB,SAAS,gBAAgB,CAAC,KAAK,EAAE;IACjC,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC;IACvB,CAAC;IAID,SAAS,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE;IACnE,IAAI,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1E,IAAI,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,aAAa,EAAE;IACxB;IACA,QAAQ,mBAAmB,CAAC,MAAM;IAClC,YAAY,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACzE,YAAY,IAAI,UAAU,EAAE;IAC5B,gBAAgB,UAAU,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;IACnD,aAAa;IACb,iBAAiB;IACjB;IACA;IACA,gBAAgB,OAAO,CAAC,cAAc,CAAC,CAAC;IACxC,aAAa;IACb,YAAY,SAAS,CAAC,EAAE,CAAC,QAAQ,GAAG,EAAE,CAAC;IACvC,SAAS,CAAC,CAAC;IACX,KAAK;IACL,IAAI,YAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9C,CAAC;IACD,SAAS,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE;IACjD,IAAI,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;IAC5B,IAAI,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,EAAE;IAC9B,QAAQ,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD;IACA;IACA,QAAQ,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3C,QAAQ,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;IACpB,KAAK;IACL,CAAC;IACD,SAAS,UAAU,CAAC,SAAS,EAAE,CAAC,EAAE;IAClC,IAAI,IAAI,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;IACtC,QAAQ,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzC,QAAQ,eAAe,EAAE,CAAC;IAC1B,QAAQ,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,KAAK;IACL,IAAI,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,SAAS,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;IAC7F,IAAI,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;IAC/C,IAAI,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,GAAG;IAC9B,QAAQ,QAAQ,EAAE,IAAI;IACtB,QAAQ,GAAG,EAAE,IAAI;IACjB;IACA,QAAQ,KAAK;IACb,QAAQ,MAAM,EAAE,IAAI;IACpB,QAAQ,SAAS;IACjB,QAAQ,KAAK,EAAE,YAAY,EAAE;IAC7B;IACA,QAAQ,QAAQ,EAAE,EAAE;IACpB,QAAQ,UAAU,EAAE,EAAE;IACtB,QAAQ,aAAa,EAAE,EAAE;IACzB,QAAQ,aAAa,EAAE,EAAE;IACzB,QAAQ,YAAY,EAAE,EAAE;IACxB,QAAQ,OAAO,EAAE,IAAI,GAAG,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC;IAC7E;IACA,QAAQ,SAAS,EAAE,YAAY,EAAE;IACjC,QAAQ,KAAK;IACb,QAAQ,UAAU,EAAE,KAAK;IACzB,KAAK,CAAC;IACN,IAAI,IAAI,KAAK,GAAG,KAAK,CAAC;IACtB,IAAI,EAAE,CAAC,GAAG,GAAG,QAAQ;IACrB,UAAU,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,KAAK;IACxE,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IACtD,YAAY,IAAI,EAAE,CAAC,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE;IACnE,gBAAgB,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvC,gBAAgB,IAAI,KAAK;IACzB,oBAAoB,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAC7C,aAAa;IACb,YAAY,OAAO,GAAG,CAAC;IACvB,SAAS,CAAC;IACV,UAAU,EAAE,CAAC;IACb,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;IAChB,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IAC9B;IACA,IAAI,EAAE,CAAC,QAAQ,GAAG,eAAe,GAAG,eAAe,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE;IACxB,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE;IAC7B,YAAY,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD;IACA,YAAY,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAChD,YAAY,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,SAAS;IACT,aAAa;IACb;IACA,YAAY,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;IAC3C,SAAS;IACT,QAAQ,IAAI,OAAO,CAAC,KAAK;IACzB,YAAY,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IACjD,QAAQ,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1F,QAAQ,KAAK,EAAE,CAAC;IAChB,KAAK;IACL,IAAI,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IA8CD;IACA;IACA;IACA,MAAM,eAAe,CAAC;IACtB,IAAI,QAAQ,GAAG;IACf,QAAQ,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACnC,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC7B,KAAK;IACL,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE;IACxB,QAAQ,MAAM,SAAS,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACtF,QAAQ,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,QAAQ,OAAO,MAAM;IACrB,YAAY,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,YAAY,IAAI,KAAK,KAAK,CAAC,CAAC;IAC5B,gBAAgB,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3C,SAAS,CAAC;IACV,KAAK;IACL,IAAI,IAAI,CAAC,OAAO,EAAE;IAClB,QAAQ,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;IAC9C,YAAY,IAAI,CAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;IACtC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC,YAAY,IAAI,CAAC,EAAE,CAAC,UAAU,GAAG,KAAK,CAAC;IACvC,SAAS;IACT,KAAK;IACL,CAAC;AACD;IACA,SAAS,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE;IACpC,IAAI,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,SAAS,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE;IAClC,IAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzB,CAAC;IACD,SAAS,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAC1C,IAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IACD,SAAS,UAAU,CAAC,IAAI,EAAE;IAC1B,IAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAgBD,SAAS,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE;IAC9F,IAAI,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC;IACvG,IAAI,IAAI,mBAAmB;IAC3B,QAAQ,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzC,IAAI,IAAI,oBAAoB;IAC5B,QAAQ,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC1C,IAAI,YAAY,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACnF,IAAI,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,IAAI,OAAO,MAAM;IACjB,QAAQ,YAAY,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1F,QAAQ,OAAO,EAAE,CAAC;IAClB,KAAK,CAAC;IACN,CAAC;IACD,SAAS,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;IAC1C,IAAI,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACjC,IAAI,IAAI,KAAK,IAAI,IAAI;IACrB,QAAQ,YAAY,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IACtE;IACA,QAAQ,YAAY,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IASD,SAAS,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE;IAClC,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC;IACrB,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;IAC/B,QAAQ,OAAO;IACf,IAAI,YAAY,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,SAAS,sBAAsB,CAAC,GAAG,EAAE;IACrC,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,EAAE,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,CAAC,EAAE;IACzF,QAAQ,IAAI,GAAG,GAAG,gDAAgD,CAAC;IACnE,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,GAAG,IAAI,MAAM,CAAC,QAAQ,IAAI,GAAG,EAAE;IAC3E,YAAY,GAAG,IAAI,+DAA+D,CAAC;IACnF,SAAS;IACT,QAAQ,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,KAAK;IACL,CAAC;IACD,SAAS,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;IAC1C,IAAI,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;IAC9C,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IACjF,SAAS;IACT,KAAK;IACL,CAAC;IACD;IACA;IACA;IACA,MAAM,kBAAkB,SAAS,eAAe,CAAC;IACjD,IAAI,WAAW,CAAC,OAAO,EAAE;IACzB,QAAQ,IAAI,CAAC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;IAChE,YAAY,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC7D,SAAS;IACT,QAAQ,KAAK,EAAE,CAAC;IAChB,KAAK;IACL,IAAI,QAAQ,GAAG;IACf,QAAQ,KAAK,CAAC,QAAQ,EAAE,CAAC;IACzB,QAAQ,IAAI,CAAC,QAAQ,GAAG,MAAM;IAC9B,YAAY,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC5D,SAAS,CAAC;IACV,KAAK;IACL,IAAI,cAAc,GAAG,GAAG;IACxB,IAAI,aAAa,GAAG,GAAG;IACvB;;IC7oDA;IACA;AACA;IACA;IACA;AACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,IAAI,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACxB,EAAE,OAAO,CAAC,CAAC;IACX,IAAI,MAAM,CAAC,cAAc;IACzB,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK;IACvC,MAAM,UAAU,CAAC,EAAE,CAAC,EAAE;IACtB,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAC;IACvB,OAAO,CAAC;IACR,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;IACpB,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC;IACrB,QAAQ,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAC;IACnE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACZ,EAAC;IACD,SAASA,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,IAAI,UAAU,IAAI,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC;IAC1C,IAAI,MAAM,IAAI,SAAS;IACvB,MAAM,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B;IAC1E,KAAK;IACL,EAAE,SAAS,CAAC,GAAG;IACf,IAAI,IAAI,CAAC,WAAW,GAAG,EAAC;IACxB,GAAG;IACH,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,CAAC,SAAS;IAChB,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,EAAC;IAC7E,CAAC;IACD,IAAIC,GAAC,GAAG,YAAY;IACpB,EAAE,OAAO,CAACA,GAAC;IACX,IAAI,MAAM,CAAC,MAAM;IACjB,IAAI,UAAU,CAAC,EAAE;IACjB,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;IACzD,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IACvC,UAAU,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAC;IACrE,MAAM,OAAO,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;IAC7B,EAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACvB,EAAE,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE;IAClD,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IAClB,MAAM,IAAI;IACV,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC;IACpB,OAAO,CAAC,OAAO,CAAC,EAAE;IAClB,QAAQ,CAAC,CAAC,CAAC,EAAC;IACZ,OAAO;IACP,KAAK;IACL,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IAClB,MAAM,IAAI;IACV,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAC;IACrB,OAAO,CAAC,OAAO,CAAC,EAAE;IAClB,QAAQ,CAAC,CAAC,CAAC,EAAC;IACZ,OAAO;IACP,KAAK;IACL,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IAClB,MAAM,IAAI,EAAC;IACX,MAAM,CAAC,CAAC,IAAI;IACZ,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACpB,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK;IACvB,UAAU,CAAC,YAAY,CAAC;IACxB,cAAc,CAAC;IACf,cAAc,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE;IACjC,gBAAgB,CAAC,CAAC,CAAC,EAAC;IACpB,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,EAAC;IAC5B,KAAK;IACL,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAC;IACvC,GAAG,CAAC;IACJ,CAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,IAAI,CAAC;IACP,IAAI,CAAC;IACL,IAAI,CAAC;IACL,IAAI,CAAC;IACL,IAAI,CAAC,GAAG;IACR,MAAM,KAAK,EAAE,CAAC;IACd,MAAM,IAAI,EAAE,YAAY;IACxB,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,QAAQ,OAAO,CAAC,CAAC,CAAC,CAAC;IACnB,OAAO;IACP,MAAM,IAAI,EAAE,EAAE;IACd,MAAM,GAAG,EAAE,EAAE;IACb,MAAK;IACL,EAAE;IACF,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;IAClD,IAAI,UAAU,IAAI,OAAO,MAAM;IAC/B,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY;IACxC,QAAQ,OAAO,IAAI;IACnB,OAAO,CAAC;IACR,IAAI,CAAC;IACL,EAAE,CAAC;IACH,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE;IAChB,IAAI,OAAO,UAAU,CAAC,EAAE;IACxB,MAAM,OAAO,CAAC,UAAU,CAAC,EAAE;IAC3B,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC;IACrE,QAAQ,OAAO,CAAC;IAChB,UAAU,IAAI;IACd,YAAY;IACZ,eAAe,CAAC,CAAC,GAAG,CAAC;IACrB,cAAc,CAAC;IACf,iBAAiB,CAAC;IAClB,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1B,sBAAsB,CAAC,CAAC,MAAM;IAC9B,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAC1B,sBAAsB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjE,sBAAsB,CAAC,CAAC,IAAI,CAAC;IAC7B,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;IAC3C;IACA,cAAc,OAAO,CAAC;IACtB,YAAY,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,cAAc,KAAK,CAAC,CAAC;IACrB,cAAc,KAAK,CAAC;IACpB,gBAAgB,CAAC,GAAG,EAAC;IACrB,gBAAgB,KAAK;IACrB,cAAc,KAAK,CAAC;IACpB,gBAAgB,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;IAC3D,cAAc,KAAK,CAAC;IACpB,gBAAgB,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAC;IAChD,gBAAgB,QAAQ;IACxB,cAAc,KAAK,CAAC;IACpB,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,GAAE;IAChD,gBAAgB,QAAQ;IACxB,cAAc;IACd,gBAAgB;IAChB,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI;IAC/B,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACtD,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,kBAAkB;IAClB,kBAAkB,CAAC,GAAG,EAAC;IACvB,kBAAkB,QAAQ;IAC1B,iBAAiB;IACjB,gBAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACxE,kBAAkB,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAC;IAChC,kBAAkB,KAAK;IACvB,iBAAiB;IACjB,gBAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;IAClD,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAC;IAC5C,kBAAkB,KAAK;IACvB,iBAAiB;IACjB,gBAAgB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;IACzC,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAC;IAClD,kBAAkB,KAAK;IACvB,iBAAiB;IACjB,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,GAAE;IACjD,gBAAgB,QAAQ;IACxB,aAAa;IACb,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAC;IAC5B,WAAW,CAAC,OAAO,CAAC,EAAE;IACT,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAC;IAClC,WAAW,SAAS;IACpB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAC;IACrB,WAAW;IACX,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,QAAQ,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;IACxD,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChB,KAAK;IACL,GAAG;IACH,CAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAC;IAC1B,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY;IACvB,IAAI,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC,EAAC;IAC5B,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAC;IACpC,IAAI,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC;IACxD,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IACvD,GAAG,IAAG;IACN,EAAE;IACF,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE;IACrC,MAAM,KAAK,EAAE,UAAU,CAAC,EAAE;IAC1B,QAAQ,OAAO,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChF,OAAO;IACP,MAAM,QAAQ,EAAE,CAAC,CAAC;IAClB,MAAM,YAAY,EAAE,CAAC,CAAC;IACtB,KAAK,CAAC;IACN,IAAI,CAAC;IACL,EAAE,CAAC;IACH,CAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIH,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOC,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;IACtC,YAAY,IAAI,CAAC,GAAGC,GAAC,CAAC,UAAU,CAAC,EAAE;IACnC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAC;IACvD,eAAe,EAAE,CAAC,CAAC,CAAC;IACpB,cAAc,CAAC,GAAGA,GAAC,CAAC,UAAU,CAAC,EAAE;IACjC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAC;IACvD,eAAe,EAAE,CAAC,CAAC,EAAC;IACpB,YAAY,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAEH,GAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC;IACjE,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAEG,GAAC,EAAE,MAAM,EAAEC,GAAC,EAAE;;IC9M1E,SAASL,GAAC,CAAC,CAAC,EAAE;IACd,EAAE,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOC,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO,CAAC,CAAC,EAAEJ,GAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC/B,KAAK,CAAC;IACN,GAAG,CAAC;IACJ;;ICLA,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACvB,EAAE,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM;IACN,QAAQ,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,QAAQ;IACR,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,OAAO;IAClC,YAAY,OAAO,EAAE;IACrB,cAAc,GAAG,EAAE,SAAS;IAC5B,cAAc,OAAO,EAAE,CAAC;IACxB,cAAc,OAAO,EAAE,CAAC;IACxB,cAAc,SAAS,EAAEH,GAAC,CAAC,CAAC,CAAC;IAC7B,cAAc,IAAI,EAAE,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,aAAa;IACb,WAAW,CAAC;IACZ,SAAS;IACT,MAAM,CAAC;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,IAAIK,GAAC,GAAG,CAAC,YAAY;IACrB,IAAI,SAAS,CAAC,GAAG;IACjB,MAAM,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAC;IAC/C,KAAK;IACL,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACtD,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc;IAChC,YAAY,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1C,aAAa,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAC;IAC1C,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC3C,QAAQ,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc;IACpC,UAAU,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IAC5D,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;IACzB,WAAW;IACX,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACxC,QAAQ,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;IAChD,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,GAAG;IACN,EAAEC,GAAC,GAAG,CAAC,YAAY;IACnB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IAClB,MAAM,IAAI,CAAC,GAAG,GAAG,EAAC;IAClB,KAAK;IACL,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE;IACxC,QAAQ,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcI,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,OAAO;IACtC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;IACxE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,YAAY;IACtC,QAAQ,OAAOC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcI,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,OAAO;IACtC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;IAC5D,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,GAAG;IACN,EAAED,GAAC,GAAG,CAAC,UAAU,CAAC,EAAE;IACpB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACrB,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAC;IAC9B,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAI;IAClC,MAAM;IACN,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;IACvB,SAAS,CAAC,CAAC,MAAM,GAAG,IAAIG,GAAC,EAAE;IAC3B,SAAS,CAAC,CAAC,MAAM,GAAG,IAAIA,GAAC,EAAE;IAC3B,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI;IACrB,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC;IACtB,SAAS,CAAC,CAAC,IAAI,GAAG,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAChD,QAAQ,CAAC;IACT,MAAM,CAAC;IACP,KAAK;IACL,IAAI;IACJ,MAAMP,GAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACb,OAAO,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACnC,QAAQ,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAC;IAChC,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;IAC3B,QAAQ,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC;IAClC,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,YAAY;IACvC,QAAQ,OAAOM,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,IAAI,CAAC,GAAG,KAAI;IACtB,UAAU,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcE,GAAC;IACf,gBAAgB,IAAI,CAAC,OAAO;IAC5B,gBAAgB,IAAI,CAAC,OAAO;IAC5B,gBAAgB,UAAU,CAAC,EAAE;IAC7B,kBAAkB,QAAQ,CAAC,CAAC,KAAK;IACjC,oBAAoB,KAAK,OAAO;IAChC,sBAAsB,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAC;IACjD,sBAAsB,KAAK;IAC3B,oBAAoB,KAAK,YAAY;IACrC,sBAAsB,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAC;IACjD,sBAAsB,KAAK;IAC3B,oBAAoB,KAAK,QAAQ;IACjC,sBAAsB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAC;IACvD,sBAAsB,KAAK;IAC3B,oBAAoB,KAAK,QAAQ;IACjC,sBAAsB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAC;IACvD,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB,IAAI,CAAC,IAAI;IACzB,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;IAClC,gBAAgB,OAAO,IAAIK,GAAC,CAAC,CAAC,CAAC;IAC/B,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,YAAY;IACzC,QAAQ,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,IAAI,CAAC,GAAG,KAAI;IACtB,UAAU,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;IAC1C,gBAAgB,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAC;IAChC,gBAAgB,IAAI,CAAC,GAAG,EAAE;IAC1B,kBAAkB,CAAC,GAAG,GAAE;IACxB,gBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;IACjD,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC;IAC3B,iBAAiB,CAAC;IAClB,kBAAkB,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;IACnD,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC;IAC7B,mBAAmB,CAAC;IACpB,kBAAkB,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;IAC7C,oBAAoB,CAAC,CAAC;IACtB,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI;IAClC,sBAAsB,MAAM,EAAE,CAAC,CAAC,MAAM;IACtC,sBAAsB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1C,sBAAsB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1C,qBAAqB,EAAC;IACtB,mBAAmB,CAAC;IACpB,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAAC;IACpC,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,EAAEM,GAAC,EAAC;IACP,SAASE,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOH,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQI,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,OAAO;IAChC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;IACpD,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAED,GAAC,EAAE,KAAK,EAAEI,GAAC,EAAE,IAAI,EAAEC,GAAC,EAAE;;ICjLxE,SAASP,GAAC,GAAG;IACb,EAAE,OAAOI,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOD,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,KAAK;IAC9B,UAAU,UAAU,EAAE,CAAC,CAAC;IACxB,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE;IAC3C,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASD,GAAC,GAAG;IACb,EAAE,OAAOM,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOD,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,KAAK;IAC9B,UAAU,UAAU,EAAE,CAAC,CAAC;IACxB,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;IACxC,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASO,GAAC,GAAG;IACb,EAAE,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOD,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,KAAK;IAC9B,UAAU,UAAU,EAAE,CAAC,CAAC;IACxB,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE;IAC7C,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASE,GAAC,CAAC,CAAC,EAAE;IACd,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAIG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOD,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUJ,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,KAAK;IAChC,YAAY,UAAU,EAAE,CAAC,CAAC;IAC1B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE;IACjD,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASG,GAAC,GAAG;IACb,EAAE,OAAOE,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOD,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,KAAK;IAC9B,UAAU,UAAU,EAAE,CAAC,CAAC;IACxB,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE;IACtC,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC;IACtB,EAAE,SAAS,EAAE,IAAI;IACjB,EAAE,OAAO,EAAED,GAAC;IACZ,EAAE,UAAU,EAAEE,GAAC;IACf,EAAE,eAAe,EAAEM,GAAC;IACpB,EAAE,QAAQ,EAAEJ,GAAC;IACb,EAAE,IAAI,EAAED,GAAC;IACT,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BCzDwB,GAAO;;;;kCACL,GAAY;;;;8BACjB,GAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDAEI,GAAQ;sDACR,GAAW;;;;;;;+DALnB,GAAO;yEACL,GAAY;gEACjB,GAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAzBvB,OAAO,GAAG,CAAG;SACb,YAAY,GAAG,CAAG;SAClB,OAAO,GAAG,SAAS;;KAEvBO,GAAO,GAAG,IAAI,CAAC,CAAC;sBAAK,OAAO,GAAG,CAAC;;;KAChCC,GAAU,GAAG,IAAI,CAAC,CAAC;sBAAK,OAAO,GAAG,CAAC;;;KACnCC,GAAe,GAAG,IAAI,CAAC,CAAC;sBAAK,YAAY,GAAG,CAAC;;;oBAE9B,QAAQ;YACfC,GAAI;;;oBAGG,WAAW;YAClBC,GAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICblB,SAASb,GAAC,GAAG;IACb,EAAE,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO,CAAC,CAAC,EAAEG,GAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAC7E,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAEJ,GAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6DCEJ,GAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;WARjD,SAAS;;cAEX,UAAU;MACjBc,GAAU,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICJhD,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOf,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,IAAI,CAAC,GAAG,KAAI;IAChB,IAAI,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,OAAO;IAChC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAEG,GAAC,CAAC,CAAC,CAAC,EAAE;IAC7D,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;IAC7B,UAAU,OAAO,YAAY;IAC7B,YAAY,OAAOL,GAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACpD,cAAc,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAC1C,gBAAgB,OAAO,CAAC,CAAC,EAAEE,GAAC,CAAC,CAAC,CAAC,CAAC;IAChC,eAAe,CAAC;IAChB,aAAa,CAAC;IACd,WAAW;IACX,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASA,GAAC,CAAC,CAAC,EAAE;IACd,EAAE,OAAOR,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQJ,GAAC,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;IAC/E,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOH,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOP,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE;IAC1B,UAAU,CAAC,CAAC,CAAC,CAAC,EAAEE,GAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,EAAC;IAC7C,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAASQ,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACpB,EAAE,OAAOhB,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOM,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,QAAQ,CAAC,CAAC,KAAK;IACrB,QAAQ,KAAK,CAAC;IACd,UAAU,OAAO;IACjB,YAAY,CAAC;IACb,YAAYJ,GAAC,CAAC;IACd,cAAc,aAAa,EAAE,OAAO;IACpC,cAAc,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC5E,aAAa,CAAC;IACd,WAAW;IACX,QAAQ,KAAK,CAAC;IACd,UAAU,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9B,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ;;ICpEA,SAASF,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOM,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO,CAAC,CAAC,EAAEE,GAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAEH,GAAC,EAAE,MAAM,EAAEE,GAAC,EAAE,IAAI,EAAEG,GAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8CCiC1B,GAAG;yDACC,GAAc;oDAGhB,GAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAzC1C,SAAS;SAChB,QAAQ;;KAEZ,OAAO;MACL,QAAQ,SAASY,GAAM,CAAC,YAAY,EAAE,SAAS;;;KAEjD,SAAS;UACH,QAAQ;OACV,QAAQ;;;;cAIH,GAAG;MACVC,GAAM,CAAC,eAAe;OACpB,KAAK,EAAE,aAAa;OACpB,OAAO,EAAE,yDAAyD;;;;cAI7D,cAAc;MACrBA,GAAM,CAAC,iBAAiB;OACtB,QAAQ,EAAE,oBAAoB;OAC9B,IAAI,IACF,EAAE,EAAE,CAAC,EACL,IAAI,EAAE,MAAM;SAGb,IAAI,CAAC,SAAS,EACd,KAAK,CAAC,SAAS;;;cAGX,SAAS;MAChBC,GAAI,CAAC,UAAU,EAAE,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICnCjD,SAASd,GAAC,CAAC,CAAC,EAAE;IACd,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOF,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ;IACR,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU;IACV,YAAY,CAAC;IACb,YAAYK,GAAC,CAAC;IACd,cAAc,aAAa,EAAE,QAAQ;IACrC,cAAc,UAAU,EAAE,CAAC,CAAC;IAC5B,cAAc,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE;IACxD,aAAa,CAAC;IACd,WAAW;IACX,QAAQ,CAAC;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASJ,GAAC,CAAC,CAAC,EAAE;IACd,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOF,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ;IACR,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU;IACV,YAAY,CAAC;IACb,YAAYK,GAAC,CAAC;IACd,cAAc,aAAa,EAAE,QAAQ;IACrC,cAAc,UAAU,EAAE,CAAC,CAAC;IAC5B,cAAc,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE;IACxD,aAAa,CAAC;IACd,WAAW;IACX,QAAQ,CAAC;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAED,GAAC,EAAE,IAAI,EAAEH,GAAC,EAAE;;ICxC3D,IAAI,EAAC;IACL,SAASC,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACjE,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASL,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIM,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IACnE,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASG,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ;IACR,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU;IACV,YAAY,CAAC;IACb,YAAYI,GAAC,CAAC;IACd,cAAc,aAAa,EAAE,IAAI;IACjC,cAAc,OAAO,EAAE;IACvB,gBAAgB,GAAG,EAAE,WAAW;IAChC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI;IAC5B,gBAAgB,QAAQ,EAAE,CAAC,CAAC,QAAQ;IACpC,gBAAgB,OAAO,EAAE,CAAC;IAC1B,eAAe;IACf,aAAa,CAAC;IACd,WAAW;IACX,QAAQ,CAAC;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,CAAC,CAAC,UAAU,CAAC,EAAE;IACZ,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,OAAO;IAC9B,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,OAAO;IAC/B,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,QAAQ;IACjC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,MAAM;IAC7B,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,EAAE,GAAG,WAAW;IACvC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,GAAG,SAAS;IACnC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,UAAU;IACrC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,UAAU;IACrC,KAAK,CAAC,EAAE,CAAC,CAAC,UAAU,GAAG,CAAC,EAAE,GAAG,YAAY;IACzC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM;IAC9B,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM;IAC9B,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,EAAE,GAAG,SAAS;IACpC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE,GAAG,QAAQ;IAClC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,EAAE,GAAG,SAAS;IACpC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,EAAE,EAAE,GAAG,UAAU;IACtC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,OAAO;IAChC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,EAAE,EAAE,GAAG,UAAU;IACtC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,GAAG,KAAK;IAC5B,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE,EAAE,GAAG,SAAS,EAAC;IACrC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAC;IACjB,SAASD,GAAC,CAAC,CAAC,EAAE;IACd,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;IACxB,IAAI,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,EAAE,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/E,IAAI,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;IACtD,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC;IACpD,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC;IACzD,KAAK;IACL,IAAI,OAAO,CAAC;IACZ,GAAG,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,EAAC;IACvB,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IACD,SAASG,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAID,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ;IACR,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU,QAAQ,IAAI,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,UAAU;IACV,YAAY,CAAC;IACb,YAAYI,GAAC,CAAC;IACd,cAAc,aAAa,EAAE,IAAI;IACjC,cAAc,OAAO,EAAE;IACvB,gBAAgB,GAAG,EAAE,iBAAiB;IACtC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI;IAC5B,gBAAgB,QAAQ,EAAED,GAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACvC,gBAAgB,OAAO,EAAE,CAAC;IAC1B,eAAe;IACf,aAAa,CAAC;IACd,WAAW;IACX,QAAQ,CAAC;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASY,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIV,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC5D,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASI,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIH,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9D,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASe,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAId,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9D,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAASgB,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACpB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIf,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC/E,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC/D,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IACpB,EAAE;IACF,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAIC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACxC,MAAM,OAAOL,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAClC,QAAQ,OAAO;IACf,UAAU,CAAC;IACX,UAAUI,GAAC,CAAC;IACZ,YAAY,aAAa,EAAE,IAAI;IAC/B,YAAY,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;IAC9E,WAAW,CAAC;IACZ,SAAS;IACT,OAAO,CAAC;IACR,KAAK,CAAC;IACN,EAAE,CAAC;IACH,CAAC;IACO,MAAM,CAAC,MAAM,CAAC;IACtB,EAAE,SAAS,EAAE,IAAI;IACjB,EAAE,IAAI,aAAa,GAAG;IACtB,IAAI,OAAO,CAAC;IACZ,GAAG;IACH,EAAE,IAAI,GAAG,GAAG;IACZ,IAAI,OAAO,CAAC;IACZ,GAAG;IACH,EAAE,YAAY,EAAEF,GAAC;IACjB,EAAE,cAAc,EAAEH,GAAC;IACnB,EAAE,SAAS,EAAEQ,GAAC;IACd,EAAE,eAAe,EAAED,GAAC;IACpB,EAAE,OAAO,EAAES,GAAC;IACZ,EAAE,SAAS,EAAEP,GAAC;IACd,EAAE,SAAS,EAAEW,GAAC;IACd,EAAE,QAAQ,EAAEC,GAAC;IACb,EAAE,UAAU,EAAE,CAAC;IACf,EAAE,UAAU,EAAE,CAAC;IACf,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CC7Ie,GAAW;;;0CAKX,GAAM;;;;qCAGwC,GAAQ;;;;;;sCAIP,GAAS;;;;;;;;;;;;;;qDAIpB,GAAU;qDAGV,GAAU;;;;;;;yEAnB9C,GAAW;gDAAX,GAAW;;;+DAKX,GAAM;2CAAN,GAAM;;;;sCAGwC,GAAQ;;;;uCAIP,GAAS;;;;;;;;;;;;;;;;;;;;;;;aA5F7DC,qBAAmB,CAAC,MAAM,EAAE,QAAQ;SACvC,IAAI,OAAO,IAAI,EAAE,MAAM,KACzB,IAAI,EAAE,0BAA0B;SAE9B,MAAM,OAAO,UAAU;;KAC3B,MAAM,CAAC,MAAM,aAAa,GAAG;UACvB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM;MAC/B,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;;;KAElD,MAAM,CAAC,aAAa,CAAC,IAAI;;;;;;WAfhB,SAAS;SAChB,WAAW,GAAG,IAAI;SAClB,MAAM,GAAG,IAAI;SACb,QAAQ,GAAG,KAAK;SAChB,SAAS,GAAG,KAAK;;cAcZ,UAAU;MACjBC,GAAI;OACF,WAAW;OACX,OAAO,EAAE,MAAM;;;UAGP,IAAI,EAAE,eAAe;UACrB,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAE,CAAC,IAAK,CAAC,CAAC,IAAI;;;;OAIvD,QAAQ;OACR,SAAS;SAER,IAAI,WAAW,GAAG;WACb,KAAK,CAAC,OAAO,CAAC,GAAG;QACnB,SAAS,CAAC,GAAG;;YAET,UAAU,GAAG,GAAG;YAChB,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY;;QAC1CC,GAAc,CAAC,UAAU,EACtB,IAAI,WAAW,QAAQ;aAClB,MAAM;cAEN,UAAU,CAAC,QAAQ,CAAC,MAAM,KAC1B,UAAU,CAAC,QAAQ,CAAC,MAAM;WAE1BF,qBAAmB,KACb,UAAU,CAAC,QAAQ,aACb,MAAM;gBACV,GAAG,GAAG,wBAAwB,GAAG,MAAM;YAC3C,SAAS,CAAC,aAAY,GAAG,GAAG,GAAG,WAAU;;;WAI7C,SAAS,CAAC,GAAG;;;UAGf,SAAS,CAAC,GAAG;;WAGhB,KAAK,CAAC,SAAS,CAAC,GAAG;;SAGzB,KAAK,CAAC,SAAS;;;cAGX,UAAU;MACjBG,GAAI;OACF,WAAW;OACX,OAAO,EAAE,MAAM;;;UAGP,IAAI,EAAE,eAAe;UACrB,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAE,CAAC,IAAK,CAAC,CAAC,IAAI;;;;SAKtD,IAAI,CAAC,SAAS,EACd,KAAK,CAAC,SAAS;;;;;;;;;;MAQN,WAAW;;;;;MAKX,MAAM;;;;;MAGwC,QAAQ;;;;;MAIP,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BCvB1C,GAAG,IAAC,CAAC;;;;;;;gCAAd,GAAG,IAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCADf,GAAU;;;;oCAAf,MAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAOM,GAAU;;;;;;;6DAVM,GAAI;;;;;;;;oCAGzB,GAAU;;;;mCAAf,MAAI;;;;;;;;;;;;;;;;wCAAJ,MAAI;;;sEAOM,GAAU;8CAAV,GAAU;;;;;;;;;;;;;;;;;;;;;;;;aA9Ef,MAAM;WACP,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK;YACxC,SAAS,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI;;;aAG5C,mBAAmB,CAAC,MAAM,EAAE,QAAQ;WACrC,IAAI,OAAO,IAAI,EAAE,MAAM,KAC3B,IAAI,EAAE,0BAA0B;WAE5B,MAAM,OAAO,UAAU;;KAC7B,MAAM,CAAC,MAAM,aAAa,GAAG;YACrB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM;MACjC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;;;KAElD,MAAM,CAAC,aAAa,CAAC,IAAI;;;;;;WAlBhB,SAAS;SAEhB,UAAU,GAAG,EAAE;WAmBb,UAAU,GAAG,MAAM,CAAC,IAAI,CAACC,CAAG,EAC/B,MAAM,CAAE,GAAG,IAAK,KAAK,CAAC,QAAQ,CAAC,GAAG,IAClC,GAAG,CAAE,GAAG,KAAM,GAAG,EAAEA,CAAG,CAAC,GAAG;;cAEpB,IAAI;YACL,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY;YACtC,IAAI,KACR,GAAG,EAAE,MAAM;;YAEP,OAAO,GAAG,MAAM;QAClBF,GAAc,CAAC,UAAU,EAAE,IAAI;QAC/BG,GAAO,CAAC,UAAU,EAAE,IAAI;;MAC5B,OAAO,CACJ,IAAI,WAAW,QAAQ;WAClB,MAAM;YACJ,UAAU,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,QAAQ,CAAC,MAAM;SAC3D,mBAAmB,KAAK,UAAU,CAAC,QAAQ,aAAa,MAAM;gBACtD,GAAG,GAAG,wBAAwB,GAAG,MAAM;UAC7C,SAAS,CAAC,aAAY,GAAG,GAAG,GAAG,WAAU;;;eAGrC,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ;SACtD,SAAS,CACP,0GAAoG;;SAEtG,UAAU;gBACF,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,eAAe;UACzD,SAAS,CAAC,KAAK,GAAG,KAAK;;UACvB,QAAQ,CACL,cAAc,CAAC,WAAW,EAC1B,gBAAgB,CAAC,OAAO;WACvB,SAAS;;aAEL,IAAI,EAAE,UAAU;aAChB,QAAQ,EAAE,SAAS,CAAC,KAAK;;cAGzB,GAAG,EAAE,MAAM;aAEb,KAAK,CAAC,SAAS;;;;;QAKzB,SAAS,CAAC,QAAQ;;SAGrB,KAAK,CAAC,SAAS;;;;;;;;;;MAcN,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICnF1B,IAAItB,IAAC;IACL,CAAC,CAAC,UAAU,CAAC,EAAE;IACZ,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,MAAM;IAC5B,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,MAAM;IAC7B,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,QAAQ,EAAC;IAClC,CAAC,EAAEA,GAAC,KAAKA,GAAC,GAAG,EAAE,CAAC,EAAC;IACjB,IAAIF,GAAC,GAAG,CAAC,YAAY;IACrB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACd,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAC;IAC1C,KAAK;IACL,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE;IAC7B,QAAQ,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,OAAO;IACP,OAAO,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE;IAC7B,QAAQ,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,OAAO;IACP,OAAO,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE;IAC7B,QAAQ,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/B,OAAO;IACP,OAAO,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE;IAC9B,QAAQ,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAChC,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,GAAG;IACN,EAAEK,GAAC,GAAG,CAAC,YAAY;IACnB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IAClB,MAAM,IAAI,CAAC,EAAE,GAAG,EAAC;IACjB,KAAK;IACL,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,YAAY;IACtC,QAAQ,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcE,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,MAAM;IACrC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;IAC/D,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE;IAC1C,QAAQ,OAAOI,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcE,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,MAAM;IACrC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;IAC5E,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACzC,QAAQ,OAAOI,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAACC,GAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACrE,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAC7C,QAAQ,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAACC,GAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAC5C,QAAQ,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAACC,GAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9E,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC3C,QAAQ,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAACC,GAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC5C,QAAQ,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAACC,GAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,IAAG;IACN,SAASM,GAAC,CAAC,CAAC,EAAE;IACd,EAAE,OAAOD,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQE,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,MAAM;IAC/B,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE;IACtD,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;IAC7B,UAAU,OAAO,IAAIM,GAAC,CAAC,CAAC,CAAC;IACzB,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,IAAIQ,GAAC,GAAG,KAAI;IACZ,SAASP,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,IAAI,EAAC;IACP,EAAE,OAAOH,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,QAAQ,CAAC,CAAC,KAAK;IACrB,QAAQ,KAAK,CAAC;IACd,UAAU,OAAO,IAAI,KAAKgB,GAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAET,GAAC,EAAE,CAAC;IAC/C,QAAQ,KAAK,CAAC;IACH,CAACS,GAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,EAAC;IACxC,QAAQ,KAAK,CAAC;IACd,UAAU,OAAO;IACjB,YAAY,CAAC;IACb,YAAYA,GAAC,CAAC,OAAO;IACrB,cAAcf,GAAC;IACf,gBAAgB;IAChB,kBAAkB,GAAG,EAAE,CAAC;IACxB,kBAAkB,MAAM;IACxB,oBAAoB,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC;IAChF,wBAAwB,CAAC;IACzB,wBAAwB,KAAK;IAC7B,iBAAiB;IACjB,gBAAgB,CAAC;IACjB,eAAe;IACf,aAAa;IACb,WAAW;IACX,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC;IACtB,EAAE,SAAS,EAAE,IAAI;IACjB,EAAE,IAAI,YAAY,GAAG;IACrB,IAAI,OAAOI,GAAC;IACZ,GAAG;IACH,EAAE,IAAI,EAAEF,GAAC;IACT,EAAE,MAAM,EAAEK,GAAC;IACX,EAAE,SAAS,EAAED,GAAC;IACd,EAAE,KAAK,EAAEE,GAAC;IACV,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BCvHwD,GAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAAV,GAAU;;;0CAUnD,GAAO;;;;;8CAQP,GAAQ;;;;;;;;;wEAnBQ,GAAe;;;;;;;;6CACU,GAAU;;;gEAUnD,GAAO;2CAAP,GAAO;;;;+CAQP,GAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;SAhDlB,UAAU,GAAG,KAAK;SAClB,OAAO,GAAG,EAAE;SACZ,QAAQ,GAAG,EAAE;WAEN,SAAS;;oBAEL,eAAe;YACtB,MAAM,SAASmB,GAAS;UAC1B,MAAM,GAAG,UAAU,IAAI,KAAK;UAC5B,GAAG,GAAG,OAAO,IAAI,EAAE;YAEjB,OAAO,KACX,GAAG,EAAE,GAAG,IAAI,EAAE,EACd,MAAM,EAAE,MAAM,IAAI,KAAK;;UAItB,QAAQ,CAAC,UAAU,CAAC,GAAG,KAAK,QAAQ,CAAC,QAAQ,CAAC,GAAG,KACjD,QAAQ,CAAC,UAAU,CAAC,GAAG,KAAK,QAAQ,CAAC,QAAQ,CAAC,GAAG;OAElD,OAAO,CAAC,IAAI,GAAGC,GAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;iBACnC,QAAQ,KAAK,EAAE;OACxB,OAAO,CAAC,IAAI,GAAGA,GAAI,CAAC,IAAI,CAAC,QAAQ;;;MAGnC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS;;;;;;;;;;MAKF,UAAU;;;;;MAUnD,OAAO;;;;;MAQP,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mECtB2B,GAAgB;;;;;;;;;;;;;;;;;;;;;;;;;aAzBxD,iBAAiB;SACpB,YAAY,CAAC,oBAAoB,IACnC,IAAI,EAAE,+BAA+B;;;;;;WAJ9B,SAAS;;cAQX,gBAAgB;UACnB,YAAY,CAAC,UAAU,KAAK,SAAS;OACvC,YAAY,CAAC,iBAAiB,GAC3B,IAAI,WAAW,QAAQ;YAClB,QAAQ,KAAK,SAAS;SACxB,iBAAiB;;SAEjB,SAAS,CAAC,gBAAgB,GAAG,QAAQ;;UAGxC,KAAK,CAAC,SAAS;iBACT,YAAY,CAAC,UAAU,KAAK,SAAS;OAC9C,iBAAiB;;OAEjB,SAAS,CAAC,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICpBtC,SAAS,CAAC,GAAG;IACb,EAAE,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC;IACtD,CAAC;IACD,SAAS,CAAC,GAAG;IACb,EAAE,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS;IACnC,CAAC;AACE,QAACzB,GAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;IAC7C,EAAE,CAAC,GAAG,CAAC,YAAY;IACnB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;IACX,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC;IAC/D,KAAK;IACL,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC5C,QAAQ,OAAOE,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,IAAI,CAAC,GAAG,KAAI;IACtB,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/C,gBAAgB;IAChB,kBAAkB,CAAC;IACnB,kBAAkB,OAAO,CAAC,OAAO,CAAC,YAAY;IAC9C,oBAAoB,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAC;IAC1C,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;IAC7C,mBAAmB,CAAC;IACpB,iBAAiB;IACjB,gBAAgB,CAAC,CAAC,EAAEE,GAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC1C,QAAQ,OAAOI,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,IAAI,CAAC,GAAG,KAAI;IACtB,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/C,gBAAgB;IAChB,kBAAkB,CAAC;IACnB,kBAAkB,OAAO,CAAC,OAAO,CAAC,YAAY;IAC9C,oBAAoB,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAC;IAC1C,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;IAC7C,mBAAmB,CAAC;IACpB,iBAAiB;IACjB,gBAAgB,CAAC,CAAC,EAAEQ,GAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC1C,QAAQ,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,IAAI,CAAC,EAAE,EAAC;IAClB,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,IAAII,GAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;IAC/B,cAAc,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;IACxE,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAC;IAC3D,cAAc,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3C,aAAa;IACb,YAAY,OAAO,CAAC,CAAC,EAAEG,GAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3C,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,iBAAiB,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACvD,QAAQ;IACR,UAAU,CAAC,CAACH,GAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzB,WAAW,CAAC,IAAI,IAAI,CAAC,SAAS;IAC9B,cAAc,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,eAAe,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvC,UAAU,CAAC,CAAC,CAAC;IACb,SAAS;IACT,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,GAAG,CAAC;IACP,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;IACpB,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACrB,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAC;IAC9B,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAI;IACrC,MAAM;IACN,QAAQD,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,QAAQ;IACjC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,OAAO,EAAEF,GAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;IACxE,SAAS,CAAC;IACV,WAAW,IAAI,CAAC,YAAY;IAC5B,YAAY,OAAOK,GAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACpD,cAAc,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAC1C,gBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACxD,eAAe,CAAC;IAChB,aAAa,CAAC;IACd,WAAW,CAAC;IACZ,WAAW,KAAK,CAAC,UAAU,CAAC,EAAE;IAC9B,YAAY,OAAOM,GAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACpD,cAAc,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAC1C,gBAAgB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IACzD,eAAe,CAAC;IAChB,aAAa,CAAC;IACd,WAAW,CAAC;IACZ,QAAQ,CAAC;IACT,MAAM,CAAC;IACP,KAAK;IACL,IAAI;IACJ,MAAMK,GAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACb,OAAO,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE;IACnC,QAAQ,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;IACrC,UAAU,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC;IAC9B,SAAS,CAAC;IACV,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,YAAY,IAAI;IAChB,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,EAAE,CAAC,CAAC,CAAC;IACR,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY;IACxB,IAAI,SAAS,CAAC,GAAG,EAAE;IACnB,IAAI;IACJ,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE;IAC/C,QAAQ,OAAOC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,EAAE;IAC9D,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE;IAC3C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;IACtD,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,YAAY;IAC1C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;IAC1E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,YAAY;IAC5C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC;IAC5E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,YAAY;IAC1C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;IAC1E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,YAAY;IAC5C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC;IAC5E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,YAAY;IACtC,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAEG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAChF,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,YAAY;IACtC,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO,CAAC,CAAC,EAAEG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAChF,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,YAAY;IACvC,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;IACvE,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,UAAU,CAAC,EAAE;IACjD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,EAAE;IAClE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,UAAU,CAAC,EAAE;IACjD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,EAAE;IAClE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE;IAC3C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE;IACtD,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,EAAE;IAC5C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE;IACxD,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAC5C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;IAC/D,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAChD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACzE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IAChD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;IACzE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE;IACvC,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAC5E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,CAAC,EAAE;IACvC,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IAC5E,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,WAAW,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE;IACjD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAC3D,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,GAAG,UAAU,CAAC,EAAE;IAChD,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,EAAE;IAChE,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE;IAC1C,QAAQ,OAAOG,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IACnD,UAAU,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IACtC,YAAY,OAAO;IACnB,cAAc,CAAC;IACf,cAAcG,GAAC,CAAC;IAChB,gBAAgB,aAAa,EAAE,QAAQ;IACvC,gBAAgB,OAAO,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE;IACpD,eAAe,CAAC;IAChB,aAAa;IACb,WAAW,CAAC;IACZ,SAAS,CAAC;IACV,OAAO;IACP,MAAM,CAAC;IACP,IAAI,CAAC;IACL,GAAG,GAAG,GAAG,CAAC;IACV,EAAM,MAAM,CAAC,MAAM,CAAC;IACpB,IAAI,SAAS,EAAE,IAAI;IACnB,IAAI,aAAa,EAAE,CAAC;IACpB,IAAI,UAAU,EAAE,CAAC;IACjB,IAAI,MAAM,EAAE,CAAC;IACb,IAAI,SAAS,EAAE,CAAC;IAChB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sCCjRwC,GAAS;;;;;sCAIT,GAAS;;;;;;;;;wCAUT,GAAW;;;;;wCAIX,GAAW;;;;;wCAIX,GAAW;;;;;uCAIX,GAAU;;;;;;;;;;;qCAUV,GAAC;;;;;qCAID,GAAC;;;;;;yCAOD,GAAK;;;;;0CAIL,GAAM;;;;;;6CAON,GAAQ;;;;;8CAIR,GAAS;;;;;;6CAOT,GAAQ;;;;;8CAIR,GAAS;;;;gDAOpB,GAAW;;;;;;6CAIb,GAAQ;;;;;;;;oDA7EoB,GAAS;gDAGP,GAAK;;;;;kDAmB3C,GAAO;;;;;;;;;;mEAkD4B,GAAS;;iEAIT,GAAO;;;;;;;;uCAnFrB,GAAS;;;;uCAIT,GAAS;;;;yCAUT,GAAW;;;;yCAIX,GAAW;;;;yCAIX,GAAW;;;;wCAIX,GAAU;;;sEAUV,GAAC;sCAAD,GAAC;;;sEAID,GAAC;sCAAD,GAAC;;;4EAOD,GAAK;0CAAL,GAAK;;;8EAIL,GAAM;2CAAN,GAAM;;;oFAON,GAAQ;8CAAR,GAAQ;;;sFAIR,GAAS;+CAAT,GAAS;;;oFAOT,GAAQ;8CAAR,GAAQ;;;uFAIR,GAAS;+CAAT,GAAS;;;iFAOpB,GAAW;iDAAX,GAAW;;;0EAIb,GAAQ;8CAAR,GAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAvKlC,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,cAAc,EACd,cAAc,EACd,QAAQ,EACR,SAAS;KAET,UAAU,EACV,UAAU,EACV,IAAI,EACJ,IAAI;KAEJ,aAAa,EACb,OAAO,KACL2B,CAAS;;SAET,QAAQ,GAAG,sBAAsB;SACjC,SAAS,GAAG,IAAI;SAChB,SAAS,GAAG,KAAK;SACjB,WAAW,GAAG,KAAK;SACnB,WAAW,GAAG,IAAI;SAClB,WAAW,GAAG,KAAK;SACnB,UAAU,GAAG,KAAK;SAClB,KAAK,GAAG,GAAG;SACX,MAAM,GAAG,GAAG;SACZ,QAAQ,GAAG,GAAG;SACd,SAAS,GAAG,GAAG;SACf,QAAQ,GAAG,IAAI;SACf,SAAS,GAAG,IAAI;SAChB,CAAC,GAAG,GAAG;SACP,CAAC,GAAG,GAAG;SAEP,WAAW,GAAG,wBAAwB;;cAEjC,OAAO;MACdP,GAAI,CAAC,QAAQ;;;cAGN,SAAS;MAChB,QAAQ,CAAC,WAAW;;;cAGb,KAAK;MACZ,IAAI;MACJ,UAAU,CAAC,IAAI,EAAE,IAAI;;;cAGd,SAAS;MAChB,QAAQ;MACR,UAAU,CAAC,UAAU,EAAE,IAAI;;;cAGpB,OAAO;MACdQ,GAAU,GACR,QAAQ,EAAE,KAAK,IACd,IAAI,CAAC,OAAO;;;;;;;;;;MAqBwB,SAAS;;;;;MAIT,SAAS;;;;;MAUT,WAAW;;;;;MAIX,WAAW;;;;;MAIX,WAAW;;;;;MAIX,UAAU;;;;;MAUV,CAAC;;;;;MAID,CAAC;;;;;MAOD,KAAK;;;;;MAIL,MAAM;;;;;MAON,QAAQ;;;;;MAIR,SAAS;;;;;MAOT,QAAQ;;;;;MAIR,SAAS;;;;;MAOpB,WAAW;;;;;MAIb,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAtGjC,YAAY,CAAC,SAAS;;;;OACtB,SAAS,GAAG,QAAQ,KAAK,UAAU;;;;;OAEnC,cAAc,CAAC,WAAW;;;;OAC1B,cAAc,CAAC,WAAW;;;;OAC1B,aAAa,CAAC,UAAU;;;;OAExB,QAAQ,CAAC,KAAK;;;;OACd,SAAS,CAAC,MAAM;;;;OAChB,QAAQ,IAAI,SAAS,IAAI,UAAU,CAAC,QAAQ,EAAE,SAAS;;;;OACvD,QAAQ,IAAI,SAAS,IAAI,UAAU,CAAC,QAAQ,EAAE,SAAS;;;;OACvD,IAAI,CAAC,CAAC;;;;OACN,IAAI,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IChFX,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAW5B;IACA;IACA;IACA;IACA;IACA,SAAS,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE;IACvC,IAAI,IAAI,IAAI,CAAC;IACb,IAAI,MAAM,WAAW,GAAG,EAAE,CAAC;IAC3B,IAAI,SAAS,GAAG,CAAC,SAAS,EAAE;IAC5B,QAAQ,IAAI,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;IAC9C,YAAY,KAAK,GAAG,SAAS,CAAC;IAC9B,YAAY,IAAI,IAAI,EAAE;IACtB,gBAAgB,MAAM,SAAS,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC;IAC3D,gBAAgB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IAChE,oBAAoB,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC7C,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,oBAAoB,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,iBAAiB;IACjB,gBAAgB,IAAI,SAAS,EAAE;IAC/B,oBAAoB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;IACzE,wBAAwB,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxE,qBAAqB;IACrB,oBAAoB,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IAChD,iBAAiB;IACjB,aAAa;IACb,SAAS;IACT,KAAK;IACL,IAAI,SAAS,MAAM,CAAC,EAAE,EAAE;IACxB,QAAQ,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvB,KAAK;IACL,IAAI,SAAS,SAAS,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,EAAE;IAC/C,QAAQ,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC7C,QAAQ,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;IACtC,YAAY,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACtC,SAAS;IACT,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC;IACnB,QAAQ,OAAO,MAAM;IACrB,YAAY,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1D,YAAY,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;IAC9B,gBAAgB,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7C,aAAa;IACb,YAAY,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;IAC1C,gBAAgB,IAAI,EAAE,CAAC;IACvB,gBAAgB,IAAI,GAAG,IAAI,CAAC;IAC5B,aAAa;IACb,SAAS,CAAC;IACV,KAAK;IACL,IAAI,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACtC;;IC7DA,SAASvB,GAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOF,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQG,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,gBAAgB;IACzC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAEJ,GAAC,CAAC,CAAC,CAAC,EAAE;IAClE,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACjB,EAAE,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQG,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,gBAAgB;IACzC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAEJ,GAAC,CAAC,CAAC,CAAC,EAAE;IACtE,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,EAAE;IACd,EAAE,OAAOK,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQG,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,gBAAgB;IACzC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,EAAE;IACvD,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,EAAE;IACd,EAAE,OAAOC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQG,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,gBAAgB;IACzC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,EAAE;IACrD,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,GAAG;IACb,EAAE,OAAOC,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,OAAOJ,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQG,GAAC,CAAC;IACV,UAAU,aAAa,EAAE,gBAAgB;IACzC,UAAU,OAAO,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE;IAC3C,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC;IACtB,EAAE,SAAS,EAAE,IAAI;IACjB,EAAE,QAAQ,EAAEG,GAAC;IACb,EAAE,WAAW,EAAE,CAAC;IAChB,EAAE,YAAY,EAAE,CAAC;IACjB,EAAE,UAAU,EAAE,CAAC;IACf,EAAE,aAAa,EAAE,CAAC;IAClB,CAAC;;;;;;;;;;;;;;;sCCjBQ,GAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kFAAb,GAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gEAOgB,GAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCATxC,GAAU;;;;oCAAf,MAAI;;;;mCAQD,GAAU,IAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAbR,GAAQ;;;;;;;;;;;;;;;;kDAEU,GAAQ;;;;;;;kEAF1B,GAAQ;4CAAR,GAAQ;;;;oCAKf,GAAU;;;;mCAAf,MAAI;;;;;;;;;;;;;;;;wCAAJ,MAAI;;;0BAQD,GAAU,IAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAvDb,SAAS;WACd,SAAS,GAAG,QAAQ;;;SACtB,QAAQ,GAAG,gBAAgB;;cAEtB,QAAQ;YACT,SAAS,GAAG,QAAQ;;MAC1BwB,GAAgB,CAAC,SAAS;OACxB,SAAS,aAAa,SAAS;SAE9B,IAAI;OACH,SAAS,CAAC,MAAM,CAAE,UAAU,QAAS,UAAU,EAAE,SAAS;OAC1D,SAAS,aAAa,SAAS;SAEhC,KAAK,CAAC,SAAS;;;cAGX,UAAU,CAAC,QAAQ;YACpB,SAAS,GAAG,QAAQ;;MAC1BC,CAAkB,CAAC,SAAS,EACzB,IAAI;OACH,SAAS,CAAC,MAAM,CAAE,UAAU,IAC1B,UAAU,CAAC,MAAM,CAAE,CAAC,IAAK,CAAC,KAAK,SAAS;OAE1C,SAAS,aAAa,SAAS;SAEhC,KAAK,CAAC,SAAS;;;cAGX,aAAa;MACpBC,CAAsB,GACnB,IAAI;OACH,SAAS,CAAC,MAAM;OAChB,SAAS;SAEV,KAAK,CAAC,SAAS;;;;;;;;;;MAQJ,QAAQ;;;;4CAQoB,UAAU,CAAC,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCCXhB,GAAK;;;;;;;sDACpB,GAAY;;;;;;;4DADG,GAAK;yCAAL,GAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BADlD,GAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCAHS,GAAM;;;;;;;;;;;gDACQ,GAAK;+CACL,GAAI;;;;;;;8DAFlB,GAAM;0CAAN,GAAM;;;qBAGpB,GAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA5CN,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS;SAClD,GAAG,GAAG,OAAO,GAAG,KAAK,GAAG,IAAI;SAC5B,IAAI,GAAG,OAAO,IAAI,IAAI,KAAK,IAAI;WAExB,SAAS;SAEhB,MAAM,GAAG,sBAAoB;SAC7B,KAAK,GAAG,EAAE;SACV,KAAK;;cAEA,KAAK;sBACZ,KAAK,GAAG,IAAI;YACN,OAAO,OAAOC,GAAO,CAAC,GAAG,MAAM,IAAI,EAAE,MAAM;;MAEjD,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI;OACtB,SAAS,+BAA+B,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,MAAM;uBAC3E,KAAK,GAAG,IAAI;;;MAEd,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,SAAS,oBAAoB,KAAK;MAE/D,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,IAAI,SAAS,qBAAqB,IAAI;MACpE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,IAAI,SAAS,qBAAqB,IAAI;;MAEpE,OAAO,CAAC,KAAK,GACV,IAAI,CAAC,CAAC;uBACL,KAAK,GAAG,CAAC;SAEV,KAAK,CAAC,SAAS;;;cAGX,IAAI;MACX,KAAK,CAAC,IAAI,GAAG,IAAI,OAAO,SAAS,CAAC,sBAAsB,GAAG,KAAK,CAAC,SAAS;;;cAGnE,YAAY;MACnB,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS;;;;;;;;;;MAMf,MAAM;;;;;MAIyB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IC7C3D,SAAS,CAAC,GAAG;IACb,EAAE,OAAO7B,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,SAAS,CAAC,GAAG;IACjB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,EAAC;IAC5B,KAAK;IACL,IAAI,IAAI,EAAC;IACT,IAAI,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;IACpC,UAAUG,GAAC,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE;IAClD,YAAY,IAAI,CAAC;IACjB,aAAa,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK;IACvD,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChC,gBAAgB,MAAM,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,EAAC;IACjD,WAAW,CAAC;IACZ,aAAa,IAAI,CAAC,UAAU,CAAC,EAAE;IAC/B,cAAc,CAAC,GAAG,EAAC;IACnB,aAAa,CAAC;IACd,aAAa,KAAK,CAAC,UAAU,CAAC,EAAE;IAChC,cAAc,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5B,aAAa,CAAC;IACd,YAAY,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACrC,YAAYC,GAAC,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;IAC3D,cAAc,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5B,aAAa,EAAC;IACd,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,GAAG;IACb,EAAE,OAAOE,GAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY;IAC7C,IAAI,SAAS,CAAC,GAAG;IACjB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,EAAC;IAC5B,KAAK;IACL,IAAI,IAAI,EAAC;IACT,IAAI,OAAON,GAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;IAChC,MAAM,OAAO;IACb,QAAQ,CAAC;IACT,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;IACpC,UAAUE,GAAC,CAAC,0BAA0B,EAAE,UAAU,CAAC,EAAE;IACrD,YAAY,IAAI,CAAC;IACjB,aAAa,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO;IAChD,cAAc,CAAC,EAAE;IACjB,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAC;IAClD,WAAW,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;IAChC,YAAY,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1B,WAAW,CAAC;IACZ,YAAYC,GAAC,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE;IACpD,cAAc,IAAI,CAAC;IACnB,eAAe,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK;IACzD,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAClC,kBAAkB,UAAU,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;IAC3E,aAAa,CAAC;IACd,eAAe,IAAI,CAAC,UAAU,CAAC,EAAE;IACjC,gBAAgB,CAAC,GAAG,EAAC;IACrB,eAAe,CAAC;IAChB,eAAe,KAAK,CAAC,UAAU,CAAC,EAAE;IAClC,gBAAgB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9B,eAAe,CAAC;IAChB,YAAYC,GAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;IACnD,cAAc,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5B,aAAa,EAAC;IACd,SAAS,CAAC;IACV,OAAO;IACP,KAAK,CAAC;IACN,GAAG,CAAC;IACJ,CAAC;IACO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDCftB,GAAK;kDACE,GAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA9CtD,SAAS;SAChB,QAAQ;;KAEZ,OAAO;MACL,QAAQ,SAASa,GAAM,CAAC,uBAAuB,EAAE,SAAS;;;KAE5D,SAAS;UACH,QAAQ;OACV,QAAQ;;;;oBAIG,KAAK;;OAEhB,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;eAEvD,YAAY,EAAE,QAAQ,WAAUmB,CAAW;OAClD,SAAS,mBAAmB,YAAY;OACxC,SAAS,CAAC,QAAQ;;WAEd,YAAY;QACd,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,QAAQ;;cAE7D,CAAC;OACP,SAAS,CAAC,CAAC;;;;oBAIA,OAAO;;OAElB,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;aAExDC,CAAa;OACnB,SAAS,CAAC,0CAA0C;aAC9CvB,GAAQ;cAER,CAAC;OACP,SAAS,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BCqDR,GAAI,IAAC,KAAK;;;;;;;;;;;;;;;;;2EAFU,GAAQ,iBAAK,GAAI;SAAG,aAAa;SAAG,EAAE;;;;;;;;;;;;;;;;;uGAAtC,GAAQ,iBAAK,GAAI;SAAG,aAAa;SAAG,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCADtD,GAAK;;;;oCAAV,MAAI;;;;qCAQkB,GAAQ,IAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAU3C,GAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kDAjCiC,GAAW;;;;;;;;;+BAe7C,GAAK;;;;mCAAV,MAAI;;;;;;;;;;;;;;;;wCAAJ,MAAI;;;yDAQkB,GAAQ,IAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;gFAU3C,GAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WApGN,KAAK;QAEP,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,OAAO;;OAGlB,KAAK,EAAE,UAAU;OACjB,SAAS,EAAE,aAAa;;QAGxB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,GAAG;QAGd,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM;;OAGjB,KAAK,EAAE,aAAa;OACpB,SAAS,EAAE,UAAU;;QAGrB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,IAAI;;OAGf,KAAK,EAAE,eAAe;OACtB,SAAS,EAAE,aAAa;;QAGxB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM;QAGjB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,SAAS;QAGpB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,KAAK;QAGhB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,OAAO;;;SAIlB,QAAQ,GAAG,KAAK,CAAC,CAAC;SAElB,SAAS,IAAI,EAAE;;cAEV,MAAM,CAAC,IAAI;sBAClB,QAAQ,GAAG,IAAI;;;cAGR,SAAS,CAAC,KAAK;sBACtB,SAAS,WAAW,KAAK,KAAK,QAAQ;QAAG,KAAK;QAAG,IAAI,CAAC,SAAS,CAAC,KAAK;;sBACrE,SAAS,IAAI,IAAI;;;cAGV,WAAW;MAClBS,GAAI,CAAC,uBAAuB;;;;;;;;;mCAsBqD,MAAM,CAAC,IAAI;;;sBAcxF,SAAS,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/GlB,UAAC,GAAG,GAAG,IAAI,GAAG,CAAC;IACpB,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI;IACvB,CAAC;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"bundle.js","sources":["../../node_modules/svelte/internal/index.mjs","../../../../tooling/api/dist/tauri-e30bdb91.js","../../../../tooling/api/dist/tauri-d30f5d3b.js","../../../../tooling/api/dist/shell-0a5db294.js","../../../../tooling/api/dist/fs-40bcf6c8.js","../../../../tooling/api/dist/http-c0e77505.js","../../../../tooling/api/dist/app-2c4a2328.js","../../src/components/Welcome.svelte","../../../../tooling/api/dist/cli-84e3f56f.js","../../src/components/Cli.svelte","../../../../tooling/api/dist/event-9c6402f4.js","../../../../tooling/api/dist/event-7cc4f5f3.js","../../src/components/Communication.svelte","../../../../tooling/api/dist/dialog-708fe790.js","../../src/components/Dialog.svelte","../../src/components/FileSystem.svelte","../../src/components/Http.svelte","../../src/components/Notifications.svelte","../../../../tooling/api/dist/window-85af2d2b.js","../../src/components/Window.svelte","../../node_modules/svelte/store/index.mjs","../../../../tooling/api/dist/globalShortcut-6a1b3889.js","../../src/components/Shortcuts.svelte","../../src/components/Shell.svelte","../../../../tooling/api/dist/updater-4b455b8a.js","../../src/components/Updater.svelte","../../src/App.svelte","../../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n // @ts-ignore\n for (const k in src)\n tar[k] = src[k];\n return tar;\n}\nfunction is_promise(value) {\n return value && typeof value === 'object' && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n element.__svelte_meta = {\n loc: { file, line, column, char }\n };\n}\nfunction run(fn) {\n return fn();\n}\nfunction blank_object() {\n return Object.create(null);\n}\nfunction run_all(fns) {\n fns.forEach(run);\n}\nfunction is_function(thing) {\n return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n return a != a ? b == b : a !== b;\n}\nfunction is_empty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction validate_store(store, name) {\n if (store != null && typeof store.subscribe !== 'function') {\n throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n }\n}\nfunction subscribe(store, ...callbacks) {\n if (store == null) {\n return noop;\n }\n const unsub = store.subscribe(...callbacks);\n return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\nfunction get_store_value(store) {\n let value;\n subscribe(store, _ => value = _)();\n return value;\n}\nfunction component_subscribe(component, store, callback) {\n component.$$.on_destroy.push(subscribe(store, callback));\n}\nfunction create_slot(definition, ctx, $$scope, fn) {\n if (definition) {\n const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n return definition[0](slot_ctx);\n }\n}\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n return definition[1] && fn\n ? assign($$scope.ctx.slice(), definition[1](fn(ctx)))\n : $$scope.ctx;\n}\nfunction get_slot_changes(definition, $$scope, dirty, fn) {\n if (definition[2] && fn) {\n const lets = definition[2](fn(dirty));\n if ($$scope.dirty === undefined) {\n return lets;\n }\n if (typeof lets === 'object') {\n const merged = [];\n const len = Math.max($$scope.dirty.length, lets.length);\n for (let i = 0; i < len; i += 1) {\n merged[i] = $$scope.dirty[i] | lets[i];\n }\n return merged;\n }\n return $$scope.dirty | lets;\n }\n return $$scope.dirty;\n}\nfunction update_slot(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction update_slot_spread(slot, slot_definition, ctx, $$scope, dirty, get_slot_changes_fn, get_slot_spread_changes_fn, get_slot_context_fn) {\n const slot_changes = get_slot_spread_changes_fn(dirty) | get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\n if (slot_changes) {\n const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\n slot.p(slot_context, slot_changes);\n }\n}\nfunction exclude_internal_props(props) {\n const result = {};\n for (const k in props)\n if (k[0] !== '$')\n result[k] = props[k];\n return result;\n}\nfunction compute_rest_props(props, keys) {\n const rest = {};\n keys = new Set(keys);\n for (const k in props)\n if (!keys.has(k) && k[0] !== '$')\n rest[k] = props[k];\n return rest;\n}\nfunction compute_slots(slots) {\n const result = {};\n for (const key in slots) {\n result[key] = true;\n }\n return result;\n}\nfunction once(fn) {\n let ran = false;\n return function (...args) {\n if (ran)\n return;\n ran = true;\n fn.call(this, ...args);\n };\n}\nfunction null_to_empty(value) {\n return value == null ? '' : value;\n}\nfunction set_store_value(store, ret, value = ret) {\n store.set(value);\n return ret;\n}\nconst has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nfunction action_destroyer(action_result) {\n return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n ? () => window.performance.now()\n : () => Date.now();\nlet raf = is_client ? cb => requestAnimationFrame(cb) : noop;\n// used internally for testing\nfunction set_now(fn) {\n now = fn;\n}\nfunction set_raf(fn) {\n raf = fn;\n}\n\nconst tasks = new Set();\nfunction run_tasks(now) {\n tasks.forEach(task => {\n if (!task.c(now)) {\n tasks.delete(task);\n task.f();\n }\n });\n if (tasks.size !== 0)\n raf(run_tasks);\n}\n/**\n * For testing purposes only!\n */\nfunction clear_loops() {\n tasks.clear();\n}\n/**\n * Creates a new task that runs on each raf frame\n * until it returns a falsy value or is aborted\n */\nfunction loop(callback) {\n let task;\n if (tasks.size === 0)\n raf(run_tasks);\n return {\n promise: new Promise(fulfill => {\n tasks.add(task = { c: callback, f: fulfill });\n }),\n abort() {\n tasks.delete(task);\n }\n };\n}\n\nfunction append(target, node) {\n target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n node.parentNode.removeChild(node);\n}\nfunction destroy_each(iterations, detaching) {\n for (let i = 0; i < iterations.length; i += 1) {\n if (iterations[i])\n iterations[i].d(detaching);\n }\n}\nfunction element(name) {\n return document.createElement(name);\n}\nfunction element_is(name, is) {\n return document.createElement(name, { is });\n}\nfunction object_without_properties(obj, exclude) {\n const target = {};\n for (const k in obj) {\n if (has_prop(obj, k)\n // @ts-ignore\n && exclude.indexOf(k) === -1) {\n // @ts-ignore\n target[k] = obj[k];\n }\n }\n return target;\n}\nfunction svg_element(name) {\n return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n return document.createTextNode(data);\n}\nfunction space() {\n return text(' ');\n}\nfunction empty() {\n return text('');\n}\nfunction listen(node, event, handler, options) {\n node.addEventListener(event, handler, options);\n return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n return function (event) {\n event.preventDefault();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction stop_propagation(fn) {\n return function (event) {\n event.stopPropagation();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction self(fn) {\n return function (event) {\n // @ts-ignore\n if (event.target === this)\n fn.call(this, event);\n };\n}\nfunction attr(node, attribute, value) {\n if (value == null)\n node.removeAttribute(attribute);\n else if (node.getAttribute(attribute) !== value)\n node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n // @ts-ignore\n const descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n for (const key in attributes) {\n if (attributes[key] == null) {\n node.removeAttribute(key);\n }\n else if (key === 'style') {\n node.style.cssText = attributes[key];\n }\n else if (key === '__value') {\n node.value = node[key] = attributes[key];\n }\n else if (descriptors[key] && descriptors[key].set) {\n node[key] = attributes[key];\n }\n else {\n attr(node, key, attributes[key]);\n }\n }\n}\nfunction set_svg_attributes(node, attributes) {\n for (const key in attributes) {\n attr(node, key, attributes[key]);\n }\n}\nfunction set_custom_element_data(node, prop, value) {\n if (prop in node) {\n node[prop] = value;\n }\n else {\n attr(node, prop, value);\n }\n}\nfunction xlink_attr(node, attribute, value) {\n node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group, __value, checked) {\n const value = new Set();\n for (let i = 0; i < group.length; i += 1) {\n if (group[i].checked)\n value.add(group[i].__value);\n }\n if (!checked) {\n value.delete(__value);\n }\n return Array.from(value);\n}\nfunction to_number(value) {\n return value === '' ? null : +value;\n}\nfunction time_ranges_to_array(ranges) {\n const array = [];\n for (let i = 0; i < ranges.length; i += 1) {\n array.push({ start: ranges.start(i), end: ranges.end(i) });\n }\n return array;\n}\nfunction children(element) {\n return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeName === name) {\n let j = 0;\n const remove = [];\n while (j < node.attributes.length) {\n const attribute = node.attributes[j++];\n if (!attributes[attribute.name]) {\n remove.push(attribute.name);\n }\n }\n for (let k = 0; k < remove.length; k++) {\n node.removeAttribute(remove[k]);\n }\n return nodes.splice(i, 1)[0];\n }\n }\n return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeType === 3) {\n node.data = '' + data;\n return nodes.splice(i, 1)[0];\n }\n }\n return text(data);\n}\nfunction claim_space(nodes) {\n return claim_text(nodes, ' ');\n}\nfunction set_data(text, data) {\n data = '' + data;\n if (text.wholeText !== data)\n text.data = data;\n}\nfunction set_input_value(input, value) {\n input.value = value == null ? '' : value;\n}\nfunction set_input_type(input, type) {\n try {\n input.type = type;\n }\n catch (e) {\n // do nothing\n }\n}\nfunction set_style(node, key, value, important) {\n node.style.setProperty(key, value, important ? 'important' : '');\n}\nfunction select_option(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n if (option.__value === value) {\n option.selected = true;\n return;\n }\n }\n}\nfunction select_options(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n option.selected = ~value.indexOf(option.__value);\n }\n}\nfunction select_value(select) {\n const selected_option = select.querySelector(':checked') || select.options[0];\n return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\nlet crossorigin;\nfunction is_crossorigin() {\n if (crossorigin === undefined) {\n crossorigin = false;\n try {\n if (typeof window !== 'undefined' && window.parent) {\n void window.parent.document;\n }\n }\n catch (error) {\n crossorigin = true;\n }\n }\n return crossorigin;\n}\nfunction add_resize_listener(node, fn) {\n const computed_style = getComputedStyle(node);\n if (computed_style.position === 'static') {\n node.style.position = 'relative';\n }\n const iframe = element('iframe');\n iframe.setAttribute('style', 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\n 'overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;');\n iframe.setAttribute('aria-hidden', 'true');\n iframe.tabIndex = -1;\n const crossorigin = is_crossorigin();\n let unsubscribe;\n if (crossorigin) {\n iframe.src = \"data:text/html,\";\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n if (crossorigin) {\n unsubscribe();\n }\n else if (unsubscribe && iframe.contentWindow) {\n unsubscribe();\n }\n detach(iframe);\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, false, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor(anchor = null) {\n this.a = anchor;\n this.e = this.n = null;\n }\n m(html, target, anchor = null) {\n if (!this.e) {\n this.e = element(target.nodeName);\n this.t = target;\n this.h(html);\n }\n this.i(anchor);\n }\n h(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n i(anchor) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(this.t, this.n[i], anchor);\n }\n }\n p(html) {\n this.d();\n this.h(html);\n this.i(this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\nfunction attribute_to_object(attributes) {\n const result = {};\n for (const attribute of attributes) {\n result[attribute.name] = attribute.value;\n }\n return result;\n}\nfunction get_custom_elements_slots(element) {\n const result = {};\n element.childNodes.forEach((node) => {\n result[node.slot || 'default'] = true;\n });\n return result;\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = node.ownerDocument;\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = doc.head.appendChild(element('style')).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ''}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error('Function called outside component initialization');\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\nfunction hasContext(key) {\n return get_current_component().$$.context.has(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n callbacks.slice().forEach(fn => fn(event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n set_current_component(null);\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = program.b - t;\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program || pending_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n if (info.blocks[i] === block) {\n info.blocks[i] = null;\n }\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n if (!info.hasCatch) {\n throw error;\n }\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next);\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error('Cannot have duplicate keys in a keyed each');\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += ' ' + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += ' ' + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${String(value).replace(/\"/g, '"').replace(/'/g, ''')}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, options = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, options);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : '';\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor, customElement) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n if (!customElement) {\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n }\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n on_disconnect: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : []),\n // everything else\n callbacks: blank_object(),\n dirty,\n skip_bound: false\n };\n let ready = false;\n $$.ctx = instance\n ? instance(component, options.props || {}, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if (!$$.skip_bound && $$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor, options.customElement);\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n const { on_mount } = this.$$;\n this.$$.on_disconnect = on_mount.map(run).filter(is_function);\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n disconnectedCallback() {\n run_all(this.$$.on_disconnect);\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n };\n}\n/**\n * Base class for Svelte components. Used when dev=false.\n */\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set($$props) {\n if (this.$$set && !is_empty($$props)) {\n this.$$.skip_bound = true;\n this.$$set($$props);\n this.$$.skip_bound = false;\n }\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.35.0' }, detail)));\n}\nfunction append_dev(target, node) {\n dispatch_dev('SvelteDOMInsert', { target, node });\n append(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev('SvelteDOMInsert', { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev('SvelteDOMRemove', { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });\n else\n dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev('SvelteDOMSetProperty', { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev('SvelteDOMSetDataset', { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.wholeText === data)\n return;\n dispatch_dev('SvelteDOMSetData', { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\n/**\n * Base class for Svelte components with some minor dev-enhancements. Used when dev=true.\n */\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(\"'target' is a required option\");\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn('Component was already destroyed'); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\n/**\n * Base class to create strongly typed Svelte components.\n * This only exists for typing purposes and should be used in `.d.ts` files.\n *\n * ### Example:\n *\n * You have component library on npm called `component-library`, from which\n * you export a component called `MyComponent`. For Svelte+TypeScript users,\n * you want to provide typings. Therefore you create a `index.d.ts`:\n * ```ts\n * import { SvelteComponentTyped } from \"svelte\";\n * export class MyComponent extends SvelteComponentTyped<{foo: string}> {}\n * ```\n * Typing this makes it possible for IDEs like VS Code with the Svelte extension\n * to provide intellisense and to use the component like this in a Svelte file\n * with TypeScript:\n * ```svelte\n * \n * \n * ```\n *\n * #### Why not make this part of `SvelteComponent(Dev)`?\n * Because\n * ```ts\n * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {}\n * const component: typeof SvelteComponent = ASubclassOfSvelteComponent;\n * ```\n * will throw a type error, so we need to seperate the more strictly typed class.\n */\nclass SvelteComponentTyped extends SvelteComponentDev {\n constructor(options) {\n super(options);\n }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error('Infinite loop detected');\n }\n };\n}\n\nexport { HtmlTag, SvelteComponent, SvelteComponentDev, SvelteComponentTyped, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, assign, attr, attr_dev, attribute_to_object, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, compute_slots, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, escape, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getContext, get_binding_group_value, get_current_component, get_custom_elements_slots, get_slot_changes, get_slot_context, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, hasContext, has_prop, identity, init, insert, insert_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_empty, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, update_keyed_each, update_slot, update_slot_spread, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nvar t=function(n,e){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var e in n)Object.prototype.hasOwnProperty.call(n,e)&&(t[e]=n[e])})(n,e)};function n(n,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Class extends value \"+String(e)+\" is not a constructor or null\");function r(){this.constructor=n}t(n,e),n.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var e=function(){return(e=Object.assign||function(t){for(var n,e=1,r=arguments.length;e0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]\n import { getName, getVersion, getTauriVersion, relaunch, exit } from \"@tauri-apps/api/app\";\n let version = 0.0;\n let tauriVersion = 0.0;\n let appName = 'Unknown';\n\n getName().then(n => {appName = n});\n getVersion().then(v => {version = v});\n getTauriVersion().then(v => {tauriVersion = v});\n\n async function closeApp() {\n await exit();\n }\n\n async function relaunchApp() {\n await relaunch();\n }\n\n

Welcome

\n

\n Tauri's API capabilities using the ` @tauri-apps/api ` package. It's used as\n the main validation app, serving as the testbed of our development process. In\n the future, this app will be used on Tauri's integration tests.\n

\n\n

Current App version: {version}

\n

Current Tauri version: {tauriVersion}

\n

Current App name: {appName}

\n\n\n\n","import{_ as t,a as r}from\"./tauri-e30bdb91.js\";import{i as e}from\"./tauri-d30f5d3b.js\";function i(){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,e({__tauriModule:\"Cli\",message:{cmd:\"cliMatches\"}})]}))}))}var a=Object.freeze({__proto__:null,getMatches:i});export{a as c,i as g};\n","\n\n
\n \n
\n","import{_ as n,a as t,t as i}from\"./tauri-e30bdb91.js\";import{i as r}from\"./tauri-d30f5d3b.js\";function e(e,o){return n(this,void 0,void 0,(function(){var s=this;return t(this,(function(c){return[2,r({__tauriModule:\"Event\",message:{cmd:\"listen\",event:e,handler:i(o)}}).then((function(i){return function(){return n(s,void 0,void 0,(function(){return t(this,(function(n){return[2,u(i)]}))}))}}))]}))}))}function u(i){return n(this,void 0,void 0,(function(){return t(this,(function(n){return[2,r({__tauriModule:\"Event\",message:{cmd:\"unlisten\",eventId:i}})]}))}))}function o(i,r){return n(this,void 0,void 0,(function(){return t(this,(function(n){return[2,e(i,r)]}))}))}function s(i,r){return n(this,void 0,void 0,(function(){return t(this,(function(n){return[2,e(i,(function(n){r(n),u(n.id).catch((function(){}))}))]}))}))}function c(i,e,u){return n(this,void 0,void 0,(function(){return t(this,(function(n){switch(n.label){case 0:return[4,r({__tauriModule:\"Event\",message:{cmd:\"emit\",event:i,windowLabel:e,payload:u}})];case 1:return n.sent(),[2]}}))}))}export{c as e,o as l,s as o};\n","import{_ as t,a as e}from\"./tauri-e30bdb91.js\";import{e as o,l as r,o as i}from\"./event-9c6402f4.js\";function n(r,i){return t(this,void 0,void 0,(function(){return e(this,(function(t){return[2,o(r,void 0,i)]}))}))}var s=Object.freeze({__proto__:null,emit:n,listen:r,once:i});export{n as a,s as e};\n","\n\n
\n \n \n \n
\n","import{_ as e,a as o}from\"./tauri-e30bdb91.js\";import{i as t}from\"./tauri-d30f5d3b.js\";function i(i){return void 0===i&&(i={}),e(this,void 0,void 0,(function(){return o(this,(function(e){return\"object\"==typeof i&&Object.freeze(i),[2,t({__tauriModule:\"Dialog\",mainThread:!0,message:{cmd:\"openDialog\",options:i}})]}))}))}function r(i){return void 0===i&&(i={}),e(this,void 0,void 0,(function(){return o(this,(function(e){return\"object\"==typeof i&&Object.freeze(i),[2,t({__tauriModule:\"Dialog\",mainThread:!0,message:{cmd:\"saveDialog\",options:i}})]}))}))}var n=Object.freeze({__proto__:null,open:i,save:r});export{n as d,i as o,r as s};\n","\n\n
\n \n \n
\n \n \n
\n
\n \n \n
\n\n
\n\n\n","\n\n
\n \n \n \n\n","\n\n
\n \n \n
\n \n \n\n","\n\n\n","import{_ as t,a as n,d as i,b as e}from\"./tauri-e30bdb91.js\";import{i as o}from\"./tauri-d30f5d3b.js\";import{l as r,o as u,e as s}from\"./event-9c6402f4.js\";function d(){return new f(window.__TAURI__.__currentWindow.label)}function c(){return window.__TAURI__.__windows}var a=[\"tauri://created\",\"tauri://error\"],f=function(){function i(t){this.label=t,this.listeners=Object.create(null)}return i.prototype.listen=function(i,e){return t(this,void 0,void 0,(function(){var t=this;return n(this,(function(n){return this._handleTauriEvent(i,e)?[2,Promise.resolve((function(){var n=t.listeners[i];n.splice(n.indexOf(e),1)}))]:[2,r(i,e)]}))}))},i.prototype.once=function(i,e){return t(this,void 0,void 0,(function(){var t=this;return n(this,(function(n){return this._handleTauriEvent(i,e)?[2,Promise.resolve((function(){var n=t.listeners[i];n.splice(n.indexOf(e),1)}))]:[2,u(i,e)]}))}))},i.prototype.emit=function(i,e){return t(this,void 0,void 0,(function(){var t,o;return n(this,(function(n){if(a.includes(i)){for(t=0,o=this.listeners[i]||[];t\n import { appWindow } from \"@tauri-apps/api/window\";\n import { open as openDialog } from \"@tauri-apps/api/dialog\";\n import { open } from \"@tauri-apps/api/shell\";\n\n const {\n setResizable,\n setTitle,\n maximize,\n unmaximize,\n minimize,\n unminimize,\n show,\n hide,\n setTransparent,\n setDecorations,\n setAlwaysOnTop,\n setWidth,\n setHeight,\n // resize,\n setMinSize,\n setMaxSize,\n setX,\n setY,\n // setPosition,\n setFullscreen,\n setIcon,\n } = appWindow;\n\n let urlValue = \"https://tauri.studio\";\n let resizable = true;\n let maximized = false;\n let transparent = false;\n let decorations = true;\n let alwaysOnTop = false;\n let fullscreen = false;\n let width = 900;\n let height = 700;\n let minWidth = 600;\n let minHeight = 600;\n let maxWidth = null;\n let maxHeight = null;\n let x = 100;\n let y = 100;\n\n let windowTitle = \"Awesome Tauri Example!\";\n\n function openUrl() {\n open(urlValue);\n }\n\n function setTitle_() {\n setTitle(windowTitle);\n }\n\n function hide_() {\n hide();\n setTimeout(show, 2000);\n }\n\n function minimize_() {\n minimize();\n setTimeout(unminimize, 2000);\n }\n\n function getIcon() {\n openDialog({\n multiple: false,\n }).then(setIcon);\n }\n\n $: setResizable(resizable);\n $: maximized ? maximize() : unmaximize();\n //$: setTransparent(transparent)\n $: setDecorations(decorations);\n $: setAlwaysOnTop(alwaysOnTop);\n $: setFullscreen(fullscreen);\n\n $: setWidth(width);\n $: setHeight(height);\n $: minWidth && minHeight && setMinSize(minWidth, minHeight);\n $: maxWidth && maxHeight && setMaxSize(maxWidth, maxHeight);\n $: setX(x);\n $: setY(y);\n\n\n
\n
\n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n X\n \n
\n
\n Y\n \n
\n
\n\n
\n
\n Width\n \n
\n
\n Height\n \n
\n
\n\n
\n
\n Min width\n \n
\n
\n Min height\n \n
\n
\n\n
\n
\n Max width\n \n
\n
\n Max height\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n \n \n
\n\n\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal/index.mjs';\nexport { get_store_value as get } from '../internal/index.mjs';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = [];\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (let i = 0; i < subscribers.length; i += 1) {\n const s = subscribers[i];\n s[1]();\n subscriber_queue.push(s, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.push(subscriber);\n if (subscribers.length === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n const index = subscribers.indexOf(subscriber);\n if (index !== -1) {\n subscribers.splice(index, 1);\n }\n if (subscribers.length === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","import{_ as t,a as r,t as e}from\"./tauri-e30bdb91.js\";import{i}from\"./tauri-d30f5d3b.js\";function u(u,n){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,i({__tauriModule:\"GlobalShortcut\",message:{cmd:\"register\",shortcut:u,handler:e(n)}})]}))}))}function n(u,n){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,i({__tauriModule:\"GlobalShortcut\",message:{cmd:\"registerAll\",shortcuts:u,handler:e(n)}})]}))}))}function o(e){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,i({__tauriModule:\"GlobalShortcut\",message:{cmd:\"isRegistered\",shortcut:e}})]}))}))}function s(e){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,i({__tauriModule:\"GlobalShortcut\",message:{cmd:\"unregister\",shortcut:e}})]}))}))}function a(){return t(this,void 0,void 0,(function(){return r(this,(function(t){return[2,i({__tauriModule:\"GlobalShortcut\",message:{cmd:\"unregisterAll\"}})]}))}))}var c=Object.freeze({__proto__:null,register:u,registerAll:n,isRegistered:o,unregister:s,unregisterAll:a});export{n as a,a as b,c as g,o as i,u as r,s as u};\n","\n\n
\n
\n \n \n
\n
\n {#each $shortcuts as savedShortcut}\n
\n {savedShortcut}\n
\n {/each}\n {#if $shortcuts.length}\n \n {/if}\n
\n
\n","\n\n
\n
\n \n \n \n {#if child}\n \n \n {/if}\n
\n
\n","import{_ as t,a as n}from\"./tauri-e30bdb91.js\";import{l as o,e as a,o as r}from\"./event-9c6402f4.js\";function i(){return t(this,void 0,void 0,(function(){function t(){r&&r(),r=void 0}var r;return n(this,(function(n){return[2,new Promise((function(n,i){o(\"tauri://update-status\",(function(o){var a;(a=null==o?void 0:o.payload).error?(t(),i(a.error)):\"DONE\"===a.status&&(t(),n())})).then((function(t){r=t})).catch((function(n){throw t(),n})),a(\"tauri://update-install\").catch((function(n){throw t(),n}))}))]}))}))}function u(){return t(this,void 0,void 0,(function(){function t(){i&&i(),i=void 0}var i;return n(this,(function(n){return[2,new Promise((function(n,u){r(\"tauri://update-available\",(function(o){var a;a=null==o?void 0:o.payload,t(),n({manifest:a,shouldUpdate:!0})})).catch((function(n){throw t(),n})),o(\"tauri://update-status\",(function(o){var a;(a=null==o?void 0:o.payload).error?(t(),u(a.error)):\"UPTODATE\"===a.status&&(t(),n({shouldUpdate:!1}))})).then((function(t){i=t})).catch((function(n){throw t(),n})),a(\"tauri://update\").catch((function(n){throw t(),n}))}))]}))}))}var e=Object.freeze({__proto__:null,installUpdate:i,checkUpdate:u});export{u as c,i,e as u};\n","\n\n
\n \n \n
\n","\n\n
\n \n
\n
\n {#each views as view}\n

select(view)}\n >\n {view.label}\n

\n {/each}\n
\n
\n \n
\n
\n
\n

\n Tauri Console\n {\n responses = [\"\"];\n }}>clear\n

\n {responses}\n
\n
\n","import App from \"./App.svelte\";\n\nconst app = new App({\n target: document.body,\n});\n\nexport default app;\n"],"names":["noop","run","fn","blank_object","Object","create","run_all","fns","forEach","is_function","thing","safe_not_equal","a","b","component_subscribe","component","store","callback","$$","on_destroy","push","callbacks","unsub","subscribe","unsubscribe","append","target","node","appendChild","insert","anchor","insertBefore","detach","parentNode","removeChild","destroy_each","iterations","detaching","i","length","d","element","name","document","createElement","text","data","createTextNode","space","listen","event","handler","options","addEventListener","removeEventListener","prevent_default","preventDefault","call","this","attr","attribute","value","removeAttribute","getAttribute","setAttribute","to_number","set_data","wholeText","set_input_value","input","set_style","key","important","style","setProperty","select_option","select","option","__value","selected","current_component","set_current_component","get_current_component","Error","onMount","on_mount","onDestroy","dirty_components","binding_callbacks","render_callbacks","flush_callbacks","resolved_promise","Promise","resolve","update_scheduled","add_render_callback","flushing","seen_callbacks","Set","flush","update","pop","has","add","clear","fragment","before_update","dirty","p","ctx","after_update","outroing","outros","transition_in","block","local","delete","transition_out","o","c","create_component","mount_component","customElement","m","new_on_destroy","map","filter","destroy_component","make_dirty","then","fill","init","instance","create_fragment","not_equal","props","parent_component","bound","on_disconnect","context","Map","skip_bound","ready","ret","rest","hydrate","nodes","Array","from","childNodes","children","l","intro","SvelteComponent","[object Object]","$destroy","type","index","indexOf","splice","$$props","obj","$$set","keys","t","n","e","setPrototypeOf","__proto__","prototype","hasOwnProperty","TypeError","String","r","constructor","assign","arguments","apply","u","next","throw","done","label","sent","trys","ops","return","Symbol","iterator","Int8Array","window","crypto","getRandomValues","Uint8Array","Math","max","abs","join","defineProperty","Reflect","deleteProperty","writable","configurable","rpc","notify","error","s","freeze","__tauriModule","message","cmd","program","sidecar","onEventFn","args","transformCallback","invoke","eventListeners","_emit","on","pid","write","buffer","kill","stdout","stderr","spawn","payload","execute","code","signal","catch","path","with","mainThread","exitCode","version","tauriVersion","appName","getName","getVersion","v","getTauriVersion","exit","relaunch","Command","Child","open","onMessage","getMatches","eventId","id","windowLabel","unlisten","endpoint","body","emit","once","fromCharCode","subarray","btoa","defaultPath","multiple","directory","filters","extensions","split","f","trim","res","isArray","pathToRead","isFile","match","readBinaryFile","response","blob","reader","includes","base64","Blob","FileReader","onload","evt","dataurl","result","substr","readAsDataURL","save","Audio","Cache","Config","Data","LocalData","Desktop","Document","Download","Executable","Font","Home","Picture","Public","Runtime","Template","Video","Resource","App","Current","BaseDirectory","Dir","readTextFile","writeFile","contents","writeBinaryFile","readDir","createDir","removeDir","copyFile","source","destination","removeFile","renameFile","oldPath","newPath","getDir","getElementById","parseInt","dir","DirOptions","isNaN","opts","arrayBufferToBase64","setTimeout","fileInput","file","JSON","Text","Binary","form","json","bytes","drop","client","request","get","method","url","post","put","patch","httpMethod","httpUrl","httpBody","getClient","startsWith","endsWith","Body","parse","selected_option","querySelector","ResponseType","Client","fetch","_sendNotification","Notification","permission","requestPermission","__TAURI__","__windows","listeners","_handleTauriEvent","h","getByLabel","some","setResizable","resizable","setTitle","title","maximize","unmaximize","minimize","unminimize","show","hide","close","setDecorations","decorations","setAlwaysOnTop","alwaysOnTop","setWidth","width","setHeight","height","resize","setMinSize","minWidth","minHeight","setMaxSize","maxWidth","maxHeight","setX","x","setY","y","setPosition","setFullscreen","fullscreen","setIcon","icon","setTransparent","appWindow","urlValue","maximized","transparent","windowTitle","openDialog","WebviewWindow","getCurrent","__currentWindow","getAll","subscriber_queue","shortcut","shortcuts","start","stop","subscribers","set","new_value","run_queue","invalidate","subscriber","unregister","shortcut_","unregisterShortcut","shortcuts_","registerShortcut","unregisterAllShortcuts","savedShortcut","register","registerAll","isRegistered","unregisterAll","windows","navigator","userAgent","child","script","stdin","command","line","status","manifest","shouldUpdate","classList","checkUpdate","remove","installUpdate","views","Welcome","Communication","Cli","Dialog","FileSystem","Http","Notifications","Window","Shortcuts","Shell","Updater","responses","view","stringify"],"mappings":"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"} \ No newline at end of file diff --git a/examples/api/yarn.lock b/examples/api/yarn.lock index 879109b215a..92024799f8f 100644 --- a/examples/api/yarn.lock +++ b/examples/api/yarn.lock @@ -62,7 +62,7 @@ estree-walker "^1.0.1" picomatch "^2.2.2" -"@tauri-apps/api@link:../../api": +"@tauri-apps/api@link:../../tooling/api": version "0.0.0" uid "" diff --git a/examples/helloworld/package.json b/examples/helloworld/package.json index 1832b1dee3f..c8c0189c09d 100644 --- a/examples/helloworld/package.json +++ b/examples/helloworld/package.json @@ -2,6 +2,6 @@ "name": "hello-world", "version": "1.0.0", "scripts": { - "tauri": "node ../../cli/tauri.js/bin/tauri" + "tauri": "node ../../tooling/cli.js/bin/tauri" } -} +} \ No newline at end of file diff --git a/examples/multiwindow/package.json b/examples/multiwindow/package.json index bc959d4c11b..3db26eb09d0 100644 --- a/examples/multiwindow/package.json +++ b/examples/multiwindow/package.json @@ -5,7 +5,7 @@ "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", - "tauri": "node ../../cli/tauri.js/bin/tauri" + "tauri": "node ../../tooling/cli.js/bin/tauri" }, "private": true -} +} \ No newline at end of file diff --git a/examples/updater/package.json b/examples/updater/package.json index c59bdc7267d..c2bf249d5ad 100644 --- a/examples/updater/package.json +++ b/examples/updater/package.json @@ -2,6 +2,6 @@ "name": "updater", "version": "1.0.0", "scripts": { - "tauri": "node ../../cli/tauri.js/bin/tauri" + "tauri": "node ../../tooling/cli.js/bin/tauri" } -} +} \ No newline at end of file diff --git a/maskfile.md b/maskfile.md index d57d5dfda07..5538651c708 100644 --- a/maskfile.md +++ b/maskfile.md @@ -67,7 +67,7 @@ case "$PWD" in cargo web deploy [ $example = `basename $(dirname $PWD)` ] && cd .. - yarn add tauri@link:../../../cli/tauri.js + yarn add tauri@link:../../../tooling/cli.js yarn && yarn tauri dev ;; *) diff --git a/package.json b/package.json index 62815a8b647..ddf36400a8b 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "repository": { "type": "git", "url": "https://github.com/tauri-apps/tauri.git", - "directory": "cli/tauri.js" + "directory": "tooling/cli.js" }, "scripts": { "format": "prettier --write --end-of-line=auto \"./**/*.{js,jsx,ts,tsx,html,css,json}\" --ignore-path .gitignore", @@ -17,4 +17,4 @@ "husky": "^5.1.3", "prettier": "^2.0.5" } -} +} \ No newline at end of file diff --git a/renovate.json b/renovate.json index 91ef19626cf..39a3c35621a 100644 --- a/renovate.json +++ b/renovate.json @@ -89,7 +89,7 @@ { "enabled": true, "paths": [ - "cli/core/**" + "tooling/cli.rs/**" ], "groupName": "Tauri CLI", "groupSlug": "allTauriCLI", @@ -102,7 +102,7 @@ { "enabled": true, "paths": [ - "cli/tauri-bundler/**" + "tooling/bundler/**" ], "groupName": "Tauri Bundler", "groupSlug": "allTauriBundler", @@ -115,7 +115,7 @@ { "enabled": true, "paths": [ - "cli/tauri.js/**" + "tooling/cli.js/**" ], "groupName": "Tauri JS CLI", "groupSlug": "allTauriJSCLI", diff --git a/api/.eslintrc.js b/tooling/api/.eslintrc.js similarity index 100% rename from api/.eslintrc.js rename to tooling/api/.eslintrc.js diff --git a/api/.gitignore b/tooling/api/.gitignore similarity index 100% rename from api/.gitignore rename to tooling/api/.gitignore diff --git a/api/.prettierrc.js b/tooling/api/.prettierrc.js similarity index 100% rename from api/.prettierrc.js rename to tooling/api/.prettierrc.js diff --git a/api/babel.config.js b/tooling/api/babel.config.js similarity index 100% rename from api/babel.config.js rename to tooling/api/babel.config.js diff --git a/api/package.json b/tooling/api/package.json similarity index 100% rename from api/package.json rename to tooling/api/package.json diff --git a/api/rollup.config.js b/tooling/api/rollup.config.js similarity index 98% rename from api/rollup.config.js rename to tooling/api/rollup.config.js index 3c775a20887..fff5914988e 100644 --- a/api/rollup.config.js +++ b/tooling/api/rollup.config.js @@ -69,7 +69,7 @@ export default [ output: [ { name: '__TAURI__', - dir: '../core/tauri/scripts', + dir: '../../core/tauri/scripts', entryFileNames: 'bundle.js', format: 'umd', plugins: [ diff --git a/api/src/app.ts b/tooling/api/src/app.ts similarity index 100% rename from api/src/app.ts rename to tooling/api/src/app.ts diff --git a/api/src/bundle.ts b/tooling/api/src/bundle.ts similarity index 100% rename from api/src/bundle.ts rename to tooling/api/src/bundle.ts diff --git a/api/src/cli.ts b/tooling/api/src/cli.ts similarity index 100% rename from api/src/cli.ts rename to tooling/api/src/cli.ts diff --git a/api/src/dialog.ts b/tooling/api/src/dialog.ts similarity index 100% rename from api/src/dialog.ts rename to tooling/api/src/dialog.ts diff --git a/api/src/event.ts b/tooling/api/src/event.ts similarity index 100% rename from api/src/event.ts rename to tooling/api/src/event.ts diff --git a/api/src/fs.ts b/tooling/api/src/fs.ts similarity index 100% rename from api/src/fs.ts rename to tooling/api/src/fs.ts diff --git a/api/src/globalShortcut.ts b/tooling/api/src/globalShortcut.ts similarity index 100% rename from api/src/globalShortcut.ts rename to tooling/api/src/globalShortcut.ts diff --git a/api/src/helpers/event.ts b/tooling/api/src/helpers/event.ts similarity index 100% rename from api/src/helpers/event.ts rename to tooling/api/src/helpers/event.ts diff --git a/api/src/helpers/tauri.ts b/tooling/api/src/helpers/tauri.ts similarity index 100% rename from api/src/helpers/tauri.ts rename to tooling/api/src/helpers/tauri.ts diff --git a/api/src/http.ts b/tooling/api/src/http.ts similarity index 100% rename from api/src/http.ts rename to tooling/api/src/http.ts diff --git a/api/src/index.ts b/tooling/api/src/index.ts similarity index 100% rename from api/src/index.ts rename to tooling/api/src/index.ts diff --git a/api/src/notification.ts b/tooling/api/src/notification.ts similarity index 100% rename from api/src/notification.ts rename to tooling/api/src/notification.ts diff --git a/api/src/path.ts b/tooling/api/src/path.ts similarity index 100% rename from api/src/path.ts rename to tooling/api/src/path.ts diff --git a/api/src/shell.ts b/tooling/api/src/shell.ts similarity index 100% rename from api/src/shell.ts rename to tooling/api/src/shell.ts diff --git a/api/src/tauri.ts b/tooling/api/src/tauri.ts similarity index 100% rename from api/src/tauri.ts rename to tooling/api/src/tauri.ts diff --git a/api/src/updater.ts b/tooling/api/src/updater.ts similarity index 100% rename from api/src/updater.ts rename to tooling/api/src/updater.ts diff --git a/api/src/window.ts b/tooling/api/src/window.ts similarity index 100% rename from api/src/window.ts rename to tooling/api/src/window.ts diff --git a/api/tsconfig.json b/tooling/api/tsconfig.json similarity index 100% rename from api/tsconfig.json rename to tooling/api/tsconfig.json diff --git a/api/yarn.lock b/tooling/api/yarn.lock similarity index 97% rename from api/yarn.lock rename to tooling/api/yarn.lock index c96840fb22a..023a9c6a7f1 100644 --- a/api/yarn.lock +++ b/tooling/api/yarn.lock @@ -1318,11 +1318,6 @@ astral-regex@^2.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - babel-plugin-dynamic-import-node@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" @@ -1468,11 +1463,6 @@ colorette@^1.2.1: resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== -colors@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" - integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== - commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -1933,16 +1923,6 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== -fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -1989,7 +1969,7 @@ glob-parent@^5.0.0, glob-parent@^5.1.0: dependencies: is-glob "^4.0.1" -glob@7.1.6, glob@^7.0.0, glob@^7.1.3, glob@^7.1.6: +glob@7.1.6, glob@^7.1.3, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -2032,23 +2012,11 @@ globby@^11.0.1: merge2 "^1.3.0" slash "^3.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.2: version "4.2.6" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz#ff040b2b0853b23c3d31027523706f1885d76bee" integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== -handlebars@^4.7.6, handlebars@^4.7.7: - version "4.7.7" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" - integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== - dependencies: - minimist "^1.2.5" - neo-async "^2.6.0" - source-map "^0.6.1" - wordwrap "^1.0.0" - optionalDependencies: - uglify-js "^3.1.4" - has-bigints@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" @@ -2117,11 +2085,6 @@ inherits@2: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -interpret@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -2296,15 +2259,6 @@ json5@^2.1.2: dependencies: minimist "^1.2.5" -jsonfile@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" - integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== - dependencies: - universalify "^2.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -2365,7 +2319,6 @@ lodash@4.17.21, lodash@>=4.17.19, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -2373,11 +2326,6 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lunr@^2.3.9: - version "2.3.9" - resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" - integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== - magic-string@^0.25.7: version "0.25.7" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" @@ -2385,11 +2333,6 @@ magic-string@^0.25.7: dependencies: sourcemap-codec "^1.4.4" -marked@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/marked/-/marked-2.0.1.tgz#5e7ed7009bfa5c95182e4eb696f85e948cefcee3" - integrity sha512-5+/fKgMv2hARmMW7DOpykr2iLhl0NgjyELk5yn92iE7z8Se1IS9n3UsFm86hFXIkvMBmVxki8+ckcpjBeyo/hw== - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -2444,11 +2387,6 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= -neo-async@^2.6.0: - version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -2642,7 +2580,7 @@ prettier@2.2.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== -progress@^2.0.0, progress@^2.0.3: +progress@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -2681,13 +2619,6 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= - dependencies: - resolve "^1.1.6" - regenerate-unicode-properties@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" @@ -2756,7 +2687,7 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0: +resolve@^1.10.0, resolve@^1.10.1, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -2890,7 +2821,7 @@ source-map@^0.5.0: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -source-map@^0.6.0, source-map@^0.6.1: +source-map@^0.6.0: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -3108,11 +3039,6 @@ typescript@4.2.4: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== -uglify-js@^3.1.4: - version "3.13.1" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.13.1.tgz#2749d4b8b5b7d67460b4a418023ff73c3fefa60a" - integrity sha512-EWhx3fHy3M9JbaeTnO+rEqzCe1wtyQClv6q3YWq0voOj4E+bMZBErVS1GAHPDiRGONYq34M1/d8KuQMgvi6Gjw== - unbox-primitive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.0.tgz#eeacbc4affa28e9b3d36b5eaeccc50b3251b1d3f" @@ -3146,11 +3072,6 @@ unicode-property-aliases-ecmascript@^1.0.4: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== -universalify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" - integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== - uri-js@^4.2.2: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" @@ -3171,11 +3092,6 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -vscode-textmate@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-5.2.0.tgz#01f01760a391e8222fe4f33fbccbd1ad71aed74e" - integrity sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ== - which-boxed-primitive@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -3218,11 +3134,6 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" diff --git a/cli/tauri-bundler/.gitignore b/tooling/bundler/.gitignore similarity index 100% rename from cli/tauri-bundler/.gitignore rename to tooling/bundler/.gitignore diff --git a/cli/core/.license_template b/tooling/bundler/.license_template similarity index 100% rename from cli/core/.license_template rename to tooling/bundler/.license_template diff --git a/cli/tauri-bundler/CHANGELOG.md b/tooling/bundler/CHANGELOG.md similarity index 100% rename from cli/tauri-bundler/CHANGELOG.md rename to tooling/bundler/CHANGELOG.md diff --git a/cli/tauri-bundler/Cargo.lock b/tooling/bundler/Cargo.lock similarity index 100% rename from cli/tauri-bundler/Cargo.lock rename to tooling/bundler/Cargo.lock diff --git a/cli/tauri-bundler/Cargo.toml b/tooling/bundler/Cargo.toml similarity index 100% rename from cli/tauri-bundler/Cargo.toml rename to tooling/bundler/Cargo.toml diff --git a/cli/tauri-bundler/License_Apache.md b/tooling/bundler/License_Apache.md similarity index 100% rename from cli/tauri-bundler/License_Apache.md rename to tooling/bundler/License_Apache.md diff --git a/cli/tauri-bundler/License_MIT.md b/tooling/bundler/License_MIT.md similarity index 100% rename from cli/tauri-bundler/License_MIT.md rename to tooling/bundler/License_MIT.md diff --git a/cli/tauri-bundler/README.md b/tooling/bundler/README.md similarity index 99% rename from cli/tauri-bundler/README.md rename to tooling/bundler/README.md index 1e285c5d688..a0a9cf62487 100644 --- a/cli/tauri-bundler/README.md +++ b/tooling/bundler/README.md @@ -4,7 +4,7 @@ Wrap Rust executables in OS-specific app bundles. ## About -This is a fork of the awesome [cargo-bundle](https://github.com/burtonageo/cargo-bundle), turned into a library used by the [Tauri CLI](../core). +This is a fork of the awesome [cargo-bundle](https://github.com/burtonageo/cargo-bundle), turned into a library used by the [Tauri CLI](../cli.rs). ## Configuration diff --git a/cli/core/templates/src-tauri/rustfmt.toml b/tooling/bundler/rustfmt.toml similarity index 100% rename from cli/core/templates/src-tauri/rustfmt.toml rename to tooling/bundler/rustfmt.toml diff --git a/cli/tauri-bundler/src/bundle.rs b/tooling/bundler/src/bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle.rs rename to tooling/bundler/src/bundle.rs diff --git a/cli/tauri-bundler/src/bundle/appimage_bundle.rs b/tooling/bundler/src/bundle/appimage_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/appimage_bundle.rs rename to tooling/bundler/src/bundle/appimage_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/category.rs b/tooling/bundler/src/bundle/category.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/category.rs rename to tooling/bundler/src/bundle/category.rs diff --git a/cli/tauri-bundler/src/bundle/common.rs b/tooling/bundler/src/bundle/common.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/common.rs rename to tooling/bundler/src/bundle/common.rs diff --git a/cli/tauri-bundler/src/bundle/deb_bundle.rs b/tooling/bundler/src/bundle/deb_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/deb_bundle.rs rename to tooling/bundler/src/bundle/deb_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/dmg_bundle.rs b/tooling/bundler/src/bundle/dmg_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/dmg_bundle.rs rename to tooling/bundler/src/bundle/dmg_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/ios_bundle.rs b/tooling/bundler/src/bundle/ios_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/ios_bundle.rs rename to tooling/bundler/src/bundle/ios_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/macos_bundle.rs b/tooling/bundler/src/bundle/macos_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/macos_bundle.rs rename to tooling/bundler/src/bundle/macos_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/msi_bundle.rs b/tooling/bundler/src/bundle/msi_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/msi_bundle.rs rename to tooling/bundler/src/bundle/msi_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/path_utils.rs b/tooling/bundler/src/bundle/path_utils.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/path_utils.rs rename to tooling/bundler/src/bundle/path_utils.rs diff --git a/cli/tauri-bundler/src/bundle/platform.rs b/tooling/bundler/src/bundle/platform.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/platform.rs rename to tooling/bundler/src/bundle/platform.rs diff --git a/cli/tauri-bundler/src/bundle/rpm_bundle.rs b/tooling/bundler/src/bundle/rpm_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/rpm_bundle.rs rename to tooling/bundler/src/bundle/rpm_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/settings.rs b/tooling/bundler/src/bundle/settings.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/settings.rs rename to tooling/bundler/src/bundle/settings.rs diff --git a/cli/tauri-bundler/src/bundle/templates/appimage b/tooling/bundler/src/bundle/templates/appimage similarity index 100% rename from cli/tauri-bundler/src/bundle/templates/appimage rename to tooling/bundler/src/bundle/templates/appimage diff --git a/cli/tauri-bundler/src/bundle/templates/dmg/bundle_dmg b/tooling/bundler/src/bundle/templates/dmg/bundle_dmg similarity index 100% rename from cli/tauri-bundler/src/bundle/templates/dmg/bundle_dmg rename to tooling/bundler/src/bundle/templates/dmg/bundle_dmg diff --git a/cli/tauri-bundler/src/bundle/templates/dmg/dmg-license.py b/tooling/bundler/src/bundle/templates/dmg/dmg-license.py similarity index 100% rename from cli/tauri-bundler/src/bundle/templates/dmg/dmg-license.py rename to tooling/bundler/src/bundle/templates/dmg/dmg-license.py diff --git a/cli/tauri-bundler/src/bundle/templates/dmg/template.applescript b/tooling/bundler/src/bundle/templates/dmg/template.applescript similarity index 100% rename from cli/tauri-bundler/src/bundle/templates/dmg/template.applescript rename to tooling/bundler/src/bundle/templates/dmg/template.applescript diff --git a/cli/tauri-bundler/src/bundle/templates/main.wxs b/tooling/bundler/src/bundle/templates/main.wxs similarity index 100% rename from cli/tauri-bundler/src/bundle/templates/main.wxs rename to tooling/bundler/src/bundle/templates/main.wxs diff --git a/cli/tauri-bundler/src/bundle/updater_bundle.rs b/tooling/bundler/src/bundle/updater_bundle.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/updater_bundle.rs rename to tooling/bundler/src/bundle/updater_bundle.rs diff --git a/cli/tauri-bundler/src/bundle/wix.rs b/tooling/bundler/src/bundle/wix.rs similarity index 100% rename from cli/tauri-bundler/src/bundle/wix.rs rename to tooling/bundler/src/bundle/wix.rs diff --git a/cli/tauri-bundler/src/error.rs b/tooling/bundler/src/error.rs similarity index 100% rename from cli/tauri-bundler/src/error.rs rename to tooling/bundler/src/error.rs diff --git a/cli/tauri-bundler/src/lib.rs b/tooling/bundler/src/lib.rs similarity index 100% rename from cli/tauri-bundler/src/lib.rs rename to tooling/bundler/src/lib.rs diff --git a/cli/tauri.js/.env.jest b/tooling/cli.js/.env.jest similarity index 100% rename from cli/tauri.js/.env.jest rename to tooling/cli.js/.env.jest diff --git a/cli/tauri.js/.eslintrc.js b/tooling/cli.js/.eslintrc.js similarity index 100% rename from cli/tauri.js/.eslintrc.js rename to tooling/cli.js/.eslintrc.js diff --git a/cli/tauri.js/.gitignore b/tooling/cli.js/.gitignore similarity index 100% rename from cli/tauri.js/.gitignore rename to tooling/cli.js/.gitignore diff --git a/cli/tauri.js/.npmignore b/tooling/cli.js/.npmignore similarity index 100% rename from cli/tauri.js/.npmignore rename to tooling/cli.js/.npmignore diff --git a/cli/tauri.js/.prettierrc.js b/tooling/cli.js/.prettierrc.js similarity index 100% rename from cli/tauri.js/.prettierrc.js rename to tooling/cli.js/.prettierrc.js diff --git a/cli/tauri.js/CHANGELOG.md b/tooling/cli.js/CHANGELOG.md similarity index 100% rename from cli/tauri.js/CHANGELOG.md rename to tooling/cli.js/CHANGELOG.md diff --git a/cli/tauri.js/LICENSE b/tooling/cli.js/LICENSE similarity index 100% rename from cli/tauri.js/LICENSE rename to tooling/cli.js/LICENSE diff --git a/cli/tauri.js/README.md b/tooling/cli.js/README.md similarity index 96% rename from cli/tauri.js/README.md rename to tooling/cli.js/README.md index b9a9d8e30af..de4e9a9537a 100644 --- a/cli/tauri.js/README.md +++ b/tooling/cli.js/README.md @@ -18,7 +18,7 @@ Tauri is a tool for building tiny, blazing fast binaries for all major desktop p | Component | Version | | --------- | ------------------------------------------- | -| tauri.js | ![](https://img.shields.io/npm/v/tauri.svg) | +| cli.js | ![](https://img.shields.io/npm/v/tauri.svg) | Please visit the main readme for further information about contributing. diff --git a/cli/tauri.js/app-icon.png b/tooling/cli.js/app-icon.png similarity index 100% rename from cli/tauri.js/app-icon.png rename to tooling/cli.js/app-icon.png diff --git a/cli/tauri.js/architecture.md b/tooling/cli.js/architecture.md similarity index 100% rename from cli/tauri.js/architecture.md rename to tooling/cli.js/architecture.md diff --git a/cli/tauri.js/babel.config.js b/tooling/cli.js/babel.config.js similarity index 100% rename from cli/tauri.js/babel.config.js rename to tooling/cli.js/babel.config.js diff --git a/cli/tauri.js/bin/tauri-deps.js b/tooling/cli.js/bin/tauri-deps.js similarity index 100% rename from cli/tauri.js/bin/tauri-deps.js rename to tooling/cli.js/bin/tauri-deps.js diff --git a/cli/tauri.js/bin/tauri-icon.js b/tooling/cli.js/bin/tauri-icon.js similarity index 100% rename from cli/tauri.js/bin/tauri-icon.js rename to tooling/cli.js/bin/tauri-icon.js diff --git a/cli/tauri.js/bin/tauri.js b/tooling/cli.js/bin/tauri.js similarity index 100% rename from cli/tauri.js/bin/tauri.js rename to tooling/cli.js/bin/tauri.js diff --git a/cli/tauri.js/jest.config.js b/tooling/cli.js/jest.config.js similarity index 94% rename from cli/tauri.js/jest.config.js rename to tooling/cli.js/jest.config.js index b105a56ad56..c9c77966ac6 100644 --- a/cli/tauri.js/jest.config.js +++ b/tooling/cli.js/jest.config.js @@ -40,7 +40,6 @@ module.exports = { '../../package.json': '/package.json' }, transform: { - 'templates[\\\\/]tauri.js': './test/jest/raw-loader-transformer.js', '\\.toml$': 'jest-transform-toml', '\\.(js|ts)$': 'babel-jest' } diff --git a/cli/tauri.js/package.json b/tooling/cli.js/package.json similarity index 100% rename from cli/tauri.js/package.json rename to tooling/cli.js/package.json diff --git a/cli/tauri.js/scripts/is-admin.ps1 b/tooling/cli.js/scripts/is-admin.ps1 similarity index 100% rename from cli/tauri.js/scripts/is-admin.ps1 rename to tooling/cli.js/scripts/is-admin.ps1 diff --git a/cli/tauri.js/scripts/rustup-init.exe b/tooling/cli.js/scripts/rustup-init.exe similarity index 100% rename from cli/tauri.js/scripts/rustup-init.exe rename to tooling/cli.js/scripts/rustup-init.exe diff --git a/cli/tauri.js/scripts/rustup-init.sh b/tooling/cli.js/scripts/rustup-init.sh similarity index 100% rename from cli/tauri.js/scripts/rustup-init.sh rename to tooling/cli.js/scripts/rustup-init.sh diff --git a/cli/tauri.js/src/api/cli.ts b/tooling/cli.js/src/api/cli.ts similarity index 100% rename from cli/tauri.js/src/api/cli.ts rename to tooling/cli.js/src/api/cli.ts diff --git a/cli/tauri.js/src/api/dependency-manager/cargo-commands.ts b/tooling/cli.js/src/api/dependency-manager/cargo-commands.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/cargo-commands.ts rename to tooling/cli.js/src/api/dependency-manager/cargo-commands.ts diff --git a/cli/tauri.js/src/api/dependency-manager/cargo-crates.ts b/tooling/cli.js/src/api/dependency-manager/cargo-crates.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/cargo-crates.ts rename to tooling/cli.js/src/api/dependency-manager/cargo-crates.ts diff --git a/cli/tauri.js/src/api/dependency-manager/index.ts b/tooling/cli.js/src/api/dependency-manager/index.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/index.ts rename to tooling/cli.js/src/api/dependency-manager/index.ts diff --git a/cli/tauri.js/src/api/dependency-manager/npm-packages.ts b/tooling/cli.js/src/api/dependency-manager/npm-packages.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/npm-packages.ts rename to tooling/cli.js/src/api/dependency-manager/npm-packages.ts diff --git a/cli/tauri.js/src/api/dependency-manager/rust.ts b/tooling/cli.js/src/api/dependency-manager/rust.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/rust.ts rename to tooling/cli.js/src/api/dependency-manager/rust.ts diff --git a/cli/tauri.js/src/api/dependency-manager/types.ts b/tooling/cli.js/src/api/dependency-manager/types.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/types.ts rename to tooling/cli.js/src/api/dependency-manager/types.ts diff --git a/cli/tauri.js/src/api/dependency-manager/util.ts b/tooling/cli.js/src/api/dependency-manager/util.ts similarity index 100% rename from cli/tauri.js/src/api/dependency-manager/util.ts rename to tooling/cli.js/src/api/dependency-manager/util.ts diff --git a/cli/tauri.js/src/api/tauricon.ts b/tooling/cli.js/src/api/tauricon.ts similarity index 100% rename from cli/tauri.js/src/api/tauricon.ts rename to tooling/cli.js/src/api/tauricon.ts diff --git a/cli/tauri.js/src/helpers/app-paths.ts b/tooling/cli.js/src/helpers/app-paths.ts similarity index 100% rename from cli/tauri.js/src/helpers/app-paths.ts rename to tooling/cli.js/src/helpers/app-paths.ts diff --git a/cli/tauri.js/src/helpers/get-script-version.ts b/tooling/cli.js/src/helpers/get-script-version.ts similarity index 100% rename from cli/tauri.js/src/helpers/get-script-version.ts rename to tooling/cli.js/src/helpers/get-script-version.ts diff --git a/cli/tauri.js/src/helpers/logger.ts b/tooling/cli.js/src/helpers/logger.ts similarity index 100% rename from cli/tauri.js/src/helpers/logger.ts rename to tooling/cli.js/src/helpers/logger.ts diff --git a/cli/tauri.js/src/helpers/net.ts b/tooling/cli.js/src/helpers/net.ts similarity index 100% rename from cli/tauri.js/src/helpers/net.ts rename to tooling/cli.js/src/helpers/net.ts diff --git a/cli/tauri.js/src/helpers/non-webpack-require.ts b/tooling/cli.js/src/helpers/non-webpack-require.ts similarity index 100% rename from cli/tauri.js/src/helpers/non-webpack-require.ts rename to tooling/cli.js/src/helpers/non-webpack-require.ts diff --git a/cli/tauri.js/src/helpers/rust-cli.ts b/tooling/cli.js/src/helpers/rust-cli.ts similarity index 88% rename from cli/tauri.js/src/helpers/rust-cli.ts rename to tooling/cli.js/src/helpers/rust-cli.ts index 390cbc93e04..f72d9cbe8a4 100644 --- a/cli/tauri.js/src/helpers/rust-cli.ts +++ b/tooling/cli.js/src/helpers/rust-cli.ts @@ -9,7 +9,7 @@ import { CargoManifest } from '../types/cargo' const currentTauriCliVersion = (): string => { // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires, @typescript-eslint/no-unsafe-member-access - const tauriCliManifest = require('../../../core/Cargo.toml') as CargoManifest + const tauriCliManifest = require('../../../cli.rs/Cargo.toml') as CargoManifest return tauriCliManifest.package.version } @@ -43,13 +43,13 @@ export function runOnRustCli( onClose ) } else { - if (existsSync(resolve(targetPath, '../tauri-bundler'))) { + if (existsSync(resolve(targetPath, '../bundler'))) { // running local CLI - const cliPath = resolve(targetPath, '../core') + const cliPath = resolve(targetPath, '../cli.rs') spawnSync('cargo', ['build', '--release'], cliPath) const localCliPath = resolve( targetPath, - '../core/target/release/cargo-tauri' + '../cli.rs/target/release/cargo-tauri' ) pid = spawn( localCliPath, diff --git a/cli/tauri.js/src/helpers/spawn.ts b/tooling/cli.js/src/helpers/spawn.ts similarity index 100% rename from cli/tauri.js/src/helpers/spawn.ts rename to tooling/cli.js/src/helpers/spawn.ts diff --git a/cli/tauri.js/src/helpers/tauricon.config.ts b/tooling/cli.js/src/helpers/tauricon.config.ts similarity index 100% rename from cli/tauri.js/src/helpers/tauricon.config.ts rename to tooling/cli.js/src/helpers/tauricon.config.ts diff --git a/cli/tauri.js/src/types/cargo.ts b/tooling/cli.js/src/types/cargo.ts similarity index 100% rename from cli/tauri.js/src/types/cargo.ts rename to tooling/cli.js/src/types/cargo.ts diff --git a/cli/tauri.js/src/types/modules.d.ts b/tooling/cli.js/src/types/modules.d.ts similarity index 100% rename from cli/tauri.js/src/types/modules.d.ts rename to tooling/cli.js/src/types/modules.d.ts diff --git a/cli/tauri.js/test/jest/__tests__/build.spec.js b/tooling/cli.js/test/jest/__tests__/build.spec.js similarity index 100% rename from cli/tauri.js/test/jest/__tests__/build.spec.js rename to tooling/cli.js/test/jest/__tests__/build.spec.js diff --git a/cli/tauri.js/test/jest/__tests__/dev.spec.js b/tooling/cli.js/test/jest/__tests__/dev.spec.js similarity index 100% rename from cli/tauri.js/test/jest/__tests__/dev.spec.js rename to tooling/cli.js/test/jest/__tests__/dev.spec.js diff --git a/cli/tauri.js/test/jest/__tests__/tauri.spec.js b/tooling/cli.js/test/jest/__tests__/tauri.spec.js similarity index 97% rename from cli/tauri.js/test/jest/__tests__/tauri.spec.js rename to tooling/cli.js/test/jest/__tests__/tauri.spec.js index cf89a16faaa..cd395975ca4 100644 --- a/cli/tauri.js/test/jest/__tests__/tauri.spec.js +++ b/tooling/cli.js/test/jest/__tests__/tauri.spec.js @@ -1,6 +1,6 @@ const { tauri } = require('bin/tauri') -describe('[CLI] tauri.js', () => { +describe('[CLI] cli.js', () => { it('displays a help message', async () => { jest.spyOn(console, 'log') jest.spyOn(process, 'exit').mockImplementation(() => true) diff --git a/cli/tauri.js/test/jest/__tests__/tauricon.spec.js b/tooling/cli.js/test/jest/__tests__/tauricon.spec.js similarity index 100% rename from cli/tauri.js/test/jest/__tests__/tauricon.spec.js rename to tooling/cli.js/test/jest/__tests__/tauricon.spec.js diff --git a/cli/tauri.js/test/jest/__tests__/template.spec.js b/tooling/cli.js/test/jest/__tests__/template.spec.js similarity index 96% rename from cli/tauri.js/test/jest/__tests__/template.spec.js rename to tooling/cli.js/test/jest/__tests__/template.spec.js index a6947d01f6b..c400dce0719 100644 --- a/cli/tauri.js/test/jest/__tests__/template.spec.js +++ b/tooling/cli.js/test/jest/__tests__/template.spec.js @@ -2,7 +2,7 @@ const fixtureSetup = require('../fixtures/app-test-setup') const { resolve } = require('path') const { writeFileSync, readFileSync } = require('fs') -describe('[CLI] tauri.js template', () => { +describe('[CLI] cli.js template', () => { it('init a project and builds it', async () => { const cwd = process.cwd() const fixturePath = resolve(__dirname, '../fixtures/empty') diff --git a/cli/tauri.js/test/jest/fixtures/app-test-setup.js b/tooling/cli.js/test/jest/fixtures/app-test-setup.js similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app-test-setup.js rename to tooling/cli.js/test/jest/fixtures/app-test-setup.js diff --git a/cli/tauri.js/test/jest/fixtures/app/dist/index.html b/tooling/cli.js/test/jest/fixtures/app/dist/index.html similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/dist/index.html rename to tooling/cli.js/test/jest/fixtures/app/dist/index.html diff --git a/cli/tauri.js/test/jest/fixtures/app/index.js b/tooling/cli.js/test/jest/fixtures/app/index.js similarity index 89% rename from cli/tauri.js/test/jest/fixtures/app/index.js rename to tooling/cli.js/test/jest/fixtures/app/index.js index 8ebbac0f11c..9fc5fdaaf39 100644 --- a/cli/tauri.js/test/jest/fixtures/app/index.js +++ b/tooling/cli.js/test/jest/fixtures/app/index.js @@ -27,7 +27,7 @@ const exit = (code) => { const path = require('path') const dist = path.resolve(__dirname, 'dist') -const build = require('../cli/tauri.js/dist/api/build') +const build = require('../tooling/cli.js/dist/api/build') build({ build: { devPath: dist @@ -36,7 +36,7 @@ build({ debug: true } }).then(() => { - const spawn = require('../cli/tauri.js/dist/helpers/spawn').spawn + const spawn = require('../tooling/cli.js/dist/helpers/spawn').spawn const artifactPath = path.resolve(__dirname, 'src-tauri/target/debug/app') appPid = spawn( process.platform === 'win32' diff --git a/cli/tauri.js/test/jest/fixtures/app/package.json b/tooling/cli.js/test/jest/fixtures/app/package.json similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/package.json rename to tooling/cli.js/test/jest/fixtures/app/package.json diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/.gitignore b/tooling/cli.js/test/jest/fixtures/app/src-tauri/.gitignore similarity index 90% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/.gitignore rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/.gitignore index 7edd4be3fa3..088ba6ba7d3 100644 --- a/cli/tauri.js/test/jest/fixtures/app/src-tauri/.gitignore +++ b/tooling/cli.js/test/jest/fixtures/app/src-tauri/.gitignore @@ -8,7 +8,3 @@ Cargo.lock # These are backup files generated by rustfmt **/*.rs.bk - -tauri.js -config.json -bundle.json diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/Cargo.toml b/tooling/cli.js/test/jest/fixtures/app/src-tauri/Cargo.toml similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/Cargo.toml rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/Cargo.toml diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/128x128.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/128x128.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/128x128.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/128x128.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/128x128@2x.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/128x128@2x.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/128x128@2x.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/128x128@2x.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/32x32.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/32x32.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/32x32.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/32x32.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square107x107Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square107x107Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square107x107Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square107x107Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square142x142Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square142x142Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square142x142Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square142x142Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square150x150Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square150x150Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square150x150Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square150x150Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square284x284Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square284x284Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square284x284Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square284x284Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square30x30Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square30x30Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square30x30Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square30x30Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square310x310Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square310x310Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square310x310Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square310x310Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square44x44Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square44x44Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square44x44Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square44x44Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square71x71Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square71x71Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square71x71Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square71x71Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square89x89Logo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square89x89Logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/Square89x89Logo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/Square89x89Logo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/StoreLogo.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/StoreLogo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/StoreLogo.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/StoreLogo.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.icns b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.icns similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.icns rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.icns diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.ico b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.ico similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.ico rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.ico diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.png b/tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/icons/icon.png rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/icons/icon.png diff --git a/cli/tauri-bundler/rustfmt.toml b/tooling/cli.js/test/jest/fixtures/app/src-tauri/rustfmt.toml similarity index 100% rename from cli/tauri-bundler/rustfmt.toml rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/rustfmt.toml diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/src/main.rs b/tooling/cli.js/test/jest/fixtures/app/src-tauri/src/main.rs similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/src/main.rs rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/src/main.rs diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/tauri.conf.json b/tooling/cli.js/test/jest/fixtures/app/src-tauri/tauri.conf.json similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/tauri.conf.json rename to tooling/cli.js/test/jest/fixtures/app/src-tauri/tauri.conf.json diff --git a/cli/tauri.js/test/jest/fixtures/empty/.gitignore b/tooling/cli.js/test/jest/fixtures/empty/.gitignore similarity index 100% rename from cli/tauri.js/test/jest/fixtures/empty/.gitignore rename to tooling/cli.js/test/jest/fixtures/empty/.gitignore diff --git a/cli/tauri.js/test/jest/fixtures/empty/dist/index.html b/tooling/cli.js/test/jest/fixtures/empty/dist/index.html similarity index 100% rename from cli/tauri.js/test/jest/fixtures/empty/dist/index.html rename to tooling/cli.js/test/jest/fixtures/empty/dist/index.html diff --git a/cli/tauri.js/test/jest/fixtures/empty/package.json b/tooling/cli.js/test/jest/fixtures/empty/package.json similarity index 100% rename from cli/tauri.js/test/jest/fixtures/empty/package.json rename to tooling/cli.js/test/jest/fixtures/empty/package.json diff --git a/cli/tauri.js/test/jest/fixtures/notAMeme.jpg b/tooling/cli.js/test/jest/fixtures/notAMeme.jpg similarity index 100% rename from cli/tauri.js/test/jest/fixtures/notAMeme.jpg rename to tooling/cli.js/test/jest/fixtures/notAMeme.jpg diff --git a/cli/tauri.js/test/jest/fixtures/tauri-logo.png b/tooling/cli.js/test/jest/fixtures/tauri-logo.png similarity index 100% rename from cli/tauri.js/test/jest/fixtures/tauri-logo.png rename to tooling/cli.js/test/jest/fixtures/tauri-logo.png diff --git a/cli/tauri.js/test/jest/jest.setup.js b/tooling/cli.js/test/jest/jest.setup.js similarity index 100% rename from cli/tauri.js/test/jest/jest.setup.js rename to tooling/cli.js/test/jest/jest.setup.js diff --git a/cli/tauri.js/tsconfig.json b/tooling/cli.js/tsconfig.json similarity index 100% rename from cli/tauri.js/tsconfig.json rename to tooling/cli.js/tsconfig.json diff --git a/cli/tauri.js/webpack.config.js b/tooling/cli.js/webpack.config.js similarity index 100% rename from cli/tauri.js/webpack.config.js rename to tooling/cli.js/webpack.config.js diff --git a/cli/tauri.js/yarn.lock b/tooling/cli.js/yarn.lock similarity index 100% rename from cli/tauri.js/yarn.lock rename to tooling/cli.js/yarn.lock diff --git a/cli/tauri-bundler/.license_template b/tooling/cli.rs/.license_template similarity index 100% rename from cli/tauri-bundler/.license_template rename to tooling/cli.rs/.license_template diff --git a/cli/core/Cargo.lock b/tooling/cli.rs/Cargo.lock similarity index 100% rename from cli/core/Cargo.lock rename to tooling/cli.rs/Cargo.lock diff --git a/cli/core/Cargo.toml b/tooling/cli.rs/Cargo.toml similarity index 93% rename from cli/core/Cargo.toml rename to tooling/cli.rs/Cargo.toml index 4666d9edd49..3ccdb311aaf 100644 --- a/cli/core/Cargo.toml +++ b/tooling/cli.rs/Cargo.toml @@ -14,7 +14,7 @@ path = "src/main.rs" [dependencies] clap = { version = "3.0.0-beta.2", features = [ "yaml" ] } anyhow = "1.0" -tauri-bundler = { version = "0.9.4", path = "../tauri-bundler" } +tauri-bundler = { version = "0.9.4", path = "../bundler" } colored = "2.0" once_cell = "1.7" serde = { version = "1.0", features = [ "derive" ] } diff --git a/cli/core/build.rs b/tooling/cli.rs/build.rs similarity index 100% rename from cli/core/build.rs rename to tooling/cli.rs/build.rs diff --git a/cli/core/config_definition.rs b/tooling/cli.rs/config_definition.rs similarity index 100% rename from cli/core/config_definition.rs rename to tooling/cli.rs/config_definition.rs diff --git a/cli/core/schema.json b/tooling/cli.rs/schema.json similarity index 100% rename from cli/core/schema.json rename to tooling/cli.rs/schema.json diff --git a/cli/core/src/MergeModules/Microsoft_VC142_CRT_x64.msm b/tooling/cli.rs/src/MergeModules/Microsoft_VC142_CRT_x64.msm similarity index 100% rename from cli/core/src/MergeModules/Microsoft_VC142_CRT_x64.msm rename to tooling/cli.rs/src/MergeModules/Microsoft_VC142_CRT_x64.msm diff --git a/cli/core/src/MergeModules/Microsoft_VC142_CRT_x86.msm b/tooling/cli.rs/src/MergeModules/Microsoft_VC142_CRT_x86.msm similarity index 100% rename from cli/core/src/MergeModules/Microsoft_VC142_CRT_x86.msm rename to tooling/cli.rs/src/MergeModules/Microsoft_VC142_CRT_x86.msm diff --git a/cli/core/src/build.rs b/tooling/cli.rs/src/build.rs similarity index 100% rename from cli/core/src/build.rs rename to tooling/cli.rs/src/build.rs diff --git a/cli/core/src/build/rust.rs b/tooling/cli.rs/src/build/rust.rs similarity index 100% rename from cli/core/src/build/rust.rs rename to tooling/cli.rs/src/build/rust.rs diff --git a/cli/core/src/cli.yml b/tooling/cli.rs/src/cli.yml similarity index 100% rename from cli/core/src/cli.yml rename to tooling/cli.rs/src/cli.yml diff --git a/cli/core/src/dev.rs b/tooling/cli.rs/src/dev.rs similarity index 100% rename from cli/core/src/dev.rs rename to tooling/cli.rs/src/dev.rs diff --git a/cli/core/src/helpers/app_paths.rs b/tooling/cli.rs/src/helpers/app_paths.rs similarity index 100% rename from cli/core/src/helpers/app_paths.rs rename to tooling/cli.rs/src/helpers/app_paths.rs diff --git a/cli/core/src/helpers/config.rs b/tooling/cli.rs/src/helpers/config.rs similarity index 100% rename from cli/core/src/helpers/config.rs rename to tooling/cli.rs/src/helpers/config.rs diff --git a/cli/core/src/helpers/logger.rs b/tooling/cli.rs/src/helpers/logger.rs similarity index 100% rename from cli/core/src/helpers/logger.rs rename to tooling/cli.rs/src/helpers/logger.rs diff --git a/cli/core/src/helpers/manifest.rs b/tooling/cli.rs/src/helpers/manifest.rs similarity index 100% rename from cli/core/src/helpers/manifest.rs rename to tooling/cli.rs/src/helpers/manifest.rs diff --git a/cli/core/src/helpers/mod.rs b/tooling/cli.rs/src/helpers/mod.rs similarity index 100% rename from cli/core/src/helpers/mod.rs rename to tooling/cli.rs/src/helpers/mod.rs diff --git a/cli/core/src/helpers/updater_signature.rs b/tooling/cli.rs/src/helpers/updater_signature.rs similarity index 100% rename from cli/core/src/helpers/updater_signature.rs rename to tooling/cli.rs/src/helpers/updater_signature.rs diff --git a/cli/core/src/info.rs b/tooling/cli.rs/src/info.rs similarity index 99% rename from cli/core/src/info.rs rename to tooling/cli.rs/src/info.rs index 1759fe0a130..7fcdd1b73d0 100644 --- a/cli/core/src/info.rs +++ b/tooling/cli.rs/src/info.rs @@ -280,7 +280,7 @@ impl Info { if let Some(node_version) = get_version("node", &[]).unwrap_or_default() { InfoBlock::new("Node.js environment").section().display(); let cli_package_json: PackageJson = - serde_json::from_str(include_str!("../../tauri.js/package.json"))?; + serde_json::from_str(include_str!("../../cli.js/package.json"))?; VersionBlock::new( " Node.js", node_version.chars().skip(1).collect::(), diff --git a/cli/core/src/init.rs b/tooling/cli.rs/src/init.rs similarity index 100% rename from cli/core/src/init.rs rename to tooling/cli.rs/src/init.rs diff --git a/cli/core/src/main.rs b/tooling/cli.rs/src/main.rs similarity index 100% rename from cli/core/src/main.rs rename to tooling/cli.rs/src/main.rs diff --git a/cli/core/src/sign.rs b/tooling/cli.rs/src/sign.rs similarity index 100% rename from cli/core/src/sign.rs rename to tooling/cli.rs/src/sign.rs diff --git a/cli/core/templates/src-tauri/.gitignore b/tooling/cli.rs/templates/src-tauri/.gitignore similarity index 100% rename from cli/core/templates/src-tauri/.gitignore rename to tooling/cli.rs/templates/src-tauri/.gitignore diff --git a/cli/core/templates/src-tauri/Cargo.toml b/tooling/cli.rs/templates/src-tauri/Cargo.toml similarity index 100% rename from cli/core/templates/src-tauri/Cargo.toml rename to tooling/cli.rs/templates/src-tauri/Cargo.toml diff --git a/cli/core/templates/src-tauri/icons/128x128.png b/tooling/cli.rs/templates/src-tauri/icons/128x128.png similarity index 100% rename from cli/core/templates/src-tauri/icons/128x128.png rename to tooling/cli.rs/templates/src-tauri/icons/128x128.png diff --git a/cli/core/templates/src-tauri/icons/128x128@2x.png b/tooling/cli.rs/templates/src-tauri/icons/128x128@2x.png similarity index 100% rename from cli/core/templates/src-tauri/icons/128x128@2x.png rename to tooling/cli.rs/templates/src-tauri/icons/128x128@2x.png diff --git a/cli/core/templates/src-tauri/icons/32x32.png b/tooling/cli.rs/templates/src-tauri/icons/32x32.png similarity index 100% rename from cli/core/templates/src-tauri/icons/32x32.png rename to tooling/cli.rs/templates/src-tauri/icons/32x32.png diff --git a/cli/core/templates/src-tauri/icons/Square107x107Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square107x107Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square107x107Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square107x107Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square142x142Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square142x142Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square142x142Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square142x142Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square150x150Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square150x150Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square150x150Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square150x150Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square284x284Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square284x284Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square284x284Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square284x284Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square30x30Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square30x30Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square30x30Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square30x30Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square310x310Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square310x310Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square310x310Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square310x310Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square44x44Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square44x44Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square44x44Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square44x44Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square71x71Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square71x71Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square71x71Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square71x71Logo.png diff --git a/cli/core/templates/src-tauri/icons/Square89x89Logo.png b/tooling/cli.rs/templates/src-tauri/icons/Square89x89Logo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/Square89x89Logo.png rename to tooling/cli.rs/templates/src-tauri/icons/Square89x89Logo.png diff --git a/cli/core/templates/src-tauri/icons/StoreLogo.png b/tooling/cli.rs/templates/src-tauri/icons/StoreLogo.png similarity index 100% rename from cli/core/templates/src-tauri/icons/StoreLogo.png rename to tooling/cli.rs/templates/src-tauri/icons/StoreLogo.png diff --git a/cli/core/templates/src-tauri/icons/icon.icns b/tooling/cli.rs/templates/src-tauri/icons/icon.icns similarity index 100% rename from cli/core/templates/src-tauri/icons/icon.icns rename to tooling/cli.rs/templates/src-tauri/icons/icon.icns diff --git a/cli/core/templates/src-tauri/icons/icon.ico b/tooling/cli.rs/templates/src-tauri/icons/icon.ico similarity index 100% rename from cli/core/templates/src-tauri/icons/icon.ico rename to tooling/cli.rs/templates/src-tauri/icons/icon.ico diff --git a/cli/core/templates/src-tauri/icons/icon.png b/tooling/cli.rs/templates/src-tauri/icons/icon.png similarity index 100% rename from cli/core/templates/src-tauri/icons/icon.png rename to tooling/cli.rs/templates/src-tauri/icons/icon.png diff --git a/cli/tauri.js/test/jest/fixtures/app/src-tauri/rustfmt.toml b/tooling/cli.rs/templates/src-tauri/rustfmt.toml similarity index 100% rename from cli/tauri.js/test/jest/fixtures/app/src-tauri/rustfmt.toml rename to tooling/cli.rs/templates/src-tauri/rustfmt.toml diff --git a/cli/core/templates/src-tauri/src/build.rs b/tooling/cli.rs/templates/src-tauri/src/build.rs similarity index 100% rename from cli/core/templates/src-tauri/src/build.rs rename to tooling/cli.rs/templates/src-tauri/src/build.rs diff --git a/cli/core/templates/src-tauri/src/main.rs b/tooling/cli.rs/templates/src-tauri/src/main.rs similarity index 100% rename from cli/core/templates/src-tauri/src/main.rs rename to tooling/cli.rs/templates/src-tauri/src/main.rs diff --git a/cli/core/templates/src-tauri/tauri.conf.json b/tooling/cli.rs/templates/src-tauri/tauri.conf.json similarity index 100% rename from cli/core/templates/src-tauri/tauri.conf.json rename to tooling/cli.rs/templates/src-tauri/tauri.conf.json diff --git a/cli/create-tauri-app/.gitignore b/tooling/create-tauri-app/.gitignore similarity index 99% rename from cli/create-tauri-app/.gitignore rename to tooling/create-tauri-app/.gitignore index bbc479e8b0c..420153799ce 100644 --- a/cli/create-tauri-app/.gitignore +++ b/tooling/create-tauri-app/.gitignore @@ -1,6 +1,5 @@ # Build output /dist -/api # lock for libs /Cargo.lock diff --git a/cli/create-tauri-app/bin/create-tauri-app.js b/tooling/create-tauri-app/bin/create-tauri-app.js similarity index 100% rename from cli/create-tauri-app/bin/create-tauri-app.js rename to tooling/create-tauri-app/bin/create-tauri-app.js diff --git a/cli/create-tauri-app/package.json b/tooling/create-tauri-app/package.json similarity index 100% rename from cli/create-tauri-app/package.json rename to tooling/create-tauri-app/package.json diff --git a/cli/create-tauri-app/readme.md b/tooling/create-tauri-app/readme.md similarity index 100% rename from cli/create-tauri-app/readme.md rename to tooling/create-tauri-app/readme.md diff --git a/cli/create-tauri-app/rollup.config.js b/tooling/create-tauri-app/rollup.config.js similarity index 100% rename from cli/create-tauri-app/rollup.config.js rename to tooling/create-tauri-app/rollup.config.js diff --git a/cli/create-tauri-app/src/dependency-manager.ts b/tooling/create-tauri-app/src/dependency-manager.ts similarity index 100% rename from cli/create-tauri-app/src/dependency-manager.ts rename to tooling/create-tauri-app/src/dependency-manager.ts diff --git a/cli/create-tauri-app/src/index.ts b/tooling/create-tauri-app/src/index.ts similarity index 100% rename from cli/create-tauri-app/src/index.ts rename to tooling/create-tauri-app/src/index.ts diff --git a/cli/create-tauri-app/src/recipes/react.ts b/tooling/create-tauri-app/src/recipes/react.ts similarity index 100% rename from cli/create-tauri-app/src/recipes/react.ts rename to tooling/create-tauri-app/src/recipes/react.ts diff --git a/cli/create-tauri-app/src/recipes/vanilla.ts b/tooling/create-tauri-app/src/recipes/vanilla.ts similarity index 100% rename from cli/create-tauri-app/src/recipes/vanilla.ts rename to tooling/create-tauri-app/src/recipes/vanilla.ts diff --git a/cli/create-tauri-app/src/shell.ts b/tooling/create-tauri-app/src/shell.ts similarity index 100% rename from cli/create-tauri-app/src/shell.ts rename to tooling/create-tauri-app/src/shell.ts diff --git a/cli/create-tauri-app/src/templates/react/src/App.css b/tooling/create-tauri-app/src/templates/react/src/App.css similarity index 100% rename from cli/create-tauri-app/src/templates/react/src/App.css rename to tooling/create-tauri-app/src/templates/react/src/App.css diff --git a/cli/create-tauri-app/src/templates/react/src/App.js b/tooling/create-tauri-app/src/templates/react/src/App.js similarity index 100% rename from cli/create-tauri-app/src/templates/react/src/App.js rename to tooling/create-tauri-app/src/templates/react/src/App.js diff --git a/cli/create-tauri-app/src/templates/react/src/tauri.svg b/tooling/create-tauri-app/src/templates/react/src/tauri.svg similarity index 100% rename from cli/create-tauri-app/src/templates/react/src/tauri.svg rename to tooling/create-tauri-app/src/templates/react/src/tauri.svg diff --git a/cli/create-tauri-app/src/templates/react/src/wordmark.svg b/tooling/create-tauri-app/src/templates/react/src/wordmark.svg similarity index 100% rename from cli/create-tauri-app/src/templates/react/src/wordmark.svg rename to tooling/create-tauri-app/src/templates/react/src/wordmark.svg diff --git a/cli/create-tauri-app/src/templates/vanilla/_package.json b/tooling/create-tauri-app/src/templates/vanilla/_package.json similarity index 100% rename from cli/create-tauri-app/src/templates/vanilla/_package.json rename to tooling/create-tauri-app/src/templates/vanilla/_package.json diff --git a/cli/create-tauri-app/src/templates/vanilla/dist/_index.html b/tooling/create-tauri-app/src/templates/vanilla/dist/_index.html similarity index 100% rename from cli/create-tauri-app/src/templates/vanilla/dist/_index.html rename to tooling/create-tauri-app/src/templates/vanilla/dist/_index.html diff --git a/cli/create-tauri-app/src/types/config.ts b/tooling/create-tauri-app/src/types/config.ts similarity index 100% rename from cli/create-tauri-app/src/types/config.ts rename to tooling/create-tauri-app/src/types/config.ts diff --git a/cli/create-tauri-app/src/types/deps.ts b/tooling/create-tauri-app/src/types/deps.ts similarity index 100% rename from cli/create-tauri-app/src/types/deps.ts rename to tooling/create-tauri-app/src/types/deps.ts diff --git a/cli/create-tauri-app/tsconfig.json b/tooling/create-tauri-app/tsconfig.json similarity index 100% rename from cli/create-tauri-app/tsconfig.json rename to tooling/create-tauri-app/tsconfig.json