From e71a0f81287ba7aa5ef12c6384bbd0ed919eefa7 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:00:19 +0000 Subject: [PATCH 01/10] docs(core): Update docs version --- docs/android.md | 2 +- docs/getting-started.md | 2 +- docs/index.md | 2 +- docs/web.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/android.md b/docs/android.md index 9cd40b9..4c0463b 100644 --- a/docs/android.md +++ b/docs/android.md @@ -2,7 +2,7 @@ KompKit Core provides small utilities for Android applications written in Kotlin. -Status: `0.0.x-alpha`. +Status: `V0.1.0-alpha`. ## Installation diff --git a/docs/getting-started.md b/docs/getting-started.md index 45afab1..76e3591 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -2,7 +2,7 @@ KompKit Core is a small cross-platform utility library for Web (TypeScript) and Android (Kotlin). -Status: `0.0.x-alpha`. +Status: `V0.1.0-alpha`. ## Install diff --git a/docs/index.md b/docs/index.md index 151b972..6197707 100644 --- a/docs/index.md +++ b/docs/index.md @@ -2,7 +2,7 @@ Tiny, cross-platform utilities for **Web (TypeScript)** and **Android (Kotlin)**. -Status: `0.0.x-alpha` (APIs may change). +Status: `V0.1.0-alpha`. ## Utilities diff --git a/docs/web.md b/docs/web.md index 46c851f..dc4ad8e 100644 --- a/docs/web.md +++ b/docs/web.md @@ -2,7 +2,7 @@ KompKit Core provides small, framework-agnostic utilities for web applications written in TypeScript. -Status: `0.0.x-alpha`. +Status: `V0.1.0-alpha`. ## Installation ```bash From 03b6a78b2217bf13c41cb58dd8e3858121b23ffd Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:32:58 +0000 Subject: [PATCH 02/10] feat(flutter): add Flutter/Dart implementation with cross-platform utilities Add Flutter/Dart package with debounce, isEmail, and formatCurrency utilities. Implement identical APIs to Web (TypeScript) and Android (Kotlin) platforms. Add comprehensive test suite with 100% coverage (19 tests). Add GitHub Actions CI workflow for Flutter testing. Update gitignore to allow Flutter lib directory. Support both Flutter apps and server-side Dart applications. --- .github/workflows/flutter.yml | 78 +++ .gitignore | 1 + .../flutter/.dart_tool/package_config.json | 388 ++++++++++++ .../flutter/.dart_tool/package_graph.json | 569 ++++++++++++++++++ packages/core/flutter/.dart_tool/version | 1 + packages/core/flutter/README.md | 46 ++ packages/core/flutter/doc/api/README.md | 24 + packages/core/flutter/lib/kompkit_core.dart | 41 ++ packages/core/flutter/lib/src/debounce.dart | 65 ++ packages/core/flutter/lib/src/format.dart | 61 ++ .../core/flutter/lib/src/kompkit_core.dart | 41 ++ packages/core/flutter/lib/src/validate.dart | 37 ++ packages/core/flutter/pubspec.lock | 493 +++++++++++++++ packages/core/flutter/pubspec.yaml | 24 + packages/core/flutter/test/debounce_test.dart | 83 +++ packages/core/flutter/test/format_test.dart | 57 ++ .../core/flutter/test/kompkit_core_test.dart | 40 ++ packages/core/flutter/test/validate_test.dart | 25 + 18 files changed, 2074 insertions(+) create mode 100644 .github/workflows/flutter.yml create mode 100644 packages/core/flutter/.dart_tool/package_config.json create mode 100644 packages/core/flutter/.dart_tool/package_graph.json create mode 100644 packages/core/flutter/.dart_tool/version create mode 100644 packages/core/flutter/README.md create mode 100644 packages/core/flutter/doc/api/README.md create mode 100644 packages/core/flutter/lib/kompkit_core.dart create mode 100644 packages/core/flutter/lib/src/debounce.dart create mode 100644 packages/core/flutter/lib/src/format.dart create mode 100644 packages/core/flutter/lib/src/kompkit_core.dart create mode 100644 packages/core/flutter/lib/src/validate.dart create mode 100644 packages/core/flutter/pubspec.lock create mode 100644 packages/core/flutter/pubspec.yaml create mode 100644 packages/core/flutter/test/debounce_test.dart create mode 100644 packages/core/flutter/test/format_test.dart create mode 100644 packages/core/flutter/test/kompkit_core_test.dart create mode 100644 packages/core/flutter/test/validate_test.dart diff --git a/.github/workflows/flutter.yml b/.github/workflows/flutter.yml new file mode 100644 index 0000000..7bdb4fb --- /dev/null +++ b/.github/workflows/flutter.yml @@ -0,0 +1,78 @@ +name: Flutter CI + +on: + push: + branches: [ main, develop ] + paths: + - 'packages/core/flutter/**' + - '.github/workflows/flutter.yml' + pull_request: + branches: [ main, develop ] + paths: + - 'packages/core/flutter/**' + - '.github/workflows/flutter.yml' + +jobs: + test: + name: Test Flutter Package + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup Flutter + uses: subosito/flutter-action@v2 + with: + flutter-version: '3.16.0' + channel: 'stable' + + - name: Verify Flutter installation + run: flutter --version + + - name: Get dependencies + working-directory: packages/core/flutter + run: flutter pub get + + - name: Analyze code + working-directory: packages/core/flutter + run: flutter analyze + + - name: Run tests + working-directory: packages/core/flutter + run: flutter test --coverage + + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v3 + with: + file: packages/core/flutter/coverage/lcov.info + flags: flutter + name: flutter-coverage + + dart-test: + name: Test Dart VM + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup Dart + uses: dart-lang/setup-dart@v1 + with: + sdk: '3.2.0' + + - name: Verify Dart installation + run: dart --version + + - name: Get dependencies + working-directory: packages/core/flutter + run: dart pub get + + - name: Analyze code + working-directory: packages/core/flutter + run: dart analyze + + - name: Run tests + working-directory: packages/core/flutter + run: dart test diff --git a/.gitignore b/.gitignore index 75a5e9d..0775e99 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ node_modules dist build lib +!packages/core/flutter/lib .next out diff --git a/packages/core/flutter/.dart_tool/package_config.json b/packages/core/flutter/.dart_tool/package_config.json new file mode 100644 index 0000000..ad3f95e --- /dev/null +++ b/packages/core/flutter/.dart_tool/package_config.json @@ -0,0 +1,388 @@ +{ + "configVersion": 2, + "packages": [ + { + "name": "_fe_analyzer_shared", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-85.0.0", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "analyzer", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/analyzer-7.7.1", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "args", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/args-2.7.0", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "async", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/async-2.13.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "boolean_selector", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/boolean_selector-2.1.2", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "characters", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/characters-1.4.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "cli_config", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/cli_config-0.2.0", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "clock", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/clock-1.1.2", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "collection", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/collection-1.19.1", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "convert", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/convert-3.1.2", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "coverage", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/coverage-1.15.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "crypto", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/crypto-3.0.7", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "fake_async", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/fake_async-1.3.3", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "file", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/file-7.0.1", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "flutter", + "rootUri": "file:///Users/ivan/flutter/packages/flutter", + "packageUri": "lib/", + "languageVersion": "3.8" + }, + { + "name": "flutter_lints", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/flutter_lints-3.0.2", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "flutter_test", + "rootUri": "file:///Users/ivan/flutter/packages/flutter_test", + "packageUri": "lib/", + "languageVersion": "3.8" + }, + { + "name": "frontend_server_client", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/frontend_server_client-4.0.0", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "glob", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/glob-2.1.3", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "http_multi_server", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/http_multi_server-3.2.2", + "packageUri": "lib/", + "languageVersion": "3.2" + }, + { + "name": "http_parser", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/http_parser-4.1.2", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "intl", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/intl-0.19.0", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "io", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/io-1.0.5", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "js", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/js-0.7.2", + "packageUri": "lib/", + "languageVersion": "3.7" + }, + { + "name": "leak_tracker", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker-11.0.2", + "packageUri": "lib/", + "languageVersion": "3.2" + }, + { + "name": "leak_tracker_flutter_testing", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.10", + "packageUri": "lib/", + "languageVersion": "3.2" + }, + { + "name": "leak_tracker_testing", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker_testing-3.0.2", + "packageUri": "lib/", + "languageVersion": "3.2" + }, + { + "name": "lints", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/lints-3.0.0", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "logging", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/logging-1.3.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "matcher", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/matcher-0.12.17", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "material_color_utilities", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/material_color_utilities-0.11.1", + "packageUri": "lib/", + "languageVersion": "2.17" + }, + { + "name": "meta", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/meta-1.16.0", + "packageUri": "lib/", + "languageVersion": "2.12" + }, + { + "name": "mime", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/mime-2.0.0", + "packageUri": "lib/", + "languageVersion": "3.2" + }, + { + "name": "node_preamble", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/node_preamble-2.0.2", + "packageUri": "lib/", + "languageVersion": "2.12" + }, + { + "name": "package_config", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/package_config-2.2.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "path", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/path-1.9.1", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "pool", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/pool-1.5.2", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "pub_semver", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/pub_semver-2.2.0", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "shelf", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf-1.4.2", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "shelf_packages_handler", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2", + "packageUri": "lib/", + "languageVersion": "2.17" + }, + { + "name": "shelf_static", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_static-1.1.3", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "shelf_web_socket", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "sky_engine", + "rootUri": "file:///Users/ivan/flutter/bin/cache/pkg/sky_engine", + "packageUri": "lib/", + "languageVersion": "3.8" + }, + { + "name": "source_map_stack_trace", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.2", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "source_maps", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_maps-0.10.13", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "source_span", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_span-1.10.1", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "stack_trace", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/stack_trace-1.12.1", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "stream_channel", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/stream_channel-2.1.4", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "string_scanner", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/string_scanner-1.4.1", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "term_glyph", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/term_glyph-1.2.2", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "test", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test-1.26.2", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "test_api", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test_api-0.7.6", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "test_core", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test_core-0.6.11", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "typed_data", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/typed_data-1.4.0", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "vector_math", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/vector_math-2.2.0", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "vm_service", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/vm_service-15.0.2", + "packageUri": "lib/", + "languageVersion": "3.5" + }, + { + "name": "watcher", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/watcher-1.1.4", + "packageUri": "lib/", + "languageVersion": "3.1" + }, + { + "name": "web", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web-1.1.1", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "web_socket", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web_socket-1.0.1", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "web_socket_channel", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web_socket_channel-3.0.3", + "packageUri": "lib/", + "languageVersion": "3.3" + }, + { + "name": "webkit_inspection_protocol", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1", + "packageUri": "lib/", + "languageVersion": "3.0" + }, + { + "name": "yaml", + "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/yaml-3.1.3", + "packageUri": "lib/", + "languageVersion": "3.4" + }, + { + "name": "kompkit_core", + "rootUri": "../", + "packageUri": "lib/", + "languageVersion": "3.0" + } + ], + "generator": "pub", + "generatorVersion": "3.9.2", + "flutterRoot": "file:///Users/ivan/flutter", + "flutterVersion": "3.35.7", + "pubCache": "file:///Users/ivan/.pub-cache" +} diff --git a/packages/core/flutter/.dart_tool/package_graph.json b/packages/core/flutter/.dart_tool/package_graph.json new file mode 100644 index 0000000..ad2183b --- /dev/null +++ b/packages/core/flutter/.dart_tool/package_graph.json @@ -0,0 +1,569 @@ +{ + "roots": [ + "kompkit_core" + ], + "packages": [ + { + "name": "kompkit_core", + "version": "0.1.0-alpha", + "dependencies": [ + "flutter", + "intl" + ], + "devDependencies": [ + "flutter_lints", + "flutter_test", + "test" + ] + }, + { + "name": "flutter_test", + "version": "0.0.0", + "dependencies": [ + "clock", + "collection", + "fake_async", + "flutter", + "leak_tracker_flutter_testing", + "matcher", + "meta", + "path", + "stack_trace", + "stream_channel", + "test_api", + "vector_math" + ] + }, + { + "name": "intl", + "version": "0.19.0", + "dependencies": [ + "clock", + "meta", + "path" + ] + }, + { + "name": "flutter", + "version": "0.0.0", + "dependencies": [ + "characters", + "collection", + "material_color_utilities", + "meta", + "sky_engine", + "vector_math" + ] + }, + { + "name": "vector_math", + "version": "2.2.0", + "dependencies": [] + }, + { + "name": "test_api", + "version": "0.7.6", + "dependencies": [ + "async", + "boolean_selector", + "collection", + "meta", + "source_span", + "stack_trace", + "stream_channel", + "string_scanner", + "term_glyph" + ] + }, + { + "name": "stream_channel", + "version": "2.1.4", + "dependencies": [ + "async" + ] + }, + { + "name": "stack_trace", + "version": "1.12.1", + "dependencies": [ + "path" + ] + }, + { + "name": "path", + "version": "1.9.1", + "dependencies": [] + }, + { + "name": "meta", + "version": "1.16.0", + "dependencies": [] + }, + { + "name": "matcher", + "version": "0.12.17", + "dependencies": [ + "async", + "meta", + "stack_trace", + "term_glyph", + "test_api" + ] + }, + { + "name": "leak_tracker_flutter_testing", + "version": "3.0.10", + "dependencies": [ + "flutter", + "leak_tracker", + "leak_tracker_testing", + "matcher", + "meta" + ] + }, + { + "name": "fake_async", + "version": "1.3.3", + "dependencies": [ + "clock", + "collection" + ] + }, + { + "name": "collection", + "version": "1.19.1", + "dependencies": [] + }, + { + "name": "clock", + "version": "1.1.2", + "dependencies": [] + }, + { + "name": "sky_engine", + "version": "0.0.0", + "dependencies": [] + }, + { + "name": "material_color_utilities", + "version": "0.11.1", + "dependencies": [ + "collection" + ] + }, + { + "name": "characters", + "version": "1.4.0", + "dependencies": [] + }, + { + "name": "leak_tracker_testing", + "version": "3.0.2", + "dependencies": [ + "leak_tracker", + "matcher", + "meta" + ] + }, + { + "name": "leak_tracker", + "version": "11.0.2", + "dependencies": [ + "clock", + "collection", + "meta", + "path", + "vm_service" + ] + }, + { + "name": "flutter_lints", + "version": "3.0.2", + "dependencies": [ + "lints" + ] + }, + { + "name": "lints", + "version": "3.0.0", + "dependencies": [] + }, + { + "name": "term_glyph", + "version": "1.2.2", + "dependencies": [] + }, + { + "name": "boolean_selector", + "version": "2.1.2", + "dependencies": [ + "source_span", + "string_scanner" + ] + }, + { + "name": "async", + "version": "2.13.0", + "dependencies": [ + "collection", + "meta" + ] + }, + { + "name": "string_scanner", + "version": "1.4.1", + "dependencies": [ + "source_span" + ] + }, + { + "name": "source_span", + "version": "1.10.1", + "dependencies": [ + "collection", + "path", + "term_glyph" + ] + }, + { + "name": "vm_service", + "version": "15.0.2", + "dependencies": [] + }, + { + "name": "shelf_packages_handler", + "version": "3.0.2", + "dependencies": [ + "path", + "shelf", + "shelf_static" + ] + }, + { + "name": "pool", + "version": "1.5.2", + "dependencies": [ + "async", + "stack_trace" + ] + }, + { + "name": "node_preamble", + "version": "2.0.2", + "dependencies": [] + }, + { + "name": "typed_data", + "version": "1.4.0", + "dependencies": [ + "collection" + ] + }, + { + "name": "yaml", + "version": "3.1.3", + "dependencies": [ + "collection", + "source_span", + "string_scanner" + ] + }, + { + "name": "webkit_inspection_protocol", + "version": "1.2.1", + "dependencies": [ + "logging" + ] + }, + { + "name": "shelf_static", + "version": "1.1.3", + "dependencies": [ + "convert", + "http_parser", + "mime", + "path", + "shelf" + ] + }, + { + "name": "package_config", + "version": "2.2.0", + "dependencies": [ + "path" + ] + }, + { + "name": "io", + "version": "1.0.5", + "dependencies": [ + "meta", + "path", + "string_scanner" + ] + }, + { + "name": "http_multi_server", + "version": "3.2.2", + "dependencies": [ + "async" + ] + }, + { + "name": "http_parser", + "version": "4.1.2", + "dependencies": [ + "collection", + "source_span", + "string_scanner", + "typed_data" + ] + }, + { + "name": "convert", + "version": "3.1.2", + "dependencies": [ + "typed_data" + ] + }, + { + "name": "logging", + "version": "1.3.0", + "dependencies": [] + }, + { + "name": "mime", + "version": "2.0.0", + "dependencies": [] + }, + { + "name": "shelf", + "version": "1.4.2", + "dependencies": [ + "async", + "collection", + "http_parser", + "path", + "stack_trace", + "stream_channel" + ] + }, + { + "name": "test", + "version": "1.26.2", + "dependencies": [ + "analyzer", + "async", + "boolean_selector", + "collection", + "coverage", + "http_multi_server", + "io", + "js", + "matcher", + "node_preamble", + "package_config", + "path", + "pool", + "shelf", + "shelf_packages_handler", + "shelf_static", + "shelf_web_socket", + "source_span", + "stack_trace", + "stream_channel", + "test_api", + "test_core", + "typed_data", + "web_socket_channel", + "webkit_inspection_protocol", + "yaml" + ] + }, + { + "name": "test_core", + "version": "0.6.11", + "dependencies": [ + "analyzer", + "args", + "async", + "boolean_selector", + "collection", + "coverage", + "frontend_server_client", + "glob", + "io", + "meta", + "package_config", + "path", + "pool", + "source_map_stack_trace", + "source_maps", + "source_span", + "stack_trace", + "stream_channel", + "test_api", + "vm_service", + "yaml" + ] + }, + { + "name": "frontend_server_client", + "version": "4.0.0", + "dependencies": [ + "async", + "path" + ] + }, + { + "name": "source_map_stack_trace", + "version": "2.1.2", + "dependencies": [ + "path", + "source_maps", + "stack_trace" + ] + }, + { + "name": "source_maps", + "version": "0.10.13", + "dependencies": [ + "source_span" + ] + }, + { + "name": "js", + "version": "0.7.2", + "dependencies": [] + }, + { + "name": "glob", + "version": "2.1.3", + "dependencies": [ + "async", + "collection", + "file", + "path", + "string_scanner" + ] + }, + { + "name": "file", + "version": "7.0.1", + "dependencies": [ + "meta", + "path" + ] + }, + { + "name": "shelf_web_socket", + "version": "3.0.0", + "dependencies": [ + "shelf", + "stream_channel", + "web_socket_channel" + ] + }, + { + "name": "web_socket_channel", + "version": "3.0.3", + "dependencies": [ + "async", + "crypto", + "stream_channel", + "web", + "web_socket" + ] + }, + { + "name": "web_socket", + "version": "1.0.1", + "dependencies": [ + "web" + ] + }, + { + "name": "web", + "version": "1.1.1", + "dependencies": [] + }, + { + "name": "crypto", + "version": "3.0.7", + "dependencies": [ + "typed_data" + ] + }, + { + "name": "args", + "version": "2.7.0", + "dependencies": [] + }, + { + "name": "coverage", + "version": "1.15.0", + "dependencies": [ + "args", + "cli_config", + "glob", + "logging", + "meta", + "package_config", + "path", + "source_maps", + "stack_trace", + "vm_service", + "yaml" + ] + }, + { + "name": "cli_config", + "version": "0.2.0", + "dependencies": [ + "args", + "yaml" + ] + }, + { + "name": "analyzer", + "version": "7.7.1", + "dependencies": [ + "_fe_analyzer_shared", + "collection", + "convert", + "crypto", + "glob", + "meta", + "package_config", + "path", + "pub_semver", + "source_span", + "watcher", + "yaml" + ] + }, + { + "name": "_fe_analyzer_shared", + "version": "85.0.0", + "dependencies": [ + "meta" + ] + }, + { + "name": "pub_semver", + "version": "2.2.0", + "dependencies": [ + "collection" + ] + }, + { + "name": "watcher", + "version": "1.1.4", + "dependencies": [ + "async", + "path" + ] + } + ], + "configVersion": 1 +} \ No newline at end of file diff --git a/packages/core/flutter/.dart_tool/version b/packages/core/flutter/.dart_tool/version new file mode 100644 index 0000000..e119acd --- /dev/null +++ b/packages/core/flutter/.dart_tool/version @@ -0,0 +1 @@ +3.35.7 \ No newline at end of file diff --git a/packages/core/flutter/README.md b/packages/core/flutter/README.md new file mode 100644 index 0000000..5cdf745 --- /dev/null +++ b/packages/core/flutter/README.md @@ -0,0 +1,46 @@ +# KompKit Core - Flutter/Dart + +Cross-platform utility functions for Flutter and Dart applications. Part of the [KompKit ecosystem](../../../README.md) with identical APIs across Web, Android, and Flutter platforms. + +## Quick Start + +Add to your `pubspec.yaml`: + +```yaml +dependencies: + kompkit_core: + path: path/to/KompKit/packages/core/flutter +``` + +Import and use: + +```dart +import 'package:kompkit_core/kompkit_core.dart'; + +// Debounce function calls +final search = debounce((query) => print('Searching: $query'), + const Duration(milliseconds: 300)); + +// Validate emails +print(isEmail('user@example.com')); // true + +// Format currency +print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56" +``` + +## Documentation + +- **[Flutter Guide](../../../docs/flutter.md)** - Detailed usage examples and Flutter widgets +- **[Main README](../../../README.md)** - Project overview and cross-platform APIs +- **[API Reference](../../../docs/api/)** - Complete API documentation + +## Testing + +```bash +flutter test # Flutter projects +dart test # Dart-only projects +``` + +## Platform Support + +Works on all Flutter platforms (iOS, Android, Web, Desktop) and server-side Dart. diff --git a/packages/core/flutter/doc/api/README.md b/packages/core/flutter/doc/api/README.md new file mode 100644 index 0000000..838719c --- /dev/null +++ b/packages/core/flutter/doc/api/README.md @@ -0,0 +1,24 @@ +# KompKit Core - Flutter/Dart API Documentation + +This directory contains the auto-generated API documentation for the Flutter/Dart implementation of KompKit Core utilities. + +## Generation + +The documentation is generated using `dart doc` from the source code comments. + +To regenerate: + +```bash +cd packages/core/flutter +dart doc +``` + +## Contents + +- **debounce** - Function execution delay utilities +- **isEmail** - Email validation function +- **formatCurrency** - Currency formatting function + +## Online Documentation + +For the latest documentation, visit: [KompKit Docs](../../../README.md) diff --git a/packages/core/flutter/lib/kompkit_core.dart b/packages/core/flutter/lib/kompkit_core.dart new file mode 100644 index 0000000..9b9c255 --- /dev/null +++ b/packages/core/flutter/lib/kompkit_core.dart @@ -0,0 +1,41 @@ +/// KompKit Core - Cross-platform utilities for Flutter and Dart +/// +/// A lightweight utility library providing essential functions for Flutter +/// and Dart applications. Part of the KompKit ecosystem with identical APIs +/// across Web (TypeScript), Android (Kotlin), and Flutter (Dart) platforms. +/// +/// ## Features +/// +/// - **Cross-platform compatibility**: Identical APIs across all platforms +/// - **Type safety**: Full Dart null safety support +/// - **Zero dependencies**: Minimal external dependencies (only `intl` for formatting) +/// - **Comprehensive testing**: 100% test coverage +/// - **Rich documentation**: Detailed API docs with examples +/// +/// ## Available Utilities +/// +/// - [debounce] - Delay function execution with automatic cancellation +/// - [debounceVoid] - Debounce functions with no parameters +/// - [isEmail] - Email address validation using regex patterns +/// - [formatCurrency] - Localized currency formatting +/// +/// ## Quick Start +/// +/// ```dart +/// import 'package:kompkit_core/kompkit_core.dart'; +/// +/// // Debounce a search function +/// final search = debounce((query) => print('Searching: $query'), +/// const Duration(milliseconds: 300)); +/// +/// // Validate email addresses +/// print(isEmail('user@example.com')); // true +/// +/// // Format currency +/// print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56" +/// ``` +library kompkit_core; + +export 'src/debounce.dart'; +export 'src/validate.dart'; +export 'src/format.dart'; diff --git a/packages/core/flutter/lib/src/debounce.dart b/packages/core/flutter/lib/src/debounce.dart new file mode 100644 index 0000000..4eb5903 --- /dev/null +++ b/packages/core/flutter/lib/src/debounce.dart @@ -0,0 +1,65 @@ +import 'dart:async'; + +/// Debounces a function call by delaying its execution until after a specified wait period. +/// +/// Subsequent calls within the wait period reset the timer, ensuring that the function +/// is only called once after the specified delay has elapsed without any new calls. +/// +/// This is particularly useful for scenarios like search input fields, where you want +/// to wait for the user to stop typing before making an API call. +/// +/// **Parameters:** +/// - [fn] - The function to debounce +/// - [wait] - Duration to wait before invoking the function (defaults to 250ms) +/// +/// **Returns:** A debounced version of the function that accepts a parameter of type [T] +/// +/// **Example:** +/// ```dart +/// final search = debounce((String query) { +/// print('Searching: $query'); +/// }, const Duration(milliseconds: 300)); +/// +/// search('hello'); // Will execute after 300ms if no other calls are made +/// search('world'); // Previous call is cancelled, this will execute after 300ms +/// ``` +Function debounce(Function fn, [Duration wait = const Duration(milliseconds: 250)]) { + Timer? timer; + + return (T arg) { + timer?.cancel(); + timer = Timer(wait, () => fn(arg)); + }; +} + +/// Debounces a void function (function with no parameters). +/// +/// Similar to [debounce], but specifically designed for functions that don't take parameters. +/// Useful for actions like saving data, refreshing UI, or other side effects. +/// +/// **Parameters:** +/// - [fn] - The void function to debounce +/// - [wait] - Duration to wait before invoking the function (defaults to 250ms) +/// +/// **Returns:** A debounced version of the void function +/// +/// **Example:** +/// ```dart +/// final saveData = debounceVoid(() { +/// print('Saving data...'); +/// }, const Duration(milliseconds: 500)); +/// +/// saveData(); // Will execute after 500ms if no other calls are made +/// saveData(); // Previous call is cancelled, this will execute after 500ms +/// ``` +VoidCallback debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) { + Timer? timer; + + return () { + timer?.cancel(); + timer = Timer(wait, fn); + }; +} + +/// Type definition for void callback functions +typedef VoidCallback = void Function(); diff --git a/packages/core/flutter/lib/src/format.dart b/packages/core/flutter/lib/src/format.dart new file mode 100644 index 0000000..7bcb8fa --- /dev/null +++ b/packages/core/flutter/lib/src/format.dart @@ -0,0 +1,61 @@ +import 'package:intl/intl.dart'; + +/// Formats a number as a localized currency string. +/// +/// This function uses the Dart `intl` package to format numbers according to +/// the specified currency and locale conventions. It handles decimal places, +/// thousands separators, and currency symbols based on the locale. +/// +/// The function automatically determines the appropriate currency symbol and +/// formatting rules for the given locale. If an unsupported locale/currency +/// combination is provided, it falls back gracefully. +/// +/// **Parameters:** +/// - [amount] - The numeric amount to format (supports both int and double) +/// - [currency] - The ISO 4217 currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR" +/// - [locale] - The locale identifier (e.g., "en_US", "es_ES", "ja_JP"). Defaults to "es_ES" +/// +/// **Returns:** A formatted currency string according to the specified locale +/// +/// **Example:** +/// ```dart +/// // Default (EUR, Spanish locale) +/// formatCurrency(1234.56); // "1.234,56 €" +/// +/// // US Dollar +/// formatCurrency(1234.56, currency: "USD", locale: "en_US"); // "$1,234.56" +/// +/// // Japanese Yen (no decimal places) +/// formatCurrency(1000, currency: "JPY", locale: "ja_JP"); // "¥1,000" +/// +/// // British Pound +/// formatCurrency(999.99, currency: "GBP", locale: "en_GB"); // "£999.99" +/// +/// // Negative amounts +/// formatCurrency(-50.25, currency: "USD", locale: "en_US"); // "-$50.25" +/// ``` +String formatCurrency( + num amount, { + String currency = "EUR", + String locale = "es_ES", +}) { + try { + final formatter = NumberFormat.currency( + locale: locale, + name: currency, + ); + return formatter.format(amount); + } catch (e) { + // Fallback to a basic format if locale/currency combination is not supported + try { + final fallbackFormatter = NumberFormat.currency( + locale: 'en_US', + name: currency, + ); + return fallbackFormatter.format(amount); + } catch (e2) { + // Ultimate fallback: just return the number with currency code + return '$currency${amount.toStringAsFixed(2)}'; + } + } +} diff --git a/packages/core/flutter/lib/src/kompkit_core.dart b/packages/core/flutter/lib/src/kompkit_core.dart new file mode 100644 index 0000000..c2709df --- /dev/null +++ b/packages/core/flutter/lib/src/kompkit_core.dart @@ -0,0 +1,41 @@ +/// KompKit Core - Cross-platform utilities for Flutter and Dart +/// +/// A lightweight utility library providing essential functions for Flutter +/// and Dart applications. Part of the KompKit ecosystem with identical APIs +/// across Web (TypeScript), Android (Kotlin), and Flutter (Dart) platforms. +/// +/// ## Features +/// +/// - **Cross-platform compatibility**: Identical APIs across all platforms +/// - **Type safety**: Full Dart null safety support +/// - **Zero dependencies**: Minimal external dependencies (only `intl` for formatting) +/// - **Comprehensive testing**: 100% test coverage +/// - **Rich documentation**: Detailed API docs with examples +/// +/// ## Available Utilities +/// +/// - [debounce] - Delay function execution with automatic cancellation +/// - [debounceVoid] - Debounce functions with no parameters +/// - [isEmail] - Email address validation using regex patterns +/// - [formatCurrency] - Localized currency formatting +/// +/// ## Quick Start +/// +/// ```dart +/// import 'package:kompkit_core/kompkit_core.dart'; +/// +/// // Debounce a search function +/// final search = debounce((query) => print('Searching: $query'), +/// const Duration(milliseconds: 300)); +/// +/// // Validate email addresses +/// print(isEmail('user@example.com')); // true +/// +/// // Format currency +/// print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56" +/// ``` +library kompkit_core; + +export 'debounce.dart'; +export 'validate.dart'; +export 'format.dart'; diff --git a/packages/core/flutter/lib/src/validate.dart b/packages/core/flutter/lib/src/validate.dart new file mode 100644 index 0000000..afc6b97 --- /dev/null +++ b/packages/core/flutter/lib/src/validate.dart @@ -0,0 +1,37 @@ +/// Regular expression pattern for basic email validation. +/// +/// This pattern validates the basic structure of an email address: +/// - Local part (before @): one or more non-whitespace, non-@ characters +/// - @ symbol +/// - Domain part (after @): one or more non-whitespace, non-@ characters +/// - Dot separator +/// - Top-level domain: one or more non-whitespace, non-@ characters +final RegExp _emailRegExp = RegExp(r'^[^\s@]+@[^\s@]+\.[^\s@]+$'); + +/// Validates whether a string matches a basic email pattern. +/// +/// This function performs a simple regex-based validation to check if the provided +/// string follows the basic email format. It automatically trims whitespace from +/// the input before validation. +/// +/// **Note:** This is a basic validation and may not catch all edge cases of valid +/// or invalid email addresses according to RFC specifications. For production use +/// with strict requirements, consider using a more comprehensive email validation library. +/// +/// **Parameters:** +/// - [value] - The string to validate +/// +/// **Returns:** `true` if the string is a valid email format, `false` otherwise +/// +/// **Example:** +/// ```dart +/// isEmail('user@example.com'); // true +/// isEmail('test.email@domain.org'); // true +/// isEmail('invalid@'); // false +/// isEmail('@invalid.com'); // false +/// isEmail(' test@domain.org '); // true (whitespace is trimmed) +/// isEmail('user name@domain.com'); // false (contains space) +/// ``` +bool isEmail(String value) { + return _emailRegExp.hasMatch(value.trim()); +} diff --git a/packages/core/flutter/pubspec.lock b/packages/core/flutter/pubspec.lock new file mode 100644 index 0000000..5445bd0 --- /dev/null +++ b/packages/core/flutter/pubspec.lock @@ -0,0 +1,493 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: da0d9209ca76bde579f2da330aeb9df62b6319c834fa7baae052021b0462401f + url: "https://pub.dev" + source: hosted + version: "85.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: "974859dc0ff5f37bc4313244b3218c791810d03ab3470a579580279ba971a48d" + url: "https://pub.dev" + source: hosted + version: "7.7.1" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + cli_config: + dependency: transitive + description: + name: cli_config + sha256: ac20a183a07002b700f0c25e61b7ee46b23c309d76ab7b7640a028f18e4d99ec + url: "https://pub.dev" + source: hosted + version: "0.2.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + coverage: + dependency: transitive + description: + name: coverage + sha256: "5da775aa218eaf2151c721b16c01c7676fbfdd99cebba2bf64e8b807a28ff94d" + url: "https://pub.dev" + source: hosted + version: "1.15.0" + crypto: + dependency: transitive + description: + name: crypto + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf + url: "https://pub.dev" + source: hosted + version: "3.0.7" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 + url: "https://pub.dev" + source: hosted + version: "4.0.0" + glob: + dependency: transitive + description: + name: glob + sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de + url: "https://pub.dev" + source: hosted + version: "2.1.3" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 + url: "https://pub.dev" + source: hosted + version: "3.2.2" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + intl: + dependency: "direct main" + description: + name: intl + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + url: "https://pub.dev" + source: hosted + version: "0.19.0" + io: + dependency: transitive + description: + name: io + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b + url: "https://pub.dev" + source: hosted + version: "1.0.5" + js: + dependency: transitive + description: + name: js + sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + lints: + dependency: transitive + description: + name: lints + sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 + url: "https://pub.dev" + source: hosted + version: "3.0.0" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + node_preamble: + dependency: transitive + description: + name: node_preamble + sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db" + url: "https://pub.dev" + source: hosted + version: "2.0.2" + package_config: + dependency: transitive + description: + name: package_config + sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc + url: "https://pub.dev" + source: hosted + version: "2.2.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + pool: + dependency: transitive + description: + name: pool + sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" + url: "https://pub.dev" + source: hosted + version: "1.5.2" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + shelf: + dependency: transitive + description: + name: shelf + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 + url: "https://pub.dev" + source: hosted + version: "1.4.2" + shelf_packages_handler: + dependency: transitive + description: + name: shelf_packages_handler + sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + shelf_static: + dependency: transitive + description: + name: shelf_static + sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3 + url: "https://pub.dev" + source: hosted + version: "1.1.3" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_map_stack_trace: + dependency: transitive + description: + name: source_map_stack_trace + sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b + url: "https://pub.dev" + source: hosted + version: "2.1.2" + source_maps: + dependency: transitive + description: + name: source_maps + sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812" + url: "https://pub.dev" + source: hosted + version: "0.10.13" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test: + dependency: "direct dev" + description: + name: test + sha256: "65e29d831719be0591f7b3b1a32a3cda258ec98c58c7b25f7b84241bc31215bb" + url: "https://pub.dev" + source: hosted + version: "1.26.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" + url: "https://pub.dev" + source: hosted + version: "0.7.6" + test_core: + dependency: transitive + description: + name: test_core + sha256: "80bf5a02b60af04b09e14f6fe68b921aad119493e26e490deaca5993fef1b05a" + url: "https://pub.dev" + source: hosted + version: "0.6.11" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" + source: hosted + version: "2.2.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" + url: "https://pub.dev" + source: hosted + version: "15.0.2" + watcher: + dependency: transitive + description: + name: watcher + sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a" + url: "https://pub.dev" + source: hosted + version: "1.1.4" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 + url: "https://pub.dev" + source: hosted + version: "3.0.3" + webkit_inspection_protocol: + dependency: transitive + description: + name: webkit_inspection_protocol + sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.8.0-0 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/packages/core/flutter/pubspec.yaml b/packages/core/flutter/pubspec.yaml new file mode 100644 index 0000000..6277ad4 --- /dev/null +++ b/packages/core/flutter/pubspec.yaml @@ -0,0 +1,24 @@ +name: kompkit_core +description: Cross-platform utility functions for Flutter and Dart applications. Part of the KompKit ecosystem. +version: 0.1.0-alpha +homepage: https://github.com/Kompkit/KompKit +repository: https://github.com/Kompkit/KompKit + +environment: + sdk: '>=3.0.0 <4.0.0' + flutter: ">=3.0.0" + +dependencies: + flutter: + sdk: flutter + intl: ^0.19.0 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^3.0.0 + test: ^1.24.0 + +flutter: + # This package does not contain any Flutter-specific functionality + # but is compatible with Flutter applications diff --git a/packages/core/flutter/test/debounce_test.dart b/packages/core/flutter/test/debounce_test.dart new file mode 100644 index 0000000..27c284c --- /dev/null +++ b/packages/core/flutter/test/debounce_test.dart @@ -0,0 +1,83 @@ +import 'dart:async'; +import 'package:flutter_test/flutter_test.dart'; +import '../lib/src/debounce.dart'; + +void main() { + group('debounce', () { + test('should delay function execution', () async { + var callCount = 0; + final debouncedFn = debounce((String value) { + callCount++; + }, const Duration(milliseconds: 100)); + + debouncedFn('test'); + expect(callCount, 0); + + await Future.delayed(const Duration(milliseconds: 150)); + expect(callCount, 1); + }); + + test('should cancel previous calls when called multiple times', () async { + var callCount = 0; + String? lastValue; + final debouncedFn = debounce((String value) { + callCount++; + lastValue = value; + }, const Duration(milliseconds: 100)); + + debouncedFn('first'); + debouncedFn('second'); + debouncedFn('third'); + + await Future.delayed(const Duration(milliseconds: 150)); + expect(callCount, 1); + expect(lastValue, 'third'); + }); + + test('should use default wait time of 250ms', () async { + var callCount = 0; + final debouncedFn = debounce((String value) { + callCount++; + }); + + debouncedFn('test'); + + // Should not execute before 250ms + await Future.delayed(const Duration(milliseconds: 200)); + expect(callCount, 0); + + // Should execute after 250ms + await Future.delayed(const Duration(milliseconds: 100)); + expect(callCount, 1); + }); + }); + + group('debounceVoid', () { + test('should delay void function execution', () async { + var callCount = 0; + final debouncedFn = debounceVoid(() { + callCount++; + }, const Duration(milliseconds: 100)); + + debouncedFn(); + expect(callCount, 0); + + await Future.delayed(const Duration(milliseconds: 150)); + expect(callCount, 1); + }); + + test('should cancel previous void calls when called multiple times', () async { + var callCount = 0; + final debouncedFn = debounceVoid(() { + callCount++; + }, const Duration(milliseconds: 100)); + + debouncedFn(); + debouncedFn(); + debouncedFn(); + + await Future.delayed(const Duration(milliseconds: 150)); + expect(callCount, 1); + }); + }); +} diff --git a/packages/core/flutter/test/format_test.dart b/packages/core/flutter/test/format_test.dart new file mode 100644 index 0000000..ca040d5 --- /dev/null +++ b/packages/core/flutter/test/format_test.dart @@ -0,0 +1,57 @@ +import 'package:flutter_test/flutter_test.dart'; +import '../lib/src/format.dart'; + +void main() { + group('formatCurrency', () { + test('should format currency with default EUR and es_ES locale', () { + final result = formatCurrency(1234.56); + expect(result, contains('1.234,56')); + expect(result, contains('EUR')); + }); + + test('should format USD currency with en_US locale', () { + final result = formatCurrency(1234.56, currency: 'USD', locale: 'en_US'); + expect(result, contains('1,234.56')); + expect(result, contains('USD')); + }); + + test('should format JPY currency with ja_JP locale', () { + final result = formatCurrency(1000, currency: 'JPY', locale: 'ja_JP'); + expect(result, contains('1,000')); + expect(result, contains('JPY')); + }); + + test('should handle zero amounts', () { + final result = formatCurrency(0); + expect(result, contains('0')); + }); + + test('should handle negative amounts', () { + final result = formatCurrency(-100.50, currency: 'USD', locale: 'en_US'); + expect(result, contains('100.50')); + expect(result.contains('-') || result.contains('('), true); + }); + + test('should handle large amounts', () { + final result = formatCurrency(1000000.99, currency: 'USD', locale: 'en_US'); + expect(result, contains('1,000,000.99')); + }); + + test('should handle decimal amounts', () { + final result = formatCurrency(0.99, currency: 'USD', locale: 'en_US'); + expect(result, contains('0.99')); + }); + + test('should handle integer amounts', () { + final result = formatCurrency(100, currency: 'USD', locale: 'en_US'); + expect(result, contains('100')); + }); + + test('should fallback gracefully for unsupported locale/currency combinations', () { + // This should not throw an error and should return some formatted string + final result = formatCurrency(100, currency: 'XYZ', locale: 'invalid_locale'); + expect(result, isA()); + expect(result.isNotEmpty, true); + }); + }); +} diff --git a/packages/core/flutter/test/kompkit_core_test.dart b/packages/core/flutter/test/kompkit_core_test.dart new file mode 100644 index 0000000..466a84e --- /dev/null +++ b/packages/core/flutter/test/kompkit_core_test.dart @@ -0,0 +1,40 @@ +import 'package:flutter_test/flutter_test.dart'; +import '../lib/kompkit_core.dart'; + +void main() { + group('KompKit Core Integration Tests', () { + test('should export all utilities', () { + // Test that all utilities are accessible through the main export + expect(debounce, isA()); + expect(debounceVoid, isA()); + expect(isEmail, isA()); + expect(formatCurrency, isA()); + }); + + test('should work together in a realistic scenario', () async { + // Simulate a search input with debounced email validation and currency formatting + var searchResults = []; + + final debouncedSearch = debounce((String query) { + if (isEmail(query)) { + searchResults.add('Found user: $query'); + } else { + searchResults.add('Invalid email: $query'); + } + }, const Duration(milliseconds: 100)); + + // Test the integration + debouncedSearch('invalid-email'); + debouncedSearch('user@example.com'); + + await Future.delayed(const Duration(milliseconds: 150)); + + expect(searchResults.length, 1); + expect(searchResults.first, 'Found user: user@example.com'); + + // Test currency formatting + final price = formatCurrency(99.99, currency: 'USD', locale: 'en_US'); + expect(price, contains('99.99')); + }); + }); +} diff --git a/packages/core/flutter/test/validate_test.dart b/packages/core/flutter/test/validate_test.dart new file mode 100644 index 0000000..870d99c --- /dev/null +++ b/packages/core/flutter/test/validate_test.dart @@ -0,0 +1,25 @@ +import 'package:flutter_test/flutter_test.dart'; +import '../lib/src/validate.dart'; + +void main() { + group('isEmail', () { + test('should return true for valid email addresses', () { + expect(isEmail('user@example.com'), true); + expect(isEmail('test@example.com'), true); + expect(isEmail('test.email@domain.org'), true); + }); + + test('should return false for invalid email addresses', () { + expect(isEmail(''), false); + expect(isEmail('invalid'), false); + expect(isEmail('invalid@'), false); + expect(isEmail('@invalid.com'), false); + expect(isEmail('invalid@com'), false); + }); + + test('should handle whitespace by trimming', () { + expect(isEmail(' user@example.com '), true); + expect(isEmail(' invalid@ '), false); + }); + }); +} From 40b7f4056ff3151d443022a0242ba8a04d227de9 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:34:03 +0000 Subject: [PATCH 03/10] docs: update documentation for Flutter/Dart platform support Update all documentation to include Flutter/Dart as third supported platform. Add comprehensive Flutter guide with examples and usage patterns. Update project structure, installation instructions, and development workflow. --- README.md | 55 ++++++- docs/ARCHITECTURE.md | 17 ++- docs/contributing.md | 25 +++- docs/flutter.md | 318 ++++++++++++++++++++++++++++++++++++++++ docs/getting-started.md | 12 +- docs/index.md | 4 +- docs/recipes.md | 196 +++++++++++++++++++++++++ docs/roadmap.md | 2 +- package.json | 10 +- 9 files changed, 613 insertions(+), 26 deletions(-) create mode 100644 docs/flutter.md diff --git a/README.md b/README.md index 3078360..4f1c333 100644 --- a/README.md +++ b/README.md @@ -3,17 +3,19 @@ [![Version](https://img.shields.io/badge/version-0.1.0--alpha-orange.svg)](https://github.com/Kompkit/KompKit/releases) [![Web CI](https://github.com/Kompkit/KompKit/actions/workflows/web.yml/badge.svg?branch=develop)](https://github.com/Kompkit/KompKit/actions/workflows/web.yml) [![Kotlin CI](https://github.com/Kompkit/KompKit/actions/workflows/android.yml/badge.svg?branch=develop)](https://github.com/Kompkit/KompKit/actions/workflows/android.yml) +[![Flutter CI](https://github.com/Kompkit/KompKit/actions/workflows/flutter.yml/badge.svg?branch=develop)](https://github.com/Kompkit/KompKit/actions/workflows/flutter.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?logo=typescript&logoColor=white)](https://www.typescriptlang.org/) [![Kotlin](https://img.shields.io/badge/Kotlin-0095D5?logo=kotlin&logoColor=white)](https://kotlinlang.org/) +[![Dart](https://img.shields.io/badge/Dart-0175C2?logo=dart&logoColor=white)](https://dart.dev/) > **⚠️ Alpha Release**: This is an early alpha version. APIs may change before stable release. -A lightweight cross-platform utility kit providing essential functions for Android (Kotlin) and Web (TypeScript) development. Built as a monorepo with identical APIs across platforms. +A lightweight cross-platform utility kit providing essential functions for Web (TypeScript), Android (Kotlin), and Flutter (Dart) development. Built as a monorepo with identical APIs across platforms. ## Overview -KompKit provides essential utility functions that work seamlessly across web (TypeScript) and Android (Kotlin) platforms. Built with developer experience in mind, it offers identical APIs across platforms while leveraging platform-specific optimizations. +KompKit provides essential utility functions that work seamlessly across Web (TypeScript), Android (Kotlin), and Flutter (Dart) platforms. Built with developer experience in mind, it offers identical APIs across platforms while leveraging platform-specific optimizations. ### Monorepo Structure @@ -21,6 +23,7 @@ KompKit provides essential utility functions that work seamlessly across web (Ty |--------|----------|-------------|--------| | `packages/core/web` | TypeScript | Web utilities with Node.js support | ✅ Alpha | | `packages/core/android` | Kotlin JVM | Android utilities with coroutines | ✅ Alpha | +| `packages/core/flutter` | Dart | Flutter/Dart utilities with async support | ✅ Alpha | | `docs/` | Documentation | API docs, guides, and examples | ✅ Alpha | | `.github/workflows/` | CI/CD | Automated testing and validation | ✅ Active | @@ -46,6 +49,7 @@ KompKit provides essential utility functions that work seamlessly across web (Ty - **Web**: Node.js 20+ and npm/yarn - **Android**: JDK 17+ and Kotlin 2.1+ +- **Flutter**: Flutter 3.0+ and Dart 3.0+ ### Installation @@ -85,6 +89,24 @@ dependencies { } ``` +#### Flutter Development + +```bash +# Clone the repository +git clone https://github.com/Kompkit/KompKit.git + +# Add to your Flutter project's pubspec.yaml +dependencies: + kompkit_core: + path: path/to/KompKit/packages/core/flutter + +# Get dependencies +flutter pub get + +# Run tests +flutter test +``` + ### Quick Start Once installed, you can import and use KompKit utilities: @@ -113,6 +135,18 @@ println(isEmail("user@example.com")) // true println(formatCurrency(1234.56)) // "1.234,56 €" ``` +**Dart/Flutter:** +```dart +import 'package:kompkit_core/kompkit_core.dart'; + +final search = debounce((String query) { + print('Searching: $query'); +}, const Duration(milliseconds: 300)); + +print(isEmail('user@example.com')); // true +print(formatCurrency(1234.56)); // "1.234,56 €" +``` + ## Documentation ### 📚 Detailed Guides @@ -136,16 +170,21 @@ println(formatCurrency(1234.56)) // "1.234,56 €" KompKit/ ├── .github/workflows/ # CI/CD pipelines │ ├── web.yml # Web package testing -│ └── android.yml # Kotlin package testing +│ ├── android.yml # Kotlin package testing +│ └── flutter.yml # Flutter/Dart package testing ├── packages/core/ │ ├── web/ # TypeScript package │ │ ├── src/ # Source files │ │ ├── tests/ # Test files │ │ └── package.json -│ └── android/ # Kotlin JVM package -│ ├── src/main/kotlin/ # Source files -│ ├── src/test/kotlin/ # Test files -│ └── build.gradle.kts +│ ├── android/ # Kotlin JVM package +│ │ ├── src/main/kotlin/ # Source files +│ │ ├── src/test/kotlin/ # Test files +│ │ └── build.gradle.kts +│ └── flutter/ # Dart package +│ ├── src/ # Source files +│ ├── test/ # Test files +│ └── pubspec.yaml ├── docs/ # Documentation │ ├── api/ # Generated API docs │ └── *.md # Guides and references @@ -158,8 +197,10 @@ KompKit/ - **Minimum Requirements**: - Node.js 20+ (Web) - JDK 17+ (Android) + - Flutter 3.0+ (Flutter) - TypeScript 5.6+ - Kotlin 2.1+ + - Dart 3.0+ ## Contributing diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 78c09df..067f7f7 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -1,6 +1,6 @@ # Architecture Overview -This document describes the architecture and design decisions behind KompKit, a cross-platform utility library for TypeScript and Kotlin. +This document describes the architecture and design decisions behind KompKit, a cross-platform utility library for TypeScript, Kotlin, and Dart. ## Design Philosophy @@ -8,7 +8,7 @@ This document describes the architecture and design decisions behind KompKit, a KompKit is designed with cross-platform compatibility as the primary goal. Every utility function must: -1. **Maintain API parity** across TypeScript and Kotlin implementations +1. **Maintain API parity** across TypeScript, Kotlin, and Dart implementations 2. **Provide identical behavior** regardless of platform 3. **Use platform-native patterns** while maintaining consistency 4. **Minimize dependencies** to reduce bundle size and complexity @@ -21,7 +21,8 @@ We use a monorepo approach to ensure consistency and simplify development: KompKit/ ├── packages/core/ # Core utility packages │ ├── web/ # TypeScript/JavaScript implementation -│ └── android/ # Kotlin JVM implementation +│ ├── android/ # Kotlin JVM implementation +│ └── flutter/ # Dart/Flutter implementation ├── docs/ # Documentation and guides ├── .github/workflows/ # CI/CD pipelines └── [root configuration] # Lerna, npm, Git configuration @@ -35,10 +36,11 @@ KompKit/ |--------|----------|---------|------------------| | `packages/core/web` | Web/Node.js | TypeScript utilities | TypeScript 5.6+, Vitest, TypeDoc | | `packages/core/android` | JVM/Android | Kotlin utilities | Kotlin 2.1.0, JUnit, Dokka | +| `packages/core/flutter` | Flutter/Dart | Dart utilities | Dart 3.0+, Flutter Test, DartDoc | ### Shared Concepts -Both modules implement identical functionality: +All modules implement identical functionality: - **debounce**: Function execution delay with cancellation - **isEmail**: Email validation using regex patterns @@ -206,15 +208,16 @@ docs/ ├── ARCHITECTURE.md # This document └── api/ # Generated API docs ├── web/ # TypeDoc output - └── android/ # Dokka output + ├── android/ # Dokka output + └── flutter/ # DartDoc output ``` ### Documentation Generation **Automated documentation pipeline:** -1. **Source comments**: JSDoc (TypeScript) + KDoc (Kotlin) -2. **Build process**: TypeDoc + Dokka generation +1. **Source comments**: JSDoc (TypeScript) + KDoc (Kotlin) + DartDoc (Dart) +2. **Build process**: TypeDoc + Dokka + DartDoc generation 3. **CI integration**: Docs updated on every build 4. **Artifact storage**: 30-day retention for documentation diff --git a/docs/contributing.md b/docs/contributing.md index f5df6e9..f99a5b0 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -8,6 +8,7 @@ We welcome contributions to KompKit! This document provides guidelines for contr - **Node.js** 20+ and npm - **JDK** 17+ (for Kotlin development) +- **Flutter** 3.0+ and Dart 3.0+ (for Flutter development) - **Git** for version control ### Development Setup @@ -68,9 +69,9 @@ test(web): add edge cases for email validation ### Code Guidelines -1. **Cross-platform API parity**: Maintain identical APIs across TypeScript and Kotlin implementations +1. **Cross-platform API parity**: Maintain identical APIs across TypeScript, Kotlin, and Dart implementations 2. **Zero dependencies**: Avoid adding runtime dependencies unless absolutely necessary -3. **Comprehensive testing**: Every feature must include tests for both platforms +3. **Comprehensive testing**: Every feature must include tests for all platforms 4. **Documentation**: Update API docs and examples for new features 5. **Type safety**: Use TypeScript and Kotlin type systems effectively @@ -100,6 +101,9 @@ npm run test:web # Run Kotlin tests only npm run test:android + +# Run Flutter tests only +cd packages/core/flutter && flutter test ``` ### Documentation @@ -149,14 +153,17 @@ When adding a new utility function: 3. **Add comprehensive tests**: - Web: `packages/core/web/tests/` - Kotlin: `packages/core/android/src/test/kotlin/` + - Flutter: `packages/core/flutter/test/` 4. **Update exports**: - Add to `packages/core/web/src/index.ts` + - Add to `packages/core/flutter/src/kompkit_core.dart` - Kotlin exports are automatic via package structure 5. **Document with examples**: - Add JSDoc comments (TypeScript) - Add KDoc comments (Kotlin) + - Add DartDoc comments (Dart) ## Code Style @@ -173,6 +180,13 @@ When adding a new utility function: - Use explicit types for public APIs - Follow Kotlin coding conventions +### Dart/Flutter +- Follow Dart formatting rules (`dart format`) +- Use `flutter analyze` for static analysis +- Prefer `final` over `var` when possible +- Use explicit types for public APIs +- Follow Dart style guide conventions + ## Pull Request Process 1. **Create a feature branch**: @@ -183,7 +197,7 @@ When adding a new utility function: ``` 2. **Make your changes**: - - Implement feature in both platforms + - Implement feature in all platforms (Web, Android, Flutter) - Add comprehensive tests - Update documentation @@ -191,6 +205,7 @@ When adding a new utility function: ```bash npm test cd packages/core/android && ./gradlew test + cd packages/core/flutter && flutter test ``` 4. **Commit with conventional messages**: @@ -208,8 +223,8 @@ When adding a new utility function: ### PR Checklist -- [ ] ✅ Feature implemented in both TypeScript and Kotlin -- [ ] ✅ Tests added for both platforms with good coverage +- [ ] ✅ Feature implemented in TypeScript, Kotlin, and Dart +- [ ] ✅ Tests added for all platforms with good coverage - [ ] ✅ All existing tests pass (`npm test`) - [ ] ✅ Code follows style guidelines (ktlint, ESLint) - [ ] ✅ API documentation updated (JSDoc/KDoc) diff --git a/docs/flutter.md b/docs/flutter.md new file mode 100644 index 0000000..4c3e4de --- /dev/null +++ b/docs/flutter.md @@ -0,0 +1,318 @@ +# Flutter/Dart Guide + +This guide covers using KompKit Core utilities in Flutter and Dart applications. + +## Installation + +### Flutter Projects + +Add KompKit Core to your `pubspec.yaml`: + +```yaml +dependencies: + kompkit_core: + path: path/to/KompKit/packages/core/flutter +``` + +Then run: + +```bash +flutter pub get +``` + +### Dart Projects + +For server-side Dart projects, add to your `pubspec.yaml`: + +```yaml +dependencies: + kompkit_core: + path: path/to/KompKit/packages/core/flutter +``` + +Then run: + +```bash +dart pub get +``` + +## Usage + +Import the package in your Dart files: + +```dart +import 'package:kompkit_core/kompkit_core.dart'; +``` + +## Utilities + +### Debounce + +Delay function execution to prevent excessive calls: + +```dart +// For functions with parameters +final searchDebounced = debounce((String query) { + print('Searching for: $query'); + // Perform search logic here +}, const Duration(milliseconds: 300)); + +// Usage +searchDebounced('flutter'); +searchDebounced('dart'); // Previous call is cancelled + +// For void functions (no parameters) +final saveDebounced = debounceVoid(() { + print('Saving data...'); + // Perform save logic here +}, const Duration(milliseconds: 500)); + +// Usage +saveDebounced(); +``` + +#### Flutter Widget Example + +```dart +class SearchWidget extends StatefulWidget { + @override + _SearchWidgetState createState() => _SearchWidgetState(); +} + +class _SearchWidgetState extends State { + late final Function(String) _debouncedSearch; + + @override + void initState() { + super.initState(); + _debouncedSearch = debounce((String query) { + // Perform search API call + _performSearch(query); + }, const Duration(milliseconds: 300)); + } + + void _performSearch(String query) { + // Your search logic here + print('Searching for: $query'); + } + + @override + Widget build(BuildContext context) { + return TextField( + onChanged: _debouncedSearch, + decoration: InputDecoration( + hintText: 'Search...', + ), + ); + } +} +``` + +### Email Validation + +Validate email addresses with a simple function: + +```dart +// Basic validation +print(isEmail('user@example.com')); // true +print(isEmail('invalid-email')); // false + +// Handles whitespace +print(isEmail(' test@domain.org ')); // true (trimmed) + +// Form validation example +String? validateEmail(String? value) { + if (value == null || value.isEmpty) { + return 'Email is required'; + } + if (!isEmail(value)) { + return 'Please enter a valid email'; + } + return null; +} + +// Usage in Flutter Form +TextFormField( + validator: validateEmail, + decoration: InputDecoration( + labelText: 'Email', + ), +) +``` + +### Currency Formatting + +Format numbers as localized currency strings: + +```dart +// Default (EUR, es_ES locale) +print(formatCurrency(1234.56)); // "1.234,56 €" + +// US Dollar +print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56" + +// Japanese Yen +print(formatCurrency(1000, currency: 'JPY', locale: 'ja_JP')); // "¥1,000" + +// British Pound +print(formatCurrency(999.99, currency: 'GBP', locale: 'en_GB')); // "£999.99" +``` + +#### Flutter Widget Example + +```dart +class PriceDisplay extends StatelessWidget { + final double price; + final String currency; + final String locale; + + const PriceDisplay({ + Key? key, + required this.price, + this.currency = 'USD', + this.locale = 'en_US', + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Text( + formatCurrency(price, currency: currency, locale: locale), + style: Theme.of(context).textTheme.headlineMedium, + ); + } +} + +// Usage +PriceDisplay(price: 29.99, currency: 'USD', locale: 'en_US') +``` + +## Complete Example + +Here's a complete Flutter app example using all KompKit utilities: + +```dart +import 'package:flutter/material.dart'; +import 'package:kompkit_core/kompkit_core.dart'; + +void main() { + runApp(MyApp()); +} + +class MyApp extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'KompKit Demo', + home: DemoScreen(), + ); + } +} + +class DemoScreen extends StatefulWidget { + @override + _DemoScreenState createState() => _DemoScreenState(); +} + +class _DemoScreenState extends State { + final _emailController = TextEditingController(); + final _priceController = TextEditingController(); + late final Function(String) _debouncedEmailCheck; + + String _emailStatus = ''; + String _formattedPrice = ''; + + @override + void initState() { + super.initState(); + _debouncedEmailCheck = debounce((String email) { + setState(() { + _emailStatus = isEmail(email) ? 'Valid email ✅' : 'Invalid email ❌'; + }); + }, const Duration(milliseconds: 300)); + } + + void _formatPrice() { + final price = double.tryParse(_priceController.text) ?? 0; + setState(() { + _formattedPrice = formatCurrency(price, currency: 'USD', locale: 'en_US'); + }); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text('KompKit Demo')), + body: Padding( + padding: EdgeInsets.all(16), + child: Column( + children: [ + TextField( + controller: _emailController, + onChanged: _debouncedEmailCheck, + decoration: InputDecoration( + labelText: 'Email', + hintText: 'Enter email address', + ), + ), + SizedBox(height: 8), + Text(_emailStatus), + SizedBox(height: 24), + TextField( + controller: _priceController, + keyboardType: TextInputType.number, + decoration: InputDecoration( + labelText: 'Price', + hintText: 'Enter price', + ), + ), + SizedBox(height: 8), + ElevatedButton( + onPressed: _formatPrice, + child: Text('Format as Currency'), + ), + SizedBox(height: 8), + Text(_formattedPrice, style: TextStyle(fontSize: 18)), + ], + ), + ), + ); + } +} +``` + +## Testing + +Run tests for your Flutter project: + +```bash +flutter test +``` + +For Dart-only projects: + +```bash +dart test +``` + +## Platform Support + +KompKit Core for Flutter/Dart works on: + +- ✅ Flutter iOS +- ✅ Flutter Android +- ✅ Flutter Web +- ✅ Flutter Desktop (Windows, macOS, Linux) +- ✅ Dart VM (Server-side) +- ✅ Dart Web (compiled to JavaScript) + +## Performance Notes + +- **Debounce**: Uses Dart's `Timer` class for efficient scheduling +- **Email Validation**: Compiled regex for fast validation +- **Currency Formatting**: Leverages Dart's `intl` package for optimal localization + +## Next Steps + +- Check out the [API Reference](./api/flutter/) for detailed documentation +- See [Examples](./examples/flutter/) for more usage patterns +- Read the [Contributing Guide](./CONTRIBUTING.md) to contribute improvements diff --git a/docs/getting-started.md b/docs/getting-started.md index 76e3591..286f285 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -1,6 +1,6 @@ # Getting started -KompKit Core is a small cross-platform utility library for Web (TypeScript) and Android (Kotlin). +KompKit Core is a small cross-platform utility library for Web (TypeScript), Android (Kotlin), and Flutter (Dart). Status: `V0.1.0-alpha`. @@ -20,6 +20,14 @@ dependencies { } ``` +### Flutter (pubspec.yaml) +Add the dependency to your pubspec.yaml: +```yaml +dependencies: + kompkit_core: + path: path/to/KompKit/packages/core/flutter +``` + ## Build and test locally Run from the repository root: ```bash @@ -38,4 +46,4 @@ npm run test | `isEmail` | Validate a string with a basic email regex. | | `formatCurrency` | Format numbers into a localized currency string. | -Next: read the detailed guides for [Web](./web.md), [Android](./android.md), and the [Recipes](./recipes.md). +Next: read the detailed guides for [Web](./web.md), [Android](./android.md), [Flutter](./flutter.md), and the [Recipes](./recipes.md). diff --git a/docs/index.md b/docs/index.md index 6197707..f9a8e15 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,6 +1,6 @@ # KompKit Core -Tiny, cross-platform utilities for **Web (TypeScript)** and **Android (Kotlin)**. +Tiny, cross-platform utilities for **Web (TypeScript)**, **Android (Kotlin)**, and **Flutter (Dart)**. Status: `V0.1.0-alpha`. @@ -15,7 +15,9 @@ Status: `V0.1.0-alpha`. - Getting started: [docs/getting-started.md](./getting-started.md) - Web guide: [docs/web.md](./web.md) - Android guide: [docs/android.md](./android.md) +- Flutter guide: [docs/flutter.md](./flutter.md) - Recipes: [docs/recipes.md](./recipes.md) - API Reference (Web): [docs/api/web](./api/web/) - API Reference (Android): [docs/api/android](./api/android/) +- API Reference (Flutter): [docs/api/flutter](./api/flutter/) - Roadmap: [docs/roadmap.md](./roadmap.md) \ No newline at end of file diff --git a/docs/recipes.md b/docs/recipes.md index c2a1867..17f4a1e 100644 --- a/docs/recipes.md +++ b/docs/recipes.md @@ -88,6 +88,74 @@ suspend fun fetchResults(query: String): List { } ``` +## Debounced search input (Flutter) + +```dart +import 'package:flutter/material.dart'; +import 'package:kompkit_core/kompkit_core.dart'; + +class SearchScreen extends StatefulWidget { + @override + _SearchScreenState createState() => _SearchScreenState(); +} + +class _SearchScreenState extends State { + final TextEditingController _controller = TextEditingController(); + late final Function(String) _debouncedSearch; + List _results = []; + + @override + void initState() { + super.initState(); + _debouncedSearch = debounce((String query) async { + if (query.isEmpty) return; + final results = await _fetchResults(query); + setState(() { + _results = results; + }); + }, const Duration(milliseconds: 400)); + } + + Future> _fetchResults(String query) async { + // API call here + await Future.delayed(Duration(milliseconds: 500)); // Simulate API delay + return ['Result 1 for $query', 'Result 2 for $query']; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text('Search')), + body: Column( + children: [ + Padding( + padding: EdgeInsets.all(16), + child: TextField( + controller: _controller, + onChanged: _debouncedSearch, + decoration: InputDecoration( + hintText: 'Search...', + border: OutlineInputBorder(), + ), + ), + ), + Expanded( + child: ListView.builder( + itemCount: _results.length, + itemBuilder: (context, index) { + return ListTile( + title: Text(_results[index]), + ); + }, + ), + ), + ], + ), + ); + } +} +``` + ## Currency formatting with locale switch ```tsx @@ -154,3 +222,131 @@ function ContactForm() { ); } ``` + +## Currency formatting with locale switch (Flutter) + +```dart +import 'package:flutter/material.dart'; +import 'package:kompkit_core/kompkit_core.dart'; + +class PriceDisplay extends StatefulWidget { + final double amount; + + const PriceDisplay({Key? key, required this.amount}) : super(key: key); + + @override + _PriceDisplayState createState() => _PriceDisplayState(); +} + +class _PriceDisplayState extends State { + String _selectedLocale = 'en_US'; + + final Map> _localeConfig = { + 'en_US': {'currency': 'USD', 'locale': 'en_US'}, + 'es_ES': {'currency': 'EUR', 'locale': 'es_ES'}, + 'ja_JP': {'currency': 'JPY', 'locale': 'ja_JP'}, + }; + + @override + Widget build(BuildContext context) { + final config = _localeConfig[_selectedLocale]!; + final formatted = formatCurrency( + widget.amount, + currency: config['currency']!, + locale: config['locale']!, + ); + + return Column( + children: [ + Text( + 'Price: $formatted', + style: Theme.of(context).textTheme.headlineMedium, + ), + SizedBox(height: 16), + DropdownButton( + value: _selectedLocale, + onChanged: (String? newValue) { + setState(() { + _selectedLocale = newValue!; + }); + }, + items: _localeConfig.keys.map>((String value) { + return DropdownMenuItem( + value: value, + child: Text(_localeConfig[value]!['currency']!), + ); + }).toList(), + ), + ], + ); + } +} +``` + +## Email validation on form submission (Flutter) + +```dart +import 'package:flutter/material.dart'; +import 'package:kompkit_core/kompkit_core.dart'; + +class ContactForm extends StatefulWidget { + @override + _ContactFormState createState() => _ContactFormState(); +} + +class _ContactFormState extends State { + final TextEditingController _emailController = TextEditingController(); + final GlobalKey _formKey = GlobalKey(); + + void _handleSubmit() { + if (_formKey.currentState!.validate()) { + // Submit form + print('Submitting: ${_emailController.text}'); + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text('Form submitted successfully!')), + ); + } + } + + String? _validateEmail(String? value) { + if (value == null || value.isEmpty) { + return 'Email is required'; + } + if (!isEmail(value)) { + return 'Please enter a valid email address'; + } + return null; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text('Contact Form')), + body: Padding( + padding: EdgeInsets.all(16), + child: Form( + key: _formKey, + child: Column( + children: [ + TextFormField( + controller: _emailController, + validator: _validateEmail, + decoration: InputDecoration( + labelText: 'Email', + border: OutlineInputBorder(), + ), + keyboardType: TextInputType.emailAddress, + ), + SizedBox(height: 16), + ElevatedButton( + onPressed: _handleSubmit, + child: Text('Submit'), + ), + ], + ), + ), + ), + ); + } +} +``` diff --git a/docs/roadmap.md b/docs/roadmap.md index 42ee459..92a41d5 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -42,6 +42,6 @@ The focus is on: - Optional React hooks package (`@kompkit/react`) - Optional Vue composables package (`@kompkit/vue`) - UI component library (post-1.0) -- Additional platform support (iOS, Flutter) +- Additional platform support (iOS native) Timelines are subject to change based on community feedback and contributions. diff --git a/package.json b/package.json index 86e3cc1..fb38c50 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "kompkit", "version": "0.1.0-alpha", - "description": "A lightweight cross-platform utility kit for Android (Kotlin) and Web (TypeScript): debounce, isEmail, formatCurrency", + "description": "A lightweight cross-platform utility kit for Web (TypeScript), Android (Kotlin), and Flutter (Dart): debounce, isEmail, formatCurrency", "private": true, "workspaces": [ "packages/core/web" @@ -10,16 +10,20 @@ "build": "lerna run build", "test:web": "lerna run test --scope=@kompkit/core", "test:android": "cd packages/core/android && ./gradlew test", - "test": "npm run test:web && npm run test:android", + "test:flutter": "cd packages/core/flutter && flutter test", + "test": "npm run test:web && npm run test:android && npm run test:flutter", "docs:web": "npm --prefix packages/core/web run docs", "docs:android": "cd packages/core/android && ./gradlew copyDokkaToDocs", - "docs:all": "npm run docs:web && npm run docs:android" + "docs:flutter": "cd packages/core/flutter && dart doc --output ../../../docs/api/flutter", + "docs:all": "npm run docs:web && npm run docs:android && npm run docs:flutter" }, "keywords": [ "utilities", "cross-platform", "typescript", "kotlin", + "dart", + "flutter", "android", "web" ], From a03f2e8803493677d7a976ba1770de0d054a302e Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:35:35 +0000 Subject: [PATCH 04/10] docs(api): add Flutter/Dart API documentation Generate comprehensive API documentation for Flutter/Dart module using dart doc. Add professional HTML documentation with search functionality and cross-linking. Features: - Auto-generated from DartDoc comments in source code - Searchable documentation with navigation - Detailed parameter and return value documentation - Code examples with syntax highlighting - Cross-platform compatibility notes - Integration with existing Web and Android API docs --- docs/api/flutter/__404error.html | 103 + docs/api/flutter/categories.json | 1 + .../VoidCallback.html | 105 + .../debounce.html | 137 + .../debounceVoid.html | 135 + ...tter_lib_src_debounce-library-sidebar.html | 16 + ...core_flutter_lib_src_debounce-library.html | 10 + .../index.html | 164 + ...lutter_lib_src_format-library-sidebar.html | 13 + ...s_core_flutter_lib_src_format-library.html | 10 + .../formatCurrency.html | 153 + .../index.html | 132 + ...tter_lib_src_validate-library-sidebar.html | 13 + ...core_flutter_lib_src_validate-library.html | 10 + .../index.html | 132 + .../isEmail.html | 132 + docs/api/flutter/index.html | 130 + docs/api/flutter/index.json | 1 + .../flutter/kompkit_core/VoidCallback.html | 105 + docs/api/flutter/kompkit_core/debounce.html | 137 + .../flutter/kompkit_core/debounceVoid.html | 135 + .../flutter/kompkit_core/formatCurrency.html | 166 + docs/api/flutter/kompkit_core/index.html | 221 + docs/api/flutter/kompkit_core/isEmail.html | 132 + .../kompkit_core-library-sidebar.html | 18 + .../kompkit_core/kompkit_core-library.html | 10 + docs/api/flutter/search.html | 82 + docs/api/flutter/static-assets/docs.dart.js | 4474 +++++++++++++++++ .../flutter/static-assets/docs.dart.js.map | 16 + docs/api/flutter/static-assets/favicon.png | Bin 0 -> 1767 bytes docs/api/flutter/static-assets/github.css | 99 + .../flutter/static-assets/highlight.pack.js | 780 +++ .../api/flutter/static-assets/play_button.svg | 1 + docs/api/flutter/static-assets/readme.md | 36 + docs/api/flutter/static-assets/search.svg | 1 + docs/api/flutter/static-assets/styles.css | 1 + docs/api/web/functions/debounce.html | 2 +- docs/api/web/functions/formatCurrency.html | 2 +- docs/api/web/functions/isEmail.html | 2 +- 39 files changed, 7814 insertions(+), 3 deletions(-) create mode 100644 docs/api/flutter/__404error.html create mode 100644 docs/api/flutter/categories.json create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html create mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html create mode 100644 docs/api/flutter/index.html create mode 100644 docs/api/flutter/index.json create mode 100644 docs/api/flutter/kompkit_core/VoidCallback.html create mode 100644 docs/api/flutter/kompkit_core/debounce.html create mode 100644 docs/api/flutter/kompkit_core/debounceVoid.html create mode 100644 docs/api/flutter/kompkit_core/formatCurrency.html create mode 100644 docs/api/flutter/kompkit_core/index.html create mode 100644 docs/api/flutter/kompkit_core/isEmail.html create mode 100644 docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html create mode 100644 docs/api/flutter/kompkit_core/kompkit_core-library.html create mode 100644 docs/api/flutter/search.html create mode 100644 docs/api/flutter/static-assets/docs.dart.js create mode 100644 docs/api/flutter/static-assets/docs.dart.js.map create mode 100644 docs/api/flutter/static-assets/favicon.png create mode 100644 docs/api/flutter/static-assets/github.css create mode 100644 docs/api/flutter/static-assets/highlight.pack.js create mode 100644 docs/api/flutter/static-assets/play_button.svg create mode 100644 docs/api/flutter/static-assets/readme.md create mode 100644 docs/api/flutter/static-assets/search.svg create mode 100644 docs/api/flutter/static-assets/styles.css diff --git a/docs/api/flutter/__404error.html b/docs/api/flutter/__404error.html new file mode 100644 index 0000000..cdc388f --- /dev/null +++ b/docs/api/flutter/__404error.html @@ -0,0 +1,103 @@ + + + + + + + + kompkit_core - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
kompkit_core
+ + +
+
+
+

404: Something's gone wrong :-(

+
+

+ You've tried to visit a page that doesn't exist. Luckily this site has + other pages. +

+
+ If you were looking for something specific, try searching: + +
+
+
+ + + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/categories.json b/docs/api/flutter/categories.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/docs/api/flutter/categories.json @@ -0,0 +1 @@ +[] diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html new file mode 100644 index 0000000..2c8de79 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html @@ -0,0 +1,105 @@ + + + + + + + + VoidCallback typedef - debounce library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VoidCallback
+ + +
+
+
+
+

VoidCallback typedef + +

+
+ VoidCallback = + void Function() + +
+ + +
+

Type definition for void callback functions

+
+ + +
+

Implementation

+
typedef VoidCallback = void Function();
+
+ +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html new file mode 100644 index 0000000..f0c462a --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html @@ -0,0 +1,137 @@ + + + + + + + + debounce function - debounce library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debounce
+ + +
+
+
+
+

debounce<T> function + +

+ +
+ +Function +debounce<T>(
  1. Function fn, [
  2. +
  3. Duration wait = const Duration(milliseconds: 250)
  4. +
]) + + + +
+ +
+

Debounces a function call by delaying its execution until after a specified wait period.

+

Subsequent calls within the wait period reset the timer, ensuring that the function +is only called once after the specified delay has elapsed without any new calls.

+

This is particularly useful for scenarios like search input fields, where you want +to wait for the user to stop typing before making an API call.

+

Parameters:

+
    +
  • fn - The function to debounce
  • +
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • +
+

Returns: A debounced version of the function that accepts a parameter of type T

+

Example:

+
final search = debounce<String>((String query) {
+  print('Searching: $query');
+}, const Duration(milliseconds: 300));
+
+search('hello'); // Will execute after 300ms if no other calls are made
+search('world'); // Previous call is cancelled, this will execute after 300ms
+
+
+ + + +
+

Implementation

+
Function debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) {
+  Timer? timer;
+
+  return (T arg) {
+    timer?.cancel();
+    timer = Timer(wait, () => fn(arg));
+  };
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html new file mode 100644 index 0000000..1f94e55 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html @@ -0,0 +1,135 @@ + + + + + + + + debounceVoid function - debounce library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debounceVoid
+ + +
+
+
+
+

debounceVoid function + +

+ +
+ +VoidCallback +debounceVoid(
  1. VoidCallback fn, [
  2. +
  3. Duration wait = const Duration(milliseconds: 250)
  4. +
]) + + + +
+ +
+

Debounces a void function (function with no parameters).

+

Similar to debounce, but specifically designed for functions that don't take parameters. +Useful for actions like saving data, refreshing UI, or other side effects.

+

Parameters:

+
    +
  • fn - The void function to debounce
  • +
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • +
+

Returns: A debounced version of the void function

+

Example:

+
final saveData = debounceVoid(() {
+  print('Saving data...');
+}, const Duration(milliseconds: 500));
+
+saveData(); // Will execute after 500ms if no other calls are made
+saveData(); // Previous call is cancelled, this will execute after 500ms
+
+
+ + + +
+

Implementation

+
VoidCallback debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) {
+  Timer? timer;
+
+  return () {
+    timer?.cancel();
+    timer = Timer(wait, fn);
+  };
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html new file mode 100644 index 0000000..3416c45 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html @@ -0,0 +1,16 @@ +
    + + + + + + +
  1. Functions
  2. +
  3. debounce
  4. +
  5. debounceVoid
  6. + +
  7. Typedefs
  8. +
  9. VoidCallback
  10. + + +
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html new file mode 100644 index 0000000..0e51f7d --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html @@ -0,0 +1,10 @@ + + + + + + + +

New URL

+ + \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html new file mode 100644 index 0000000..bdd91bb --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html @@ -0,0 +1,164 @@ + + + + + + + + debounce library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debounce
+ + +
+
+
+ +
+ + +

+ src/debounce + library + + +

+
+ + + + + + + + + + + +
+

Functions

+
+
+ debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) + Function + + + +
+
+ Debounces a function call by delaying its execution until after a specified wait period. + + +
+ +
+ debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) + VoidCallback + + + +
+
+ Debounces a void function (function with no parameters). + + +
+ +
+
+ +
+

Typedefs

+
+ +
+ VoidCallback + = void Function() + + + +
+
+ Type definition for void callback functions + + +
+ +
+
+ +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html new file mode 100644 index 0000000..1b2eda4 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html @@ -0,0 +1,13 @@ +
    + + + + + + +
  1. Functions
  2. +
  3. formatCurrency
  4. + + + +
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html new file mode 100644 index 0000000..0019187 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html @@ -0,0 +1,10 @@ + + + + + + + +

New URL

+ + \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html new file mode 100644 index 0000000..35a722d --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html @@ -0,0 +1,153 @@ + + + + + + + + formatCurrency function - format library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
formatCurrency
+ + +
+
+
+
+

formatCurrency function + +

+ +
+ +String +formatCurrency(
  1. num amount, {
  2. +
  3. String currency = "EUR",
  4. +
  5. String locale = "es_ES",
  6. +
}) + + + +
+ +
+

Formats a number as a localized currency string.

+

This function uses the Dart intl package to format numbers according to +the specified currency and locale conventions. It handles decimal places, +thousands separators, and currency symbols based on the locale.

+

The function automatically determines the appropriate currency symbol and +formatting rules for the given locale. If an unsupported locale/currency +combination is provided, it falls back gracefully.

+

Parameters:

+
    +
  • amount - The numeric amount to format (supports both int and double)
  • +
  • currency - The ISO 4217 currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR"
  • +
  • locale - The locale identifier (e.g., "en_US", "es_ES", "ja_JP"). Defaults to "es_ES"
  • +
+

Returns: A formatted currency string according to the specified locale

+

Example:

+
// Default (EUR, Spanish locale)
+formatCurrency(1234.56);                                    // "1.234,56 €"
+
+// US Dollar
+formatCurrency(1234.56, currency: "USD", locale: "en_US");  // "$1,234.56"
+
+// Japanese Yen (no decimal places)
+formatCurrency(1000, currency: "JPY", locale: "ja_JP");     // "¥1,000"
+
+// British Pound
+formatCurrency(999.99, currency: "GBP", locale: "en_GB");   // "£999.99"
+
+// Negative amounts
+formatCurrency(-50.25, currency: "USD", locale: "en_US");   // "-$50.25"
+
+
+ + + +
+

Implementation

+
String formatCurrency(
+  num amount, {
+  String currency = "EUR",
+  String locale = "es_ES",
+}) {
+  final formatter = NumberFormat.currency(
+    locale: locale,
+    symbol: _getCurrencySymbol(currency, locale),
+    name: currency,
+  );
+  return formatter.format(amount);
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html new file mode 100644 index 0000000..88000c9 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html @@ -0,0 +1,132 @@ + + + + + + + + format library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
format
+ + +
+
+
+ +
+ + +

+ src/format + library + + +

+
+ + + + + + + + + + + +
+

Functions

+
+
+ formatCurrency(num amount, {String currency = "EUR", String locale = "es_ES"}) + String + + + +
+
+ Formats a number as a localized currency string. + + +
+ +
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html new file mode 100644 index 0000000..3699871 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html @@ -0,0 +1,13 @@ +
    + + + + + + +
  1. Functions
  2. +
  3. isEmail
  4. + + + +
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html new file mode 100644 index 0000000..3b175aa --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html @@ -0,0 +1,10 @@ + + + + + + + +

New URL

+ + \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html new file mode 100644 index 0000000..3881006 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html @@ -0,0 +1,132 @@ + + + + + + + + validate library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
validate
+ + +
+
+
+ +
+ + +

+ src/validate + library + + +

+
+ + + + + + + + + + + +
+

Functions

+
+
+ isEmail(String value) + bool + + + +
+
+ Validates whether a string matches a basic email pattern. + + +
+ +
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html new file mode 100644 index 0000000..6bba1c5 --- /dev/null +++ b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html @@ -0,0 +1,132 @@ + + + + + + + + isEmail function - validate library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isEmail
+ + +
+
+
+
+

isEmail function + +

+ +
+ +bool +isEmail(
  1. String value
  2. +
) + + + +
+ +
+

Validates whether a string matches a basic email pattern.

+

This function performs a simple regex-based validation to check if the provided +string follows the basic email format. It automatically trims whitespace from +the input before validation.

+

Note: This is a basic validation and may not catch all edge cases of valid +or invalid email addresses according to RFC specifications. For production use +with strict requirements, consider using a more comprehensive email validation library.

+

Parameters:

+
    +
  • value - The string to validate
  • +
+

Returns: true if the string is a valid email format, false otherwise

+

Example:

+
isEmail('user@example.com');        // true
+isEmail('test.email@domain.org');   // true
+isEmail('invalid@');                // false
+isEmail('@invalid.com');            // false
+isEmail('  test@domain.org  ');     // true (whitespace is trimmed)
+isEmail('user name@domain.com');    // false (contains space)
+
+
+ + + +
+

Implementation

+
bool isEmail(String value) {
+  return _emailRegExp.hasMatch(value.trim());
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/index.html b/docs/api/flutter/index.html new file mode 100644 index 0000000..86fd0eb --- /dev/null +++ b/docs/api/flutter/index.html @@ -0,0 +1,130 @@ + + + + + + + + kompkit_core - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
kompkit_core
+ + +
+
+
+ +
+

KompKit Core - Flutter/Dart

+

Cross-platform utility functions for Flutter and Dart applications. Part of the KompKit ecosystem with identical APIs across Web, Android, and Flutter platforms.

+

Quick Start

+

Add to your pubspec.yaml:

+
dependencies:
+  kompkit_core:
+    path: path/to/KompKit/packages/core/flutter
+
+

Import and use:

+
import 'package:kompkit_core/kompkit_core.dart';
+
+// Debounce function calls
+final search = debounce<String>((query) => print('Searching: $query'), 
+                                const Duration(milliseconds: 300));
+
+// Validate emails
+print(isEmail('user@example.com')); // true
+
+// Format currency
+print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56"
+
+

Documentation

+ +

Testing

+
flutter test  # Flutter projects
+dart test     # Dart-only projects
+
+

Platform Support

+

Works on all Flutter platforms (iOS, Android, Web, Desktop) and server-side Dart.

+
+ + +
+

Libraries

+
+
+ kompkit_core + +
+
KompKit Core - Cross-platform utilities for Flutter and Dart +
+ +
+
+
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/index.json b/docs/api/flutter/index.json new file mode 100644 index 0000000..5756d68 --- /dev/null +++ b/docs/api/flutter/index.json @@ -0,0 +1 @@ +[{"name":"kompkit_core","qualifiedName":"kompkit_core","href":"kompkit_core/","kind":9,"packageRank":0,"desc":"KompKit Core - Cross-platform utilities for Flutter and Dart"},{"name":"VoidCallback","qualifiedName":"kompkit_core.VoidCallback","href":"kompkit_core/VoidCallback.html","kind":21,"packageRank":0,"desc":"Type definition for void callback functions","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"debounce","qualifiedName":"kompkit_core.debounce","href":"kompkit_core/debounce.html","kind":8,"packageRank":0,"desc":"Debounces a function call by delaying its execution until after a specified wait period.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"debounceVoid","qualifiedName":"kompkit_core.debounceVoid","href":"kompkit_core/debounceVoid.html","kind":8,"packageRank":0,"desc":"Debounces a void function (function with no parameters).","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"formatCurrency","qualifiedName":"kompkit_core.formatCurrency","href":"kompkit_core/formatCurrency.html","kind":8,"packageRank":0,"desc":"Formats a number as a localized currency string.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"isEmail","qualifiedName":"kompkit_core.isEmail","href":"kompkit_core/isEmail.html","kind":8,"packageRank":0,"desc":"Validates whether a string matches a basic email pattern.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}}] diff --git a/docs/api/flutter/kompkit_core/VoidCallback.html b/docs/api/flutter/kompkit_core/VoidCallback.html new file mode 100644 index 0000000..427efb4 --- /dev/null +++ b/docs/api/flutter/kompkit_core/VoidCallback.html @@ -0,0 +1,105 @@ + + + + + + + + VoidCallback typedef - kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
VoidCallback
+ + +
+
+
+
+

VoidCallback typedef + +

+
+ VoidCallback = + void Function() + +
+ + +
+

Type definition for void callback functions

+
+ + +
+

Implementation

+
typedef VoidCallback = void Function();
+
+ +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/debounce.html b/docs/api/flutter/kompkit_core/debounce.html new file mode 100644 index 0000000..0bffe63 --- /dev/null +++ b/docs/api/flutter/kompkit_core/debounce.html @@ -0,0 +1,137 @@ + + + + + + + + debounce function - kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debounce
+ + +
+
+
+
+

debounce<T> function + +

+ +
+ +Function +debounce<T>(
  1. Function fn, [
  2. +
  3. Duration wait = const Duration(milliseconds: 250)
  4. +
]) + + + +
+ +
+

Debounces a function call by delaying its execution until after a specified wait period.

+

Subsequent calls within the wait period reset the timer, ensuring that the function +is only called once after the specified delay has elapsed without any new calls.

+

This is particularly useful for scenarios like search input fields, where you want +to wait for the user to stop typing before making an API call.

+

Parameters:

+
    +
  • fn - The function to debounce
  • +
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • +
+

Returns: A debounced version of the function that accepts a parameter of type T

+

Example:

+
final search = debounce<String>((String query) {
+  print('Searching: $query');
+}, const Duration(milliseconds: 300));
+
+search('hello'); // Will execute after 300ms if no other calls are made
+search('world'); // Previous call is cancelled, this will execute after 300ms
+
+
+ + + +
+

Implementation

+
Function debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) {
+  Timer? timer;
+
+  return (T arg) {
+    timer?.cancel();
+    timer = Timer(wait, () => fn(arg));
+  };
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/debounceVoid.html b/docs/api/flutter/kompkit_core/debounceVoid.html new file mode 100644 index 0000000..a824256 --- /dev/null +++ b/docs/api/flutter/kompkit_core/debounceVoid.html @@ -0,0 +1,135 @@ + + + + + + + + debounceVoid function - kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
debounceVoid
+ + +
+
+
+
+

debounceVoid function + +

+ +
+ +VoidCallback +debounceVoid(
  1. VoidCallback fn, [
  2. +
  3. Duration wait = const Duration(milliseconds: 250)
  4. +
]) + + + +
+ +
+

Debounces a void function (function with no parameters).

+

Similar to debounce, but specifically designed for functions that don't take parameters. +Useful for actions like saving data, refreshing UI, or other side effects.

+

Parameters:

+
    +
  • fn - The void function to debounce
  • +
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • +
+

Returns: A debounced version of the void function

+

Example:

+
final saveData = debounceVoid(() {
+  print('Saving data...');
+}, const Duration(milliseconds: 500));
+
+saveData(); // Will execute after 500ms if no other calls are made
+saveData(); // Previous call is cancelled, this will execute after 500ms
+
+
+ + + +
+

Implementation

+
VoidCallback debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) {
+  Timer? timer;
+
+  return () {
+    timer?.cancel();
+    timer = Timer(wait, fn);
+  };
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/formatCurrency.html b/docs/api/flutter/kompkit_core/formatCurrency.html new file mode 100644 index 0000000..f61e266 --- /dev/null +++ b/docs/api/flutter/kompkit_core/formatCurrency.html @@ -0,0 +1,166 @@ + + + + + + + + formatCurrency function - kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
formatCurrency
+ + +
+
+
+
+

formatCurrency function + +

+ +
+ +String +formatCurrency(
  1. num amount, {
  2. +
  3. String currency = "EUR",
  4. +
  5. String locale = "es_ES",
  6. +
}) + + + +
+ +
+

Formats a number as a localized currency string.

+

This function uses the Dart intl package to format numbers according to +the specified currency and locale conventions. It handles decimal places, +thousands separators, and currency symbols based on the locale.

+

The function automatically determines the appropriate currency symbol and +formatting rules for the given locale. If an unsupported locale/currency +combination is provided, it falls back gracefully.

+

Parameters:

+
    +
  • amount - The numeric amount to format (supports both int and double)
  • +
  • currency - The ISO 4217 currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR"
  • +
  • locale - The locale identifier (e.g., "en_US", "es_ES", "ja_JP"). Defaults to "es_ES"
  • +
+

Returns: A formatted currency string according to the specified locale

+

Example:

+
// Default (EUR, Spanish locale)
+formatCurrency(1234.56);                                    // "1.234,56 €"
+
+// US Dollar
+formatCurrency(1234.56, currency: "USD", locale: "en_US");  // "$1,234.56"
+
+// Japanese Yen (no decimal places)
+formatCurrency(1000, currency: "JPY", locale: "ja_JP");     // "¥1,000"
+
+// British Pound
+formatCurrency(999.99, currency: "GBP", locale: "en_GB");   // "£999.99"
+
+// Negative amounts
+formatCurrency(-50.25, currency: "USD", locale: "en_US");   // "-$50.25"
+
+
+ + + +
+

Implementation

+
String formatCurrency(
+  num amount, {
+  String currency = "EUR",
+  String locale = "es_ES",
+}) {
+  try {
+    final formatter = NumberFormat.currency(
+      locale: locale,
+      name: currency,
+    );
+    return formatter.format(amount);
+  } catch (e) {
+    // Fallback to a basic format if locale/currency combination is not supported
+    try {
+      final fallbackFormatter = NumberFormat.currency(
+        locale: 'en_US',
+        name: currency,
+      );
+      return fallbackFormatter.format(amount);
+    } catch (e2) {
+      // Ultimate fallback: just return the number with currency code
+      return '$currency${amount.toStringAsFixed(2)}';
+    }
+  }
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/index.html b/docs/api/flutter/kompkit_core/index.html new file mode 100644 index 0000000..b1c733a --- /dev/null +++ b/docs/api/flutter/kompkit_core/index.html @@ -0,0 +1,221 @@ + + + + + + + + kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
kompkit_core
+ + +
+
+
+ +
+ + +

+ kompkit_core + library + + +

+
+ + +
+

KompKit Core - Cross-platform utilities for Flutter and Dart

+

A lightweight utility library providing essential functions for Flutter +and Dart applications. Part of the KompKit ecosystem with identical APIs +across Web (TypeScript), Android (Kotlin), and Flutter (Dart) platforms.

+

Features

+
    +
  • Cross-platform compatibility: Identical APIs across all platforms
  • +
  • Type safety: Full Dart null safety support
  • +
  • Zero dependencies: Minimal external dependencies (only intl for formatting)
  • +
  • Comprehensive testing: 100% test coverage
  • +
  • Rich documentation: Detailed API docs with examples
  • +
+

Available Utilities

+
    +
  • debounce - Delay function execution with automatic cancellation
  • +
  • debounceVoid - Debounce functions with no parameters
  • +
  • isEmail - Email address validation using regex patterns
  • +
  • formatCurrency - Localized currency formatting
  • +
+

Quick Start

+
import 'package:kompkit_core/kompkit_core.dart';
+
+// Debounce a search function
+final search = debounce<String>((query) => print('Searching: $query'), 
+                                const Duration(milliseconds: 300));
+
+// Validate email addresses
+print(isEmail('user@example.com')); // true
+
+// Format currency
+print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56"
+
+
+ + + + + + + + + +
+

Functions

+
+
+ debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) + Function + + + +
+
+ Debounces a function call by delaying its execution until after a specified wait period. + + +
+ +
+ debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) + VoidCallback + + + +
+
+ Debounces a void function (function with no parameters). + + +
+ +
+ formatCurrency(num amount, {String currency = "EUR", String locale = "es_ES"}) + String + + + +
+
+ Formats a number as a localized currency string. + + +
+ +
+ isEmail(String value) + bool + + + +
+
+ Validates whether a string matches a basic email pattern. + + +
+ +
+
+ +
+

Typedefs

+
+ +
+ VoidCallback + = void Function() + + + +
+
+ Type definition for void callback functions + + +
+ +
+
+ +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/isEmail.html b/docs/api/flutter/kompkit_core/isEmail.html new file mode 100644 index 0000000..04bc143 --- /dev/null +++ b/docs/api/flutter/kompkit_core/isEmail.html @@ -0,0 +1,132 @@ + + + + + + + + isEmail function - kompkit_core library - Dart API + + + + + + + + + + + + + + +
+
+ menu + +
isEmail
+ + +
+
+
+
+

isEmail function + +

+ +
+ +bool +isEmail(
  1. String value
  2. +
) + + + +
+ +
+

Validates whether a string matches a basic email pattern.

+

This function performs a simple regex-based validation to check if the provided +string follows the basic email format. It automatically trims whitespace from +the input before validation.

+

Note: This is a basic validation and may not catch all edge cases of valid +or invalid email addresses according to RFC specifications. For production use +with strict requirements, consider using a more comprehensive email validation library.

+

Parameters:

+
    +
  • value - The string to validate
  • +
+

Returns: true if the string is a valid email format, false otherwise

+

Example:

+
isEmail('user@example.com');        // true
+isEmail('test.email@domain.org');   // true
+isEmail('invalid@');                // false
+isEmail('@invalid.com');            // false
+isEmail('  test@domain.org  ');     // true (whitespace is trimmed)
+isEmail('user name@domain.com');    // false (contains space)
+
+
+ + + +
+

Implementation

+
bool isEmail(String value) {
+  return _emailRegExp.hasMatch(value.trim());
+}
+
+ + +
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html b/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html new file mode 100644 index 0000000..810f159 --- /dev/null +++ b/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html @@ -0,0 +1,18 @@ +
    + + + + + + +
  1. Functions
  2. +
  3. debounce
  4. +
  5. debounceVoid
  6. +
  7. formatCurrency
  8. +
  9. isEmail
  10. + +
  11. Typedefs
  12. +
  13. VoidCallback
  14. + + +
diff --git a/docs/api/flutter/kompkit_core/kompkit_core-library.html b/docs/api/flutter/kompkit_core/kompkit_core-library.html new file mode 100644 index 0000000..172eae8 --- /dev/null +++ b/docs/api/flutter/kompkit_core/kompkit_core-library.html @@ -0,0 +1,10 @@ + + + + + + + +

New URL

+ + \ No newline at end of file diff --git a/docs/api/flutter/search.html b/docs/api/flutter/search.html new file mode 100644 index 0000000..6af83b3 --- /dev/null +++ b/docs/api/flutter/search.html @@ -0,0 +1,82 @@ + + + + + + + + kompkit_core - Dart API docs + + + + + + + + + + + + + + +
+
+ menu + +
kompkit_core
+ + +
+
+
+
+ + +
+
+ + kompkit_core + 0.1.0-alpha + + +
+ + + + + + + + diff --git a/docs/api/flutter/static-assets/docs.dart.js b/docs/api/flutter/static-assets/docs.dart.js new file mode 100644 index 0000000..a3953d9 --- /dev/null +++ b/docs/api/flutter/static-assets/docs.dart.js @@ -0,0 +1,4474 @@ +(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) +for(var r=0;r=0)return true +if(typeof version=="function"&&version.length==0){var q=version() +if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() +function inherit(a,b){a.prototype.constructor=a +a.prototype["$i"+a.name]=a +if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) +return}var s=Object.create(b.prototype) +copyProperties(a.prototype,s) +a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.b(A.E(a,0,4294967295,"length",null)) +return J.hx(new Array(a),b)}, +hw(a,b){if(a<0)throw A.b(A.U("Length must be a non-negative integer: "+a,null)) +return A.k(new Array(a),b.j("o<0>"))}, +hx(a,b){var s=A.k(a,b.j("o<0>")) +s.$flags=1 +return s}, +hy(a,b){return J.h7(a,b)}, +ag(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.aL.prototype +return J.bA.prototype}if(typeof a=="string")return J.a8.prototype +if(a==null)return J.aM.prototype +if(typeof a=="boolean")return J.bz.prototype +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.X.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.j)return a +return J.ev(a)}, +cf(a){if(typeof a=="string")return J.a8.prototype +if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.X.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.j)return a +return J.ev(a)}, +eu(a){if(a==null)return a +if(Array.isArray(a))return J.o.prototype +if(typeof a!="object"){if(typeof a=="function")return J.X.prototype +if(typeof a=="symbol")return J.aQ.prototype +if(typeof a=="bigint")return J.aO.prototype +return a}if(a instanceof A.j)return a +return J.ev(a)}, +jo(a){if(typeof a=="number")return J.aN.prototype +if(typeof a=="string")return J.a8.prototype +if(a==null)return a +if(!(a instanceof A.j))return J.ap.prototype +return a}, +F(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.ag(a).E(a,b)}, +h5(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.jy(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b").C(c).j("b4<1,2>")) +return new A.a6(a,b.j("@<0>").C(c).j("a6<1,2>"))}, +eL(a){return new A.bC("Field '"+a+"' has been assigned during initialization.")}, +dJ(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +a_(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +e8(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +es(a,b,c){return a}, +ex(a){var s,r +for(s=$.ai.length,r=0;r36)throw A.b(A.E(b,2,36,"radix",n)) +if(b===10&&s!=null)return parseInt(a,10) +if(b<10||s==null){r=b<=10?47+b:86+b +q=m[1] +for(p=q.length,o=0;or)return n}return parseInt(a,b)}, +cD(a){var s,r,q,p +if(a instanceof A.j)return A.D(A.aA(a),null) +s=J.ag(a) +if(s===B.z||s===B.B||t.o.b(a)){r=B.k(a) +if(r!=="Object"&&r!=="")return r +q=a.constructor +if(typeof q=="function"){p=q.name +if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.D(A.aA(a),null)}, +eR(a){if(a==null||typeof a=="number"||A.en(a))return J.ak(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.a7)return a.h(0) +if(a instanceof A.b9)return a.aE(!0) +return"Instance of '"+A.cD(a)+"'"}, +hE(a,b,c){var s,r,q,p +if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) +for(s=b,r="";s>>0,s&1023|56320)}}throw A.b(A.E(a,0,1114111,null,null))}, +hD(a){var s=a.$thrownJsError +if(s==null)return null +return A.az(s)}, +eS(a,b){var s +if(a.$thrownJsError==null){s=new Error() +A.x(a,s) +a.$thrownJsError=s +s.stack=b.h(0)}}, +fJ(a,b){var s,r="index" +if(!A.fv(b))return new A.G(!0,b,r,null) +s=J.cg(a) +if(b<0||b>=s)return A.e_(b,s,a,r) +return A.hF(b,r)}, +jl(a,b,c){if(a>c)return A.E(a,0,c,"start",null) +if(b!=null)if(bc)return A.E(b,a,c,"end",null) +return new A.G(!0,b,"end",null)}, +jf(a){return new A.G(!0,a,null,null)}, +b(a){return A.x(a,new Error())}, +x(a,b){var s +if(a==null)a=new A.P() +b.dartException=a +s=A.jJ +if("defineProperty" in Object){Object.defineProperty(b,"message",{get:s}) +b.name=""}else b.toString=s +return b}, +jJ(){return J.ak(this.dartException)}, +ez(a,b){throw A.x(a,b==null?new Error():b)}, +aC(a,b,c){var s +if(b==null)b=0 +if(c==null)c=0 +s=Error() +A.ez(A.iE(a,b,c),s)}, +iE(a,b,c){var s,r,q,p,o,n,m,l,k +if(typeof b=="string")s=b +else{r="[]=;add;removeWhere;retainWhere;removeRange;setRange;setInt8;setInt16;setInt32;setUint8;setUint16;setUint32;setFloat32;setFloat64".split(";") +q=r.length +p=b +if(p>q){c=p/q|0 +p%=q}s=r[p]}o=typeof c=="string"?c:"modify;remove from;add to".split(";")[c] +n=t.j.b(a)?"list":"ByteData" +m=a.$flags|0 +l="a " +if((m&4)!==0)k="constant " +else if((m&2)!==0){k="unmodifiable " +l="an "}else k=(m&1)!==0?"fixed-length ":"" +return new A.b1("'"+s+"': Cannot "+o+" "+l+k+n)}, +dX(a){throw A.b(A.al(a))}, +Q(a){var s,r,q,p,o,n +a=A.jE(a.replace(String({}),"$receiver$")) +s=a.match(/\\\$[a-zA-Z]+\\\$/g) +if(s==null)s=A.k([],t.s) +r=s.indexOf("\\$arguments\\$") +q=s.indexOf("\\$argumentsExpr\\$") +p=s.indexOf("\\$expr\\$") +o=s.indexOf("\\$method\\$") +n=s.indexOf("\\$receiver\\$") +return new A.cH(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +cI(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +eY(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +e2(a,b){var s=b==null,r=s?null:b.method +return new A.bB(a,r,s?null:b.receiver)}, +aj(a){if(a==null)return new A.cC(a) +if(a instanceof A.aJ)return A.a5(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.a5(a,a.dartException) +return A.je(a)}, +a5(a,b){if(t.C.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +je(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(!("message" in a))return a +s=a.message +if("number" in a&&typeof a.number=="number"){r=a.number +q=r&65535 +if((B.c.aa(r,16)&8191)===10)switch(q){case 438:return A.a5(a,A.e2(A.i(s)+" (Error "+q+")",null)) +case 445:case 5007:A.i(s) +return A.a5(a,new A.aY())}}if(a instanceof TypeError){p=$.fQ() +o=$.fR() +n=$.fS() +m=$.fT() +l=$.fW() +k=$.fX() +j=$.fV() +$.fU() +i=$.fZ() +h=$.fY() +g=p.B(s) +if(g!=null)return A.a5(a,A.e2(s,g)) +else{g=o.B(s) +if(g!=null){g.method="call" +return A.a5(a,A.e2(s,g))}else if(n.B(s)!=null||m.B(s)!=null||l.B(s)!=null||k.B(s)!=null||j.B(s)!=null||m.B(s)!=null||i.B(s)!=null||h.B(s)!=null)return A.a5(a,new A.aY())}return A.a5(a,new A.bU(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.b_() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.a5(a,new A.G(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.b_() +return a}, +az(a){var s +if(a instanceof A.aJ)return a.b +if(a==null)return new A.ba(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.ba(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +fM(a){if(a==null)return J.T(a) +if(typeof a=="object")return A.bQ(a) +return J.T(a)}, +jn(a,b){var s,r,q,p=a.length +for(s=0;s=0}, +jE(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +fD(a){return a}, +jH(a,b,c,d){var s,r,q,p=new A.cS(b,a,0),o=t.F,n=0,m="" +for(;p.m();){s=p.d +if(s==null)s=o.a(s) +r=s.b +q=r.index +m=m+A.i(A.fD(B.a.i(a,n,q)))+A.i(c.$1(s)) +n=q+r[0].length}p=m+A.i(A.fD(B.a.K(a,n))) +return p.charCodeAt(0)==0?p:p}, +c8:function c8(a,b){this.a=a +this.b=b}, +aF:function aF(){}, +aH:function aH(a,b,c){this.a=a +this.b=b +this.$ti=c}, +c5:function c5(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +aG:function aG(){}, +aI:function aI(a,b,c){this.a=a +this.b=b +this.$ti=c}, +cH:function cH(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aY:function aY(){}, +bB:function bB(a,b,c){this.a=a +this.b=b +this.c=c}, +bU:function bU(a){this.a=a}, +cC:function cC(a){this.a=a}, +aJ:function aJ(a,b){this.a=a +this.b=b}, +ba:function ba(a){this.a=a +this.b=null}, +a7:function a7(){}, +cj:function cj(){}, +ck:function ck(){}, +cG:function cG(){}, +cF:function cF(){}, +aE:function aE(a,b){this.a=a +this.b=b}, +bS:function bS(a){this.a=a}, +a9:function a9(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +cy:function cy(a,b){this.a=a +this.b=b +this.c=null}, +aa:function aa(a,b){this.a=a +this.$ti=b}, +bD:function bD(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +aS:function aS(a,b){this.a=a +this.$ti=b}, +aR:function aR(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +dK:function dK(a){this.a=a}, +dL:function dL(a){this.a=a}, +dM:function dM(a){this.a=a}, +b9:function b9(){}, +c7:function c7(){}, +cu:function cu(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +c6:function c6(a){this.b=a}, +cS:function cS(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +iF(a){return a}, +hA(a){return new Int8Array(a)}, +hB(a){return new Uint8Array(a)}, +ad(a,b,c){if(a>>>0!==a||a>=c)throw A.b(A.fJ(b,a))}, +iC(a,b,c){var s +if(!(a>>>0!==a))s=b>>>0!==b||a>b||b>c +else s=!0 +if(s)throw A.b(A.jl(a,b,c)) +return b}, +bE:function bE(){}, +aW:function aW(){}, +bF:function bF(){}, +an:function an(){}, +aU:function aU(){}, +aV:function aV(){}, +bG:function bG(){}, +bH:function bH(){}, +bI:function bI(){}, +bJ:function bJ(){}, +bK:function bK(){}, +bL:function bL(){}, +bM:function bM(){}, +aX:function aX(){}, +bN:function bN(){}, +b5:function b5(){}, +b6:function b6(){}, +b7:function b7(){}, +b8:function b8(){}, +e7(a,b){var s=b.c +return s==null?b.c=A.bd(a,"W",[b.x]):s}, +eU(a){var s=a.w +if(s===6||s===7)return A.eU(a.x) +return s===11||s===12}, +hG(a){return a.as}, +ce(a){return A.dl(v.typeUniverse,a,!1)}, +ae(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w +switch(a0){case 5:case 1:case 2:case 3:case 4:return a2 +case 6:s=a2.x +r=A.ae(a1,s,a3,a4) +if(r===s)return a2 +return A.fa(a1,r,!0) +case 7:s=a2.x +r=A.ae(a1,s,a3,a4) +if(r===s)return a2 +return A.f9(a1,r,!0) +case 8:q=a2.y +p=A.aw(a1,q,a3,a4) +if(p===q)return a2 +return A.bd(a1,a2.x,p) +case 9:o=a2.x +n=A.ae(a1,o,a3,a4) +m=a2.y +l=A.aw(a1,m,a3,a4) +if(n===o&&l===m)return a2 +return A.eb(a1,n,l) +case 10:k=a2.x +j=a2.y +i=A.aw(a1,j,a3,a4) +if(i===j)return a2 +return A.fb(a1,k,i) +case 11:h=a2.x +g=A.ae(a1,h,a3,a4) +f=a2.y +e=A.jb(a1,f,a3,a4) +if(g===h&&e===f)return a2 +return A.f8(a1,g,e) +case 12:d=a2.y +a4+=d.length +c=A.aw(a1,d,a3,a4) +o=a2.x +n=A.ae(a1,o,a3,a4) +if(c===d&&n===o)return a2 +return A.ec(a1,n,c,!0) +case 13:b=a2.x +if(b") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +ft(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=", ",a0=null +if(a3!=null){s=a3.length +if(a2==null)a2=A.k([],t.s) +else a0=a2.length +r=a2.length +for(q=s;q>0;--q)a2.push("T"+(r+q)) +for(p=t.X,o="<",n="",q=0;q0){c+=b+"[" +for(b="",q=0;q0){c+=b+"{" +for(b="",q=0;q "+d}, +D(a,b){var s,r,q,p,o,n,m=a.w +if(m===5)return"erased" +if(m===2)return"dynamic" +if(m===3)return"void" +if(m===1)return"Never" +if(m===4)return"any" +if(m===6){s=a.x +r=A.D(s,b) +q=s.w +return(q===11||q===12?"("+r+")":r)+"?"}if(m===7)return"FutureOr<"+A.D(a.x,b)+">" +if(m===8){p=A.jd(a.x) +o=a.y +return o.length>0?p+("<"+A.fA(o,b)+">"):p}if(m===10)return A.j5(a,b) +if(m===11)return A.ft(a,b,null) +if(m===12)return A.ft(a.x,b,a.y) +if(m===13){n=a.x +return b[b.length-1-n]}return"?"}, +jd(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +i7(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +i6(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.dl(a,b,!1) +else if(typeof m=="number"){s=m +r=A.be(a,5,"#") +q=A.du(s) +for(p=0;p0)p+="<"+A.bc(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.J(null,null) +r.w=8 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.a1(a,r) +a.eC.set(p,q) +return q}, +eb(a,b,c){var s,r,q,p,o,n +if(b.w===9){s=b.x +r=b.y.concat(c)}else{r=c +s=b}q=s.as+(";<"+A.bc(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.J(null,null) +o.w=9 +o.x=s +o.y=r +o.as=q +n=A.a1(a,o) +a.eC.set(q,n) +return n}, +fb(a,b,c){var s,r,q="+"+(b+"("+A.bc(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.J(null,null) +s.w=10 +s.x=b +s.y=c +s.as=q +r=A.a1(a,s) +a.eC.set(q,r) +return r}, +f8(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.bc(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.bc(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.i_(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.J(null,null) +p.w=11 +p.x=b +p.y=c +p.as=r +o=A.a1(a,p) +a.eC.set(r,o) +return o}, +ec(a,b,c,d){var s,r=b.as+("<"+A.bc(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.i1(a,b,c,r,d) +a.eC.set(r,s) +return s}, +i1(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.du(s) +for(q=0,p=0;p0){n=A.ae(a,b,r,0) +m=A.aw(a,c,r,0) +return A.ec(a,n,m,c!==m)}}l=new A.J(null,null) +l.w=12 +l.x=b +l.y=c +l.as=d +return A.a1(a,l)}, +f4(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +f6(a){var s,r,q,p,o,n,m,l=a.r,k=a.s +for(s=l.length,r=0;r=48&&q<=57)r=A.hU(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.f5(a,r,l,k,!1) +else if(q===46)r=A.f5(a,r,l,k,!0) +else{++r +switch(q){case 44:break +case 58:k.push(!1) +break +case 33:k.push(!0) +break +case 59:k.push(A.ac(a.u,a.e,k.pop())) +break +case 94:k.push(A.i3(a.u,k.pop())) +break +case 35:k.push(A.be(a.u,5,"#")) +break +case 64:k.push(A.be(a.u,2,"@")) +break +case 126:k.push(A.be(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.hW(a,k) +break +case 38:A.hV(a,k) +break +case 63:p=a.u +k.push(A.fa(p,A.ac(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.f9(p,A.ac(p,a.e,k.pop()),a.n)) +break +case 40:k.push(-3) +k.push(a.p) +a.p=k.length +break +case 41:A.hT(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.f7(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-1) +break +case 123:k.push(a.p) +a.p=k.length +break +case 125:o=k.splice(a.p) +A.hY(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-2) +break +case 43:n=l.indexOf("(",r) +k.push(l.substring(r,n)) +k.push(-4) +k.push(a.p) +a.p=k.length +r=n+1 +break +default:throw"Bad character "+q}}}m=k.pop() +return A.ac(a.u,a.e,m)}, +hU(a,b,c,d){var s,r,q=b-48 +for(s=c.length;a=48&&r<=57))break +q=q*10+(r-48)}d.push(q) +return a}, +f5(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 +else q=!0 +if(!q)break}}p=c.substring(b,m) +if(e){s=a.u +o=a.e +if(o.w===9)o=o.x +n=A.i7(s,o.x)[p] +if(n==null)A.ez('No "'+p+'" in "'+A.hG(o)+'"') +d.push(A.bf(s,o,n))}else d.push(p) +return m}, +hW(a,b){var s,r=a.u,q=A.f3(a,b),p=b.pop() +if(typeof p=="string")b.push(A.bd(r,p,q)) +else{s=A.ac(r,a.e,p) +switch(s.w){case 11:b.push(A.ec(r,s,q,a.n)) +break +default:b.push(A.eb(r,s,q)) +break}}}, +hT(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +if(typeof o=="number")switch(o){case-1:n=b.pop() +break +case-2:m=b.pop() +break +default:b.push(o) +break}else b.push(o) +s=A.f3(a,b) +o=b.pop() +switch(o){case-3:o=b.pop() +if(n==null)n=p.sEA +if(m==null)m=p.sEA +r=A.ac(p,a.e,o) +q=new A.c2() +q.a=s +q.b=n +q.c=m +b.push(A.f8(p,r,q)) +return +case-4:b.push(A.fb(p,b.pop(),s)) +return +default:throw A.b(A.bq("Unexpected state under `()`: "+A.i(o)))}}, +hV(a,b){var s=b.pop() +if(0===s){b.push(A.be(a.u,1,"0&")) +return}if(1===s){b.push(A.be(a.u,4,"1&")) +return}throw A.b(A.bq("Unexpected extended operation "+A.i(s)))}, +f3(a,b){var s=b.splice(a.p) +A.f7(a.u,a.e,s) +a.p=b.pop() +return s}, +ac(a,b,c){if(typeof c=="string")return A.bd(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.hX(a,b,c)}else return c}, +f7(a,b,c){var s,r=c.length +for(s=0;sn)return!1 +m=n-o +l=s.b +k=r.b +j=l.length +i=k.length +if(o+j=d)return!1 +a1=f[b] +b+=3 +if(a00?new Array(q):v.typeUniverse.sEA +for(o=0;o0?new Array(a):v.typeUniverse.sEA}, +J:function J(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +c2:function c2(){this.c=this.b=this.a=null}, +dk:function dk(a){this.a=a}, +c1:function c1(){}, +bb:function bb(a){this.a=a}, +hP(){var s,r,q +if(self.scheduleImmediate!=null)return A.jg() +if(self.MutationObserver!=null&&self.document!=null){s={} +r=self.document.createElement("div") +q=self.document.createElement("span") +s.a=null +new self.MutationObserver(A.ay(new A.cU(s),1)).observe(r,{childList:true}) +return new A.cT(s,r,q)}else if(self.setImmediate!=null)return A.jh() +return A.ji()}, +hQ(a){self.scheduleImmediate(A.ay(new A.cV(a),0))}, +hR(a){self.setImmediate(A.ay(new A.cW(a),0))}, +hS(a){A.hZ(0,a)}, +hZ(a,b){var s=new A.di() +s.b8(a,b) +return s}, +fy(a){return new A.bY(new A.v($.p,a.j("v<0>")),a.j("bY<0>"))}, +fr(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +fo(a,b){A.iA(a,b)}, +fq(a,b){b.ac(a)}, +fp(a,b){b.ad(A.aj(a),A.az(a))}, +iA(a,b){var s,r,q=new A.dw(b),p=new A.dx(b) +if(a instanceof A.v)a.aD(q,p,t.z) +else{s=t.z +if(a instanceof A.v)a.ao(q,p,s) +else{r=new A.v($.p,t.c) +r.a=8 +r.c=a +r.aD(q,p,s)}}}, +fF(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) +break}catch(r){e=r +d=c}}}}(a,1) +return $.p.aW(new A.dH(s))}, +dZ(a){var s +if(t.C.b(a)){s=a.gJ() +if(s!=null)return s}return B.f}, +iP(a,b){if($.p===B.d)return null +return null}, +iQ(a,b){if($.p!==B.d)A.iP(a,b) +if(b==null)if(t.C.b(a)){b=a.gJ() +if(b==null){A.eS(a,B.f) +b=B.f}}else b=B.f +else if(t.C.b(a))A.eS(a,b) +return new A.H(a,b)}, +e9(a,b,c){var s,r,q,p={},o=p.a=a +for(;s=o.a,(s&4)!==0;){o=o.c +p.a=o}if(o===b){s=A.hH() +b.a3(new A.H(new A.G(!0,o,null,"Cannot complete a future with itself"),s)) +return}r=b.a&1 +s=o.a=s|r +if((s&24)===0){q=b.c +b.a=b.a&1|4 +b.c=o +o.aA(q) +return}if(!c)if(b.c==null)o=(s&16)===0||r!==0 +else o=!1 +else o=!0 +if(o){q=b.T() +b.S(p.a) +A.at(b,q) +return}b.a^=2 +A.cd(null,null,b.b,new A.d1(p,b))}, +at(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g={},f=g.a=a +for(;!0;){s={} +r=f.a +q=(r&16)===0 +p=!q +if(b==null){if(p&&(r&1)===0){f=f.c +A.ep(f.a,f.b)}return}s.a=b +o=b.a +for(f=b;o!=null;f=o,o=n){f.a=null +A.at(g.a,f) +s.a=o +n=o.a}r=g.a +m=r.c +s.b=p +s.c=m +if(q){l=f.c +l=(l&1)!==0||(l&15)===8}else l=!0 +if(l){k=f.b.b +if(p){r=r.b===k +r=!(r||r)}else r=!1 +if(r){A.ep(m.a,m.b) +return}j=$.p +if(j!==k)$.p=k +else j=null +f=f.c +if((f&15)===8)new A.d5(s,g,p).$0() +else if(q){if((f&1)!==0)new A.d4(s,m).$0()}else if((f&2)!==0)new A.d3(g,s).$0() +if(j!=null)$.p=j +f=s.c +if(f instanceof A.v){r=s.a.$ti +r=r.j("W<2>").b(f)||!r.y[1].b(f)}else r=!1 +if(r){i=s.a.b +if((f.a&24)!==0){h=i.c +i.c=null +b=i.U(h) +i.a=f.a&30|i.a&1 +i.c=f.c +g.a=f +continue}else A.e9(f,i,!0) +return}}i=s.a.b +h=i.c +i.c=null +b=i.U(h) +f=s.b +r=s.c +if(!f){i.a=8 +i.c=r}else{i.a=i.a&1|16 +i.c=r}g.a=i +f=i}}, +j6(a,b){if(t.Q.b(a))return b.aW(a) +if(t.v.b(a))return a +throw A.b(A.eD(a,"onError",u.c))}, +j3(){var s,r +for(s=$.av;s!=null;s=$.av){$.bl=null +r=s.b +$.av=r +if(r==null)$.bk=null +s.a.$0()}}, +ja(){$.eo=!0 +try{A.j3()}finally{$.bl=null +$.eo=!1 +if($.av!=null)$.eB().$1(A.fH())}}, +fC(a){var s=new A.bZ(a),r=$.bk +if(r==null){$.av=$.bk=s +if(!$.eo)$.eB().$1(A.fH())}else $.bk=r.b=s}, +j9(a){var s,r,q,p=$.av +if(p==null){A.fC(a) +$.bl=$.bk +return}s=new A.bZ(a) +r=$.bl +if(r==null){s.b=p +$.av=$.bl=s}else{q=r.b +s.b=q +$.bl=r.b=s +if(q==null)$.bk=s}}, +jP(a){A.es(a,"stream",t.K) +return new A.ca()}, +ep(a,b){A.j9(new A.dF(a,b))}, +fz(a,b,c,d){var s,r=$.p +if(r===c)return d.$0() +$.p=c +s=r +try{r=d.$0() +return r}finally{$.p=s}}, +j8(a,b,c,d,e){var s,r=$.p +if(r===c)return d.$1(e) +$.p=c +s=r +try{r=d.$1(e) +return r}finally{$.p=s}}, +j7(a,b,c,d,e,f){var s,r=$.p +if(r===c)return d.$2(e,f) +$.p=c +s=r +try{r=d.$2(e,f) +return r}finally{$.p=s}}, +cd(a,b,c,d){if(B.d!==c)d=c.bs(d) +A.fC(d)}, +cU:function cU(a){this.a=a}, +cT:function cT(a,b,c){this.a=a +this.b=b +this.c=c}, +cV:function cV(a){this.a=a}, +cW:function cW(a){this.a=a}, +di:function di(){}, +dj:function dj(a,b){this.a=a +this.b=b}, +bY:function bY(a,b){this.a=a +this.b=!1 +this.$ti=b}, +dw:function dw(a){this.a=a}, +dx:function dx(a){this.a=a}, +dH:function dH(a){this.a=a}, +H:function H(a,b){this.a=a +this.b=b}, +c_:function c_(){}, +b2:function b2(a,b){this.a=a +this.$ti=b}, +as:function as(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +v:function v(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +cZ:function cZ(a,b){this.a=a +this.b=b}, +d2:function d2(a,b){this.a=a +this.b=b}, +d1:function d1(a,b){this.a=a +this.b=b}, +d0:function d0(a,b){this.a=a +this.b=b}, +d_:function d_(a,b){this.a=a +this.b=b}, +d5:function d5(a,b,c){this.a=a +this.b=b +this.c=c}, +d6:function d6(a,b){this.a=a +this.b=b}, +d7:function d7(a){this.a=a}, +d4:function d4(a,b){this.a=a +this.b=b}, +d3:function d3(a,b){this.a=a +this.b=b}, +bZ:function bZ(a){this.a=a +this.b=null}, +ca:function ca(){}, +dv:function dv(){}, +dF:function dF(a,b){this.a=a +this.b=b}, +da:function da(){}, +db:function db(a,b){this.a=a +this.b=b}, +eM(a,b,c){return A.jn(a,new A.a9(b.j("@<0>").C(c).j("a9<1,2>")))}, +e3(a,b){return new A.a9(a.j("@<0>").C(b).j("a9<1,2>"))}, +hs(a){var s,r=A.a2(a),q=new J.V(a,a.length,r.j("V<1>")) +if(q.m()){s=q.d +return s==null?r.c.a(s):s}return null}, +e4(a){var s,r +if(A.ex(a))return"{...}" +s=new A.A("") +try{r={} +$.ai.push(a) +s.a+="{" +r.a=!0 +a.F(0,new A.cz(r,s)) +s.a+="}"}finally{$.ai.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +e:function e(){}, +N:function N(){}, +cz:function cz(a,b){this.a=a +this.b=b}, +cc:function cc(){}, +aT:function aT(){}, +ar:function ar(a,b){this.a=a +this.$ti=b}, +ao:function ao(){}, +bg:function bg(){}, +j4(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.aj(r) +q=A.y(String(s),null,null) +throw A.b(q)}q=A.dy(p) +return q}, +dy(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(!Array.isArray(a))return new A.c3(a,Object.create(null)) +for(s=0;s")) +for(s=a.length,r=0;r")) +s=A.k([],b.j("o<0>")) +for(r=J.aD(a);r.m();)s.push(r.gn()) +return s}, +eX(a,b,c){var s,r +A.e5(b,"start") +if(c!=null){s=c-b +if(s<0)throw A.b(A.E(c,b,null,"end",null)) +if(s===0)return""}r=A.hI(a,b,c) +return r}, +hI(a,b,c){var s=a.length +if(b>=s)return"" +return A.hE(a,b,c==null||c>s?s:c)}, +eT(a,b){return new A.cu(a,A.eK(a,!1,b,!1,!1,""))}, +eW(a,b,c){var s=J.aD(b) +if(!s.m())return a +if(c.length===0){do a+=A.i(s.gn()) +while(s.m())}else{a+=A.i(s.gn()) +for(;s.m();)a=a+c+A.i(s.gn())}return a}, +fj(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" +if(c===B.e){s=$.h0() +s=s.b.test(b)}else s=!1 +if(s)return b +r=B.y.H(b) +for(s=r.length,q=0,p="";q>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, +ig(a){var s,r,q +if(!$.h1())return A.ih(a) +s=new URLSearchParams() +a.F(0,new A.dp(s)) +r=s.toString() +q=r.length +if(q>0&&r[q-1]==="=")r=B.a.i(r,0,q-1) +return r.replace(/=&|\*|%7E/g,b=>b==="=&"?"&":b==="*"?"%2A":"~")}, +hH(){return A.az(new Error())}, +cn(a){if(typeof a=="number"||A.en(a)||a==null)return J.ak(a) +if(typeof a=="string")return JSON.stringify(a) +return A.eR(a)}, +hk(a,b){A.es(a,"error",t.K) +A.es(b,"stackTrace",t.l) +A.hj(a,b)}, +bq(a){return new A.bp(a)}, +U(a,b){return new A.G(!1,null,b,a)}, +eD(a,b,c){return new A.G(!0,a,b,c)}, +hF(a,b){return new A.aZ(null,null,!0,a,b,"Value not in range")}, +E(a,b,c,d,e){return new A.aZ(b,c,!0,a,d,"Invalid value")}, +bR(a,b,c){if(0>a||a>c)throw A.b(A.E(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.b(A.E(b,a,c,"end",null)) +return b}return c}, +e5(a,b){if(a<0)throw A.b(A.E(a,0,null,b,null)) +return a}, +e_(a,b,c,d){return new A.bx(b,!0,a,d,"Index out of range")}, +cJ(a){return new A.b1(a)}, +eZ(a){return new A.bT(a)}, +eV(a){return new A.b0(a)}, +al(a){return new A.bu(a)}, +y(a,b,c){return new A.bw(a,b,c)}, +ht(a,b,c){var s,r +if(A.ex(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.k([],t.s) +$.ai.push(a) +try{A.j1(a,s)}finally{$.ai.pop()}r=A.eW(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +e0(a,b,c){var s,r +if(A.ex(a))return b+"..."+c +s=new A.A(b) +$.ai.push(a) +try{r=s +r.a=A.eW(r.a,a,", ")}finally{$.ai.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +j1(a,b){var s,r,q,p,o,n,m,l=a.gv(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.m())return +s=A.i(l.gn()) +b.push(s) +k+=s.length+2;++j}if(!l.m()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gn();++j +if(!l.m()){if(j<=4){b.push(A.i(p)) +return}r=A.i(p) +q=b.pop() +k+=r.length+2}else{o=l.gn();++j +for(;l.m();p=o,o=n){n=l.gn();++j +if(j>100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.i(p) +r=A.i(o) +k+=r.length+q.length+4}}if(j>b.length+2){k+=5 +m="..."}else m=null +while(!0){if(!(k>80&&b.length>3))break +k-=b.pop().length+2 +if(m==null){k+=5 +m="..."}}if(m!=null)b.push(m) +b.push(q) +b.push(r)}, +hC(a,b,c,d){var s +if(B.h===c){s=B.c.gp(a) +b=J.T(b) +return A.e8(A.a_(A.a_($.dY(),s),b))}if(B.h===d){s=B.c.gp(a) +b=J.T(b) +c=J.T(c) +return A.e8(A.a_(A.a_(A.a_($.dY(),s),b),c))}s=B.c.gp(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +d=A.e8(A.a_(A.a_(A.a_(A.a_($.dY(),s),b),c),d)) +return d}, +bX(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=null +a6=a4.length +s=a5+5 +if(a6>=s){r=((a4.charCodeAt(a5+4)^58)*3|a4.charCodeAt(a5)^100|a4.charCodeAt(a5+1)^97|a4.charCodeAt(a5+2)^116|a4.charCodeAt(a5+3)^97)>>>0 +if(r===0)return A.f_(a5>0||a6=14)q[7]=a6 +o=q[1] +if(o>=a5)if(A.fB(a4,a5,o,20,q)===20)q[7]=o +n=q[2]+1 +m=q[3] +l=q[4] +k=q[5] +j=q[6] +if(jo+3)){p=m>a5 +g=0 +if(!(p&&m+1===l)){if(!B.a.u(a4,"\\",l))if(n>a5)f=B.a.u(a4,"\\",n-1)||B.a.u(a4,"\\",n-2) +else f=!1 +else f=!0 +if(!f){if(!(kl+2&&B.a.u(a4,"/..",k-3) +else f=!0 +if(!f)if(o===a5+4){if(B.a.u(a4,"file",a5)){if(n<=a5){if(!B.a.u(a4,"/",l)){e="file:///" +r=3}else{e="file://" +r=2}a4=e+B.a.i(a4,l,a6) +o-=a5 +s=r-a5 +k+=s +j+=s +a6=a4.length +a5=g +n=7 +m=7 +l=7}else if(l===k){s=a5===0 +s +if(s){a4=B.a.I(a4,l,k,"/");++k;++j;++a6}else{a4=B.a.i(a4,a5,l)+"/"+B.a.i(a4,k,a6) +o-=a5 +n-=a5 +m-=a5 +l-=a5 +s=1-a5 +k+=s +j+=s +a6=a4.length +a5=g}}h="file"}else if(B.a.u(a4,"http",a5)){if(p&&m+3===l&&B.a.u(a4,"80",m+1)){s=a5===0 +s +if(s){a4=B.a.I(a4,m,l,"") +l-=3 +k-=3 +j-=3 +a6-=3}else{a4=B.a.i(a4,a5,m)+B.a.i(a4,l,a6) +o-=a5 +n-=a5 +m-=a5 +s=3+a5 +l-=s +k-=s +j-=s +a6=a4.length +a5=g}}h="http"}}else if(o===s&&B.a.u(a4,"https",a5)){if(p&&m+4===l&&B.a.u(a4,"443",m+1)){s=a5===0 +s +if(s){a4=B.a.I(a4,m,l,"") +l-=4 +k-=4 +j-=4 +a6-=3}else{a4=B.a.i(a4,a5,m)+B.a.i(a4,l,a6) +o-=a5 +n-=a5 +m-=a5 +s=4+a5 +l-=s +k-=s +j-=s +a6=a4.length +a5=g}}h="https"}i=!f}}}}if(i){if(a5>0||a6a5)h=A.ii(a4,a5,o) +else{if(o===a5)A.au(a4,a5,"Invalid empty scheme") +h=""}d=a3 +if(n>a5){c=o+3 +b=c9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.dR(B.a.i(a,r,s),null) +if(o>255)k.$2(l,r) +n=q+1 +j[q]=o +r=s+1 +q=n}}if(q!==3)k.$2(m,c) +o=A.dR(B.a.i(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +f0(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.cM(a),c=new A.cN(d,a) +if(a.length<2)d.$2("address is too short",e) +s=A.k([],t.t) +for(r=b,q=r,p=!1,o=!1;r>>0) +s.push((k[2]<<8|k[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) +j=new Uint8Array(16) +for(l=s.length,i=9-l,r=0,h=0;r=b&&q=b&&s=p){if(i==null)i=new A.A("") +if(r=o){if(q==null)q=new A.A("") +if(r=a.length)return"%" +s=a.charCodeAt(b+1) +r=a.charCodeAt(n) +q=A.dJ(s) +p=A.dJ(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(u.f.charCodeAt(o)&1)!==0)return A.O(c&&65<=o&&90>=o?(o|32)>>>0:o) +if(s>=97||r>=97)return B.a.i(a,b,b+3).toUpperCase() +return null}, +ee(a){var s,r,q,p,o,n="0123456789ABCDEF" +if(a<=127){s=new Uint8Array(3) +s[0]=37 +s[1]=n.charCodeAt(a>>>4) +s[2]=n.charCodeAt(a&15)}else{if(a>2047)if(a>65535){r=240 +q=4}else{r=224 +q=3}else{r=192 +q=2}s=new Uint8Array(3*q) +for(p=0;--q,q>=0;r=128){o=B.c.bn(a,6*q)&63|r +s[p]=37 +s[p+1]=n.charCodeAt(o>>>4) +s[p+2]=n.charCodeAt(o&15) +p+=3}}return A.eX(s,0,null)}, +bi(a,b,c,d,e,f){var s=A.fh(a,b,c,d,e,f) +return s==null?B.a.i(a,b,c):s}, +fh(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j=null,i=u.f +for(s=!e,r=b,q=r,p=j;r=2&&A.ff(a.charCodeAt(0)))for(s=1;s127||(u.f.charCodeAt(r)&8)===0)break}return a}, +ia(a,b){var s,r,q +for(s=0,r=0;r<2;++r){q=a.charCodeAt(b+r) +if(48<=q&&q<=57)s=s*16+q-48 +else{q|=32 +if(97<=q&&q<=102)s=s*16+q-87 +else throw A.b(A.U("Invalid URL encoding",null))}}return s}, +eh(a,b,c,d,e){var s,r,q,p,o=b +while(!0){if(!(o127)throw A.b(A.U("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.b(A.U("Truncated URI",null)) +p.push(A.ia(a,o+1)) +o+=2}else if(r===43)p.push(32) +else p.push(r)}}return B.af.H(p)}, +ff(a){var s=a|32 +return 97<=s&&s<=122}, +f_(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.k([b-1],t.t) +for(s=a.length,r=b,q=-1,p=null;rb)throw A.b(A.y(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.gZ(j) +if(p!==44||r!==n+7||!B.a.u(a,"base64",n+1))throw A.b(A.y("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.o.bE(a,m,s) +else{l=A.fh(a,m,s,256,!0,!1) +if(l!=null)a=B.a.I(a,m,s,l)}return new A.cK(a,j,c)}, +fB(a,b,c,d,e){var s,r,q +for(s=b;s95)r=31 +q='\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe3\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0e\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\xeb\xeb\x8b\xeb\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x83\xeb\xeb\x8b\xeb\x8b\xeb\xcd\x8b\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x92\x83\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x8b\xeb\x8b\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xebD\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12D\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe8\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\x05\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x10\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\f\xec\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\xec\f\xec\f\xec\xcd\f\xec\f\f\f\f\f\f\f\f\f\xec\f\f\f\f\f\f\f\f\f\f\xec\f\xec\f\xec\f\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\r\xed\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\xed\r\xed\r\xed\xed\r\xed\r\r\r\r\r\r\r\r\r\xed\r\r\r\r\r\r\r\r\r\r\xed\r\xed\r\xed\r\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0f\xea\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe9\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\t\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x11\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xe9\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\t\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x13\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\xf5\x15\x15\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5'.charCodeAt(d*96+r) +d=q&31 +e[q>>>5]=s}return d}, +dp:function dp(a){this.a=a}, +cX:function cX(){}, +l:function l(){}, +bp:function bp(a){this.a=a}, +P:function P(){}, +G:function G(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aZ:function aZ(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.a=c +_.b=d +_.c=e +_.d=f}, +bx:function bx(a,b,c,d,e){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e}, +b1:function b1(a){this.a=a}, +bT:function bT(a){this.a=a}, +b0:function b0(a){this.a=a}, +bu:function bu(a){this.a=a}, +bO:function bO(){}, +b_:function b_(){}, +cY:function cY(a){this.a=a}, +bw:function bw(a,b,c){this.a=a +this.b=b +this.c=c}, +r:function r(){}, +t:function t(){}, +j:function j(){}, +cb:function cb(){}, +A:function A(a){this.a=a}, +cO:function cO(a){this.a=a}, +cL:function cL(a){this.a=a}, +cM:function cM(a){this.a=a}, +cN:function cN(a,b){this.a=a +this.b=b}, +bh:function bh(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +dn:function dn(a,b){this.a=a +this.b=b}, +dm:function dm(a){this.a=a}, +cK:function cK(a,b,c){this.a=a +this.b=b +this.c=c}, +c9:function c9(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=null}, +c0:function c0(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +a4(a){var s +if(typeof a=="function")throw A.b(A.U("Attempting to rewrap a JS function.",null)) +s=function(b,c){return function(d){return b(c,d,arguments.length)}}(A.iB,a) +s[$.eA()]=a +return s}, +iB(a,b,c){if(c>=1)return a.$1(b) +return a.$0()}, +dU(a,b){var s=new A.v($.p,b.j("v<0>")),r=new A.b2(s,b.j("b2<0>")) +a.then(A.ay(new A.dV(r),1),A.ay(new A.dW(r),1)) +return s}, +dV:function dV(a){this.a=a}, +dW:function dW(a){this.a=a}, +cB:function cB(a){this.a=a}, +m:function m(a,b){this.a=a +this.b=b}, +hn(a){var s,r,q,p,o,n,m,l,k="enclosedBy" +if(a.k(0,k)!=null){s=t.a.a(a.k(0,k)) +r=new A.cl(A.ek(s.k(0,"name")),B.m[A.ei(s.k(0,"kind"))],A.ek(s.k(0,"href")))}else r=null +q=a.k(0,"name") +p=a.k(0,"qualifiedName") +o=A.ej(a.k(0,"packageRank")) +if(o==null)o=0 +n=a.k(0,"href") +m=B.m[A.ei(a.k(0,"kind"))] +l=A.ej(a.k(0,"overriddenDepth")) +if(l==null)l=0 +return new A.w(q,p,o,m,n,l,a.k(0,"desc"),r)}, +B:function B(a,b){this.a=a +this.b=b}, +cq:function cq(a){this.a=a}, +ct:function ct(a,b){this.a=a +this.b=b}, +cr:function cr(){}, +cs:function cs(){}, +w:function w(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +cl:function cl(a,b,c){this.a=a +this.b=b +this.c=c}, +js(){var s=v.G,r=s.document.getElementById("search-box"),q=s.document.getElementById("search-body"),p=s.document.getElementById("search-sidebar") +A.dU(s.window.fetch($.bo()+"index.json"),t.m).aX(new A.dO(new A.dP(r,q,p),r,q,p),t.P)}, +ea(a){var s=A.k([],t.O),r=A.k([],t.M) +return new A.dc(a,A.bX(v.G.window.location.href,0,null),s,r)}, +iD(a,b){var s,r,q,p,o,n,m,l=v.G,k=l.document.createElement("div"),j=b.e +if(j==null)j="" +k.setAttribute("data-href",j) +k.classList.add("tt-suggestion") +s=l.document.createElement("span") +s.classList.add("tt-suggestion-title") +s.innerHTML=A.el(b.a+" "+b.d.h(0).toLowerCase(),a) +k.appendChild(s) +r=b.w +j=r!=null +if(j){s=l.document.createElement("span") +s.classList.add("tt-suggestion-container") +s.innerHTML="(in "+A.el(r.a,a)+")" +k.appendChild(s)}q=b.r +if(q!=null&&q.length!==0){s=l.document.createElement("blockquote") +s.classList.add("one-line-description") +p=l.document.createElement("textarea") +p.innerHTML=q +s.setAttribute("title",p.value) +s.innerHTML=A.el(q,a) +k.appendChild(s)}k.addEventListener("mousedown",A.a4(new A.dz())) +k.addEventListener("click",A.a4(new A.dA(b))) +if(j){j=r.a +o=r.b.h(0) +n=r.c +s=l.document.createElement("div") +s.classList.add("tt-container") +p=l.document.createElement("p") +p.textContent="Results from " +p.classList.add("tt-container-text") +m=l.document.createElement("a") +m.setAttribute("href",n) +m.innerHTML=j+" "+o +p.appendChild(m) +s.appendChild(p) +A.j2(s,k)}return k}, +j2(a,b){var s,r=a.innerHTML +if(r.length===0)return +s=$.a3.k(0,r) +if(s!=null)s.appendChild(b) +else{a.appendChild(b) +$.a3.A(0,r,a)}}, +el(a,b){return A.jH(a,A.eT(b,!1),new A.dB(),null)}, +dC:function dC(){}, +dP:function dP(a,b,c){this.a=a +this.b=b +this.c=c}, +dO:function dO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +dc:function dc(a,b,c,d){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=$ +_.f=null +_.r="" +_.w=c +_.x=d +_.y=-1}, +dd:function dd(a){this.a=a}, +de:function de(a,b){this.a=a +this.b=b}, +df:function df(a,b){this.a=a +this.b=b}, +dg:function dg(a,b){this.a=a +this.b=b}, +dh:function dh(a,b){this.a=a +this.b=b}, +dz:function dz(){}, +dA:function dA(a){this.a=a}, +dB:function dB(){}, +iL(){var s=v.G,r=s.document.getElementById("sidenav-left-toggle"),q=s.document.querySelector(".sidebar-offcanvas-left"),p=s.document.getElementById("overlay-under-drawer"),o=A.a4(new A.dD(q,p)) +if(p!=null)p.addEventListener("click",o) +if(r!=null)r.addEventListener("click",o)}, +iK(){var s,r,q,p,o=v.G,n=o.document.body +if(n==null)return +s=n.getAttribute("data-using-base-href") +if(s==null)return +if(s!=="true"){r=n.getAttribute("data-base-href") +if(r==null)return +q=r}else q="" +p=o.document.getElementById("dartdoc-main-content") +if(p==null)return +A.fx(q,p.getAttribute("data-above-sidebar"),o.document.getElementById("dartdoc-sidebar-left-content")) +A.fx(q,p.getAttribute("data-below-sidebar"),o.document.getElementById("dartdoc-sidebar-right"))}, +fx(a,b,c){if(b==null||b.length===0||c==null)return +A.dU(v.G.window.fetch(a+b),t.m).aX(new A.dE(c,a),t.P)}, +fE(a,b){var s,r,q,p,o,n=A.hu(b,"HTMLAnchorElement") +if(n){n=b.attributes.getNamedItem("href") +s=n==null?null:n.value +if(s==null)return +r=A.hO(s) +if(r!=null&&!r.gaS())b.href=a+s}q=b.childNodes +for(p=0;p").C(b).j("M<1,2>"))}, +X(a){a.$flags&1&&A.aC(a,"clear","clear") +a.length=0}, +aT(a,b){var s,r=A.eO(a.length,"",!1,t.N) +for(s=0;ss)throw A.b(A.E(b,0,s,"start",null)) +if(cs)throw A.b(A.E(c,b,s,"end",null)) +if(b===c)return A.k([],A.a2(a)) +return A.k(a.slice(b,c),A.a2(a))}, +gZ(a){var s=a.length +if(s>0)return a[s-1] +throw A.b(A.hr())}, +b5(a,b){var s,r,q,p,o +a.$flags&2&&A.aC(a,"sort") +s=a.length +if(s<2)return +if(b==null)b=J.iR() +if(s===2){r=a[0] +q=a[1] +if(b.$2(r,q)>0){a[0]=q +a[1]=r}return}p=0 +if(A.a2(a).c.b(null))for(o=0;o0)this.bl(a,p)}, +bl(a,b){var s,r=a.length +for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b +if(b===0)break}}, +h(a){return A.e0(a,"[","]")}, +gv(a){return new J.V(a,a.length,A.a2(a).j("V<1>"))}, +gp(a){return A.bQ(a)}, +gl(a){return a.length}, +k(a,b){if(!(b>=0&&b=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.aN.prototype={ +aG(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.gaj(b) +if(this.gaj(a)===s)return 0 +if(this.gaj(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +gaj(a){return a===0?1/a<0:a<0}, +h(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gp(a){var s,r,q,p,o=a|0 +if(a===o)return o&536870911 +s=Math.abs(a) +r=Math.log(s)/0.6931471805599453|0 +q=Math.pow(2,r) +p=s<1?s/q:q/s +return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, +a0(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +return s+b}, +bo(a,b){return(a|0)===a?a/b|0:this.bp(a,b)}, +bp(a,b){var s=a/b +if(s>=-2147483648&&s<=2147483647)return s|0 +if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) +throw A.b(A.cJ("Result of truncating division is "+A.i(s)+": "+A.i(a)+" ~/ "+b))}, +aa(a,b){var s +if(a>0)s=this.aC(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +bn(a,b){if(0>b)throw A.b(A.jf(b)) +return this.aC(a,b)}, +aC(a,b){return b>31?0:a>>>b}, +gq(a){return A.af(t.H)}, +$iq:1} +J.aL.prototype={ +gq(a){return A.af(t.S)}, +$ih:1, +$ia:1} +J.bA.prototype={ +gq(a){return A.af(t.i)}, +$ih:1} +J.a8.prototype={ +I(a,b,c,d){var s=A.bR(b,c,a.length) +return a.substring(0,b)+d+a.substring(s)}, +u(a,b,c){var s +if(c<0||c>a.length)throw A.b(A.E(c,0,a.length,null,null)) +s=c+b.length +if(s>a.length)return!1 +return b===a.substring(c,s)}, +t(a,b){return this.u(a,b,0)}, +i(a,b,c){return a.substring(b,A.bR(b,c,a.length))}, +K(a,b){return this.i(a,b,null)}, +b2(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.b(B.x) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +Y(a,b,c){var s +if(c<0||c>a.length)throw A.b(A.E(c,0,a.length,null,null)) +s=a.indexOf(b,c) +return s}, +aP(a,b){return this.Y(a,b,0)}, +N(a,b){return A.jG(a,b,0)}, +aG(a,b){var s +if(a===b)s=0 +else s=a>6}r=r+((r&67108863)<<3)&536870911 +r^=r>>11 +return r+((r&16383)<<15)&536870911}, +gq(a){return A.af(t.N)}, +gl(a){return a.length}, +$ih:1, +$id:1} +A.a0.prototype={ +gv(a){return new A.br(J.aD(this.gM()),A.S(this).j("br<1,2>"))}, +gl(a){return J.cg(this.gM())}, +D(a,b){return A.S(this).y[1].a(J.eC(this.gM(),b))}, +h(a){return J.ak(this.gM())}} +A.br.prototype={ +m(){return this.a.m()}, +gn(){return this.$ti.y[1].a(this.a.gn())}} +A.a6.prototype={ +gM(){return this.a}} +A.b4.prototype={$ic:1} +A.b3.prototype={ +k(a,b){return this.$ti.y[1].a(J.h5(this.a,b))}, +$ic:1, +$if:1} +A.M.prototype={ +W(a,b){return new A.M(this.a,this.$ti.j("@<1>").C(b).j("M<1,2>"))}, +gM(){return this.a}} +A.bC.prototype={ +h(a){return"LateInitializationError: "+this.a}} +A.bs.prototype={ +gl(a){return this.a.length}, +k(a,b){return this.a.charCodeAt(b)}} +A.cE.prototype={} +A.c.prototype={} +A.I.prototype={ +gv(a){var s=this +return new A.am(s,s.gl(s),A.S(s).j("am"))}} +A.am.prototype={ +gn(){var s=this.d +return s==null?this.$ti.c.a(s):s}, +m(){var s,r=this,q=r.a,p=J.cf(q),o=p.gl(q) +if(r.b!==o)throw A.b(A.al(q)) +s=r.c +if(s>=o){r.d=null +return!1}r.d=p.D(q,s);++r.c +return!0}} +A.ab.prototype={ +gl(a){return J.cg(this.a)}, +D(a,b){return this.b.$1(J.eC(this.a,b))}} +A.aK.prototype={} +A.bV.prototype={} +A.aq.prototype={} +A.bj.prototype={} +A.c8.prototype={$r:"+item,matchPosition(1,2)",$s:1} +A.aF.prototype={ +h(a){return A.e4(this)}, +A(a,b,c){A.hi()}, +$iz:1} +A.aH.prototype={ +gl(a){return this.b.length}, +gbi(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +O(a){if("__proto__"===a)return!1 +return this.a.hasOwnProperty(a)}, +k(a,b){if(!this.O(b))return null +return this.b[this.a[b]]}, +F(a,b){var s,r,q=this.gbi(),p=this.b +for(s=q.length,r=0;r=s.b){s.d=null +return!1}s.d=s.a[r] +s.c=r+1 +return!0}} +A.aG.prototype={} +A.aI.prototype={ +gl(a){return this.b}, +gv(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.c5(s,s.length,r.$ti.j("c5<1>"))}, +N(a,b){if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}} +A.cH.prototype={ +B(a){var s,r,q=this,p=new RegExp(q.a).exec(a) +if(p==null)return null +s=Object.create(null) +r=q.b +if(r!==-1)s.arguments=p[r+1] +r=q.c +if(r!==-1)s.argumentsExpr=p[r+1] +r=q.d +if(r!==-1)s.expr=p[r+1] +r=q.e +if(r!==-1)s.method=p[r+1] +r=q.f +if(r!==-1)s.receiver=p[r+1] +return s}} +A.aY.prototype={ +h(a){return"Null check operator used on a null value"}} +A.bB.prototype={ +h(a){var s,r=this,q="NoSuchMethodError: method not found: '",p=r.b +if(p==null)return"NoSuchMethodError: "+r.a +s=r.c +if(s==null)return q+p+"' ("+r.a+")" +return q+p+"' on '"+s+"' ("+r.a+")"}} +A.bU.prototype={ +h(a){var s=this.a +return s.length===0?"Error":"Error: "+s}} +A.cC.prototype={ +h(a){return"Throw of null ('"+(this.a===null?"null":"undefined")+"' from JavaScript)"}} +A.aJ.prototype={} +A.ba.prototype={ +h(a){var s,r=this.b +if(r!=null)return r +r=this.a +s=r!==null&&typeof r==="object"?r.stack:null +return this.b=s==null?"":s}, +$iZ:1} +A.a7.prototype={ +h(a){var s=this.constructor,r=s==null?null:s.name +return"Closure '"+A.fP(r==null?"unknown":r)+"'"}, +gbN(){return this}, +$C:"$1", +$R:1, +$D:null} +A.cj.prototype={$C:"$0",$R:0} +A.ck.prototype={$C:"$2",$R:2} +A.cG.prototype={} +A.cF.prototype={ +h(a){var s=this.$static_name +if(s==null)return"Closure of unknown static method" +return"Closure '"+A.fP(s)+"'"}} +A.aE.prototype={ +E(a,b){if(b==null)return!1 +if(this===b)return!0 +if(!(b instanceof A.aE))return!1 +return this.$_target===b.$_target&&this.a===b.a}, +gp(a){return(A.fM(this.a)^A.bQ(this.$_target))>>>0}, +h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.cD(this.a)+"'")}} +A.bS.prototype={ +h(a){return"RuntimeError: "+this.a}} +A.a9.prototype={ +gl(a){return this.a}, +gP(){return new A.aa(this,A.S(this).j("aa<1>"))}, +O(a){var s=this.b +if(s==null)return!1 +return s[a]!=null}, +k(a,b){var s,r,q,p,o=null +if(typeof b=="string"){s=this.b +if(s==null)return o +r=s[b] +q=r==null?o:r.b +return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c +if(p==null)return o +r=p[b] +q=r==null?o:r.b +return q}else return this.bC(b)}, +bC(a){var s,r,q=this.d +if(q==null)return null +s=q[this.aQ(a)] +r=this.aR(s,a) +if(r<0)return null +return s[r].b}, +A(a,b,c){var s,r,q,p,o,n,m=this +if(typeof b=="string"){s=m.b +m.ap(s==null?m.b=m.a8():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=m.c +m.ap(r==null?m.c=m.a8():r,b,c)}else{q=m.d +if(q==null)q=m.d=m.a8() +p=m.aQ(b) +o=q[p] +if(o==null)q[p]=[m.a9(b,c)] +else{n=m.aR(o,b) +if(n>=0)o[n].b=c +else o.push(m.a9(b,c))}}}, +X(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.az()}}, +F(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$2(r.a,r.b) +if(q!==s.r)throw A.b(A.al(s)) +r=r.c}}, +ap(a,b,c){var s=a[b] +if(s==null)a[b]=this.a9(b,c) +else s.b=c}, +az(){this.r=this.r+1&1073741823}, +a9(a,b){var s=this,r=new A.cy(a,b) +if(s.e==null)s.e=s.f=r +else s.f=s.f.c=r;++s.a +s.az() +return r}, +aQ(a){return J.T(a)&1073741823}, +aR(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.cy.prototype={} +A.aa.prototype={ +gl(a){return this.a.a}, +gv(a){var s=this.a +return new A.bD(s,s.r,s.e)}} +A.bD.prototype={ +gn(){return this.d}, +m(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.b(A.al(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.aS.prototype={ +gl(a){return this.a.a}, +gv(a){var s=this.a +return new A.aR(s,s.r,s.e)}} +A.aR.prototype={ +gn(){return this.d}, +m(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.b(A.al(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.b +r.c=s.c +return!0}}} +A.dK.prototype={ +$1(a){return this.a(a)}, +$S:9} +A.dL.prototype={ +$2(a,b){return this.a(a,b)}, +$S:10} +A.dM.prototype={ +$1(a){return this.a(a)}, +$S:11} +A.b9.prototype={ +h(a){return this.aE(!1)}, +aE(a){var s,r,q,p,o,n=this.bg(),m=this.aw(),l=(a?""+"Record ":"")+"(" +for(s=n.length,r="",q=0;q0;){--q;--s +k[q]=r[s]}}k=A.hz(k,!1,t.K) +k.$flags=3 +return k}} +A.c7.prototype={ +aw(){return[this.a,this.b]}, +E(a,b){if(b==null)return!1 +return b instanceof A.c7&&this.$s===b.$s&&J.F(this.a,b.a)&&J.F(this.b,b.b)}, +gp(a){return A.hC(this.$s,this.a,this.b,B.h)}} +A.cu.prototype={ +h(a){return"RegExp/"+this.a+"/"+this.b.flags}, +gbj(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.eK(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"g")}, +bf(a,b){var s,r=this.gbj() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.c6(s)}} +A.c6.prototype={ +gbw(){var s=this.b +return s.index+s[0].length}, +k(a,b){return this.b[b]}, +$icA:1, +$ie6:1} +A.cS.prototype={ +gn(){var s=this.d +return s==null?t.F.a(s):s}, +m(){var s,r,q,p,o,n,m=this,l=m.b +if(l==null)return!1 +s=m.c +r=l.length +if(s<=r){q=m.a +p=q.bf(l,s) +if(p!=null){m.d=p +o=p.gbw() +if(p.b.index===o){s=!1 +if(q.b.unicode){q=m.c +n=q+1 +if(n=55296&&r<=56319){s=l.charCodeAt(n) +s=s>=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o +return!0}}m.b=m.d=null +return!1}} +A.bE.prototype={ +gq(a){return B.a3}, +$ih:1} +A.aW.prototype={} +A.bF.prototype={ +gq(a){return B.a4}, +$ih:1} +A.an.prototype={ +gl(a){return a.length}, +$iC:1} +A.aU.prototype={ +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ic:1, +$if:1} +A.aV.prototype={$ic:1,$if:1} +A.bG.prototype={ +gq(a){return B.a5}, +$ih:1} +A.bH.prototype={ +gq(a){return B.a6}, +$ih:1} +A.bI.prototype={ +gq(a){return B.a7}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.bJ.prototype={ +gq(a){return B.a8}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.bK.prototype={ +gq(a){return B.a9}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.bL.prototype={ +gq(a){return B.ab}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.bM.prototype={ +gq(a){return B.ac}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.aX.prototype={ +gq(a){return B.ad}, +gl(a){return a.length}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.bN.prototype={ +gq(a){return B.ae}, +gl(a){return a.length}, +k(a,b){A.ad(b,a,a.length) +return a[b]}, +$ih:1} +A.b5.prototype={} +A.b6.prototype={} +A.b7.prototype={} +A.b8.prototype={} +A.J.prototype={ +j(a){return A.bf(v.typeUniverse,this,a)}, +C(a){return A.fc(v.typeUniverse,this,a)}} +A.c2.prototype={} +A.dk.prototype={ +h(a){return A.D(this.a,null)}} +A.c1.prototype={ +h(a){return this.a}} +A.bb.prototype={$iP:1} +A.cU.prototype={ +$1(a){var s=this.a,r=s.a +s.a=null +r.$0()}, +$S:4} +A.cT.prototype={ +$1(a){var s,r +this.a.a=a +s=this.b +r=this.c +s.firstChild?s.removeChild(r):s.appendChild(r)}, +$S:12} +A.cV.prototype={ +$0(){this.a.$0()}, +$S:5} +A.cW.prototype={ +$0(){this.a.$0()}, +$S:5} +A.di.prototype={ +b8(a,b){if(self.setTimeout!=null)self.setTimeout(A.ay(new A.dj(this,b),0),a) +else throw A.b(A.cJ("`setTimeout()` not found."))}} +A.dj.prototype={ +$0(){this.b.$0()}, +$S:0} +A.bY.prototype={ +ac(a){var s,r=this +if(a==null)a=r.$ti.c.a(a) +if(!r.b)r.a.aq(a) +else{s=r.a +if(r.$ti.j("W<1>").b(a))s.ar(a) +else s.au(a)}}, +ad(a,b){var s=this.a +if(this.b)s.a4(new A.H(a,b)) +else s.a3(new A.H(a,b))}} +A.dw.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:2} +A.dx.prototype={ +$2(a,b){this.a.$2(1,new A.aJ(a,b))}, +$S:13} +A.dH.prototype={ +$2(a,b){this.a(a,b)}, +$S:14} +A.H.prototype={ +h(a){return A.i(this.a)}, +$il:1, +gJ(){return this.b}} +A.c_.prototype={ +ad(a,b){var s=this.a +if((s.a&30)!==0)throw A.b(A.eV("Future already completed")) +s.a3(A.iQ(a,b))}, +aH(a){return this.ad(a,null)}} +A.b2.prototype={ +ac(a){var s=this.a +if((s.a&30)!==0)throw A.b(A.eV("Future already completed")) +s.aq(a)}} +A.as.prototype={ +bD(a){if((this.c&15)!==6)return!0 +return this.b.b.an(this.d,a.a)}, +bz(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.Q.b(r))q=o.bI(r,p,a.b) +else q=o.an(r,p) +try{p=q +return p}catch(s){if(t._.b(A.aj(s))){if((this.c&1)!==0)throw A.b(A.U("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.b(A.U("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.v.prototype={ +ao(a,b,c){var s,r,q=$.p +if(q===B.d){if(b!=null&&!t.Q.b(b)&&!t.v.b(b))throw A.b(A.eD(b,"onError",u.c))}else if(b!=null)b=A.j6(b,q) +s=new A.v(q,c.j("v<0>")) +r=b==null?1:3 +this.a2(new A.as(s,r,a,b,this.$ti.j("@<1>").C(c).j("as<1,2>"))) +return s}, +aX(a,b){a.toString +return this.ao(a,null,b)}, +aD(a,b,c){var s=new A.v($.p,c.j("v<0>")) +this.a2(new A.as(s,19,a,b,this.$ti.j("@<1>").C(c).j("as<1,2>"))) +return s}, +bm(a){this.a=this.a&1|16 +this.c=a}, +S(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +a2(a){var s=this,r=s.a +if(r<=3){a.a=s.c +s.c=a}else{if((r&4)!==0){r=s.c +if((r.a&24)===0){r.a2(a) +return}s.S(r)}A.cd(null,null,s.b,new A.cZ(s,a))}}, +aA(a){var s,r,q,p,o,n=this,m={} +m.a=a +if(a==null)return +s=n.a +if(s<=3){r=n.c +n.c=a +if(r!=null){q=a.a +for(p=a;q!=null;p=q,q=o)o=q.a +p.a=r}}else{if((s&4)!==0){s=n.c +if((s.a&24)===0){s.aA(a) +return}n.S(s)}m.a=n.U(a) +A.cd(null,null,n.b,new A.d2(m,n))}}, +T(){var s=this.c +this.c=null +return this.U(s)}, +U(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +au(a){var s=this,r=s.T() +s.a=8 +s.c=a +A.at(s,r)}, +ba(a){var s,r,q=this +if((a.a&16)!==0){s=q.b===a.b +s=!(s||s)}else s=!1 +if(s)return +r=q.T() +q.S(a) +A.at(q,r)}, +a4(a){var s=this.T() +this.bm(a) +A.at(this,s)}, +aq(a){if(this.$ti.j("W<1>").b(a)){this.ar(a) +return}this.b9(a)}, +b9(a){this.a^=2 +A.cd(null,null,this.b,new A.d0(this,a))}, +ar(a){A.e9(a,this,!1) +return}, +a3(a){this.a^=2 +A.cd(null,null,this.b,new A.d_(this,a))}, +$iW:1} +A.cZ.prototype={ +$0(){A.at(this.a,this.b)}, +$S:0} +A.d2.prototype={ +$0(){A.at(this.b,this.a.a)}, +$S:0} +A.d1.prototype={ +$0(){A.e9(this.a.a,this.b,!0)}, +$S:0} +A.d0.prototype={ +$0(){this.a.au(this.b)}, +$S:0} +A.d_.prototype={ +$0(){this.a.a4(this.b)}, +$S:0} +A.d5.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=null +try{q=k.a.a +j=q.b.b.bG(q.d)}catch(p){s=A.aj(p) +r=A.az(p) +if(k.c&&k.b.a.c.a===s){q=k.a +q.c=k.b.a.c}else{q=s +o=r +if(o==null)o=A.dZ(q) +n=k.a +n.c=new A.H(q,o) +q=n}q.b=!0 +return}if(j instanceof A.v&&(j.a&24)!==0){if((j.a&16)!==0){q=k.a +q.c=j.c +q.b=!0}return}if(j instanceof A.v){m=k.b.a +l=new A.v(m.b,m.$ti) +j.ao(new A.d6(l,m),new A.d7(l),t.q) +q=k.a +q.c=l +q.b=!1}}, +$S:0} +A.d6.prototype={ +$1(a){this.a.ba(this.b)}, +$S:4} +A.d7.prototype={ +$2(a,b){this.a.a4(new A.H(a,b))}, +$S:15} +A.d4.prototype={ +$0(){var s,r,q,p,o,n +try{q=this.a +p=q.a +q.c=p.b.b.an(p.d,this.b)}catch(o){s=A.aj(o) +r=A.az(o) +q=s +p=r +if(p==null)p=A.dZ(q) +n=this.a +n.c=new A.H(q,p) +n.b=!0}}, +$S:0} +A.d3.prototype={ +$0(){var s,r,q,p,o,n,m,l=this +try{s=l.a.a.c +p=l.b +if(p.a.bD(s)&&p.a.e!=null){p.c=p.a.bz(s) +p.b=!1}}catch(o){r=A.aj(o) +q=A.az(o) +p=l.a.a.c +if(p.a===r){n=l.b +n.c=p +p=n}else{p=r +n=q +if(n==null)n=A.dZ(p) +m=l.b +m.c=new A.H(p,n) +p=m}p.b=!0}}, +$S:0} +A.bZ.prototype={} +A.ca.prototype={} +A.dv.prototype={} +A.dF.prototype={ +$0(){A.hk(this.a,this.b)}, +$S:0} +A.da.prototype={ +bK(a){var s,r,q +try{if(B.d===$.p){a.$0() +return}A.fz(null,null,this,a)}catch(q){s=A.aj(q) +r=A.az(q) +A.ep(s,r)}}, +bs(a){return new A.db(this,a)}, +bH(a){if($.p===B.d)return a.$0() +return A.fz(null,null,this,a)}, +bG(a){a.toString +return this.bH(a,t.z)}, +bL(a,b){if($.p===B.d)return a.$1(b) +return A.j8(null,null,this,a,b)}, +an(a,b){var s=t.z +a.toString +return this.bL(a,b,s,s)}, +bJ(a,b,c){if($.p===B.d)return a.$2(b,c) +return A.j7(null,null,this,a,b,c)}, +bI(a,b,c){var s=t.z +a.toString +return this.bJ(a,b,c,s,s,s)}, +bF(a){return a}, +aW(a){var s=t.z +a.toString +return this.bF(a,s,s,s)}} +A.db.prototype={ +$0(){return this.a.bK(this.b)}, +$S:0} +A.e.prototype={ +gv(a){return new A.am(a,this.gl(a),A.aA(a).j("am"))}, +D(a,b){return this.k(a,b)}, +W(a,b){return new A.M(a,A.aA(a).j("@").C(b).j("M<1,2>"))}, +h(a){return A.e0(a,"[","]")}, +$ic:1, +$if:1} +A.N.prototype={ +F(a,b){var s,r,q,p +for(s=this.gP(),s=s.gv(s),r=A.S(this).j("N.V");s.m();){q=s.gn() +p=this.k(0,q) +b.$2(q,p==null?r.a(p):p)}}, +gl(a){var s=this.gP() +return s.gl(s)}, +h(a){return A.e4(this)}, +$iz:1} +A.cz.prototype={ +$2(a,b){var s,r=this.a +if(!r.a)this.b.a+=", " +r.a=!1 +r=this.b +s=A.i(a) +r.a=(r.a+=s)+": " +s=A.i(b) +r.a+=s}, +$S:16} +A.cc.prototype={ +A(a,b,c){throw A.b(A.cJ("Cannot modify unmodifiable map"))}} +A.aT.prototype={ +k(a,b){return this.a.k(0,b)}, +A(a,b,c){this.a.A(0,b,c)}, +gl(a){var s=this.a +return s.gl(s)}, +h(a){return this.a.h(0)}, +$iz:1} +A.ar.prototype={} +A.ao.prototype={ +h(a){return A.e0(this,"{","}")}, +D(a,b){var s,r +A.e5(b,"index") +s=this.gv(this) +for(r=b;s.m();){if(r===0)return s.gn();--r}throw A.b(A.e_(b,b-r,this,"index"))}, +$ic:1} +A.bg.prototype={} +A.c3.prototype={ +k(a,b){var s,r=this.b +if(r==null)return this.c.k(0,b) +else if(typeof b!="string")return null +else{s=r[b] +return typeof s=="undefined"?this.bk(b):s}}, +gl(a){return this.b==null?this.c.a:this.L().length}, +gP(){if(this.b==null){var s=this.c +return new A.aa(s,A.S(s).j("aa<1>"))}return new A.c4(this)}, +A(a,b,c){var s,r,q=this +if(q.b==null)q.c.A(0,b,c) +else if(q.O(b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.bq().A(0,b,c)}, +O(a){if(this.b==null)return this.c.O(a) +return Object.prototype.hasOwnProperty.call(this.a,a)}, +F(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.F(0,b) +s=o.L() +for(r=0;r"))}return s}} +A.ds.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:6} +A.dr.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:6} +A.ch.prototype={ +bE(a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a="Invalid base64 encoding length " +a2=A.bR(a1,a2,a0.length) +s=$.h_() +for(r=a1,q=r,p=null,o=-1,n=-1,m=0;r=0){g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(f) +if(g===k)continue +k=g}else{if(f===-1){if(o<0){e=p==null?null:p.a.length +if(e==null)e=0 +o=e+(r-q) +n=r}++m +if(k===61)continue}k=g}if(f!==-2){if(p==null){p=new A.A("") +e=p}else e=p +e.a+=B.a.i(a0,q,r) +d=A.O(k) +e.a+=d +q=l +continue}}throw A.b(A.y("Invalid base64 data",a0,r))}if(p!=null){e=B.a.i(a0,q,a2) +e=p.a+=e +d=e.length +if(o>=0)A.eE(a0,n,a2,o,m,d) +else{c=B.c.a0(d-1,4)+1 +if(c===1)throw A.b(A.y(a,a0,a2)) +for(;c<4;){e+="=" +p.a=e;++c}}e=p.a +return B.a.I(a0,a1,a2,e.charCodeAt(0)==0?e:e)}b=a2-a1 +if(o>=0)A.eE(a0,n,a2,o,m,b) +else{c=B.c.a0(b,4) +if(c===1)throw A.b(A.y(a,a0,a2)) +if(c>1)a0=B.a.I(a0,a2,a2,c===2?"==":"=")}return a0}} +A.ci.prototype={} +A.bt.prototype={} +A.bv.prototype={} +A.cm.prototype={} +A.cp.prototype={ +h(a){return"unknown"}} +A.co.prototype={ +H(a){var s=this.bd(a,0,a.length) +return s==null?a:s}, +bd(a,b,c){var s,r,q,p +for(s=b,r=null;s":q=">" +break +case"/":q="/" +break +default:q=null}if(q!=null){if(r==null)r=new A.A("") +if(s>b)r.a+=B.a.i(a,b,s) +r.a+=q +b=s+1}}if(r==null)return null +if(c>b){p=B.a.i(a,b,c) +r.a+=p}p=r.a +return p.charCodeAt(0)==0?p:p}} +A.cw.prototype={ +bt(a,b){var s=A.j4(a,this.gbv().a) +return s}, +gbv(){return B.C}} +A.cx.prototype={} +A.cP.prototype={} +A.cR.prototype={ +H(a){var s,r,q,p=A.bR(0,null,a.length) +if(p===0)return new Uint8Array(0) +s=p*3 +r=new Uint8Array(s) +q=new A.dt(r) +if(q.bh(a,0,p)!==p)q.ab() +return new Uint8Array(r.subarray(0,A.iC(0,q.b,s)))}} +A.dt.prototype={ +ab(){var s=this,r=s.c,q=s.b,p=s.b=q+1 +r.$flags&2&&A.aC(r) +r[q]=239 +q=s.b=p+1 +r[p]=191 +s.b=q+1 +r[q]=189}, +br(a,b){var s,r,q,p,o=this +if((b&64512)===56320){s=65536+((a&1023)<<10)|b&1023 +r=o.c +q=o.b +p=o.b=q+1 +r.$flags&2&&A.aC(r) +r[q]=s>>>18|240 +q=o.b=p+1 +r[p]=s>>>12&63|128 +p=o.b=q+1 +r[q]=s>>>6&63|128 +o.b=p+1 +r[p]=s&63|128 +return!0}else{o.ab() +return!1}}, +bh(a,b,c){var s,r,q,p,o,n,m,l,k=this +if(b!==c&&(a.charCodeAt(c-1)&64512)===55296)--c +for(s=k.c,r=s.$flags|0,q=s.length,p=b;p=q)break +k.b=n+1 +r&2&&A.aC(s) +s[n]=o}else{n=o&64512 +if(n===55296){if(k.b+4>q)break +m=p+1 +if(k.br(o,a.charCodeAt(m)))p=m}else if(n===56320){if(k.b+3>q)break +k.ab()}else if(o<=2047){n=k.b +l=n+1 +if(l>=q)break +k.b=l +r&2&&A.aC(s) +s[n]=o>>>6|192 +k.b=l+1 +s[l]=o&63|128}else{n=k.b +if(n+2>=q)break +l=k.b=n+1 +r&2&&A.aC(s) +s[n]=o>>>12|224 +n=k.b=l+1 +s[l]=o>>>6&63|128 +k.b=n+1 +s[n]=o&63|128}}}return p}} +A.cQ.prototype={ +H(a){return new A.dq(this.a).be(a,0,null,!0)}} +A.dq.prototype={ +be(a,b,c,d){var s,r,q,p,o,n,m=this,l=A.bR(b,c,J.cg(a)) +if(b===l)return"" +if(a instanceof Uint8Array){s=a +r=s +q=0}else{r=A.iq(a,b,l) +l-=b +q=b +b=0}if(l-b>=15){p=m.a +o=A.ip(p,r,b,l) +if(o!=null){if(!p)return o +if(o.indexOf("\ufffd")<0)return o}}o=m.a5(r,b,l,!0) +p=m.b +if((p&1)!==0){n=A.ir(p) +m.b=0 +throw A.b(A.y(n,a,q+m.c))}return o}, +a5(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.c.bo(b+c,2) +r=q.a5(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.a5(a,s,c,d)}return q.bu(a,b,c,d)}, +bu(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=65533,j=l.b,i=l.c,h=new A.A(""),g=b+1,f=a[b] +$label0$0:for(s=l.a;!0;){for(;!0;g=p){r="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE".charCodeAt(f)&31 +i=j<=32?f&61694>>>r:(f&63|i<<6)>>>0 +j=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA".charCodeAt(j+r) +if(j===0){q=A.O(i) +h.a+=q +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:q=A.O(k) +h.a+=q +break +case 65:q=A.O(k) +h.a+=q;--g +break +default:q=A.O(k) +h.a=(h.a+=q)+A.O(k) +break}else{l.b=j +l.c=g-1 +return""}j=0}if(g===c)break $label0$0 +p=g+1 +f=a[g]}p=g+1 +f=a[g] +if(f<128){while(!0){if(!(p=128){o=n-1 +p=n +break}p=n}if(o-g<20)for(m=g;m32)if(s){s=A.O(k) +h.a+=s}else{l.b=77 +l.c=c +return""}l.b=j +l.c=i +s=h.a +return s.charCodeAt(0)==0?s:s}} +A.dp.prototype={ +$2(a,b){var s,r +if(typeof b=="string")this.a.set(a,b) +else if(b==null)this.a.set(a,"") +else for(s=J.aD(b),r=this.a;s.m();){b=s.gn() +if(typeof b=="string")r.append(a,b) +else if(b==null)r.append(a,"") +else A.fn(b)}}, +$S:7} +A.cX.prototype={ +h(a){return this.av()}} +A.l.prototype={ +gJ(){return A.hD(this)}} +A.bp.prototype={ +h(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.cn(s) +return"Assertion failed"}} +A.P.prototype={} +A.G.prototype={ +ga7(){return"Invalid argument"+(!this.a?"(s)":"")}, +ga6(){return""}, +h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.ga7()+q+o +if(!s.a)return n +return n+s.ga6()+": "+A.cn(s.gai())}, +gai(){return this.b}} +A.aZ.prototype={ +gai(){return this.b}, +ga7(){return"RangeError"}, +ga6(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.i(q):"" +else if(q==null)s=": Not greater than or equal to "+A.i(r) +else if(q>r)s=": Not in inclusive range "+A.i(r)+".."+A.i(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.a.i(e,0,75)+"..." +return g+"\n"+e}for(r=1,q=0,p=!1,o=0;o1?g+(" (at line "+r+", character "+(f-q+1)+")\n"):g+(" (at character "+(f+1)+")\n") +m=e.length +for(o=f;o78){k="..." +if(f-q<75){j=q+75 +i=q}else{if(m-f<75){i=m-75 +j=m +k=""}else{i=f-36 +j=f+36}l="..."}}else{j=m +i=q +k=""}return g+l+B.a.i(e,i,j)+k+"\n"+B.a.b2(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.i(f)+")"):g}} +A.r.prototype={ +W(a,b){return A.hc(this,A.S(this).j("r.E"),b)}, +gl(a){var s,r=this.gv(this) +for(s=0;r.m();)++s +return s}, +D(a,b){var s,r +A.e5(b,"index") +s=this.gv(this) +for(r=b;s.m();){if(r===0)return s.gn();--r}throw A.b(A.e_(b,b-r,this,"index"))}, +h(a){return A.ht(this,"(",")")}} +A.t.prototype={ +gp(a){return A.j.prototype.gp.call(this,0)}, +h(a){return"null"}} +A.j.prototype={$ij:1, +E(a,b){return this===b}, +gp(a){return A.bQ(this)}, +h(a){return"Instance of '"+A.cD(this)+"'"}, +gq(a){return A.jq(this)}, +toString(){return this.h(this)}} +A.cb.prototype={ +h(a){return""}, +$iZ:1} +A.A.prototype={ +gl(a){return this.a.length}, +h(a){var s=this.a +return s.charCodeAt(0)==0?s:s}} +A.cO.prototype={ +$2(a,b){var s,r,q,p=B.a.aP(b,"=") +if(p===-1){if(b!=="")a.A(0,A.eh(b,0,b.length,this.a,!0),"")}else if(p!==0){s=B.a.i(b,0,p) +r=B.a.K(b,p+1) +q=this.a +a.A(0,A.eh(s,0,s.length,q,!0),A.eh(r,0,r.length,q,!0))}return a}, +$S:17} +A.cL.prototype={ +$2(a,b){throw A.b(A.y("Illegal IPv4 address, "+a,this.a,b))}, +$S:18} +A.cM.prototype={ +$2(a,b){throw A.b(A.y("Illegal IPv6 address, "+a,this.a,b))}, +$S:19} +A.cN.prototype={ +$2(a,b){var s +if(b-a>4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) +s=A.dR(B.a.i(this.b,a,b),16) +if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) +return s}, +$S:20} +A.bh.prototype={ +gV(){var s,r,q,p,o=this,n=o.w +if(n===$){s=o.a +r=s.length!==0?""+s+":":"" +q=o.c +p=q==null +if(!p||s==="file"){s=r+"//" +r=o.b +if(r.length!==0)s=s+r+"@" +if(!p)s+=q +r=o.d +if(r!=null)s=s+":"+A.i(r)}else s=r +s+=o.e +r=o.f +if(r!=null)s=s+"?"+r +r=o.r +if(r!=null)s=s+"#"+r +n!==$&&A.bn() +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +gp(a){var s,r=this,q=r.y +if(q===$){s=B.a.gp(r.gV()) +r.y!==$&&A.bn() +r.y=s +q=s}return q}, +gal(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.f1(s==null?"":s) +r.z!==$&&A.bn() +q=r.z=new A.ar(s,t.h)}return q}, +gb_(){return this.b}, +gag(){var s=this.c +if(s==null)return"" +if(B.a.t(s,"["))return B.a.i(s,1,s.length-1) +return s}, +ga_(){var s=this.d +return s==null?A.fd(this.a):s}, +gak(){var s=this.f +return s==null?"":s}, +gaJ(){var s=this.r +return s==null?"":s}, +am(a){var s,r,q,p,o=this,n=o.a,m=n==="file",l=o.b,k=o.d,j=o.c +if(!(j!=null))j=l.length!==0||k!=null||m?"":null +s=o.e +if(!m)r=j!=null&&s.length!==0 +else r=!0 +if(r&&!B.a.t(s,"/"))s="/"+s +q=s +p=A.ef(null,0,0,a) +return A.ed(n,l,j,k,q,p,o.r)}, +gaS(){if(this.a!==""){var s=this.r +s=(s==null?"":s)===""}else s=!1 +return s}, +gaL(){return this.c!=null}, +gaO(){return this.f!=null}, +gaM(){return this.r!=null}, +h(a){return this.gV()}, +E(a,b){var s,r,q,p=this +if(b==null)return!1 +if(p===b)return!0 +s=!1 +if(t.R.b(b))if(p.a===b.ga1())if(p.c!=null===b.gaL())if(p.b===b.gb_())if(p.gag()===b.gag())if(p.ga_()===b.ga_())if(p.e===b.gaV()){r=p.f +q=r==null +if(!q===b.gaO()){if(q)r="" +if(r===b.gak()){r=p.r +q=r==null +if(!q===b.gaM()){s=q?"":r +s=s===b.gaJ()}}}}return s}, +$ibW:1, +ga1(){return this.a}, +gaV(){return this.e}} +A.dn.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=A.fj(1,a,B.e,!0) +r=s.a+=r +if(b!=null&&b.length!==0){s.a=r+"=" +r=A.fj(1,b,B.e,!0) +s.a+=r}}, +$S:21} +A.dm.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.aD(b),r=this.a;s.m();)r.$2(a,s.gn())}, +$S:7} +A.cK.prototype={ +gaZ(){var s,r,q,p,o=this,n=null,m=o.c +if(m==null){m=o.a +s=o.b[0]+1 +r=B.a.Y(m,"?",s) +q=m.length +if(r>=0){p=A.bi(m,r+1,q,256,!1,!1) +q=r}else p=n +m=o.c=new A.c0("data","",n,n,A.bi(m,s,q,128,!1,!1),p,n)}return m}, +h(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.c9.prototype={ +gaL(){return this.c>0}, +gaN(){return this.c>0&&this.d+10&&this.r>=this.a.length}, +ga1(){var s=this.w +return s==null?this.w=this.bc():s}, +bc(){var s,r=this,q=r.b +if(q<=0)return"" +s=q===4 +if(s&&B.a.t(r.a,"http"))return"http" +if(q===5&&B.a.t(r.a,"https"))return"https" +if(s&&B.a.t(r.a,"file"))return"file" +if(q===7&&B.a.t(r.a,"package"))return"package" +return B.a.i(r.a,0,q)}, +gb_(){var s=this.c,r=this.b+3 +return s>r?B.a.i(this.a,r,s-1):""}, +gag(){var s=this.c +return s>0?B.a.i(this.a,s,this.d):""}, +ga_(){var s,r=this +if(r.gaN())return A.dR(B.a.i(r.a,r.d+1,r.e),null) +s=r.b +if(s===4&&B.a.t(r.a,"http"))return 80 +if(s===5&&B.a.t(r.a,"https"))return 443 +return 0}, +gaV(){return B.a.i(this.a,this.e,this.f)}, +gak(){var s=this.f,r=this.r +return s=this.r)return B.a_ +return new A.ar(A.f1(this.gak()),t.h)}, +am(a){var s,r,q,p,o,n=this,m=null,l=n.ga1(),k=l==="file",j=n.c,i=j>0?B.a.i(n.a,n.b+3,j):"",h=n.gaN()?n.ga_():m +j=n.c +if(j>0)s=B.a.i(n.a,j,n.d) +else s=i.length!==0||h!=null||k?"":m +j=n.a +r=B.a.i(j,n.e,n.f) +if(!k)q=s!=null&&r.length!==0 +else q=!0 +if(q&&!B.a.t(r,"/"))r="/"+r +p=A.ef(m,0,0,a) +q=n.r +o=q1,n="dart:"+s,m=0;m") +n=A.eN(new A.ab(o,A.jF(),n),n.j("I.E")) +m=new A.cq(n) +n=v.G +l=A.bX(J.ak(n.window.location),0,null).gal().k(0,"search") +if(l!=null){k=A.hs(m.aI(l)) +j=k==null?null:k.e +if(j!=null){n.window.location.assign($.bo()+j) +s=1 +break}}n=p.b +if(n!=null)A.ea(m).ah(n) +n=p.c +if(n!=null)A.ea(m).ah(n) +n=p.d +if(n!=null)A.ea(m).ah(n) +case 1:return A.fq(q,r)}}) +return A.fr($async$$1,r)}, +$S:8} +A.dc.prototype={ +gG(){var s,r=this,q=r.c +if(q===$){s=v.G.document.createElement("div") +s.setAttribute("role","listbox") +s.setAttribute("aria-expanded","false") +s.style.display="none" +s.classList.add("tt-menu") +s.appendChild(r.gaU()) +s.appendChild(r.gR()) +r.c!==$&&A.bn() +r.c=s +q=s}return q}, +gaU(){var s,r=this.d +if(r===$){s=v.G.document.createElement("div") +s.classList.add("enter-search-message") +this.d!==$&&A.bn() +this.d=s +r=s}return r}, +gR(){var s,r=this.e +if(r===$){s=v.G.document.createElement("div") +s.classList.add("tt-search-results") +this.e!==$&&A.bn() +this.e=s +r=s}return r}, +ah(a){var s,r,q,p=this +a.disabled=!1 +a.setAttribute("placeholder","Search API Docs") +s=v.G +s.document.addEventListener("keydown",A.a4(new A.dd(a))) +r=s.document.createElement("div") +r.classList.add("tt-wrapper") +a.replaceWith(r) +a.setAttribute("autocomplete","off") +a.setAttribute("spellcheck","false") +a.classList.add("tt-input") +r.appendChild(a) +r.appendChild(p.gG()) +p.b3(a) +if(J.h8(s.window.location.href,"search.html")){q=p.b.gal().k(0,"q") +if(q==null)return +q=B.j.H(q) +$.er=$.dG +p.bB(q,!0) +p.b4(q) +p.af() +$.er=10}}, +b4(a){var s,r,q,p=v.G,o=p.document.getElementById("dartdoc-main-content") +if(o==null)return +o.textContent="" +s=p.document.createElement("section") +s.classList.add("search-summary") +o.appendChild(s) +s=p.document.createElement("h2") +s.innerHTML="Search Results" +o.appendChild(s) +s=p.document.createElement("div") +s.classList.add("search-summary") +s.innerHTML=""+$.dG+' results for "'+a+'"' +o.appendChild(s) +if($.a3.a!==0)for(p=new A.aR($.a3,$.a3.r,$.a3.e);p.m();)o.appendChild(p.d) +else{s=p.document.createElement("div") +s.classList.add("search-summary") +s.innerHTML='There was not a match for "'+a+'". Want to try searching from additional Dart-related sites? ' +r=A.bX("https://dart.dev/search?cx=011220921317074318178%3A_yy-tmb5t_i&ie=UTF-8&hl=en&q=",0,null).am(A.eM(["q",a],t.N,t.z)) +q=p.document.createElement("a") +q.setAttribute("href",r.gV()) +q.textContent="Search on dart.dev." +s.appendChild(q) +o.appendChild(s)}}, +af(){var s=this.gG() +s.style.display="none" +s.setAttribute("aria-expanded","false") +return s}, +aY(a,b,c){var s,r,q,p,o=this +o.x=A.k([],t.M) +s=o.w +B.b.X(s) +$.a3.X(0) +o.gR().textContent="" +r=b.length +if(r===0){o.af() +return}for(q=0;q")):s);r.m();){p=r.gn() +o.gR().appendChild(p)}o.x=b +o.y=-1 +if(o.gR().hasChildNodes()){r=o.gG() +r.style.display="block" +r.setAttribute("aria-expanded","true")}r=$.dG +r=r>10?'Press "Enter" key to see all '+r+" results":"" +o.gaU().textContent=r}, +bM(a,b){return this.aY(a,b,!1)}, +ae(a,b,c){var s,r,q,p=this +if(p.r===a&&!b)return +if(a.length===0){p.bM("",A.k([],t.M)) +return}s=p.a.aI(a) +r=s.length +$.dG=r +q=$.er +if(r>q)s=B.b.b6(s,0,q) +p.r=a +p.aY(a,s,c)}, +bB(a,b){return this.ae(a,!1,b)}, +aK(a){return this.ae(a,!1,!1)}, +bA(a,b){return this.ae(a,b,!1)}, +aF(a){var s,r=this +r.y=-1 +s=r.f +if(s!=null){a.value=s +r.f=null}r.af()}, +b3(a){var s=this +a.addEventListener("focus",A.a4(new A.de(s,a))) +a.addEventListener("blur",A.a4(new A.df(s,a))) +a.addEventListener("input",A.a4(new A.dg(s,a))) +a.addEventListener("keydown",A.a4(new A.dh(s,a)))}} +A.dd.prototype={ +$1(a){var s +if(!J.F(a.key,"/"))return +s=v.G.document.activeElement +if(s==null||!B.a2.N(0,s.nodeName.toLowerCase())){a.preventDefault() +this.a.focus()}}, +$S:1} +A.de.prototype={ +$1(a){this.a.bA(this.b.value,!0)}, +$S:1} +A.df.prototype={ +$1(a){this.a.aF(this.b)}, +$S:1} +A.dg.prototype={ +$1(a){this.a.aK(this.b.value)}, +$S:1} +A.dh.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(!J.F(a.type,"keydown"))return +if(J.F(a.code,"Enter")){a.preventDefault() +s=e.a +r=s.y +if(r!==-1){q=s.w[r].getAttribute("data-href") +if(q!=null)v.G.window.location.assign($.bo()+q) +return}else{p=B.j.H(s.r) +o=A.bX($.bo()+"search.html",0,null).am(A.eM(["q",p],t.N,t.z)) +v.G.window.location.assign(o.gV()) +return}}s=e.a +r=s.w +n=r.length-1 +m=s.y +if(J.F(a.code,"ArrowUp")){l=s.y +if(l===-1)s.y=n +else s.y=l-1}else if(J.F(a.code,"ArrowDown")){l=s.y +if(l===n)s.y=-1 +else s.y=l+1}else if(J.F(a.code,"Escape"))s.aF(e.b) +else{if(s.f!=null){s.f=null +s.aK(e.b.value)}return}l=m!==-1 +if(l)r[m].classList.remove("tt-cursor") +k=s.y +if(k!==-1){j=r[k] +j.classList.add("tt-cursor") +r=s.y +if(r===0)s.gG().scrollTop=0 +else if(r===n)s.gG().scrollTop=s.gG().scrollHeight +else{i=j.offsetTop +h=s.gG().offsetHeight +if(i"+A.i(a.k(0,0))+""}, +$S:26} +A.dD.prototype={ +$1(a){var s=this.a +if(s!=null)s.classList.toggle("active") +s=this.b +if(s!=null)s.classList.toggle("active")}, +$S:1} +A.dE.prototype={ +$1(a){return this.b0(a)}, +b0(a){var s=0,r=A.fy(t.P),q,p=this,o,n +var $async$$1=A.fF(function(b,c){if(b===1)return A.fp(c,r) +while(true)switch(s){case 0:if(!J.F(a.status,200)){o=v.G.document.createElement("a") +o.href="https://dart.dev/tools/dart-doc#troubleshoot" +o.text="Failed to load sidebar. Visit dart.dev for help troubleshooting." +p.a.appendChild(o) +s=1 +break}s=3 +return A.fo(A.dU(a.text(),t.N),$async$$1) +case 3:n=c +o=v.G.document.createElement("div") +o.innerHTML=n +A.fE(p.b,o) +p.a.appendChild(o) +case 1:return A.fq(q,r)}}) +return A.fr($async$$1,r)}, +$S:8} +A.dQ.prototype={ +$1(a){var s=this.a,r=v.G +if(a){s.classList.remove("light-theme") +s.classList.add("dark-theme") +r.window.localStorage.setItem("colorTheme","true")}else{s.classList.remove("dark-theme") +s.classList.add("light-theme") +r.window.localStorage.setItem("colorTheme","false")}}, +$S:27} +A.dN.prototype={ +$1(a){this.b.$1(!this.a.classList.contains("dark-theme"))}, +$S:1};(function aliases(){var s=J.Y.prototype +s.b7=s.h})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._static_0 +s(J,"iR","hy",28) +r(A,"jg","hQ",3) +r(A,"jh","hR",3) +r(A,"ji","hS",3) +q(A,"fH","ja",0) +r(A,"jF","hn",29)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +r(A.j,null) +q(A.j,[A.e1,J.by,J.V,A.r,A.br,A.l,A.e,A.cE,A.am,A.aK,A.bV,A.b9,A.aF,A.c5,A.ao,A.cH,A.cC,A.aJ,A.ba,A.a7,A.N,A.cy,A.bD,A.aR,A.cu,A.c6,A.cS,A.J,A.c2,A.dk,A.di,A.bY,A.H,A.c_,A.as,A.v,A.bZ,A.ca,A.dv,A.cc,A.aT,A.bt,A.bv,A.cp,A.dt,A.dq,A.cX,A.bO,A.b_,A.cY,A.bw,A.t,A.cb,A.A,A.bh,A.cK,A.c9,A.cB,A.cq,A.w,A.cl,A.dc]) +q(J.by,[J.bz,J.aM,J.aP,J.aO,J.aQ,J.aN,J.a8]) +q(J.aP,[J.Y,J.o,A.bE,A.aW]) +q(J.Y,[J.bP,J.ap,J.X]) +r(J.cv,J.o) +q(J.aN,[J.aL,J.bA]) +q(A.r,[A.a0,A.c]) +q(A.a0,[A.a6,A.bj]) +r(A.b4,A.a6) +r(A.b3,A.bj) +r(A.M,A.b3) +q(A.l,[A.bC,A.P,A.bB,A.bU,A.bS,A.c1,A.bp,A.G,A.b1,A.bT,A.b0,A.bu]) +r(A.aq,A.e) +r(A.bs,A.aq) +q(A.c,[A.I,A.aa,A.aS]) +q(A.I,[A.ab,A.c4]) +r(A.c7,A.b9) +r(A.c8,A.c7) +r(A.aH,A.aF) +r(A.aG,A.ao) +r(A.aI,A.aG) +r(A.aY,A.P) +q(A.a7,[A.cj,A.ck,A.cG,A.dK,A.dM,A.cU,A.cT,A.dw,A.d6,A.dV,A.dW,A.ct,A.cs,A.dO,A.dd,A.de,A.df,A.dg,A.dh,A.dz,A.dA,A.dB,A.dD,A.dE,A.dQ,A.dN]) +q(A.cG,[A.cF,A.aE]) +q(A.N,[A.a9,A.c3]) +q(A.ck,[A.dL,A.dx,A.dH,A.d7,A.cz,A.dp,A.cO,A.cL,A.cM,A.cN,A.dn,A.dm,A.cr]) +q(A.aW,[A.bF,A.an]) +q(A.an,[A.b5,A.b7]) +r(A.b6,A.b5) +r(A.aU,A.b6) +r(A.b8,A.b7) +r(A.aV,A.b8) +q(A.aU,[A.bG,A.bH]) +q(A.aV,[A.bI,A.bJ,A.bK,A.bL,A.bM,A.aX,A.bN]) +r(A.bb,A.c1) +q(A.cj,[A.cV,A.cW,A.dj,A.cZ,A.d2,A.d1,A.d0,A.d_,A.d5,A.d4,A.d3,A.dF,A.db,A.ds,A.dr,A.dC,A.dP]) +r(A.b2,A.c_) +r(A.da,A.dv) +r(A.bg,A.aT) +r(A.ar,A.bg) +q(A.bt,[A.ch,A.cm,A.cw]) +q(A.bv,[A.ci,A.co,A.cx,A.cR,A.cQ]) +r(A.cP,A.cm) +q(A.G,[A.aZ,A.bx]) +r(A.c0,A.bh) +q(A.cX,[A.m,A.B]) +s(A.aq,A.bV) +s(A.bj,A.e) +s(A.b5,A.e) +s(A.b6,A.aK) +s(A.b7,A.e) +s(A.b8,A.aK) +s(A.bg,A.cc)})() +var v={G:typeof self!="undefined"?self:globalThis,typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{a:"int",q:"double",fL:"num",d:"String",bm:"bool",t:"Null",f:"List",j:"Object",z:"Map"},mangledNames:{},types:["~()","t(n)","~(@)","~(~())","t(@)","t()","@()","~(d,@)","W(n)","@(@)","@(@,d)","@(d)","t(~())","t(@,Z)","~(a,@)","t(j,Z)","~(j?,j?)","z(z,d)","~(d,a)","~(d,a?)","a(a,a)","~(d,d?)","~(B)","a(+item,matchPosition(w,B),+item,matchPosition(w,B))","w(+item,matchPosition(w,B))","d()","d(cA)","~(bm)","a(@,@)","w(z)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;item,matchPosition":(a,b)=>c=>c instanceof A.c8&&a.b(c.a)&&b.b(c.b)}} +A.i5(v.typeUniverse,JSON.parse('{"bP":"Y","ap":"Y","X":"Y","bz":{"bm":[],"h":[]},"aM":{"t":[],"h":[]},"aP":{"n":[]},"Y":{"n":[]},"o":{"f":["1"],"c":["1"],"n":[]},"cv":{"o":["1"],"f":["1"],"c":["1"],"n":[]},"aN":{"q":[]},"aL":{"q":[],"a":[],"h":[]},"bA":{"q":[],"h":[]},"a8":{"d":[],"h":[]},"a0":{"r":["2"]},"a6":{"a0":["1","2"],"r":["2"],"r.E":"2"},"b4":{"a6":["1","2"],"a0":["1","2"],"c":["2"],"r":["2"],"r.E":"2"},"b3":{"e":["2"],"f":["2"],"a0":["1","2"],"c":["2"],"r":["2"]},"M":{"b3":["1","2"],"e":["2"],"f":["2"],"a0":["1","2"],"c":["2"],"r":["2"],"e.E":"2","r.E":"2"},"bC":{"l":[]},"bs":{"e":["a"],"f":["a"],"c":["a"],"e.E":"a"},"c":{"r":["1"]},"I":{"c":["1"],"r":["1"]},"ab":{"I":["2"],"c":["2"],"r":["2"],"I.E":"2","r.E":"2"},"aq":{"e":["1"],"f":["1"],"c":["1"]},"aF":{"z":["1","2"]},"aH":{"z":["1","2"]},"aG":{"ao":["1"],"c":["1"]},"aI":{"ao":["1"],"c":["1"]},"aY":{"P":[],"l":[]},"bB":{"l":[]},"bU":{"l":[]},"ba":{"Z":[]},"bS":{"l":[]},"a9":{"N":["1","2"],"z":["1","2"],"N.V":"2"},"aa":{"c":["1"],"r":["1"],"r.E":"1"},"aS":{"c":["1"],"r":["1"],"r.E":"1"},"c6":{"e6":[],"cA":[]},"bE":{"n":[],"h":[]},"aW":{"n":[]},"bF":{"n":[],"h":[]},"an":{"C":["1"],"n":[]},"aU":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[]},"aV":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[]},"bG":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[],"h":[],"e.E":"q"},"bH":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[],"h":[],"e.E":"q"},"bI":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bJ":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bK":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bL":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bM":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"aX":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bN":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"c1":{"l":[]},"bb":{"P":[],"l":[]},"H":{"l":[]},"b2":{"c_":["1"]},"v":{"W":["1"]},"e":{"f":["1"],"c":["1"]},"N":{"z":["1","2"]},"aT":{"z":["1","2"]},"ar":{"z":["1","2"]},"ao":{"c":["1"]},"c3":{"N":["d","@"],"z":["d","@"],"N.V":"@"},"c4":{"I":["d"],"c":["d"],"r":["d"],"I.E":"d","r.E":"d"},"f":{"c":["1"]},"e6":{"cA":[]},"bp":{"l":[]},"P":{"l":[]},"G":{"l":[]},"aZ":{"l":[]},"bx":{"l":[]},"b1":{"l":[]},"bT":{"l":[]},"b0":{"l":[]},"bu":{"l":[]},"bO":{"l":[]},"b_":{"l":[]},"cb":{"Z":[]},"bh":{"bW":[]},"c9":{"bW":[]},"c0":{"bW":[]},"hq":{"f":["a"],"c":["a"]},"hM":{"f":["a"],"c":["a"]},"hL":{"f":["a"],"c":["a"]},"ho":{"f":["a"],"c":["a"]},"hJ":{"f":["a"],"c":["a"]},"hp":{"f":["a"],"c":["a"]},"hK":{"f":["a"],"c":["a"]},"hl":{"f":["q"],"c":["q"]},"hm":{"f":["q"],"c":["q"]}}')) +A.i4(v.typeUniverse,JSON.parse('{"aK":1,"bV":1,"aq":1,"bj":2,"aF":2,"aG":1,"bD":1,"aR":1,"an":1,"ca":1,"cc":2,"aT":2,"bg":2,"bt":2,"bv":2}')) +var u={f:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\u03f6\x00\u0404\u03f4 \u03f4\u03f6\u01f6\u01f6\u03f6\u03fc\u01f4\u03ff\u03ff\u0584\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u05d4\u01f4\x00\u01f4\x00\u0504\u05c4\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0400\x00\u0400\u0200\u03f7\u0200\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0200\u0200\u0200\u03f7\x00",c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type"} +var t=(function rtii(){var s=A.ce +return{U:s("c<@>"),C:s("l"),Z:s("jN"),M:s("o"),O:s("o"),f:s("o"),r:s("o<+item,matchPosition(w,B)>"),s:s("o"),b:s("o<@>"),t:s("o"),T:s("aM"),m:s("n"),g:s("X"),p:s("C<@>"),j:s("f<@>"),a:s("z"),V:s("ab<+item,matchPosition(w,B),w>"),P:s("t"),K:s("j"),L:s("jO"),d:s("+()"),F:s("e6"),l:s("Z"),N:s("d"),k:s("h"),_:s("P"),o:s("ap"),h:s("ar"),R:s("bW"),c:s("v<@>"),y:s("bm"),i:s("q"),z:s("@"),v:s("@(j)"),Q:s("@(j,Z)"),S:s("a"),W:s("W?"),A:s("n?"),X:s("j?"),w:s("d?"),u:s("bm?"),I:s("q?"),x:s("a?"),n:s("fL?"),H:s("fL"),q:s("~")}})();(function constants(){var s=hunkHelpers.makeConstList +B.z=J.by.prototype +B.b=J.o.prototype +B.c=J.aL.prototype +B.a=J.a8.prototype +B.A=J.X.prototype +B.B=J.aP.prototype +B.n=J.bP.prototype +B.i=J.ap.prototype +B.aj=new A.ci() +B.o=new A.ch() +B.ak=new A.cp() +B.j=new A.co() +B.k=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.p=function() { + var toStringFunction = Object.prototype.toString; + function getTag(o) { + var s = toStringFunction.call(o); + return s.substring(8, s.length - 1); + } + function getUnknownTag(object, tag) { + if (/^HTML[A-Z].*Element$/.test(tag)) { + var name = toStringFunction.call(object); + if (name == "[object Object]") return null; + return "HTMLElement"; + } + } + function getUnknownTagGenericBrowser(object, tag) { + if (object instanceof HTMLElement) return "HTMLElement"; + return getUnknownTag(object, tag); + } + function prototypeForTag(tag) { + if (typeof window == "undefined") return null; + if (typeof window[tag] == "undefined") return null; + var constructor = window[tag]; + if (typeof constructor != "function") return null; + return constructor.prototype; + } + function discriminator(tag) { return null; } + var isBrowser = typeof HTMLElement == "function"; + return { + getTag: getTag, + getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, + prototypeForTag: prototypeForTag, + discriminator: discriminator }; +} +B.v=function(getTagFallback) { + return function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; + if (userAgent.indexOf("Chrome") >= 0) { + function confirm(p) { + return typeof window == "object" && window[p] && window[p].name == p; + } + if (confirm("Window") && confirm("HTMLElement")) return hooks; + } + hooks.getTag = getTagFallback; + }; +} +B.q=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.u=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Firefox") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "GeoGeolocation": "Geolocation", + "Location": "!Location", + "WorkerMessageEvent": "MessageEvent", + "XMLDocument": "!Document"}; + function getTagFirefox(o) { + var tag = getTag(o); + return quickMap[tag] || tag; + } + hooks.getTag = getTagFirefox; +} +B.t=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Trident/") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "HTMLDDElement": "HTMLElement", + "HTMLDTElement": "HTMLElement", + "HTMLPhraseElement": "HTMLElement", + "Position": "Geoposition" + }; + function getTagIE(o) { + var tag = getTag(o); + var newTag = quickMap[tag]; + if (newTag) return newTag; + if (tag == "Object") { + if (window.DataView && (o instanceof window.DataView)) return "DataView"; + } + return tag; + } + function prototypeForTagIE(tag) { + var constructor = window[tag]; + if (constructor == null) return null; + return constructor.prototype; + } + hooks.getTag = getTagIE; + hooks.prototypeForTag = prototypeForTagIE; +} +B.r=function(hooks) { + var getTag = hooks.getTag; + var prototypeForTag = hooks.prototypeForTag; + function getTagFixed(o) { + var tag = getTag(o); + if (tag == "Document") { + if (!!o.xmlVersion) return "!Document"; + return "!HTMLDocument"; + } + return tag; + } + function prototypeForTagFixed(tag) { + if (tag == "Document") return null; + return prototypeForTag(tag); + } + hooks.getTag = getTagFixed; + hooks.prototypeForTag = prototypeForTagFixed; +} +B.l=function(hooks) { return hooks; } + +B.w=new A.cw() +B.x=new A.bO() +B.h=new A.cE() +B.e=new A.cP() +B.y=new A.cR() +B.d=new A.da() +B.f=new A.cb() +B.C=new A.cx(null) +B.D=new A.m(0,"accessor") +B.E=new A.m(1,"constant") +B.P=new A.m(2,"constructor") +B.T=new A.m(3,"class_") +B.U=new A.m(4,"dynamic") +B.V=new A.m(5,"enum_") +B.W=new A.m(6,"extension") +B.X=new A.m(7,"extensionType") +B.Y=new A.m(8,"function") +B.Z=new A.m(9,"library") +B.F=new A.m(10,"method") +B.G=new A.m(11,"mixin") +B.H=new A.m(12,"never") +B.I=new A.m(13,"package") +B.J=new A.m(14,"parameter") +B.K=new A.m(15,"prefix") +B.L=new A.m(16,"property") +B.M=new A.m(17,"sdk") +B.N=new A.m(18,"topic") +B.O=new A.m(19,"topLevelConstant") +B.Q=new A.m(20,"topLevelProperty") +B.R=new A.m(21,"typedef") +B.S=new A.m(22,"typeParameter") +B.m=A.k(s([B.D,B.E,B.P,B.T,B.U,B.V,B.W,B.X,B.Y,B.Z,B.F,B.G,B.H,B.I,B.J,B.K,B.L,B.M,B.N,B.O,B.Q,B.R,B.S]),A.ce("o")) +B.a0={} +B.a_=new A.aH(B.a0,[],A.ce("aH")) +B.a1={input:0,textarea:1} +B.a2=new A.aI(B.a1,2,A.ce("aI")) +B.a3=A.K("jK") +B.a4=A.K("jL") +B.a5=A.K("hl") +B.a6=A.K("hm") +B.a7=A.K("ho") +B.a8=A.K("hp") +B.a9=A.K("hq") +B.aa=A.K("j") +B.ab=A.K("hJ") +B.ac=A.K("hK") +B.ad=A.K("hL") +B.ae=A.K("hM") +B.af=new A.cQ(!1) +B.ag=new A.B(0,"isExactly") +B.ah=new A.B(1,"startsWith") +B.ai=new A.B(2,"contains")})();(function staticFields(){$.d8=null +$.ai=A.k([],t.f) +$.eP=null +$.eH=null +$.eG=null +$.fK=null +$.fG=null +$.fO=null +$.dI=null +$.dS=null +$.ew=null +$.d9=A.k([],A.ce("o?>")) +$.av=null +$.bk=null +$.bl=null +$.eo=!1 +$.p=B.d +$.er=10 +$.dG=0 +$.a3=A.e3(t.N,t.m)})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"jM","eA",()=>A.jp("_$dart_dartClosure")) +s($,"jQ","fQ",()=>A.Q(A.cI({ +toString:function(){return"$receiver$"}}))) +s($,"jR","fR",()=>A.Q(A.cI({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"jS","fS",()=>A.Q(A.cI(null))) +s($,"jT","fT",()=>A.Q(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"jW","fW",()=>A.Q(A.cI(void 0))) +s($,"jX","fX",()=>A.Q(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"jV","fV",()=>A.Q(A.eY(null))) +s($,"jU","fU",()=>A.Q(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"jZ","fZ",()=>A.Q(A.eY(void 0))) +s($,"jY","fY",()=>A.Q(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"k_","eB",()=>A.hP()) +s($,"k5","h4",()=>A.hB(4096)) +s($,"k3","h2",()=>new A.ds().$0()) +s($,"k4","h3",()=>new A.dr().$0()) +s($,"k0","h_",()=>A.hA(A.iF(A.k([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) +s($,"k1","h0",()=>A.eT("^[\\-\\.0-9A-Z_a-z~]*$",!0)) +s($,"k2","h1",()=>typeof URLSearchParams=="function") +s($,"k6","dY",()=>A.fM(B.aa)) +s($,"k7","bo",()=>new A.dC().$0())})();(function nativeSupport(){!function(){var s=function(a){var m={} +m[a]=1 +return Object.keys(hunkHelpers.convertToFastObject(m))[0]} +v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} +var r="___dart_isolate_tags_" +var q=Object[r]||(Object[r]=Object.create(null)) +var p="_ZxYxX" +for(var o=0;;o++){var n=s(p+"_"+o+"_") +if(!(n in q)){q[n]=1 +v.isolateTag=n +break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.bE,ArrayBufferView:A.aW,DataView:A.bF,Float32Array:A.bG,Float64Array:A.bH,Int16Array:A.bI,Int32Array:A.bJ,Int8Array:A.bK,Uint16Array:A.bL,Uint32Array:A.bM,Uint8ClampedArray:A.aX,CanvasPixelArray:A.aX,Uint8Array:A.bN}) +hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) +A.an.$nativeSuperclassTag="ArrayBufferView" +A.b5.$nativeSuperclassTag="ArrayBufferView" +A.b6.$nativeSuperclassTag="ArrayBufferView" +A.aU.$nativeSuperclassTag="ArrayBufferView" +A.b7.$nativeSuperclassTag="ArrayBufferView" +A.b8.$nativeSuperclassTag="ArrayBufferView" +A.aV.$nativeSuperclassTag="ArrayBufferView"})() +Function.prototype.$1=function(a){return this(a)} +Function.prototype.$0=function(){return this()} +Function.prototype.$2=function(a,b){return this(a,b)} +Function.prototype.$1$1=function(a){return this(a)} +Function.prototype.$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} +Function.prototype.$1$0=function(){return this()} +convertAllToFastObject(w) +convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) +return}if(typeof document.currentScript!="undefined"){a(document.currentScript) +return}var s=document.scripts +function onLoad(b){for(var q=0;q","_Record.toString","_Record._toString","StringBuffer._writeString","_Record._fieldKeys","_Record._computeFieldKeys","JSArray.allocateGrowable","_Record2._getFieldValues","_Record2.==","_Record._sameShape","_Record2.hashCode","JSSyntaxRegExp.toString","JSSyntaxRegExp._nativeGlobalVersion","JSSyntaxRegExp._execGlobal","_MatchImplementation.end","_MatchImplementation.[]","_AllMatchesIterator.current","_AllMatchesIterator.moveNext","JSSyntaxRegExp.isUnicode","NativeByteBuffer.runtimeType","NativeByteData.runtimeType","NativeTypedArray.length","NativeTypedArrayOfDouble.[]","NativeFloat32List.runtimeType","NativeFloat64List.runtimeType","NativeInt16List.runtimeType","NativeInt16List.[]","NativeInt32List.runtimeType","NativeInt32List.[]","NativeInt8List.runtimeType","NativeInt8List.[]","NativeUint16List.runtimeType","NativeUint16List.[]","NativeUint32List.runtimeType","NativeUint32List.[]","NativeUint8ClampedList.runtimeType","NativeUint8ClampedList.length","NativeUint8ClampedList.[]","NativeUint8List.runtimeType","NativeUint8List.length","NativeUint8List.[]","Rti._eval","Rti._bind","_Type.toString","_Error.toString","_AsyncRun._initializeScheduleImmediate.internalCallback","_AsyncRun._initializeScheduleImmediate.","_AsyncRun._scheduleImmediateJsOverride.internalCallback","_AsyncRun._scheduleImmediateWithSetImmediate.internalCallback","_TimerImpl.internalCallback","_AsyncAwaitCompleter.complete","_AsyncAwaitCompleter.completeError","_Future._completeError","_awaitOnObject.","_wrapJsFunctionForAsync.","AsyncError.toString","_Completer.completeError","_Completer.completeError[function-entry$1]","_AsyncCompleter.complete","_FutureListener.matchesErrorTest","_FutureListener.handleError","_Future.then","_Future.then[function-entry$1]","_Future._thenAwait","_Future._setErrorObject","_Future._cloneResult","_Future._addListener","_Future._prependListeners","_Future._removeListeners","_Future._reverseListeners","_Future._completeWithValue","_Future._completeWithResultOf","_Future._completeErrorObject","_Future._asyncComplete","_Future._asyncCompleteWithValue","_Future._chainFuture","_Future._asyncCompleteErrorObject","_Future._addListener.","_Future._prependListeners.","_Future._chainCoreFuture.","_Future._asyncCompleteWithValue.","_Future._asyncCompleteErrorObject.","_Future._propagateToListeners.handleWhenCompleteCallback","_FutureListener.handleWhenComplete","_Future._newFutureWithSameType","_Future._propagateToListeners.handleWhenCompleteCallback.","_Future._propagateToListeners.handleValueCallback","_FutureListener.handleValue","_Future._propagateToListeners.handleError","_FutureListener.hasErrorCallback","_rootHandleError.","_RootZone.runGuarded","_RootZone.bindCallbackGuarded","_RootZone.run","_RootZone.run[function-entry$1]","_RootZone.runUnary","_RootZone.runUnary[function-entry$2]","_RootZone.runBinary","_RootZone.runBinary[function-entry$3]","_RootZone.registerBinaryCallback","_RootZone.registerBinaryCallback[function-entry$1]","_RootZone.bindCallbackGuarded.","ListBase.iterator","ListBase.elementAt","ListBase.cast","ListBase.toString","MapBase.forEach","MapBase.length","MapBase.toString","MapBase.mapToString.","_UnmodifiableMapMixin.[]=","MapView.[]","MapView.[]=","MapView.length","MapView.toString","SetBase.toString","SetBase.elementAt","_JsonMap.[]","_JsonMap.length","_JsonMap.keys","_JsonMap.[]=","_JsonMap.containsKey","_JsonMap.forEach","_JsonMap._computeKeys","_JsonMap._upgrade","_JsonMap._process","_JsonMapKeyIterable.length","_JsonMapKeyIterable.elementAt","_JsonMapKeyIterable.iterator","_Utf8Decoder._decoder.","_Utf8Decoder._decoderNonfatal.","Base64Codec.normalize","HtmlEscapeMode.toString","HtmlEscape.convert","HtmlEscape._convert","JsonCodec.decode","JsonCodec.decoder","Utf8Encoder.convert","NativeUint8List.sublist","_Utf8Encoder._writeReplacementCharacter","_Utf8Encoder._writeSurrogate","_Utf8Encoder._fillBuffer","Utf8Decoder.convert","_Utf8Decoder._convertGeneral","_Utf8Decoder._decodeRecursive","_Utf8Decoder.decodeGeneral","_Uri._makeQueryFromParameters.","_Enum.toString","Error.stackTrace","AssertionError.toString","ArgumentError._errorName","ArgumentError._errorExplanation","ArgumentError.toString","RangeError.invalidValue","RangeError._errorName","RangeError._errorExplanation","IndexError.invalidValue","IndexError._errorName","IndexError._errorExplanation","UnsupportedError.toString","UnimplementedError.toString","StateError.toString","ConcurrentModificationError.toString","OutOfMemoryError.toString","OutOfMemoryError.stackTrace","StackOverflowError.toString","StackOverflowError.stackTrace","_Exception.toString","FormatException.toString","Iterable.cast","Iterable.length","Iterable.elementAt","Iterable.toString","Null.hashCode","Null.toString","Object.hashCode","Object.==","Object.toString","Object.runtimeType","_StringStackTrace.toString","StringBuffer.length","StringBuffer.toString","Uri.splitQueryString.","Uri._parseIPv4Address.error","Uri.parseIPv6Address.error","Uri.parseIPv6Address.parseHex","_Uri._text","_Uri._initializeText","_Uri._writeAuthority","_Uri.hashCode","_Uri.queryParameters","_Uri.userInfo","_Uri.host","_Uri.port","_Uri.query","_Uri.fragment","_Uri.replace","_Uri.isAbsolute","_Uri.hasAuthority","_Uri.hasQuery","_Uri.hasFragment","_Uri.toString","_Uri.==","_Uri._makeQueryFromParametersDefault.writeParameter","_Uri._makeQueryFromParametersDefault.","UriData.uri","UriData._computeUri","UriData.toString","_SimpleUri.hasAuthority","_SimpleUri.hasPort","_SimpleUri.hasQuery","_SimpleUri.hasFragment","_SimpleUri.isAbsolute","_SimpleUri.scheme","_SimpleUri._computeScheme","_SimpleUri.userInfo","_SimpleUri.host","_SimpleUri.port","_SimpleUri.path","_SimpleUri.query","_SimpleUri.fragment","_SimpleUri.queryParameters","_SimpleUri.replace","_SimpleUri.hashCode","_SimpleUri.==","_SimpleUri.toString","promiseToFuture.","NullRejectionException.toString","Kind._enumToString","Kind.toString","_MatchPosition._enumToString","Index.find","ListIterable.toList","JSArray.map","Index.find.score","Index.find.","IndexItem._scope","_htmlBase.","init.disableSearch","print","init.","init_closure","Index.fromJson","ListBase.map","_Search.listBox","_Search.moreResults","_Search.searchResults","_Search.initialize","_Search.showSearchResultPage","HTMLElement|constructor#section","HTMLHeadingElement|constructor#h2","JsLinkedHashMap.isNotEmpty","_Search.hideSuggestions","_Search.updateSuggestions","JsLinkedHashMap.values","_Search.showSuggestions","_Search.showEnterMessage","_Search.updateSuggestions[function-entry$2]","_Search.handleSearch","_Search.handleSearch[function-entry$1$isSearchPage]","_Search.handleSearch[function-entry$1]","_Search.handleSearch[function-entry$1$forceUpdate]","_Search.clearSearch","_Search.setEventListeners","_Search.initialize.","ElementExtension.acceptsInput","_Search.setEventListeners.","_createSuggestion.","_highlight.","_initializeToggles.","_loadSidebar.","_loadSidebar_closure","init.switchThemes","DART_CLOSURE_PROPERTY_NAME","TypeErrorDecoder.noSuchMethodPattern","TypeErrorDecoder.notClosurePattern","TypeErrorDecoder.nullCallPattern","TypeErrorDecoder.nullLiteralCallPattern","TypeErrorDecoder.undefinedCallPattern","TypeErrorDecoder.undefinedLiteralCallPattern","TypeErrorDecoder.nullPropertyPattern","TypeErrorDecoder.nullLiteralPropertyPattern","TypeErrorDecoder.undefinedPropertyPattern","TypeErrorDecoder.undefinedLiteralPropertyPattern","_AsyncRun._scheduleImmediateClosure","_Utf8Decoder._reusableBuffer","_Utf8Decoder._decoder","_Utf8Decoder._decoderNonfatal","_Base64Decoder._inverseAlphabet","_Uri._needsNoEncoding","_Uri._useURLSearchParams","_hashSeed","_htmlBase","","$intercepted$$eq$Iu","$intercepted$__$asx","$intercepted$cast10$ax","$intercepted$compareTo1$ns","$intercepted$contains1$asx","$intercepted$elementAt1$ax","$intercepted$get$hashCode$IJavaScriptBigIntJavaScriptSymbolLegacyJavaScriptObjectabnsu","$intercepted$get$iterator$ax","$intercepted$get$length$asx","$intercepted$get$runtimeType$Ibdinsux","$intercepted$toString0$IJavaScriptBigIntJavaScriptFunctionJavaScriptSymbolLegacyJavaScriptObjectabnsux","ArrayIterator","AsyncError","Base64Codec","Base64Encoder","BoundClosure","ByteBuffer","ByteData","CastIterator","CastList","Closure","Closure0Args","Closure2Args","CodeUnits","Codec","ConstantMap","ConstantSet","ConstantStringMap","ConstantStringSet","Converter","EfficientLengthIterable","EnclosedBy","Encoding","Error","ExceptionAndStackTrace","FixedLengthListMixin","Float32List","Float64List","Function","Future","HtmlEscape","HtmlEscapeMode","Index","IndexError","IndexItem","Index_find_closure","Index_find_score","Int16List","Int32List","Int8List","Interceptor","Iterable","IterableExtensions|get#firstOrNull","JSAnyUtilityExtension|instanceOfString","JSArray","JSBool","JSInt","JSNull","JSNumNotInt","JSNumber","JSObject","JSString","JSSyntaxRegExp","JSUnmodifiableArray","JS_CONST","JavaScriptBigInt","JavaScriptFunction","JavaScriptIndexingBehavior","JavaScriptObject","JavaScriptSymbol","JsLinkedHashMap","JsonCodec","JsonDecoder","Kind","LateError","LegacyJavaScriptObject","LinkedHashMapCell","LinkedHashMapKeyIterator","LinkedHashMapKeysIterable","LinkedHashMapValueIterator","LinkedHashMapValuesIterable","List","ListBase","ListIterable","ListIterator","Map","MapBase","MapBase_mapToString_closure","MapView","MappedListIterable","Match","NativeByteBuffer","NativeByteData","NativeFloat32List","NativeFloat64List","NativeInt16List","NativeInt32List","NativeInt8List","NativeTypedArray","NativeTypedArrayOfDouble","NativeTypedArrayOfInt","NativeTypedData","NativeUint16List","NativeUint32List","NativeUint8ClampedList","Null","NullError","NullRejectionException","NullThrownFromJavaScriptException","Object","OutOfMemoryError","PlainJavaScriptObject","RangeError","Record","RegExpMatch","Rti","RuntimeError","SentinelValue","SetBase","StackOverflowError","StackTrace","StaticClosure","String","StringBuffer","TearOffClosure","TrustedGetRuntimeType","TypeError","TypeErrorDecoder","Uint16List","Uint32List","Uint8ClampedList","Uint8List","UnknownJavaScriptObject","UnknownJsTypeError","UnmodifiableListBase","UnmodifiableListMixin","UnmodifiableMapView","Uri","UriData","Uri__parseIPv4Address_error","Uri_parseIPv6Address_error","Uri_parseIPv6Address_parseHex","Uri_splitQueryString_closure","Utf8Codec","Utf8Decoder","Utf8Encoder","_#fromMap#tearOff","_AllMatchesIterator","_AsyncAwaitCompleter","_AsyncCallbackEntry","_AsyncCompleter","_AsyncRun__initializeScheduleImmediate_closure","_AsyncRun__initializeScheduleImmediate_internalCallback","_AsyncRun__scheduleImmediateJsOverride_internalCallback","_AsyncRun__scheduleImmediateWithSetImmediate_internalCallback","_CastIterableBase","_CastListBase","_Completer","_DataUri","_EfficientLengthCastIterable","_Enum","_Error","_Exception","_FunctionParameters","_Future","_FutureListener","_Future__addListener_closure","_Future__asyncCompleteErrorObject_closure","_Future__asyncCompleteWithValue_closure","_Future__chainCoreFuture_closure","_Future__prependListeners_closure","_Future__propagateToListeners_handleError","_Future__propagateToListeners_handleValueCallback","_Future__propagateToListeners_handleWhenCompleteCallback","_Future__propagateToListeners_handleWhenCompleteCallback_closure","_JS_INTEROP_INTERCEPTOR_TAG","_JsonMap","_JsonMapKeyIterable","_KeysOrValuesOrElementsIterator","_MatchImplementation","_MatchPosition","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin&FixedLengthListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin&FixedLengthListMixin","_Record","_Record2","_Record_2_item_matchPosition","_RootZone","_RootZone_bindCallbackGuarded_closure","_Search_initialize_closure","_Search_setEventListeners_closure","_SimpleUri","_StackTrace","_StreamIterator","_StringStackTrace","_TimerImpl_internalCallback","_TypeError","_UnmodifiableMapMixin","_UnmodifiableMapView&MapView&_UnmodifiableMapMixin","_Uri","_Uri__makeQueryFromParametersDefault_closure","_Uri__makeQueryFromParametersDefault_writeParameter","_Uri__makeQueryFromParameters_closure","_Utf8Decoder","_Utf8Decoder__decoderNonfatal_closure","_Utf8Decoder__decoder_closure","_Utf8Encoder","_Zone","__CastListBase&_CastIterableBase&ListMixin","_awaitOnObject_closure","_canonicalRecipeJoin","_canonicalRecipeJoinNamed","_canonicalizeScheme","_chainCoreFuture","_checkPadding","_checkZoneID","_compareAny","_computeFieldNamed","_computeSignatureFunction","_computedFieldKeys","_containerMap","_convertInterceptedUint8List","_create1","_createFutureOrRti","_createGenericFunctionRti","_createQuestionRti","_createSuggestion_closure","_current","_decoder","_decoderNonfatal","_defaultPort","_empty","_escapeChar","_escapeScheme","_fail","_getCanonicalRecipe","_getFutureFromFutureOr","_hexCharPairToByte","_highlight_closure","_htmlBase_closure","_identityHashCodeProperty","_initializeScheduleImmediate","_initializeToggles_closure","_installTypeTests","_interceptorFieldNameCache","_interceptors_JSArray__compareAny$closure","_internal","_inverseAlphabet","_isAlphabeticCharacter","_isInCallbackLoop","_isUnionOfFunctionType","_lastCallback","_lastPriorityCallback","_literal","_lookupBindingRti","_lookupFunctionRti","_lookupFutureOrRti","_lookupGenericFunctionParameterRti","_lookupGenericFunctionRti","_lookupInterfaceRti","_lookupQuestionRti","_lookupRecordRti","_lookupTerminalRti","_makeFragment","_makeHost","_makeNativeUint8List","_makePath","_makePort","_makeQuery","_makeQueryFromParameters","_makeQueryFromParametersDefault","_makeScheme","_makeUserInfo","_mayContainDotSegments","_needsNoEncoding","_nextCallback","_normalize","_normalizeEscape","_normalizeOrSubstring","_normalizePath","_normalizeRegName","_normalizeRelativePath","_normalizeZoneID","_of","_parse","_parseIPv4Address","_propagateToListeners","_receiverFieldNameCache","_removeDotSegments","_reusableBuffer","_rootHandleError_closure","_scheduleImmediateClosure","_scheduleImmediateJsOverride","_scheduleImmediateWithSetImmediate","_scheduleImmediateWithTimer","_stringFromUint8List","_suggestionLength","_suggestionLimit","_throw","_throwUnmodifiable","_uriDecode","_uriEncode","_useTextDecoder","_useURLSearchParams","_wrapJsFunctionForAsync_closure","_writeAll","addErasedTypes","addRules","alternateTagFunction","async__AsyncRun__scheduleImmediateJsOverride$closure","async__AsyncRun__scheduleImmediateWithSetImmediate$closure","async__AsyncRun__scheduleImmediateWithTimer$closure","async___startMicrotaskLoop$closure","bind","bool","checkNotNegative","checkValidRange","collectArray","combine","compose","create","cspForwardCall","cspForwardInterceptedCall","current","defaultStackTrace","dispatchRecordsForInstanceTags","double","errorDescription","eval","evalInEnvironment","evalRecipe","extractPattern","extractStackTrace","fieldADI","filled","findErasedType","findRule","finish","fixed","forType","forwardCallTo","forwardInterceptedCallTo","from","fromCharCodes","fromTearOff","getInterceptor$","getInterceptor$asx","getInterceptor$ax","getInterceptor$ns","getTagFunction","growable","handleArguments","handleDigit","handleExtendedOperations","handleIdentifier","handleTypeArguments","hash","indexToType","initHooks_closure","initNativeDispatchFlag","init_disableSearch","init_switchThemes","int","interceptorOf","interceptorsForUncacheableTags","iterableToFullString","iterableToShortString","makeNative","mapToString","markFixed","newArrayOrEmpty","noElement","noSuchMethodPattern","notClosurePattern","nullCallPattern","nullLiteralCallPattern","nullLiteralPropertyPattern","nullPropertyPattern","num","objectAssign","objectTypeName","parse","parseIPv6Address","parseInt","promiseToFuture_closure","prototypeForTagFunction","provokeCallErrorOn","provokePropertyErrorOn","range","receiverOf","safeToString","search_IndexItem___fromMap_tearOff$closure","splitQueryString","stringFromCharCode","stringFromNativeUint8List","throwWithStackTrace","toStringVisiting","toType","toTypes","toTypesNamed","tryParse","trySetStackTrace","undefinedCallPattern","undefinedLiteralCallPattern","undefinedLiteralPropertyPattern","undefinedPropertyPattern","value","withLength","$eq","$index","$indexSet","$mod","$mul","bindCallbackGuarded","call","cast","clear","clearSearch","compareTo","complete","completeError","contains","containsKey","convert","dart:_interceptors#_replaceSomeNullsWithUndefined","dart:_interceptors#_shrBothPositive","dart:_interceptors#_shrOtherPositive","dart:_interceptors#_shrReceiverPositive","dart:_interceptors#_tdivFast","dart:_interceptors#_tdivSlow","dart:_internal#_source","dart:_js_helper#_addHashTableEntry","dart:_js_helper#_computeFieldKeys","dart:_js_helper#_execGlobal","dart:_js_helper#_fieldKeys","dart:_js_helper#_getFieldValues","dart:_js_helper#_keys","dart:_js_helper#_modified","dart:_js_helper#_nativeGlobalVersion","dart:_js_helper#_newHashTable","dart:_js_helper#_newLinkedCell","dart:_js_helper#_toString","dart:_rti#_bind","dart:_rti#_eval","dart:async#_addListener","dart:async#_asyncComplete","dart:async#_asyncCompleteErrorObject","dart:async#_asyncCompleteWithValue","dart:async#_chainFuture","dart:async#_cloneResult","dart:async#_completeErrorObject","dart:async#_completeWithResultOf","dart:async#_completeWithValue","dart:async#_prependListeners","dart:async#_removeListeners","dart:async#_reverseListeners","dart:async#_setErrorObject","dart:async#_thenAwait","dart:convert#_computeKeys","dart:convert#_convert","dart:convert#_convertGeneral","dart:convert#_decodeRecursive","dart:convert#_fillBuffer","dart:convert#_process","dart:convert#_upgrade","dart:convert#_writeReplacementCharacter","dart:convert#_writeSurrogate","dart:core#_computeScheme","dart:core#_enumToString","dart:core#_errorExplanation","dart:core#_errorName","dart:core#_text","decode","decodeGeneral","decoder","elementAt","end","find","fold","forEach","fragment","handleError","handleSearch","hasAuthority","hasFragment","hasPort","hasQuery","hashCode","hideSuggestions","host","indexOf","initialize","internalComputeHashCode","internalFindBucketIndex","internalGet","invalidValue","isAbsolute","isNegative","iterator","join","keys","last","length","listBox","matchTypeError","matchesErrorTest","moreResults","moveNext","normalize","package:dartdoc/src/search.dart#_scope","path","port","query","queryParameters","registerBinaryCallback","replace","replaceRange","run","runBinary","runGuarded","runUnary","runtimeType","scheme","searchResults","setEventListeners","showSearchResultPage","sort","stackTrace","startsWith","sublist","substring","then","toString","updateSuggestions","uri","userInfo","_Universe._canonicalRecipeOfQuestion","_Universe._canonicalRecipeOfFutureOr","_Universe._canonicalRecipeOfBinding","_Universe._canonicalRecipeOfGenericFunction","isBottomType","Error._stringToSafeString","_Utf8Encoder.withBufferSize","_Utf8Encoder._createBuffer","-","ElementExtension|get#acceptsInput","JSObjectUnsafeUtilExtension|[]","JSObjectUnsafeUtilExtension|getProperty","JSPromiseToFuture|get#toDart","_","_asCheck","_asyncCompleteError","_callMethodUnchecked0","_callMethodUnchecked1","_callMethodUnchecked2","_canonicalRecipeOfBinding","_canonicalRecipeOfFunction","_canonicalRecipeOfFunctionParameters","_canonicalRecipeOfFutureOr","_canonicalRecipeOfGenericFunction","_canonicalRecipeOfInterface","_canonicalRecipeOfQuestion","_canonicalRecipeOfRecord","_chainSource","_cloneResult","_combineSurrogatePair","_completeError","_completeErrorObject","_computeIdentityHashCodeProperty","_computeUri","_containsTableEntry","_createBindingRti","_createBuffer","_createFunctionRti","_createGenericFunctionParameterRti","_createInterfaceRti","_createLength","_createRecordRti","_createTerminalRti","_createTimer","_equalFields","_error","_errorTest","_findRule","_future","_getBindCache","_getBindingArguments","_getBindingBase","_getBucket","_getCachedRuntimeType","_getEvalCache","_getFunctionParameters","_getFutureOrArgument","_getGenericFunctionBase","_getGenericFunctionBounds","_getGenericFunctionParameterIndex","_getInterfaceName","_getInterfaceTypeArguments","_getIsSubtypeCache","_getKind","_getNamed","_getOptionalPositional","_getPrimary","_getProperty","_getQuestionArgument","_getRecordFields","_getRecordPartialShapeTag","_getRequiredPositional","_getReturnType","_getRti","_getRuntimeTypeOfArrayAsRti","_getSpecializedTestResource","_getTableBucket","_getTableCell","_hasError","_hasProperty","_hasTimer","_initializeText","_installRti","_isChained","_isCheck","_isClosure","_isComplete","_isDartObject","_isDotAll","_isFile","_isGeneralDelimiter","_isHttp","_isHttps","_isLeadSurrogate","_isMultiLine","_isPackage","_isRegNameChar","_isSchemeCharacter","_isTrailSurrogate","_isUnicode","_isUnreservedChar","_isUpgraded","_isZoneIDChar","_keys","_keysFromIndex","_lookupAnyRti","_lookupDynamicRti","_lookupErasedRti","_lookupFutureRti","_lookupNeverRti","_lookupVoidRti","_mayAddListener","_mayComplete","_name","_newFutureWithSameType","_newJavaScriptObject","_objectToString","_ofArray","_onError","_onValue","_parseRecipe","_processed","_recipeJoin","_removeListeners","_sameShape","_scheduleImmediate","_setAsCheckFunction","_setBindCache","_setCachedRuntimeType","_setCanonicalRecipe","_setChained","_setErrorObject","_setEvalCache","_setIsTestFunction","_setKind","_setNamed","_setOptionalPositional","_setPrecomputed1","_setPrimary","_setPropertyUnchecked","_setRequiredPositional","_setRest","_setSpecializedTestResource","_setValue","_shapeTag","_startsWithData","_stringToSafeString","_target","_theUniverse","_trySetStackTrace","_upgradedMap","_whenCompleteAction","_writeAuthority","_writeOne","_writeString","_zone","allocate","allocateGrowable","arrayAt","arrayConcat","arrayLength","arraySplice","asBool","asBoolOrNull","asInt","asRti","asRtiOrNull","asString","as_Type","castFrom","charCodeAt","checkGrowable","checkMutable","checkString","codeUnits","collectNamed","compare","constructorNameFallback","convertSingle","decodeQueryComponent","defineProperty","dispatchRecordExtension","dispatchRecordIndexability","dispatchRecordInterceptor","dispatchRecordProto","encode","encodeQueryComponent","environment","erasedTypes","evalCache","evalTypeVariable","fromCharCode","fromJson","fromList","fromMap","fromMessage","future","getDispatchProperty","getIndex","getLength","getProperty","getRuntimeTypeOfInterceptorNotArray","group","handleNamedGroup","handleOptionalGroup","handleStartRecord","handleUncaughtError","handleValue","handleWhenComplete","handlesComplete","handlesValue","hasErrorCallback","hasErrorTest","hasMatch","hasScheme","hash2","hash3","hash4","identityHashCode","instanceTypeName","interceptorFieldName","interceptorsByTag","internalSet","isArray","isDigit","isEmpty","isNaN","isNotEmpty","isUnicode","jsHasOwnProperty","jsonDecode","jsonEncodeNative","leafTags","listToString","lookupSupertype","lookupTypeVariable","map","mapGet","mapSet","markFixedList","markGrowable","notSimple","objectKeys","objectToHumanReadableString","of","parseHexByte","pop","position","printToConsole","propertyGet","provokeCallErrorOnNull","provokeCallErrorOnUndefined","provokePropertyErrorOnNull","provokePropertyErrorOnUndefined","push","pushStackFrame","receiverFieldName","recipe","removeSelectedElement","replaceAllMapped","scheduleMicrotask","setToString","sharedEmptyArray","shouldChain","showEnterMessage","showSuggestions","splitMapJoin","stack","start","staticInteropGlobalContext","stringConcatUnchecked","stringIndexOf","stringIndexOfStringUnchecked","stringReplaceRangeUnchecked","stringSafeToString","stringSplit","suggestionElements","suggestionsInfo","thenAwait","toGenericFunctionParameter","toList","toLowerCase","toUpperCase","tryStringifyException","typeRules","typed","universe","unmangleGlobalNameIfPreservedAnyways","unmodifiable","values","withBufferSize","write","writeAll","writeCharCode","zone"], + "mappings": "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", + "x_org_dartlang_dart2js": { + "minified_names": { + "global": "A,925,B,982,C,869,D,167,E,1191,F,802,G,293,H,814,I,885,J,917,K,129,L,1142,M,821,N,888,O,1196,P,928,Q,1134,R,132,S,116,T,808,U,801,V,813,W,841,X,868,Y,877,Z,922,a,1165,a0,957,a1,1046,a2,115,a3,1023,a4,347,a5,46,a6,10,a7,822,a8,863,a9,872,aA,114,aB,229,aC,38,aD,809,aE,817,aF,827,aG,828,aH,829,aI,830,aJ,836,aK,837,aL,858,aM,859,aN,861,aO,867,aP,870,aQ,871,aR,881,aS,882,aT,890,aU,901,aV,902,aW,903,aX,906,aY,908,aZ,914,a_,1121,aa,880,ab,891,ac,1200,ad,92,ae,100,af,124,ag,1148,ah,230,ai,1199,aj,45,ak,812,al,801,am,886,an,900,ao,920,ap,934,aq,936,ar,938,as,967,at,1089,au,1037,av,1078,aw,107,ax,80,ay,53,az,48,b,34,b0,302,b1,300,b2,952,b3,958,b4,961,b5,983,b6,984,b7,985,b8,986,b9,987,bA,860,bB,44,bC,876,bD,879,bE,893,bF,894,bG,895,bH,896,bI,897,bJ,898,bK,899,bL,904,bM,905,bN,91,bO,912,bP,913,bQ,49,bR,1119,bS,918,bT,301,bU,935,bV,937,bW,939,bX,1184,bY,950,bZ,951,b_,921,ba,995,bb,999,bc,1013,bd,1062,be,1065,bf,1132,bg,1001,bh,1002,bi,1081,bj,1011,bk,1054,bl,1055,bm,1117,bn,375,bo,800,bp,292,bq,801,br,820,bs,825,bt,826,bu,303,bv,831,bw,304,bx,845,by,852,bz,857,c,832,c0,960,c1,963,c2,965,c3,978,c4,979,c5,980,c6,981,c7,988,c8,989,c9,994,cA,892,cB,909,cC,910,cD,1183,cE,919,cF,923,cG,926,cH,929,cI,1189,cJ,801,cK,940,cL,941,cM,942,cN,943,cO,944,cP,945,cQ,946,cR,947,cS,949,cT,953,cU,954,cV,955,cW,956,cX,962,cY,964,cZ,968,c_,959,ca,996,cb,997,cc,1000,cd,261,ce,99,cf,1149,cg,810,ch,815,ci,816,cj,823,ck,824,cl,833,cm,834,cn,1193,co,842,cp,843,cq,844,cr,847,cs,847,ct,848,cu,864,cv,865,cw,873,cx,874,cy,878,cz,889,d,924,d0,970,d1,971,d2,972,d3,973,d4,974,d5,975,d6,976,d7,976,d8,977,d9,1022,dA,1029,dB,1041,dC,1042,dD,1045,dE,779,dF,1093,dG,1099,dH,1107,dI,1128,dJ,12,dK,1161,dL,1161,dM,1161,dN,749,dO,749,dP,1163,dQ,1164,dR,1184,dS,1167,dT,75,dU,349,dV,1187,dW,1187,dX,40,dY,799,dZ,1127,d_,969,da,990,db,991,dc,355,dd,992,de,993,df,993,dg,993,dh,993,di,236,dj,998,dk,126,dl,1131,dm,1003,dn,1004,dp,1005,dq,1006,dr,1007,ds,1008,dt,1009,du,1173,dv,1010,dw,1012,dx,1012,dy,268,dz,1029,e,884,e0,1168,e1,866,e2,801,e3,1034,e4,1171,e5,1118,e6,916,e7,1039,e8,1140,e9,1016,eA,781,eB,1094,eC,807,eD,1209,eE,1017,eF,1020,eG,1047,eH,1090,eI,1192,eJ,1143,eK,1170,eL,1136,eM,1056,eN,1086,eO,1137,eP,1043,eQ,1186,eR,1193,eS,1204,eT,801,eU,1053,eV,801,eW,1108,eX,1146,eY,1190,eZ,801,e_,1210,ea,801,eb,1057,ec,1061,ed,1049,ee,1035,ef,1071,eg,1080,eh,1103,ei,156,ej,157,ek,162,el,367,em,117,en,150,eo,1052,ep,257,eq,121,er,1100,es,15,et,61,eu,1150,ev,1,ew,1162,ex,16,ey,0,ez,37,f,883,f0,1185,f1,1195,f2,1122,f3,1120,f4,1123,f5,1157,f6,1184,f7,1201,f8,1058,f9,1059,fA,164,fB,346,fC,254,fD,86,fE,372,fF,244,fG,1111,fH,1115,fI,112,fJ,31,fK,1152,fL,1181,fM,49,fN,74,fO,1188,fP,19,fQ,1175,fR,1176,fS,1177,fT,1178,fU,1179,fV,1180,fW,1205,fX,1206,fY,1207,fZ,1208,f_,1087,fa,1063,fb,1064,fc,1116,fd,1033,fe,1036,ff,1051,fg,1076,fh,1079,fi,1085,fj,1104,fk,1105,fl,1182,fm,227,fn,163,fo,240,fp,242,fq,241,fr,239,fs,141,ft,166,fu,224,fv,155,fw,149,fx,371,fy,237,fz,258,h,927,h0,1077,h1,1106,h2,1031,h3,1032,h4,1092,h5,803,h6,804,h7,805,h8,806,h9,811,hA,1025,hB,801,hC,1159,hD,1135,hE,1197,hF,1209,hG,1038,hH,1126,hI,1098,hJ,930,hK,931,hL,932,hM,933,hN,1088,hO,1203,hP,1044,hQ,1095,hR,1096,hS,1097,hT,1154,hU,1155,hV,1156,hW,1158,hX,1160,hY,1202,hZ,801,h_,1050,ha,1133,hb,1166,hc,801,hd,1021,he,1124,hf,1125,hg,1144,hh,1147,hi,1102,hj,1101,hk,1198,hl,838,hm,839,hn,948,ho,849,hp,850,hq,851,hr,1174,hs,854,ht,1169,hu,855,hv,1141,hw,1153,hx,1172,hy,1019,hz,1145,i,21,i0,1026,i1,1027,i2,1028,i3,1060,i4,1109,i5,1110,i6,1138,i7,1139,i8,1015,i9,1018,iA,243,iB,348,iC,93,iD,356,iE,39,iF,90,iG,139,iH,134,iI,140,iJ,135,iK,370,iL,369,iM,133,iN,130,iO,118,iP,246,iQ,247,iR,1048,iS,51,iT,144,iU,225,iV,138,iW,158,iX,145,iY,228,iZ,161,i_,1014,ia,1040,ib,1066,ic,1067,id,1069,ie,1070,ig,1072,ih,1073,ii,1074,ij,1075,ik,1082,il,1083,im,1084,io,1091,ip,1024,iq,1068,ir,1130,is,151,it,152,iu,153,iv,154,iw,159,ix,160,iy,146,iz,148,j,911,j0,147,j1,307,j2,366,j3,252,j4,267,j5,165,j6,251,j7,260,j8,259,j9,255,jA,69,jB,379,jC,76,jD,373,jE,85,jF,1194,jG,83,jH,87,jI,374,jJ,36,jK,818,jL,819,jM,781,jN,840,jO,915,jP,801,jQ,1175,jR,1176,jS,1177,jT,1178,jU,1179,jV,1180,jW,1205,jX,1206,jY,1207,jZ,1208,j_,137,ja,253,jb,109,jc,108,jd,168,je,47,jf,33,jg,1112,jh,1113,ji,1114,jj,54,jk,81,jl,32,jm,127,jn,50,jo,1151,jp,68,jq,120,jr,119,js,354,jt,354,ju,79,jv,77,jw,78,jx,113,jy,20,jz,222,k,111,k0,1050,k1,1077,k2,1106,k3,1031,k4,1032,k5,1092,k6,799,k7,800,k_,1094,l,835,m,875,n,862,o,856,p,1030,q,1129,r,853,t,907,u,223,v,966,w,846,x,35,y,801,z,887", + "instance": "A,1213,B,1307,C,1245,D,1278,E,1211,F,1282,G,1306,H,1226,I,1319,J,1330,K,1333,L,1261,M,1233,N,1224,O,1225,P,1303,R,1326,S,1252,T,1257,U,1258,V,1274,W,1218,X,1219,Y,1293,Z,1304,a0,1214,a1,1325,a2,1247,a3,1249,a4,1253,a5,1264,a6,1272,a7,1273,a8,1242,a9,1243,aA,1256,aB,1312,aC,1228,aD,1260,aE,1244,aF,1220,aG,1221,aH,1223,aI,1280,aJ,1283,aK,1285,aL,1286,aM,1287,aN,1288,aO,1289,aP,1293,aQ,1295,aR,1296,aS,1299,aT,1302,aU,1309,aV,1313,aW,1317,aX,1334,aY,1336,aZ,1337,a_,1314,aa,1229,ab,1268,ac,1222,ad,1223,ae,1285,af,1291,ag,1292,ah,1294,ai,1298,aj,1300,ak,1315,al,1316,am,1318,an,1323,ao,1334,ap,1234,aq,1248,ar,1251,au,1255,av,1271,aw,1238,az,1240,b0,1217,b1,1217,b2,1215,b3,1327,b4,1328,b5,1329,b6,1332,b7,1335,b8,801,b9,1250,bA,1285,bB,1285,bC,1297,bD,1308,bE,1311,bF,1317,bG,1320,bH,1320,bI,1321,bJ,1321,bK,1322,bL,1323,bM,1336,bN,1217,b_,1338,ba,1254,bb,1235,bc,1270,bd,1262,be,1263,bf,1236,bg,1237,bh,1265,bi,1239,bj,1241,bk,1266,bl,1227,bm,1259,bn,1230,bo,1231,bp,1232,bq,1267,br,1269,bs,1216,bt,1275,bu,1276,bv,1277,bw,1279,bx,1281,by,1281,bz,1284,gG,1306,gJ,1330,gM,1233,gP,1303,gR,1326,gV,1274,gZ,1304,ga1,1325,ga6,1272,ga7,1273,gaB,1312,gaJ,1283,gaL,1286,gaM,1287,gaN,1288,gaO,1289,gaS,1299,gaU,1309,gaV,1313,gaZ,1337,ga_,1314,gag,1292,gai,1298,gaj,1300,gak,1315,gal,1316,gbN,1217,gb_,1338,gbi,1239,gbj,1241,gbv,1277,gbw,1279,gl,1305,gn,1126,gp,1290,gq,1324,gv,1301,h,1335,i,1333,j,1246,k,1212,l,1305,m,1310,n,1126,p,1290,q,1324,sl,1305,t,1331,u,1331,v,1301" + }, + "frames": "2xHAmJeggDyB;oCAKAAyB;eAKCbG;kBACeDE;gEAIlBAE;KAGOFO;iGAaA9+CAA8CgBCeANKiEuC,A,I;qMATrChEAAmB0BDeAVWiEoC,A,AAUvC26CkC,A;6QGpJS4DIAsCwB6CyB,A;oCAwhBb7GW;+tEEpkBT1sByC;QAEFuiByC;sYI2+BwBviBQ;ipBR/8BbyzBuB;uEAmCLzGG;oQAyLqBtJqC;sfAwJrB2LiB;cAAAAa;0CAuBW1CS;gJAYb0CiB;6FAqBFuDAARF3CiB,A;+FAkBWYW;8lBA0tBoBrXoB;2KAoCnBAwB;gBASAAuB;4DA8CAxZqC;mvBAuHdAwC;oTAsPEAmR;iZAiNAAW;sfA4DyBAW;0WAkCJAW;eAQ1BAkC;6BAKuBuaoD;OAChBvaU;0DAOCqzBI;cAIgBrzBwC;2JAUjBAU;0EA8BmBAW;sCAGtBAc;4JAsEKiuBQ;oCAEDDK;AACEAK;wKA+DRhuBAYpqE8BAgE,A;keZq2ExBAkC;cAKAA0D;y4CA0TAA4D;6sBA+F6BsvBuC;AACHoCmC;yEAuIzB5/CAWh5ENCMAlD4B+4Cc,A,M;qDXw9ElB9qBiD;yCACKywBW;+KC3xFTUI;YACc7+CAAsE3BDAF3IAy6CyB,kF,A;QEqE2Bx6CAAuEpB26CE,A;OAtEWkEI;uBAKK5+CAAzCJg9CkB,AAAZ4BI,A;6CA+CMAI;YACkB7+CAAyD/BDAF3IAy6CyB,kF,A;QEkF+Bx6CAA0DxB26CE,A;OAzDWkEI;uBAGK5+CAApDJg9CkB,AAAZ4BS,A;4EA0EE7+CAA+BTDAF3IAy6CyB,kF,A;QE4GSx6CAAgCF26CE,A;sDAvBEz6CAA2BTHAFhJAy6CsB,A,0BEgJAz6CkF,A;QA3BSGAA4BFy6CE,A;+DAfoCiDqB;UAElC19CAAYTHAFhJAy6CsB,A,0BEgJAz6CkF,A;QAZSGAAaFy6CE,A;gEAMP56CAFvJAy6CyB,6B;yJEmK2CoDoB;gLA0CjCXmB;0KAaFl9CAF1NRy6CyB,mG;2DEwO2BqE4D;wTAqFXp+Cc;8fczRPIAAnGFu/CqB,A;2IA+QPtTADdIpfgD,A;WCcJqU0B;AAC+Diea;AAA7DuBQ;oBACAAI;iBACmB/VQ;AAErB+VQ;g6CE+lCuC3PiB;kiBNnwChBoEO;AAFA0DG;gBAGf7BgB;AAD0CjFAA6JlC6GM,A;gBA/ECtGAAxBsBqGG,A;6BA0BECG;uCAsJzBEG;sBA4JMnBmB;kEAiFPrFAA7ZwBqGG,A;mEAsabCG;sEAUAAG;sEAUWxGG;uDAe3BDAAvYM2GK,A;YA2YGpHAA/XHkHG,A;uBAiYQnHG;6EAiBHoBAAxYIJO,A;AAyYJGG;sEAUIGAA/XT6FG,A;uBAsYiC9GG;6EAqB5BGQ;AACDsGQ;uBAODvGAAzZH4GG,A;gFAsaI1GAA5ZJyGG,A;sBAgaUNO;uIAmBNEkB;yBAGDKI;mFAiBCLkB;0BAImBFO;AACEAS;AACtBOM;sFAyB0B9FsB;AASANK;iBASbDK;8CAYiB4FAAjZRtrBc,A;AAkZrBsqBM;AAIAJM;AAIADK;sHA4CF8BM;yDAaZhFK;sEAuBFEG;cAIOwIoB;oSAoFL1ImD;uBAQF+De;uDAiBcUI;uBAENt3CQApgBU42CoB,A;mEA6kBer1CAEp+BtB0wCqB,A;aFo+BsB1wCAEp+BtB0wCW,A;CFq+BKzwCgBAlFlBqxCiB,A;uCAsFcmFO;GAELuDoB;OAAwBrJO;wBAOMxwCAAI5BoqBO,A;AAJF+kBG;gBAA8BnvCAAI5BoqBAAkCbAAAAAAAACM0pBgB,A,A,A,A;sDAzBS33CQAtpBoB+4Cc,A;mCA+pBtB/0CQAvpBS+0CgB,A;mBA0pBf/4CMAlqB4B+4CkB,A;oBAuqBV52CMA1nBH42CoB,A;+FA8rBPrFAA1gCwBqGG,A;sOAkiCnBxGAAh+BJ2GG,A;IAi+BM1GiB;AAYdiFU;sEAgBCt0CQAiCmB8vCAAxgCZiGI,A,AAygCMlGI,A;+DArBXeC;AADPiDK;yUAsEOvHC;AADPgHK;wEAWasBc;gDAeNhEI;AADOhBAAvkCFiGO,A;mDAilCF1FG;iBAKVYG;8GAsBOwIoB;YACGpJG;iBAKVYG;wFAoBWHU;6DAaWAmB;2DAQR+GuB;gIA0CEAuB;qCAgBT/GC;AAAa5BAAhtCR6GS,A;MAitC4BjBiB;AAApChEI;suCAuJmB4EQ;qBAGDKO;sCAYA/FAAt4CViGM,A;AAu4CKlGG;qCAMG2FQ;AACFmHkB;AACEnHU;gEAOGKO;gBAELEI;yGAgBMPQ;8JAgBFKO;AACjB1vCAA6kEMopCAA9lHwBqGG,A,A;sFA0hDlB5FAA96CCNO,A;AA+6CeXM;AACQgBM;AAGPyFW;AACO/FM;AAGP+FW;AACNhGM;AACPgGQ;oDAWVKQ;oDAaEAQ;4DAaFHM;uBAKEGe;AAIFEI;kGA0BAxGAA7mDwBqGG,A;gIAsnDVhGAAphDbiGG,A;cAshDStGAAxnDcqGG,A;uEAioDV5GAA1hDb6GS,A;mBA+hDIzGAApkDJ2GI,A;GA6kDM1GG;4HAgBOJAAziDb4GM,A;AA0iDG3GG;eAUDCAA1iDIOG,A;gDAkjDF6NuB;yDAsLPhPAAHK6OG,S;uBAKP7OAALO6OG,I;oCAWDhGO;+DAKOxBI;AACPzDgB;oGAiBOiLM;wBAqCAhGM;aAeHiDS;AADPhDe;oBAGFrE0B;AACHsHW;gCASSxLG;cAGV8Ea;AAEayGW;oBAETrHuB;AACHsHW;kCAKS7LG;cAGV8EgB;AAEuB5aAAzyDfodI,A;AA0yDKsEW;gCAGX9KAA79D6BqGQ,A;AA89DdlHQ;AAKhB4LW;oBAyCHhHS;AACAOQ;qBAuGewGW;AADPhDW;oBAGsBnJAAIpBkHAAl9DPtrBsB,A,AAm9DHgqBM,AACALM,Y;AANG/CAApGA4JC,AAAOjDa,A;qBAqHKgDS;AAFNpNAA7DKtUAAx5DJodW,A,A;AAs9DFsBW;oCAGL3GAAvHA4JC,AAAOjDa,A;0CAqIO9HAAvpEgBqGQ,A;2DA4pEZ5GAArjEX6GI,A;uCA2jEATAA1/DPtrBsB,A;AA2/DHgqBM;AACAIK;CACATM;6BAWe4GS;AAFNvNAApGKnUAA15DJodW,A,A;AA+/DFsBW;oCAGL3GAAhKA4JC,AAAOjDa,A;wCA8KO9HG;kDAIV6Ce;qCAKGgDAAjiEPtrBsB,A;AAkiEHgqBM;AACAIK;CACATM;2BAOe4GsB;AADPhDW;oBAMVvJAASYsHAAzjEPtrBsB,A,AA0jEHgqBO,AACAIM,AACATM,Y;AAfG/CAAnMA4JC,AAAOjDa,A;8BAwNM7BQ;sCAEIKG;AACCldAA7jEXodI,A;kCAskEMPQ;qCAGmBFO;AACZIwB;AAKPGK;AACKldAAhlEXodI,A;uCA2mED/IAAjBOwIU,mB;AAmBD6EG;AADPhDW;oBAMVtJAAUYqHAApoEPtrBsB,A,AAqoEHgqBM,AACAIM,AACAGS,AACgBmBW,AAEdvBI,AAA6BqBK,AAE/B7BM,Y;AArBG/CAA7QA4JC,AAAOjDa,A;yCA4TN9HAA90E6BqGW,A;AA+0ErBjHAAjwEFkHG,A;AAkwEUNG;AAChB7GkB;QAIK/BGApBPhUAAjpEQoduB,A,A;AAuqEKsEG;AADPhDW;oBAMV1JAAUYyHAA9rEPtrBsB,A,AA+rEHgqBM,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAAvUA4JC,AAAOjDa,A;qBA8WDnKoC;AAEMmNC;AADPhDW;oBAMVpJAAUYmHAAzuEPtrBsB,A,AA0uEHgqBO,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAAlXA4JC,AAAOjDa,A;qBAicDzKAArDbCiB,AADIlUO,AACJkUAAM6CkDM,AAGPyFW,AACO/FM,AAGP+FW,AACNhGM,AACPgGsB,oF,AAjBtBtCY,A;AAyDgBmHG;AADPhDW;oBAMVxJAAUYuHAA5zEPtrBsB,A,AA6zEHgqBO,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAArcA4JC,AAAOjDa,A;uBA0eDtKSAZTpUAAh0EUodwB,A,A;AA80EKsEC;AADPhDW;sCAGL3GAA9eA4JC,AAAOjDa,A;sDAmgBQ7BQ;kCAICKQ;AACXtGAA1hFyBqGe,A;uEAojFvBRAA54EPtrBsB,A;AA64EHgqBO;AACAIM;AACAGK;CACAZM;6FA0KoBgIM;AACJUU;kBAGTjGkB;4LAcHoFW;cAIAAW;cAIAAO;MAESgCI;AAAkBnGG;AAAqB2DU;cAKhDQO;AAEEyBM;AAA2BOG;AAA3BPAAgYDnHU,A;cA3XD0FO;AAAsBnJM;AAAiBmLW;cAIvChCO;AAAsBpJM;AAAkBoLW;eAIxChCO;AAAsBhJM;AAAegLW;cAIrC/BAA0ERDQ,AAAYPS,AACevFQ,A;iEA/DX8HG;AACRhCO;eAIcnEG;AAAqB2DU;AAC/BlRK;iBAMI0TG;AACRhCO;eAIcnEG;AAAqB2DU;AAC/BlRK;cAMJ0RW;AACACAAqCRDQ,AAAYPS,AACevFQ,A;sCA9BnB+FAA6BRDQ,AAAYPS,AACevFQ,A;cA1BnB4CAAmMSvaAA2CE4XY,AAAmBsFI,MACtBuCI,AAAkBnGM,AACPvBY,A,AA5C3B0FU,AACAAW,A;eAjMQCAAqBRDQ,AAAYPS,AACevFQ,A;eAlBnB2CAAiMS5BAA4CEdY,AAAmBsFI,MACjBuCI,AAAkBnGM,AACZvBY,A,AA7C3B0FU,AACAAW,A;cA/LYjDAAwMKkEmB,AAMjBjBO,AAAmBpQkB,AACnBoQW,AACACAAnMADQ,AAAYPS,AACevFQ,A,M;wCANhBsFU;aACGwCI;AAAkBnGK;sDAWrBjBkB;uCAIXoFU;uEAaWpFkB;0FAIyCsDoB;kBAM7BtOmB;SAKjBoSM;AACAnGO;AAFQGAA15BC/HAA5+DsBqGU,A,AA8+DjBjHAAh6DNkHG,A,UAm6DazGAA/6Db2GG,A,AAk7DYoEI,+C;AAg5BxBmBO;AAEYhEkB;AAOZgEU;4BAMqBgCiB;AAEZxCQ;sBAGTQO;4BAE4BnEc;AAChB5HAA35FuBqGY,A;AA65F/B0FO;YAMI1RK;cAMJ0RO;+BA+BKRa;AAnBYwC2B;uCAwBIxCU;aAIbAU;cAIRQU;WAIJAU;YAKKRU;iBAGIAwB;AAC0BgBmB;AACbAK;UACc3EM;AACmB/BAAlvFlBtrBc,A;AAmvFfsqBM;AAIAJM;AAIADK;AACpBuHO;2BAWAAO;OAIWvFY;kFA0CL+Ec;UAERQO;AAAsBjJM;AAAgBiLY;iBAItChCO;AAAsBrJM;AAAcqLY;0EAOnB7HgB;AAAmBsFI;MACtBuCI;AAAkBnGM;AACPvBY;4DAmBbkGK;8FAUMtGQ;+BAEAFI;sBAOAEQ;gCAGAFI;wBAOL/FAAvmGsBqGG,A;2BAymGRjHAA3hGfkHE,A;IA4hGYnHM;AACP8GQ;gBAEDKK;SAIElHAAniGNkHM,A;AAoiGDtGAAlnGwBqGQ,A;wFAynGbvGU;AACPmGQ;QAEDKK;qEA0CDvG8B;AACGqGW;mCAGX2EW;2FA2BO/KAArsGuBqGG,A;0CA4sGnChKAA0Z0B2DAAtmHSqGO,A,A;iCAktGlBCE;AADH1GAAjlGFyGW,A;YAslGArGAAttGuBqG4B,A;2BA6tGM5GAAtnG7B6GK,A;iEA8nGoB7GAA9nGpB6GS,A;mCAqoGgB7GAAroGhB6GU,A;8EAopGejGAAzpGfiGS,A;yBAmqGwB7GAA9pGxB6GM,A;kFA6qGwBjGAAlrGxBiGK,A;+IA0sGI3GM;AACAAM;AACGsGgB;AACAAQ;SAGkBDwB;AACAAwB;oBAGjBMO;AACAAI;4DAShB5GAA1sGQ4GM,A;AA4sGR5GAA5sGQ4GK,A;0PA8uGM7FAAxvGN6FQ,A;AAyvGM7FAAzvGN6FO,A;aA8vGsB9GO;AACAAM;AAEQgBM;AAGAAM;AAGPyFW;AACAAQ;yBAKO/FM;AAGAAM;AAGP+FW;AACAAQ;wCAOAFI;YACbOa;6BAOaPI;YACbOe;6BAUfPM;YAEeOa;YAMOrGM;AACAAM;AACPgGW;AACAAQ;0BAIFOS;0BAGEAI;2BAGILM;qCAKcJM;sBAERAM;YACbOe;+BAMVHM;wDAaMtGAAx4GH2GM,A;AAy4GG3GAAz4GH2GQ,A;WAu5GOxHAApnDL6OG,I;2CAunDCrHI;YAIMmEI;uBAEH1EQ;AACWtUoBA2LI0Ta,AAAjBkHK,A;+BAzLO/FK;wBAIT1GK;gBAaFAW;AACAAK;4BAgBImGQ;2BAUAKO;AACAAO;2CA+CAhGM;AACAAM;AACA2FgB;AACAAQ;aAEF1FAA9+GFiGM,A;AA++GEjGAA/+GFiGG,A;oCAm/GMFO;AACAAO;iCASPtGAArlHwBqG+B,A;oCAylHQ5GAAl/G/B6GI,A;wBAu/GDtGAA9lHwBqGG,A;qDAgpH1B8E4B;AACElFQ;oBAEEOI;4CAWoBnBa;AAAjBkHI;krBQhvHZ3NS;4BA6BRrkBU;wBA6GOASApCS0kBAAAA1kByB,A,a;uCAqDC8tBE;uMA+DE9tBoB;AAAAyqBW;8HAkCPpWM;6IC1TIAM;0DAYV0WQ;2BAMJAsB;OAEgBxIY;4CAwkBFsEkB;AACIxDI;wBAGhBZKAyKwBziBQ,A;AAxKRwZ8D;+CAehBoQiB;2DAhBAnHAAyKwBziBU,A;AAxKRwZK;+CAiCXsYgB;uFA2JkBtLqB;gCAGYjCG;AACxBiKM;sHAiCcIG;2CACDvDK;0CAIbmDM;mDAuFIGG;uLAkBTsDwB;wBAMgBjLe;AACFqCsB;AACZ/FyB;mDAcI+FwB;iBAEVoBiB;AAGAZmB;uQGv8BQNU;iBAUiBvpBqB;qCAKjBupBU;sFAoBcvpBiB;yFC6iF5BAqB;OAAAAU;whDEtmEuCAwC;kBAQ9BAuC;SE9faofkB1BksBMpfgC,A;U0BjsBeqUM;gBAAAAS;sDC0E5BrUkB;sFAoBNshBG;icClCAthBWAwBQmpBAAAANoB,A,A;wGCGuC7oBAd6wCjBkkBoB,A;6zCD1pCxBhLgB;+XAgIwB6PAAN9B2HIdxPwB6CuB,A,A;6Sc4Y3BvzBiC;kDAkEU2vBgB;AAEDxEO;0BAGFAO;oBAGEAU;uFA0JoB4DmBFtkBcxCK,A;cE6kBnCYkB;qEAIR4GAAzMgBtGwC,A;qYTrdX7CASyMSgIAhBgPX3CiB,A,A;QOvbAnHO;6zB4BuxBCgLmB;8EAwBc9zBa;qBAGpB8zB6B;qBAMKxSG;2sBChsBa2Ne;+DAGACoB;wDAQAC2B;qIC2rBFxE+H;ksBAAAAS;YAAAAI;gzBAyOT3qB0B;CAYG2wBqF;UAAAAuEAigBAzXQ,kF;KAjgBAyXyD;OAAAA2C;0UAqPC3wBApBiBwBkkBkB,A;siCoBsHnBlkBApBtHmBkkB4B,A;mmBoB6vBvBiPmB;0CAOI1lBiC;gMAwCPzNiD;+GAeIAc;2GASX6zBArB/qDJzIO,A;mBqBmrDapDqC;+BAGIhoBc;4CAHJgoBI;uIAqBGhoBc;AAAJ6zBoB;2FAYLvSG;gMA4BQthBc;qBAEgBmzB2B;wDAS3BUArB3vDJzIO,A;mBqB+vDa1DoC;+BAGI1nBc;4CAQJonBqC;wKAYkB+L8B;AACfnzBc;AAAJ6zBoB;uFAUiBV4B;AAGtB7RG;kMAeAqGuC;uFAQyBwLkB;sRAgDrBxDa;sFAeAAY;4PA0CE3vBwB;wCAuBNshBG;yNAsCHwGoC;OAIY2FiC;uCAIA2Fa;mEAYFpzBApB1oCuBkkB4B,A;oHoB0pCvBlkBApB1pCuBkkBsB,A;4coB4uCDkDyC;mLAkBpBpnBc;AAAJ6zBa;CAAAAArBzmEZzIyB,A;+DqBsnEO9JG;6NA2EQuOAnCzgEOFa,A;YmC2gELAY;mOAsCDA8B;kEAYLAQ;sBAA4CAiB;ylBAsfhDjSK;mDAtBgC8OAHh5FdxsBW,A;kRGs6FlB0dS;2nBA2oBQ6Ee;ukQEv2GCviBAsBwnBKAAzC1kCnBAAArBsB8tBAAAA9tBiC,A,A,yB,A;iOoBqDlB4tBqCAIoBrLW,8P;OAJpBqLAAUWrLoB,gB;ySCjHMIO;AAAT4PM;AAAArEyC;AACUvLC;AAATuL0C;AAEJvLC;AAATuL2C;AAYC5LK;AADAKC;AADLuLc;0EAwE0D4EoB;AACbCY;wBAGPRE;AAAArEO;AAAOAS;AAASAkB;WA2SnC9pCAqBggDau+BqB,AAAT4PM,AAAArEkC,A;mBrB//CnBtL8B;AACUDC;AAAVuLgC;AAEoB7pCAqBy5DSs+BG,AAATuLgC,A;ArBx5DVvLC;AAAVuLsC;kCAE8BiFiB;AACvBxQoB;mBAIct+BAqBi5DQs+BG,AAATuLgC,A;ArBh5DRvLC;AAAVuL0C;mCADOvLoB;gBAOoCkNAPhBzBFa,A;AOiBoBprCAqBm2CCo+BG,AAATuLsC,A;ArBl2CpBvLC;AAAVuLuC;AACsBzpCAAwEpBDAqBs+K6Bm+BG,AAATuLkD,A,A;ArB9iLtBtLwB;AAAsBn+BAAwEqBypCQ,A;sBAtEpCvLiB;AAGFC+B;kBAOAA2B;gDAYPl+BAA4BwDNAqBs7C5Bu+BG,AAATuL+B,A,ArBr7CXvLC,AAAVuL+B,AACYvpCAqB4uCwBg+BG,AAATuL2D,A,ArB1uCfvLC,AAAVuLoC,AACYtpCAqBw8CmB+9BG,AAATuL6B,A,ArBv8CpBtL6C,AADFDiB,AAHFAiB,A;sCAlB0CuLe;AAErByBY;gCAMbhNsB;AAESAiB;gCAiB2BkPAPhbrCOO,A;2gBSjDsBzPO;AAAT4PM;AAAArEkD;AACMvLC;AAATuLqD;AACavLC;AAATuLmD;+BAOPtLyC;AACDA6B;uBAIF2PM;AAAArES;AAASAM;kBAKSvLyC;iCASHAmC;gCASCAG;AAATuLiD;yBAKiBvLqC;AACRAC;AAATuL0D;OAGiBvLqC;AACPAC;AAATuLkD;0BASkByBqB;OAIIrNK;AAApCKC;AAAP4PE;AAAArEwB;kFAuB6CvLG;AAAXuLiD;AAAiCAO;+DAU7CAY;WACyBAQ;KAChCvLY;0HCvGG4PM;AAAArES;AAASAM;kBAMdvLG;AAATuLoD;yBAgBQtL2B;qBAQYDG;AAApBuLO;AAAOAoC;sbGkeWyBY;2BAEInqCALxfE+sCU,A;yCK0fEnQAgBneSCK,A;wDdhC9Bp+Bc;cAECAAeLVsuCE,AAAArEiB,AAAWxLiB,A;gJjEuVqBmOW;gBAqB5B1CgB;oiBGzMsBhCA+D2FuBnsBiB,A;+B/D3FvBmsBA+D2FuBnsB2B,A;Q/D0C/CqsB8C;ibAiJOqEIA1UwB6Ca,A;+FAkd/BjH8B;yUAqJ4B6De;gBAcFnwBmB;QAAAAU;2gBiD7rBf4vBa;AACHAY;y/BjBiED+CiC;mfAmQEDiB;8Y9BxWiB1yBmB;8CAAAAa;oVAwKPAiB;4BAAAAoC;uPIxIOAmB;OAAAAa;wjBC+EjBkoBkB;oEAkBF6HI;0YAgNsD9HmBAXpDCe,kB;OAWiBloBqC;6CAKnB+vBI;2nBT8gDqBJ+B;+uBA+hCC9Ea;AAAeAe;8CAOQAe;8BAOlClCiC;AACAkIS;iE2B/2FI7wBmB;wDAAAAW;iDAUb4jBAA+PiB2CS,A;oFAhOEAiB;4FAKAAI;gGAUfzBGAgLNwBa,A;2OA/JLkJwCAQWlJI,sF;yLA0EaCI;oFA2BDvmB+B;kYAwHlBAU;0BAAAAG;oNAyDAAU;0BAAAAG;oddnWL6zBAGifFzIAA2BuBoHQ,A,A;0BHxgBnBqBAG6eJzIAA2BuBoHc,A,A;oBHlgBnBqBO;AAIJAAGmeAzIAA2BuBoHO,A,A;iDHvfR9HU;kNA6BYaAXHpBmFIAqBwB6CkB,A,A;6FWVnBG4B;kHAoDgBpKAA/IIoBO,AAAmBAK,A;AA+IFpGgC;yBAInBoGQ;+HC7G5BlDG;qBAAAA0B;AAEAKU;AACAXY;sFA6HKlnBW;oCA8CJsyBG;QAAAAW;4BAY6BlEK;mNAwElBkEc;SAIIxCAAlHEjIe,A;4EAqHVDuB;glCHtNH71CiB;iBAAAAAAsX0B+4CqB,A;eAhXD/0CMAwXZ+0CqB,A;4aQ3VhBpEkB;oTA6FFlDKC8fmBxjBmB,A;AD5fnByiBKC8kBwBziBa,A;6FD/fgBAc;yKCzO9B0oBW;4CACZjFK;qFAgBYiFW;qFAgIPoGW;oBACEzDY;AAA6B7GI;8CAgBzB6GK;kGAULuDU;gRA0IkBvaW;kGAqBJrUuC;QACPqhBwD;mEASOrhB+B;QACPgzByD;4GAuGTvKG;6CAQiBpFQ;AACL2DY;sBAQd8KgB;gFAQErJG;kGAiBiBpFQ;AACL2DY;iCAQd8KgB;qKA+IFrHW;sCAMWjEe;oMA8EXsLmB;sEA4BAAmB;+VA8EyBpDGA9nBlBrDS,AAAUJa,A;iCAgoBwB1GE;uBACDAQ;mBAEPvkBiB;yDAKqBgnBiB;AAC3BRmB;IACqBjCI;0CAWrBqEAAiGzBoLW,U;oJA3F4Ch0Ba;mEAUfyuBC;IAAAAAAvtBxBpDS,AAA+BpCO,A;oDAytBPjpBoB;0FAOQukBS;iBAElBsKAAxuBd7FU,A;0DA6uBsBzEO;gDAGIvkBiB;iQCiyB/BwuBU;ghB6BlsDwBxuBkB;sBAAAAW;QAAAAa;6CA6QFmsBAehDuBnsBU,A;QfgDvBmsBAehDuBnsB6B,A;ef2R5BmwBe;oTrBlaf0DU;AACAAAboaJzIiB,A;AanaIyIe;yPuBGe9BkB;6NtBIfhKG;sBACKiDS;gDAIMnFI;8DAMCkCa;AAAciDE;AAAaxLG;8BAMvCuIU;AAAiCzIAH1GftfU,A;AG0GEgrBG;kBAAa1LOH1GftfW,A;QG2GfAc;+BASH+nBS;CACFiDiB;oGA8BEjDS;WAAoBiDO;QAEjBvEyC;sCA+BHsBS;QAAoBiDS;6CAOVnFI;oCAEqBAM;4FAiClB0NgB;kDAMbxLS;QAAoBiDE;wJA6BnBvE6C;+BAC+BZK;8FAgCrBkCgB;yCASAAU;gCAEc3IA5BgZHpfqB,QAAAAW,A;0d8BznBb+wBqE;wNAqBmBvRqB;oEAQdxfc;AAAJ6zBa;mBAAAEAhByZMtGoB,A;8FgBpYPjOQ;+FAUPqUAhBqXNzIAA2BuBoHQ,K,A;QgB5YkBlRG;kmBqByF1BthBc;+FAQRshBG;yDCrDqB7Ga;UAAAAI;0IrBrHJzaAhBqyCakkBiB,A;OgBlyCV0PAAyCf9PAAG8B9jBAhBsvCLkkBoB,A,A,c;iCgBtxCtB/CAhB0zCRnTe,qB;qLgBtwCMuViC;6XAqCAgEU;mVA6IXvnBkB;4BAAA4sBe;0fAwO0B5sBoC;0lBActB+zBAjB5CctGgB,A;iFiBqDRsGAjBrDQtGgB,A;ciB0DRsGAjB1DQtGgB,A;kBiBiERsGAjBjEQtGS,A;AiBkERsGAjBlEQtGC,AAApBrCmB,A;yMiB8FQ2IAjB9FYtGO,A;6FiB0GhBsGAjB1GgBtGsB,A;oCiBmHbnMG;+oC1BlIiBrCK;84DS1dM4Rc;mRqBkyCpBhEsB;uEAKFAwB;AAGCAyB;ueAuNelGMA2iDbkJAH3sFWF2B,A,AG+sFlBtRa,mBAGFwVArB/kFFzIAA2BuBoHY,A,A,AqBqjFrBtHOA/BY2EAHprFQFY,A,AGsrFpBkEArBnjFFzIAA2BuBoHU,A,A,MqB0hFJqBArBrjFnBzIAA2BuBoHQ,A,A,cqB6hFrBqB4B,A,oBA4BAAArBplFFzIAA2BuBoHa,A,A,cqB6jFrBqBArBxlFFzIAA2BuBoHU,A,A,A;qLqB4gCyCtSG;qCAA9DlgBG;mVA2dcqeG;iBAEIwRAHvoDEFmC,A;qBGupDyBAiB;uHA+mBVzRG;2PA+djCGmB;IACAoDa;+DAIAjDa;sBACA0BK;mBACA5Ba;0KA/rBe8OyC;AACUyCAH9iEPFc,A;AG+iElBkEArB56DJzIS,A;AqB66DqBgCY;AAHFAc;yNAsmCEzJ0FAwBd3jBG,A;0BAxBc2jB2B;qOAwpBAqLU;AAAc1QiB;mGAc/B+IgC;aACAC6B;cACAHwB;aACAM+B;4OAcAJ+B;UACAC6B;uMAuDGtnBO;AADFweW;2MA0EeqRAH38HEFgC,A;wCG29HkBAiB;oZEh0HpC3vBwB;27BC9hBS2vBY;mBAIDwDkB;oIAQWAG;iBACSAG;uKAgDdDAhCqIhBpCO,A;AgCrIKRAtCyOAtwBW,A;csCzOWkzBY;iHA3BGhRI;EAAAAG;yrBCpDVqQE;AAAArES;AAASAM;2BAKbvLiD;AAEKAmC;iEAaZjmBAyBTAw0B2D,A;kYzBoBkBhDc;gCAMERADxBHsCG,A;gBCuBwB1NK;AAAPIwB;QACdgLWDxBHsCmB,AACJMAU0JuBtwBuB,A,AV1JbkzBAhCsMrBpCkB,A,UgCtMqBoC6B,A;AC2BDXG;aAAArEO;AAAOAmB;+EAKTvLC;AAAhBuLO;AAAOAiB;iOAkCQ9pCAqBk0DWu+BG,AAAT4PE,AAAArE+B,A;ArBj0DnBtLiC;AACAAyC;AACAsLsB;AACUvLC;AAAVuL0B;AACAvLc;SACAAc;4EAIqBv+BAqBwzDOu+BG,AAAT4PE,AAAArE+B,A;ArBvzDTvLC;AAAVuLuC;yEAGuB9pCAqBozDKu+BG,AAAT4PE,AAAArE+B,A;ArBnzDTvLC;AAAVuLoC;gFAYWtLmD;AAEb2PG;AAAS3PC;AAATsLqC;mBAgBc9pCAqBqxDgBu+BG,AAATuL+B,A;ArBrxDqBvLC;AAAVuL6B;AAE5BvLiB;AACACqC;AACAAqC;AACUDC;AAAVuL2B;AAGAvLiB;AACAAc;yBAMAuLO;AAAOAS;AAASAsB;uGA0BSvLa;AAAT4PM;AAAArEiD;mCASJ9wBAqBwFmBulBG,AAATuLmC,A;ArBxFWvLC;AAAVuLiC;AADvBvLiB;AAImBtlBAqB2/CcslBG,AAATuL2D,A;ArB5/CxBvLiB;AAIAv+BAqB6tD0Bu+BG,AAATuL+B,A;ArB5tDHvLC;AAAVuLiD;2BAFJvLqB;GAMckNAdzJIFO,A;Ac0JpBvQAd+MKpfgB,A;Qc/MLofI;GAAAAAd+MKpfI,A;Oc9MS2iBe;AADdtOS;AAIgBjwBAqBmtDYu+BG,AAATuL+B,A;ArBltDLvLC;AAAVuL6I;4HAQOtpCAqBiuDoB+9BG,AAATuL6B,A;ArBhuDlBtLsB;AAAqBtB4C;AAEfqBiB;AACEAiB;yBAKZuLsB;AACAtLwC;0GAiBc+MQ;2GAUiBgEAdxMT3zBU,A;IcwMS2zBK;KAAAAAdxMT3zBe,A;wBc0MR2iBgB;MAIhBiPM;AAEAOUAzFkBzPiB,UAEZwLuB,AACAtL0C,A;AAuFNsPIAlCqC7HuD,qB;yFA4CAsFa;kOAiBrCiCS;4DASahP2B;qBAOAA0B;qBAOAA2B;qBAOAA6B;6DA/LCsLU;UAIUqEE;AAAArES;AAASAe;AACe/LsBAqYTgRC,AAAAjF0B,A;AApY3BxLmB;AACOAI;2DAsKWwLU;iGAcAAO;gFAOhBAiB;eAMAAgB;AACFxLsB;oBAEoCCG;2CAEtBAC;AAAhB4PE;AAAArEO;AAAOAiB;iGASOvLC;AAAhB4PE;AAAArEO;AAAOAiB;AAAgB5MQ;+CAQjB4MqB;6CAMOAuB;aAEb0DY;oBAIa1DgB;8CAKaAQ;qBAQvBvLC;GADAuLkC;qBAMcvLC;AAAVuL+B;oEAMqBAsB;AAEHAW;QACQA2B;AAEcAc;AACpCxLuB;gBAMgBwLQ;gGAUzBxLkB;gCAwCFAkB;2DAQYCC;AAAhB4PE;AAAArEO;AAAOAiB;UACDxLmB;wJE9aYCC;AAAVuLkC;cACcvLC;AAAVuL2B;2LAuDEAc;AACItpCAmBq2DW+9BG,AAAT4PE,AAAArE6J,A;AnBj2DPvLC;4CAIgCLK;AAAPIwB;YACnBt+BAmBq0DOu+BG,AAAT4PE,AAAArE6C,A;YnBl0DNvLC;qHCrEb4PG;MAHsB5PC;AAAVuLiC;AACUvLC;AAAVuL6B;AAEQtLC;AAApBsLO;AAAOAgD;AAEevLC;AAAVuLgC;AACUvLC;AAAVuL8B;AAEQtLC;AAApBsLO;AAAOA4C;4CAOyCvLI;EAAVuLkC;moZ5Co/CxCkD0G;CAAAAG;6DAYAC8G;CAAAAG;2DAYACuD;CAAAAG;6DAYiBC2D;CAAAAG;kJgC3+BgC5DU;igBIM/ByBM;" + } +} diff --git a/docs/api/flutter/static-assets/favicon.png b/docs/api/flutter/static-assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..43d2ffa079ca147a221437817dbc694d66a2a302 GIT binary patch literal 1767 zcmVr1gM)#AhSs$=eK0WK)CF2vH5m*T78Vv7 zOqGGvxA(cvvG46mUuvh$T1!8DmE**HzxO9;TsuQliJN|J!pK@zgpAc6W;K`ZbSrnoP`wF$fl7_5*8Ivypwf=W;~ z;08%MQORYPC_tGHZSh$O#Av43|^d-UX&HM!T~7!)g1(@JfEf{VV=B< z1V2h$vz|_)(42Iv;nMQ6gnaC=x-iE)V9>bg95MTIge3HB2W~Qqm*!+BpztvG$qKPZI96W} zvtB&GrNG5*kOai6|CR7-+*88m$TiE!O#Aqvg{$I60STah90fcj;bJTAHe50;DvqB` zEg>!%3Dgd1>303*qUn95wS&WE(*hLuC37)V?aQjQ(>?on4V>`^}$4&P2qUwF63p3!p z6R>6i5YrB(Dm-K?OMsE#XJVfc&SVMlTc3)@NKU0J3269ELe@xN0Za64hocS>SoY(& zL%m;r$g#En;{)>X$|7Ng63+K0K^DLzXfDCDx@#YPVSI{DxIP(XJHy#-j`B3b#X_yixgMa&bn3s?yPcssC4`0@Pr z>UDqkrA2oMvH(^Il;ArzoKINx_2)YKwKcf{c=joHgRLFHM+xq^ZVMp3+9h+pM_8DNoMAB-dVobWmYAS9rt1as~o-UgNSX!>_*0eKDx64<-L zsr_Sf&ksWK5X_wO=HsvVW@R@4avN{~b`kO)Q2hp=EFi=-pa;L0N~k1s7QiKN5q3y| z{H02#@|Qmd>8SNrVChicf`ASZgo+R(>{|f;A|&P#WC45@h!O<2gp5n*5WLs|%h5Io z&-zA4k|2tpV}-BR_;rW=0{Hbbr8g2rC_$(INdgxkz-9uI;7AhAx(eXe)2I^YTj5fu z07-%@V%uQ+#@-^?#TPmIvVf-~Xcr}rfKnDf$id05c9_^NzK{etcv%3Kz^)CFfYM7u z0sTc>5&YuI)(f)z1qhX(H3Ggi0-)qG;MpQ%*z;uxJkb6E_~m7Pp-})}1w7y{P|87X zMF?8JdR00$fprxiY?Jv$f)^#)PoTa$P7;P^(nEroXQBYUjX$q968u%Jy_6(e-Iwpz z`wQ&juE(vPtb`I*EA&`h0mZHYjw%V!O;ZVLl+daK6k%2i_w{N+cwBf+b515f%gmO% z0;CNdCA9us9ZyP?@Hi6?I4mR~j0z_-S>8&HnB#ImfGojJKnEEBu4V8D90ETn>T?(4 zMG`tr=$)vA?}qayISJ<{js z)mqSPcf)OyC94E3VQ2vf2>>`6^tPFngqTYhz5-+c150@O0%QqqUjRvn1qp9gfGmM1 zUw{G;1RSy*Qj(CpFloi)@B(OKcajFkv|3YK_es*=t)6!)-Mumr002ov JPDHLkV1ksy9Tflo literal 0 HcmV?d00001 diff --git a/docs/api/flutter/static-assets/github.css b/docs/api/flutter/static-assets/github.css new file mode 100644 index 0000000..791932b --- /dev/null +++ b/docs/api/flutter/static-assets/github.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/docs/api/flutter/static-assets/highlight.pack.js b/docs/api/flutter/static-assets/highlight.pack.js new file mode 100644 index 0000000..3cf5abc --- /dev/null +++ b/docs/api/flutter/static-assets/highlight.pack.js @@ -0,0 +1,780 @@ +/*! + Highlight.js v11.8.0 (git: d27be507cb) + (c) 2006-2023 Ivan Sagalaev and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";function e(n){ +return n instanceof Map?n.clear=n.delete=n.set=()=>{ +throw Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach((t=>{ +const a=n[t],i=typeof a;"object"!==i&&"function"!==i||Object.isFrozen(a)||e(a) +})),n}class n{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function t(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function a(e,...n){const t=Object.create(null);for(const n in e)t[n]=e[n] +;return n.forEach((e=>{for(const n in e)t[n]=e[n]})),t}const i=e=>!!e.scope +;class s{constructor(e,n){ +this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){ +this.buffer+=t(e)}openNode(e){if(!i(e))return;const n=((e,{prefix:n})=>{ +if(e.startsWith("language:"))return e.replace("language:","language-") +;if(e.includes(".")){const t=e.split(".") +;return[`${n}${t.shift()}`,...t.map(((e,n)=>`${e}${"_".repeat(n+1)}`))].join(" ") +}return`${n}${e}`})(e.scope,{prefix:this.classPrefix});this.span(n)} +closeNode(e){i(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}const r=(e={})=>{const n={children:[]} +;return Object.assign(n,e),n};class o{constructor(){ +this.rootNode=r(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const n=r({scope:e}) +;this.add(n),this.stack.push(n)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,n){ +return"string"==typeof n?e.addText(n):n.children&&(e.openNode(n), +n.children.forEach((n=>this._walk(e,n))),e.closeNode(n)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +o._collapse(e)})))}}class l extends o{constructor(e){super(),this.options=e} +addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ +this.closeNode()}__addSublanguage(e,n){const t=e.root +;n&&(t.scope="language:"+n),this.add(t)}toHTML(){ +return new s(this,this.options).value()}finalize(){ +return this.closeAllNodes(),!0}}function c(e){ +return e?"string"==typeof e?e:e.source:null}function d(e){return b("(?=",e,")")} +function g(e){return b("(?:",e,")*")}function u(e){return b("(?:",e,")?")} +function b(...e){return e.map((e=>c(e))).join("")}function m(...e){const n=(e=>{ +const n=e[e.length-1] +;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} +})(e);return"("+(n.capture?"":"?:")+e.map((e=>c(e))).join("|")+")"} +function p(e){return RegExp(e.toString()+"|").exec("").length-1} +const h=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function f(e,{joinWith:n}){let t=0;return e.map((e=>{t+=1;const n=t +;let a=c(e),i="";for(;a.length>0;){const e=h.exec(a);if(!e){i+=a;break} +i+=a.substring(0,e.index), +a=a.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+(Number(e[1])+n):(i+=e[0], +"("===e[0]&&t++)}return i})).map((e=>`(${e})`)).join(n)} +const _="[a-zA-Z]\\w*",E="[a-zA-Z_]\\w*",N="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",w="\\b(0b[01]+)",v={ +begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[v]},x={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[v]},O=(e,n,t={})=>{const i=a({scope:"comment",begin:e,end:n, +contains:[]},t);i.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const s=m("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return i.contains.push({begin:b(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i +},S=O("//","$"),A=O("/\\*","\\*/"),M=O("#","$");var C=Object.freeze({ +__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:_,UNDERSCORE_IDENT_RE:E, +NUMBER_RE:N,C_NUMBER_RE:y,BINARY_NUMBER_RE:w, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const n=/^#![ ]*\// +;return e.binary&&(e.begin=b(n,/.*\b/,e.binary,/\b.*/)),a({scope:"meta",begin:n, +end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)}, +BACKSLASH_ESCAPE:v,APOS_STRING_MODE:k,QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},COMMENT:O,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:A,HASH_COMMENT_MODE:M, +NUMBER_MODE:{scope:"number",begin:N,relevance:0},C_NUMBER_MODE:{scope:"number", +begin:y,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:w,relevance:0}, +REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, +end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0, +contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:_,relevance:0}, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:E,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*"+E,relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{ +n.data._beginMatch!==e[1]&&n.ignoreMatch()}})});function T(e,n){ +"."===e.input[e.index-1]&&n.ignoreMatch()}function R(e,n){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function D(e,n){ +n&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=T,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function I(e,n){ +Array.isArray(e.illegal)&&(e.illegal=m(...e.illegal))}function B(e,n){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function L(e,n){ +void 0===e.relevance&&(e.relevance=1)}const $=(e,n)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const t=Object.assign({},e);Object.keys(e).forEach((n=>{delete e[n] +})),e.keywords=t.keywords,e.begin=b(t.beforeMatch,d(t.begin)),e.starts={ +relevance:0,contains:[Object.assign(t,{endsParent:!0})] +},e.relevance=0,delete t.beforeMatch +},F=["of","and","for","in","not","or","if","then","parent","list","value"],z="keyword" +;function U(e,n,t=z){const a=Object.create(null) +;return"string"==typeof e?i(t,e.split(" ")):Array.isArray(e)?i(t,e):Object.keys(e).forEach((t=>{ +Object.assign(a,U(e[t],n,t))})),a;function i(e,t){ +n&&(t=t.map((e=>e.toLowerCase()))),t.forEach((n=>{const t=n.split("|") +;a[t[0]]=[e,j(t[0],t[1])]}))}}function j(e,n){ +return n?Number(n):(e=>F.includes(e.toLowerCase()))(e)?0:1}const P={},K=e=>{ +console.error(e)},H=(e,...n)=>{console.log("WARN: "+e,...n)},Z=(e,n)=>{ +P[`${e}/${n}`]||(console.log(`Deprecated as of ${e}. ${n}`),P[`${e}/${n}`]=!0) +},G=Error();function q(e,n,{key:t}){let a=0;const i=e[t],s={},r={} +;for(let e=1;e<=n.length;e++)r[e+a]=i[e],s[e+a]=!0,a+=p(n[e-1]) +;e[t]=r,e[t]._emit=s,e[t]._multi=!0}function W(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +G +;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"), +G;q(e,e.begin,{key:"beginScope"}),e.begin=f(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +G +;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"), +G;q(e,e.end,{key:"endScope"}),e.end=f(e.end,{joinWith:""})}})(e)}function X(e){ +function n(n,t){ +return RegExp(c(n),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(t?"g":"")) +}class t{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,n){ +n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]), +this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=n(f(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const n=this.matcherRe.exec(e);if(!n)return null +;const t=n.findIndex(((e,n)=>n>0&&void 0!==e)),a=this.matchIndexes[t] +;return n.splice(0,t),Object.assign(n,a)}}class i{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const n=new t +;return this.rules.slice(e).forEach((([e,t])=>n.addRule(e,t))), +n.compile(),this.multiRegexes[e]=n,n}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,n){ +this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){ +const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex +;let t=n.exec(e) +;if(this.resumingScanAtSamePosition())if(t&&t.index===this.lastIndex);else{ +const n=this.getMatcher(0);n.lastIndex=this.lastIndex+1,t=n.exec(e)} +return t&&(this.regexIndex+=t.position+1, +this.regexIndex===this.count&&this.considerAll()),t}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=a(e.classNameAliases||{}),function t(s,r){const o=s +;if(s.isCompiled)return o +;[R,B,W,$].forEach((e=>e(s,r))),e.compilerExtensions.forEach((e=>e(s,r))), +s.__beforeBegin=null,[D,I,L].forEach((e=>e(s,r))),s.isCompiled=!0;let l=null +;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords), +l=s.keywords.$pattern, +delete s.keywords.$pattern),l=l||/\w+/,s.keywords&&(s.keywords=U(s.keywords,e.case_insensitive)), +o.keywordPatternRe=n(l,!0), +r&&(s.begin||(s.begin=/\B|\b/),o.beginRe=n(o.begin),s.end||s.endsWithParent||(s.end=/\B|\b/), +s.end&&(o.endRe=n(o.end)), +o.terminatorEnd=c(o.end)||"",s.endsWithParent&&r.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+r.terminatorEnd)), +s.illegal&&(o.illegalRe=n(s.illegal)), +s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((n=>a(e,{ +variants:null},n)))),e.cachedVariants?e.cachedVariants:Q(e)?a(e,{ +starts:e.starts?a(e.starts):null +}):Object.isFrozen(e)?a(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{t(e,o) +})),s.starts&&t(s.starts,r),o.matcher=(e=>{const n=new i +;return e.contains.forEach((e=>n.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&n.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n})(o),o}(e)}function Q(e){ +return!!e&&(e.endsWithParent||Q(e.starts))}class V extends Error{ +constructor(e,n){super(e),this.name="HTMLInjectionError",this.html=n}} +const J=t,Y=a,ee=Symbol("nomatch"),ne=t=>{ +const a=Object.create(null),i=Object.create(null),s=[];let r=!0 +;const o="Could not find the language '{}', did you forget to load/include a language module?",c={ +disableAutodetect:!0,name:"Plain text",contains:[]};let p={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:l};function h(e){ +return p.noHighlightRe.test(e)}function f(e,n,t){let a="",i="" +;"object"==typeof n?(a=e, +t=n.ignoreIllegals,i=n.language):(Z("10.7.0","highlight(lang, code, ...args) has been deprecated."), +Z("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +i=e,a=n),void 0===t&&(t=!0);const s={code:a,language:i};O("before:highlight",s) +;const r=s.result?s.result:_(s.language,s.code,t) +;return r.code=s.code,O("after:highlight",r),r}function _(e,t,i,s){ +const l=Object.create(null);function c(){if(!O.keywords)return void A.addText(M) +;let e=0;O.keywordPatternRe.lastIndex=0;let n=O.keywordPatternRe.exec(M),t="" +;for(;n;){t+=M.substring(e,n.index) +;const i=w.case_insensitive?n[0].toLowerCase():n[0],s=(a=i,O.keywords[a]);if(s){ +const[e,a]=s +;if(A.addText(t),t="",l[i]=(l[i]||0)+1,l[i]<=7&&(C+=a),e.startsWith("_"))t+=n[0];else{ +const t=w.classNameAliases[e]||e;g(n[0],t)}}else t+=n[0] +;e=O.keywordPatternRe.lastIndex,n=O.keywordPatternRe.exec(M)}var a +;t+=M.substring(e),A.addText(t)}function d(){null!=O.subLanguage?(()=>{ +if(""===M)return;let e=null;if("string"==typeof O.subLanguage){ +if(!a[O.subLanguage])return void A.addText(M) +;e=_(O.subLanguage,M,!0,S[O.subLanguage]),S[O.subLanguage]=e._top +}else e=E(M,O.subLanguage.length?O.subLanguage:null) +;O.relevance>0&&(C+=e.relevance),A.__addSublanguage(e._emitter,e.language) +})():c(),M=""}function g(e,n){ +""!==e&&(A.startScope(n),A.addText(e),A.endScope())}function u(e,n){let t=1 +;const a=n.length-1;for(;t<=a;){if(!e._emit[t]){t++;continue} +const a=w.classNameAliases[e[t]]||e[t],i=n[t];a?g(i,a):(M=i,c(),M=""),t++}} +function b(e,n){ +return e.scope&&"string"==typeof e.scope&&A.openNode(w.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(g(M,w.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +M=""):e.beginScope._multi&&(u(e.beginScope,n),M="")),O=Object.create(e,{parent:{ +value:O}}),O}function m(e,t,a){let i=((e,n)=>{const t=e&&e.exec(n) +;return t&&0===t.index})(e.endRe,a);if(i){if(e["on:end"]){const a=new n(e) +;e["on:end"](t,a),a.isMatchIgnored&&(i=!1)}if(i){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return m(e.parent,t,a)}function h(e){ +return 0===O.matcher.regexIndex?(M+=e[0],1):(D=!0,0)}function f(e){ +const n=e[0],a=t.substring(e.index),i=m(O,e,a);if(!i)return ee;const s=O +;O.endScope&&O.endScope._wrap?(d(), +g(n,O.endScope._wrap)):O.endScope&&O.endScope._multi?(d(), +u(O.endScope,e)):s.skip?M+=n:(s.returnEnd||s.excludeEnd||(M+=n), +d(),s.excludeEnd&&(M=n));do{ +O.scope&&A.closeNode(),O.skip||O.subLanguage||(C+=O.relevance),O=O.parent +}while(O!==i.parent);return i.starts&&b(i.starts,e),s.returnEnd?0:n.length} +let N={};function y(a,s){const o=s&&s[0];if(M+=a,null==o)return d(),0 +;if("begin"===N.type&&"end"===s.type&&N.index===s.index&&""===o){ +if(M+=t.slice(s.index,s.index+1),!r){const n=Error(`0 width match regex (${e})`) +;throw n.languageName=e,n.badRule=N.rule,n}return 1} +if(N=s,"begin"===s.type)return(e=>{ +const t=e[0],a=e.rule,i=new n(a),s=[a.__beforeBegin,a["on:begin"]] +;for(const n of s)if(n&&(n(e,i),i.isMatchIgnored))return h(t) +;return a.skip?M+=t:(a.excludeBegin&&(M+=t), +d(),a.returnBegin||a.excludeBegin||(M=t)),b(a,e),a.returnBegin?0:t.length})(s) +;if("illegal"===s.type&&!i){ +const e=Error('Illegal lexeme "'+o+'" for mode "'+(O.scope||"")+'"') +;throw e.mode=O,e}if("end"===s.type){const e=f(s);if(e!==ee)return e} +if("illegal"===s.type&&""===o)return 1 +;if(R>1e5&&R>3*s.index)throw Error("potential infinite loop, way more iterations than matches") +;return M+=o,o.length}const w=v(e) +;if(!w)throw K(o.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const k=X(w);let x="",O=s||k;const S={},A=new p.__emitter(p);(()=>{const e=[] +;for(let n=O;n!==w;n=n.parent)n.scope&&e.unshift(n.scope) +;e.forEach((e=>A.openNode(e)))})();let M="",C=0,T=0,R=0,D=!1;try{ +if(w.__emitTokens)w.__emitTokens(t,A);else{for(O.matcher.considerAll();;){ +R++,D?D=!1:O.matcher.considerAll(),O.matcher.lastIndex=T +;const e=O.matcher.exec(t);if(!e)break;const n=y(t.substring(T,e.index),e) +;T=e.index+n}y(t.substring(T))}return A.finalize(),x=A.toHTML(),{language:e, +value:x,relevance:C,illegal:!1,_emitter:A,_top:O}}catch(n){ +if(n.message&&n.message.includes("Illegal"))return{language:e,value:J(t), +illegal:!0,relevance:0,_illegalBy:{message:n.message,index:T, +context:t.slice(T-100,T+100),mode:n.mode,resultSoFar:x},_emitter:A};if(r)return{ +language:e,value:J(t),illegal:!1,relevance:0,errorRaised:n,_emitter:A,_top:O} +;throw n}}function E(e,n){n=n||p.languages||Object.keys(a);const t=(e=>{ +const n={value:J(e),illegal:!1,relevance:0,_top:c,_emitter:new p.__emitter(p)} +;return n._emitter.addText(e),n})(e),i=n.filter(v).filter(x).map((n=>_(n,e,!1))) +;i.unshift(t);const s=i.sort(((e,n)=>{ +if(e.relevance!==n.relevance)return n.relevance-e.relevance +;if(e.language&&n.language){if(v(e.language).supersetOf===n.language)return 1 +;if(v(n.language).supersetOf===e.language)return-1}return 0})),[r,o]=s,l=r +;return l.secondBest=o,l}function N(e){let n=null;const t=(e=>{ +let n=e.className+" ";n+=e.parentNode?e.parentNode.className:"" +;const t=p.languageDetectRe.exec(n);if(t){const n=v(t[1]) +;return n||(H(o.replace("{}",t[1])), +H("Falling back to no-highlight mode for this block.",e)),n?t[1]:"no-highlight"} +return n.split(/\s+/).find((e=>h(e)||v(e)))})(e);if(h(t))return +;if(O("before:highlightElement",{el:e,language:t +}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) +;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),p.throwUnescapedHTML))throw new V("One of your code blocks includes unescaped HTML.",e.innerHTML) +;n=e;const a=n.textContent,s=t?f(a,{language:t,ignoreIllegals:!0}):E(a) +;e.innerHTML=s.value,e.dataset.highlighted="yes",((e,n,t)=>{const a=n&&i[n]||t +;e.classList.add("hljs"),e.classList.add("language-"+a) +})(e,t,s.language),e.result={language:s.language,re:s.relevance, +relevance:s.relevance},s.secondBest&&(e.secondBest={ +language:s.secondBest.language,relevance:s.secondBest.relevance +}),O("after:highlightElement",{el:e,result:s,text:a})}let y=!1;function w(){ +"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(N):y=!0 +}function v(e){return e=(e||"").toLowerCase(),a[e]||a[i[e]]} +function k(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +i[e.toLowerCase()]=n}))}function x(e){const n=v(e) +;return n&&!n.disableAutodetect}function O(e,n){const t=e;s.forEach((e=>{ +e[t]&&e[t](n)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&w()}),!1),Object.assign(t,{highlight:f,highlightAuto:E,highlightAll:w, +highlightElement:N, +highlightBlock:e=>(Z("10.7.0","highlightBlock will be removed entirely in v12.0"), +Z("10.7.0","Please use highlightElement now."),N(e)),configure:e=>{p=Y(p,e)}, +initHighlighting:()=>{ +w(),Z("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +w(),Z("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,n)=>{let i=null;try{i=n(t)}catch(n){ +if(K("Language definition for '{}' could not be registered.".replace("{}",e)), +!r)throw n;K(n),i=c} +i.name||(i.name=e),a[e]=i,i.rawDefinition=n.bind(null,t),i.aliases&&k(i.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete a[e] +;for(const n of Object.keys(i))i[n]===e&&delete i[n]}, +listLanguages:()=>Object.keys(a),getLanguage:v,registerAliases:k, +autoDetection:x,inherit:Y,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=n=>{ +e["before:highlightBlock"](Object.assign({block:n.el},n)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=n=>{ +e["after:highlightBlock"](Object.assign({block:n.el},n))})})(e),s.push(e)}, +removePlugin:e=>{const n=s.indexOf(e);-1!==n&&s.splice(n,1)}}),t.debugMode=()=>{ +r=!1},t.safeMode=()=>{r=!0},t.versionString="11.8.0",t.regex={concat:b, +lookahead:d,either:m,optional:u,anyNumberOfTimes:g} +;for(const n in C)"object"==typeof C[n]&&e(C[n]);return Object.assign(t,C),t +},te=ne({});te.newInstance=()=>ne({});var ae=te +;const ie=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],se=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],re=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],oe=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],le=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() +;var ce="[0-9](_*[0-9])*",de=`\\.(${ce})`,ge="[0-9a-fA-F](_*[0-9a-fA-F])*",ue={ +className:"number",variants:[{ +begin:`(\\b(${ce})((${de})|\\.)?|(${de}))[eE][+-]?(${ce})[fFdD]?\\b`},{ +begin:`\\b(${ce})((${de})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${de})[fFdD]?\\b`},{begin:`\\b(${ce})[fFdD]\\b`},{ +begin:`\\b0[xX]((${ge})\\.?|(${ge})?\\.(${ge}))[pP][+-]?(${ce})[fFdD]?\\b`},{ +begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ge})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};function be(e,n,t){return-1===t?"":e.replace(n,(a=>be(e,n,t-1)))} +const me="[A-Za-z$_][0-9A-Za-z$_]*",pe=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],he=["true","false","null","undefined","NaN","Infinity"],fe=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],_e=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Ee=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ne=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ye=[].concat(Ee,fe,_e),we=e=>b(/\b/,e,/\w$/.test(e)?/\b/:/\B/),ve=["Protocol","Type"].map(we),ke=["init","self"].map(we),xe=["Any","Self"],Oe=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","distributed","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Se=["false","nil","true"],Ae=["assignment","associativity","higherThan","left","lowerThan","none","right"],Me=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Ce=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Te=m(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Re=m(Te,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),De=b(Te,Re,"*"),Ie=m(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Be=m(Ie,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Le=b(Ie,Be,"*"),$e=b(/[A-Z]/,Be,"*"),Fe=["autoclosure",b(/convention\(/,m("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",b(/objc\(/,Le,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],ze=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;var Ue=Object.freeze({__proto__:null,grmr_bash:e=>{const n=e.regex,t={},a={ +begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]} +;Object.assign(t,{className:"variable",variants:[{ +begin:n.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const i={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},r={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,i]};i.contains.push(r);const o={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[l,e.SHEBANG(),c,o,e.HASH_COMMENT_MODE,s,{match:/(\/[a-z._-]+)+/},r,{ +className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}}, +grmr_c:e=>{const n=e.regex,t=e.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),a="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="("+a+"|"+n.optional(i)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",r={ +className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{ +match:/\batomic_[a-z]{3,6}\b/}]},o={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},e.inherit(o,{className:"string"}),{ +className:"string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},d={ +className:"title",begin:n.optional(i)+e.IDENT_RE,relevance:0 +},g=n.optional(i)+e.IDENT_RE+"\\s*\\(",u={ +keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"], +type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","const","static","complex","bool","imaginary"], +literal:"true false NULL", +built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" +},b=[c,r,t,e.C_BLOCK_COMMENT_MODE,l,o],m={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:b.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:b.concat(["self"]),relevance:0}]),relevance:0},p={ +begin:"("+s+"[\\*&\\s]+)+"+g,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{ +begin:g,returnBegin:!0,contains:[e.inherit(d,{className:"title.function"})], +relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/, +keywords:u,relevance:0,contains:[t,e.C_BLOCK_COMMENT_MODE,o,l,r,{begin:/\(/, +end:/\)/,keywords:u,relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,o,l,r] +}]},r,t,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:u, +disableAutodetect:!0,illegal:"=]/,contains:[{ +beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c, +strings:o,keywords:u}}},grmr_css:e=>{const n=e.regex,t=(e=>({IMPORTANT:{ +scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{ +scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/}, +FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/}, +ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} +}))(e),a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS", +case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, +classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,{ +begin:/-(webkit|moz|ms|o)-(?=[a-z])/},t.CSS_NUMBER_MODE,{ +className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{ +className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 +},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ +begin:":("+re.join("|")+")"},{begin:":(:)?("+oe.join("|")+")"}] +},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+le.join("|")+")\\b"},{ +begin:/:/,end:/[;}{]/, +contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{ +begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" +},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0, +excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:n.lookahead(/@/),end:"[{;]", +relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/ +},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{ +$pattern:/[a-z-]+/,keyword:"and or not only",attribute:se.join(" ")},contains:[{ +begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{ +className:"selector-tag",begin:"\\b("+ie.join("|")+")\\b"}]}},grmr_xml:e=>{ +const n=e.regex,t=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),a={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},i={begin:/\s/, +contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},s=e.inherit(i,{begin:/\(/,end:/\)/}),r=e.inherit(e.APOS_STRING_MODE,{ +className:"string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={ +endsWithParent:!0,illegal:/`]+/}]}]}]};return{ +name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[i,o,r,s,{begin:/\[/,end:/\]/,contains:[{ +className:"meta",begin://,contains:[i,s,o,r]}]}] +},e.COMMENT(//,{relevance:10}),{begin://, +relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/, +relevance:10,contains:[o]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:n.concat(//,/>/,/\s/)))), +end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:l}]},{ +className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(t,/>/))),contains:[{ +className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]} +},grmr_markdown:e=>{const n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml", +relevance:0},t={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{ +begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{ +begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/ +},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},a={className:"strong",contains:[], +variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}] +},i={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{ +begin:/_(?![_\s])/,end:/_/,relevance:0}]},s=e.inherit(a,{contains:[] +}),r=e.inherit(i,{contains:[]});a.contains.push(r),i.contains.push(s) +;let o=[n,t];return[a,i,s,r].forEach((e=>{e.contains=e.contains.concat(o) +})),o=o.concat(a,i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:o},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:o}]}]},n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},a,i,{className:"quote",begin:"^>\\s+",contains:o, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},t,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}},grmr_dart:e=>{ +const n={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},t={ +className:"subst",variants:[{begin:/\$\{/,end:/\}/}], +keywords:"true false null this is new super"},a={className:"string",variants:[{ +begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'", +illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''", +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"""',end:'"""', +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,t]}]};t.contains=[e.C_NUMBER_MODE,a] +;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],s=i.map((e=>e+"?")) +;return{name:"Dart",keywords:{ +keyword:["abstract","as","assert","async","await","base","break","case","catch","class","const","continue","covariant","default","deferred","do","dynamic","else","enum","export","extends","extension","external","factory","false","final","finally","for","Function","get","hide","if","implements","import","in","interface","is","late","library","mixin","new","null","on","operator","part","required","rethrow","return","sealed","set","show","static","super","switch","sync","this","throw","true","try","typedef","var","void","when","while","with","yield"], +built_in:i.concat(s).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]), +$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, +contains:[a,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 +}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", +end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] +},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}, +grmr_diff:e=>{const n=e.regex;return{name:"Diff",aliases:["patch"],contains:[{ +className:"meta",relevance:10, +match:n.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/) +},{className:"comment",variants:[{ +begin:n.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/), +end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{ +className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, +end:/$/}]}},grmr_java:e=>{ +const n=e.regex,t="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",a=t+be("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),i={ +keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"], +literal:["false","true","null"], +type:["char","boolean","long","float","int","byte","short","double"], +built_in:["super","this"]},s={className:"meta",begin:"@"+t,contains:[{ +begin:/\(/,end:/\)/,contains:["self"]}]},r={className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0} +;return{name:"Java",aliases:["jsp"],keywords:i,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/, +className:"string",contains:[e.BACKSLASH_ESCAPE] +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{ +1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{ +begin:[n.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type", +3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword", +3:"title.class"},contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{ +begin:["(?:"+a+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{ +2:"title.function"},keywords:i,contains:[{className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0, +contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,ue,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},ue,s]}},grmr_javascript:e=>{ +const n=e.regex,t=me,a={begin:/<[A-Za-z0-9\\._:-]+/, +end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ +const t=e[0].length+e.index,a=e.input[t] +;if("<"===a||","===a)return void n.ignoreMatch();let i +;">"===a&&(((e,{after:n})=>{const t="",S={ +match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(O)], +keywords:"async",className:{1:"keyword",3:"title.function"},contains:[_]} +;return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{ +PARAMS_CONTAINS:f,CLASS_REFERENCE:N},illegal:/#(?![$_A-z])/, +contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{ +label:"use_strict",className:"meta",relevance:10, +begin:/^\s*['"]use (strict|asm)['"]/ +},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,g,u,b,m,{match:/\$\d+/},l,N,{ +className:"attr",begin:t+n.lookahead(":"),relevance:0},S,{ +begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{ +className:"function",begin:O,returnBegin:!0,end:"\\s*=>",contains:[{ +className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{ +className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,keywords:i,contains:f}]}]},{begin:/,/,relevance:0},{match:/\s+/, +relevance:0},{variants:[{begin:"<>",end:""},{ +match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:a.begin, +"on:begin":a.isTrulyOpeningTag,end:a.end}],subLanguage:"xml",contains:[{ +begin:a.begin,end:a.end,skip:!0,contains:["self"]}]}]},y,{ +beginKeywords:"while if switch catch for"},{ +begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,label:"func.def",contains:[_,e.inherit(e.TITLE_MODE,{begin:t, +className:"title.function"})]},{match:/\.\.\./,relevance:0},k,{match:"\\$"+t, +relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, +contains:[_]},w,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},E,x,{match:/\$[(.]/}]}},grmr_json:e=>{ +const n=["true","false","null"],t={scope:"literal",beginKeywords:n.join(" ")} +;return{name:"JSON",keywords:{literal:n},contains:[{className:"attr", +begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/, +className:"punctuation",relevance:0 +},e.QUOTE_STRING_MODE,t,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE], +illegal:"\\S"}},grmr_kotlin:e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},t={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},i={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[i,a]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,i,a]}]};a.contains.push(s);const r={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},o={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}] +},l=ue,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},g=d;return g.variants[1].contains=[d],d.variants[1].contains=[g], +{name:"Kotlin",aliases:["kt","kts"],keywords:n, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},t,r,o,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,c],relevance:0 +},e.C_LINE_COMMENT_MODE,c,r,o,s,e.C_NUMBER_MODE]},c]},{ +begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{ +3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/, +excludeBegin:!0,returnEnd:!0},r,o]},s,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},l]}},grmr_objectivec:e=>{ +const n=/[a-zA-Z@][a-zA-Z0-9_]*/,t={$pattern:n, +keyword:["@interface","@class","@protocol","@implementation"]};return{ +name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], +keywords:{"variable.language":["this","super"],$pattern:n, +keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"], +literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"], +built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"], +type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"] +},illegal:"/,end:/$/,illegal:"\\n" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class", +begin:"("+t.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:t, +contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE, +relevance:0}]}},grmr_plaintext:e=>({name:"Plain text",aliases:["text","txt"], +disableAutodetect:!0}),grmr_shell:e=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]}),grmr_swift:e=>{const n={match:/\s+/,relevance:0 +},t=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a=[e.C_LINE_COMMENT_MODE,t],i={ +match:[/\./,m(...ve,...ke)],className:{2:"keyword"}},s={match:b(/\./,m(...Oe)), +relevance:0},r=Oe.filter((e=>"string"==typeof e)).concat(["_|0"]),o={variants:[{ +className:"keyword", +match:m(...Oe.filter((e=>"string"!=typeof e)).concat(xe).map(we),...ke)}]},l={ +$pattern:m(/\b\w+/,/#\w+/),keyword:r.concat(Me),literal:Se},c=[i,s,o],g=[{ +match:b(/\./,m(...Ce)),relevance:0},{className:"built_in", +match:b(/\b/,m(...Ce),/(?=\()/)}],u={match:/->/,relevance:0},p=[u,{ +className:"operator",relevance:0,variants:[{match:De},{match:`\\.(\\.|${Re})+`}] +}],h="([0-9]_*)+",f="([0-9a-fA-F]_*)+",_={className:"number",relevance:0, +variants:[{match:`\\b(${h})(\\.(${h}))?([eE][+-]?(${h}))?\\b`},{ +match:`\\b0x(${f})(\\.(${f}))?([pP][+-]?(${h}))?\\b`},{match:/\b0o([0-7]_*)+\b/ +},{match:/\b0b([01]_*)+\b/}]},E=(e="")=>({className:"subst",variants:[{ +match:b(/\\/,e,/[0\\tnr"']/)},{match:b(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}] +}),N=(e="")=>({className:"subst",match:b(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/) +}),y=(e="")=>({className:"subst",label:"interpol",begin:b(/\\/,e,/\(/),end:/\)/ +}),w=(e="")=>({begin:b(e,/"""/),end:b(/"""/,e),contains:[E(e),N(e),y(e)] +}),v=(e="")=>({begin:b(e,/"/),end:b(/"/,e),contains:[E(e),y(e)]}),k={ +className:"string", +variants:[w(),w("#"),w("##"),w("###"),v(),v("#"),v("##"),v("###")]},x={ +match:b(/`/,Le,/`/)},O=[x,{className:"variable",match:/\$\d+/},{ +className:"variable",match:`\\$${Be}+`}],S=[{match:/(@|#(un)?)available/, +className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:ze, +contains:[...p,_,k]}]}},{className:"keyword",match:b(/@/,m(...Fe))},{ +className:"meta",match:b(/@/,Le)}],A={match:d(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +match:b(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,Be,"+") +},{className:"type",match:$e,relevance:0},{match:/[?!]+/,relevance:0},{ +match:/\.\.\./,relevance:0},{match:b(/\s+&\s+/,d($e)),relevance:0}]},M={ +begin://,keywords:l,contains:[...a,...c,...S,u,A]};A.contains.push(M) +;const C={begin:/\(/,end:/\)/,relevance:0,keywords:l,contains:["self",{ +match:b(Le,/\s*:/),keywords:"_|0",relevance:0 +},...a,...c,...g,...p,_,k,...O,...S,A]},T={begin://,contains:[...a,A] +},R={begin:/\(/,end:/\)/,keywords:l,contains:[{ +begin:m(d(b(Le,/\s*:/)),d(b(Le,/\s+/,Le,/\s*:/))),end:/:/,relevance:0, +contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Le}] +},...a,...c,...p,_,k,...S,A,C],endsParent:!0,illegal:/["']/},D={ +match:[/func/,/\s+/,m(x.match,Le,De)],className:{1:"keyword",3:"title.function" +},contains:[T,R,n],illegal:[/\[/,/%/]},I={ +match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"}, +contains:[T,R,n],illegal:/\[|%/},B={match:[/operator/,/\s+/,De],className:{ +1:"keyword",3:"title"}},L={begin:[/precedencegroup/,/\s+/,$e],className:{ +1:"keyword",3:"title"},contains:[A],keywords:[...Ae,...Se],end:/}/} +;for(const e of k.variants){const n=e.contains.find((e=>"interpol"===e.label)) +;n.keywords=l;const t=[...c,...g,...p,_,k,...O];n.contains=[...t,{begin:/\(/, +end:/\)/,contains:["self",...t]}]}return{name:"Swift",keywords:l, +contains:[...a,D,I,{beginKeywords:"struct protocol class extension enum actor", +end:"\\{",excludeEnd:!0,keywords:l,contains:[e.inherit(e.TITLE_MODE,{ +className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...c] +},B,L,{beginKeywords:"import",end:/$/,contains:[...a],relevance:0 +},...c,...g,...p,_,k,...O,...S,A,C]}},grmr_ruby:e=>{ +const n=e.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",a=n.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=n.concat(a,/(::\w+)*/),s={ +"variable.constant":["__FILE__","__LINE__","__ENCODING__"], +"variable.language":["self","super"], +keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield","include","extend","prepend","public","private","protected","raise","throw"], +built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"], +literal:["true","false","nil"]},r={className:"doctag",begin:"@[A-Za-z]+"},o={ +begin:"#<",end:">"},l=[e.COMMENT("#","$",{contains:[r] +}),e.COMMENT("^=begin","^=end",{contains:[r],relevance:10 +}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/, +end:/\}/,keywords:s},d={className:"string",contains:[e.BACKSLASH_ESCAPE,c], +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{ +begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{ +begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//, +end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{ +begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{ +begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ +begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ +begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ +begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), +contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[e.BACKSLASH_ESCAPE,c]})]}]},g="[0-9](_?[0-9])*",u={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},b={variants:[{match:/\(\)/},{ +className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0, +keywords:s}]},m=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{ +match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class", +4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,i],scope:{ +2:"title.class"},keywords:s},{relevance:0,match:[i,/\.new[. (]/],scope:{ +1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, +className:"variable.constant"},{relevance:0,match:a,scope:"title.class"},{ +match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[b]},{ +begin:e.IDENT_RE+"::"},{className:"symbol", +begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", +begin:":(?!\\s)",contains:[d,{begin:t}],relevance:0},u,{className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,excludeBegin:!0,excludeEnd:!0, +relevance:0,keywords:s},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*", +keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c], +illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{ +begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[", +end:"\\][a-z]*"}]}].concat(o,l),relevance:0}].concat(o,l) +;c.contains=m,b.contains=m;const p=[{begin:/^\s*=>/,starts:{end:"$",contains:m} +},{className:"meta.prompt", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",keywords:s,contains:m}}];return l.unshift(o),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/, +contains:[e.SHEBANG({binary:"ruby"})].concat(p).concat(l).concat(m)}}, +grmr_yaml:e=>{ +const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(a,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={ +end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},r={begin:/\{/, +end:/\}/,contains:[s],illegal:"\\n",relevance:0},o={begin:"\\[",end:"\\]", +contains:[s],illegal:"\\n",relevance:0},l=[{className:"attr",variants:[{ +begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ +begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", +relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type", +begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},r,o,a],c=[...l] +;return c.pop(),c.push(i),s.contains=c,{name:"YAML",case_insensitive:!0, +aliases:["yml"],contains:l}}});const je=ae;for(const e of Object.keys(Ue)){ +const n=e.replace("grmr_","").replace("_","-");je.registerLanguage(n,Ue[e])} +return je}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs); diff --git a/docs/api/flutter/static-assets/play_button.svg b/docs/api/flutter/static-assets/play_button.svg new file mode 100644 index 0000000..c39a2f4 --- /dev/null +++ b/docs/api/flutter/static-assets/play_button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/api/flutter/static-assets/readme.md b/docs/api/flutter/static-assets/readme.md new file mode 100644 index 0000000..6221671 --- /dev/null +++ b/docs/api/flutter/static-assets/readme.md @@ -0,0 +1,36 @@ +# Dart documentation generator + +This directory includes static sources used by the Dart documentation generator +through the `dart doc` command. + +To learn more about generating and viewing the generated documentation, +check out the [`dart doc` documentation][]. + +[`dart doc` documentation]: https://dart.dev/tools/dart-doc + +## Third-party resources + +## highlight.js + +Generated from https://highlightjs.org/download/ on 2021-07-13. + +**License:** https://github.com/highlightjs/highlight.js/blob/main/LICENSE + +**Included languages:** + +* bash +* c +* css +* dart +* diff +* html, xml +* java +* javascript +* json +* kotlin +* markdown +* objective-c +* plaintext +* shell +* swift +* yaml diff --git a/docs/api/flutter/static-assets/search.svg b/docs/api/flutter/static-assets/search.svg new file mode 100644 index 0000000..58f4299 --- /dev/null +++ b/docs/api/flutter/static-assets/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/api/flutter/static-assets/styles.css b/docs/api/flutter/static-assets/styles.css new file mode 100644 index 0000000..5fccbc5 --- /dev/null +++ b/docs/api/flutter/static-assets/styles.css @@ -0,0 +1 @@ +:root{--main-header-height: 50px}.light-theme{--main-bg-color: #fff;--main-header-color: #eeeeee;--main-sidebar-color: #727272;--main-text-color: #111111;--main-search-bar: #fff;--main-footer-background: #111111;--main-h-text: black;--main-hyperlinks-color: #0175C2;--main-inset-bgColor: #f5f5f7;--main-inset-borderColor: #dadce0;--main-code-bg: #f8f8f8;--main-keyword-color: #333;--main-tag-color: #000080;--main-section-color: #900;--main-comment-color: #998;--main-var-color: #008080;--main-string-color: #d14;--main-icon-color: black;--alert-info-fgColor: #2058b7;--alert-tip-fgColor: #0c7927;--alert-important-fgColor: #7953bf;--alert-warning-fgColor: #955d00;--alert-error-fgColor: #c43131;color-scheme:light}.light-theme #light-theme-button{display:none}.light-theme img[src$="#gh-dark-mode-only"]{display:none}.dark-theme{--main-bg-color: #10161E;--main-header-color: #1C2834;--main-sidebar-color: #fff;--main-text-color: #fff;--main-search-bar: #454545;--main-footer-background: #27323a;--main-hyperlinks-color: #00D2FA;--main-inset-bgColor: #242b32;--main-inset-borderColor: #676f7e;--main-code-bg: #10161E;--main-keyword-color: white;--main-tag-color: #00D2FA;--main-section-color: #FF2D64;--main-comment-color: #909CC3;--main-var-color: #55A09B;--main-string-color: #FF2D64;--main-icon-color: white;--alert-info-fgColor: #429bff;--alert-tip-fgColor: #25c04b;--alert-important-fgColor: #ad81ff;--alert-warning-fgColor: #cea11f;--alert-error-fgColor: #ff6666;color-scheme:dark}.dark-theme #dark-theme-button{display:none}.dark-theme img[src$="#gh-light-mode-only"]{display:none}#theme-button{appearance:none;border:none;background:none;cursor:pointer;position:absolute;right:30px;display:flex;align-items:center;justify-content:center;padding:4px;color:var(--main-icon-color)}#theme-button:hover{color:var(--main-hyperlinks-color)}html{scroll-padding-top:calc(var(--main-header-height) + 1rem)}html,body{margin:0;padding:0;width:100%;box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{display:flex;flex-direction:column;-webkit-text-size-adjust:100%;overflow-x:hidden;font-family:Roboto,sans-serif;font-size:16px;line-height:1.42857143;color:var(--main-text-color);background-color:var(--main-bg-color)}main{flex:1;display:flex;flex-direction:row}.gt-separated{list-style:none;padding:0;margin:0}.gt-separated.dark li:before{background-image:url("data:image/svg+xml;utf8,")}.gt-separated li{display:inline-block}.gt-separated li:before{background-image:url("data:image/svg+xml;utf8,");background-position:center;content:" ";margin:0 6px 0 4px;padding:0 3px 0 0}.gt-separated li:first-child:before{background-image:none;content:"";margin:0;padding:0}.breadcrumbs{padding:0;margin:8px 0 8px 0;white-space:nowrap;line-height:1}.breadcrumbs .gt-separated .dark .hidden-xs li+li:before{color:var(--main-h-text)}.breadcrumbs li a{color:var(--main-hyperlinks-color)}@media screen and (max-width: 840px){.breadcrumbs{margin:0 0 24px 0;overflow-x:hidden}}.breadcrumbs .self-crumb{color:var(--main-h-text)}.breadcrumbs .self-name{color:#555;display:none}pre code{white-space:pre;word-wrap:initial;font-size:100%}pre{border:1px solid #ddd;background-color:#eee;font-size:14px}@media(max-width: 840px){pre{margin:16px 0}}code{font-family:"Roboto Mono",Menlo,monospace;color:inherit;padding:.2em .4em;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}.hljs{display:block;overflow-x:auto;padding:.5em;color:var(--main-text-color);background:var(--main-code-bg)}.hljs .hljs-string,.hljs .hljs-doctag{color:var(--main-string-color)}.hljs .hljs-number,.hljs .hljs-literal,.hljs .hljs-variable,.hljs .hljs-template-variable,.hljs .hljs-tag .hljs-attr{color:var(--main-var-color)}.hljs .hljs-comment,.hljs .hljs-quote{color:var(--main-comment-color);font-style:italic}.hljs .hljs-title,.hljs .hljs-section,.hljs .hljs-selector-id{color:var(--main-section-color);font-weight:bold}.hljs .hljs-tag,.hljs .hljs-name,.hljs .hljs-attribute{color:var(--main-tag-color);font-weight:normal}.hljs .hljs-keyword,.hljs .hljs-selector-tag,.hljs .hljs-subst{color:var(--main-keyword-color);font-weight:bold}.main-content{flex:1;order:2;overflow-y:scroll;padding:10px 20px 0 20px;min-height:calc(100vh - var(--main-header-height))}a{text-decoration:none}button{padding:0}section{margin-bottom:36px}dl{margin:0}header{background-color:var(--main-header-color);box-shadow:0 3px 5px rgba(0,0,0,.1)}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;font-weight:400;margin-top:1.5em;color:var(--main-text-color)}h1.title{overflow:hidden;text-overflow:ellipsis}h1{font-size:37px;margin-top:0;margin-bottom:.67em}@media(max-width: 840px){h1{font-size:24px}}h2{font-size:28px}h5{font-size:16px}p{margin-bottom:1em;margin-top:0}a{color:var(--main-hyperlinks-color)}a:hover{color:#13b9fd}.fixed{white-space:pre}header a,header p,header li{color:#0175c2}header a:hover{color:#0175c2}header h1 .kind{color:#555}header h1{font-weight:400;margin-bottom:16px}dt{font-weight:normal}dd{color:var(--main-text-color);margin-bottom:1em;margin-left:0}dd.callable,dd.constant,dd.property{margin-bottom:24px}dd p{overflow-x:hidden;text-overflow:ellipsis;margin-bottom:0}table{margin-bottom:1em}table,th,td{border:1px solid #d3d3d3;border-collapse:collapse}th,td{padding:8px}.category{padding:2px 4px;font-size:12px;border-radius:4px;background-color:#999;text-transform:uppercase;color:#fff;opacity:.5}.category a{color:#fff}h1 .category{vertical-align:middle}.category.linked{font-weight:bold;opacity:1}.category.cp-0{background-color:#54b7c4}.category.cp-1{background-color:#54c47f}.category.cp-2{background-color:#c4c254}.category.cp-3{background-color:#c49f54}.category.cp-4{background-color:#c45465}.category.cp-5{background-color:#c454c4}.feature{display:inline-block;background:var(--main-bg-color);border:1px solid var(--main-hyperlinks-color);border-radius:20px;color:var(--main-hyperlinks-color);font-size:12px;padding:1px 6px;margin:0 8px 0 0}h1 .feature{vertical-align:middle;margin:0 -2px 0 0}a.feature:hover{border-color:#13b9fd}.markdown.desc{margin-bottom:1em;max-width:700px}.markdown h1{font-size:24px;margin-bottom:8px}.markdown h2{font-size:20px;margin-top:24px;margin-bottom:8px}.markdown h3{font-size:18px;margin-bottom:8px;color:var(--main-text-color)}.markdown h4{font-size:16px;margin-bottom:0}.markdown li p{margin:0}section#setter,div#setter{border-top:1px solid #ddd;padding-top:36px}section.summary dt,div.summary dt{margin-left:24px;text-indent:-24px}li.inherited a{opacity:.65;font-style:italic}dt.constant+dd p{margin-bottom:1em}dl.dl-horizontal dd{margin-left:initial}dl.dl-horizontal dt{font-style:normal;text-align:left;color:#727272;margin-right:20px;width:initial}dl dt.callable .name{float:none;width:auto}dl dt .name{font-weight:500}.main-content.extension-page .from-extension{display:none}sup.muted{color:var(--main-sidebar-color);font-size:.6em}.from-extension>span{color:var(--alert-warning-fgColor);font-style:italic;padding:2px}.btn-group{position:relative;display:inline-flex;vertical-align:middle}.source-link{padding:18px 4px;font-size:18px;vertical-align:middle}@media(max-width: 840px){.source-link{padding:7px 2px;font-size:10px}}#external-links{float:right}@media(max-width: 840px){.hidden-xs{display:none !important}}@media(min-width: 841px){.hidden-l{display:none !important}}li .material-symbols-outlined,dt .material-symbols-outlined{font-size:1em;vertical-align:text-bottom}dt .material-symbols-outlined{text-indent:0}.type-parameter{white-space:nowrap}.parameter-list{display:table-cell;margin-left:10px;list-style-type:none;padding-inline-start:unset}.parameter-list.single-line{display:inline;margin-left:0}.parameter-list.single-line>li{display:inline}.parameter-list.single-line>li>.parameter{display:inline;margin-left:0;text-indent:0}.signature{color:var(--main-text-color)}.signature a{color:var(--main-hyperlinks-color)}.deprecated{text-decoration:line-through}.multi-line-signature{font-size:17px;color:#727272}.multi-line-signature .type-parameter .parameter{margin-left:0;display:unset}.multi-line-signature .parameter{margin-left:60px;display:block;text-indent:-36px}.annotation-list{list-style:none;padding:0;display:inline}.comma-separated{list-style:none;padding:0;display:inline}.comma-separated li{display:inline}.comma-separated li:not(:last-child):after{content:", "}.container>section:first-child{border:0}.constructor-modifier{font-style:italic}section .multi-line-signature div.parameters,div .multi-line-signature div.parameters{margin-left:24px}#instance-methods dt.inherited .name,#instance-properties dt.inherited .name,#operators dt.inherited .name{font-weight:400;font-style:italic}#instance-methods dt.inherited .signature,#instance-properties dt.inherited .signature,#operators dt.inherited .signature{font-weight:400}footer{flex:0 0 16px;text-align:center;padding:16px 20px;color:#fff;background-color:var(--main-footer-background);width:100%}footer p{margin:0}footer .no-break{white-space:nowrap}footer .container{padding-left:0;padding-right:0}footer a,footer a:hover{color:#fff}.markdown-alert{margin-top:1rem;margin-bottom:1rem;padding:.75rem;--alert-title-color: --main-inset-borderColor;background-color:var(--main-inset-bgColor);border-left:solid .25rem var(--alert-title-color)}.markdown-alert>:last-child{margin-bottom:0}.markdown-alert .markdown-alert-title{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:1.125rem;font-weight:500;-webkit-font-smoothing:antialiased;color:var(--alert-title-color, inherit)}.markdown-alert .markdown-alert-title::before{font:22px/1 "Material Symbols Outlined";user-select:none}.markdown-alert.markdown-alert-note{--alert-title-color: var(--alert-info-fgColor)}.markdown-alert.markdown-alert-note .markdown-alert-title::before{content:"info"}.markdown-alert.markdown-alert-tip{--alert-title-color: var(--alert-tip-fgColor)}.markdown-alert.markdown-alert-tip .markdown-alert-title::before{content:"lightbulb"}.markdown-alert.markdown-alert-important{--alert-title-color: var(--alert-important-fgColor)}.markdown-alert.markdown-alert-important .markdown-alert-title::before{content:"feedback"}.markdown-alert.markdown-alert-warning{--alert-title-color: var(--alert-warning-fgColor)}.markdown-alert.markdown-alert-warning .markdown-alert-title::before{content:"warning"}.markdown-alert.markdown-alert-caution{--alert-title-color: var(--alert-error-fgColor)}.markdown-alert.markdown-alert-caution .markdown-alert-title::before{content:"report"}header{flex:0 0 var(--main-header-height, 50px);display:flex;flex-direction:row;align-items:center;position:sticky;top:0;z-index:10;padding-left:30px;padding-right:30px;background-color:var(--main-header-color)}@media(max-width: 840px){header{padding-left:0}}header ol{list-style:none;margin:0;padding:0}header ol li{display:inline}header form{display:flex;flex:1;justify-content:flex-end}header #header-search-sidebar{height:50px;margin-bottom:25px}header .self-name{color:#555;display:none}nav .navbar{background-color:inherit;min-height:50px;border:0}nav .navbar .row{padding-top:8px}nav .container{white-space:nowrap}@media(max-width: 840px){nav .container{width:100%}}@media print{.subnav,.sidebar{display:none}a[href]:after{content:"" !important}}.form-control{border-radius:0;border:0}@media screen and (max-width: 840px){form.search{display:none}}.navbar-right{padding-right:60px}.navbar-right .tt-menu{right:0;left:inherit !important;width:540px;max-height:280px;overflow-y:scroll}.tt-wrapper{position:relative;display:inline-block}.tt-wrapper .tt-input{position:relative;vertical-align:top}.tt-wrapper .typeahead{padding:16px 16px 16px 32px;width:422px;height:24px;font-size:15px;background-color:var(--main-bg-color);color:var(--main-text-color);background-image:url("./search.svg");background-repeat:no-repeat;background-position:2%;outline:0;background-size:20px}@media screen and (max-width: 840px){.tt-wrapper .typeahead{padding:17px 17px 17px 33px;width:240px;height:17px;border:1px solid #f5f5f5;background-position:3%;margin:10px 10px 10px 9px}}.tt-wrapper .tt-menu{position:absolute;top:100%;left:0;z-index:100;font-size:14px;margin:0;background-color:var(--main-bg-color);border:1px solid var(--main-header-color);box-shadow:0 5px 10px rgba(0,0,0,.2)}.search-summary{margin-bottom:10px}a.tt-container{font-size:16px;color:var(--main-hyperlinks-color)}.enter-search-message{position:sticky;top:0;background-color:#aaa;padding:0;font-size:14px;margin:0;clear:both;text-align:center;color:#000}.tt-suggestion:hover{cursor:pointer;color:#fff;background-color:#0097cf}.tt-suggestion:hover .search-from-lib{color:#ddd}.tt-suggestion.tt-cursor{color:#fff;background-color:#0097cf}.tt-suggestion.tt-cursor .search-from-lib{color:#ddd}.tt-suggestion p{margin:0}.tt-container{font-size:14px;margin-bottom:0;margin-top:15px}.tt-container .tt-container-text{color:var(--main-text-color)}.tt-search-results .tt-container{margin-top:5px;margin-bottom:5px}.tt-search-results .tt-container-text{display:none}.tt-search-results .tt-suggestion{color:var(--main-text-color);margin-top:5px;overflow:hidden;padding-left:10px;padding-right:10px;text-overflow:ellipsis;white-space:nowrap}.tt-search-results .tt-suggestion-title{font-size:14px;padding-right:5px}.tt-search-results .tt-suggestion-container{color:var(--main-keyword-color);font-size:14px;font-style:italic;padding-right:5px}.tt-search-results .one-line-description{color:var(--main-keyword-color);display:inline;margin-left:0}.tt-search-results .one-line-description::before{content:open-quote}.tt-search-results .one-line-description::after{content:close-quote}#dartdoc-main-content .tt-suggestion{color:var(--main-text-color);margin-top:5px;margin-bottom:10px;border-style:solid;border-color:#d3d3d3;border-width:.5px}#dartdoc-main-content .tt-suggestion-title{display:block;font-weight:500;margin:4px 10px 0}#dartdoc-main-content .one-line-description{display:block;margin:2px 10px 3px}#dartdoc-main-content .tt-suggestion-container{display:none}.search-body{border:1px solid #7f7f7f;width:fit-content;max-width:440px;box-shadow:3px 3px 5px rgba(0,0,0,.1)}.sidebar h5,.sidebar ol li{text-overflow:ellipsis;overflow:hidden;padding:3px 0 3px 3px}.sidebar ol{list-style:none;line-height:22px;margin-top:0;margin-bottom:0;padding:0 0 15px 0}.sidebar ol li.section-title{font-size:18px;font-weight:normal;text-transform:uppercase;padding-top:25px}.sidebar ol li.section-subtitle{font-weight:400;text-transform:uppercase}.sidebar ol li.section-subtitle a{color:inherit}.sidebar ol li.section-subitem{margin-left:12px}.sidebar ol li:first-child{padding-top:3px;margin-top:0}.sidebar h5{color:var(--main-sidebar-color);font-size:18px;margin:0 0 22px 0;padding-top:0}.sidebar h5 a,.sidebar h5 a:hover{color:var(--main-sidebar-color)}#sidenav-left-toggle{display:none;vertical-align:text-bottom;padding:0;color:var(--main-icon-color);user-select:none;cursor:pointer}#sidenav-left-toggle:hover{color:var(--main-hyperlinks-color)}@media screen and (max-width: 320px){#sidenav-left-toggle{margin-right:10px;margin-left:20px}}#overlay-under-drawer{display:none;opacity:.4;height:100%;z-index:1999;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000}.sidebar-offcanvas-left,.sidebar-offcanvas-right{position:sticky;top:var(--main-header-height);overflow-y:auto;min-height:0;max-height:calc(100vh - var(--main-header-height))}.sidebar-offcanvas-left{flex:0 1 230px;order:1;padding:25px 0 15px 30px;margin-right:20px}.sidebar-offcanvas-left h5{margin-bottom:10px}.sidebar-offcanvas-left h5:last-of-type{border:0;margin-bottom:25px}.sidebar-offcanvas-right{flex:0 1 12em;order:3;padding:25px 20px 15px 15px}@media screen and (max-width: 992px){.sidebar-offcanvas-right{display:none}}@media screen and (max-width: 840px){#sidenav-left-toggle{display:inline;width:24px;height:24px;border:none;margin-right:24px;margin-left:24px;font-size:24px}#overlay-under-drawer.active{display:block}.sidebar-offcanvas-left{left:-100%;position:fixed;transition:all .25s ease-out;z-index:2000;top:0;width:280px;max-width:calc(100% - 20px);height:90%;background-color:var(--main-bg-color);overflow-y:scroll;padding:10px;margin:10px 10px;box-shadow:5px 5px 5px 5px #444}.sidebar-offcanvas-left.active{left:0}ol#sidebar-nav{font-size:18px;white-space:pre-line}header .self-name{display:inline-block;color:var(--main-hyperlinks-color)}} diff --git a/docs/api/web/functions/debounce.html b/docs/api/web/functions/debounce.html index d719ff0..8969d94 100644 --- a/docs/api/web/functions/debounce.html +++ b/docs/api/web/functions/debounce.html @@ -6,4 +6,4 @@
const search = debounce((query: string) => {
console.log('Searching:', query);
}, 300);

search('hello'); // Will execute after 300ms if no other calls are made
-
+
diff --git a/docs/api/web/functions/formatCurrency.html b/docs/api/web/functions/formatCurrency.html index 6e8247b..c861852 100644 --- a/docs/api/web/functions/formatCurrency.html +++ b/docs/api/web/functions/formatCurrency.html @@ -6,4 +6,4 @@
formatCurrency(1234.56); // "1.234,56 €" (es-ES default)
formatCurrency(1234.56, "USD", "en-US"); // "$1,234.56"
formatCurrency(1000, "JPY", "ja-JP"); // "¥1,000"
-
+
diff --git a/docs/api/web/functions/isEmail.html b/docs/api/web/functions/isEmail.html index fe6b7a3..30c3645 100644 --- a/docs/api/web/functions/isEmail.html +++ b/docs/api/web/functions/isEmail.html @@ -4,4 +4,4 @@
isEmail('user@example.com'); // true
isEmail('invalid@'); // false
isEmail(' test@domain.org '); // true (whitespace is trimmed)
-
+
From 83a769e7fbe55275fc7224b7f93d003b7398baa5 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:51:33 +0000 Subject: [PATCH 05/10] fix(ci): improve Flutter CI workflow and resolve analyzer issues - Fix unnecessary dart:async import in debounce_test.dart - Remove incompatible dart-test job - Update Flutter version from 3.16.0 to 3.24.0 for better compatibility - Standardize workflow triggers to use release/develop branches - Add missing workflow features --- .github/workflows/flutter.yml | 53 +++++++++---------- packages/core/flutter/test/debounce_test.dart | 1 - 2 files changed, 24 insertions(+), 30 deletions(-) diff --git a/.github/workflows/flutter.yml b/.github/workflows/flutter.yml index 7bdb4fb..6ef9659 100644 --- a/.github/workflows/flutter.yml +++ b/.github/workflows/flutter.yml @@ -2,20 +2,30 @@ name: Flutter CI on: push: - branches: [ main, develop ] + branches: [ release, develop ] paths: - 'packages/core/flutter/**' - '.github/workflows/flutter.yml' pull_request: - branches: [ main, develop ] + branches: [ release, develop ] paths: - 'packages/core/flutter/**' - '.github/workflows/flutter.yml' + workflow_dispatch: + +permissions: + contents: read + pull-requests: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: - test: - name: Test Flutter Package + flutter: + name: Flutter (lint+build+test+docs) runs-on: ubuntu-latest + if: ${{ !contains(github.event.head_commit.message, '[skip flutter]') }} steps: - name: Checkout repository @@ -24,7 +34,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.16.0' + flutter-version: '3.24.0' channel: 'stable' - name: Verify Flutter installation @@ -49,30 +59,15 @@ jobs: flags: flutter name: flutter-coverage - dart-test: - name: Test Dart VM - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v4 + - name: Generate docs (dart doc) + working-directory: packages/core/flutter + run: dart doc --output ../../../docs/api/flutter || echo "Dart doc generation failed" - - name: Setup Dart - uses: dart-lang/setup-dart@v1 + - name: Upload flutter docs + uses: actions/upload-artifact@v4 with: - sdk: '3.2.0' + name: flutter-docs-${{ github.run_id }} + path: docs/api/flutter + if-no-files-found: ignore + retention-days: 30 - - name: Verify Dart installation - run: dart --version - - - name: Get dependencies - working-directory: packages/core/flutter - run: dart pub get - - - name: Analyze code - working-directory: packages/core/flutter - run: dart analyze - - - name: Run tests - working-directory: packages/core/flutter - run: dart test diff --git a/packages/core/flutter/test/debounce_test.dart b/packages/core/flutter/test/debounce_test.dart index 27c284c..f8de686 100644 --- a/packages/core/flutter/test/debounce_test.dart +++ b/packages/core/flutter/test/debounce_test.dart @@ -1,4 +1,3 @@ -import 'dart:async'; import 'package:flutter_test/flutter_test.dart'; import '../lib/src/debounce.dart'; From 2bb01e56657055cfb9143c3c44a7432c468bb797 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 14:54:27 +0000 Subject: [PATCH 06/10] chore: clean up repository and improve gitignore - Remove generated documentation files from tracking - Remove Flutter build artifacts - Add comprehensive gitignore patterns for --- .gitignore | 15 +- .../api/android/images/anchor-copy-button.svg | 8 - docs/api/android/images/arrow_down.svg | 7 - docs/api/android/images/burger.svg | 9 - docs/api/android/images/copy-icon.svg | 7 - .../android/images/copy-successful-icon.svg | 7 - docs/api/android/images/footer-go-to-link.svg | 7 - docs/api/android/images/go-to-top-icon.svg | 8 - docs/api/android/images/homepage.svg | 3 - docs/api/android/images/logo-icon.svg | 14 - .../nav-icons/abstract-class-kotlin.svg | 26 - .../images/nav-icons/abstract-class.svg | 20 - .../images/nav-icons/annotation-kotlin.svg | 13 - .../android/images/nav-icons/annotation.svg | 7 - .../android/images/nav-icons/class-kotlin.svg | 13 - docs/api/android/images/nav-icons/class.svg | 7 - .../android/images/nav-icons/enum-kotlin.svg | 13 - docs/api/android/images/nav-icons/enum.svg | 7 - .../images/nav-icons/exception-class.svg | 7 - .../android/images/nav-icons/field-value.svg | 10 - .../images/nav-icons/field-variable.svg | 10 - .../api/android/images/nav-icons/function.svg | 7 - .../images/nav-icons/interface-kotlin.svg | 13 - .../android/images/nav-icons/interface.svg | 7 - docs/api/android/images/nav-icons/object.svg | 13 - .../images/nav-icons/typealias-kotlin.svg | 13 - docs/api/android/images/theme-toggle.svg | 7 - docs/api/android/index.html | 99 - .../com.kompkit.core/debounce.html | 80 - .../com.kompkit.core/format-currency.html | 80 - .../com.kompkit.core/index.html | 133 - .../com.kompkit.core/is-email.html | 80 - .../android/kompkit-core-android/package-list | 8 - docs/api/android/navigation.html | 16 - docs/api/android/scripts/clipboard.js | 56 - docs/api/android/scripts/main.js | 44 - docs/api/android/scripts/navigation-loader.js | 95 - docs/api/android/scripts/pages.json | 1 - .../scripts/platform-content-handler.js | 400 -- docs/api/android/scripts/prism.js | 22 - .../android/scripts/sourceset_dependencies.js | 1 - .../symbol-parameters-wrapper_deferred.js | 64 - docs/api/android/styles/font-jb-sans-auto.css | 36 - docs/api/android/styles/logo-styles.css | 9 - docs/api/android/styles/main.css | 124 - docs/api/android/styles/prism.css | 217 - docs/api/android/styles/style.css | 1509 ------ docs/api/flutter/__404error.html | 103 - docs/api/flutter/categories.json | 1 - .../VoidCallback.html | 105 - .../debounce.html | 137 - .../debounceVoid.html | 135 - ...tter_lib_src_debounce-library-sidebar.html | 16 - ...core_flutter_lib_src_debounce-library.html | 10 - .../index.html | 164 - ...lutter_lib_src_format-library-sidebar.html | 13 - ...s_core_flutter_lib_src_format-library.html | 10 - .../formatCurrency.html | 153 - .../index.html | 132 - ...tter_lib_src_validate-library-sidebar.html | 13 - ...core_flutter_lib_src_validate-library.html | 10 - .../index.html | 132 - .../isEmail.html | 132 - docs/api/flutter/index.html | 130 - docs/api/flutter/index.json | 1 - .../flutter/kompkit_core/VoidCallback.html | 105 - docs/api/flutter/kompkit_core/debounce.html | 137 - .../flutter/kompkit_core/debounceVoid.html | 135 - .../flutter/kompkit_core/formatCurrency.html | 166 - docs/api/flutter/kompkit_core/index.html | 221 - docs/api/flutter/kompkit_core/isEmail.html | 132 - .../kompkit_core-library-sidebar.html | 18 - .../kompkit_core/kompkit_core-library.html | 10 - docs/api/flutter/search.html | 82 - docs/api/flutter/static-assets/docs.dart.js | 4474 ----------------- .../flutter/static-assets/docs.dart.js.map | 16 - docs/api/flutter/static-assets/favicon.png | Bin 1767 -> 0 bytes docs/api/flutter/static-assets/github.css | 99 - .../flutter/static-assets/highlight.pack.js | 780 --- .../api/flutter/static-assets/play_button.svg | 1 - docs/api/flutter/static-assets/readme.md | 36 - docs/api/flutter/static-assets/search.svg | 1 - docs/api/flutter/static-assets/styles.css | 1 - docs/api/web/.nojekyll | 1 - docs/api/web/assets/hierarchy.js | 1 - docs/api/web/assets/highlight.css | 85 - docs/api/web/assets/icons.js | 18 - docs/api/web/assets/icons.svg | 1 - docs/api/web/assets/main.js | 60 - docs/api/web/assets/navigation.js | 1 - docs/api/web/assets/search.js | 1 - docs/api/web/assets/style.css | 1633 ------ docs/api/web/functions/debounce.html | 9 - docs/api/web/functions/formatCurrency.html | 9 - docs/api/web/functions/isEmail.html | 7 - docs/api/web/hierarchy.html | 1 - docs/api/web/index.html | 1 - .../flutter/.dart_tool/package_config.json | 388 -- .../flutter/.dart_tool/package_graph.json | 569 --- packages/core/flutter/.dart_tool/version | 1 - 100 files changed, 14 insertions(+), 13935 deletions(-) delete mode 100644 docs/api/android/images/anchor-copy-button.svg delete mode 100644 docs/api/android/images/arrow_down.svg delete mode 100644 docs/api/android/images/burger.svg delete mode 100644 docs/api/android/images/copy-icon.svg delete mode 100644 docs/api/android/images/copy-successful-icon.svg delete mode 100644 docs/api/android/images/footer-go-to-link.svg delete mode 100644 docs/api/android/images/go-to-top-icon.svg delete mode 100644 docs/api/android/images/homepage.svg delete mode 100644 docs/api/android/images/logo-icon.svg delete mode 100644 docs/api/android/images/nav-icons/abstract-class-kotlin.svg delete mode 100644 docs/api/android/images/nav-icons/abstract-class.svg delete mode 100644 docs/api/android/images/nav-icons/annotation-kotlin.svg delete mode 100644 docs/api/android/images/nav-icons/annotation.svg delete mode 100644 docs/api/android/images/nav-icons/class-kotlin.svg delete mode 100644 docs/api/android/images/nav-icons/class.svg delete mode 100644 docs/api/android/images/nav-icons/enum-kotlin.svg delete mode 100644 docs/api/android/images/nav-icons/enum.svg delete mode 100644 docs/api/android/images/nav-icons/exception-class.svg delete mode 100644 docs/api/android/images/nav-icons/field-value.svg delete mode 100644 docs/api/android/images/nav-icons/field-variable.svg delete mode 100644 docs/api/android/images/nav-icons/function.svg delete mode 100644 docs/api/android/images/nav-icons/interface-kotlin.svg delete mode 100644 docs/api/android/images/nav-icons/interface.svg delete mode 100644 docs/api/android/images/nav-icons/object.svg delete mode 100644 docs/api/android/images/nav-icons/typealias-kotlin.svg delete mode 100644 docs/api/android/images/theme-toggle.svg delete mode 100644 docs/api/android/index.html delete mode 100644 docs/api/android/kompkit-core-android/com.kompkit.core/debounce.html delete mode 100644 docs/api/android/kompkit-core-android/com.kompkit.core/format-currency.html delete mode 100644 docs/api/android/kompkit-core-android/com.kompkit.core/index.html delete mode 100644 docs/api/android/kompkit-core-android/com.kompkit.core/is-email.html delete mode 100644 docs/api/android/kompkit-core-android/package-list delete mode 100644 docs/api/android/navigation.html delete mode 100644 docs/api/android/scripts/clipboard.js delete mode 100644 docs/api/android/scripts/main.js delete mode 100644 docs/api/android/scripts/navigation-loader.js delete mode 100644 docs/api/android/scripts/pages.json delete mode 100644 docs/api/android/scripts/platform-content-handler.js delete mode 100644 docs/api/android/scripts/prism.js delete mode 100644 docs/api/android/scripts/sourceset_dependencies.js delete mode 100644 docs/api/android/scripts/symbol-parameters-wrapper_deferred.js delete mode 100644 docs/api/android/styles/font-jb-sans-auto.css delete mode 100644 docs/api/android/styles/logo-styles.css delete mode 100644 docs/api/android/styles/main.css delete mode 100644 docs/api/android/styles/prism.css delete mode 100644 docs/api/android/styles/style.css delete mode 100644 docs/api/flutter/__404error.html delete mode 100644 docs/api/flutter/categories.json delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html delete mode 100644 docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html delete mode 100644 docs/api/flutter/index.html delete mode 100644 docs/api/flutter/index.json delete mode 100644 docs/api/flutter/kompkit_core/VoidCallback.html delete mode 100644 docs/api/flutter/kompkit_core/debounce.html delete mode 100644 docs/api/flutter/kompkit_core/debounceVoid.html delete mode 100644 docs/api/flutter/kompkit_core/formatCurrency.html delete mode 100644 docs/api/flutter/kompkit_core/index.html delete mode 100644 docs/api/flutter/kompkit_core/isEmail.html delete mode 100644 docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html delete mode 100644 docs/api/flutter/kompkit_core/kompkit_core-library.html delete mode 100644 docs/api/flutter/search.html delete mode 100644 docs/api/flutter/static-assets/docs.dart.js delete mode 100644 docs/api/flutter/static-assets/docs.dart.js.map delete mode 100644 docs/api/flutter/static-assets/favicon.png delete mode 100644 docs/api/flutter/static-assets/github.css delete mode 100644 docs/api/flutter/static-assets/highlight.pack.js delete mode 100644 docs/api/flutter/static-assets/play_button.svg delete mode 100644 docs/api/flutter/static-assets/readme.md delete mode 100644 docs/api/flutter/static-assets/search.svg delete mode 100644 docs/api/flutter/static-assets/styles.css delete mode 100644 docs/api/web/.nojekyll delete mode 100644 docs/api/web/assets/hierarchy.js delete mode 100644 docs/api/web/assets/highlight.css delete mode 100644 docs/api/web/assets/icons.js delete mode 100644 docs/api/web/assets/icons.svg delete mode 100644 docs/api/web/assets/main.js delete mode 100644 docs/api/web/assets/navigation.js delete mode 100644 docs/api/web/assets/search.js delete mode 100644 docs/api/web/assets/style.css delete mode 100644 docs/api/web/functions/debounce.html delete mode 100644 docs/api/web/functions/formatCurrency.html delete mode 100644 docs/api/web/functions/isEmail.html delete mode 100644 docs/api/web/hierarchy.html delete mode 100644 docs/api/web/index.html delete mode 100644 packages/core/flutter/.dart_tool/package_config.json delete mode 100644 packages/core/flutter/.dart_tool/package_graph.json delete mode 100644 packages/core/flutter/.dart_tool/version diff --git a/.gitignore b/.gitignore index 0775e99..c8fc506 100644 --- a/.gitignore +++ b/.gitignore @@ -49,4 +49,17 @@ build/ captures/ .externalNativeBuild .cxx -local.properties \ No newline at end of file +local.properties + +# Flutter/Dart specific +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +pubspec.lock +*.g.dart + +# Generated documentation (regenerated by CI) +docs/api/ \ No newline at end of file diff --git a/docs/api/android/images/anchor-copy-button.svg b/docs/api/android/images/anchor-copy-button.svg deleted file mode 100644 index 19c1fa3..0000000 --- a/docs/api/android/images/anchor-copy-button.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/docs/api/android/images/arrow_down.svg b/docs/api/android/images/arrow_down.svg deleted file mode 100644 index 639aaf1..0000000 --- a/docs/api/android/images/arrow_down.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docs/api/android/images/burger.svg b/docs/api/android/images/burger.svg deleted file mode 100644 index fcca732..0000000 --- a/docs/api/android/images/burger.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/copy-icon.svg b/docs/api/android/images/copy-icon.svg deleted file mode 100644 index 2cb02ec..0000000 --- a/docs/api/android/images/copy-icon.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docs/api/android/images/copy-successful-icon.svg b/docs/api/android/images/copy-successful-icon.svg deleted file mode 100644 index c4b9538..0000000 --- a/docs/api/android/images/copy-successful-icon.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docs/api/android/images/footer-go-to-link.svg b/docs/api/android/images/footer-go-to-link.svg deleted file mode 100644 index a87add7..0000000 --- a/docs/api/android/images/footer-go-to-link.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docs/api/android/images/go-to-top-icon.svg b/docs/api/android/images/go-to-top-icon.svg deleted file mode 100644 index abc3d1c..0000000 --- a/docs/api/android/images/go-to-top-icon.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/docs/api/android/images/homepage.svg b/docs/api/android/images/homepage.svg deleted file mode 100644 index e3c83b1..0000000 --- a/docs/api/android/images/homepage.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/docs/api/android/images/logo-icon.svg b/docs/api/android/images/logo-icon.svg deleted file mode 100644 index e42f957..0000000 --- a/docs/api/android/images/logo-icon.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/abstract-class-kotlin.svg b/docs/api/android/images/nav-icons/abstract-class-kotlin.svg deleted file mode 100644 index 19d6148..0000000 --- a/docs/api/android/images/nav-icons/abstract-class-kotlin.svg +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/abstract-class.svg b/docs/api/android/images/nav-icons/abstract-class.svg deleted file mode 100644 index 6018203..0000000 --- a/docs/api/android/images/nav-icons/abstract-class.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/annotation-kotlin.svg b/docs/api/android/images/nav-icons/annotation-kotlin.svg deleted file mode 100644 index b90f508..0000000 --- a/docs/api/android/images/nav-icons/annotation-kotlin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/annotation.svg b/docs/api/android/images/nav-icons/annotation.svg deleted file mode 100644 index b80c54b..0000000 --- a/docs/api/android/images/nav-icons/annotation.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/class-kotlin.svg b/docs/api/android/images/nav-icons/class-kotlin.svg deleted file mode 100644 index 797a242..0000000 --- a/docs/api/android/images/nav-icons/class-kotlin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/class.svg b/docs/api/android/images/nav-icons/class.svg deleted file mode 100644 index 3f1ad16..0000000 --- a/docs/api/android/images/nav-icons/class.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/enum-kotlin.svg b/docs/api/android/images/nav-icons/enum-kotlin.svg deleted file mode 100644 index 775a7cc..0000000 --- a/docs/api/android/images/nav-icons/enum-kotlin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/enum.svg b/docs/api/android/images/nav-icons/enum.svg deleted file mode 100644 index fa7f247..0000000 --- a/docs/api/android/images/nav-icons/enum.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/exception-class.svg b/docs/api/android/images/nav-icons/exception-class.svg deleted file mode 100644 index c0b2bde..0000000 --- a/docs/api/android/images/nav-icons/exception-class.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/field-value.svg b/docs/api/android/images/nav-icons/field-value.svg deleted file mode 100644 index 2771ee5..0000000 --- a/docs/api/android/images/nav-icons/field-value.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - diff --git a/docs/api/android/images/nav-icons/field-variable.svg b/docs/api/android/images/nav-icons/field-variable.svg deleted file mode 100644 index e2d2bbd..0000000 --- a/docs/api/android/images/nav-icons/field-variable.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - diff --git a/docs/api/android/images/nav-icons/function.svg b/docs/api/android/images/nav-icons/function.svg deleted file mode 100644 index f0da64a..0000000 --- a/docs/api/android/images/nav-icons/function.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/interface-kotlin.svg b/docs/api/android/images/nav-icons/interface-kotlin.svg deleted file mode 100644 index 5e16326..0000000 --- a/docs/api/android/images/nav-icons/interface-kotlin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/interface.svg b/docs/api/android/images/nav-icons/interface.svg deleted file mode 100644 index 32063ba..0000000 --- a/docs/api/android/images/nav-icons/interface.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/docs/api/android/images/nav-icons/object.svg b/docs/api/android/images/nav-icons/object.svg deleted file mode 100644 index 31f0ee3..0000000 --- a/docs/api/android/images/nav-icons/object.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/nav-icons/typealias-kotlin.svg b/docs/api/android/images/nav-icons/typealias-kotlin.svg deleted file mode 100644 index f4bb238..0000000 --- a/docs/api/android/images/nav-icons/typealias-kotlin.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - diff --git a/docs/api/android/images/theme-toggle.svg b/docs/api/android/images/theme-toggle.svg deleted file mode 100644 index df86202..0000000 --- a/docs/api/android/images/theme-toggle.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/docs/api/android/index.html b/docs/api/android/index.html deleted file mode 100644 index 2100167..0000000 --- a/docs/api/android/index.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - kompkit-core-android - - - - - - - - - - - - - - - - - - - -
- -
- -
-
- -
-

kompkit-core-android

-
-

Packages

-
-
-
-
-
- - -
Link copied to clipboard
-
-
-
- -
-
-
-
-
-
-
-
- -
-
-
- - diff --git a/docs/api/android/kompkit-core-android/com.kompkit.core/debounce.html b/docs/api/android/kompkit-core-android/com.kompkit.core/debounce.html deleted file mode 100644 index b95dc03..0000000 --- a/docs/api/android/kompkit-core-android/com.kompkit.core/debounce.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - debounce - - - - - - - - - - - - - - - - - - - -
- -
- -
-
- -
-

debounce

-
-
fun <T> debounce(waitMs: Long = 250, scope: CoroutineScope, dest: (T) -> Unit): (T) -> Unit

Debounces consecutive calls and emits only the last one after waitMs milliseconds. Subsequent calls within the wait period cancel the previous scheduled execution.

Return

A debounced function that accepts a parameter of type T.

Parameters

T

The type of parameter accepted by the debounced function.

waitMs

Milliseconds to wait before invoking the destination callback. Defaults to 250ms.

scope

Coroutine scope used to schedule the delayed execution.

dest

Destination callback invoked after the debounce period elapses.

Samples

-
- -
-
-
- - diff --git a/docs/api/android/kompkit-core-android/com.kompkit.core/format-currency.html b/docs/api/android/kompkit-core-android/com.kompkit.core/format-currency.html deleted file mode 100644 index 81ebfa1..0000000 --- a/docs/api/android/kompkit-core-android/com.kompkit.core/format-currency.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - formatCurrency - - - - - - - - - - - - - - - - - - - -
- -
- -
-
- -
-

formatCurrency

-
-
fun formatCurrency(amount: Double, currency: String = "EUR", locale: Locale = Locale("es", "ES")): String

Formats a number as a localized currency string.

Return

A formatted currency string.

Parameters

amount

The numeric amount to format.

currency

The currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR".

locale

The locale for formatting. Defaults to Spanish (Spain).

Samples

-
- -
-
-
- - diff --git a/docs/api/android/kompkit-core-android/com.kompkit.core/index.html b/docs/api/android/kompkit-core-android/com.kompkit.core/index.html deleted file mode 100644 index 7d344f5..0000000 --- a/docs/api/android/kompkit-core-android/com.kompkit.core/index.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - com.kompkit.core - - - - - - - - - - - - - - - - - - - -
- -
- -
-
- -
-

Package-level declarations

-
-
-
-
-
-

Functions

-
-
-
-
- - -
Link copied to clipboard
-
-
-
-
fun <T> debounce(waitMs: Long = 250, scope: CoroutineScope, dest: (T) -> Unit): (T) -> Unit

Debounces consecutive calls and emits only the last one after waitMs milliseconds. Subsequent calls within the wait period cancel the previous scheduled execution.

-
-
-
-
- -
-
-
- - -
Link copied to clipboard
-
-
-
-
fun formatCurrency(amount: Double, currency: String = "EUR", locale: Locale = Locale("es", "ES")): String

Formats a number as a localized currency string.

-
-
-
-
- -
-
-
- - -
Link copied to clipboard
-
-
-
-
fun isEmail(value: String): Boolean

Validates whether a string matches a basic email pattern.

-
-
-
-
-
-
-
-
-
- -
-
-
- - diff --git a/docs/api/android/kompkit-core-android/com.kompkit.core/is-email.html b/docs/api/android/kompkit-core-android/com.kompkit.core/is-email.html deleted file mode 100644 index a7bd154..0000000 --- a/docs/api/android/kompkit-core-android/com.kompkit.core/is-email.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - isEmail - - - - - - - - - - - - - - - - - - - -
- -
- -
-
- -
-

isEmail

-
-
fun isEmail(value: String): Boolean

Validates whether a string matches a basic email pattern.

Return

true if the string is a valid email format, false otherwise.

Parameters

value

The string to validate.

Samples

-
- -
-
-
- - diff --git a/docs/api/android/kompkit-core-android/package-list b/docs/api/android/kompkit-core-android/package-list deleted file mode 100644 index 1b2505c..0000000 --- a/docs/api/android/kompkit-core-android/package-list +++ /dev/null @@ -1,8 +0,0 @@ -$dokka.format:html-v1 -$dokka.linkExtension:html -$dokka.location:com.kompkit.core////PointingToDeclaration/kompkit-core-android/com.kompkit.core/index.html -$dokka.location:com.kompkit.core//debounce/#kotlin.Long#kotlinx.coroutines.CoroutineScope#kotlin.Function1[TypeParam(bounds=[kotlin.Any?]),kotlin.Unit]/PointingToDeclaration/kompkit-core-android/com.kompkit.core/debounce.html -$dokka.location:com.kompkit.core//formatCurrency/#kotlin.Double#kotlin.String#java.util.Locale/PointingToDeclaration/kompkit-core-android/com.kompkit.core/format-currency.html -$dokka.location:com.kompkit.core//isEmail/#kotlin.String/PointingToDeclaration/kompkit-core-android/com.kompkit.core/is-email.html -com.kompkit.core - diff --git a/docs/api/android/navigation.html b/docs/api/android/navigation.html deleted file mode 100644 index e6cb226..0000000 --- a/docs/api/android/navigation.html +++ /dev/null @@ -1,16 +0,0 @@ - - diff --git a/docs/api/android/scripts/clipboard.js b/docs/api/android/scripts/clipboard.js deleted file mode 100644 index 7a4f33c..0000000 --- a/docs/api/android/scripts/clipboard.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. - */ - -window.addEventListener('load', () => { - document.querySelectorAll('span.copy-icon').forEach(element => { - element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); - }) - - document.querySelectorAll('span.anchor-icon').forEach(element => { - element.addEventListener('click', (el) => { - if(element.hasAttribute('pointing-to')){ - const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') - copyTextToClipboard(element, location) - } - }); - }) -}) - -const copyElementsContentToClipboard = (element) => { - const selection = window.getSelection(); - const range = document.createRange(); - range.selectNodeContents(element.parentNode.parentNode); - selection.removeAllRanges(); - selection.addRange(range); - - copyAndShowPopup(element, () => selection.removeAllRanges()) -} - -const copyTextToClipboard = (element, text) => { - var textarea = document.createElement("textarea"); - textarea.textContent = text; - textarea.style.position = "fixed"; - document.body.appendChild(textarea); - textarea.select(); - - copyAndShowPopup(element, () => document.body.removeChild(textarea)) -} - -const copyAndShowPopup = (element, after) => { - try { - document.execCommand('copy'); - element.nextElementSibling.classList.add('active-popup'); - setTimeout(() => { - element.nextElementSibling.classList.remove('active-popup'); - }, 1200); - } catch (e) { - console.error('Failed to write to clipboard:', e) - } - finally { - if(after) after() - } -} - -const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] - diff --git a/docs/api/android/scripts/main.js b/docs/api/android/scripts/main.js deleted file mode 100644 index ba6c347..0000000 --- a/docs/api/android/scripts/main.js +++ /dev/null @@ -1,44 +0,0 @@ -(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; -/*! - Copyright (c) 2018 Jed Watson. - Licensed under the MIT License (MIT), see - http://jedwatson.github.io/classnames -*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" - - - - - diff --git a/docs/api/flutter/categories.json b/docs/api/flutter/categories.json deleted file mode 100644 index fe51488..0000000 --- a/docs/api/flutter/categories.json +++ /dev/null @@ -1 +0,0 @@ -[] diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html deleted file mode 100644 index 2c8de79..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/VoidCallback.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - VoidCallback typedef - debounce library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
VoidCallback
- - -
-
-
-
-

VoidCallback typedef - -

-
- VoidCallback = - void Function() - -
- - -
-

Type definition for void callback functions

-
- - -
-

Implementation

-
typedef VoidCallback = void Function();
-
- -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html deleted file mode 100644 index f0c462a..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounce.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - - - debounce function - debounce library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
debounce
- - -
-
-
-
-

debounce<T> function - -

- -
- -Function -debounce<T>(
  1. Function fn, [
  2. -
  3. Duration wait = const Duration(milliseconds: 250)
  4. -
]) - - - -
- -
-

Debounces a function call by delaying its execution until after a specified wait period.

-

Subsequent calls within the wait period reset the timer, ensuring that the function -is only called once after the specified delay has elapsed without any new calls.

-

This is particularly useful for scenarios like search input fields, where you want -to wait for the user to stop typing before making an API call.

-

Parameters:

-
    -
  • fn - The function to debounce
  • -
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • -
-

Returns: A debounced version of the function that accepts a parameter of type T

-

Example:

-
final search = debounce<String>((String query) {
-  print('Searching: $query');
-}, const Duration(milliseconds: 300));
-
-search('hello'); // Will execute after 300ms if no other calls are made
-search('world'); // Previous call is cancelled, this will execute after 300ms
-
-
- - - -
-

Implementation

-
Function debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) {
-  Timer? timer;
-
-  return (T arg) {
-    timer?.cancel();
-    timer = Timer(wait, () => fn(arg));
-  };
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html deleted file mode 100644 index 1f94e55..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/debounceVoid.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - debounceVoid function - debounce library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
debounceVoid
- - -
-
-
-
-

debounceVoid function - -

- -
- -VoidCallback -debounceVoid(
  1. VoidCallback fn, [
  2. -
  3. Duration wait = const Duration(milliseconds: 250)
  4. -
]) - - - -
- -
-

Debounces a void function (function with no parameters).

-

Similar to debounce, but specifically designed for functions that don't take parameters. -Useful for actions like saving data, refreshing UI, or other side effects.

-

Parameters:

-
    -
  • fn - The void function to debounce
  • -
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • -
-

Returns: A debounced version of the void function

-

Example:

-
final saveData = debounceVoid(() {
-  print('Saving data...');
-}, const Duration(milliseconds: 500));
-
-saveData(); // Will execute after 500ms if no other calls are made
-saveData(); // Previous call is cancelled, this will execute after 500ms
-
-
- - - -
-

Implementation

-
VoidCallback debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) {
-  Timer? timer;
-
-  return () {
-    timer?.cancel();
-    timer = Timer(wait, fn);
-  };
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html deleted file mode 100644 index 3416c45..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library-sidebar.html +++ /dev/null @@ -1,16 +0,0 @@ -
    - - - - - - -
  1. Functions
  2. -
  3. debounce
  4. -
  5. debounceVoid
  6. - -
  7. Typedefs
  8. -
  9. VoidCallback
  10. - - -
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html deleted file mode 100644 index 0e51f7d..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce-library.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - -

New URL

- - \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html deleted file mode 100644 index bdd91bb..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_debounce/index.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - debounce library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
debounce
- - -
-
-
- -
- - -

- src/debounce - library - - -

-
- - - - - - - - - - - -
-

Functions

-
-
- debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) - Function - - - -
-
- Debounces a function call by delaying its execution until after a specified wait period. - - -
- -
- debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) - VoidCallback - - - -
-
- Debounces a void function (function with no parameters). - - -
- -
-
- -
-

Typedefs

-
- -
- VoidCallback - = void Function() - - - -
-
- Type definition for void callback functions - - -
- -
-
- -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html deleted file mode 100644 index 1b2eda4..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library-sidebar.html +++ /dev/null @@ -1,13 +0,0 @@ -
    - - - - - - -
  1. Functions
  2. -
  3. formatCurrency
  4. - - - -
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html deleted file mode 100644 index 0019187..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format-library.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - -

New URL

- - \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html deleted file mode 100644 index 35a722d..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/formatCurrency.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - - - formatCurrency function - format library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
formatCurrency
- - -
-
-
-
-

formatCurrency function - -

- -
- -String -formatCurrency(
  1. num amount, {
  2. -
  3. String currency = "EUR",
  4. -
  5. String locale = "es_ES",
  6. -
}) - - - -
- -
-

Formats a number as a localized currency string.

-

This function uses the Dart intl package to format numbers according to -the specified currency and locale conventions. It handles decimal places, -thousands separators, and currency symbols based on the locale.

-

The function automatically determines the appropriate currency symbol and -formatting rules for the given locale. If an unsupported locale/currency -combination is provided, it falls back gracefully.

-

Parameters:

-
    -
  • amount - The numeric amount to format (supports both int and double)
  • -
  • currency - The ISO 4217 currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR"
  • -
  • locale - The locale identifier (e.g., "en_US", "es_ES", "ja_JP"). Defaults to "es_ES"
  • -
-

Returns: A formatted currency string according to the specified locale

-

Example:

-
// Default (EUR, Spanish locale)
-formatCurrency(1234.56);                                    // "1.234,56 €"
-
-// US Dollar
-formatCurrency(1234.56, currency: "USD", locale: "en_US");  // "$1,234.56"
-
-// Japanese Yen (no decimal places)
-formatCurrency(1000, currency: "JPY", locale: "ja_JP");     // "¥1,000"
-
-// British Pound
-formatCurrency(999.99, currency: "GBP", locale: "en_GB");   // "£999.99"
-
-// Negative amounts
-formatCurrency(-50.25, currency: "USD", locale: "en_US");   // "-$50.25"
-
-
- - - -
-

Implementation

-
String formatCurrency(
-  num amount, {
-  String currency = "EUR",
-  String locale = "es_ES",
-}) {
-  final formatter = NumberFormat.currency(
-    locale: locale,
-    symbol: _getCurrencySymbol(currency, locale),
-    name: currency,
-  );
-  return formatter.format(amount);
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html deleted file mode 100644 index 88000c9..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_format/index.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - format library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
format
- - -
-
-
- -
- - -

- src/format - library - - -

-
- - - - - - - - - - - -
-

Functions

-
-
- formatCurrency(num amount, {String currency = "EUR", String locale = "es_ES"}) - String - - - -
-
- Formats a number as a localized currency string. - - -
- -
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html deleted file mode 100644 index 3699871..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library-sidebar.html +++ /dev/null @@ -1,13 +0,0 @@ -
    - - - - - - -
  1. Functions
  2. -
  3. isEmail
  4. - - - -
diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html deleted file mode 100644 index 3b175aa..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate-library.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - -

New URL

- - \ No newline at end of file diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html deleted file mode 100644 index 3881006..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/index.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - validate library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
validate
- - -
-
-
- -
- - -

- src/validate - library - - -

-
- - - - - - - - - - - -
-

Functions

-
-
- isEmail(String value) - bool - - - -
-
- Validates whether a string matches a basic email pattern. - - -
- -
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html b/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html deleted file mode 100644 index 6bba1c5..0000000 --- a/docs/api/flutter/file-___Users_ivan_Desktop_IvanDev_kompkit_kompkit_packages_core_flutter_lib_src_validate/isEmail.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - isEmail function - validate library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
isEmail
- - -
-
-
-
-

isEmail function - -

- -
- -bool -isEmail(
  1. String value
  2. -
) - - - -
- -
-

Validates whether a string matches a basic email pattern.

-

This function performs a simple regex-based validation to check if the provided -string follows the basic email format. It automatically trims whitespace from -the input before validation.

-

Note: This is a basic validation and may not catch all edge cases of valid -or invalid email addresses according to RFC specifications. For production use -with strict requirements, consider using a more comprehensive email validation library.

-

Parameters:

-
    -
  • value - The string to validate
  • -
-

Returns: true if the string is a valid email format, false otherwise

-

Example:

-
isEmail('user@example.com');        // true
-isEmail('test.email@domain.org');   // true
-isEmail('invalid@');                // false
-isEmail('@invalid.com');            // false
-isEmail('  test@domain.org  ');     // true (whitespace is trimmed)
-isEmail('user name@domain.com');    // false (contains space)
-
-
- - - -
-

Implementation

-
bool isEmail(String value) {
-  return _emailRegExp.hasMatch(value.trim());
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/index.html b/docs/api/flutter/index.html deleted file mode 100644 index 86fd0eb..0000000 --- a/docs/api/flutter/index.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - - kompkit_core - Dart API docs - - - - - - - - - - - - - - -
-
- menu - -
kompkit_core
- - -
-
-
- -
-

KompKit Core - Flutter/Dart

-

Cross-platform utility functions for Flutter and Dart applications. Part of the KompKit ecosystem with identical APIs across Web, Android, and Flutter platforms.

-

Quick Start

-

Add to your pubspec.yaml:

-
dependencies:
-  kompkit_core:
-    path: path/to/KompKit/packages/core/flutter
-
-

Import and use:

-
import 'package:kompkit_core/kompkit_core.dart';
-
-// Debounce function calls
-final search = debounce<String>((query) => print('Searching: $query'), 
-                                const Duration(milliseconds: 300));
-
-// Validate emails
-print(isEmail('user@example.com')); // true
-
-// Format currency
-print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56"
-
-

Documentation

- -

Testing

-
flutter test  # Flutter projects
-dart test     # Dart-only projects
-
-

Platform Support

-

Works on all Flutter platforms (iOS, Android, Web, Desktop) and server-side Dart.

-
- - -
-

Libraries

-
-
- kompkit_core - -
-
KompKit Core - Cross-platform utilities for Flutter and Dart -
- -
-
-
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/index.json b/docs/api/flutter/index.json deleted file mode 100644 index 5756d68..0000000 --- a/docs/api/flutter/index.json +++ /dev/null @@ -1 +0,0 @@ -[{"name":"kompkit_core","qualifiedName":"kompkit_core","href":"kompkit_core/","kind":9,"packageRank":0,"desc":"KompKit Core - Cross-platform utilities for Flutter and Dart"},{"name":"VoidCallback","qualifiedName":"kompkit_core.VoidCallback","href":"kompkit_core/VoidCallback.html","kind":21,"packageRank":0,"desc":"Type definition for void callback functions","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"debounce","qualifiedName":"kompkit_core.debounce","href":"kompkit_core/debounce.html","kind":8,"packageRank":0,"desc":"Debounces a function call by delaying its execution until after a specified wait period.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"debounceVoid","qualifiedName":"kompkit_core.debounceVoid","href":"kompkit_core/debounceVoid.html","kind":8,"packageRank":0,"desc":"Debounces a void function (function with no parameters).","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"formatCurrency","qualifiedName":"kompkit_core.formatCurrency","href":"kompkit_core/formatCurrency.html","kind":8,"packageRank":0,"desc":"Formats a number as a localized currency string.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}},{"name":"isEmail","qualifiedName":"kompkit_core.isEmail","href":"kompkit_core/isEmail.html","kind":8,"packageRank":0,"desc":"Validates whether a string matches a basic email pattern.","enclosedBy":{"name":"kompkit_core","kind":9,"href":"kompkit_core/"}}] diff --git a/docs/api/flutter/kompkit_core/VoidCallback.html b/docs/api/flutter/kompkit_core/VoidCallback.html deleted file mode 100644 index 427efb4..0000000 --- a/docs/api/flutter/kompkit_core/VoidCallback.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - VoidCallback typedef - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
VoidCallback
- - -
-
-
-
-

VoidCallback typedef - -

-
- VoidCallback = - void Function() - -
- - -
-

Type definition for void callback functions

-
- - -
-

Implementation

-
typedef VoidCallback = void Function();
-
- -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/debounce.html b/docs/api/flutter/kompkit_core/debounce.html deleted file mode 100644 index 0bffe63..0000000 --- a/docs/api/flutter/kompkit_core/debounce.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - - - debounce function - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
debounce
- - -
-
-
-
-

debounce<T> function - -

- -
- -Function -debounce<T>(
  1. Function fn, [
  2. -
  3. Duration wait = const Duration(milliseconds: 250)
  4. -
]) - - - -
- -
-

Debounces a function call by delaying its execution until after a specified wait period.

-

Subsequent calls within the wait period reset the timer, ensuring that the function -is only called once after the specified delay has elapsed without any new calls.

-

This is particularly useful for scenarios like search input fields, where you want -to wait for the user to stop typing before making an API call.

-

Parameters:

-
    -
  • fn - The function to debounce
  • -
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • -
-

Returns: A debounced version of the function that accepts a parameter of type T

-

Example:

-
final search = debounce<String>((String query) {
-  print('Searching: $query');
-}, const Duration(milliseconds: 300));
-
-search('hello'); // Will execute after 300ms if no other calls are made
-search('world'); // Previous call is cancelled, this will execute after 300ms
-
-
- - - -
-

Implementation

-
Function debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) {
-  Timer? timer;
-
-  return (T arg) {
-    timer?.cancel();
-    timer = Timer(wait, () => fn(arg));
-  };
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/debounceVoid.html b/docs/api/flutter/kompkit_core/debounceVoid.html deleted file mode 100644 index a824256..0000000 --- a/docs/api/flutter/kompkit_core/debounceVoid.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - debounceVoid function - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
debounceVoid
- - -
-
-
-
-

debounceVoid function - -

- -
- -VoidCallback -debounceVoid(
  1. VoidCallback fn, [
  2. -
  3. Duration wait = const Duration(milliseconds: 250)
  4. -
]) - - - -
- -
-

Debounces a void function (function with no parameters).

-

Similar to debounce, but specifically designed for functions that don't take parameters. -Useful for actions like saving data, refreshing UI, or other side effects.

-

Parameters:

-
    -
  • fn - The void function to debounce
  • -
  • wait - Duration to wait before invoking the function (defaults to 250ms)
  • -
-

Returns: A debounced version of the void function

-

Example:

-
final saveData = debounceVoid(() {
-  print('Saving data...');
-}, const Duration(milliseconds: 500));
-
-saveData(); // Will execute after 500ms if no other calls are made
-saveData(); // Previous call is cancelled, this will execute after 500ms
-
-
- - - -
-

Implementation

-
VoidCallback debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) {
-  Timer? timer;
-
-  return () {
-    timer?.cancel();
-    timer = Timer(wait, fn);
-  };
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/formatCurrency.html b/docs/api/flutter/kompkit_core/formatCurrency.html deleted file mode 100644 index f61e266..0000000 --- a/docs/api/flutter/kompkit_core/formatCurrency.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - - - formatCurrency function - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
formatCurrency
- - -
-
-
-
-

formatCurrency function - -

- -
- -String -formatCurrency(
  1. num amount, {
  2. -
  3. String currency = "EUR",
  4. -
  5. String locale = "es_ES",
  6. -
}) - - - -
- -
-

Formats a number as a localized currency string.

-

This function uses the Dart intl package to format numbers according to -the specified currency and locale conventions. It handles decimal places, -thousands separators, and currency symbols based on the locale.

-

The function automatically determines the appropriate currency symbol and -formatting rules for the given locale. If an unsupported locale/currency -combination is provided, it falls back gracefully.

-

Parameters:

-
    -
  • amount - The numeric amount to format (supports both int and double)
  • -
  • currency - The ISO 4217 currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR"
  • -
  • locale - The locale identifier (e.g., "en_US", "es_ES", "ja_JP"). Defaults to "es_ES"
  • -
-

Returns: A formatted currency string according to the specified locale

-

Example:

-
// Default (EUR, Spanish locale)
-formatCurrency(1234.56);                                    // "1.234,56 €"
-
-// US Dollar
-formatCurrency(1234.56, currency: "USD", locale: "en_US");  // "$1,234.56"
-
-// Japanese Yen (no decimal places)
-formatCurrency(1000, currency: "JPY", locale: "ja_JP");     // "¥1,000"
-
-// British Pound
-formatCurrency(999.99, currency: "GBP", locale: "en_GB");   // "£999.99"
-
-// Negative amounts
-formatCurrency(-50.25, currency: "USD", locale: "en_US");   // "-$50.25"
-
-
- - - -
-

Implementation

-
String formatCurrency(
-  num amount, {
-  String currency = "EUR",
-  String locale = "es_ES",
-}) {
-  try {
-    final formatter = NumberFormat.currency(
-      locale: locale,
-      name: currency,
-    );
-    return formatter.format(amount);
-  } catch (e) {
-    // Fallback to a basic format if locale/currency combination is not supported
-    try {
-      final fallbackFormatter = NumberFormat.currency(
-        locale: 'en_US',
-        name: currency,
-      );
-      return fallbackFormatter.format(amount);
-    } catch (e2) {
-      // Ultimate fallback: just return the number with currency code
-      return '$currency${amount.toStringAsFixed(2)}';
-    }
-  }
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/index.html b/docs/api/flutter/kompkit_core/index.html deleted file mode 100644 index b1c733a..0000000 --- a/docs/api/flutter/kompkit_core/index.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - - - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
kompkit_core
- - -
-
-
- -
- - -

- kompkit_core - library - - -

-
- - -
-

KompKit Core - Cross-platform utilities for Flutter and Dart

-

A lightweight utility library providing essential functions for Flutter -and Dart applications. Part of the KompKit ecosystem with identical APIs -across Web (TypeScript), Android (Kotlin), and Flutter (Dart) platforms.

-

Features

-
    -
  • Cross-platform compatibility: Identical APIs across all platforms
  • -
  • Type safety: Full Dart null safety support
  • -
  • Zero dependencies: Minimal external dependencies (only intl for formatting)
  • -
  • Comprehensive testing: 100% test coverage
  • -
  • Rich documentation: Detailed API docs with examples
  • -
-

Available Utilities

-
    -
  • debounce - Delay function execution with automatic cancellation
  • -
  • debounceVoid - Debounce functions with no parameters
  • -
  • isEmail - Email address validation using regex patterns
  • -
  • formatCurrency - Localized currency formatting
  • -
-

Quick Start

-
import 'package:kompkit_core/kompkit_core.dart';
-
-// Debounce a search function
-final search = debounce<String>((query) => print('Searching: $query'), 
-                                const Duration(milliseconds: 300));
-
-// Validate email addresses
-print(isEmail('user@example.com')); // true
-
-// Format currency
-print(formatCurrency(1234.56, currency: 'USD', locale: 'en_US')); // "$1,234.56"
-
-
- - - - - - - - - -
-

Functions

-
-
- debounce<T>(Function fn, [Duration wait = const Duration(milliseconds: 250)]) - Function - - - -
-
- Debounces a function call by delaying its execution until after a specified wait period. - - -
- -
- debounceVoid(VoidCallback fn, [Duration wait = const Duration(milliseconds: 250)]) - VoidCallback - - - -
-
- Debounces a void function (function with no parameters). - - -
- -
- formatCurrency(num amount, {String currency = "EUR", String locale = "es_ES"}) - String - - - -
-
- Formats a number as a localized currency string. - - -
- -
- isEmail(String value) - bool - - - -
-
- Validates whether a string matches a basic email pattern. - - -
- -
-
- -
-

Typedefs

-
- -
- VoidCallback - = void Function() - - - -
-
- Type definition for void callback functions - - -
- -
-
- -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/isEmail.html b/docs/api/flutter/kompkit_core/isEmail.html deleted file mode 100644 index 04bc143..0000000 --- a/docs/api/flutter/kompkit_core/isEmail.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - isEmail function - kompkit_core library - Dart API - - - - - - - - - - - - - - -
-
- menu - -
isEmail
- - -
-
-
-
-

isEmail function - -

- -
- -bool -isEmail(
  1. String value
  2. -
) - - - -
- -
-

Validates whether a string matches a basic email pattern.

-

This function performs a simple regex-based validation to check if the provided -string follows the basic email format. It automatically trims whitespace from -the input before validation.

-

Note: This is a basic validation and may not catch all edge cases of valid -or invalid email addresses according to RFC specifications. For production use -with strict requirements, consider using a more comprehensive email validation library.

-

Parameters:

-
    -
  • value - The string to validate
  • -
-

Returns: true if the string is a valid email format, false otherwise

-

Example:

-
isEmail('user@example.com');        // true
-isEmail('test.email@domain.org');   // true
-isEmail('invalid@');                // false
-isEmail('@invalid.com');            // false
-isEmail('  test@domain.org  ');     // true (whitespace is trimmed)
-isEmail('user name@domain.com');    // false (contains space)
-
-
- - - -
-

Implementation

-
bool isEmail(String value) {
-  return _emailRegExp.hasMatch(value.trim());
-}
-
- - -
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html b/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html deleted file mode 100644 index 810f159..0000000 --- a/docs/api/flutter/kompkit_core/kompkit_core-library-sidebar.html +++ /dev/null @@ -1,18 +0,0 @@ -
    - - - - - - -
  1. Functions
  2. -
  3. debounce
  4. -
  5. debounceVoid
  6. -
  7. formatCurrency
  8. -
  9. isEmail
  10. - -
  11. Typedefs
  12. -
  13. VoidCallback
  14. - - -
diff --git a/docs/api/flutter/kompkit_core/kompkit_core-library.html b/docs/api/flutter/kompkit_core/kompkit_core-library.html deleted file mode 100644 index 172eae8..0000000 --- a/docs/api/flutter/kompkit_core/kompkit_core-library.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - -

New URL

- - \ No newline at end of file diff --git a/docs/api/flutter/search.html b/docs/api/flutter/search.html deleted file mode 100644 index 6af83b3..0000000 --- a/docs/api/flutter/search.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - kompkit_core - Dart API docs - - - - - - - - - - - - - - -
-
- menu - -
kompkit_core
- - -
-
-
-
- - -
-
- - kompkit_core - 0.1.0-alpha - - -
- - - - - - - - diff --git a/docs/api/flutter/static-assets/docs.dart.js b/docs/api/flutter/static-assets/docs.dart.js deleted file mode 100644 index a3953d9..0000000 --- a/docs/api/flutter/static-assets/docs.dart.js +++ /dev/null @@ -1,4474 +0,0 @@ -(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) -for(var r=0;r=0)return true -if(typeof version=="function"&&version.length==0){var q=version() -if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() -function inherit(a,b){a.prototype.constructor=a -a.prototype["$i"+a.name]=a -if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) -return}var s=Object.create(b.prototype) -copyProperties(a.prototype,s) -a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.b(A.E(a,0,4294967295,"length",null)) -return J.hx(new Array(a),b)}, -hw(a,b){if(a<0)throw A.b(A.U("Length must be a non-negative integer: "+a,null)) -return A.k(new Array(a),b.j("o<0>"))}, -hx(a,b){var s=A.k(a,b.j("o<0>")) -s.$flags=1 -return s}, -hy(a,b){return J.h7(a,b)}, -ag(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.aL.prototype -return J.bA.prototype}if(typeof a=="string")return J.a8.prototype -if(a==null)return J.aM.prototype -if(typeof a=="boolean")return J.bz.prototype -if(Array.isArray(a))return J.o.prototype -if(typeof a!="object"){if(typeof a=="function")return J.X.prototype -if(typeof a=="symbol")return J.aQ.prototype -if(typeof a=="bigint")return J.aO.prototype -return a}if(a instanceof A.j)return a -return J.ev(a)}, -cf(a){if(typeof a=="string")return J.a8.prototype -if(a==null)return a -if(Array.isArray(a))return J.o.prototype -if(typeof a!="object"){if(typeof a=="function")return J.X.prototype -if(typeof a=="symbol")return J.aQ.prototype -if(typeof a=="bigint")return J.aO.prototype -return a}if(a instanceof A.j)return a -return J.ev(a)}, -eu(a){if(a==null)return a -if(Array.isArray(a))return J.o.prototype -if(typeof a!="object"){if(typeof a=="function")return J.X.prototype -if(typeof a=="symbol")return J.aQ.prototype -if(typeof a=="bigint")return J.aO.prototype -return a}if(a instanceof A.j)return a -return J.ev(a)}, -jo(a){if(typeof a=="number")return J.aN.prototype -if(typeof a=="string")return J.a8.prototype -if(a==null)return a -if(!(a instanceof A.j))return J.ap.prototype -return a}, -F(a,b){if(a==null)return b==null -if(typeof a!="object")return b!=null&&a===b -return J.ag(a).E(a,b)}, -h5(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.jy(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b").C(c).j("b4<1,2>")) -return new A.a6(a,b.j("@<0>").C(c).j("a6<1,2>"))}, -eL(a){return new A.bC("Field '"+a+"' has been assigned during initialization.")}, -dJ(a){var s,r=a^48 -if(r<=9)return r -s=a|32 -if(97<=s&&s<=102)return s-87 -return-1}, -a_(a,b){a=a+b&536870911 -a=a+((a&524287)<<10)&536870911 -return a^a>>>6}, -e8(a){a=a+((a&67108863)<<3)&536870911 -a^=a>>>11 -return a+((a&16383)<<15)&536870911}, -es(a,b,c){return a}, -ex(a){var s,r -for(s=$.ai.length,r=0;r36)throw A.b(A.E(b,2,36,"radix",n)) -if(b===10&&s!=null)return parseInt(a,10) -if(b<10||s==null){r=b<=10?47+b:86+b -q=m[1] -for(p=q.length,o=0;or)return n}return parseInt(a,b)}, -cD(a){var s,r,q,p -if(a instanceof A.j)return A.D(A.aA(a),null) -s=J.ag(a) -if(s===B.z||s===B.B||t.o.b(a)){r=B.k(a) -if(r!=="Object"&&r!=="")return r -q=a.constructor -if(typeof q=="function"){p=q.name -if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.D(A.aA(a),null)}, -eR(a){if(a==null||typeof a=="number"||A.en(a))return J.ak(a) -if(typeof a=="string")return JSON.stringify(a) -if(a instanceof A.a7)return a.h(0) -if(a instanceof A.b9)return a.aE(!0) -return"Instance of '"+A.cD(a)+"'"}, -hE(a,b,c){var s,r,q,p -if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) -for(s=b,r="";s>>0,s&1023|56320)}}throw A.b(A.E(a,0,1114111,null,null))}, -hD(a){var s=a.$thrownJsError -if(s==null)return null -return A.az(s)}, -eS(a,b){var s -if(a.$thrownJsError==null){s=new Error() -A.x(a,s) -a.$thrownJsError=s -s.stack=b.h(0)}}, -fJ(a,b){var s,r="index" -if(!A.fv(b))return new A.G(!0,b,r,null) -s=J.cg(a) -if(b<0||b>=s)return A.e_(b,s,a,r) -return A.hF(b,r)}, -jl(a,b,c){if(a>c)return A.E(a,0,c,"start",null) -if(b!=null)if(bc)return A.E(b,a,c,"end",null) -return new A.G(!0,b,"end",null)}, -jf(a){return new A.G(!0,a,null,null)}, -b(a){return A.x(a,new Error())}, -x(a,b){var s -if(a==null)a=new A.P() -b.dartException=a -s=A.jJ -if("defineProperty" in Object){Object.defineProperty(b,"message",{get:s}) -b.name=""}else b.toString=s -return b}, -jJ(){return J.ak(this.dartException)}, -ez(a,b){throw A.x(a,b==null?new Error():b)}, -aC(a,b,c){var s -if(b==null)b=0 -if(c==null)c=0 -s=Error() -A.ez(A.iE(a,b,c),s)}, -iE(a,b,c){var s,r,q,p,o,n,m,l,k -if(typeof b=="string")s=b -else{r="[]=;add;removeWhere;retainWhere;removeRange;setRange;setInt8;setInt16;setInt32;setUint8;setUint16;setUint32;setFloat32;setFloat64".split(";") -q=r.length -p=b -if(p>q){c=p/q|0 -p%=q}s=r[p]}o=typeof c=="string"?c:"modify;remove from;add to".split(";")[c] -n=t.j.b(a)?"list":"ByteData" -m=a.$flags|0 -l="a " -if((m&4)!==0)k="constant " -else if((m&2)!==0){k="unmodifiable " -l="an "}else k=(m&1)!==0?"fixed-length ":"" -return new A.b1("'"+s+"': Cannot "+o+" "+l+k+n)}, -dX(a){throw A.b(A.al(a))}, -Q(a){var s,r,q,p,o,n -a=A.jE(a.replace(String({}),"$receiver$")) -s=a.match(/\\\$[a-zA-Z]+\\\$/g) -if(s==null)s=A.k([],t.s) -r=s.indexOf("\\$arguments\\$") -q=s.indexOf("\\$argumentsExpr\\$") -p=s.indexOf("\\$expr\\$") -o=s.indexOf("\\$method\\$") -n=s.indexOf("\\$receiver\\$") -return new A.cH(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, -cI(a){return function($expr$){var $argumentsExpr$="$arguments$" -try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, -eY(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, -e2(a,b){var s=b==null,r=s?null:b.method -return new A.bB(a,r,s?null:b.receiver)}, -aj(a){if(a==null)return new A.cC(a) -if(a instanceof A.aJ)return A.a5(a,a.a) -if(typeof a!=="object")return a -if("dartException" in a)return A.a5(a,a.dartException) -return A.je(a)}, -a5(a,b){if(t.C.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a -return b}, -je(a){var s,r,q,p,o,n,m,l,k,j,i,h,g -if(!("message" in a))return a -s=a.message -if("number" in a&&typeof a.number=="number"){r=a.number -q=r&65535 -if((B.c.aa(r,16)&8191)===10)switch(q){case 438:return A.a5(a,A.e2(A.i(s)+" (Error "+q+")",null)) -case 445:case 5007:A.i(s) -return A.a5(a,new A.aY())}}if(a instanceof TypeError){p=$.fQ() -o=$.fR() -n=$.fS() -m=$.fT() -l=$.fW() -k=$.fX() -j=$.fV() -$.fU() -i=$.fZ() -h=$.fY() -g=p.B(s) -if(g!=null)return A.a5(a,A.e2(s,g)) -else{g=o.B(s) -if(g!=null){g.method="call" -return A.a5(a,A.e2(s,g))}else if(n.B(s)!=null||m.B(s)!=null||l.B(s)!=null||k.B(s)!=null||j.B(s)!=null||m.B(s)!=null||i.B(s)!=null||h.B(s)!=null)return A.a5(a,new A.aY())}return A.a5(a,new A.bU(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.b_() -s=function(b){try{return String(b)}catch(f){}return null}(a) -return A.a5(a,new A.G(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.b_() -return a}, -az(a){var s -if(a instanceof A.aJ)return a.b -if(a==null)return new A.ba(a) -s=a.$cachedTrace -if(s!=null)return s -s=new A.ba(a) -if(typeof a==="object")a.$cachedTrace=s -return s}, -fM(a){if(a==null)return J.T(a) -if(typeof a=="object")return A.bQ(a) -return J.T(a)}, -jn(a,b){var s,r,q,p=a.length -for(s=0;s=0}, -jE(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") -return a}, -fD(a){return a}, -jH(a,b,c,d){var s,r,q,p=new A.cS(b,a,0),o=t.F,n=0,m="" -for(;p.m();){s=p.d -if(s==null)s=o.a(s) -r=s.b -q=r.index -m=m+A.i(A.fD(B.a.i(a,n,q)))+A.i(c.$1(s)) -n=q+r[0].length}p=m+A.i(A.fD(B.a.K(a,n))) -return p.charCodeAt(0)==0?p:p}, -c8:function c8(a,b){this.a=a -this.b=b}, -aF:function aF(){}, -aH:function aH(a,b,c){this.a=a -this.b=b -this.$ti=c}, -c5:function c5(a,b,c){var _=this -_.a=a -_.b=b -_.c=0 -_.d=null -_.$ti=c}, -aG:function aG(){}, -aI:function aI(a,b,c){this.a=a -this.b=b -this.$ti=c}, -cH:function cH(a,b,c,d,e,f){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f}, -aY:function aY(){}, -bB:function bB(a,b,c){this.a=a -this.b=b -this.c=c}, -bU:function bU(a){this.a=a}, -cC:function cC(a){this.a=a}, -aJ:function aJ(a,b){this.a=a -this.b=b}, -ba:function ba(a){this.a=a -this.b=null}, -a7:function a7(){}, -cj:function cj(){}, -ck:function ck(){}, -cG:function cG(){}, -cF:function cF(){}, -aE:function aE(a,b){this.a=a -this.b=b}, -bS:function bS(a){this.a=a}, -a9:function a9(a){var _=this -_.a=0 -_.f=_.e=_.d=_.c=_.b=null -_.r=0 -_.$ti=a}, -cy:function cy(a,b){this.a=a -this.b=b -this.c=null}, -aa:function aa(a,b){this.a=a -this.$ti=b}, -bD:function bD(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=null}, -aS:function aS(a,b){this.a=a -this.$ti=b}, -aR:function aR(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=null}, -dK:function dK(a){this.a=a}, -dL:function dL(a){this.a=a}, -dM:function dM(a){this.a=a}, -b9:function b9(){}, -c7:function c7(){}, -cu:function cu(a,b){var _=this -_.a=a -_.b=b -_.e=_.d=_.c=null}, -c6:function c6(a){this.b=a}, -cS:function cS(a,b,c){var _=this -_.a=a -_.b=b -_.c=c -_.d=null}, -iF(a){return a}, -hA(a){return new Int8Array(a)}, -hB(a){return new Uint8Array(a)}, -ad(a,b,c){if(a>>>0!==a||a>=c)throw A.b(A.fJ(b,a))}, -iC(a,b,c){var s -if(!(a>>>0!==a))s=b>>>0!==b||a>b||b>c -else s=!0 -if(s)throw A.b(A.jl(a,b,c)) -return b}, -bE:function bE(){}, -aW:function aW(){}, -bF:function bF(){}, -an:function an(){}, -aU:function aU(){}, -aV:function aV(){}, -bG:function bG(){}, -bH:function bH(){}, -bI:function bI(){}, -bJ:function bJ(){}, -bK:function bK(){}, -bL:function bL(){}, -bM:function bM(){}, -aX:function aX(){}, -bN:function bN(){}, -b5:function b5(){}, -b6:function b6(){}, -b7:function b7(){}, -b8:function b8(){}, -e7(a,b){var s=b.c -return s==null?b.c=A.bd(a,"W",[b.x]):s}, -eU(a){var s=a.w -if(s===6||s===7)return A.eU(a.x) -return s===11||s===12}, -hG(a){return a.as}, -ce(a){return A.dl(v.typeUniverse,a,!1)}, -ae(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=a2.w -switch(a0){case 5:case 1:case 2:case 3:case 4:return a2 -case 6:s=a2.x -r=A.ae(a1,s,a3,a4) -if(r===s)return a2 -return A.fa(a1,r,!0) -case 7:s=a2.x -r=A.ae(a1,s,a3,a4) -if(r===s)return a2 -return A.f9(a1,r,!0) -case 8:q=a2.y -p=A.aw(a1,q,a3,a4) -if(p===q)return a2 -return A.bd(a1,a2.x,p) -case 9:o=a2.x -n=A.ae(a1,o,a3,a4) -m=a2.y -l=A.aw(a1,m,a3,a4) -if(n===o&&l===m)return a2 -return A.eb(a1,n,l) -case 10:k=a2.x -j=a2.y -i=A.aw(a1,j,a3,a4) -if(i===j)return a2 -return A.fb(a1,k,i) -case 11:h=a2.x -g=A.ae(a1,h,a3,a4) -f=a2.y -e=A.jb(a1,f,a3,a4) -if(g===h&&e===f)return a2 -return A.f8(a1,g,e) -case 12:d=a2.y -a4+=d.length -c=A.aw(a1,d,a3,a4) -o=a2.x -n=A.ae(a1,o,a3,a4) -if(c===d&&n===o)return a2 -return A.ec(a1,n,c,!0) -case 13:b=a2.x -if(b") -for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, -ft(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=", ",a0=null -if(a3!=null){s=a3.length -if(a2==null)a2=A.k([],t.s) -else a0=a2.length -r=a2.length -for(q=s;q>0;--q)a2.push("T"+(r+q)) -for(p=t.X,o="<",n="",q=0;q0){c+=b+"[" -for(b="",q=0;q0){c+=b+"{" -for(b="",q=0;q "+d}, -D(a,b){var s,r,q,p,o,n,m=a.w -if(m===5)return"erased" -if(m===2)return"dynamic" -if(m===3)return"void" -if(m===1)return"Never" -if(m===4)return"any" -if(m===6){s=a.x -r=A.D(s,b) -q=s.w -return(q===11||q===12?"("+r+")":r)+"?"}if(m===7)return"FutureOr<"+A.D(a.x,b)+">" -if(m===8){p=A.jd(a.x) -o=a.y -return o.length>0?p+("<"+A.fA(o,b)+">"):p}if(m===10)return A.j5(a,b) -if(m===11)return A.ft(a,b,null) -if(m===12)return A.ft(a.x,b,a.y) -if(m===13){n=a.x -return b[b.length-1-n]}return"?"}, -jd(a){var s=v.mangledGlobalNames[a] -if(s!=null)return s -return"minified:"+a}, -i7(a,b){var s=a.tR[b] -for(;typeof s=="string";)s=a.tR[s] -return s}, -i6(a,b){var s,r,q,p,o,n=a.eT,m=n[b] -if(m==null)return A.dl(a,b,!1) -else if(typeof m=="number"){s=m -r=A.be(a,5,"#") -q=A.du(s) -for(p=0;p0)p+="<"+A.bc(c)+">" -s=a.eC.get(p) -if(s!=null)return s -r=new A.J(null,null) -r.w=8 -r.x=b -r.y=c -if(c.length>0)r.c=c[0] -r.as=p -q=A.a1(a,r) -a.eC.set(p,q) -return q}, -eb(a,b,c){var s,r,q,p,o,n -if(b.w===9){s=b.x -r=b.y.concat(c)}else{r=c -s=b}q=s.as+(";<"+A.bc(r)+">") -p=a.eC.get(q) -if(p!=null)return p -o=new A.J(null,null) -o.w=9 -o.x=s -o.y=r -o.as=q -n=A.a1(a,o) -a.eC.set(q,n) -return n}, -fb(a,b,c){var s,r,q="+"+(b+"("+A.bc(c)+")"),p=a.eC.get(q) -if(p!=null)return p -s=new A.J(null,null) -s.w=10 -s.x=b -s.y=c -s.as=q -r=A.a1(a,s) -a.eC.set(q,r) -return r}, -f8(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.bc(m) -if(j>0){s=l>0?",":"" -g+=s+"["+A.bc(k)+"]"}if(h>0){s=l>0?",":"" -g+=s+"{"+A.i_(i)+"}"}r=n+(g+")") -q=a.eC.get(r) -if(q!=null)return q -p=new A.J(null,null) -p.w=11 -p.x=b -p.y=c -p.as=r -o=A.a1(a,p) -a.eC.set(r,o) -return o}, -ec(a,b,c,d){var s,r=b.as+("<"+A.bc(c)+">"),q=a.eC.get(r) -if(q!=null)return q -s=A.i1(a,b,c,r,d) -a.eC.set(r,s) -return s}, -i1(a,b,c,d,e){var s,r,q,p,o,n,m,l -if(e){s=c.length -r=A.du(s) -for(q=0,p=0;p0){n=A.ae(a,b,r,0) -m=A.aw(a,c,r,0) -return A.ec(a,n,m,c!==m)}}l=new A.J(null,null) -l.w=12 -l.x=b -l.y=c -l.as=d -return A.a1(a,l)}, -f4(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, -f6(a){var s,r,q,p,o,n,m,l=a.r,k=a.s -for(s=l.length,r=0;r=48&&q<=57)r=A.hU(r+1,q,l,k) -else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.f5(a,r,l,k,!1) -else if(q===46)r=A.f5(a,r,l,k,!0) -else{++r -switch(q){case 44:break -case 58:k.push(!1) -break -case 33:k.push(!0) -break -case 59:k.push(A.ac(a.u,a.e,k.pop())) -break -case 94:k.push(A.i3(a.u,k.pop())) -break -case 35:k.push(A.be(a.u,5,"#")) -break -case 64:k.push(A.be(a.u,2,"@")) -break -case 126:k.push(A.be(a.u,3,"~")) -break -case 60:k.push(a.p) -a.p=k.length -break -case 62:A.hW(a,k) -break -case 38:A.hV(a,k) -break -case 63:p=a.u -k.push(A.fa(p,A.ac(p,a.e,k.pop()),a.n)) -break -case 47:p=a.u -k.push(A.f9(p,A.ac(p,a.e,k.pop()),a.n)) -break -case 40:k.push(-3) -k.push(a.p) -a.p=k.length -break -case 41:A.hT(a,k) -break -case 91:k.push(a.p) -a.p=k.length -break -case 93:o=k.splice(a.p) -A.f7(a.u,a.e,o) -a.p=k.pop() -k.push(o) -k.push(-1) -break -case 123:k.push(a.p) -a.p=k.length -break -case 125:o=k.splice(a.p) -A.hY(a.u,a.e,o) -a.p=k.pop() -k.push(o) -k.push(-2) -break -case 43:n=l.indexOf("(",r) -k.push(l.substring(r,n)) -k.push(-4) -k.push(a.p) -a.p=k.length -r=n+1 -break -default:throw"Bad character "+q}}}m=k.pop() -return A.ac(a.u,a.e,m)}, -hU(a,b,c,d){var s,r,q=b-48 -for(s=c.length;a=48&&r<=57))break -q=q*10+(r-48)}d.push(q) -return a}, -f5(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 -for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 -else q=!0 -if(!q)break}}p=c.substring(b,m) -if(e){s=a.u -o=a.e -if(o.w===9)o=o.x -n=A.i7(s,o.x)[p] -if(n==null)A.ez('No "'+p+'" in "'+A.hG(o)+'"') -d.push(A.bf(s,o,n))}else d.push(p) -return m}, -hW(a,b){var s,r=a.u,q=A.f3(a,b),p=b.pop() -if(typeof p=="string")b.push(A.bd(r,p,q)) -else{s=A.ac(r,a.e,p) -switch(s.w){case 11:b.push(A.ec(r,s,q,a.n)) -break -default:b.push(A.eb(r,s,q)) -break}}}, -hT(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null -if(typeof o=="number")switch(o){case-1:n=b.pop() -break -case-2:m=b.pop() -break -default:b.push(o) -break}else b.push(o) -s=A.f3(a,b) -o=b.pop() -switch(o){case-3:o=b.pop() -if(n==null)n=p.sEA -if(m==null)m=p.sEA -r=A.ac(p,a.e,o) -q=new A.c2() -q.a=s -q.b=n -q.c=m -b.push(A.f8(p,r,q)) -return -case-4:b.push(A.fb(p,b.pop(),s)) -return -default:throw A.b(A.bq("Unexpected state under `()`: "+A.i(o)))}}, -hV(a,b){var s=b.pop() -if(0===s){b.push(A.be(a.u,1,"0&")) -return}if(1===s){b.push(A.be(a.u,4,"1&")) -return}throw A.b(A.bq("Unexpected extended operation "+A.i(s)))}, -f3(a,b){var s=b.splice(a.p) -A.f7(a.u,a.e,s) -a.p=b.pop() -return s}, -ac(a,b,c){if(typeof c=="string")return A.bd(a,c,a.sEA) -else if(typeof c=="number"){b.toString -return A.hX(a,b,c)}else return c}, -f7(a,b,c){var s,r=c.length -for(s=0;sn)return!1 -m=n-o -l=s.b -k=r.b -j=l.length -i=k.length -if(o+j=d)return!1 -a1=f[b] -b+=3 -if(a00?new Array(q):v.typeUniverse.sEA -for(o=0;o0?new Array(a):v.typeUniverse.sEA}, -J:function J(a,b){var _=this -_.a=a -_.b=b -_.r=_.f=_.d=_.c=null -_.w=0 -_.as=_.Q=_.z=_.y=_.x=null}, -c2:function c2(){this.c=this.b=this.a=null}, -dk:function dk(a){this.a=a}, -c1:function c1(){}, -bb:function bb(a){this.a=a}, -hP(){var s,r,q -if(self.scheduleImmediate!=null)return A.jg() -if(self.MutationObserver!=null&&self.document!=null){s={} -r=self.document.createElement("div") -q=self.document.createElement("span") -s.a=null -new self.MutationObserver(A.ay(new A.cU(s),1)).observe(r,{childList:true}) -return new A.cT(s,r,q)}else if(self.setImmediate!=null)return A.jh() -return A.ji()}, -hQ(a){self.scheduleImmediate(A.ay(new A.cV(a),0))}, -hR(a){self.setImmediate(A.ay(new A.cW(a),0))}, -hS(a){A.hZ(0,a)}, -hZ(a,b){var s=new A.di() -s.b8(a,b) -return s}, -fy(a){return new A.bY(new A.v($.p,a.j("v<0>")),a.j("bY<0>"))}, -fr(a,b){a.$2(0,null) -b.b=!0 -return b.a}, -fo(a,b){A.iA(a,b)}, -fq(a,b){b.ac(a)}, -fp(a,b){b.ad(A.aj(a),A.az(a))}, -iA(a,b){var s,r,q=new A.dw(b),p=new A.dx(b) -if(a instanceof A.v)a.aD(q,p,t.z) -else{s=t.z -if(a instanceof A.v)a.ao(q,p,s) -else{r=new A.v($.p,t.c) -r.a=8 -r.c=a -r.aD(q,p,s)}}}, -fF(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) -break}catch(r){e=r -d=c}}}}(a,1) -return $.p.aW(new A.dH(s))}, -dZ(a){var s -if(t.C.b(a)){s=a.gJ() -if(s!=null)return s}return B.f}, -iP(a,b){if($.p===B.d)return null -return null}, -iQ(a,b){if($.p!==B.d)A.iP(a,b) -if(b==null)if(t.C.b(a)){b=a.gJ() -if(b==null){A.eS(a,B.f) -b=B.f}}else b=B.f -else if(t.C.b(a))A.eS(a,b) -return new A.H(a,b)}, -e9(a,b,c){var s,r,q,p={},o=p.a=a -for(;s=o.a,(s&4)!==0;){o=o.c -p.a=o}if(o===b){s=A.hH() -b.a3(new A.H(new A.G(!0,o,null,"Cannot complete a future with itself"),s)) -return}r=b.a&1 -s=o.a=s|r -if((s&24)===0){q=b.c -b.a=b.a&1|4 -b.c=o -o.aA(q) -return}if(!c)if(b.c==null)o=(s&16)===0||r!==0 -else o=!1 -else o=!0 -if(o){q=b.T() -b.S(p.a) -A.at(b,q) -return}b.a^=2 -A.cd(null,null,b.b,new A.d1(p,b))}, -at(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g={},f=g.a=a -for(;!0;){s={} -r=f.a -q=(r&16)===0 -p=!q -if(b==null){if(p&&(r&1)===0){f=f.c -A.ep(f.a,f.b)}return}s.a=b -o=b.a -for(f=b;o!=null;f=o,o=n){f.a=null -A.at(g.a,f) -s.a=o -n=o.a}r=g.a -m=r.c -s.b=p -s.c=m -if(q){l=f.c -l=(l&1)!==0||(l&15)===8}else l=!0 -if(l){k=f.b.b -if(p){r=r.b===k -r=!(r||r)}else r=!1 -if(r){A.ep(m.a,m.b) -return}j=$.p -if(j!==k)$.p=k -else j=null -f=f.c -if((f&15)===8)new A.d5(s,g,p).$0() -else if(q){if((f&1)!==0)new A.d4(s,m).$0()}else if((f&2)!==0)new A.d3(g,s).$0() -if(j!=null)$.p=j -f=s.c -if(f instanceof A.v){r=s.a.$ti -r=r.j("W<2>").b(f)||!r.y[1].b(f)}else r=!1 -if(r){i=s.a.b -if((f.a&24)!==0){h=i.c -i.c=null -b=i.U(h) -i.a=f.a&30|i.a&1 -i.c=f.c -g.a=f -continue}else A.e9(f,i,!0) -return}}i=s.a.b -h=i.c -i.c=null -b=i.U(h) -f=s.b -r=s.c -if(!f){i.a=8 -i.c=r}else{i.a=i.a&1|16 -i.c=r}g.a=i -f=i}}, -j6(a,b){if(t.Q.b(a))return b.aW(a) -if(t.v.b(a))return a -throw A.b(A.eD(a,"onError",u.c))}, -j3(){var s,r -for(s=$.av;s!=null;s=$.av){$.bl=null -r=s.b -$.av=r -if(r==null)$.bk=null -s.a.$0()}}, -ja(){$.eo=!0 -try{A.j3()}finally{$.bl=null -$.eo=!1 -if($.av!=null)$.eB().$1(A.fH())}}, -fC(a){var s=new A.bZ(a),r=$.bk -if(r==null){$.av=$.bk=s -if(!$.eo)$.eB().$1(A.fH())}else $.bk=r.b=s}, -j9(a){var s,r,q,p=$.av -if(p==null){A.fC(a) -$.bl=$.bk -return}s=new A.bZ(a) -r=$.bl -if(r==null){s.b=p -$.av=$.bl=s}else{q=r.b -s.b=q -$.bl=r.b=s -if(q==null)$.bk=s}}, -jP(a){A.es(a,"stream",t.K) -return new A.ca()}, -ep(a,b){A.j9(new A.dF(a,b))}, -fz(a,b,c,d){var s,r=$.p -if(r===c)return d.$0() -$.p=c -s=r -try{r=d.$0() -return r}finally{$.p=s}}, -j8(a,b,c,d,e){var s,r=$.p -if(r===c)return d.$1(e) -$.p=c -s=r -try{r=d.$1(e) -return r}finally{$.p=s}}, -j7(a,b,c,d,e,f){var s,r=$.p -if(r===c)return d.$2(e,f) -$.p=c -s=r -try{r=d.$2(e,f) -return r}finally{$.p=s}}, -cd(a,b,c,d){if(B.d!==c)d=c.bs(d) -A.fC(d)}, -cU:function cU(a){this.a=a}, -cT:function cT(a,b,c){this.a=a -this.b=b -this.c=c}, -cV:function cV(a){this.a=a}, -cW:function cW(a){this.a=a}, -di:function di(){}, -dj:function dj(a,b){this.a=a -this.b=b}, -bY:function bY(a,b){this.a=a -this.b=!1 -this.$ti=b}, -dw:function dw(a){this.a=a}, -dx:function dx(a){this.a=a}, -dH:function dH(a){this.a=a}, -H:function H(a,b){this.a=a -this.b=b}, -c_:function c_(){}, -b2:function b2(a,b){this.a=a -this.$ti=b}, -as:function as(a,b,c,d,e){var _=this -_.a=null -_.b=a -_.c=b -_.d=c -_.e=d -_.$ti=e}, -v:function v(a,b){var _=this -_.a=0 -_.b=a -_.c=null -_.$ti=b}, -cZ:function cZ(a,b){this.a=a -this.b=b}, -d2:function d2(a,b){this.a=a -this.b=b}, -d1:function d1(a,b){this.a=a -this.b=b}, -d0:function d0(a,b){this.a=a -this.b=b}, -d_:function d_(a,b){this.a=a -this.b=b}, -d5:function d5(a,b,c){this.a=a -this.b=b -this.c=c}, -d6:function d6(a,b){this.a=a -this.b=b}, -d7:function d7(a){this.a=a}, -d4:function d4(a,b){this.a=a -this.b=b}, -d3:function d3(a,b){this.a=a -this.b=b}, -bZ:function bZ(a){this.a=a -this.b=null}, -ca:function ca(){}, -dv:function dv(){}, -dF:function dF(a,b){this.a=a -this.b=b}, -da:function da(){}, -db:function db(a,b){this.a=a -this.b=b}, -eM(a,b,c){return A.jn(a,new A.a9(b.j("@<0>").C(c).j("a9<1,2>")))}, -e3(a,b){return new A.a9(a.j("@<0>").C(b).j("a9<1,2>"))}, -hs(a){var s,r=A.a2(a),q=new J.V(a,a.length,r.j("V<1>")) -if(q.m()){s=q.d -return s==null?r.c.a(s):s}return null}, -e4(a){var s,r -if(A.ex(a))return"{...}" -s=new A.A("") -try{r={} -$.ai.push(a) -s.a+="{" -r.a=!0 -a.F(0,new A.cz(r,s)) -s.a+="}"}finally{$.ai.pop()}r=s.a -return r.charCodeAt(0)==0?r:r}, -e:function e(){}, -N:function N(){}, -cz:function cz(a,b){this.a=a -this.b=b}, -cc:function cc(){}, -aT:function aT(){}, -ar:function ar(a,b){this.a=a -this.$ti=b}, -ao:function ao(){}, -bg:function bg(){}, -j4(a,b){var s,r,q,p=null -try{p=JSON.parse(a)}catch(r){s=A.aj(r) -q=A.y(String(s),null,null) -throw A.b(q)}q=A.dy(p) -return q}, -dy(a){var s -if(a==null)return null -if(typeof a!="object")return a -if(!Array.isArray(a))return new A.c3(a,Object.create(null)) -for(s=0;s")) -for(s=a.length,r=0;r")) -s=A.k([],b.j("o<0>")) -for(r=J.aD(a);r.m();)s.push(r.gn()) -return s}, -eX(a,b,c){var s,r -A.e5(b,"start") -if(c!=null){s=c-b -if(s<0)throw A.b(A.E(c,b,null,"end",null)) -if(s===0)return""}r=A.hI(a,b,c) -return r}, -hI(a,b,c){var s=a.length -if(b>=s)return"" -return A.hE(a,b,c==null||c>s?s:c)}, -eT(a,b){return new A.cu(a,A.eK(a,!1,b,!1,!1,""))}, -eW(a,b,c){var s=J.aD(b) -if(!s.m())return a -if(c.length===0){do a+=A.i(s.gn()) -while(s.m())}else{a+=A.i(s.gn()) -for(;s.m();)a=a+c+A.i(s.gn())}return a}, -fj(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" -if(c===B.e){s=$.h0() -s=s.b.test(b)}else s=!1 -if(s)return b -r=B.y.H(b) -for(s=r.length,q=0,p="";q>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, -ig(a){var s,r,q -if(!$.h1())return A.ih(a) -s=new URLSearchParams() -a.F(0,new A.dp(s)) -r=s.toString() -q=r.length -if(q>0&&r[q-1]==="=")r=B.a.i(r,0,q-1) -return r.replace(/=&|\*|%7E/g,b=>b==="=&"?"&":b==="*"?"%2A":"~")}, -hH(){return A.az(new Error())}, -cn(a){if(typeof a=="number"||A.en(a)||a==null)return J.ak(a) -if(typeof a=="string")return JSON.stringify(a) -return A.eR(a)}, -hk(a,b){A.es(a,"error",t.K) -A.es(b,"stackTrace",t.l) -A.hj(a,b)}, -bq(a){return new A.bp(a)}, -U(a,b){return new A.G(!1,null,b,a)}, -eD(a,b,c){return new A.G(!0,a,b,c)}, -hF(a,b){return new A.aZ(null,null,!0,a,b,"Value not in range")}, -E(a,b,c,d,e){return new A.aZ(b,c,!0,a,d,"Invalid value")}, -bR(a,b,c){if(0>a||a>c)throw A.b(A.E(a,0,c,"start",null)) -if(b!=null){if(a>b||b>c)throw A.b(A.E(b,a,c,"end",null)) -return b}return c}, -e5(a,b){if(a<0)throw A.b(A.E(a,0,null,b,null)) -return a}, -e_(a,b,c,d){return new A.bx(b,!0,a,d,"Index out of range")}, -cJ(a){return new A.b1(a)}, -eZ(a){return new A.bT(a)}, -eV(a){return new A.b0(a)}, -al(a){return new A.bu(a)}, -y(a,b,c){return new A.bw(a,b,c)}, -ht(a,b,c){var s,r -if(A.ex(a)){if(b==="("&&c===")")return"(...)" -return b+"..."+c}s=A.k([],t.s) -$.ai.push(a) -try{A.j1(a,s)}finally{$.ai.pop()}r=A.eW(b,s,", ")+c -return r.charCodeAt(0)==0?r:r}, -e0(a,b,c){var s,r -if(A.ex(a))return b+"..."+c -s=new A.A(b) -$.ai.push(a) -try{r=s -r.a=A.eW(r.a,a,", ")}finally{$.ai.pop()}s.a+=c -r=s.a -return r.charCodeAt(0)==0?r:r}, -j1(a,b){var s,r,q,p,o,n,m,l=a.gv(a),k=0,j=0 -while(!0){if(!(k<80||j<3))break -if(!l.m())return -s=A.i(l.gn()) -b.push(s) -k+=s.length+2;++j}if(!l.m()){if(j<=5)return -r=b.pop() -q=b.pop()}else{p=l.gn();++j -if(!l.m()){if(j<=4){b.push(A.i(p)) -return}r=A.i(p) -q=b.pop() -k+=r.length+2}else{o=l.gn();++j -for(;l.m();p=o,o=n){n=l.gn();++j -if(j>100){while(!0){if(!(k>75&&j>3))break -k-=b.pop().length+2;--j}b.push("...") -return}}q=A.i(p) -r=A.i(o) -k+=r.length+q.length+4}}if(j>b.length+2){k+=5 -m="..."}else m=null -while(!0){if(!(k>80&&b.length>3))break -k-=b.pop().length+2 -if(m==null){k+=5 -m="..."}}if(m!=null)b.push(m) -b.push(q) -b.push(r)}, -hC(a,b,c,d){var s -if(B.h===c){s=B.c.gp(a) -b=J.T(b) -return A.e8(A.a_(A.a_($.dY(),s),b))}if(B.h===d){s=B.c.gp(a) -b=J.T(b) -c=J.T(c) -return A.e8(A.a_(A.a_(A.a_($.dY(),s),b),c))}s=B.c.gp(a) -b=J.T(b) -c=J.T(c) -d=J.T(d) -d=A.e8(A.a_(A.a_(A.a_(A.a_($.dY(),s),b),c),d)) -return d}, -bX(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=null -a6=a4.length -s=a5+5 -if(a6>=s){r=((a4.charCodeAt(a5+4)^58)*3|a4.charCodeAt(a5)^100|a4.charCodeAt(a5+1)^97|a4.charCodeAt(a5+2)^116|a4.charCodeAt(a5+3)^97)>>>0 -if(r===0)return A.f_(a5>0||a6=14)q[7]=a6 -o=q[1] -if(o>=a5)if(A.fB(a4,a5,o,20,q)===20)q[7]=o -n=q[2]+1 -m=q[3] -l=q[4] -k=q[5] -j=q[6] -if(jo+3)){p=m>a5 -g=0 -if(!(p&&m+1===l)){if(!B.a.u(a4,"\\",l))if(n>a5)f=B.a.u(a4,"\\",n-1)||B.a.u(a4,"\\",n-2) -else f=!1 -else f=!0 -if(!f){if(!(kl+2&&B.a.u(a4,"/..",k-3) -else f=!0 -if(!f)if(o===a5+4){if(B.a.u(a4,"file",a5)){if(n<=a5){if(!B.a.u(a4,"/",l)){e="file:///" -r=3}else{e="file://" -r=2}a4=e+B.a.i(a4,l,a6) -o-=a5 -s=r-a5 -k+=s -j+=s -a6=a4.length -a5=g -n=7 -m=7 -l=7}else if(l===k){s=a5===0 -s -if(s){a4=B.a.I(a4,l,k,"/");++k;++j;++a6}else{a4=B.a.i(a4,a5,l)+"/"+B.a.i(a4,k,a6) -o-=a5 -n-=a5 -m-=a5 -l-=a5 -s=1-a5 -k+=s -j+=s -a6=a4.length -a5=g}}h="file"}else if(B.a.u(a4,"http",a5)){if(p&&m+3===l&&B.a.u(a4,"80",m+1)){s=a5===0 -s -if(s){a4=B.a.I(a4,m,l,"") -l-=3 -k-=3 -j-=3 -a6-=3}else{a4=B.a.i(a4,a5,m)+B.a.i(a4,l,a6) -o-=a5 -n-=a5 -m-=a5 -s=3+a5 -l-=s -k-=s -j-=s -a6=a4.length -a5=g}}h="http"}}else if(o===s&&B.a.u(a4,"https",a5)){if(p&&m+4===l&&B.a.u(a4,"443",m+1)){s=a5===0 -s -if(s){a4=B.a.I(a4,m,l,"") -l-=4 -k-=4 -j-=4 -a6-=3}else{a4=B.a.i(a4,a5,m)+B.a.i(a4,l,a6) -o-=a5 -n-=a5 -m-=a5 -s=4+a5 -l-=s -k-=s -j-=s -a6=a4.length -a5=g}}h="https"}i=!f}}}}if(i){if(a5>0||a6a5)h=A.ii(a4,a5,o) -else{if(o===a5)A.au(a4,a5,"Invalid empty scheme") -h=""}d=a3 -if(n>a5){c=o+3 -b=c9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) -o=A.dR(B.a.i(a,r,s),null) -if(o>255)k.$2(l,r) -n=q+1 -j[q]=o -r=s+1 -q=n}}if(q!==3)k.$2(m,c) -o=A.dR(B.a.i(a,r,c),null) -if(o>255)k.$2(l,r) -j[q]=o -return j}, -f0(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.cM(a),c=new A.cN(d,a) -if(a.length<2)d.$2("address is too short",e) -s=A.k([],t.t) -for(r=b,q=r,p=!1,o=!1;r>>0) -s.push((k[2]<<8|k[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) -j=new Uint8Array(16) -for(l=s.length,i=9-l,r=0,h=0;r=b&&q=b&&s=p){if(i==null)i=new A.A("") -if(r=o){if(q==null)q=new A.A("") -if(r=a.length)return"%" -s=a.charCodeAt(b+1) -r=a.charCodeAt(n) -q=A.dJ(s) -p=A.dJ(r) -if(q<0||p<0)return"%" -o=q*16+p -if(o<127&&(u.f.charCodeAt(o)&1)!==0)return A.O(c&&65<=o&&90>=o?(o|32)>>>0:o) -if(s>=97||r>=97)return B.a.i(a,b,b+3).toUpperCase() -return null}, -ee(a){var s,r,q,p,o,n="0123456789ABCDEF" -if(a<=127){s=new Uint8Array(3) -s[0]=37 -s[1]=n.charCodeAt(a>>>4) -s[2]=n.charCodeAt(a&15)}else{if(a>2047)if(a>65535){r=240 -q=4}else{r=224 -q=3}else{r=192 -q=2}s=new Uint8Array(3*q) -for(p=0;--q,q>=0;r=128){o=B.c.bn(a,6*q)&63|r -s[p]=37 -s[p+1]=n.charCodeAt(o>>>4) -s[p+2]=n.charCodeAt(o&15) -p+=3}}return A.eX(s,0,null)}, -bi(a,b,c,d,e,f){var s=A.fh(a,b,c,d,e,f) -return s==null?B.a.i(a,b,c):s}, -fh(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j=null,i=u.f -for(s=!e,r=b,q=r,p=j;r=2&&A.ff(a.charCodeAt(0)))for(s=1;s127||(u.f.charCodeAt(r)&8)===0)break}return a}, -ia(a,b){var s,r,q -for(s=0,r=0;r<2;++r){q=a.charCodeAt(b+r) -if(48<=q&&q<=57)s=s*16+q-48 -else{q|=32 -if(97<=q&&q<=102)s=s*16+q-87 -else throw A.b(A.U("Invalid URL encoding",null))}}return s}, -eh(a,b,c,d,e){var s,r,q,p,o=b -while(!0){if(!(o127)throw A.b(A.U("Illegal percent encoding in URI",null)) -if(r===37){if(o+3>q)throw A.b(A.U("Truncated URI",null)) -p.push(A.ia(a,o+1)) -o+=2}else if(r===43)p.push(32) -else p.push(r)}}return B.af.H(p)}, -ff(a){var s=a|32 -return 97<=s&&s<=122}, -f_(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.k([b-1],t.t) -for(s=a.length,r=b,q=-1,p=null;rb)throw A.b(A.y(k,a,r)) -for(;p!==44;){j.push(r);++r -for(o=-1;r=0)j.push(o) -else{n=B.b.gZ(j) -if(p!==44||r!==n+7||!B.a.u(a,"base64",n+1))throw A.b(A.y("Expecting '='",a,r)) -break}}j.push(r) -m=r+1 -if((j.length&1)===1)a=B.o.bE(a,m,s) -else{l=A.fh(a,m,s,256,!0,!1) -if(l!=null)a=B.a.I(a,m,s,l)}return new A.cK(a,j,c)}, -fB(a,b,c,d,e){var s,r,q -for(s=b;s95)r=31 -q='\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe3\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0e\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\xeb\xeb\x8b\xeb\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x83\xeb\xeb\x8b\xeb\x8b\xeb\xcd\x8b\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x92\x83\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x8b\xeb\x8b\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xebD\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12D\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe8\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\x05\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x10\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\f\xec\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\xec\f\xec\f\xec\xcd\f\xec\f\f\f\f\f\f\f\f\f\xec\f\f\f\f\f\f\f\f\f\f\xec\f\xec\f\xec\f\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\r\xed\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\xed\r\xed\r\xed\xed\r\xed\r\r\r\r\r\r\r\r\r\xed\r\r\r\r\r\r\r\r\r\r\xed\r\xed\r\xed\r\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0f\xea\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe9\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\t\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x11\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xe9\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\t\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x13\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\xf5\x15\x15\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5'.charCodeAt(d*96+r) -d=q&31 -e[q>>>5]=s}return d}, -dp:function dp(a){this.a=a}, -cX:function cX(){}, -l:function l(){}, -bp:function bp(a){this.a=a}, -P:function P(){}, -G:function G(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -aZ:function aZ(a,b,c,d,e,f){var _=this -_.e=a -_.f=b -_.a=c -_.b=d -_.c=e -_.d=f}, -bx:function bx(a,b,c,d,e){var _=this -_.f=a -_.a=b -_.b=c -_.c=d -_.d=e}, -b1:function b1(a){this.a=a}, -bT:function bT(a){this.a=a}, -b0:function b0(a){this.a=a}, -bu:function bu(a){this.a=a}, -bO:function bO(){}, -b_:function b_(){}, -cY:function cY(a){this.a=a}, -bw:function bw(a,b,c){this.a=a -this.b=b -this.c=c}, -r:function r(){}, -t:function t(){}, -j:function j(){}, -cb:function cb(){}, -A:function A(a){this.a=a}, -cO:function cO(a){this.a=a}, -cL:function cL(a){this.a=a}, -cM:function cM(a){this.a=a}, -cN:function cN(a,b){this.a=a -this.b=b}, -bh:function bh(a,b,c,d,e,f,g){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.z=_.y=_.w=$}, -dn:function dn(a,b){this.a=a -this.b=b}, -dm:function dm(a){this.a=a}, -cK:function cK(a,b,c){this.a=a -this.b=b -this.c=c}, -c9:function c9(a,b,c,d,e,f,g,h){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.w=h -_.x=null}, -c0:function c0(a,b,c,d,e,f,g){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.z=_.y=_.w=$}, -a4(a){var s -if(typeof a=="function")throw A.b(A.U("Attempting to rewrap a JS function.",null)) -s=function(b,c){return function(d){return b(c,d,arguments.length)}}(A.iB,a) -s[$.eA()]=a -return s}, -iB(a,b,c){if(c>=1)return a.$1(b) -return a.$0()}, -dU(a,b){var s=new A.v($.p,b.j("v<0>")),r=new A.b2(s,b.j("b2<0>")) -a.then(A.ay(new A.dV(r),1),A.ay(new A.dW(r),1)) -return s}, -dV:function dV(a){this.a=a}, -dW:function dW(a){this.a=a}, -cB:function cB(a){this.a=a}, -m:function m(a,b){this.a=a -this.b=b}, -hn(a){var s,r,q,p,o,n,m,l,k="enclosedBy" -if(a.k(0,k)!=null){s=t.a.a(a.k(0,k)) -r=new A.cl(A.ek(s.k(0,"name")),B.m[A.ei(s.k(0,"kind"))],A.ek(s.k(0,"href")))}else r=null -q=a.k(0,"name") -p=a.k(0,"qualifiedName") -o=A.ej(a.k(0,"packageRank")) -if(o==null)o=0 -n=a.k(0,"href") -m=B.m[A.ei(a.k(0,"kind"))] -l=A.ej(a.k(0,"overriddenDepth")) -if(l==null)l=0 -return new A.w(q,p,o,m,n,l,a.k(0,"desc"),r)}, -B:function B(a,b){this.a=a -this.b=b}, -cq:function cq(a){this.a=a}, -ct:function ct(a,b){this.a=a -this.b=b}, -cr:function cr(){}, -cs:function cs(){}, -w:function w(a,b,c,d,e,f,g,h){var _=this -_.a=a -_.b=b -_.c=c -_.d=d -_.e=e -_.f=f -_.r=g -_.w=h}, -cl:function cl(a,b,c){this.a=a -this.b=b -this.c=c}, -js(){var s=v.G,r=s.document.getElementById("search-box"),q=s.document.getElementById("search-body"),p=s.document.getElementById("search-sidebar") -A.dU(s.window.fetch($.bo()+"index.json"),t.m).aX(new A.dO(new A.dP(r,q,p),r,q,p),t.P)}, -ea(a){var s=A.k([],t.O),r=A.k([],t.M) -return new A.dc(a,A.bX(v.G.window.location.href,0,null),s,r)}, -iD(a,b){var s,r,q,p,o,n,m,l=v.G,k=l.document.createElement("div"),j=b.e -if(j==null)j="" -k.setAttribute("data-href",j) -k.classList.add("tt-suggestion") -s=l.document.createElement("span") -s.classList.add("tt-suggestion-title") -s.innerHTML=A.el(b.a+" "+b.d.h(0).toLowerCase(),a) -k.appendChild(s) -r=b.w -j=r!=null -if(j){s=l.document.createElement("span") -s.classList.add("tt-suggestion-container") -s.innerHTML="(in "+A.el(r.a,a)+")" -k.appendChild(s)}q=b.r -if(q!=null&&q.length!==0){s=l.document.createElement("blockquote") -s.classList.add("one-line-description") -p=l.document.createElement("textarea") -p.innerHTML=q -s.setAttribute("title",p.value) -s.innerHTML=A.el(q,a) -k.appendChild(s)}k.addEventListener("mousedown",A.a4(new A.dz())) -k.addEventListener("click",A.a4(new A.dA(b))) -if(j){j=r.a -o=r.b.h(0) -n=r.c -s=l.document.createElement("div") -s.classList.add("tt-container") -p=l.document.createElement("p") -p.textContent="Results from " -p.classList.add("tt-container-text") -m=l.document.createElement("a") -m.setAttribute("href",n) -m.innerHTML=j+" "+o -p.appendChild(m) -s.appendChild(p) -A.j2(s,k)}return k}, -j2(a,b){var s,r=a.innerHTML -if(r.length===0)return -s=$.a3.k(0,r) -if(s!=null)s.appendChild(b) -else{a.appendChild(b) -$.a3.A(0,r,a)}}, -el(a,b){return A.jH(a,A.eT(b,!1),new A.dB(),null)}, -dC:function dC(){}, -dP:function dP(a,b,c){this.a=a -this.b=b -this.c=c}, -dO:function dO(a,b,c,d){var _=this -_.a=a -_.b=b -_.c=c -_.d=d}, -dc:function dc(a,b,c,d){var _=this -_.a=a -_.b=b -_.e=_.d=_.c=$ -_.f=null -_.r="" -_.w=c -_.x=d -_.y=-1}, -dd:function dd(a){this.a=a}, -de:function de(a,b){this.a=a -this.b=b}, -df:function df(a,b){this.a=a -this.b=b}, -dg:function dg(a,b){this.a=a -this.b=b}, -dh:function dh(a,b){this.a=a -this.b=b}, -dz:function dz(){}, -dA:function dA(a){this.a=a}, -dB:function dB(){}, -iL(){var s=v.G,r=s.document.getElementById("sidenav-left-toggle"),q=s.document.querySelector(".sidebar-offcanvas-left"),p=s.document.getElementById("overlay-under-drawer"),o=A.a4(new A.dD(q,p)) -if(p!=null)p.addEventListener("click",o) -if(r!=null)r.addEventListener("click",o)}, -iK(){var s,r,q,p,o=v.G,n=o.document.body -if(n==null)return -s=n.getAttribute("data-using-base-href") -if(s==null)return -if(s!=="true"){r=n.getAttribute("data-base-href") -if(r==null)return -q=r}else q="" -p=o.document.getElementById("dartdoc-main-content") -if(p==null)return -A.fx(q,p.getAttribute("data-above-sidebar"),o.document.getElementById("dartdoc-sidebar-left-content")) -A.fx(q,p.getAttribute("data-below-sidebar"),o.document.getElementById("dartdoc-sidebar-right"))}, -fx(a,b,c){if(b==null||b.length===0||c==null)return -A.dU(v.G.window.fetch(a+b),t.m).aX(new A.dE(c,a),t.P)}, -fE(a,b){var s,r,q,p,o,n=A.hu(b,"HTMLAnchorElement") -if(n){n=b.attributes.getNamedItem("href") -s=n==null?null:n.value -if(s==null)return -r=A.hO(s) -if(r!=null&&!r.gaS())b.href=a+s}q=b.childNodes -for(p=0;p").C(b).j("M<1,2>"))}, -X(a){a.$flags&1&&A.aC(a,"clear","clear") -a.length=0}, -aT(a,b){var s,r=A.eO(a.length,"",!1,t.N) -for(s=0;ss)throw A.b(A.E(b,0,s,"start",null)) -if(cs)throw A.b(A.E(c,b,s,"end",null)) -if(b===c)return A.k([],A.a2(a)) -return A.k(a.slice(b,c),A.a2(a))}, -gZ(a){var s=a.length -if(s>0)return a[s-1] -throw A.b(A.hr())}, -b5(a,b){var s,r,q,p,o -a.$flags&2&&A.aC(a,"sort") -s=a.length -if(s<2)return -if(b==null)b=J.iR() -if(s===2){r=a[0] -q=a[1] -if(b.$2(r,q)>0){a[0]=q -a[1]=r}return}p=0 -if(A.a2(a).c.b(null))for(o=0;o0)this.bl(a,p)}, -bl(a,b){var s,r=a.length -for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b -if(b===0)break}}, -h(a){return A.e0(a,"[","]")}, -gv(a){return new J.V(a,a.length,A.a2(a).j("V<1>"))}, -gp(a){return A.bQ(a)}, -gl(a){return a.length}, -k(a,b){if(!(b>=0&&b=p){r.d=null -return!1}r.d=q[s] -r.c=s+1 -return!0}} -J.aN.prototype={ -aG(a,b){var s -if(ab)return 1 -else if(a===b){if(a===0){s=this.gaj(b) -if(this.gaj(a)===s)return 0 -if(this.gaj(a))return-1 -return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 -return 1}else return-1}, -gaj(a){return a===0?1/a<0:a<0}, -h(a){if(a===0&&1/a<0)return"-0.0" -else return""+a}, -gp(a){var s,r,q,p,o=a|0 -if(a===o)return o&536870911 -s=Math.abs(a) -r=Math.log(s)/0.6931471805599453|0 -q=Math.pow(2,r) -p=s<1?s/q:q/s -return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, -a0(a,b){var s=a%b -if(s===0)return 0 -if(s>0)return s -return s+b}, -bo(a,b){return(a|0)===a?a/b|0:this.bp(a,b)}, -bp(a,b){var s=a/b -if(s>=-2147483648&&s<=2147483647)return s|0 -if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) -throw A.b(A.cJ("Result of truncating division is "+A.i(s)+": "+A.i(a)+" ~/ "+b))}, -aa(a,b){var s -if(a>0)s=this.aC(a,b) -else{s=b>31?31:b -s=a>>s>>>0}return s}, -bn(a,b){if(0>b)throw A.b(A.jf(b)) -return this.aC(a,b)}, -aC(a,b){return b>31?0:a>>>b}, -gq(a){return A.af(t.H)}, -$iq:1} -J.aL.prototype={ -gq(a){return A.af(t.S)}, -$ih:1, -$ia:1} -J.bA.prototype={ -gq(a){return A.af(t.i)}, -$ih:1} -J.a8.prototype={ -I(a,b,c,d){var s=A.bR(b,c,a.length) -return a.substring(0,b)+d+a.substring(s)}, -u(a,b,c){var s -if(c<0||c>a.length)throw A.b(A.E(c,0,a.length,null,null)) -s=c+b.length -if(s>a.length)return!1 -return b===a.substring(c,s)}, -t(a,b){return this.u(a,b,0)}, -i(a,b,c){return a.substring(b,A.bR(b,c,a.length))}, -K(a,b){return this.i(a,b,null)}, -b2(a,b){var s,r -if(0>=b)return"" -if(b===1||a.length===0)return a -if(b!==b>>>0)throw A.b(B.x) -for(s=a,r="";!0;){if((b&1)===1)r=s+r -b=b>>>1 -if(b===0)break -s+=s}return r}, -Y(a,b,c){var s -if(c<0||c>a.length)throw A.b(A.E(c,0,a.length,null,null)) -s=a.indexOf(b,c) -return s}, -aP(a,b){return this.Y(a,b,0)}, -N(a,b){return A.jG(a,b,0)}, -aG(a,b){var s -if(a===b)s=0 -else s=a>6}r=r+((r&67108863)<<3)&536870911 -r^=r>>11 -return r+((r&16383)<<15)&536870911}, -gq(a){return A.af(t.N)}, -gl(a){return a.length}, -$ih:1, -$id:1} -A.a0.prototype={ -gv(a){return new A.br(J.aD(this.gM()),A.S(this).j("br<1,2>"))}, -gl(a){return J.cg(this.gM())}, -D(a,b){return A.S(this).y[1].a(J.eC(this.gM(),b))}, -h(a){return J.ak(this.gM())}} -A.br.prototype={ -m(){return this.a.m()}, -gn(){return this.$ti.y[1].a(this.a.gn())}} -A.a6.prototype={ -gM(){return this.a}} -A.b4.prototype={$ic:1} -A.b3.prototype={ -k(a,b){return this.$ti.y[1].a(J.h5(this.a,b))}, -$ic:1, -$if:1} -A.M.prototype={ -W(a,b){return new A.M(this.a,this.$ti.j("@<1>").C(b).j("M<1,2>"))}, -gM(){return this.a}} -A.bC.prototype={ -h(a){return"LateInitializationError: "+this.a}} -A.bs.prototype={ -gl(a){return this.a.length}, -k(a,b){return this.a.charCodeAt(b)}} -A.cE.prototype={} -A.c.prototype={} -A.I.prototype={ -gv(a){var s=this -return new A.am(s,s.gl(s),A.S(s).j("am"))}} -A.am.prototype={ -gn(){var s=this.d -return s==null?this.$ti.c.a(s):s}, -m(){var s,r=this,q=r.a,p=J.cf(q),o=p.gl(q) -if(r.b!==o)throw A.b(A.al(q)) -s=r.c -if(s>=o){r.d=null -return!1}r.d=p.D(q,s);++r.c -return!0}} -A.ab.prototype={ -gl(a){return J.cg(this.a)}, -D(a,b){return this.b.$1(J.eC(this.a,b))}} -A.aK.prototype={} -A.bV.prototype={} -A.aq.prototype={} -A.bj.prototype={} -A.c8.prototype={$r:"+item,matchPosition(1,2)",$s:1} -A.aF.prototype={ -h(a){return A.e4(this)}, -A(a,b,c){A.hi()}, -$iz:1} -A.aH.prototype={ -gl(a){return this.b.length}, -gbi(){var s=this.$keys -if(s==null){s=Object.keys(this.a) -this.$keys=s}return s}, -O(a){if("__proto__"===a)return!1 -return this.a.hasOwnProperty(a)}, -k(a,b){if(!this.O(b))return null -return this.b[this.a[b]]}, -F(a,b){var s,r,q=this.gbi(),p=this.b -for(s=q.length,r=0;r=s.b){s.d=null -return!1}s.d=s.a[r] -s.c=r+1 -return!0}} -A.aG.prototype={} -A.aI.prototype={ -gl(a){return this.b}, -gv(a){var s,r=this,q=r.$keys -if(q==null){q=Object.keys(r.a) -r.$keys=q}s=q -return new A.c5(s,s.length,r.$ti.j("c5<1>"))}, -N(a,b){if("__proto__"===b)return!1 -return this.a.hasOwnProperty(b)}} -A.cH.prototype={ -B(a){var s,r,q=this,p=new RegExp(q.a).exec(a) -if(p==null)return null -s=Object.create(null) -r=q.b -if(r!==-1)s.arguments=p[r+1] -r=q.c -if(r!==-1)s.argumentsExpr=p[r+1] -r=q.d -if(r!==-1)s.expr=p[r+1] -r=q.e -if(r!==-1)s.method=p[r+1] -r=q.f -if(r!==-1)s.receiver=p[r+1] -return s}} -A.aY.prototype={ -h(a){return"Null check operator used on a null value"}} -A.bB.prototype={ -h(a){var s,r=this,q="NoSuchMethodError: method not found: '",p=r.b -if(p==null)return"NoSuchMethodError: "+r.a -s=r.c -if(s==null)return q+p+"' ("+r.a+")" -return q+p+"' on '"+s+"' ("+r.a+")"}} -A.bU.prototype={ -h(a){var s=this.a -return s.length===0?"Error":"Error: "+s}} -A.cC.prototype={ -h(a){return"Throw of null ('"+(this.a===null?"null":"undefined")+"' from JavaScript)"}} -A.aJ.prototype={} -A.ba.prototype={ -h(a){var s,r=this.b -if(r!=null)return r -r=this.a -s=r!==null&&typeof r==="object"?r.stack:null -return this.b=s==null?"":s}, -$iZ:1} -A.a7.prototype={ -h(a){var s=this.constructor,r=s==null?null:s.name -return"Closure '"+A.fP(r==null?"unknown":r)+"'"}, -gbN(){return this}, -$C:"$1", -$R:1, -$D:null} -A.cj.prototype={$C:"$0",$R:0} -A.ck.prototype={$C:"$2",$R:2} -A.cG.prototype={} -A.cF.prototype={ -h(a){var s=this.$static_name -if(s==null)return"Closure of unknown static method" -return"Closure '"+A.fP(s)+"'"}} -A.aE.prototype={ -E(a,b){if(b==null)return!1 -if(this===b)return!0 -if(!(b instanceof A.aE))return!1 -return this.$_target===b.$_target&&this.a===b.a}, -gp(a){return(A.fM(this.a)^A.bQ(this.$_target))>>>0}, -h(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.cD(this.a)+"'")}} -A.bS.prototype={ -h(a){return"RuntimeError: "+this.a}} -A.a9.prototype={ -gl(a){return this.a}, -gP(){return new A.aa(this,A.S(this).j("aa<1>"))}, -O(a){var s=this.b -if(s==null)return!1 -return s[a]!=null}, -k(a,b){var s,r,q,p,o=null -if(typeof b=="string"){s=this.b -if(s==null)return o -r=s[b] -q=r==null?o:r.b -return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c -if(p==null)return o -r=p[b] -q=r==null?o:r.b -return q}else return this.bC(b)}, -bC(a){var s,r,q=this.d -if(q==null)return null -s=q[this.aQ(a)] -r=this.aR(s,a) -if(r<0)return null -return s[r].b}, -A(a,b,c){var s,r,q,p,o,n,m=this -if(typeof b=="string"){s=m.b -m.ap(s==null?m.b=m.a8():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=m.c -m.ap(r==null?m.c=m.a8():r,b,c)}else{q=m.d -if(q==null)q=m.d=m.a8() -p=m.aQ(b) -o=q[p] -if(o==null)q[p]=[m.a9(b,c)] -else{n=m.aR(o,b) -if(n>=0)o[n].b=c -else o.push(m.a9(b,c))}}}, -X(a){var s=this -if(s.a>0){s.b=s.c=s.d=s.e=s.f=null -s.a=0 -s.az()}}, -F(a,b){var s=this,r=s.e,q=s.r -for(;r!=null;){b.$2(r.a,r.b) -if(q!==s.r)throw A.b(A.al(s)) -r=r.c}}, -ap(a,b,c){var s=a[b] -if(s==null)a[b]=this.a9(b,c) -else s.b=c}, -az(){this.r=this.r+1&1073741823}, -a9(a,b){var s=this,r=new A.cy(a,b) -if(s.e==null)s.e=s.f=r -else s.f=s.f.c=r;++s.a -s.az() -return r}, -aQ(a){return J.T(a)&1073741823}, -aR(a,b){var s,r -if(a==null)return-1 -s=a.length -for(r=0;r"]=s -delete s[""] -return s}} -A.cy.prototype={} -A.aa.prototype={ -gl(a){return this.a.a}, -gv(a){var s=this.a -return new A.bD(s,s.r,s.e)}} -A.bD.prototype={ -gn(){return this.d}, -m(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.b(A.al(q)) -s=r.c -if(s==null){r.d=null -return!1}else{r.d=s.a -r.c=s.c -return!0}}} -A.aS.prototype={ -gl(a){return this.a.a}, -gv(a){var s=this.a -return new A.aR(s,s.r,s.e)}} -A.aR.prototype={ -gn(){return this.d}, -m(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.b(A.al(q)) -s=r.c -if(s==null){r.d=null -return!1}else{r.d=s.b -r.c=s.c -return!0}}} -A.dK.prototype={ -$1(a){return this.a(a)}, -$S:9} -A.dL.prototype={ -$2(a,b){return this.a(a,b)}, -$S:10} -A.dM.prototype={ -$1(a){return this.a(a)}, -$S:11} -A.b9.prototype={ -h(a){return this.aE(!1)}, -aE(a){var s,r,q,p,o,n=this.bg(),m=this.aw(),l=(a?""+"Record ":"")+"(" -for(s=n.length,r="",q=0;q0;){--q;--s -k[q]=r[s]}}k=A.hz(k,!1,t.K) -k.$flags=3 -return k}} -A.c7.prototype={ -aw(){return[this.a,this.b]}, -E(a,b){if(b==null)return!1 -return b instanceof A.c7&&this.$s===b.$s&&J.F(this.a,b.a)&&J.F(this.b,b.b)}, -gp(a){return A.hC(this.$s,this.a,this.b,B.h)}} -A.cu.prototype={ -h(a){return"RegExp/"+this.a+"/"+this.b.flags}, -gbj(){var s=this,r=s.c -if(r!=null)return r -r=s.b -return s.c=A.eK(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"g")}, -bf(a,b){var s,r=this.gbj() -r.lastIndex=b -s=r.exec(a) -if(s==null)return null -return new A.c6(s)}} -A.c6.prototype={ -gbw(){var s=this.b -return s.index+s[0].length}, -k(a,b){return this.b[b]}, -$icA:1, -$ie6:1} -A.cS.prototype={ -gn(){var s=this.d -return s==null?t.F.a(s):s}, -m(){var s,r,q,p,o,n,m=this,l=m.b -if(l==null)return!1 -s=m.c -r=l.length -if(s<=r){q=m.a -p=q.bf(l,s) -if(p!=null){m.d=p -o=p.gbw() -if(p.b.index===o){s=!1 -if(q.b.unicode){q=m.c -n=q+1 -if(n=55296&&r<=56319){s=l.charCodeAt(n) -s=s>=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o -return!0}}m.b=m.d=null -return!1}} -A.bE.prototype={ -gq(a){return B.a3}, -$ih:1} -A.aW.prototype={} -A.bF.prototype={ -gq(a){return B.a4}, -$ih:1} -A.an.prototype={ -gl(a){return a.length}, -$iC:1} -A.aU.prototype={ -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ic:1, -$if:1} -A.aV.prototype={$ic:1,$if:1} -A.bG.prototype={ -gq(a){return B.a5}, -$ih:1} -A.bH.prototype={ -gq(a){return B.a6}, -$ih:1} -A.bI.prototype={ -gq(a){return B.a7}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.bJ.prototype={ -gq(a){return B.a8}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.bK.prototype={ -gq(a){return B.a9}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.bL.prototype={ -gq(a){return B.ab}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.bM.prototype={ -gq(a){return B.ac}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.aX.prototype={ -gq(a){return B.ad}, -gl(a){return a.length}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.bN.prototype={ -gq(a){return B.ae}, -gl(a){return a.length}, -k(a,b){A.ad(b,a,a.length) -return a[b]}, -$ih:1} -A.b5.prototype={} -A.b6.prototype={} -A.b7.prototype={} -A.b8.prototype={} -A.J.prototype={ -j(a){return A.bf(v.typeUniverse,this,a)}, -C(a){return A.fc(v.typeUniverse,this,a)}} -A.c2.prototype={} -A.dk.prototype={ -h(a){return A.D(this.a,null)}} -A.c1.prototype={ -h(a){return this.a}} -A.bb.prototype={$iP:1} -A.cU.prototype={ -$1(a){var s=this.a,r=s.a -s.a=null -r.$0()}, -$S:4} -A.cT.prototype={ -$1(a){var s,r -this.a.a=a -s=this.b -r=this.c -s.firstChild?s.removeChild(r):s.appendChild(r)}, -$S:12} -A.cV.prototype={ -$0(){this.a.$0()}, -$S:5} -A.cW.prototype={ -$0(){this.a.$0()}, -$S:5} -A.di.prototype={ -b8(a,b){if(self.setTimeout!=null)self.setTimeout(A.ay(new A.dj(this,b),0),a) -else throw A.b(A.cJ("`setTimeout()` not found."))}} -A.dj.prototype={ -$0(){this.b.$0()}, -$S:0} -A.bY.prototype={ -ac(a){var s,r=this -if(a==null)a=r.$ti.c.a(a) -if(!r.b)r.a.aq(a) -else{s=r.a -if(r.$ti.j("W<1>").b(a))s.ar(a) -else s.au(a)}}, -ad(a,b){var s=this.a -if(this.b)s.a4(new A.H(a,b)) -else s.a3(new A.H(a,b))}} -A.dw.prototype={ -$1(a){return this.a.$2(0,a)}, -$S:2} -A.dx.prototype={ -$2(a,b){this.a.$2(1,new A.aJ(a,b))}, -$S:13} -A.dH.prototype={ -$2(a,b){this.a(a,b)}, -$S:14} -A.H.prototype={ -h(a){return A.i(this.a)}, -$il:1, -gJ(){return this.b}} -A.c_.prototype={ -ad(a,b){var s=this.a -if((s.a&30)!==0)throw A.b(A.eV("Future already completed")) -s.a3(A.iQ(a,b))}, -aH(a){return this.ad(a,null)}} -A.b2.prototype={ -ac(a){var s=this.a -if((s.a&30)!==0)throw A.b(A.eV("Future already completed")) -s.aq(a)}} -A.as.prototype={ -bD(a){if((this.c&15)!==6)return!0 -return this.b.b.an(this.d,a.a)}, -bz(a){var s,r=this.e,q=null,p=a.a,o=this.b.b -if(t.Q.b(r))q=o.bI(r,p,a.b) -else q=o.an(r,p) -try{p=q -return p}catch(s){if(t._.b(A.aj(s))){if((this.c&1)!==0)throw A.b(A.U("The error handler of Future.then must return a value of the returned future's type","onError")) -throw A.b(A.U("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} -A.v.prototype={ -ao(a,b,c){var s,r,q=$.p -if(q===B.d){if(b!=null&&!t.Q.b(b)&&!t.v.b(b))throw A.b(A.eD(b,"onError",u.c))}else if(b!=null)b=A.j6(b,q) -s=new A.v(q,c.j("v<0>")) -r=b==null?1:3 -this.a2(new A.as(s,r,a,b,this.$ti.j("@<1>").C(c).j("as<1,2>"))) -return s}, -aX(a,b){a.toString -return this.ao(a,null,b)}, -aD(a,b,c){var s=new A.v($.p,c.j("v<0>")) -this.a2(new A.as(s,19,a,b,this.$ti.j("@<1>").C(c).j("as<1,2>"))) -return s}, -bm(a){this.a=this.a&1|16 -this.c=a}, -S(a){this.a=a.a&30|this.a&1 -this.c=a.c}, -a2(a){var s=this,r=s.a -if(r<=3){a.a=s.c -s.c=a}else{if((r&4)!==0){r=s.c -if((r.a&24)===0){r.a2(a) -return}s.S(r)}A.cd(null,null,s.b,new A.cZ(s,a))}}, -aA(a){var s,r,q,p,o,n=this,m={} -m.a=a -if(a==null)return -s=n.a -if(s<=3){r=n.c -n.c=a -if(r!=null){q=a.a -for(p=a;q!=null;p=q,q=o)o=q.a -p.a=r}}else{if((s&4)!==0){s=n.c -if((s.a&24)===0){s.aA(a) -return}n.S(s)}m.a=n.U(a) -A.cd(null,null,n.b,new A.d2(m,n))}}, -T(){var s=this.c -this.c=null -return this.U(s)}, -U(a){var s,r,q -for(s=a,r=null;s!=null;r=s,s=q){q=s.a -s.a=r}return r}, -au(a){var s=this,r=s.T() -s.a=8 -s.c=a -A.at(s,r)}, -ba(a){var s,r,q=this -if((a.a&16)!==0){s=q.b===a.b -s=!(s||s)}else s=!1 -if(s)return -r=q.T() -q.S(a) -A.at(q,r)}, -a4(a){var s=this.T() -this.bm(a) -A.at(this,s)}, -aq(a){if(this.$ti.j("W<1>").b(a)){this.ar(a) -return}this.b9(a)}, -b9(a){this.a^=2 -A.cd(null,null,this.b,new A.d0(this,a))}, -ar(a){A.e9(a,this,!1) -return}, -a3(a){this.a^=2 -A.cd(null,null,this.b,new A.d_(this,a))}, -$iW:1} -A.cZ.prototype={ -$0(){A.at(this.a,this.b)}, -$S:0} -A.d2.prototype={ -$0(){A.at(this.b,this.a.a)}, -$S:0} -A.d1.prototype={ -$0(){A.e9(this.a.a,this.b,!0)}, -$S:0} -A.d0.prototype={ -$0(){this.a.au(this.b)}, -$S:0} -A.d_.prototype={ -$0(){this.a.a4(this.b)}, -$S:0} -A.d5.prototype={ -$0(){var s,r,q,p,o,n,m,l,k=this,j=null -try{q=k.a.a -j=q.b.b.bG(q.d)}catch(p){s=A.aj(p) -r=A.az(p) -if(k.c&&k.b.a.c.a===s){q=k.a -q.c=k.b.a.c}else{q=s -o=r -if(o==null)o=A.dZ(q) -n=k.a -n.c=new A.H(q,o) -q=n}q.b=!0 -return}if(j instanceof A.v&&(j.a&24)!==0){if((j.a&16)!==0){q=k.a -q.c=j.c -q.b=!0}return}if(j instanceof A.v){m=k.b.a -l=new A.v(m.b,m.$ti) -j.ao(new A.d6(l,m),new A.d7(l),t.q) -q=k.a -q.c=l -q.b=!1}}, -$S:0} -A.d6.prototype={ -$1(a){this.a.ba(this.b)}, -$S:4} -A.d7.prototype={ -$2(a,b){this.a.a4(new A.H(a,b))}, -$S:15} -A.d4.prototype={ -$0(){var s,r,q,p,o,n -try{q=this.a -p=q.a -q.c=p.b.b.an(p.d,this.b)}catch(o){s=A.aj(o) -r=A.az(o) -q=s -p=r -if(p==null)p=A.dZ(q) -n=this.a -n.c=new A.H(q,p) -n.b=!0}}, -$S:0} -A.d3.prototype={ -$0(){var s,r,q,p,o,n,m,l=this -try{s=l.a.a.c -p=l.b -if(p.a.bD(s)&&p.a.e!=null){p.c=p.a.bz(s) -p.b=!1}}catch(o){r=A.aj(o) -q=A.az(o) -p=l.a.a.c -if(p.a===r){n=l.b -n.c=p -p=n}else{p=r -n=q -if(n==null)n=A.dZ(p) -m=l.b -m.c=new A.H(p,n) -p=m}p.b=!0}}, -$S:0} -A.bZ.prototype={} -A.ca.prototype={} -A.dv.prototype={} -A.dF.prototype={ -$0(){A.hk(this.a,this.b)}, -$S:0} -A.da.prototype={ -bK(a){var s,r,q -try{if(B.d===$.p){a.$0() -return}A.fz(null,null,this,a)}catch(q){s=A.aj(q) -r=A.az(q) -A.ep(s,r)}}, -bs(a){return new A.db(this,a)}, -bH(a){if($.p===B.d)return a.$0() -return A.fz(null,null,this,a)}, -bG(a){a.toString -return this.bH(a,t.z)}, -bL(a,b){if($.p===B.d)return a.$1(b) -return A.j8(null,null,this,a,b)}, -an(a,b){var s=t.z -a.toString -return this.bL(a,b,s,s)}, -bJ(a,b,c){if($.p===B.d)return a.$2(b,c) -return A.j7(null,null,this,a,b,c)}, -bI(a,b,c){var s=t.z -a.toString -return this.bJ(a,b,c,s,s,s)}, -bF(a){return a}, -aW(a){var s=t.z -a.toString -return this.bF(a,s,s,s)}} -A.db.prototype={ -$0(){return this.a.bK(this.b)}, -$S:0} -A.e.prototype={ -gv(a){return new A.am(a,this.gl(a),A.aA(a).j("am"))}, -D(a,b){return this.k(a,b)}, -W(a,b){return new A.M(a,A.aA(a).j("@").C(b).j("M<1,2>"))}, -h(a){return A.e0(a,"[","]")}, -$ic:1, -$if:1} -A.N.prototype={ -F(a,b){var s,r,q,p -for(s=this.gP(),s=s.gv(s),r=A.S(this).j("N.V");s.m();){q=s.gn() -p=this.k(0,q) -b.$2(q,p==null?r.a(p):p)}}, -gl(a){var s=this.gP() -return s.gl(s)}, -h(a){return A.e4(this)}, -$iz:1} -A.cz.prototype={ -$2(a,b){var s,r=this.a -if(!r.a)this.b.a+=", " -r.a=!1 -r=this.b -s=A.i(a) -r.a=(r.a+=s)+": " -s=A.i(b) -r.a+=s}, -$S:16} -A.cc.prototype={ -A(a,b,c){throw A.b(A.cJ("Cannot modify unmodifiable map"))}} -A.aT.prototype={ -k(a,b){return this.a.k(0,b)}, -A(a,b,c){this.a.A(0,b,c)}, -gl(a){var s=this.a -return s.gl(s)}, -h(a){return this.a.h(0)}, -$iz:1} -A.ar.prototype={} -A.ao.prototype={ -h(a){return A.e0(this,"{","}")}, -D(a,b){var s,r -A.e5(b,"index") -s=this.gv(this) -for(r=b;s.m();){if(r===0)return s.gn();--r}throw A.b(A.e_(b,b-r,this,"index"))}, -$ic:1} -A.bg.prototype={} -A.c3.prototype={ -k(a,b){var s,r=this.b -if(r==null)return this.c.k(0,b) -else if(typeof b!="string")return null -else{s=r[b] -return typeof s=="undefined"?this.bk(b):s}}, -gl(a){return this.b==null?this.c.a:this.L().length}, -gP(){if(this.b==null){var s=this.c -return new A.aa(s,A.S(s).j("aa<1>"))}return new A.c4(this)}, -A(a,b,c){var s,r,q=this -if(q.b==null)q.c.A(0,b,c) -else if(q.O(b)){s=q.b -s[b]=c -r=q.a -if(r==null?s!=null:r!==s)r[b]=null}else q.bq().A(0,b,c)}, -O(a){if(this.b==null)return this.c.O(a) -return Object.prototype.hasOwnProperty.call(this.a,a)}, -F(a,b){var s,r,q,p,o=this -if(o.b==null)return o.c.F(0,b) -s=o.L() -for(r=0;r"))}return s}} -A.ds.prototype={ -$0(){var s,r -try{s=new TextDecoder("utf-8",{fatal:true}) -return s}catch(r){}return null}, -$S:6} -A.dr.prototype={ -$0(){var s,r -try{s=new TextDecoder("utf-8",{fatal:false}) -return s}catch(r){}return null}, -$S:6} -A.ch.prototype={ -bE(a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a="Invalid base64 encoding length " -a2=A.bR(a1,a2,a0.length) -s=$.h_() -for(r=a1,q=r,p=null,o=-1,n=-1,m=0;r=0){g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(f) -if(g===k)continue -k=g}else{if(f===-1){if(o<0){e=p==null?null:p.a.length -if(e==null)e=0 -o=e+(r-q) -n=r}++m -if(k===61)continue}k=g}if(f!==-2){if(p==null){p=new A.A("") -e=p}else e=p -e.a+=B.a.i(a0,q,r) -d=A.O(k) -e.a+=d -q=l -continue}}throw A.b(A.y("Invalid base64 data",a0,r))}if(p!=null){e=B.a.i(a0,q,a2) -e=p.a+=e -d=e.length -if(o>=0)A.eE(a0,n,a2,o,m,d) -else{c=B.c.a0(d-1,4)+1 -if(c===1)throw A.b(A.y(a,a0,a2)) -for(;c<4;){e+="=" -p.a=e;++c}}e=p.a -return B.a.I(a0,a1,a2,e.charCodeAt(0)==0?e:e)}b=a2-a1 -if(o>=0)A.eE(a0,n,a2,o,m,b) -else{c=B.c.a0(b,4) -if(c===1)throw A.b(A.y(a,a0,a2)) -if(c>1)a0=B.a.I(a0,a2,a2,c===2?"==":"=")}return a0}} -A.ci.prototype={} -A.bt.prototype={} -A.bv.prototype={} -A.cm.prototype={} -A.cp.prototype={ -h(a){return"unknown"}} -A.co.prototype={ -H(a){var s=this.bd(a,0,a.length) -return s==null?a:s}, -bd(a,b,c){var s,r,q,p -for(s=b,r=null;s":q=">" -break -case"/":q="/" -break -default:q=null}if(q!=null){if(r==null)r=new A.A("") -if(s>b)r.a+=B.a.i(a,b,s) -r.a+=q -b=s+1}}if(r==null)return null -if(c>b){p=B.a.i(a,b,c) -r.a+=p}p=r.a -return p.charCodeAt(0)==0?p:p}} -A.cw.prototype={ -bt(a,b){var s=A.j4(a,this.gbv().a) -return s}, -gbv(){return B.C}} -A.cx.prototype={} -A.cP.prototype={} -A.cR.prototype={ -H(a){var s,r,q,p=A.bR(0,null,a.length) -if(p===0)return new Uint8Array(0) -s=p*3 -r=new Uint8Array(s) -q=new A.dt(r) -if(q.bh(a,0,p)!==p)q.ab() -return new Uint8Array(r.subarray(0,A.iC(0,q.b,s)))}} -A.dt.prototype={ -ab(){var s=this,r=s.c,q=s.b,p=s.b=q+1 -r.$flags&2&&A.aC(r) -r[q]=239 -q=s.b=p+1 -r[p]=191 -s.b=q+1 -r[q]=189}, -br(a,b){var s,r,q,p,o=this -if((b&64512)===56320){s=65536+((a&1023)<<10)|b&1023 -r=o.c -q=o.b -p=o.b=q+1 -r.$flags&2&&A.aC(r) -r[q]=s>>>18|240 -q=o.b=p+1 -r[p]=s>>>12&63|128 -p=o.b=q+1 -r[q]=s>>>6&63|128 -o.b=p+1 -r[p]=s&63|128 -return!0}else{o.ab() -return!1}}, -bh(a,b,c){var s,r,q,p,o,n,m,l,k=this -if(b!==c&&(a.charCodeAt(c-1)&64512)===55296)--c -for(s=k.c,r=s.$flags|0,q=s.length,p=b;p=q)break -k.b=n+1 -r&2&&A.aC(s) -s[n]=o}else{n=o&64512 -if(n===55296){if(k.b+4>q)break -m=p+1 -if(k.br(o,a.charCodeAt(m)))p=m}else if(n===56320){if(k.b+3>q)break -k.ab()}else if(o<=2047){n=k.b -l=n+1 -if(l>=q)break -k.b=l -r&2&&A.aC(s) -s[n]=o>>>6|192 -k.b=l+1 -s[l]=o&63|128}else{n=k.b -if(n+2>=q)break -l=k.b=n+1 -r&2&&A.aC(s) -s[n]=o>>>12|224 -n=k.b=l+1 -s[l]=o>>>6&63|128 -k.b=n+1 -s[n]=o&63|128}}}return p}} -A.cQ.prototype={ -H(a){return new A.dq(this.a).be(a,0,null,!0)}} -A.dq.prototype={ -be(a,b,c,d){var s,r,q,p,o,n,m=this,l=A.bR(b,c,J.cg(a)) -if(b===l)return"" -if(a instanceof Uint8Array){s=a -r=s -q=0}else{r=A.iq(a,b,l) -l-=b -q=b -b=0}if(l-b>=15){p=m.a -o=A.ip(p,r,b,l) -if(o!=null){if(!p)return o -if(o.indexOf("\ufffd")<0)return o}}o=m.a5(r,b,l,!0) -p=m.b -if((p&1)!==0){n=A.ir(p) -m.b=0 -throw A.b(A.y(n,a,q+m.c))}return o}, -a5(a,b,c,d){var s,r,q=this -if(c-b>1000){s=B.c.bo(b+c,2) -r=q.a5(a,b,s,!1) -if((q.b&1)!==0)return r -return r+q.a5(a,s,c,d)}return q.bu(a,b,c,d)}, -bu(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=65533,j=l.b,i=l.c,h=new A.A(""),g=b+1,f=a[b] -$label0$0:for(s=l.a;!0;){for(;!0;g=p){r="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE".charCodeAt(f)&31 -i=j<=32?f&61694>>>r:(f&63|i<<6)>>>0 -j=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA".charCodeAt(j+r) -if(j===0){q=A.O(i) -h.a+=q -if(g===c)break $label0$0 -break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:q=A.O(k) -h.a+=q -break -case 65:q=A.O(k) -h.a+=q;--g -break -default:q=A.O(k) -h.a=(h.a+=q)+A.O(k) -break}else{l.b=j -l.c=g-1 -return""}j=0}if(g===c)break $label0$0 -p=g+1 -f=a[g]}p=g+1 -f=a[g] -if(f<128){while(!0){if(!(p=128){o=n-1 -p=n -break}p=n}if(o-g<20)for(m=g;m32)if(s){s=A.O(k) -h.a+=s}else{l.b=77 -l.c=c -return""}l.b=j -l.c=i -s=h.a -return s.charCodeAt(0)==0?s:s}} -A.dp.prototype={ -$2(a,b){var s,r -if(typeof b=="string")this.a.set(a,b) -else if(b==null)this.a.set(a,"") -else for(s=J.aD(b),r=this.a;s.m();){b=s.gn() -if(typeof b=="string")r.append(a,b) -else if(b==null)r.append(a,"") -else A.fn(b)}}, -$S:7} -A.cX.prototype={ -h(a){return this.av()}} -A.l.prototype={ -gJ(){return A.hD(this)}} -A.bp.prototype={ -h(a){var s=this.a -if(s!=null)return"Assertion failed: "+A.cn(s) -return"Assertion failed"}} -A.P.prototype={} -A.G.prototype={ -ga7(){return"Invalid argument"+(!this.a?"(s)":"")}, -ga6(){return""}, -h(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+p,n=s.ga7()+q+o -if(!s.a)return n -return n+s.ga6()+": "+A.cn(s.gai())}, -gai(){return this.b}} -A.aZ.prototype={ -gai(){return this.b}, -ga7(){return"RangeError"}, -ga6(){var s,r=this.e,q=this.f -if(r==null)s=q!=null?": Not less than or equal to "+A.i(q):"" -else if(q==null)s=": Not greater than or equal to "+A.i(r) -else if(q>r)s=": Not in inclusive range "+A.i(r)+".."+A.i(q) -else s=qe.length -else s=!1 -if(s)f=null -if(f==null){if(e.length>78)e=B.a.i(e,0,75)+"..." -return g+"\n"+e}for(r=1,q=0,p=!1,o=0;o1?g+(" (at line "+r+", character "+(f-q+1)+")\n"):g+(" (at character "+(f+1)+")\n") -m=e.length -for(o=f;o78){k="..." -if(f-q<75){j=q+75 -i=q}else{if(m-f<75){i=m-75 -j=m -k=""}else{i=f-36 -j=f+36}l="..."}}else{j=m -i=q -k=""}return g+l+B.a.i(e,i,j)+k+"\n"+B.a.b2(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.i(f)+")"):g}} -A.r.prototype={ -W(a,b){return A.hc(this,A.S(this).j("r.E"),b)}, -gl(a){var s,r=this.gv(this) -for(s=0;r.m();)++s -return s}, -D(a,b){var s,r -A.e5(b,"index") -s=this.gv(this) -for(r=b;s.m();){if(r===0)return s.gn();--r}throw A.b(A.e_(b,b-r,this,"index"))}, -h(a){return A.ht(this,"(",")")}} -A.t.prototype={ -gp(a){return A.j.prototype.gp.call(this,0)}, -h(a){return"null"}} -A.j.prototype={$ij:1, -E(a,b){return this===b}, -gp(a){return A.bQ(this)}, -h(a){return"Instance of '"+A.cD(this)+"'"}, -gq(a){return A.jq(this)}, -toString(){return this.h(this)}} -A.cb.prototype={ -h(a){return""}, -$iZ:1} -A.A.prototype={ -gl(a){return this.a.length}, -h(a){var s=this.a -return s.charCodeAt(0)==0?s:s}} -A.cO.prototype={ -$2(a,b){var s,r,q,p=B.a.aP(b,"=") -if(p===-1){if(b!=="")a.A(0,A.eh(b,0,b.length,this.a,!0),"")}else if(p!==0){s=B.a.i(b,0,p) -r=B.a.K(b,p+1) -q=this.a -a.A(0,A.eh(s,0,s.length,q,!0),A.eh(r,0,r.length,q,!0))}return a}, -$S:17} -A.cL.prototype={ -$2(a,b){throw A.b(A.y("Illegal IPv4 address, "+a,this.a,b))}, -$S:18} -A.cM.prototype={ -$2(a,b){throw A.b(A.y("Illegal IPv6 address, "+a,this.a,b))}, -$S:19} -A.cN.prototype={ -$2(a,b){var s -if(b-a>4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) -s=A.dR(B.a.i(this.b,a,b),16) -if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) -return s}, -$S:20} -A.bh.prototype={ -gV(){var s,r,q,p,o=this,n=o.w -if(n===$){s=o.a -r=s.length!==0?""+s+":":"" -q=o.c -p=q==null -if(!p||s==="file"){s=r+"//" -r=o.b -if(r.length!==0)s=s+r+"@" -if(!p)s+=q -r=o.d -if(r!=null)s=s+":"+A.i(r)}else s=r -s+=o.e -r=o.f -if(r!=null)s=s+"?"+r -r=o.r -if(r!=null)s=s+"#"+r -n!==$&&A.bn() -n=o.w=s.charCodeAt(0)==0?s:s}return n}, -gp(a){var s,r=this,q=r.y -if(q===$){s=B.a.gp(r.gV()) -r.y!==$&&A.bn() -r.y=s -q=s}return q}, -gal(){var s,r=this,q=r.z -if(q===$){s=r.f -s=A.f1(s==null?"":s) -r.z!==$&&A.bn() -q=r.z=new A.ar(s,t.h)}return q}, -gb_(){return this.b}, -gag(){var s=this.c -if(s==null)return"" -if(B.a.t(s,"["))return B.a.i(s,1,s.length-1) -return s}, -ga_(){var s=this.d -return s==null?A.fd(this.a):s}, -gak(){var s=this.f -return s==null?"":s}, -gaJ(){var s=this.r -return s==null?"":s}, -am(a){var s,r,q,p,o=this,n=o.a,m=n==="file",l=o.b,k=o.d,j=o.c -if(!(j!=null))j=l.length!==0||k!=null||m?"":null -s=o.e -if(!m)r=j!=null&&s.length!==0 -else r=!0 -if(r&&!B.a.t(s,"/"))s="/"+s -q=s -p=A.ef(null,0,0,a) -return A.ed(n,l,j,k,q,p,o.r)}, -gaS(){if(this.a!==""){var s=this.r -s=(s==null?"":s)===""}else s=!1 -return s}, -gaL(){return this.c!=null}, -gaO(){return this.f!=null}, -gaM(){return this.r!=null}, -h(a){return this.gV()}, -E(a,b){var s,r,q,p=this -if(b==null)return!1 -if(p===b)return!0 -s=!1 -if(t.R.b(b))if(p.a===b.ga1())if(p.c!=null===b.gaL())if(p.b===b.gb_())if(p.gag()===b.gag())if(p.ga_()===b.ga_())if(p.e===b.gaV()){r=p.f -q=r==null -if(!q===b.gaO()){if(q)r="" -if(r===b.gak()){r=p.r -q=r==null -if(!q===b.gaM()){s=q?"":r -s=s===b.gaJ()}}}}return s}, -$ibW:1, -ga1(){return this.a}, -gaV(){return this.e}} -A.dn.prototype={ -$2(a,b){var s=this.b,r=this.a -s.a+=r.a -r.a="&" -r=A.fj(1,a,B.e,!0) -r=s.a+=r -if(b!=null&&b.length!==0){s.a=r+"=" -r=A.fj(1,b,B.e,!0) -s.a+=r}}, -$S:21} -A.dm.prototype={ -$2(a,b){var s,r -if(b==null||typeof b=="string")this.a.$2(a,b) -else for(s=J.aD(b),r=this.a;s.m();)r.$2(a,s.gn())}, -$S:7} -A.cK.prototype={ -gaZ(){var s,r,q,p,o=this,n=null,m=o.c -if(m==null){m=o.a -s=o.b[0]+1 -r=B.a.Y(m,"?",s) -q=m.length -if(r>=0){p=A.bi(m,r+1,q,256,!1,!1) -q=r}else p=n -m=o.c=new A.c0("data","",n,n,A.bi(m,s,q,128,!1,!1),p,n)}return m}, -h(a){var s=this.a -return this.b[0]===-1?"data:"+s:s}} -A.c9.prototype={ -gaL(){return this.c>0}, -gaN(){return this.c>0&&this.d+10&&this.r>=this.a.length}, -ga1(){var s=this.w -return s==null?this.w=this.bc():s}, -bc(){var s,r=this,q=r.b -if(q<=0)return"" -s=q===4 -if(s&&B.a.t(r.a,"http"))return"http" -if(q===5&&B.a.t(r.a,"https"))return"https" -if(s&&B.a.t(r.a,"file"))return"file" -if(q===7&&B.a.t(r.a,"package"))return"package" -return B.a.i(r.a,0,q)}, -gb_(){var s=this.c,r=this.b+3 -return s>r?B.a.i(this.a,r,s-1):""}, -gag(){var s=this.c -return s>0?B.a.i(this.a,s,this.d):""}, -ga_(){var s,r=this -if(r.gaN())return A.dR(B.a.i(r.a,r.d+1,r.e),null) -s=r.b -if(s===4&&B.a.t(r.a,"http"))return 80 -if(s===5&&B.a.t(r.a,"https"))return 443 -return 0}, -gaV(){return B.a.i(this.a,this.e,this.f)}, -gak(){var s=this.f,r=this.r -return s=this.r)return B.a_ -return new A.ar(A.f1(this.gak()),t.h)}, -am(a){var s,r,q,p,o,n=this,m=null,l=n.ga1(),k=l==="file",j=n.c,i=j>0?B.a.i(n.a,n.b+3,j):"",h=n.gaN()?n.ga_():m -j=n.c -if(j>0)s=B.a.i(n.a,j,n.d) -else s=i.length!==0||h!=null||k?"":m -j=n.a -r=B.a.i(j,n.e,n.f) -if(!k)q=s!=null&&r.length!==0 -else q=!0 -if(q&&!B.a.t(r,"/"))r="/"+r -p=A.ef(m,0,0,a) -q=n.r -o=q1,n="dart:"+s,m=0;m") -n=A.eN(new A.ab(o,A.jF(),n),n.j("I.E")) -m=new A.cq(n) -n=v.G -l=A.bX(J.ak(n.window.location),0,null).gal().k(0,"search") -if(l!=null){k=A.hs(m.aI(l)) -j=k==null?null:k.e -if(j!=null){n.window.location.assign($.bo()+j) -s=1 -break}}n=p.b -if(n!=null)A.ea(m).ah(n) -n=p.c -if(n!=null)A.ea(m).ah(n) -n=p.d -if(n!=null)A.ea(m).ah(n) -case 1:return A.fq(q,r)}}) -return A.fr($async$$1,r)}, -$S:8} -A.dc.prototype={ -gG(){var s,r=this,q=r.c -if(q===$){s=v.G.document.createElement("div") -s.setAttribute("role","listbox") -s.setAttribute("aria-expanded","false") -s.style.display="none" -s.classList.add("tt-menu") -s.appendChild(r.gaU()) -s.appendChild(r.gR()) -r.c!==$&&A.bn() -r.c=s -q=s}return q}, -gaU(){var s,r=this.d -if(r===$){s=v.G.document.createElement("div") -s.classList.add("enter-search-message") -this.d!==$&&A.bn() -this.d=s -r=s}return r}, -gR(){var s,r=this.e -if(r===$){s=v.G.document.createElement("div") -s.classList.add("tt-search-results") -this.e!==$&&A.bn() -this.e=s -r=s}return r}, -ah(a){var s,r,q,p=this -a.disabled=!1 -a.setAttribute("placeholder","Search API Docs") -s=v.G -s.document.addEventListener("keydown",A.a4(new A.dd(a))) -r=s.document.createElement("div") -r.classList.add("tt-wrapper") -a.replaceWith(r) -a.setAttribute("autocomplete","off") -a.setAttribute("spellcheck","false") -a.classList.add("tt-input") -r.appendChild(a) -r.appendChild(p.gG()) -p.b3(a) -if(J.h8(s.window.location.href,"search.html")){q=p.b.gal().k(0,"q") -if(q==null)return -q=B.j.H(q) -$.er=$.dG -p.bB(q,!0) -p.b4(q) -p.af() -$.er=10}}, -b4(a){var s,r,q,p=v.G,o=p.document.getElementById("dartdoc-main-content") -if(o==null)return -o.textContent="" -s=p.document.createElement("section") -s.classList.add("search-summary") -o.appendChild(s) -s=p.document.createElement("h2") -s.innerHTML="Search Results" -o.appendChild(s) -s=p.document.createElement("div") -s.classList.add("search-summary") -s.innerHTML=""+$.dG+' results for "'+a+'"' -o.appendChild(s) -if($.a3.a!==0)for(p=new A.aR($.a3,$.a3.r,$.a3.e);p.m();)o.appendChild(p.d) -else{s=p.document.createElement("div") -s.classList.add("search-summary") -s.innerHTML='There was not a match for "'+a+'". Want to try searching from additional Dart-related sites? ' -r=A.bX("https://dart.dev/search?cx=011220921317074318178%3A_yy-tmb5t_i&ie=UTF-8&hl=en&q=",0,null).am(A.eM(["q",a],t.N,t.z)) -q=p.document.createElement("a") -q.setAttribute("href",r.gV()) -q.textContent="Search on dart.dev." -s.appendChild(q) -o.appendChild(s)}}, -af(){var s=this.gG() -s.style.display="none" -s.setAttribute("aria-expanded","false") -return s}, -aY(a,b,c){var s,r,q,p,o=this -o.x=A.k([],t.M) -s=o.w -B.b.X(s) -$.a3.X(0) -o.gR().textContent="" -r=b.length -if(r===0){o.af() -return}for(q=0;q")):s);r.m();){p=r.gn() -o.gR().appendChild(p)}o.x=b -o.y=-1 -if(o.gR().hasChildNodes()){r=o.gG() -r.style.display="block" -r.setAttribute("aria-expanded","true")}r=$.dG -r=r>10?'Press "Enter" key to see all '+r+" results":"" -o.gaU().textContent=r}, -bM(a,b){return this.aY(a,b,!1)}, -ae(a,b,c){var s,r,q,p=this -if(p.r===a&&!b)return -if(a.length===0){p.bM("",A.k([],t.M)) -return}s=p.a.aI(a) -r=s.length -$.dG=r -q=$.er -if(r>q)s=B.b.b6(s,0,q) -p.r=a -p.aY(a,s,c)}, -bB(a,b){return this.ae(a,!1,b)}, -aK(a){return this.ae(a,!1,!1)}, -bA(a,b){return this.ae(a,b,!1)}, -aF(a){var s,r=this -r.y=-1 -s=r.f -if(s!=null){a.value=s -r.f=null}r.af()}, -b3(a){var s=this -a.addEventListener("focus",A.a4(new A.de(s,a))) -a.addEventListener("blur",A.a4(new A.df(s,a))) -a.addEventListener("input",A.a4(new A.dg(s,a))) -a.addEventListener("keydown",A.a4(new A.dh(s,a)))}} -A.dd.prototype={ -$1(a){var s -if(!J.F(a.key,"/"))return -s=v.G.document.activeElement -if(s==null||!B.a2.N(0,s.nodeName.toLowerCase())){a.preventDefault() -this.a.focus()}}, -$S:1} -A.de.prototype={ -$1(a){this.a.bA(this.b.value,!0)}, -$S:1} -A.df.prototype={ -$1(a){this.a.aF(this.b)}, -$S:1} -A.dg.prototype={ -$1(a){this.a.aK(this.b.value)}, -$S:1} -A.dh.prototype={ -$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this -if(!J.F(a.type,"keydown"))return -if(J.F(a.code,"Enter")){a.preventDefault() -s=e.a -r=s.y -if(r!==-1){q=s.w[r].getAttribute("data-href") -if(q!=null)v.G.window.location.assign($.bo()+q) -return}else{p=B.j.H(s.r) -o=A.bX($.bo()+"search.html",0,null).am(A.eM(["q",p],t.N,t.z)) -v.G.window.location.assign(o.gV()) -return}}s=e.a -r=s.w -n=r.length-1 -m=s.y -if(J.F(a.code,"ArrowUp")){l=s.y -if(l===-1)s.y=n -else s.y=l-1}else if(J.F(a.code,"ArrowDown")){l=s.y -if(l===n)s.y=-1 -else s.y=l+1}else if(J.F(a.code,"Escape"))s.aF(e.b) -else{if(s.f!=null){s.f=null -s.aK(e.b.value)}return}l=m!==-1 -if(l)r[m].classList.remove("tt-cursor") -k=s.y -if(k!==-1){j=r[k] -j.classList.add("tt-cursor") -r=s.y -if(r===0)s.gG().scrollTop=0 -else if(r===n)s.gG().scrollTop=s.gG().scrollHeight -else{i=j.offsetTop -h=s.gG().offsetHeight -if(i"+A.i(a.k(0,0))+""}, -$S:26} -A.dD.prototype={ -$1(a){var s=this.a -if(s!=null)s.classList.toggle("active") -s=this.b -if(s!=null)s.classList.toggle("active")}, -$S:1} -A.dE.prototype={ -$1(a){return this.b0(a)}, -b0(a){var s=0,r=A.fy(t.P),q,p=this,o,n -var $async$$1=A.fF(function(b,c){if(b===1)return A.fp(c,r) -while(true)switch(s){case 0:if(!J.F(a.status,200)){o=v.G.document.createElement("a") -o.href="https://dart.dev/tools/dart-doc#troubleshoot" -o.text="Failed to load sidebar. Visit dart.dev for help troubleshooting." -p.a.appendChild(o) -s=1 -break}s=3 -return A.fo(A.dU(a.text(),t.N),$async$$1) -case 3:n=c -o=v.G.document.createElement("div") -o.innerHTML=n -A.fE(p.b,o) -p.a.appendChild(o) -case 1:return A.fq(q,r)}}) -return A.fr($async$$1,r)}, -$S:8} -A.dQ.prototype={ -$1(a){var s=this.a,r=v.G -if(a){s.classList.remove("light-theme") -s.classList.add("dark-theme") -r.window.localStorage.setItem("colorTheme","true")}else{s.classList.remove("dark-theme") -s.classList.add("light-theme") -r.window.localStorage.setItem("colorTheme","false")}}, -$S:27} -A.dN.prototype={ -$1(a){this.b.$1(!this.a.classList.contains("dark-theme"))}, -$S:1};(function aliases(){var s=J.Y.prototype -s.b7=s.h})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._static_0 -s(J,"iR","hy",28) -r(A,"jg","hQ",3) -r(A,"jh","hR",3) -r(A,"ji","hS",3) -q(A,"fH","ja",0) -r(A,"jF","hn",29)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany -r(A.j,null) -q(A.j,[A.e1,J.by,J.V,A.r,A.br,A.l,A.e,A.cE,A.am,A.aK,A.bV,A.b9,A.aF,A.c5,A.ao,A.cH,A.cC,A.aJ,A.ba,A.a7,A.N,A.cy,A.bD,A.aR,A.cu,A.c6,A.cS,A.J,A.c2,A.dk,A.di,A.bY,A.H,A.c_,A.as,A.v,A.bZ,A.ca,A.dv,A.cc,A.aT,A.bt,A.bv,A.cp,A.dt,A.dq,A.cX,A.bO,A.b_,A.cY,A.bw,A.t,A.cb,A.A,A.bh,A.cK,A.c9,A.cB,A.cq,A.w,A.cl,A.dc]) -q(J.by,[J.bz,J.aM,J.aP,J.aO,J.aQ,J.aN,J.a8]) -q(J.aP,[J.Y,J.o,A.bE,A.aW]) -q(J.Y,[J.bP,J.ap,J.X]) -r(J.cv,J.o) -q(J.aN,[J.aL,J.bA]) -q(A.r,[A.a0,A.c]) -q(A.a0,[A.a6,A.bj]) -r(A.b4,A.a6) -r(A.b3,A.bj) -r(A.M,A.b3) -q(A.l,[A.bC,A.P,A.bB,A.bU,A.bS,A.c1,A.bp,A.G,A.b1,A.bT,A.b0,A.bu]) -r(A.aq,A.e) -r(A.bs,A.aq) -q(A.c,[A.I,A.aa,A.aS]) -q(A.I,[A.ab,A.c4]) -r(A.c7,A.b9) -r(A.c8,A.c7) -r(A.aH,A.aF) -r(A.aG,A.ao) -r(A.aI,A.aG) -r(A.aY,A.P) -q(A.a7,[A.cj,A.ck,A.cG,A.dK,A.dM,A.cU,A.cT,A.dw,A.d6,A.dV,A.dW,A.ct,A.cs,A.dO,A.dd,A.de,A.df,A.dg,A.dh,A.dz,A.dA,A.dB,A.dD,A.dE,A.dQ,A.dN]) -q(A.cG,[A.cF,A.aE]) -q(A.N,[A.a9,A.c3]) -q(A.ck,[A.dL,A.dx,A.dH,A.d7,A.cz,A.dp,A.cO,A.cL,A.cM,A.cN,A.dn,A.dm,A.cr]) -q(A.aW,[A.bF,A.an]) -q(A.an,[A.b5,A.b7]) -r(A.b6,A.b5) -r(A.aU,A.b6) -r(A.b8,A.b7) -r(A.aV,A.b8) -q(A.aU,[A.bG,A.bH]) -q(A.aV,[A.bI,A.bJ,A.bK,A.bL,A.bM,A.aX,A.bN]) -r(A.bb,A.c1) -q(A.cj,[A.cV,A.cW,A.dj,A.cZ,A.d2,A.d1,A.d0,A.d_,A.d5,A.d4,A.d3,A.dF,A.db,A.ds,A.dr,A.dC,A.dP]) -r(A.b2,A.c_) -r(A.da,A.dv) -r(A.bg,A.aT) -r(A.ar,A.bg) -q(A.bt,[A.ch,A.cm,A.cw]) -q(A.bv,[A.ci,A.co,A.cx,A.cR,A.cQ]) -r(A.cP,A.cm) -q(A.G,[A.aZ,A.bx]) -r(A.c0,A.bh) -q(A.cX,[A.m,A.B]) -s(A.aq,A.bV) -s(A.bj,A.e) -s(A.b5,A.e) -s(A.b6,A.aK) -s(A.b7,A.e) -s(A.b8,A.aK) -s(A.bg,A.cc)})() -var v={G:typeof self!="undefined"?self:globalThis,typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{a:"int",q:"double",fL:"num",d:"String",bm:"bool",t:"Null",f:"List",j:"Object",z:"Map"},mangledNames:{},types:["~()","t(n)","~(@)","~(~())","t(@)","t()","@()","~(d,@)","W(n)","@(@)","@(@,d)","@(d)","t(~())","t(@,Z)","~(a,@)","t(j,Z)","~(j?,j?)","z(z,d)","~(d,a)","~(d,a?)","a(a,a)","~(d,d?)","~(B)","a(+item,matchPosition(w,B),+item,matchPosition(w,B))","w(+item,matchPosition(w,B))","d()","d(cA)","~(bm)","a(@,@)","w(z)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;item,matchPosition":(a,b)=>c=>c instanceof A.c8&&a.b(c.a)&&b.b(c.b)}} -A.i5(v.typeUniverse,JSON.parse('{"bP":"Y","ap":"Y","X":"Y","bz":{"bm":[],"h":[]},"aM":{"t":[],"h":[]},"aP":{"n":[]},"Y":{"n":[]},"o":{"f":["1"],"c":["1"],"n":[]},"cv":{"o":["1"],"f":["1"],"c":["1"],"n":[]},"aN":{"q":[]},"aL":{"q":[],"a":[],"h":[]},"bA":{"q":[],"h":[]},"a8":{"d":[],"h":[]},"a0":{"r":["2"]},"a6":{"a0":["1","2"],"r":["2"],"r.E":"2"},"b4":{"a6":["1","2"],"a0":["1","2"],"c":["2"],"r":["2"],"r.E":"2"},"b3":{"e":["2"],"f":["2"],"a0":["1","2"],"c":["2"],"r":["2"]},"M":{"b3":["1","2"],"e":["2"],"f":["2"],"a0":["1","2"],"c":["2"],"r":["2"],"e.E":"2","r.E":"2"},"bC":{"l":[]},"bs":{"e":["a"],"f":["a"],"c":["a"],"e.E":"a"},"c":{"r":["1"]},"I":{"c":["1"],"r":["1"]},"ab":{"I":["2"],"c":["2"],"r":["2"],"I.E":"2","r.E":"2"},"aq":{"e":["1"],"f":["1"],"c":["1"]},"aF":{"z":["1","2"]},"aH":{"z":["1","2"]},"aG":{"ao":["1"],"c":["1"]},"aI":{"ao":["1"],"c":["1"]},"aY":{"P":[],"l":[]},"bB":{"l":[]},"bU":{"l":[]},"ba":{"Z":[]},"bS":{"l":[]},"a9":{"N":["1","2"],"z":["1","2"],"N.V":"2"},"aa":{"c":["1"],"r":["1"],"r.E":"1"},"aS":{"c":["1"],"r":["1"],"r.E":"1"},"c6":{"e6":[],"cA":[]},"bE":{"n":[],"h":[]},"aW":{"n":[]},"bF":{"n":[],"h":[]},"an":{"C":["1"],"n":[]},"aU":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[]},"aV":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[]},"bG":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[],"h":[],"e.E":"q"},"bH":{"e":["q"],"f":["q"],"C":["q"],"c":["q"],"n":[],"h":[],"e.E":"q"},"bI":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bJ":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bK":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bL":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bM":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"aX":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"bN":{"e":["a"],"f":["a"],"C":["a"],"c":["a"],"n":[],"h":[],"e.E":"a"},"c1":{"l":[]},"bb":{"P":[],"l":[]},"H":{"l":[]},"b2":{"c_":["1"]},"v":{"W":["1"]},"e":{"f":["1"],"c":["1"]},"N":{"z":["1","2"]},"aT":{"z":["1","2"]},"ar":{"z":["1","2"]},"ao":{"c":["1"]},"c3":{"N":["d","@"],"z":["d","@"],"N.V":"@"},"c4":{"I":["d"],"c":["d"],"r":["d"],"I.E":"d","r.E":"d"},"f":{"c":["1"]},"e6":{"cA":[]},"bp":{"l":[]},"P":{"l":[]},"G":{"l":[]},"aZ":{"l":[]},"bx":{"l":[]},"b1":{"l":[]},"bT":{"l":[]},"b0":{"l":[]},"bu":{"l":[]},"bO":{"l":[]},"b_":{"l":[]},"cb":{"Z":[]},"bh":{"bW":[]},"c9":{"bW":[]},"c0":{"bW":[]},"hq":{"f":["a"],"c":["a"]},"hM":{"f":["a"],"c":["a"]},"hL":{"f":["a"],"c":["a"]},"ho":{"f":["a"],"c":["a"]},"hJ":{"f":["a"],"c":["a"]},"hp":{"f":["a"],"c":["a"]},"hK":{"f":["a"],"c":["a"]},"hl":{"f":["q"],"c":["q"]},"hm":{"f":["q"],"c":["q"]}}')) -A.i4(v.typeUniverse,JSON.parse('{"aK":1,"bV":1,"aq":1,"bj":2,"aF":2,"aG":1,"bD":1,"aR":1,"an":1,"ca":1,"cc":2,"aT":2,"bg":2,"bt":2,"bv":2}')) -var u={f:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\u03f6\x00\u0404\u03f4 \u03f4\u03f6\u01f6\u01f6\u03f6\u03fc\u01f4\u03ff\u03ff\u0584\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u05d4\u01f4\x00\u01f4\x00\u0504\u05c4\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0400\x00\u0400\u0200\u03f7\u0200\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0200\u0200\u0200\u03f7\x00",c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type"} -var t=(function rtii(){var s=A.ce -return{U:s("c<@>"),C:s("l"),Z:s("jN"),M:s("o"),O:s("o"),f:s("o"),r:s("o<+item,matchPosition(w,B)>"),s:s("o"),b:s("o<@>"),t:s("o"),T:s("aM"),m:s("n"),g:s("X"),p:s("C<@>"),j:s("f<@>"),a:s("z"),V:s("ab<+item,matchPosition(w,B),w>"),P:s("t"),K:s("j"),L:s("jO"),d:s("+()"),F:s("e6"),l:s("Z"),N:s("d"),k:s("h"),_:s("P"),o:s("ap"),h:s("ar"),R:s("bW"),c:s("v<@>"),y:s("bm"),i:s("q"),z:s("@"),v:s("@(j)"),Q:s("@(j,Z)"),S:s("a"),W:s("W?"),A:s("n?"),X:s("j?"),w:s("d?"),u:s("bm?"),I:s("q?"),x:s("a?"),n:s("fL?"),H:s("fL"),q:s("~")}})();(function constants(){var s=hunkHelpers.makeConstList -B.z=J.by.prototype -B.b=J.o.prototype -B.c=J.aL.prototype -B.a=J.a8.prototype -B.A=J.X.prototype -B.B=J.aP.prototype -B.n=J.bP.prototype -B.i=J.ap.prototype -B.aj=new A.ci() -B.o=new A.ch() -B.ak=new A.cp() -B.j=new A.co() -B.k=function getTagFallback(o) { - var s = Object.prototype.toString.call(o); - return s.substring(8, s.length - 1); -} -B.p=function() { - var toStringFunction = Object.prototype.toString; - function getTag(o) { - var s = toStringFunction.call(o); - return s.substring(8, s.length - 1); - } - function getUnknownTag(object, tag) { - if (/^HTML[A-Z].*Element$/.test(tag)) { - var name = toStringFunction.call(object); - if (name == "[object Object]") return null; - return "HTMLElement"; - } - } - function getUnknownTagGenericBrowser(object, tag) { - if (object instanceof HTMLElement) return "HTMLElement"; - return getUnknownTag(object, tag); - } - function prototypeForTag(tag) { - if (typeof window == "undefined") return null; - if (typeof window[tag] == "undefined") return null; - var constructor = window[tag]; - if (typeof constructor != "function") return null; - return constructor.prototype; - } - function discriminator(tag) { return null; } - var isBrowser = typeof HTMLElement == "function"; - return { - getTag: getTag, - getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, - prototypeForTag: prototypeForTag, - discriminator: discriminator }; -} -B.v=function(getTagFallback) { - return function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; - if (userAgent.indexOf("Chrome") >= 0) { - function confirm(p) { - return typeof window == "object" && window[p] && window[p].name == p; - } - if (confirm("Window") && confirm("HTMLElement")) return hooks; - } - hooks.getTag = getTagFallback; - }; -} -B.q=function(hooks) { - if (typeof dartExperimentalFixupGetTag != "function") return hooks; - hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); -} -B.u=function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("Firefox") == -1) return hooks; - var getTag = hooks.getTag; - var quickMap = { - "BeforeUnloadEvent": "Event", - "DataTransfer": "Clipboard", - "GeoGeolocation": "Geolocation", - "Location": "!Location", - "WorkerMessageEvent": "MessageEvent", - "XMLDocument": "!Document"}; - function getTagFirefox(o) { - var tag = getTag(o); - return quickMap[tag] || tag; - } - hooks.getTag = getTagFirefox; -} -B.t=function(hooks) { - if (typeof navigator != "object") return hooks; - var userAgent = navigator.userAgent; - if (typeof userAgent != "string") return hooks; - if (userAgent.indexOf("Trident/") == -1) return hooks; - var getTag = hooks.getTag; - var quickMap = { - "BeforeUnloadEvent": "Event", - "DataTransfer": "Clipboard", - "HTMLDDElement": "HTMLElement", - "HTMLDTElement": "HTMLElement", - "HTMLPhraseElement": "HTMLElement", - "Position": "Geoposition" - }; - function getTagIE(o) { - var tag = getTag(o); - var newTag = quickMap[tag]; - if (newTag) return newTag; - if (tag == "Object") { - if (window.DataView && (o instanceof window.DataView)) return "DataView"; - } - return tag; - } - function prototypeForTagIE(tag) { - var constructor = window[tag]; - if (constructor == null) return null; - return constructor.prototype; - } - hooks.getTag = getTagIE; - hooks.prototypeForTag = prototypeForTagIE; -} -B.r=function(hooks) { - var getTag = hooks.getTag; - var prototypeForTag = hooks.prototypeForTag; - function getTagFixed(o) { - var tag = getTag(o); - if (tag == "Document") { - if (!!o.xmlVersion) return "!Document"; - return "!HTMLDocument"; - } - return tag; - } - function prototypeForTagFixed(tag) { - if (tag == "Document") return null; - return prototypeForTag(tag); - } - hooks.getTag = getTagFixed; - hooks.prototypeForTag = prototypeForTagFixed; -} -B.l=function(hooks) { return hooks; } - -B.w=new A.cw() -B.x=new A.bO() -B.h=new A.cE() -B.e=new A.cP() -B.y=new A.cR() -B.d=new A.da() -B.f=new A.cb() -B.C=new A.cx(null) -B.D=new A.m(0,"accessor") -B.E=new A.m(1,"constant") -B.P=new A.m(2,"constructor") -B.T=new A.m(3,"class_") -B.U=new A.m(4,"dynamic") -B.V=new A.m(5,"enum_") -B.W=new A.m(6,"extension") -B.X=new A.m(7,"extensionType") -B.Y=new A.m(8,"function") -B.Z=new A.m(9,"library") -B.F=new A.m(10,"method") -B.G=new A.m(11,"mixin") -B.H=new A.m(12,"never") -B.I=new A.m(13,"package") -B.J=new A.m(14,"parameter") -B.K=new A.m(15,"prefix") -B.L=new A.m(16,"property") -B.M=new A.m(17,"sdk") -B.N=new A.m(18,"topic") -B.O=new A.m(19,"topLevelConstant") -B.Q=new A.m(20,"topLevelProperty") -B.R=new A.m(21,"typedef") -B.S=new A.m(22,"typeParameter") -B.m=A.k(s([B.D,B.E,B.P,B.T,B.U,B.V,B.W,B.X,B.Y,B.Z,B.F,B.G,B.H,B.I,B.J,B.K,B.L,B.M,B.N,B.O,B.Q,B.R,B.S]),A.ce("o")) -B.a0={} -B.a_=new A.aH(B.a0,[],A.ce("aH")) -B.a1={input:0,textarea:1} -B.a2=new A.aI(B.a1,2,A.ce("aI")) -B.a3=A.K("jK") -B.a4=A.K("jL") -B.a5=A.K("hl") -B.a6=A.K("hm") -B.a7=A.K("ho") -B.a8=A.K("hp") -B.a9=A.K("hq") -B.aa=A.K("j") -B.ab=A.K("hJ") -B.ac=A.K("hK") -B.ad=A.K("hL") -B.ae=A.K("hM") -B.af=new A.cQ(!1) -B.ag=new A.B(0,"isExactly") -B.ah=new A.B(1,"startsWith") -B.ai=new A.B(2,"contains")})();(function staticFields(){$.d8=null -$.ai=A.k([],t.f) -$.eP=null -$.eH=null -$.eG=null -$.fK=null -$.fG=null -$.fO=null -$.dI=null -$.dS=null -$.ew=null -$.d9=A.k([],A.ce("o?>")) -$.av=null -$.bk=null -$.bl=null -$.eo=!1 -$.p=B.d -$.er=10 -$.dG=0 -$.a3=A.e3(t.N,t.m)})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal -s($,"jM","eA",()=>A.jp("_$dart_dartClosure")) -s($,"jQ","fQ",()=>A.Q(A.cI({ -toString:function(){return"$receiver$"}}))) -s($,"jR","fR",()=>A.Q(A.cI({$method$:null, -toString:function(){return"$receiver$"}}))) -s($,"jS","fS",()=>A.Q(A.cI(null))) -s($,"jT","fT",()=>A.Q(function(){var $argumentsExpr$="$arguments$" -try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"jW","fW",()=>A.Q(A.cI(void 0))) -s($,"jX","fX",()=>A.Q(function(){var $argumentsExpr$="$arguments$" -try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"jV","fV",()=>A.Q(A.eY(null))) -s($,"jU","fU",()=>A.Q(function(){try{null.$method$}catch(r){return r.message}}())) -s($,"jZ","fZ",()=>A.Q(A.eY(void 0))) -s($,"jY","fY",()=>A.Q(function(){try{(void 0).$method$}catch(r){return r.message}}())) -s($,"k_","eB",()=>A.hP()) -s($,"k5","h4",()=>A.hB(4096)) -s($,"k3","h2",()=>new A.ds().$0()) -s($,"k4","h3",()=>new A.dr().$0()) -s($,"k0","h_",()=>A.hA(A.iF(A.k([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) -s($,"k1","h0",()=>A.eT("^[\\-\\.0-9A-Z_a-z~]*$",!0)) -s($,"k2","h1",()=>typeof URLSearchParams=="function") -s($,"k6","dY",()=>A.fM(B.aa)) -s($,"k7","bo",()=>new A.dC().$0())})();(function nativeSupport(){!function(){var s=function(a){var m={} -m[a]=1 -return Object.keys(hunkHelpers.convertToFastObject(m))[0]} -v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} -var r="___dart_isolate_tags_" -var q=Object[r]||(Object[r]=Object.create(null)) -var p="_ZxYxX" -for(var o=0;;o++){var n=s(p+"_"+o+"_") -if(!(n in q)){q[n]=1 -v.isolateTag=n -break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() -hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.bE,ArrayBufferView:A.aW,DataView:A.bF,Float32Array:A.bG,Float64Array:A.bH,Int16Array:A.bI,Int32Array:A.bJ,Int8Array:A.bK,Uint16Array:A.bL,Uint32Array:A.bM,Uint8ClampedArray:A.aX,CanvasPixelArray:A.aX,Uint8Array:A.bN}) -hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) -A.an.$nativeSuperclassTag="ArrayBufferView" -A.b5.$nativeSuperclassTag="ArrayBufferView" -A.b6.$nativeSuperclassTag="ArrayBufferView" -A.aU.$nativeSuperclassTag="ArrayBufferView" -A.b7.$nativeSuperclassTag="ArrayBufferView" -A.b8.$nativeSuperclassTag="ArrayBufferView" -A.aV.$nativeSuperclassTag="ArrayBufferView"})() -Function.prototype.$1=function(a){return this(a)} -Function.prototype.$0=function(){return this()} -Function.prototype.$2=function(a,b){return this(a,b)} -Function.prototype.$1$1=function(a){return this(a)} -Function.prototype.$3=function(a,b,c){return this(a,b,c)} -Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} -Function.prototype.$1$0=function(){return this()} -convertAllToFastObject(w) -convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) -return}if(typeof document.currentScript!="undefined"){a(document.currentScript) -return}var s=document.scripts -function onLoad(b){for(var q=0;q","_Record.toString","_Record._toString","StringBuffer._writeString","_Record._fieldKeys","_Record._computeFieldKeys","JSArray.allocateGrowable","_Record2._getFieldValues","_Record2.==","_Record._sameShape","_Record2.hashCode","JSSyntaxRegExp.toString","JSSyntaxRegExp._nativeGlobalVersion","JSSyntaxRegExp._execGlobal","_MatchImplementation.end","_MatchImplementation.[]","_AllMatchesIterator.current","_AllMatchesIterator.moveNext","JSSyntaxRegExp.isUnicode","NativeByteBuffer.runtimeType","NativeByteData.runtimeType","NativeTypedArray.length","NativeTypedArrayOfDouble.[]","NativeFloat32List.runtimeType","NativeFloat64List.runtimeType","NativeInt16List.runtimeType","NativeInt16List.[]","NativeInt32List.runtimeType","NativeInt32List.[]","NativeInt8List.runtimeType","NativeInt8List.[]","NativeUint16List.runtimeType","NativeUint16List.[]","NativeUint32List.runtimeType","NativeUint32List.[]","NativeUint8ClampedList.runtimeType","NativeUint8ClampedList.length","NativeUint8ClampedList.[]","NativeUint8List.runtimeType","NativeUint8List.length","NativeUint8List.[]","Rti._eval","Rti._bind","_Type.toString","_Error.toString","_AsyncRun._initializeScheduleImmediate.internalCallback","_AsyncRun._initializeScheduleImmediate.","_AsyncRun._scheduleImmediateJsOverride.internalCallback","_AsyncRun._scheduleImmediateWithSetImmediate.internalCallback","_TimerImpl.internalCallback","_AsyncAwaitCompleter.complete","_AsyncAwaitCompleter.completeError","_Future._completeError","_awaitOnObject.","_wrapJsFunctionForAsync.","AsyncError.toString","_Completer.completeError","_Completer.completeError[function-entry$1]","_AsyncCompleter.complete","_FutureListener.matchesErrorTest","_FutureListener.handleError","_Future.then","_Future.then[function-entry$1]","_Future._thenAwait","_Future._setErrorObject","_Future._cloneResult","_Future._addListener","_Future._prependListeners","_Future._removeListeners","_Future._reverseListeners","_Future._completeWithValue","_Future._completeWithResultOf","_Future._completeErrorObject","_Future._asyncComplete","_Future._asyncCompleteWithValue","_Future._chainFuture","_Future._asyncCompleteErrorObject","_Future._addListener.","_Future._prependListeners.","_Future._chainCoreFuture.","_Future._asyncCompleteWithValue.","_Future._asyncCompleteErrorObject.","_Future._propagateToListeners.handleWhenCompleteCallback","_FutureListener.handleWhenComplete","_Future._newFutureWithSameType","_Future._propagateToListeners.handleWhenCompleteCallback.","_Future._propagateToListeners.handleValueCallback","_FutureListener.handleValue","_Future._propagateToListeners.handleError","_FutureListener.hasErrorCallback","_rootHandleError.","_RootZone.runGuarded","_RootZone.bindCallbackGuarded","_RootZone.run","_RootZone.run[function-entry$1]","_RootZone.runUnary","_RootZone.runUnary[function-entry$2]","_RootZone.runBinary","_RootZone.runBinary[function-entry$3]","_RootZone.registerBinaryCallback","_RootZone.registerBinaryCallback[function-entry$1]","_RootZone.bindCallbackGuarded.","ListBase.iterator","ListBase.elementAt","ListBase.cast","ListBase.toString","MapBase.forEach","MapBase.length","MapBase.toString","MapBase.mapToString.","_UnmodifiableMapMixin.[]=","MapView.[]","MapView.[]=","MapView.length","MapView.toString","SetBase.toString","SetBase.elementAt","_JsonMap.[]","_JsonMap.length","_JsonMap.keys","_JsonMap.[]=","_JsonMap.containsKey","_JsonMap.forEach","_JsonMap._computeKeys","_JsonMap._upgrade","_JsonMap._process","_JsonMapKeyIterable.length","_JsonMapKeyIterable.elementAt","_JsonMapKeyIterable.iterator","_Utf8Decoder._decoder.","_Utf8Decoder._decoderNonfatal.","Base64Codec.normalize","HtmlEscapeMode.toString","HtmlEscape.convert","HtmlEscape._convert","JsonCodec.decode","JsonCodec.decoder","Utf8Encoder.convert","NativeUint8List.sublist","_Utf8Encoder._writeReplacementCharacter","_Utf8Encoder._writeSurrogate","_Utf8Encoder._fillBuffer","Utf8Decoder.convert","_Utf8Decoder._convertGeneral","_Utf8Decoder._decodeRecursive","_Utf8Decoder.decodeGeneral","_Uri._makeQueryFromParameters.","_Enum.toString","Error.stackTrace","AssertionError.toString","ArgumentError._errorName","ArgumentError._errorExplanation","ArgumentError.toString","RangeError.invalidValue","RangeError._errorName","RangeError._errorExplanation","IndexError.invalidValue","IndexError._errorName","IndexError._errorExplanation","UnsupportedError.toString","UnimplementedError.toString","StateError.toString","ConcurrentModificationError.toString","OutOfMemoryError.toString","OutOfMemoryError.stackTrace","StackOverflowError.toString","StackOverflowError.stackTrace","_Exception.toString","FormatException.toString","Iterable.cast","Iterable.length","Iterable.elementAt","Iterable.toString","Null.hashCode","Null.toString","Object.hashCode","Object.==","Object.toString","Object.runtimeType","_StringStackTrace.toString","StringBuffer.length","StringBuffer.toString","Uri.splitQueryString.","Uri._parseIPv4Address.error","Uri.parseIPv6Address.error","Uri.parseIPv6Address.parseHex","_Uri._text","_Uri._initializeText","_Uri._writeAuthority","_Uri.hashCode","_Uri.queryParameters","_Uri.userInfo","_Uri.host","_Uri.port","_Uri.query","_Uri.fragment","_Uri.replace","_Uri.isAbsolute","_Uri.hasAuthority","_Uri.hasQuery","_Uri.hasFragment","_Uri.toString","_Uri.==","_Uri._makeQueryFromParametersDefault.writeParameter","_Uri._makeQueryFromParametersDefault.","UriData.uri","UriData._computeUri","UriData.toString","_SimpleUri.hasAuthority","_SimpleUri.hasPort","_SimpleUri.hasQuery","_SimpleUri.hasFragment","_SimpleUri.isAbsolute","_SimpleUri.scheme","_SimpleUri._computeScheme","_SimpleUri.userInfo","_SimpleUri.host","_SimpleUri.port","_SimpleUri.path","_SimpleUri.query","_SimpleUri.fragment","_SimpleUri.queryParameters","_SimpleUri.replace","_SimpleUri.hashCode","_SimpleUri.==","_SimpleUri.toString","promiseToFuture.","NullRejectionException.toString","Kind._enumToString","Kind.toString","_MatchPosition._enumToString","Index.find","ListIterable.toList","JSArray.map","Index.find.score","Index.find.","IndexItem._scope","_htmlBase.","init.disableSearch","print","init.","init_closure","Index.fromJson","ListBase.map","_Search.listBox","_Search.moreResults","_Search.searchResults","_Search.initialize","_Search.showSearchResultPage","HTMLElement|constructor#section","HTMLHeadingElement|constructor#h2","JsLinkedHashMap.isNotEmpty","_Search.hideSuggestions","_Search.updateSuggestions","JsLinkedHashMap.values","_Search.showSuggestions","_Search.showEnterMessage","_Search.updateSuggestions[function-entry$2]","_Search.handleSearch","_Search.handleSearch[function-entry$1$isSearchPage]","_Search.handleSearch[function-entry$1]","_Search.handleSearch[function-entry$1$forceUpdate]","_Search.clearSearch","_Search.setEventListeners","_Search.initialize.","ElementExtension.acceptsInput","_Search.setEventListeners.","_createSuggestion.","_highlight.","_initializeToggles.","_loadSidebar.","_loadSidebar_closure","init.switchThemes","DART_CLOSURE_PROPERTY_NAME","TypeErrorDecoder.noSuchMethodPattern","TypeErrorDecoder.notClosurePattern","TypeErrorDecoder.nullCallPattern","TypeErrorDecoder.nullLiteralCallPattern","TypeErrorDecoder.undefinedCallPattern","TypeErrorDecoder.undefinedLiteralCallPattern","TypeErrorDecoder.nullPropertyPattern","TypeErrorDecoder.nullLiteralPropertyPattern","TypeErrorDecoder.undefinedPropertyPattern","TypeErrorDecoder.undefinedLiteralPropertyPattern","_AsyncRun._scheduleImmediateClosure","_Utf8Decoder._reusableBuffer","_Utf8Decoder._decoder","_Utf8Decoder._decoderNonfatal","_Base64Decoder._inverseAlphabet","_Uri._needsNoEncoding","_Uri._useURLSearchParams","_hashSeed","_htmlBase","","$intercepted$$eq$Iu","$intercepted$__$asx","$intercepted$cast10$ax","$intercepted$compareTo1$ns","$intercepted$contains1$asx","$intercepted$elementAt1$ax","$intercepted$get$hashCode$IJavaScriptBigIntJavaScriptSymbolLegacyJavaScriptObjectabnsu","$intercepted$get$iterator$ax","$intercepted$get$length$asx","$intercepted$get$runtimeType$Ibdinsux","$intercepted$toString0$IJavaScriptBigIntJavaScriptFunctionJavaScriptSymbolLegacyJavaScriptObjectabnsux","ArrayIterator","AsyncError","Base64Codec","Base64Encoder","BoundClosure","ByteBuffer","ByteData","CastIterator","CastList","Closure","Closure0Args","Closure2Args","CodeUnits","Codec","ConstantMap","ConstantSet","ConstantStringMap","ConstantStringSet","Converter","EfficientLengthIterable","EnclosedBy","Encoding","Error","ExceptionAndStackTrace","FixedLengthListMixin","Float32List","Float64List","Function","Future","HtmlEscape","HtmlEscapeMode","Index","IndexError","IndexItem","Index_find_closure","Index_find_score","Int16List","Int32List","Int8List","Interceptor","Iterable","IterableExtensions|get#firstOrNull","JSAnyUtilityExtension|instanceOfString","JSArray","JSBool","JSInt","JSNull","JSNumNotInt","JSNumber","JSObject","JSString","JSSyntaxRegExp","JSUnmodifiableArray","JS_CONST","JavaScriptBigInt","JavaScriptFunction","JavaScriptIndexingBehavior","JavaScriptObject","JavaScriptSymbol","JsLinkedHashMap","JsonCodec","JsonDecoder","Kind","LateError","LegacyJavaScriptObject","LinkedHashMapCell","LinkedHashMapKeyIterator","LinkedHashMapKeysIterable","LinkedHashMapValueIterator","LinkedHashMapValuesIterable","List","ListBase","ListIterable","ListIterator","Map","MapBase","MapBase_mapToString_closure","MapView","MappedListIterable","Match","NativeByteBuffer","NativeByteData","NativeFloat32List","NativeFloat64List","NativeInt16List","NativeInt32List","NativeInt8List","NativeTypedArray","NativeTypedArrayOfDouble","NativeTypedArrayOfInt","NativeTypedData","NativeUint16List","NativeUint32List","NativeUint8ClampedList","Null","NullError","NullRejectionException","NullThrownFromJavaScriptException","Object","OutOfMemoryError","PlainJavaScriptObject","RangeError","Record","RegExpMatch","Rti","RuntimeError","SentinelValue","SetBase","StackOverflowError","StackTrace","StaticClosure","String","StringBuffer","TearOffClosure","TrustedGetRuntimeType","TypeError","TypeErrorDecoder","Uint16List","Uint32List","Uint8ClampedList","Uint8List","UnknownJavaScriptObject","UnknownJsTypeError","UnmodifiableListBase","UnmodifiableListMixin","UnmodifiableMapView","Uri","UriData","Uri__parseIPv4Address_error","Uri_parseIPv6Address_error","Uri_parseIPv6Address_parseHex","Uri_splitQueryString_closure","Utf8Codec","Utf8Decoder","Utf8Encoder","_#fromMap#tearOff","_AllMatchesIterator","_AsyncAwaitCompleter","_AsyncCallbackEntry","_AsyncCompleter","_AsyncRun__initializeScheduleImmediate_closure","_AsyncRun__initializeScheduleImmediate_internalCallback","_AsyncRun__scheduleImmediateJsOverride_internalCallback","_AsyncRun__scheduleImmediateWithSetImmediate_internalCallback","_CastIterableBase","_CastListBase","_Completer","_DataUri","_EfficientLengthCastIterable","_Enum","_Error","_Exception","_FunctionParameters","_Future","_FutureListener","_Future__addListener_closure","_Future__asyncCompleteErrorObject_closure","_Future__asyncCompleteWithValue_closure","_Future__chainCoreFuture_closure","_Future__prependListeners_closure","_Future__propagateToListeners_handleError","_Future__propagateToListeners_handleValueCallback","_Future__propagateToListeners_handleWhenCompleteCallback","_Future__propagateToListeners_handleWhenCompleteCallback_closure","_JS_INTEROP_INTERCEPTOR_TAG","_JsonMap","_JsonMapKeyIterable","_KeysOrValuesOrElementsIterator","_MatchImplementation","_MatchPosition","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin&FixedLengthListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin&FixedLengthListMixin","_Record","_Record2","_Record_2_item_matchPosition","_RootZone","_RootZone_bindCallbackGuarded_closure","_Search_initialize_closure","_Search_setEventListeners_closure","_SimpleUri","_StackTrace","_StreamIterator","_StringStackTrace","_TimerImpl_internalCallback","_TypeError","_UnmodifiableMapMixin","_UnmodifiableMapView&MapView&_UnmodifiableMapMixin","_Uri","_Uri__makeQueryFromParametersDefault_closure","_Uri__makeQueryFromParametersDefault_writeParameter","_Uri__makeQueryFromParameters_closure","_Utf8Decoder","_Utf8Decoder__decoderNonfatal_closure","_Utf8Decoder__decoder_closure","_Utf8Encoder","_Zone","__CastListBase&_CastIterableBase&ListMixin","_awaitOnObject_closure","_canonicalRecipeJoin","_canonicalRecipeJoinNamed","_canonicalizeScheme","_chainCoreFuture","_checkPadding","_checkZoneID","_compareAny","_computeFieldNamed","_computeSignatureFunction","_computedFieldKeys","_containerMap","_convertInterceptedUint8List","_create1","_createFutureOrRti","_createGenericFunctionRti","_createQuestionRti","_createSuggestion_closure","_current","_decoder","_decoderNonfatal","_defaultPort","_empty","_escapeChar","_escapeScheme","_fail","_getCanonicalRecipe","_getFutureFromFutureOr","_hexCharPairToByte","_highlight_closure","_htmlBase_closure","_identityHashCodeProperty","_initializeScheduleImmediate","_initializeToggles_closure","_installTypeTests","_interceptorFieldNameCache","_interceptors_JSArray__compareAny$closure","_internal","_inverseAlphabet","_isAlphabeticCharacter","_isInCallbackLoop","_isUnionOfFunctionType","_lastCallback","_lastPriorityCallback","_literal","_lookupBindingRti","_lookupFunctionRti","_lookupFutureOrRti","_lookupGenericFunctionParameterRti","_lookupGenericFunctionRti","_lookupInterfaceRti","_lookupQuestionRti","_lookupRecordRti","_lookupTerminalRti","_makeFragment","_makeHost","_makeNativeUint8List","_makePath","_makePort","_makeQuery","_makeQueryFromParameters","_makeQueryFromParametersDefault","_makeScheme","_makeUserInfo","_mayContainDotSegments","_needsNoEncoding","_nextCallback","_normalize","_normalizeEscape","_normalizeOrSubstring","_normalizePath","_normalizeRegName","_normalizeRelativePath","_normalizeZoneID","_of","_parse","_parseIPv4Address","_propagateToListeners","_receiverFieldNameCache","_removeDotSegments","_reusableBuffer","_rootHandleError_closure","_scheduleImmediateClosure","_scheduleImmediateJsOverride","_scheduleImmediateWithSetImmediate","_scheduleImmediateWithTimer","_stringFromUint8List","_suggestionLength","_suggestionLimit","_throw","_throwUnmodifiable","_uriDecode","_uriEncode","_useTextDecoder","_useURLSearchParams","_wrapJsFunctionForAsync_closure","_writeAll","addErasedTypes","addRules","alternateTagFunction","async__AsyncRun__scheduleImmediateJsOverride$closure","async__AsyncRun__scheduleImmediateWithSetImmediate$closure","async__AsyncRun__scheduleImmediateWithTimer$closure","async___startMicrotaskLoop$closure","bind","bool","checkNotNegative","checkValidRange","collectArray","combine","compose","create","cspForwardCall","cspForwardInterceptedCall","current","defaultStackTrace","dispatchRecordsForInstanceTags","double","errorDescription","eval","evalInEnvironment","evalRecipe","extractPattern","extractStackTrace","fieldADI","filled","findErasedType","findRule","finish","fixed","forType","forwardCallTo","forwardInterceptedCallTo","from","fromCharCodes","fromTearOff","getInterceptor$","getInterceptor$asx","getInterceptor$ax","getInterceptor$ns","getTagFunction","growable","handleArguments","handleDigit","handleExtendedOperations","handleIdentifier","handleTypeArguments","hash","indexToType","initHooks_closure","initNativeDispatchFlag","init_disableSearch","init_switchThemes","int","interceptorOf","interceptorsForUncacheableTags","iterableToFullString","iterableToShortString","makeNative","mapToString","markFixed","newArrayOrEmpty","noElement","noSuchMethodPattern","notClosurePattern","nullCallPattern","nullLiteralCallPattern","nullLiteralPropertyPattern","nullPropertyPattern","num","objectAssign","objectTypeName","parse","parseIPv6Address","parseInt","promiseToFuture_closure","prototypeForTagFunction","provokeCallErrorOn","provokePropertyErrorOn","range","receiverOf","safeToString","search_IndexItem___fromMap_tearOff$closure","splitQueryString","stringFromCharCode","stringFromNativeUint8List","throwWithStackTrace","toStringVisiting","toType","toTypes","toTypesNamed","tryParse","trySetStackTrace","undefinedCallPattern","undefinedLiteralCallPattern","undefinedLiteralPropertyPattern","undefinedPropertyPattern","value","withLength","$eq","$index","$indexSet","$mod","$mul","bindCallbackGuarded","call","cast","clear","clearSearch","compareTo","complete","completeError","contains","containsKey","convert","dart:_interceptors#_replaceSomeNullsWithUndefined","dart:_interceptors#_shrBothPositive","dart:_interceptors#_shrOtherPositive","dart:_interceptors#_shrReceiverPositive","dart:_interceptors#_tdivFast","dart:_interceptors#_tdivSlow","dart:_internal#_source","dart:_js_helper#_addHashTableEntry","dart:_js_helper#_computeFieldKeys","dart:_js_helper#_execGlobal","dart:_js_helper#_fieldKeys","dart:_js_helper#_getFieldValues","dart:_js_helper#_keys","dart:_js_helper#_modified","dart:_js_helper#_nativeGlobalVersion","dart:_js_helper#_newHashTable","dart:_js_helper#_newLinkedCell","dart:_js_helper#_toString","dart:_rti#_bind","dart:_rti#_eval","dart:async#_addListener","dart:async#_asyncComplete","dart:async#_asyncCompleteErrorObject","dart:async#_asyncCompleteWithValue","dart:async#_chainFuture","dart:async#_cloneResult","dart:async#_completeErrorObject","dart:async#_completeWithResultOf","dart:async#_completeWithValue","dart:async#_prependListeners","dart:async#_removeListeners","dart:async#_reverseListeners","dart:async#_setErrorObject","dart:async#_thenAwait","dart:convert#_computeKeys","dart:convert#_convert","dart:convert#_convertGeneral","dart:convert#_decodeRecursive","dart:convert#_fillBuffer","dart:convert#_process","dart:convert#_upgrade","dart:convert#_writeReplacementCharacter","dart:convert#_writeSurrogate","dart:core#_computeScheme","dart:core#_enumToString","dart:core#_errorExplanation","dart:core#_errorName","dart:core#_text","decode","decodeGeneral","decoder","elementAt","end","find","fold","forEach","fragment","handleError","handleSearch","hasAuthority","hasFragment","hasPort","hasQuery","hashCode","hideSuggestions","host","indexOf","initialize","internalComputeHashCode","internalFindBucketIndex","internalGet","invalidValue","isAbsolute","isNegative","iterator","join","keys","last","length","listBox","matchTypeError","matchesErrorTest","moreResults","moveNext","normalize","package:dartdoc/src/search.dart#_scope","path","port","query","queryParameters","registerBinaryCallback","replace","replaceRange","run","runBinary","runGuarded","runUnary","runtimeType","scheme","searchResults","setEventListeners","showSearchResultPage","sort","stackTrace","startsWith","sublist","substring","then","toString","updateSuggestions","uri","userInfo","_Universe._canonicalRecipeOfQuestion","_Universe._canonicalRecipeOfFutureOr","_Universe._canonicalRecipeOfBinding","_Universe._canonicalRecipeOfGenericFunction","isBottomType","Error._stringToSafeString","_Utf8Encoder.withBufferSize","_Utf8Encoder._createBuffer","-","ElementExtension|get#acceptsInput","JSObjectUnsafeUtilExtension|[]","JSObjectUnsafeUtilExtension|getProperty","JSPromiseToFuture|get#toDart","_","_asCheck","_asyncCompleteError","_callMethodUnchecked0","_callMethodUnchecked1","_callMethodUnchecked2","_canonicalRecipeOfBinding","_canonicalRecipeOfFunction","_canonicalRecipeOfFunctionParameters","_canonicalRecipeOfFutureOr","_canonicalRecipeOfGenericFunction","_canonicalRecipeOfInterface","_canonicalRecipeOfQuestion","_canonicalRecipeOfRecord","_chainSource","_cloneResult","_combineSurrogatePair","_completeError","_completeErrorObject","_computeIdentityHashCodeProperty","_computeUri","_containsTableEntry","_createBindingRti","_createBuffer","_createFunctionRti","_createGenericFunctionParameterRti","_createInterfaceRti","_createLength","_createRecordRti","_createTerminalRti","_createTimer","_equalFields","_error","_errorTest","_findRule","_future","_getBindCache","_getBindingArguments","_getBindingBase","_getBucket","_getCachedRuntimeType","_getEvalCache","_getFunctionParameters","_getFutureOrArgument","_getGenericFunctionBase","_getGenericFunctionBounds","_getGenericFunctionParameterIndex","_getInterfaceName","_getInterfaceTypeArguments","_getIsSubtypeCache","_getKind","_getNamed","_getOptionalPositional","_getPrimary","_getProperty","_getQuestionArgument","_getRecordFields","_getRecordPartialShapeTag","_getRequiredPositional","_getReturnType","_getRti","_getRuntimeTypeOfArrayAsRti","_getSpecializedTestResource","_getTableBucket","_getTableCell","_hasError","_hasProperty","_hasTimer","_initializeText","_installRti","_isChained","_isCheck","_isClosure","_isComplete","_isDartObject","_isDotAll","_isFile","_isGeneralDelimiter","_isHttp","_isHttps","_isLeadSurrogate","_isMultiLine","_isPackage","_isRegNameChar","_isSchemeCharacter","_isTrailSurrogate","_isUnicode","_isUnreservedChar","_isUpgraded","_isZoneIDChar","_keys","_keysFromIndex","_lookupAnyRti","_lookupDynamicRti","_lookupErasedRti","_lookupFutureRti","_lookupNeverRti","_lookupVoidRti","_mayAddListener","_mayComplete","_name","_newFutureWithSameType","_newJavaScriptObject","_objectToString","_ofArray","_onError","_onValue","_parseRecipe","_processed","_recipeJoin","_removeListeners","_sameShape","_scheduleImmediate","_setAsCheckFunction","_setBindCache","_setCachedRuntimeType","_setCanonicalRecipe","_setChained","_setErrorObject","_setEvalCache","_setIsTestFunction","_setKind","_setNamed","_setOptionalPositional","_setPrecomputed1","_setPrimary","_setPropertyUnchecked","_setRequiredPositional","_setRest","_setSpecializedTestResource","_setValue","_shapeTag","_startsWithData","_stringToSafeString","_target","_theUniverse","_trySetStackTrace","_upgradedMap","_whenCompleteAction","_writeAuthority","_writeOne","_writeString","_zone","allocate","allocateGrowable","arrayAt","arrayConcat","arrayLength","arraySplice","asBool","asBoolOrNull","asInt","asRti","asRtiOrNull","asString","as_Type","castFrom","charCodeAt","checkGrowable","checkMutable","checkString","codeUnits","collectNamed","compare","constructorNameFallback","convertSingle","decodeQueryComponent","defineProperty","dispatchRecordExtension","dispatchRecordIndexability","dispatchRecordInterceptor","dispatchRecordProto","encode","encodeQueryComponent","environment","erasedTypes","evalCache","evalTypeVariable","fromCharCode","fromJson","fromList","fromMap","fromMessage","future","getDispatchProperty","getIndex","getLength","getProperty","getRuntimeTypeOfInterceptorNotArray","group","handleNamedGroup","handleOptionalGroup","handleStartRecord","handleUncaughtError","handleValue","handleWhenComplete","handlesComplete","handlesValue","hasErrorCallback","hasErrorTest","hasMatch","hasScheme","hash2","hash3","hash4","identityHashCode","instanceTypeName","interceptorFieldName","interceptorsByTag","internalSet","isArray","isDigit","isEmpty","isNaN","isNotEmpty","isUnicode","jsHasOwnProperty","jsonDecode","jsonEncodeNative","leafTags","listToString","lookupSupertype","lookupTypeVariable","map","mapGet","mapSet","markFixedList","markGrowable","notSimple","objectKeys","objectToHumanReadableString","of","parseHexByte","pop","position","printToConsole","propertyGet","provokeCallErrorOnNull","provokeCallErrorOnUndefined","provokePropertyErrorOnNull","provokePropertyErrorOnUndefined","push","pushStackFrame","receiverFieldName","recipe","removeSelectedElement","replaceAllMapped","scheduleMicrotask","setToString","sharedEmptyArray","shouldChain","showEnterMessage","showSuggestions","splitMapJoin","stack","start","staticInteropGlobalContext","stringConcatUnchecked","stringIndexOf","stringIndexOfStringUnchecked","stringReplaceRangeUnchecked","stringSafeToString","stringSplit","suggestionElements","suggestionsInfo","thenAwait","toGenericFunctionParameter","toList","toLowerCase","toUpperCase","tryStringifyException","typeRules","typed","universe","unmangleGlobalNameIfPreservedAnyways","unmodifiable","values","withBufferSize","write","writeAll","writeCharCode","zone"], - "mappings": "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", - "x_org_dartlang_dart2js": { - "minified_names": { - "global": "A,925,B,982,C,869,D,167,E,1191,F,802,G,293,H,814,I,885,J,917,K,129,L,1142,M,821,N,888,O,1196,P,928,Q,1134,R,132,S,116,T,808,U,801,V,813,W,841,X,868,Y,877,Z,922,a,1165,a0,957,a1,1046,a2,115,a3,1023,a4,347,a5,46,a6,10,a7,822,a8,863,a9,872,aA,114,aB,229,aC,38,aD,809,aE,817,aF,827,aG,828,aH,829,aI,830,aJ,836,aK,837,aL,858,aM,859,aN,861,aO,867,aP,870,aQ,871,aR,881,aS,882,aT,890,aU,901,aV,902,aW,903,aX,906,aY,908,aZ,914,a_,1121,aa,880,ab,891,ac,1200,ad,92,ae,100,af,124,ag,1148,ah,230,ai,1199,aj,45,ak,812,al,801,am,886,an,900,ao,920,ap,934,aq,936,ar,938,as,967,at,1089,au,1037,av,1078,aw,107,ax,80,ay,53,az,48,b,34,b0,302,b1,300,b2,952,b3,958,b4,961,b5,983,b6,984,b7,985,b8,986,b9,987,bA,860,bB,44,bC,876,bD,879,bE,893,bF,894,bG,895,bH,896,bI,897,bJ,898,bK,899,bL,904,bM,905,bN,91,bO,912,bP,913,bQ,49,bR,1119,bS,918,bT,301,bU,935,bV,937,bW,939,bX,1184,bY,950,bZ,951,b_,921,ba,995,bb,999,bc,1013,bd,1062,be,1065,bf,1132,bg,1001,bh,1002,bi,1081,bj,1011,bk,1054,bl,1055,bm,1117,bn,375,bo,800,bp,292,bq,801,br,820,bs,825,bt,826,bu,303,bv,831,bw,304,bx,845,by,852,bz,857,c,832,c0,960,c1,963,c2,965,c3,978,c4,979,c5,980,c6,981,c7,988,c8,989,c9,994,cA,892,cB,909,cC,910,cD,1183,cE,919,cF,923,cG,926,cH,929,cI,1189,cJ,801,cK,940,cL,941,cM,942,cN,943,cO,944,cP,945,cQ,946,cR,947,cS,949,cT,953,cU,954,cV,955,cW,956,cX,962,cY,964,cZ,968,c_,959,ca,996,cb,997,cc,1000,cd,261,ce,99,cf,1149,cg,810,ch,815,ci,816,cj,823,ck,824,cl,833,cm,834,cn,1193,co,842,cp,843,cq,844,cr,847,cs,847,ct,848,cu,864,cv,865,cw,873,cx,874,cy,878,cz,889,d,924,d0,970,d1,971,d2,972,d3,973,d4,974,d5,975,d6,976,d7,976,d8,977,d9,1022,dA,1029,dB,1041,dC,1042,dD,1045,dE,779,dF,1093,dG,1099,dH,1107,dI,1128,dJ,12,dK,1161,dL,1161,dM,1161,dN,749,dO,749,dP,1163,dQ,1164,dR,1184,dS,1167,dT,75,dU,349,dV,1187,dW,1187,dX,40,dY,799,dZ,1127,d_,969,da,990,db,991,dc,355,dd,992,de,993,df,993,dg,993,dh,993,di,236,dj,998,dk,126,dl,1131,dm,1003,dn,1004,dp,1005,dq,1006,dr,1007,ds,1008,dt,1009,du,1173,dv,1010,dw,1012,dx,1012,dy,268,dz,1029,e,884,e0,1168,e1,866,e2,801,e3,1034,e4,1171,e5,1118,e6,916,e7,1039,e8,1140,e9,1016,eA,781,eB,1094,eC,807,eD,1209,eE,1017,eF,1020,eG,1047,eH,1090,eI,1192,eJ,1143,eK,1170,eL,1136,eM,1056,eN,1086,eO,1137,eP,1043,eQ,1186,eR,1193,eS,1204,eT,801,eU,1053,eV,801,eW,1108,eX,1146,eY,1190,eZ,801,e_,1210,ea,801,eb,1057,ec,1061,ed,1049,ee,1035,ef,1071,eg,1080,eh,1103,ei,156,ej,157,ek,162,el,367,em,117,en,150,eo,1052,ep,257,eq,121,er,1100,es,15,et,61,eu,1150,ev,1,ew,1162,ex,16,ey,0,ez,37,f,883,f0,1185,f1,1195,f2,1122,f3,1120,f4,1123,f5,1157,f6,1184,f7,1201,f8,1058,f9,1059,fA,164,fB,346,fC,254,fD,86,fE,372,fF,244,fG,1111,fH,1115,fI,112,fJ,31,fK,1152,fL,1181,fM,49,fN,74,fO,1188,fP,19,fQ,1175,fR,1176,fS,1177,fT,1178,fU,1179,fV,1180,fW,1205,fX,1206,fY,1207,fZ,1208,f_,1087,fa,1063,fb,1064,fc,1116,fd,1033,fe,1036,ff,1051,fg,1076,fh,1079,fi,1085,fj,1104,fk,1105,fl,1182,fm,227,fn,163,fo,240,fp,242,fq,241,fr,239,fs,141,ft,166,fu,224,fv,155,fw,149,fx,371,fy,237,fz,258,h,927,h0,1077,h1,1106,h2,1031,h3,1032,h4,1092,h5,803,h6,804,h7,805,h8,806,h9,811,hA,1025,hB,801,hC,1159,hD,1135,hE,1197,hF,1209,hG,1038,hH,1126,hI,1098,hJ,930,hK,931,hL,932,hM,933,hN,1088,hO,1203,hP,1044,hQ,1095,hR,1096,hS,1097,hT,1154,hU,1155,hV,1156,hW,1158,hX,1160,hY,1202,hZ,801,h_,1050,ha,1133,hb,1166,hc,801,hd,1021,he,1124,hf,1125,hg,1144,hh,1147,hi,1102,hj,1101,hk,1198,hl,838,hm,839,hn,948,ho,849,hp,850,hq,851,hr,1174,hs,854,ht,1169,hu,855,hv,1141,hw,1153,hx,1172,hy,1019,hz,1145,i,21,i0,1026,i1,1027,i2,1028,i3,1060,i4,1109,i5,1110,i6,1138,i7,1139,i8,1015,i9,1018,iA,243,iB,348,iC,93,iD,356,iE,39,iF,90,iG,139,iH,134,iI,140,iJ,135,iK,370,iL,369,iM,133,iN,130,iO,118,iP,246,iQ,247,iR,1048,iS,51,iT,144,iU,225,iV,138,iW,158,iX,145,iY,228,iZ,161,i_,1014,ia,1040,ib,1066,ic,1067,id,1069,ie,1070,ig,1072,ih,1073,ii,1074,ij,1075,ik,1082,il,1083,im,1084,io,1091,ip,1024,iq,1068,ir,1130,is,151,it,152,iu,153,iv,154,iw,159,ix,160,iy,146,iz,148,j,911,j0,147,j1,307,j2,366,j3,252,j4,267,j5,165,j6,251,j7,260,j8,259,j9,255,jA,69,jB,379,jC,76,jD,373,jE,85,jF,1194,jG,83,jH,87,jI,374,jJ,36,jK,818,jL,819,jM,781,jN,840,jO,915,jP,801,jQ,1175,jR,1176,jS,1177,jT,1178,jU,1179,jV,1180,jW,1205,jX,1206,jY,1207,jZ,1208,j_,137,ja,253,jb,109,jc,108,jd,168,je,47,jf,33,jg,1112,jh,1113,ji,1114,jj,54,jk,81,jl,32,jm,127,jn,50,jo,1151,jp,68,jq,120,jr,119,js,354,jt,354,ju,79,jv,77,jw,78,jx,113,jy,20,jz,222,k,111,k0,1050,k1,1077,k2,1106,k3,1031,k4,1032,k5,1092,k6,799,k7,800,k_,1094,l,835,m,875,n,862,o,856,p,1030,q,1129,r,853,t,907,u,223,v,966,w,846,x,35,y,801,z,887", - "instance": "A,1213,B,1307,C,1245,D,1278,E,1211,F,1282,G,1306,H,1226,I,1319,J,1330,K,1333,L,1261,M,1233,N,1224,O,1225,P,1303,R,1326,S,1252,T,1257,U,1258,V,1274,W,1218,X,1219,Y,1293,Z,1304,a0,1214,a1,1325,a2,1247,a3,1249,a4,1253,a5,1264,a6,1272,a7,1273,a8,1242,a9,1243,aA,1256,aB,1312,aC,1228,aD,1260,aE,1244,aF,1220,aG,1221,aH,1223,aI,1280,aJ,1283,aK,1285,aL,1286,aM,1287,aN,1288,aO,1289,aP,1293,aQ,1295,aR,1296,aS,1299,aT,1302,aU,1309,aV,1313,aW,1317,aX,1334,aY,1336,aZ,1337,a_,1314,aa,1229,ab,1268,ac,1222,ad,1223,ae,1285,af,1291,ag,1292,ah,1294,ai,1298,aj,1300,ak,1315,al,1316,am,1318,an,1323,ao,1334,ap,1234,aq,1248,ar,1251,au,1255,av,1271,aw,1238,az,1240,b0,1217,b1,1217,b2,1215,b3,1327,b4,1328,b5,1329,b6,1332,b7,1335,b8,801,b9,1250,bA,1285,bB,1285,bC,1297,bD,1308,bE,1311,bF,1317,bG,1320,bH,1320,bI,1321,bJ,1321,bK,1322,bL,1323,bM,1336,bN,1217,b_,1338,ba,1254,bb,1235,bc,1270,bd,1262,be,1263,bf,1236,bg,1237,bh,1265,bi,1239,bj,1241,bk,1266,bl,1227,bm,1259,bn,1230,bo,1231,bp,1232,bq,1267,br,1269,bs,1216,bt,1275,bu,1276,bv,1277,bw,1279,bx,1281,by,1281,bz,1284,gG,1306,gJ,1330,gM,1233,gP,1303,gR,1326,gV,1274,gZ,1304,ga1,1325,ga6,1272,ga7,1273,gaB,1312,gaJ,1283,gaL,1286,gaM,1287,gaN,1288,gaO,1289,gaS,1299,gaU,1309,gaV,1313,gaZ,1337,ga_,1314,gag,1292,gai,1298,gaj,1300,gak,1315,gal,1316,gbN,1217,gb_,1338,gbi,1239,gbj,1241,gbv,1277,gbw,1279,gl,1305,gn,1126,gp,1290,gq,1324,gv,1301,h,1335,i,1333,j,1246,k,1212,l,1305,m,1310,n,1126,p,1290,q,1324,sl,1305,t,1331,u,1331,v,1301" - }, - "frames": "2xHAmJeggDyB;oCAKAAyB;eAKCbG;kBACeDE;gEAIlBAE;KAGOFO;iGAaA9+CAA8CgBCeANKiEuC,A,I;qMATrChEAAmB0BDeAVWiEoC,A,AAUvC26CkC,A;6QGpJS4DIAsCwB6CyB,A;oCAwhBb7GW;+tEEpkBT1sByC;QAEFuiByC;sYI2+BwBviBQ;ipBR/8BbyzBuB;uEAmCLzGG;oQAyLqBtJqC;sfAwJrB2LiB;cAAAAa;0CAuBW1CS;gJAYb0CiB;6FAqBFuDAARF3CiB,A;+FAkBWYW;8lBA0tBoBrXoB;2KAoCnBAwB;gBASAAuB;4DA8CAxZqC;mvBAuHdAwC;oTAsPEAmR;iZAiNAAW;sfA4DyBAW;0WAkCJAW;eAQ1BAkC;6BAKuBuaoD;OAChBvaU;0DAOCqzBI;cAIgBrzBwC;2JAUjBAU;0EA8BmBAW;sCAGtBAc;4JAsEKiuBQ;oCAEDDK;AACEAK;wKA+DRhuBAYpqE8BAgE,A;keZq2ExBAkC;cAKAA0D;y4CA0TAA4D;6sBA+F6BsvBuC;AACHoCmC;yEAuIzB5/CAWh5ENCMAlD4B+4Cc,A,M;qDXw9ElB9qBiD;yCACKywBW;+KC3xFTUI;YACc7+CAAsE3BDAF3IAy6CyB,kF,A;QEqE2Bx6CAAuEpB26CE,A;OAtEWkEI;uBAKK5+CAAzCJg9CkB,AAAZ4BI,A;6CA+CMAI;YACkB7+CAAyD/BDAF3IAy6CyB,kF,A;QEkF+Bx6CAA0DxB26CE,A;OAzDWkEI;uBAGK5+CAApDJg9CkB,AAAZ4BS,A;4EA0EE7+CAA+BTDAF3IAy6CyB,kF,A;QE4GSx6CAAgCF26CE,A;sDAvBEz6CAA2BTHAFhJAy6CsB,A,0BEgJAz6CkF,A;QA3BSGAA4BFy6CE,A;+DAfoCiDqB;UAElC19CAAYTHAFhJAy6CsB,A,0BEgJAz6CkF,A;QAZSGAAaFy6CE,A;gEAMP56CAFvJAy6CyB,6B;yJEmK2CoDoB;gLA0CjCXmB;0KAaFl9CAF1NRy6CyB,mG;2DEwO2BqE4D;wTAqFXp+Cc;8fczRPIAAnGFu/CqB,A;2IA+QPtTADdIpfgD,A;WCcJqU0B;AAC+Diea;AAA7DuBQ;oBACAAI;iBACmB/VQ;AAErB+VQ;g6CE+lCuC3PiB;kiBNnwChBoEO;AAFA0DG;gBAGf7BgB;AAD0CjFAA6JlC6GM,A;gBA/ECtGAAxBsBqGG,A;6BA0BECG;uCAsJzBEG;sBA4JMnBmB;kEAiFPrFAA7ZwBqGG,A;mEAsabCG;sEAUAAG;sEAUWxGG;uDAe3BDAAvYM2GK,A;YA2YGpHAA/XHkHG,A;uBAiYQnHG;6EAiBHoBAAxYIJO,A;AAyYJGG;sEAUIGAA/XT6FG,A;uBAsYiC9GG;6EAqB5BGQ;AACDsGQ;uBAODvGAAzZH4GG,A;gFAsaI1GAA5ZJyGG,A;sBAgaUNO;uIAmBNEkB;yBAGDKI;mFAiBCLkB;0BAImBFO;AACEAS;AACtBOM;sFAyB0B9FsB;AASANK;iBASbDK;8CAYiB4FAAjZRtrBc,A;AAkZrBsqBM;AAIAJM;AAIADK;sHA4CF8BM;yDAaZhFK;sEAuBFEG;cAIOwIoB;oSAoFL1ImD;uBAQF+De;uDAiBcUI;uBAENt3CQApgBU42CoB,A;mEA6kBer1CAEp+BtB0wCqB,A;aFo+BsB1wCAEp+BtB0wCW,A;CFq+BKzwCgBAlFlBqxCiB,A;uCAsFcmFO;GAELuDoB;OAAwBrJO;wBAOMxwCAAI5BoqBO,A;AAJF+kBG;gBAA8BnvCAAI5BoqBAAkCbAAAAAAAACM0pBgB,A,A,A,A;sDAzBS33CQAtpBoB+4Cc,A;mCA+pBtB/0CQAvpBS+0CgB,A;mBA0pBf/4CMAlqB4B+4CkB,A;oBAuqBV52CMA1nBH42CoB,A;+FA8rBPrFAA1gCwBqGG,A;sOAkiCnBxGAAh+BJ2GG,A;IAi+BM1GiB;AAYdiFU;sEAgBCt0CQAiCmB8vCAAxgCZiGI,A,AAygCMlGI,A;+DArBXeC;AADPiDK;yUAsEOvHC;AADPgHK;wEAWasBc;gDAeNhEI;AADOhBAAvkCFiGO,A;mDAilCF1FG;iBAKVYG;8GAsBOwIoB;YACGpJG;iBAKVYG;wFAoBWHU;6DAaWAmB;2DAQR+GuB;gIA0CEAuB;qCAgBT/GC;AAAa5BAAhtCR6GS,A;MAitC4BjBiB;AAApChEI;suCAuJmB4EQ;qBAGDKO;sCAYA/FAAt4CViGM,A;AAu4CKlGG;qCAMG2FQ;AACFmHkB;AACEnHU;gEAOGKO;gBAELEI;yGAgBMPQ;8JAgBFKO;AACjB1vCAA6kEMopCAA9lHwBqGG,A,A;sFA0hDlB5FAA96CCNO,A;AA+6CeXM;AACQgBM;AAGPyFW;AACO/FM;AAGP+FW;AACNhGM;AACPgGQ;oDAWVKQ;oDAaEAQ;4DAaFHM;uBAKEGe;AAIFEI;kGA0BAxGAA7mDwBqGG,A;gIAsnDVhGAAphDbiGG,A;cAshDStGAAxnDcqGG,A;uEAioDV5GAA1hDb6GS,A;mBA+hDIzGAApkDJ2GI,A;GA6kDM1GG;4HAgBOJAAziDb4GM,A;AA0iDG3GG;eAUDCAA1iDIOG,A;gDAkjDF6NuB;yDAsLPhPAAHK6OG,S;uBAKP7OAALO6OG,I;oCAWDhGO;+DAKOxBI;AACPzDgB;oGAiBOiLM;wBAqCAhGM;aAeHiDS;AADPhDe;oBAGFrE0B;AACHsHW;gCASSxLG;cAGV8Ea;AAEayGW;oBAETrHuB;AACHsHW;kCAKS7LG;cAGV8EgB;AAEuB5aAAzyDfodI,A;AA0yDKsEW;gCAGX9KAA79D6BqGQ,A;AA89DdlHQ;AAKhB4LW;oBAyCHhHS;AACAOQ;qBAuGewGW;AADPhDW;oBAGsBnJAAIpBkHAAl9DPtrBsB,A,AAm9DHgqBM,AACALM,Y;AANG/CAApGA4JC,AAAOjDa,A;qBAqHKgDS;AAFNpNAA7DKtUAAx5DJodW,A,A;AAs9DFsBW;oCAGL3GAAvHA4JC,AAAOjDa,A;0CAqIO9HAAvpEgBqGQ,A;2DA4pEZ5GAArjEX6GI,A;uCA2jEATAA1/DPtrBsB,A;AA2/DHgqBM;AACAIK;CACATM;6BAWe4GS;AAFNvNAApGKnUAA15DJodW,A,A;AA+/DFsBW;oCAGL3GAAhKA4JC,AAAOjDa,A;wCA8KO9HG;kDAIV6Ce;qCAKGgDAAjiEPtrBsB,A;AAkiEHgqBM;AACAIK;CACATM;2BAOe4GsB;AADPhDW;oBAMVvJAASYsHAAzjEPtrBsB,A,AA0jEHgqBO,AACAIM,AACATM,Y;AAfG/CAAnMA4JC,AAAOjDa,A;8BAwNM7BQ;sCAEIKG;AACCldAA7jEXodI,A;kCAskEMPQ;qCAGmBFO;AACZIwB;AAKPGK;AACKldAAhlEXodI,A;uCA2mED/IAAjBOwIU,mB;AAmBD6EG;AADPhDW;oBAMVtJAAUYqHAApoEPtrBsB,A,AAqoEHgqBM,AACAIM,AACAGS,AACgBmBW,AAEdvBI,AAA6BqBK,AAE/B7BM,Y;AArBG/CAA7QA4JC,AAAOjDa,A;yCA4TN9HAA90E6BqGW,A;AA+0ErBjHAAjwEFkHG,A;AAkwEUNG;AAChB7GkB;QAIK/BGApBPhUAAjpEQoduB,A,A;AAuqEKsEG;AADPhDW;oBAMV1JAAUYyHAA9rEPtrBsB,A,AA+rEHgqBM,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAAvUA4JC,AAAOjDa,A;qBA8WDnKoC;AAEMmNC;AADPhDW;oBAMVpJAAUYmHAAzuEPtrBsB,A,AA0uEHgqBO,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAAlXA4JC,AAAOjDa,A;qBAicDzKAArDbCiB,AADIlUO,AACJkUAAM6CkDM,AAGPyFW,AACO/FM,AAGP+FW,AACNhGM,AACPgGsB,oF,AAjBtBtCY,A;AAyDgBmHG;AADPhDW;oBAMVxJAAUYuHAA5zEPtrBsB,A,AA6zEHgqBO,AACAIM,AACAGM,AACAZM,Y;AAjBG/CAArcA4JC,AAAOjDa,A;uBA0eDtKSAZTpUAAh0EUodwB,A,A;AA80EKsEC;AADPhDW;sCAGL3GAA9eA4JC,AAAOjDa,A;sDAmgBQ7BQ;kCAICKQ;AACXtGAA1hFyBqGe,A;uEAojFvBRAA54EPtrBsB,A;AA64EHgqBO;AACAIM;AACAGK;CACAZM;6FA0KoBgIM;AACJUU;kBAGTjGkB;4LAcHoFW;cAIAAW;cAIAAO;MAESgCI;AAAkBnGG;AAAqB2DU;cAKhDQO;AAEEyBM;AAA2BOG;AAA3BPAAgYDnHU,A;cA3XD0FO;AAAsBnJM;AAAiBmLW;cAIvChCO;AAAsBpJM;AAAkBoLW;eAIxChCO;AAAsBhJM;AAAegLW;cAIrC/BAA0ERDQ,AAAYPS,AACevFQ,A;iEA/DX8HG;AACRhCO;eAIcnEG;AAAqB2DU;AAC/BlRK;iBAMI0TG;AACRhCO;eAIcnEG;AAAqB2DU;AAC/BlRK;cAMJ0RW;AACACAAqCRDQ,AAAYPS,AACevFQ,A;sCA9BnB+FAA6BRDQ,AAAYPS,AACevFQ,A;cA1BnB4CAAmMSvaAA2CE4XY,AAAmBsFI,MACtBuCI,AAAkBnGM,AACPvBY,A,AA5C3B0FU,AACAAW,A;eAjMQCAAqBRDQ,AAAYPS,AACevFQ,A;eAlBnB2CAAiMS5BAA4CEdY,AAAmBsFI,MACjBuCI,AAAkBnGM,AACZvBY,A,AA7C3B0FU,AACAAW,A;cA/LYjDAAwMKkEmB,AAMjBjBO,AAAmBpQkB,AACnBoQW,AACACAAnMADQ,AAAYPS,AACevFQ,A,M;wCANhBsFU;aACGwCI;AAAkBnGK;sDAWrBjBkB;uCAIXoFU;uEAaWpFkB;0FAIyCsDoB;kBAM7BtOmB;SAKjBoSM;AACAnGO;AAFQGAA15BC/HAA5+DsBqGU,A,AA8+DjBjHAAh6DNkHG,A,UAm6DazGAA/6Db2GG,A,AAk7DYoEI,+C;AAg5BxBmBO;AAEYhEkB;AAOZgEU;4BAMqBgCiB;AAEZxCQ;sBAGTQO;4BAE4BnEc;AAChB5HAA35FuBqGY,A;AA65F/B0FO;YAMI1RK;cAMJ0RO;+BA+BKRa;AAnBYwC2B;uCAwBIxCU;aAIbAU;cAIRQU;WAIJAU;YAKKRU;iBAGIAwB;AAC0BgBmB;AACbAK;UACc3EM;AACmB/BAAlvFlBtrBc,A;AAmvFfsqBM;AAIAJM;AAIADK;AACpBuHO;2BAWAAO;OAIWvFY;kFA0CL+Ec;UAERQO;AAAsBjJM;AAAgBiLY;iBAItChCO;AAAsBrJM;AAAcqLY;0EAOnB7HgB;AAAmBsFI;MACtBuCI;AAAkBnGM;AACPvBY;4DAmBbkGK;8FAUMtGQ;+BAEAFI;sBAOAEQ;gCAGAFI;wBAOL/FAAvmGsBqGG,A;2BAymGRjHAA3hGfkHE,A;IA4hGYnHM;AACP8GQ;gBAEDKK;SAIElHAAniGNkHM,A;AAoiGDtGAAlnGwBqGQ,A;wFAynGbvGU;AACPmGQ;QAEDKK;qEA0CDvG8B;AACGqGW;mCAGX2EW;2FA2BO/KAArsGuBqGG,A;0CA4sGnChKAA0Z0B2DAAtmHSqGO,A,A;iCAktGlBCE;AADH1GAAjlGFyGW,A;YAslGArGAAttGuBqG4B,A;2BA6tGM5GAAtnG7B6GK,A;iEA8nGoB7GAA9nGpB6GS,A;mCAqoGgB7GAAroGhB6GU,A;8EAopGejGAAzpGfiGS,A;yBAmqGwB7GAA9pGxB6GM,A;kFA6qGwBjGAAlrGxBiGK,A;+IA0sGI3GM;AACAAM;AACGsGgB;AACAAQ;SAGkBDwB;AACAAwB;oBAGjBMO;AACAAI;4DAShB5GAA1sGQ4GM,A;AA4sGR5GAA5sGQ4GK,A;0PA8uGM7FAAxvGN6FQ,A;AAyvGM7FAAzvGN6FO,A;aA8vGsB9GO;AACAAM;AAEQgBM;AAGAAM;AAGPyFW;AACAAQ;yBAKO/FM;AAGAAM;AAGP+FW;AACAAQ;wCAOAFI;YACbOa;6BAOaPI;YACbOe;6BAUfPM;YAEeOa;YAMOrGM;AACAAM;AACPgGW;AACAAQ;0BAIFOS;0BAGEAI;2BAGILM;qCAKcJM;sBAERAM;YACbOe;+BAMVHM;wDAaMtGAAx4GH2GM,A;AAy4GG3GAAz4GH2GQ,A;WAu5GOxHAApnDL6OG,I;2CAunDCrHI;YAIMmEI;uBAEH1EQ;AACWtUoBA2LI0Ta,AAAjBkHK,A;+BAzLO/FK;wBAIT1GK;gBAaFAW;AACAAK;4BAgBImGQ;2BAUAKO;AACAAO;2CA+CAhGM;AACAAM;AACA2FgB;AACAAQ;aAEF1FAA9+GFiGM,A;AA++GEjGAA/+GFiGG,A;oCAm/GMFO;AACAAO;iCASPtGAArlHwBqG+B,A;oCAylHQ5GAAl/G/B6GI,A;wBAu/GDtGAA9lHwBqGG,A;qDAgpH1B8E4B;AACElFQ;oBAEEOI;4CAWoBnBa;AAAjBkHI;krBQhvHZ3NS;4BA6BRrkBU;wBA6GOASApCS0kBAAAA1kByB,A,a;uCAqDC8tBE;uMA+DE9tBoB;AAAAyqBW;8HAkCPpWM;6IC1TIAM;0DAYV0WQ;2BAMJAsB;OAEgBxIY;4CAwkBFsEkB;AACIxDI;wBAGhBZKAyKwBziBQ,A;AAxKRwZ8D;+CAehBoQiB;2DAhBAnHAAyKwBziBU,A;AAxKRwZK;+CAiCXsYgB;uFA2JkBtLqB;gCAGYjCG;AACxBiKM;sHAiCcIG;2CACDvDK;0CAIbmDM;mDAuFIGG;uLAkBTsDwB;wBAMgBjLe;AACFqCsB;AACZ/FyB;mDAcI+FwB;iBAEVoBiB;AAGAZmB;uQGv8BQNU;iBAUiBvpBqB;qCAKjBupBU;sFAoBcvpBiB;yFC6iF5BAqB;OAAAAU;whDEtmEuCAwC;kBAQ9BAuC;SE9faofkB1BksBMpfgC,A;U0BjsBeqUM;gBAAAAS;sDC0E5BrUkB;sFAoBNshBG;icClCAthBWAwBQmpBAAAANoB,A,A;wGCGuC7oBAd6wCjBkkBoB,A;6zCD1pCxBhLgB;+XAgIwB6PAAN9B2HIdxPwB6CuB,A,A;6Sc4Y3BvzBiC;kDAkEU2vBgB;AAEDxEO;0BAGFAO;oBAGEAU;uFA0JoB4DmBFtkBcxCK,A;cE6kBnCYkB;qEAIR4GAAzMgBtGwC,A;qYTrdX7CASyMSgIAhBgPX3CiB,A,A;QOvbAnHO;6zB4BuxBCgLmB;8EAwBc9zBa;qBAGpB8zB6B;qBAMKxSG;2sBChsBa2Ne;+DAGACoB;wDAQAC2B;qIC2rBFxE+H;ksBAAAAS;YAAAAI;gzBAyOT3qB0B;CAYG2wBqF;UAAAAuEAigBAzXQ,kF;KAjgBAyXyD;OAAAA2C;0UAqPC3wBApBiBwBkkBkB,A;siCoBsHnBlkBApBtHmBkkB4B,A;mmBoB6vBvBiPmB;0CAOI1lBiC;gMAwCPzNiD;+GAeIAc;2GASX6zBArB/qDJzIO,A;mBqBmrDapDqC;+BAGIhoBc;4CAHJgoBI;uIAqBGhoBc;AAAJ6zBoB;2FAYLvSG;gMA4BQthBc;qBAEgBmzB2B;wDAS3BUArB3vDJzIO,A;mBqB+vDa1DoC;+BAGI1nBc;4CAQJonBqC;wKAYkB+L8B;AACfnzBc;AAAJ6zBoB;uFAUiBV4B;AAGtB7RG;kMAeAqGuC;uFAQyBwLkB;sRAgDrBxDa;sFAeAAY;4PA0CE3vBwB;wCAuBNshBG;yNAsCHwGoC;OAIY2FiC;uCAIA2Fa;mEAYFpzBApB1oCuBkkB4B,A;oHoB0pCvBlkBApB1pCuBkkBsB,A;4coB4uCDkDyC;mLAkBpBpnBc;AAAJ6zBa;CAAAAArBzmEZzIyB,A;+DqBsnEO9JG;6NA2EQuOAnCzgEOFa,A;YmC2gELAY;mOAsCDA8B;kEAYLAQ;sBAA4CAiB;ylBAsfhDjSK;mDAtBgC8OAHh5FdxsBW,A;kRGs6FlB0dS;2nBA2oBQ6Ee;ukQEv2GCviBAsBwnBKAAzC1kCnBAAArBsB8tBAAAA9tBiC,A,A,yB,A;iOoBqDlB4tBqCAIoBrLW,8P;OAJpBqLAAUWrLoB,gB;ySCjHMIO;AAAT4PM;AAAArEyC;AACUvLC;AAATuL0C;AAEJvLC;AAATuL2C;AAYC5LK;AADAKC;AADLuLc;0EAwE0D4EoB;AACbCY;wBAGPRE;AAAArEO;AAAOAS;AAASAkB;WA2SnC9pCAqBggDau+BqB,AAAT4PM,AAAArEkC,A;mBrB//CnBtL8B;AACUDC;AAAVuLgC;AAEoB7pCAqBy5DSs+BG,AAATuLgC,A;ArBx5DVvLC;AAAVuLsC;kCAE8BiFiB;AACvBxQoB;mBAIct+BAqBi5DQs+BG,AAATuLgC,A;ArBh5DRvLC;AAAVuL0C;mCADOvLoB;gBAOoCkNAPhBzBFa,A;AOiBoBprCAqBm2CCo+BG,AAATuLsC,A;ArBl2CpBvLC;AAAVuLuC;AACsBzpCAAwEpBDAqBs+K6Bm+BG,AAATuLkD,A,A;ArB9iLtBtLwB;AAAsBn+BAAwEqBypCQ,A;sBAtEpCvLiB;AAGFC+B;kBAOAA2B;gDAYPl+BAA4BwDNAqBs7C5Bu+BG,AAATuL+B,A,ArBr7CXvLC,AAAVuL+B,AACYvpCAqB4uCwBg+BG,AAATuL2D,A,ArB1uCfvLC,AAAVuLoC,AACYtpCAqBw8CmB+9BG,AAATuL6B,A,ArBv8CpBtL6C,AADFDiB,AAHFAiB,A;sCAlB0CuLe;AAErByBY;gCAMbhNsB;AAESAiB;gCAiB2BkPAPhbrCOO,A;2gBSjDsBzPO;AAAT4PM;AAAArEkD;AACMvLC;AAATuLqD;AACavLC;AAATuLmD;+BAOPtLyC;AACDA6B;uBAIF2PM;AAAArES;AAASAM;kBAKSvLyC;iCASHAmC;gCASCAG;AAATuLiD;yBAKiBvLqC;AACRAC;AAATuL0D;OAGiBvLqC;AACPAC;AAATuLkD;0BASkByBqB;OAIIrNK;AAApCKC;AAAP4PE;AAAArEwB;kFAuB6CvLG;AAAXuLiD;AAAiCAO;+DAU7CAY;WACyBAQ;KAChCvLY;0HCvGG4PM;AAAArES;AAASAM;kBAMdvLG;AAATuLoD;yBAgBQtL2B;qBAQYDG;AAApBuLO;AAAOAoC;sbGkeWyBY;2BAEInqCALxfE+sCU,A;yCK0fEnQAgBneSCK,A;wDdhC9Bp+Bc;cAECAAeLVsuCE,AAAArEiB,AAAWxLiB,A;gJjEuVqBmOW;gBAqB5B1CgB;oiBGzMsBhCA+D2FuBnsBiB,A;+B/D3FvBmsBA+D2FuBnsB2B,A;Q/D0C/CqsB8C;ibAiJOqEIA1UwB6Ca,A;+FAkd/BjH8B;yUAqJ4B6De;gBAcFnwBmB;QAAAAU;2gBiD7rBf4vBa;AACHAY;y/BjBiED+CiC;mfAmQEDiB;8Y9BxWiB1yBmB;8CAAAAa;oVAwKPAiB;4BAAAAoC;uPIxIOAmB;OAAAAa;wjBC+EjBkoBkB;oEAkBF6HI;0YAgNsD9HmBAXpDCe,kB;OAWiBloBqC;6CAKnB+vBI;2nBT8gDqBJ+B;+uBA+hCC9Ea;AAAeAe;8CAOQAe;8BAOlClCiC;AACAkIS;iE2B/2FI7wBmB;wDAAAAW;iDAUb4jBAA+PiB2CS,A;oFAhOEAiB;4FAKAAI;gGAUfzBGAgLNwBa,A;2OA/JLkJwCAQWlJI,sF;yLA0EaCI;oFA2BDvmB+B;kYAwHlBAU;0BAAAAG;oNAyDAAU;0BAAAAG;oddnWL6zBAGifFzIAA2BuBoHQ,A,A;0BHxgBnBqBAG6eJzIAA2BuBoHc,A,A;oBHlgBnBqBO;AAIJAAGmeAzIAA2BuBoHO,A,A;iDHvfR9HU;kNA6BYaAXHpBmFIAqBwB6CkB,A,A;6FWVnBG4B;kHAoDgBpKAA/IIoBO,AAAmBAK,A;AA+IFpGgC;yBAInBoGQ;+HC7G5BlDG;qBAAAA0B;AAEAKU;AACAXY;sFA6HKlnBW;oCA8CJsyBG;QAAAAW;4BAY6BlEK;mNAwElBkEc;SAIIxCAAlHEjIe,A;4EAqHVDuB;glCHtNH71CiB;iBAAAAAAsX0B+4CqB,A;eAhXD/0CMAwXZ+0CqB,A;4aQ3VhBpEkB;oTA6FFlDKC8fmBxjBmB,A;AD5fnByiBKC8kBwBziBa,A;6FD/fgBAc;yKCzO9B0oBW;4CACZjFK;qFAgBYiFW;qFAgIPoGW;oBACEzDY;AAA6B7GI;8CAgBzB6GK;kGAULuDU;gRA0IkBvaW;kGAqBJrUuC;QACPqhBwD;mEASOrhB+B;QACPgzByD;4GAuGTvKG;6CAQiBpFQ;AACL2DY;sBAQd8KgB;gFAQErJG;kGAiBiBpFQ;AACL2DY;iCAQd8KgB;qKA+IFrHW;sCAMWjEe;oMA8EXsLmB;sEA4BAAmB;+VA8EyBpDGA9nBlBrDS,AAAUJa,A;iCAgoBwB1GE;uBACDAQ;mBAEPvkBiB;yDAKqBgnBiB;AAC3BRmB;IACqBjCI;0CAWrBqEAAiGzBoLW,U;oJA3F4Ch0Ba;mEAUfyuBC;IAAAAAAvtBxBpDS,AAA+BpCO,A;oDAytBPjpBoB;0FAOQukBS;iBAElBsKAAxuBd7FU,A;0DA6uBsBzEO;gDAGIvkBiB;iQCiyB/BwuBU;ghB6BlsDwBxuBkB;sBAAAAW;QAAAAa;6CA6QFmsBAehDuBnsBU,A;QfgDvBmsBAehDuBnsB6B,A;ef2R5BmwBe;oTrBlaf0DU;AACAAAboaJzIiB,A;AanaIyIe;yPuBGe9BkB;6NtBIfhKG;sBACKiDS;gDAIMnFI;8DAMCkCa;AAAciDE;AAAaxLG;8BAMvCuIU;AAAiCzIAH1GftfU,A;AG0GEgrBG;kBAAa1LOH1GftfW,A;QG2GfAc;+BASH+nBS;CACFiDiB;oGA8BEjDS;WAAoBiDO;QAEjBvEyC;sCA+BHsBS;QAAoBiDS;6CAOVnFI;oCAEqBAM;4FAiClB0NgB;kDAMbxLS;QAAoBiDE;wJA6BnBvE6C;+BAC+BZK;8FAgCrBkCgB;yCASAAU;gCAEc3IA5BgZHpfqB,QAAAAW,A;0d8BznBb+wBqE;wNAqBmBvRqB;oEAQdxfc;AAAJ6zBa;mBAAAEAhByZMtGoB,A;8FgBpYPjOQ;+FAUPqUAhBqXNzIAA2BuBoHQ,K,A;QgB5YkBlRG;kmBqByF1BthBc;+FAQRshBG;yDCrDqB7Ga;UAAAAI;0IrBrHJzaAhBqyCakkBiB,A;OgBlyCV0PAAyCf9PAAG8B9jBAhBsvCLkkBoB,A,A,c;iCgBtxCtB/CAhB0zCRnTe,qB;qLgBtwCMuViC;6XAqCAgEU;mVA6IXvnBkB;4BAAA4sBe;0fAwO0B5sBoC;0lBActB+zBAjB5CctGgB,A;iFiBqDRsGAjBrDQtGgB,A;ciB0DRsGAjB1DQtGgB,A;kBiBiERsGAjBjEQtGS,A;AiBkERsGAjBlEQtGC,AAApBrCmB,A;yMiB8FQ2IAjB9FYtGO,A;6FiB0GhBsGAjB1GgBtGsB,A;oCiBmHbnMG;+oC1BlIiBrCK;84DS1dM4Rc;mRqBkyCpBhEsB;uEAKFAwB;AAGCAyB;ueAuNelGMA2iDbkJAH3sFWF2B,A,AG+sFlBtRa,mBAGFwVArB/kFFzIAA2BuBoHY,A,A,AqBqjFrBtHOA/BY2EAHprFQFY,A,AGsrFpBkEArBnjFFzIAA2BuBoHU,A,A,MqB0hFJqBArBrjFnBzIAA2BuBoHQ,A,A,cqB6hFrBqB4B,A,oBA4BAAArBplFFzIAA2BuBoHa,A,A,cqB6jFrBqBArBxlFFzIAA2BuBoHU,A,A,A;qLqB4gCyCtSG;qCAA9DlgBG;mVA2dcqeG;iBAEIwRAHvoDEFmC,A;qBGupDyBAiB;uHA+mBVzRG;2PA+djCGmB;IACAoDa;+DAIAjDa;sBACA0BK;mBACA5Ba;0KA/rBe8OyC;AACUyCAH9iEPFc,A;AG+iElBkEArB56DJzIS,A;AqB66DqBgCY;AAHFAc;yNAsmCEzJ0FAwBd3jBG,A;0BAxBc2jB2B;qOAwpBAqLU;AAAc1QiB;mGAc/B+IgC;aACAC6B;cACAHwB;aACAM+B;4OAcAJ+B;UACAC6B;uMAuDGtnBO;AADFweW;2MA0EeqRAH38HEFgC,A;wCG29HkBAiB;oZEh0HpC3vBwB;27BC9hBS2vBY;mBAIDwDkB;oIAQWAG;iBACSAG;uKAgDdDAhCqIhBpCO,A;AgCrIKRAtCyOAtwBW,A;csCzOWkzBY;iHA3BGhRI;EAAAAG;yrBCpDVqQE;AAAArES;AAASAM;2BAKbvLiD;AAEKAmC;iEAaZjmBAyBTAw0B2D,A;kYzBoBkBhDc;gCAMERADxBHsCG,A;gBCuBwB1NK;AAAPIwB;QACdgLWDxBHsCmB,AACJMAU0JuBtwBuB,A,AV1JbkzBAhCsMrBpCkB,A,UgCtMqBoC6B,A;AC2BDXG;aAAArEO;AAAOAmB;+EAKTvLC;AAAhBuLO;AAAOAiB;iOAkCQ9pCAqBk0DWu+BG,AAAT4PE,AAAArE+B,A;ArBj0DnBtLiC;AACAAyC;AACAsLsB;AACUvLC;AAAVuL0B;AACAvLc;SACAAc;4EAIqBv+BAqBwzDOu+BG,AAAT4PE,AAAArE+B,A;ArBvzDTvLC;AAAVuLuC;yEAGuB9pCAqBozDKu+BG,AAAT4PE,AAAArE+B,A;ArBnzDTvLC;AAAVuLoC;gFAYWtLmD;AAEb2PG;AAAS3PC;AAATsLqC;mBAgBc9pCAqBqxDgBu+BG,AAATuL+B,A;ArBrxDqBvLC;AAAVuL6B;AAE5BvLiB;AACACqC;AACAAqC;AACUDC;AAAVuL2B;AAGAvLiB;AACAAc;yBAMAuLO;AAAOAS;AAASAsB;uGA0BSvLa;AAAT4PM;AAAArEiD;mCASJ9wBAqBwFmBulBG,AAATuLmC,A;ArBxFWvLC;AAAVuLiC;AADvBvLiB;AAImBtlBAqB2/CcslBG,AAATuL2D,A;ArB5/CxBvLiB;AAIAv+BAqB6tD0Bu+BG,AAATuL+B,A;ArB5tDHvLC;AAAVuLiD;2BAFJvLqB;GAMckNAdzJIFO,A;Ac0JpBvQAd+MKpfgB,A;Qc/MLofI;GAAAAAd+MKpfI,A;Oc9MS2iBe;AADdtOS;AAIgBjwBAqBmtDYu+BG,AAATuL+B,A;ArBltDLvLC;AAAVuL6I;4HAQOtpCAqBiuDoB+9BG,AAATuL6B,A;ArBhuDlBtLsB;AAAqBtB4C;AAEfqBiB;AACEAiB;yBAKZuLsB;AACAtLwC;0GAiBc+MQ;2GAUiBgEAdxMT3zBU,A;IcwMS2zBK;KAAAAAdxMT3zBe,A;wBc0MR2iBgB;MAIhBiPM;AAEAOUAzFkBzPiB,UAEZwLuB,AACAtL0C,A;AAuFNsPIAlCqC7HuD,qB;yFA4CAsFa;kOAiBrCiCS;4DASahP2B;qBAOAA0B;qBAOAA2B;qBAOAA6B;6DA/LCsLU;UAIUqEE;AAAArES;AAASAe;AACe/LsBAqYTgRC,AAAAjF0B,A;AApY3BxLmB;AACOAI;2DAsKWwLU;iGAcAAO;gFAOhBAiB;eAMAAgB;AACFxLsB;oBAEoCCG;2CAEtBAC;AAAhB4PE;AAAArEO;AAAOAiB;iGASOvLC;AAAhB4PE;AAAArEO;AAAOAiB;AAAgB5MQ;+CAQjB4MqB;6CAMOAuB;aAEb0DY;oBAIa1DgB;8CAKaAQ;qBAQvBvLC;GADAuLkC;qBAMcvLC;AAAVuL+B;oEAMqBAsB;AAEHAW;QACQA2B;AAEcAc;AACpCxLuB;gBAMgBwLQ;gGAUzBxLkB;gCAwCFAkB;2DAQYCC;AAAhB4PE;AAAArEO;AAAOAiB;UACDxLmB;wJE9aYCC;AAAVuLkC;cACcvLC;AAAVuL2B;2LAuDEAc;AACItpCAmBq2DW+9BG,AAAT4PE,AAAArE6J,A;AnBj2DPvLC;4CAIgCLK;AAAPIwB;YACnBt+BAmBq0DOu+BG,AAAT4PE,AAAArE6C,A;YnBl0DNvLC;qHCrEb4PG;MAHsB5PC;AAAVuLiC;AACUvLC;AAAVuL6B;AAEQtLC;AAApBsLO;AAAOAgD;AAEevLC;AAAVuLgC;AACUvLC;AAAVuL8B;AAEQtLC;AAApBsLO;AAAOA4C;4CAOyCvLI;EAAVuLkC;moZ5Co/CxCkD0G;CAAAAG;6DAYAC8G;CAAAAG;2DAYACuD;CAAAAG;6DAYiBC2D;CAAAAG;kJgC3+BgC5DU;igBIM/ByBM;" - } -} diff --git a/docs/api/flutter/static-assets/favicon.png b/docs/api/flutter/static-assets/favicon.png deleted file mode 100644 index 43d2ffa079ca147a221437817dbc694d66a2a302..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1767 zcmVr1gM)#AhSs$=eK0WK)CF2vH5m*T78Vv7 zOqGGvxA(cvvG46mUuvh$T1!8DmE**HzxO9;TsuQliJN|J!pK@zgpAc6W;K`ZbSrnoP`wF$fl7_5*8Ivypwf=W;~ z;08%MQORYPC_tGHZSh$O#Av43|^d-UX&HM!T~7!)g1(@JfEf{VV=B< z1V2h$vz|_)(42Iv;nMQ6gnaC=x-iE)V9>bg95MTIge3HB2W~Qqm*!+BpztvG$qKPZI96W} zvtB&GrNG5*kOai6|CR7-+*88m$TiE!O#Aqvg{$I60STah90fcj;bJTAHe50;DvqB` zEg>!%3Dgd1>303*qUn95wS&WE(*hLuC37)V?aQjQ(>?on4V>`^}$4&P2qUwF63p3!p z6R>6i5YrB(Dm-K?OMsE#XJVfc&SVMlTc3)@NKU0J3269ELe@xN0Za64hocS>SoY(& zL%m;r$g#En;{)>X$|7Ng63+K0K^DLzXfDCDx@#YPVSI{DxIP(XJHy#-j`B3b#X_yixgMa&bn3s?yPcssC4`0@Pr z>UDqkrA2oMvH(^Il;ArzoKINx_2)YKwKcf{c=joHgRLFHM+xq^ZVMp3+9h+pM_8DNoMAB-dVobWmYAS9rt1as~o-UgNSX!>_*0eKDx64<-L zsr_Sf&ksWK5X_wO=HsvVW@R@4avN{~b`kO)Q2hp=EFi=-pa;L0N~k1s7QiKN5q3y| z{H02#@|Qmd>8SNrVChicf`ASZgo+R(>{|f;A|&P#WC45@h!O<2gp5n*5WLs|%h5Io z&-zA4k|2tpV}-BR_;rW=0{Hbbr8g2rC_$(INdgxkz-9uI;7AhAx(eXe)2I^YTj5fu z07-%@V%uQ+#@-^?#TPmIvVf-~Xcr}rfKnDf$id05c9_^NzK{etcv%3Kz^)CFfYM7u z0sTc>5&YuI)(f)z1qhX(H3Ggi0-)qG;MpQ%*z;uxJkb6E_~m7Pp-})}1w7y{P|87X zMF?8JdR00$fprxiY?Jv$f)^#)PoTa$P7;P^(nEroXQBYUjX$q968u%Jy_6(e-Iwpz z`wQ&juE(vPtb`I*EA&`h0mZHYjw%V!O;ZVLl+daK6k%2i_w{N+cwBf+b515f%gmO% z0;CNdCA9us9ZyP?@Hi6?I4mR~j0z_-S>8&HnB#ImfGojJKnEEBu4V8D90ETn>T?(4 zMG`tr=$)vA?}qayISJ<{js z)mqSPcf)OyC94E3VQ2vf2>>`6^tPFngqTYhz5-+c150@O0%QqqUjRvn1qp9gfGmM1 zUw{G;1RSy*Qj(CpFloi)@B(OKcajFkv|3YK_es*=t)6!)-Mumr002ov JPDHLkV1ksy9Tflo diff --git a/docs/api/flutter/static-assets/github.css b/docs/api/flutter/static-assets/github.css deleted file mode 100644 index 791932b..0000000 --- a/docs/api/flutter/static-assets/github.css +++ /dev/null @@ -1,99 +0,0 @@ -/* - -github.com style (c) Vasily Polovnyov - -*/ - -.hljs { - display: block; - overflow-x: auto; - padding: 0.5em; - color: #333; - background: #f8f8f8; -} - -.hljs-comment, -.hljs-quote { - color: #998; - font-style: italic; -} - -.hljs-keyword, -.hljs-selector-tag, -.hljs-subst { - color: #333; - font-weight: bold; -} - -.hljs-number, -.hljs-literal, -.hljs-variable, -.hljs-template-variable, -.hljs-tag .hljs-attr { - color: #008080; -} - -.hljs-string, -.hljs-doctag { - color: #d14; -} - -.hljs-title, -.hljs-section, -.hljs-selector-id { - color: #900; - font-weight: bold; -} - -.hljs-subst { - font-weight: normal; -} - -.hljs-type, -.hljs-class .hljs-title { - color: #458; - font-weight: bold; -} - -.hljs-tag, -.hljs-name, -.hljs-attribute { - color: #000080; - font-weight: normal; -} - -.hljs-regexp, -.hljs-link { - color: #009926; -} - -.hljs-symbol, -.hljs-bullet { - color: #990073; -} - -.hljs-built_in, -.hljs-builtin-name { - color: #0086b3; -} - -.hljs-meta { - color: #999; - font-weight: bold; -} - -.hljs-deletion { - background: #fdd; -} - -.hljs-addition { - background: #dfd; -} - -.hljs-emphasis { - font-style: italic; -} - -.hljs-strong { - font-weight: bold; -} diff --git a/docs/api/flutter/static-assets/highlight.pack.js b/docs/api/flutter/static-assets/highlight.pack.js deleted file mode 100644 index 3cf5abc..0000000 --- a/docs/api/flutter/static-assets/highlight.pack.js +++ /dev/null @@ -1,780 +0,0 @@ -/*! - Highlight.js v11.8.0 (git: d27be507cb) - (c) 2006-2023 Ivan Sagalaev and other contributors - License: BSD-3-Clause - */ -var hljs=function(){"use strict";function e(n){ -return n instanceof Map?n.clear=n.delete=n.set=()=>{ -throw Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=()=>{ -throw Error("set is read-only") -}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach((t=>{ -const a=n[t],i=typeof a;"object"!==i&&"function"!==i||Object.isFrozen(a)||e(a) -})),n}class n{constructor(e){ -void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} -ignoreMatch(){this.isMatchIgnored=!0}}function t(e){ -return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") -}function a(e,...n){const t=Object.create(null);for(const n in e)t[n]=e[n] -;return n.forEach((e=>{for(const n in e)t[n]=e[n]})),t}const i=e=>!!e.scope -;class s{constructor(e,n){ -this.buffer="",this.classPrefix=n.classPrefix,e.walk(this)}addText(e){ -this.buffer+=t(e)}openNode(e){if(!i(e))return;const n=((e,{prefix:n})=>{ -if(e.startsWith("language:"))return e.replace("language:","language-") -;if(e.includes(".")){const t=e.split(".") -;return[`${n}${t.shift()}`,...t.map(((e,n)=>`${e}${"_".repeat(n+1)}`))].join(" ") -}return`${n}${e}`})(e.scope,{prefix:this.classPrefix});this.span(n)} -closeNode(e){i(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ -this.buffer+=``}}const r=(e={})=>{const n={children:[]} -;return Object.assign(n,e),n};class o{constructor(){ -this.rootNode=r(),this.stack=[this.rootNode]}get top(){ -return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ -this.top.children.push(e)}openNode(e){const n=r({scope:e}) -;this.add(n),this.stack.push(n)}closeNode(){ -if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ -for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} -walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,n){ -return"string"==typeof n?e.addText(n):n.children&&(e.openNode(n), -n.children.forEach((n=>this._walk(e,n))),e.closeNode(n)),e}static _collapse(e){ -"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ -o._collapse(e)})))}}class l extends o{constructor(e){super(),this.options=e} -addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ -this.closeNode()}__addSublanguage(e,n){const t=e.root -;n&&(t.scope="language:"+n),this.add(t)}toHTML(){ -return new s(this,this.options).value()}finalize(){ -return this.closeAllNodes(),!0}}function c(e){ -return e?"string"==typeof e?e:e.source:null}function d(e){return b("(?=",e,")")} -function g(e){return b("(?:",e,")*")}function u(e){return b("(?:",e,")?")} -function b(...e){return e.map((e=>c(e))).join("")}function m(...e){const n=(e=>{ -const n=e[e.length-1] -;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} -})(e);return"("+(n.capture?"":"?:")+e.map((e=>c(e))).join("|")+")"} -function p(e){return RegExp(e.toString()+"|").exec("").length-1} -const h=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ -;function f(e,{joinWith:n}){let t=0;return e.map((e=>{t+=1;const n=t -;let a=c(e),i="";for(;a.length>0;){const e=h.exec(a);if(!e){i+=a;break} -i+=a.substring(0,e.index), -a=a.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+(Number(e[1])+n):(i+=e[0], -"("===e[0]&&t++)}return i})).map((e=>`(${e})`)).join(n)} -const _="[a-zA-Z]\\w*",E="[a-zA-Z_]\\w*",N="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",w="\\b(0b[01]+)",v={ -begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'", -illegal:"\\n",contains:[v]},x={scope:"string",begin:'"',end:'"',illegal:"\\n", -contains:[v]},O=(e,n,t={})=>{const i=a({scope:"comment",begin:e,end:n, -contains:[]},t);i.contains.push({scope:"doctag", -begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", -end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) -;const s=m("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) -;return i.contains.push({begin:b(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i -},S=O("//","$"),A=O("/\\*","\\*/"),M=O("#","$");var C=Object.freeze({ -__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:_,UNDERSCORE_IDENT_RE:E, -NUMBER_RE:N,C_NUMBER_RE:y,BINARY_NUMBER_RE:w, -RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", -SHEBANG:(e={})=>{const n=/^#![ ]*\// -;return e.binary&&(e.begin=b(n,/.*\b/,e.binary,/\b.*/)),a({scope:"meta",begin:n, -end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)}, -BACKSLASH_ESCAPE:v,APOS_STRING_MODE:k,QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:{ -begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ -},COMMENT:O,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:A,HASH_COMMENT_MODE:M, -NUMBER_MODE:{scope:"number",begin:N,relevance:0},C_NUMBER_MODE:{scope:"number", -begin:y,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:w,relevance:0}, -REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, -end:/\/[gimuy]*/,illegal:/\n/,contains:[v,{begin:/\[/,end:/\]/,relevance:0, -contains:[v]}]}]},TITLE_MODE:{scope:"title",begin:_,relevance:0}, -UNDERSCORE_TITLE_MODE:{scope:"title",begin:E,relevance:0},METHOD_GUARD:{ -begin:"\\.\\s*"+E,relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ -"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{ -n.data._beginMatch!==e[1]&&n.ignoreMatch()}})});function T(e,n){ -"."===e.input[e.index-1]&&n.ignoreMatch()}function R(e,n){ -void 0!==e.className&&(e.scope=e.className,delete e.className)}function D(e,n){ -n&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", -e.__beforeBegin=T,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, -void 0===e.relevance&&(e.relevance=0))}function I(e,n){ -Array.isArray(e.illegal)&&(e.illegal=m(...e.illegal))}function B(e,n){ -if(e.match){ -if(e.begin||e.end)throw Error("begin & end are not supported with match") -;e.begin=e.match,delete e.match}}function L(e,n){ -void 0===e.relevance&&(e.relevance=1)}const $=(e,n)=>{if(!e.beforeMatch)return -;if(e.starts)throw Error("beforeMatch cannot be used with starts") -;const t=Object.assign({},e);Object.keys(e).forEach((n=>{delete e[n] -})),e.keywords=t.keywords,e.begin=b(t.beforeMatch,d(t.begin)),e.starts={ -relevance:0,contains:[Object.assign(t,{endsParent:!0})] -},e.relevance=0,delete t.beforeMatch -},F=["of","and","for","in","not","or","if","then","parent","list","value"],z="keyword" -;function U(e,n,t=z){const a=Object.create(null) -;return"string"==typeof e?i(t,e.split(" ")):Array.isArray(e)?i(t,e):Object.keys(e).forEach((t=>{ -Object.assign(a,U(e[t],n,t))})),a;function i(e,t){ -n&&(t=t.map((e=>e.toLowerCase()))),t.forEach((n=>{const t=n.split("|") -;a[t[0]]=[e,j(t[0],t[1])]}))}}function j(e,n){ -return n?Number(n):(e=>F.includes(e.toLowerCase()))(e)?0:1}const P={},K=e=>{ -console.error(e)},H=(e,...n)=>{console.log("WARN: "+e,...n)},Z=(e,n)=>{ -P[`${e}/${n}`]||(console.log(`Deprecated as of ${e}. ${n}`),P[`${e}/${n}`]=!0) -},G=Error();function q(e,n,{key:t}){let a=0;const i=e[t],s={},r={} -;for(let e=1;e<=n.length;e++)r[e+a]=i[e],s[e+a]=!0,a+=p(n[e-1]) -;e[t]=r,e[t]._emit=s,e[t]._multi=!0}function W(e){(e=>{ -e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, -delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ -_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope -}),(e=>{if(Array.isArray(e.begin)){ -if(e.skip||e.excludeBegin||e.returnBegin)throw K("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), -G -;if("object"!=typeof e.beginScope||null===e.beginScope)throw K("beginScope must be object"), -G;q(e,e.begin,{key:"beginScope"}),e.begin=f(e.begin,{joinWith:""})}})(e),(e=>{ -if(Array.isArray(e.end)){ -if(e.skip||e.excludeEnd||e.returnEnd)throw K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), -G -;if("object"!=typeof e.endScope||null===e.endScope)throw K("endScope must be object"), -G;q(e,e.end,{key:"endScope"}),e.end=f(e.end,{joinWith:""})}})(e)}function X(e){ -function n(n,t){ -return RegExp(c(n),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(t?"g":"")) -}class t{constructor(){ -this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} -addRule(e,n){ -n.position=this.position++,this.matchIndexes[this.matchAt]=n,this.regexes.push([n,e]), -this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) -;const e=this.regexes.map((e=>e[1]));this.matcherRe=n(f(e,{joinWith:"|" -}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex -;const n=this.matcherRe.exec(e);if(!n)return null -;const t=n.findIndex(((e,n)=>n>0&&void 0!==e)),a=this.matchIndexes[t] -;return n.splice(0,t),Object.assign(n,a)}}class i{constructor(){ -this.rules=[],this.multiRegexes=[], -this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ -if(this.multiRegexes[e])return this.multiRegexes[e];const n=new t -;return this.rules.slice(e).forEach((([e,t])=>n.addRule(e,t))), -n.compile(),this.multiRegexes[e]=n,n}resumingScanAtSamePosition(){ -return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,n){ -this.rules.push([e,n]),"begin"===n.type&&this.count++}exec(e){ -const n=this.getMatcher(this.regexIndex);n.lastIndex=this.lastIndex -;let t=n.exec(e) -;if(this.resumingScanAtSamePosition())if(t&&t.index===this.lastIndex);else{ -const n=this.getMatcher(0);n.lastIndex=this.lastIndex+1,t=n.exec(e)} -return t&&(this.regexIndex+=t.position+1, -this.regexIndex===this.count&&this.considerAll()),t}} -if(e.compilerExtensions||(e.compilerExtensions=[]), -e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") -;return e.classNameAliases=a(e.classNameAliases||{}),function t(s,r){const o=s -;if(s.isCompiled)return o -;[R,B,W,$].forEach((e=>e(s,r))),e.compilerExtensions.forEach((e=>e(s,r))), -s.__beforeBegin=null,[D,I,L].forEach((e=>e(s,r))),s.isCompiled=!0;let l=null -;return"object"==typeof s.keywords&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords), -l=s.keywords.$pattern, -delete s.keywords.$pattern),l=l||/\w+/,s.keywords&&(s.keywords=U(s.keywords,e.case_insensitive)), -o.keywordPatternRe=n(l,!0), -r&&(s.begin||(s.begin=/\B|\b/),o.beginRe=n(o.begin),s.end||s.endsWithParent||(s.end=/\B|\b/), -s.end&&(o.endRe=n(o.end)), -o.terminatorEnd=c(o.end)||"",s.endsWithParent&&r.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+r.terminatorEnd)), -s.illegal&&(o.illegalRe=n(s.illegal)), -s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((n=>a(e,{ -variants:null},n)))),e.cachedVariants?e.cachedVariants:Q(e)?a(e,{ -starts:e.starts?a(e.starts):null -}):Object.isFrozen(e)?a(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{t(e,o) -})),s.starts&&t(s.starts,r),o.matcher=(e=>{const n=new i -;return e.contains.forEach((e=>n.addRule(e.begin,{rule:e,type:"begin" -}))),e.terminatorEnd&&n.addRule(e.terminatorEnd,{type:"end" -}),e.illegal&&n.addRule(e.illegal,{type:"illegal"}),n})(o),o}(e)}function Q(e){ -return!!e&&(e.endsWithParent||Q(e.starts))}class V extends Error{ -constructor(e,n){super(e),this.name="HTMLInjectionError",this.html=n}} -const J=t,Y=a,ee=Symbol("nomatch"),ne=t=>{ -const a=Object.create(null),i=Object.create(null),s=[];let r=!0 -;const o="Could not find the language '{}', did you forget to load/include a language module?",c={ -disableAutodetect:!0,name:"Plain text",contains:[]};let p={ -ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, -languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", -cssSelector:"pre code",languages:null,__emitter:l};function h(e){ -return p.noHighlightRe.test(e)}function f(e,n,t){let a="",i="" -;"object"==typeof n?(a=e, -t=n.ignoreIllegals,i=n.language):(Z("10.7.0","highlight(lang, code, ...args) has been deprecated."), -Z("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), -i=e,a=n),void 0===t&&(t=!0);const s={code:a,language:i};O("before:highlight",s) -;const r=s.result?s.result:_(s.language,s.code,t) -;return r.code=s.code,O("after:highlight",r),r}function _(e,t,i,s){ -const l=Object.create(null);function c(){if(!O.keywords)return void A.addText(M) -;let e=0;O.keywordPatternRe.lastIndex=0;let n=O.keywordPatternRe.exec(M),t="" -;for(;n;){t+=M.substring(e,n.index) -;const i=w.case_insensitive?n[0].toLowerCase():n[0],s=(a=i,O.keywords[a]);if(s){ -const[e,a]=s -;if(A.addText(t),t="",l[i]=(l[i]||0)+1,l[i]<=7&&(C+=a),e.startsWith("_"))t+=n[0];else{ -const t=w.classNameAliases[e]||e;g(n[0],t)}}else t+=n[0] -;e=O.keywordPatternRe.lastIndex,n=O.keywordPatternRe.exec(M)}var a -;t+=M.substring(e),A.addText(t)}function d(){null!=O.subLanguage?(()=>{ -if(""===M)return;let e=null;if("string"==typeof O.subLanguage){ -if(!a[O.subLanguage])return void A.addText(M) -;e=_(O.subLanguage,M,!0,S[O.subLanguage]),S[O.subLanguage]=e._top -}else e=E(M,O.subLanguage.length?O.subLanguage:null) -;O.relevance>0&&(C+=e.relevance),A.__addSublanguage(e._emitter,e.language) -})():c(),M=""}function g(e,n){ -""!==e&&(A.startScope(n),A.addText(e),A.endScope())}function u(e,n){let t=1 -;const a=n.length-1;for(;t<=a;){if(!e._emit[t]){t++;continue} -const a=w.classNameAliases[e[t]]||e[t],i=n[t];a?g(i,a):(M=i,c(),M=""),t++}} -function b(e,n){ -return e.scope&&"string"==typeof e.scope&&A.openNode(w.classNameAliases[e.scope]||e.scope), -e.beginScope&&(e.beginScope._wrap?(g(M,w.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), -M=""):e.beginScope._multi&&(u(e.beginScope,n),M="")),O=Object.create(e,{parent:{ -value:O}}),O}function m(e,t,a){let i=((e,n)=>{const t=e&&e.exec(n) -;return t&&0===t.index})(e.endRe,a);if(i){if(e["on:end"]){const a=new n(e) -;e["on:end"](t,a),a.isMatchIgnored&&(i=!1)}if(i){ -for(;e.endsParent&&e.parent;)e=e.parent;return e}} -if(e.endsWithParent)return m(e.parent,t,a)}function h(e){ -return 0===O.matcher.regexIndex?(M+=e[0],1):(D=!0,0)}function f(e){ -const n=e[0],a=t.substring(e.index),i=m(O,e,a);if(!i)return ee;const s=O -;O.endScope&&O.endScope._wrap?(d(), -g(n,O.endScope._wrap)):O.endScope&&O.endScope._multi?(d(), -u(O.endScope,e)):s.skip?M+=n:(s.returnEnd||s.excludeEnd||(M+=n), -d(),s.excludeEnd&&(M=n));do{ -O.scope&&A.closeNode(),O.skip||O.subLanguage||(C+=O.relevance),O=O.parent -}while(O!==i.parent);return i.starts&&b(i.starts,e),s.returnEnd?0:n.length} -let N={};function y(a,s){const o=s&&s[0];if(M+=a,null==o)return d(),0 -;if("begin"===N.type&&"end"===s.type&&N.index===s.index&&""===o){ -if(M+=t.slice(s.index,s.index+1),!r){const n=Error(`0 width match regex (${e})`) -;throw n.languageName=e,n.badRule=N.rule,n}return 1} -if(N=s,"begin"===s.type)return(e=>{ -const t=e[0],a=e.rule,i=new n(a),s=[a.__beforeBegin,a["on:begin"]] -;for(const n of s)if(n&&(n(e,i),i.isMatchIgnored))return h(t) -;return a.skip?M+=t:(a.excludeBegin&&(M+=t), -d(),a.returnBegin||a.excludeBegin||(M=t)),b(a,e),a.returnBegin?0:t.length})(s) -;if("illegal"===s.type&&!i){ -const e=Error('Illegal lexeme "'+o+'" for mode "'+(O.scope||"")+'"') -;throw e.mode=O,e}if("end"===s.type){const e=f(s);if(e!==ee)return e} -if("illegal"===s.type&&""===o)return 1 -;if(R>1e5&&R>3*s.index)throw Error("potential infinite loop, way more iterations than matches") -;return M+=o,o.length}const w=v(e) -;if(!w)throw K(o.replace("{}",e)),Error('Unknown language: "'+e+'"') -;const k=X(w);let x="",O=s||k;const S={},A=new p.__emitter(p);(()=>{const e=[] -;for(let n=O;n!==w;n=n.parent)n.scope&&e.unshift(n.scope) -;e.forEach((e=>A.openNode(e)))})();let M="",C=0,T=0,R=0,D=!1;try{ -if(w.__emitTokens)w.__emitTokens(t,A);else{for(O.matcher.considerAll();;){ -R++,D?D=!1:O.matcher.considerAll(),O.matcher.lastIndex=T -;const e=O.matcher.exec(t);if(!e)break;const n=y(t.substring(T,e.index),e) -;T=e.index+n}y(t.substring(T))}return A.finalize(),x=A.toHTML(),{language:e, -value:x,relevance:C,illegal:!1,_emitter:A,_top:O}}catch(n){ -if(n.message&&n.message.includes("Illegal"))return{language:e,value:J(t), -illegal:!0,relevance:0,_illegalBy:{message:n.message,index:T, -context:t.slice(T-100,T+100),mode:n.mode,resultSoFar:x},_emitter:A};if(r)return{ -language:e,value:J(t),illegal:!1,relevance:0,errorRaised:n,_emitter:A,_top:O} -;throw n}}function E(e,n){n=n||p.languages||Object.keys(a);const t=(e=>{ -const n={value:J(e),illegal:!1,relevance:0,_top:c,_emitter:new p.__emitter(p)} -;return n._emitter.addText(e),n})(e),i=n.filter(v).filter(x).map((n=>_(n,e,!1))) -;i.unshift(t);const s=i.sort(((e,n)=>{ -if(e.relevance!==n.relevance)return n.relevance-e.relevance -;if(e.language&&n.language){if(v(e.language).supersetOf===n.language)return 1 -;if(v(n.language).supersetOf===e.language)return-1}return 0})),[r,o]=s,l=r -;return l.secondBest=o,l}function N(e){let n=null;const t=(e=>{ -let n=e.className+" ";n+=e.parentNode?e.parentNode.className:"" -;const t=p.languageDetectRe.exec(n);if(t){const n=v(t[1]) -;return n||(H(o.replace("{}",t[1])), -H("Falling back to no-highlight mode for this block.",e)),n?t[1]:"no-highlight"} -return n.split(/\s+/).find((e=>h(e)||v(e)))})(e);if(h(t))return -;if(O("before:highlightElement",{el:e,language:t -}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) -;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), -console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), -console.warn("The element with unescaped HTML:"), -console.warn(e)),p.throwUnescapedHTML))throw new V("One of your code blocks includes unescaped HTML.",e.innerHTML) -;n=e;const a=n.textContent,s=t?f(a,{language:t,ignoreIllegals:!0}):E(a) -;e.innerHTML=s.value,e.dataset.highlighted="yes",((e,n,t)=>{const a=n&&i[n]||t -;e.classList.add("hljs"),e.classList.add("language-"+a) -})(e,t,s.language),e.result={language:s.language,re:s.relevance, -relevance:s.relevance},s.secondBest&&(e.secondBest={ -language:s.secondBest.language,relevance:s.secondBest.relevance -}),O("after:highlightElement",{el:e,result:s,text:a})}let y=!1;function w(){ -"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(N):y=!0 -}function v(e){return e=(e||"").toLowerCase(),a[e]||a[i[e]]} -function k(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ -i[e.toLowerCase()]=n}))}function x(e){const n=v(e) -;return n&&!n.disableAutodetect}function O(e,n){const t=e;s.forEach((e=>{ -e[t]&&e[t](n)}))} -"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ -y&&w()}),!1),Object.assign(t,{highlight:f,highlightAuto:E,highlightAll:w, -highlightElement:N, -highlightBlock:e=>(Z("10.7.0","highlightBlock will be removed entirely in v12.0"), -Z("10.7.0","Please use highlightElement now."),N(e)),configure:e=>{p=Y(p,e)}, -initHighlighting:()=>{ -w(),Z("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, -initHighlightingOnLoad:()=>{ -w(),Z("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") -},registerLanguage:(e,n)=>{let i=null;try{i=n(t)}catch(n){ -if(K("Language definition for '{}' could not be registered.".replace("{}",e)), -!r)throw n;K(n),i=c} -i.name||(i.name=e),a[e]=i,i.rawDefinition=n.bind(null,t),i.aliases&&k(i.aliases,{ -languageName:e})},unregisterLanguage:e=>{delete a[e] -;for(const n of Object.keys(i))i[n]===e&&delete i[n]}, -listLanguages:()=>Object.keys(a),getLanguage:v,registerAliases:k, -autoDetection:x,inherit:Y,addPlugin:e=>{(e=>{ -e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=n=>{ -e["before:highlightBlock"](Object.assign({block:n.el},n)) -}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=n=>{ -e["after:highlightBlock"](Object.assign({block:n.el},n))})})(e),s.push(e)}, -removePlugin:e=>{const n=s.indexOf(e);-1!==n&&s.splice(n,1)}}),t.debugMode=()=>{ -r=!1},t.safeMode=()=>{r=!0},t.versionString="11.8.0",t.regex={concat:b, -lookahead:d,either:m,optional:u,anyNumberOfTimes:g} -;for(const n in C)"object"==typeof C[n]&&e(C[n]);return Object.assign(t,C),t -},te=ne({});te.newInstance=()=>ne({});var ae=te -;const ie=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],se=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],re=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],oe=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],le=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse() -;var ce="[0-9](_*[0-9])*",de=`\\.(${ce})`,ge="[0-9a-fA-F](_*[0-9a-fA-F])*",ue={ -className:"number",variants:[{ -begin:`(\\b(${ce})((${de})|\\.)?|(${de}))[eE][+-]?(${ce})[fFdD]?\\b`},{ -begin:`\\b(${ce})((${de})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ -begin:`(${de})[fFdD]?\\b`},{begin:`\\b(${ce})[fFdD]\\b`},{ -begin:`\\b0[xX]((${ge})\\.?|(${ge})?\\.(${ge}))[pP][+-]?(${ce})[fFdD]?\\b`},{ -begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${ge})[lL]?\\b`},{ -begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], -relevance:0};function be(e,n,t){return-1===t?"":e.replace(n,(a=>be(e,n,t-1)))} -const me="[A-Za-z$_][0-9A-Za-z$_]*",pe=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],he=["true","false","null","undefined","NaN","Infinity"],fe=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],_e=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Ee=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ne=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ye=[].concat(Ee,fe,_e),we=e=>b(/\b/,e,/\w$/.test(e)?/\b/:/\B/),ve=["Protocol","Type"].map(we),ke=["init","self"].map(we),xe=["Any","Self"],Oe=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","distributed","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Se=["false","nil","true"],Ae=["assignment","associativity","higherThan","left","lowerThan","none","right"],Me=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Ce=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Te=m(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Re=m(Te,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),De=b(Te,Re,"*"),Ie=m(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Be=m(Ie,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Le=b(Ie,Be,"*"),$e=b(/[A-Z]/,Be,"*"),Fe=["autoclosure",b(/convention\(/,m("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",b(/objc\(/,Le,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],ze=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] -;var Ue=Object.freeze({__proto__:null,grmr_bash:e=>{const n=e.regex,t={},a={ -begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]} -;Object.assign(t,{className:"variable",variants:[{ -begin:n.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const i={ -className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s={ -begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, -end:/(\w+)/,className:"string"})]}},r={className:"string",begin:/"/,end:/"/, -contains:[e.BACKSLASH_ESCAPE,t,i]};i.contains.push(r);const o={begin:/\$?\(\(/, -end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] -},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 -}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, -contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ -name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, -keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], -literal:["true","false"], -built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] -},contains:[l,e.SHEBANG(),c,o,e.HASH_COMMENT_MODE,s,{match:/(\/[a-z._-]+)+/},r,{ -className:"",begin:/\\"/},{className:"string",begin:/'/,end:/'/},t]}}, -grmr_c:e=>{const n=e.regex,t=e.COMMENT("//","$",{contains:[{begin:/\\\n/}] -}),a="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="("+a+"|"+n.optional(i)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",r={ -className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{ -match:/\batomic_[a-z]{3,6}\b/}]},o={className:"string",variants:[{ -begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{ -begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", -end:"'",illegal:"."},e.END_SAME_AS_BEGIN({ -begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={ -className:"number",variants:[{begin:"\\b(0b[01']+)"},{ -begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" -},{ -begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" -}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ -keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" -},contains:[{begin:/\\\n/,relevance:0},e.inherit(o,{className:"string"}),{ -className:"string",begin:/<.*?>/},t,e.C_BLOCK_COMMENT_MODE]},d={ -className:"title",begin:n.optional(i)+e.IDENT_RE,relevance:0 -},g=n.optional(i)+e.IDENT_RE+"\\s*\\(",u={ -keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"], -type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","const","static","complex","bool","imaginary"], -literal:"true false NULL", -built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" -},b=[c,r,t,e.C_BLOCK_COMMENT_MODE,l,o],m={variants:[{begin:/=/,end:/;/},{ -begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], -keywords:u,contains:b.concat([{begin:/\(/,end:/\)/,keywords:u, -contains:b.concat(["self"]),relevance:0}]),relevance:0},p={ -begin:"("+s+"[\\*&\\s]+)+"+g,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, -keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:a,keywords:u,relevance:0},{ -begin:g,returnBegin:!0,contains:[e.inherit(d,{className:"title.function"})], -relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/, -keywords:u,relevance:0,contains:[t,e.C_BLOCK_COMMENT_MODE,o,l,r,{begin:/\(/, -end:/\)/,keywords:u,relevance:0,contains:["self",t,e.C_BLOCK_COMMENT_MODE,o,l,r] -}]},r,t,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:u, -disableAutodetect:!0,illegal:"=]/,contains:[{ -beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c, -strings:o,keywords:u}}},grmr_css:e=>{const n=e.regex,t=(e=>({IMPORTANT:{ -scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{ -scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/}, -FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/}, -ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", -contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ -scope:"number", -begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", -relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/} -}))(e),a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS", -case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, -classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,{ -begin:/-(webkit|moz|ms|o)-(?=[a-z])/},t.CSS_NUMBER_MODE,{ -className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{ -className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 -},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ -begin:":("+re.join("|")+")"},{begin:":(:)?("+oe.join("|")+")"}] -},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+le.join("|")+")\\b"},{ -begin:/:/,end:/[;}{]/, -contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...a,{ -begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" -},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0, -excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:n.lookahead(/@/),end:"[{;]", -relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/ -},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{ -$pattern:/[a-z-]+/,keyword:"and or not only",attribute:se.join(" ")},contains:[{ -begin:/[a-z-]+(?=:)/,className:"attribute"},...a,t.CSS_NUMBER_MODE]}]},{ -className:"selector-tag",begin:"\\b("+ie.join("|")+")\\b"}]}},grmr_xml:e=>{ -const n=e.regex,t=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),a={ -className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},i={begin:/\s/, -contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] -},s=e.inherit(i,{begin:/\(/,end:/\)/}),r=e.inherit(e.APOS_STRING_MODE,{ -className:"string"}),o=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={ -endsWithParent:!0,illegal:/`]+/}]}]}]};return{ -name:"HTML, XML", -aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], -case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[i,o,r,s,{begin:/\[/,end:/\]/,contains:[{ -className:"meta",begin://,contains:[i,s,o,r]}]}] -},e.COMMENT(//,{relevance:10}),{begin://, -relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/, -relevance:10,contains:[o]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag", -begin:/)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{ -end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", -begin:/)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{ -end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ -className:"tag",begin:/<>|<\/>/},{className:"tag", -begin:n.concat(//,/>/,/\s/)))), -end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:l}]},{ -className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(t,/>/))),contains:[{ -className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]} -},grmr_markdown:e=>{const n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml", -relevance:0},t={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{ -begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, -relevance:2},{ -begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), -relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ -begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/ -},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, -returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", -excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", -end:"\\]",excludeBegin:!0,excludeEnd:!0}]},a={className:"strong",contains:[], -variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}] -},i={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{ -begin:/_(?![_\s])/,end:/_/,relevance:0}]},s=e.inherit(a,{contains:[] -}),r=e.inherit(i,{contains:[]});a.contains.push(r),i.contains.push(s) -;let o=[n,t];return[a,i,s,r].forEach((e=>{e.contains=e.contains.concat(o) -})),o=o.concat(a,i),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ -className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:o},{ -begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", -contains:o}]}]},n,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", -end:"\\s+",excludeEnd:!0},a,i,{className:"quote",begin:"^>\\s+",contains:o, -end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ -begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ -begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", -contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ -begin:"^[-\\*]{3,}",end:"$"},t,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ -className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ -className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}},grmr_dart:e=>{ -const n={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},t={ -className:"subst",variants:[{begin:/\$\{/,end:/\}/}], -keywords:"true false null this is new super"},a={className:"string",variants:[{ -begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'", -illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''", -contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"""',end:'"""', -contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:"'",end:"'",illegal:"\\n", -contains:[e.BACKSLASH_ESCAPE,n,t]},{begin:'"',end:'"',illegal:"\\n", -contains:[e.BACKSLASH_ESCAPE,n,t]}]};t.contains=[e.C_NUMBER_MODE,a] -;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],s=i.map((e=>e+"?")) -;return{name:"Dart",keywords:{ -keyword:["abstract","as","assert","async","await","base","break","case","catch","class","const","continue","covariant","default","deferred","do","dynamic","else","enum","export","extends","extension","external","factory","false","final","finally","for","Function","get","hide","if","implements","import","in","interface","is","late","library","mixin","new","null","on","operator","part","required","rethrow","return","sealed","set","show","static","super","switch","sync","this","throw","true","try","typedef","var","void","when","while","with","yield"], -built_in:i.concat(s).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]), -$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, -contains:[a,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 -}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", -end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ -className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, -contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] -},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}, -grmr_diff:e=>{const n=e.regex;return{name:"Diff",aliases:["patch"],contains:[{ -className:"meta",relevance:10, -match:n.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/) -},{className:"comment",variants:[{ -begin:n.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/), -end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{ -className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, -end:/$/}]}},grmr_java:e=>{ -const n=e.regex,t="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",a=t+be("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),i={ -keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"], -literal:["false","true","null"], -type:["char","boolean","long","float","int","byte","short","double"], -built_in:["super","this"]},s={className:"meta",begin:"@"+t,contains:[{ -begin:/\(/,end:/\)/,contains:["self"]}]},r={className:"params",begin:/\(/, -end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0} -;return{name:"Java",aliases:["jsp"],keywords:i,illegal:/<\/|#/, -contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, -relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ -begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 -},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/, -className:"string",contains:[e.BACKSLASH_ESCAPE] -},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ -match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{ -1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{ -begin:[n.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=(?!=)/],className:{1:"type", -3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword", -3:"title.class"},contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ -beginKeywords:"new throw return else",relevance:0},{ -begin:["(?:"+a+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{ -2:"title.function"},keywords:i,contains:[{className:"params",begin:/\(/, -end:/\)/,keywords:i,relevance:0, -contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,ue,e.C_BLOCK_COMMENT_MODE] -},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},ue,s]}},grmr_javascript:e=>{ -const n=e.regex,t=me,a={begin:/<[A-Za-z0-9\\._:-]+/, -end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{ -const t=e[0].length+e.index,a=e.input[t] -;if("<"===a||","===a)return void n.ignoreMatch();let i -;">"===a&&(((e,{after:n})=>{const t="",S={ -match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(O)], -keywords:"async",className:{1:"keyword",3:"title.function"},contains:[_]} -;return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{ -PARAMS_CONTAINS:f,CLASS_REFERENCE:N},illegal:/#(?![$_A-z])/, -contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{ -label:"use_strict",className:"meta",relevance:10, -begin:/^\s*['"]use (strict|asm)['"]/ -},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,g,u,b,m,{match:/\$\d+/},l,N,{ -className:"attr",begin:t+n.lookahead(":"),relevance:0},S,{ -begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", -keywords:"return throw case",relevance:0,contains:[m,e.REGEXP_MODE,{ -className:"function",begin:O,returnBegin:!0,end:"\\s*=>",contains:[{ -className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{ -className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, -excludeEnd:!0,keywords:i,contains:f}]}]},{begin:/,/,relevance:0},{match:/\s+/, -relevance:0},{variants:[{begin:"<>",end:""},{ -match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:a.begin, -"on:begin":a.isTrulyOpeningTag,end:a.end}],subLanguage:"xml",contains:[{ -begin:a.begin,end:a.end,skip:!0,contains:["self"]}]}]},y,{ -beginKeywords:"while if switch catch for"},{ -begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", -returnBegin:!0,label:"func.def",contains:[_,e.inherit(e.TITLE_MODE,{begin:t, -className:"title.function"})]},{match:/\.\.\./,relevance:0},k,{match:"\\$"+t, -relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, -contains:[_]},w,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, -className:"variable.constant"},E,x,{match:/\$[(.]/}]}},grmr_json:e=>{ -const n=["true","false","null"],t={scope:"literal",beginKeywords:n.join(" ")} -;return{name:"JSON",keywords:{literal:n},contains:[{className:"attr", -begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/, -className:"punctuation",relevance:0 -},e.QUOTE_STRING_MODE,t,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE], -illegal:"\\S"}},grmr_kotlin:e=>{const n={ -keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", -built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", -literal:"true false null"},t={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" -},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},i={ -className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string", -variants:[{begin:'"""',end:'"""(?=[^"])',contains:[i,a]},{begin:"'",end:"'", -illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, -contains:[e.BACKSLASH_ESCAPE,i,a]}]};a.contains.push(s);const r={ -className:"meta", -begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" -},o={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, -end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}] -},l=ue,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={ -variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, -contains:[]}]},g=d;return g.variants[1].contains=[d],d.variants[1].contains=[g], -{name:"Kotlin",aliases:["kt","kts"],keywords:n, -contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", -begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,{className:"keyword", -begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", -begin:/@\w+/}]}},t,r,o,{className:"function",beginKeywords:"fun",end:"[(]|$", -returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ -begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, -contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, -keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, -endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, -endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,c],relevance:0 -},e.C_LINE_COMMENT_MODE,c,r,o,s,e.C_NUMBER_MODE]},c]},{ -begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{ -3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, -illegal:"extends implements",contains:[{ -beginKeywords:"public protected internal private constructor" -},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, -excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/, -excludeBegin:!0,returnEnd:!0},r,o]},s,{className:"meta",begin:"^#!/usr/bin/env", -end:"$",illegal:"\n"},l]}},grmr_objectivec:e=>{ -const n=/[a-zA-Z@][a-zA-Z0-9_]*/,t={$pattern:n, -keyword:["@interface","@class","@protocol","@implementation"]};return{ -name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], -keywords:{"variable.language":["this","super"],$pattern:n, -keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"], -literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"], -built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"], -type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"] -},illegal:"/,end:/$/,illegal:"\\n" -},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class", -begin:"("+t.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:t, -contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE, -relevance:0}]}},grmr_plaintext:e=>({name:"Plain text",aliases:["text","txt"], -disableAutodetect:!0}),grmr_shell:e=>({name:"Shell Session", -aliases:["console","shellsession"],contains:[{className:"meta.prompt", -begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, -subLanguage:"bash"}}]}),grmr_swift:e=>{const n={match:/\s+/,relevance:0 -},t=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a=[e.C_LINE_COMMENT_MODE,t],i={ -match:[/\./,m(...ve,...ke)],className:{2:"keyword"}},s={match:b(/\./,m(...Oe)), -relevance:0},r=Oe.filter((e=>"string"==typeof e)).concat(["_|0"]),o={variants:[{ -className:"keyword", -match:m(...Oe.filter((e=>"string"!=typeof e)).concat(xe).map(we),...ke)}]},l={ -$pattern:m(/\b\w+/,/#\w+/),keyword:r.concat(Me),literal:Se},c=[i,s,o],g=[{ -match:b(/\./,m(...Ce)),relevance:0},{className:"built_in", -match:b(/\b/,m(...Ce),/(?=\()/)}],u={match:/->/,relevance:0},p=[u,{ -className:"operator",relevance:0,variants:[{match:De},{match:`\\.(\\.|${Re})+`}] -}],h="([0-9]_*)+",f="([0-9a-fA-F]_*)+",_={className:"number",relevance:0, -variants:[{match:`\\b(${h})(\\.(${h}))?([eE][+-]?(${h}))?\\b`},{ -match:`\\b0x(${f})(\\.(${f}))?([pP][+-]?(${h}))?\\b`},{match:/\b0o([0-7]_*)+\b/ -},{match:/\b0b([01]_*)+\b/}]},E=(e="")=>({className:"subst",variants:[{ -match:b(/\\/,e,/[0\\tnr"']/)},{match:b(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}] -}),N=(e="")=>({className:"subst",match:b(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/) -}),y=(e="")=>({className:"subst",label:"interpol",begin:b(/\\/,e,/\(/),end:/\)/ -}),w=(e="")=>({begin:b(e,/"""/),end:b(/"""/,e),contains:[E(e),N(e),y(e)] -}),v=(e="")=>({begin:b(e,/"/),end:b(/"/,e),contains:[E(e),y(e)]}),k={ -className:"string", -variants:[w(),w("#"),w("##"),w("###"),v(),v("#"),v("##"),v("###")]},x={ -match:b(/`/,Le,/`/)},O=[x,{className:"variable",match:/\$\d+/},{ -className:"variable",match:`\\$${Be}+`}],S=[{match:/(@|#(un)?)available/, -className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:ze, -contains:[...p,_,k]}]}},{className:"keyword",match:b(/@/,m(...Fe))},{ -className:"meta",match:b(/@/,Le)}],A={match:d(/\b[A-Z]/),relevance:0,contains:[{ -className:"type", -match:b(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,Be,"+") -},{className:"type",match:$e,relevance:0},{match:/[?!]+/,relevance:0},{ -match:/\.\.\./,relevance:0},{match:b(/\s+&\s+/,d($e)),relevance:0}]},M={ -begin://,keywords:l,contains:[...a,...c,...S,u,A]};A.contains.push(M) -;const C={begin:/\(/,end:/\)/,relevance:0,keywords:l,contains:["self",{ -match:b(Le,/\s*:/),keywords:"_|0",relevance:0 -},...a,...c,...g,...p,_,k,...O,...S,A]},T={begin://,contains:[...a,A] -},R={begin:/\(/,end:/\)/,keywords:l,contains:[{ -begin:m(d(b(Le,/\s*:/)),d(b(Le,/\s+/,Le,/\s*:/))),end:/:/,relevance:0, -contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Le}] -},...a,...c,...p,_,k,...S,A,C],endsParent:!0,illegal:/["']/},D={ -match:[/func/,/\s+/,m(x.match,Le,De)],className:{1:"keyword",3:"title.function" -},contains:[T,R,n],illegal:[/\[/,/%/]},I={ -match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"}, -contains:[T,R,n],illegal:/\[|%/},B={match:[/operator/,/\s+/,De],className:{ -1:"keyword",3:"title"}},L={begin:[/precedencegroup/,/\s+/,$e],className:{ -1:"keyword",3:"title"},contains:[A],keywords:[...Ae,...Se],end:/}/} -;for(const e of k.variants){const n=e.contains.find((e=>"interpol"===e.label)) -;n.keywords=l;const t=[...c,...g,...p,_,k,...O];n.contains=[...t,{begin:/\(/, -end:/\)/,contains:["self",...t]}]}return{name:"Swift",keywords:l, -contains:[...a,D,I,{beginKeywords:"struct protocol class extension enum actor", -end:"\\{",excludeEnd:!0,keywords:l,contains:[e.inherit(e.TITLE_MODE,{ -className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...c] -},B,L,{beginKeywords:"import",end:/$/,contains:[...a],relevance:0 -},...c,...g,...p,_,k,...O,...S,A,C]}},grmr_ruby:e=>{ -const n=e.regex,t="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",a=n.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=n.concat(a,/(::\w+)*/),s={ -"variable.constant":["__FILE__","__LINE__","__ENCODING__"], -"variable.language":["self","super"], -keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield","include","extend","prepend","public","private","protected","raise","throw"], -built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"], -literal:["true","false","nil"]},r={className:"doctag",begin:"@[A-Za-z]+"},o={ -begin:"#<",end:">"},l=[e.COMMENT("#","$",{contains:[r] -}),e.COMMENT("^=begin","^=end",{contains:[r],relevance:10 -}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/, -end:/\}/,keywords:s},d={className:"string",contains:[e.BACKSLASH_ESCAPE,c], -variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{ -begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{ -begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//, -end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{ -begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{ -begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ -begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ -begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ -begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), -contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, -contains:[e.BACKSLASH_ESCAPE,c]})]}]},g="[0-9](_?[0-9])*",u={className:"number", -relevance:0,variants:[{ -begin:`\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`},{ -begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" -},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ -begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ -begin:"\\b0(_?[0-7])+r?i?\\b"}]},b={variants:[{match:/\(\)/},{ -className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0, -keywords:s}]},m=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{ -match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class", -4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,i],scope:{ -2:"title.class"},keywords:s},{relevance:0,match:[i,/\.new[. (]/],scope:{ -1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/, -className:"variable.constant"},{relevance:0,match:a,scope:"title.class"},{ -match:[/def/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[b]},{ -begin:e.IDENT_RE+"::"},{className:"symbol", -begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", -begin:":(?!\\s)",contains:[d,{begin:t}],relevance:0},u,{className:"variable", -begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ -className:"params",begin:/\|/,end:/\|/,excludeBegin:!0,excludeEnd:!0, -relevance:0,keywords:s},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*", -keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c], -illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{ -begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[", -end:"\\][a-z]*"}]}].concat(o,l),relevance:0}].concat(o,l) -;c.contains=m,b.contains=m;const p=[{begin:/^\s*=>/,starts:{end:"$",contains:m} -},{className:"meta.prompt", -begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", -starts:{end:"$",keywords:s,contains:m}}];return l.unshift(o),{name:"Ruby", -aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/, -contains:[e.SHEBANG({binary:"ruby"})].concat(p).concat(l).concat(m)}}, -grmr_yaml:e=>{ -const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={ -className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ -},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", -variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(a,{ -variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),s={ -end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},r={begin:/\{/, -end:/\}/,contains:[s],illegal:"\\n",relevance:0},o={begin:"\\[",end:"\\]", -contains:[s],illegal:"\\n",relevance:0},l=[{className:"attr",variants:[{ -begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ -begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", -relevance:10},{className:"string", -begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ -begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, -relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type", -begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t -},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", -begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", -relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ -className:"number", -begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" -},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},r,o,a],c=[...l] -;return c.pop(),c.push(i),s.contains=c,{name:"YAML",case_insensitive:!0, -aliases:["yml"],contains:l}}});const je=ae;for(const e of Object.keys(Ue)){ -const n=e.replace("grmr_","").replace("_","-");je.registerLanguage(n,Ue[e])} -return je}() -;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs); diff --git a/docs/api/flutter/static-assets/play_button.svg b/docs/api/flutter/static-assets/play_button.svg deleted file mode 100644 index c39a2f4..0000000 --- a/docs/api/flutter/static-assets/play_button.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/api/flutter/static-assets/readme.md b/docs/api/flutter/static-assets/readme.md deleted file mode 100644 index 6221671..0000000 --- a/docs/api/flutter/static-assets/readme.md +++ /dev/null @@ -1,36 +0,0 @@ -# Dart documentation generator - -This directory includes static sources used by the Dart documentation generator -through the `dart doc` command. - -To learn more about generating and viewing the generated documentation, -check out the [`dart doc` documentation][]. - -[`dart doc` documentation]: https://dart.dev/tools/dart-doc - -## Third-party resources - -## highlight.js - -Generated from https://highlightjs.org/download/ on 2021-07-13. - -**License:** https://github.com/highlightjs/highlight.js/blob/main/LICENSE - -**Included languages:** - -* bash -* c -* css -* dart -* diff -* html, xml -* java -* javascript -* json -* kotlin -* markdown -* objective-c -* plaintext -* shell -* swift -* yaml diff --git a/docs/api/flutter/static-assets/search.svg b/docs/api/flutter/static-assets/search.svg deleted file mode 100644 index 58f4299..0000000 --- a/docs/api/flutter/static-assets/search.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/api/flutter/static-assets/styles.css b/docs/api/flutter/static-assets/styles.css deleted file mode 100644 index 5fccbc5..0000000 --- a/docs/api/flutter/static-assets/styles.css +++ /dev/null @@ -1 +0,0 @@ -:root{--main-header-height: 50px}.light-theme{--main-bg-color: #fff;--main-header-color: #eeeeee;--main-sidebar-color: #727272;--main-text-color: #111111;--main-search-bar: #fff;--main-footer-background: #111111;--main-h-text: black;--main-hyperlinks-color: #0175C2;--main-inset-bgColor: #f5f5f7;--main-inset-borderColor: #dadce0;--main-code-bg: #f8f8f8;--main-keyword-color: #333;--main-tag-color: #000080;--main-section-color: #900;--main-comment-color: #998;--main-var-color: #008080;--main-string-color: #d14;--main-icon-color: black;--alert-info-fgColor: #2058b7;--alert-tip-fgColor: #0c7927;--alert-important-fgColor: #7953bf;--alert-warning-fgColor: #955d00;--alert-error-fgColor: #c43131;color-scheme:light}.light-theme #light-theme-button{display:none}.light-theme img[src$="#gh-dark-mode-only"]{display:none}.dark-theme{--main-bg-color: #10161E;--main-header-color: #1C2834;--main-sidebar-color: #fff;--main-text-color: #fff;--main-search-bar: #454545;--main-footer-background: #27323a;--main-hyperlinks-color: #00D2FA;--main-inset-bgColor: #242b32;--main-inset-borderColor: #676f7e;--main-code-bg: #10161E;--main-keyword-color: white;--main-tag-color: #00D2FA;--main-section-color: #FF2D64;--main-comment-color: #909CC3;--main-var-color: #55A09B;--main-string-color: #FF2D64;--main-icon-color: white;--alert-info-fgColor: #429bff;--alert-tip-fgColor: #25c04b;--alert-important-fgColor: #ad81ff;--alert-warning-fgColor: #cea11f;--alert-error-fgColor: #ff6666;color-scheme:dark}.dark-theme #dark-theme-button{display:none}.dark-theme img[src$="#gh-light-mode-only"]{display:none}#theme-button{appearance:none;border:none;background:none;cursor:pointer;position:absolute;right:30px;display:flex;align-items:center;justify-content:center;padding:4px;color:var(--main-icon-color)}#theme-button:hover{color:var(--main-hyperlinks-color)}html{scroll-padding-top:calc(var(--main-header-height) + 1rem)}html,body{margin:0;padding:0;width:100%;box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{display:flex;flex-direction:column;-webkit-text-size-adjust:100%;overflow-x:hidden;font-family:Roboto,sans-serif;font-size:16px;line-height:1.42857143;color:var(--main-text-color);background-color:var(--main-bg-color)}main{flex:1;display:flex;flex-direction:row}.gt-separated{list-style:none;padding:0;margin:0}.gt-separated.dark li:before{background-image:url("data:image/svg+xml;utf8,")}.gt-separated li{display:inline-block}.gt-separated li:before{background-image:url("data:image/svg+xml;utf8,");background-position:center;content:" ";margin:0 6px 0 4px;padding:0 3px 0 0}.gt-separated li:first-child:before{background-image:none;content:"";margin:0;padding:0}.breadcrumbs{padding:0;margin:8px 0 8px 0;white-space:nowrap;line-height:1}.breadcrumbs .gt-separated .dark .hidden-xs li+li:before{color:var(--main-h-text)}.breadcrumbs li a{color:var(--main-hyperlinks-color)}@media screen and (max-width: 840px){.breadcrumbs{margin:0 0 24px 0;overflow-x:hidden}}.breadcrumbs .self-crumb{color:var(--main-h-text)}.breadcrumbs .self-name{color:#555;display:none}pre code{white-space:pre;word-wrap:initial;font-size:100%}pre{border:1px solid #ddd;background-color:#eee;font-size:14px}@media(max-width: 840px){pre{margin:16px 0}}code{font-family:"Roboto Mono",Menlo,monospace;color:inherit;padding:.2em .4em;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}.hljs{display:block;overflow-x:auto;padding:.5em;color:var(--main-text-color);background:var(--main-code-bg)}.hljs .hljs-string,.hljs .hljs-doctag{color:var(--main-string-color)}.hljs .hljs-number,.hljs .hljs-literal,.hljs .hljs-variable,.hljs .hljs-template-variable,.hljs .hljs-tag .hljs-attr{color:var(--main-var-color)}.hljs .hljs-comment,.hljs .hljs-quote{color:var(--main-comment-color);font-style:italic}.hljs .hljs-title,.hljs .hljs-section,.hljs .hljs-selector-id{color:var(--main-section-color);font-weight:bold}.hljs .hljs-tag,.hljs .hljs-name,.hljs .hljs-attribute{color:var(--main-tag-color);font-weight:normal}.hljs .hljs-keyword,.hljs .hljs-selector-tag,.hljs .hljs-subst{color:var(--main-keyword-color);font-weight:bold}.main-content{flex:1;order:2;overflow-y:scroll;padding:10px 20px 0 20px;min-height:calc(100vh - var(--main-header-height))}a{text-decoration:none}button{padding:0}section{margin-bottom:36px}dl{margin:0}header{background-color:var(--main-header-color);box-shadow:0 3px 5px rgba(0,0,0,.1)}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif;font-weight:400;margin-top:1.5em;color:var(--main-text-color)}h1.title{overflow:hidden;text-overflow:ellipsis}h1{font-size:37px;margin-top:0;margin-bottom:.67em}@media(max-width: 840px){h1{font-size:24px}}h2{font-size:28px}h5{font-size:16px}p{margin-bottom:1em;margin-top:0}a{color:var(--main-hyperlinks-color)}a:hover{color:#13b9fd}.fixed{white-space:pre}header a,header p,header li{color:#0175c2}header a:hover{color:#0175c2}header h1 .kind{color:#555}header h1{font-weight:400;margin-bottom:16px}dt{font-weight:normal}dd{color:var(--main-text-color);margin-bottom:1em;margin-left:0}dd.callable,dd.constant,dd.property{margin-bottom:24px}dd p{overflow-x:hidden;text-overflow:ellipsis;margin-bottom:0}table{margin-bottom:1em}table,th,td{border:1px solid #d3d3d3;border-collapse:collapse}th,td{padding:8px}.category{padding:2px 4px;font-size:12px;border-radius:4px;background-color:#999;text-transform:uppercase;color:#fff;opacity:.5}.category a{color:#fff}h1 .category{vertical-align:middle}.category.linked{font-weight:bold;opacity:1}.category.cp-0{background-color:#54b7c4}.category.cp-1{background-color:#54c47f}.category.cp-2{background-color:#c4c254}.category.cp-3{background-color:#c49f54}.category.cp-4{background-color:#c45465}.category.cp-5{background-color:#c454c4}.feature{display:inline-block;background:var(--main-bg-color);border:1px solid var(--main-hyperlinks-color);border-radius:20px;color:var(--main-hyperlinks-color);font-size:12px;padding:1px 6px;margin:0 8px 0 0}h1 .feature{vertical-align:middle;margin:0 -2px 0 0}a.feature:hover{border-color:#13b9fd}.markdown.desc{margin-bottom:1em;max-width:700px}.markdown h1{font-size:24px;margin-bottom:8px}.markdown h2{font-size:20px;margin-top:24px;margin-bottom:8px}.markdown h3{font-size:18px;margin-bottom:8px;color:var(--main-text-color)}.markdown h4{font-size:16px;margin-bottom:0}.markdown li p{margin:0}section#setter,div#setter{border-top:1px solid #ddd;padding-top:36px}section.summary dt,div.summary dt{margin-left:24px;text-indent:-24px}li.inherited a{opacity:.65;font-style:italic}dt.constant+dd p{margin-bottom:1em}dl.dl-horizontal dd{margin-left:initial}dl.dl-horizontal dt{font-style:normal;text-align:left;color:#727272;margin-right:20px;width:initial}dl dt.callable .name{float:none;width:auto}dl dt .name{font-weight:500}.main-content.extension-page .from-extension{display:none}sup.muted{color:var(--main-sidebar-color);font-size:.6em}.from-extension>span{color:var(--alert-warning-fgColor);font-style:italic;padding:2px}.btn-group{position:relative;display:inline-flex;vertical-align:middle}.source-link{padding:18px 4px;font-size:18px;vertical-align:middle}@media(max-width: 840px){.source-link{padding:7px 2px;font-size:10px}}#external-links{float:right}@media(max-width: 840px){.hidden-xs{display:none !important}}@media(min-width: 841px){.hidden-l{display:none !important}}li .material-symbols-outlined,dt .material-symbols-outlined{font-size:1em;vertical-align:text-bottom}dt .material-symbols-outlined{text-indent:0}.type-parameter{white-space:nowrap}.parameter-list{display:table-cell;margin-left:10px;list-style-type:none;padding-inline-start:unset}.parameter-list.single-line{display:inline;margin-left:0}.parameter-list.single-line>li{display:inline}.parameter-list.single-line>li>.parameter{display:inline;margin-left:0;text-indent:0}.signature{color:var(--main-text-color)}.signature a{color:var(--main-hyperlinks-color)}.deprecated{text-decoration:line-through}.multi-line-signature{font-size:17px;color:#727272}.multi-line-signature .type-parameter .parameter{margin-left:0;display:unset}.multi-line-signature .parameter{margin-left:60px;display:block;text-indent:-36px}.annotation-list{list-style:none;padding:0;display:inline}.comma-separated{list-style:none;padding:0;display:inline}.comma-separated li{display:inline}.comma-separated li:not(:last-child):after{content:", "}.container>section:first-child{border:0}.constructor-modifier{font-style:italic}section .multi-line-signature div.parameters,div .multi-line-signature div.parameters{margin-left:24px}#instance-methods dt.inherited .name,#instance-properties dt.inherited .name,#operators dt.inherited .name{font-weight:400;font-style:italic}#instance-methods dt.inherited .signature,#instance-properties dt.inherited .signature,#operators dt.inherited .signature{font-weight:400}footer{flex:0 0 16px;text-align:center;padding:16px 20px;color:#fff;background-color:var(--main-footer-background);width:100%}footer p{margin:0}footer .no-break{white-space:nowrap}footer .container{padding-left:0;padding-right:0}footer a,footer a:hover{color:#fff}.markdown-alert{margin-top:1rem;margin-bottom:1rem;padding:.75rem;--alert-title-color: --main-inset-borderColor;background-color:var(--main-inset-bgColor);border-left:solid .25rem var(--alert-title-color)}.markdown-alert>:last-child{margin-bottom:0}.markdown-alert .markdown-alert-title{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:1.125rem;font-weight:500;-webkit-font-smoothing:antialiased;color:var(--alert-title-color, inherit)}.markdown-alert .markdown-alert-title::before{font:22px/1 "Material Symbols Outlined";user-select:none}.markdown-alert.markdown-alert-note{--alert-title-color: var(--alert-info-fgColor)}.markdown-alert.markdown-alert-note .markdown-alert-title::before{content:"info"}.markdown-alert.markdown-alert-tip{--alert-title-color: var(--alert-tip-fgColor)}.markdown-alert.markdown-alert-tip .markdown-alert-title::before{content:"lightbulb"}.markdown-alert.markdown-alert-important{--alert-title-color: var(--alert-important-fgColor)}.markdown-alert.markdown-alert-important .markdown-alert-title::before{content:"feedback"}.markdown-alert.markdown-alert-warning{--alert-title-color: var(--alert-warning-fgColor)}.markdown-alert.markdown-alert-warning .markdown-alert-title::before{content:"warning"}.markdown-alert.markdown-alert-caution{--alert-title-color: var(--alert-error-fgColor)}.markdown-alert.markdown-alert-caution .markdown-alert-title::before{content:"report"}header{flex:0 0 var(--main-header-height, 50px);display:flex;flex-direction:row;align-items:center;position:sticky;top:0;z-index:10;padding-left:30px;padding-right:30px;background-color:var(--main-header-color)}@media(max-width: 840px){header{padding-left:0}}header ol{list-style:none;margin:0;padding:0}header ol li{display:inline}header form{display:flex;flex:1;justify-content:flex-end}header #header-search-sidebar{height:50px;margin-bottom:25px}header .self-name{color:#555;display:none}nav .navbar{background-color:inherit;min-height:50px;border:0}nav .navbar .row{padding-top:8px}nav .container{white-space:nowrap}@media(max-width: 840px){nav .container{width:100%}}@media print{.subnav,.sidebar{display:none}a[href]:after{content:"" !important}}.form-control{border-radius:0;border:0}@media screen and (max-width: 840px){form.search{display:none}}.navbar-right{padding-right:60px}.navbar-right .tt-menu{right:0;left:inherit !important;width:540px;max-height:280px;overflow-y:scroll}.tt-wrapper{position:relative;display:inline-block}.tt-wrapper .tt-input{position:relative;vertical-align:top}.tt-wrapper .typeahead{padding:16px 16px 16px 32px;width:422px;height:24px;font-size:15px;background-color:var(--main-bg-color);color:var(--main-text-color);background-image:url("./search.svg");background-repeat:no-repeat;background-position:2%;outline:0;background-size:20px}@media screen and (max-width: 840px){.tt-wrapper .typeahead{padding:17px 17px 17px 33px;width:240px;height:17px;border:1px solid #f5f5f5;background-position:3%;margin:10px 10px 10px 9px}}.tt-wrapper .tt-menu{position:absolute;top:100%;left:0;z-index:100;font-size:14px;margin:0;background-color:var(--main-bg-color);border:1px solid var(--main-header-color);box-shadow:0 5px 10px rgba(0,0,0,.2)}.search-summary{margin-bottom:10px}a.tt-container{font-size:16px;color:var(--main-hyperlinks-color)}.enter-search-message{position:sticky;top:0;background-color:#aaa;padding:0;font-size:14px;margin:0;clear:both;text-align:center;color:#000}.tt-suggestion:hover{cursor:pointer;color:#fff;background-color:#0097cf}.tt-suggestion:hover .search-from-lib{color:#ddd}.tt-suggestion.tt-cursor{color:#fff;background-color:#0097cf}.tt-suggestion.tt-cursor .search-from-lib{color:#ddd}.tt-suggestion p{margin:0}.tt-container{font-size:14px;margin-bottom:0;margin-top:15px}.tt-container .tt-container-text{color:var(--main-text-color)}.tt-search-results .tt-container{margin-top:5px;margin-bottom:5px}.tt-search-results .tt-container-text{display:none}.tt-search-results .tt-suggestion{color:var(--main-text-color);margin-top:5px;overflow:hidden;padding-left:10px;padding-right:10px;text-overflow:ellipsis;white-space:nowrap}.tt-search-results .tt-suggestion-title{font-size:14px;padding-right:5px}.tt-search-results .tt-suggestion-container{color:var(--main-keyword-color);font-size:14px;font-style:italic;padding-right:5px}.tt-search-results .one-line-description{color:var(--main-keyword-color);display:inline;margin-left:0}.tt-search-results .one-line-description::before{content:open-quote}.tt-search-results .one-line-description::after{content:close-quote}#dartdoc-main-content .tt-suggestion{color:var(--main-text-color);margin-top:5px;margin-bottom:10px;border-style:solid;border-color:#d3d3d3;border-width:.5px}#dartdoc-main-content .tt-suggestion-title{display:block;font-weight:500;margin:4px 10px 0}#dartdoc-main-content .one-line-description{display:block;margin:2px 10px 3px}#dartdoc-main-content .tt-suggestion-container{display:none}.search-body{border:1px solid #7f7f7f;width:fit-content;max-width:440px;box-shadow:3px 3px 5px rgba(0,0,0,.1)}.sidebar h5,.sidebar ol li{text-overflow:ellipsis;overflow:hidden;padding:3px 0 3px 3px}.sidebar ol{list-style:none;line-height:22px;margin-top:0;margin-bottom:0;padding:0 0 15px 0}.sidebar ol li.section-title{font-size:18px;font-weight:normal;text-transform:uppercase;padding-top:25px}.sidebar ol li.section-subtitle{font-weight:400;text-transform:uppercase}.sidebar ol li.section-subtitle a{color:inherit}.sidebar ol li.section-subitem{margin-left:12px}.sidebar ol li:first-child{padding-top:3px;margin-top:0}.sidebar h5{color:var(--main-sidebar-color);font-size:18px;margin:0 0 22px 0;padding-top:0}.sidebar h5 a,.sidebar h5 a:hover{color:var(--main-sidebar-color)}#sidenav-left-toggle{display:none;vertical-align:text-bottom;padding:0;color:var(--main-icon-color);user-select:none;cursor:pointer}#sidenav-left-toggle:hover{color:var(--main-hyperlinks-color)}@media screen and (max-width: 320px){#sidenav-left-toggle{margin-right:10px;margin-left:20px}}#overlay-under-drawer{display:none;opacity:.4;height:100%;z-index:1999;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000}.sidebar-offcanvas-left,.sidebar-offcanvas-right{position:sticky;top:var(--main-header-height);overflow-y:auto;min-height:0;max-height:calc(100vh - var(--main-header-height))}.sidebar-offcanvas-left{flex:0 1 230px;order:1;padding:25px 0 15px 30px;margin-right:20px}.sidebar-offcanvas-left h5{margin-bottom:10px}.sidebar-offcanvas-left h5:last-of-type{border:0;margin-bottom:25px}.sidebar-offcanvas-right{flex:0 1 12em;order:3;padding:25px 20px 15px 15px}@media screen and (max-width: 992px){.sidebar-offcanvas-right{display:none}}@media screen and (max-width: 840px){#sidenav-left-toggle{display:inline;width:24px;height:24px;border:none;margin-right:24px;margin-left:24px;font-size:24px}#overlay-under-drawer.active{display:block}.sidebar-offcanvas-left{left:-100%;position:fixed;transition:all .25s ease-out;z-index:2000;top:0;width:280px;max-width:calc(100% - 20px);height:90%;background-color:var(--main-bg-color);overflow-y:scroll;padding:10px;margin:10px 10px;box-shadow:5px 5px 5px 5px #444}.sidebar-offcanvas-left.active{left:0}ol#sidebar-nav{font-size:18px;white-space:pre-line}header .self-name{display:inline-block;color:var(--main-hyperlinks-color)}} diff --git a/docs/api/web/.nojekyll b/docs/api/web/.nojekyll deleted file mode 100644 index e2ac661..0000000 --- a/docs/api/web/.nojekyll +++ /dev/null @@ -1 +0,0 @@ -TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/docs/api/web/assets/hierarchy.js b/docs/api/web/assets/hierarchy.js deleted file mode 100644 index 88636f0..0000000 --- a/docs/api/web/assets/hierarchy.js +++ /dev/null @@ -1 +0,0 @@ -window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzwMKVNfWAgCbHgqm" \ No newline at end of file diff --git a/docs/api/web/assets/highlight.css b/docs/api/web/assets/highlight.css deleted file mode 100644 index 5390181..0000000 --- a/docs/api/web/assets/highlight.css +++ /dev/null @@ -1,85 +0,0 @@ -:root { - --light-hl-0: #0000FF; - --dark-hl-0: #569CD6; - --light-hl-1: #000000; - --dark-hl-1: #D4D4D4; - --light-hl-2: #0070C1; - --dark-hl-2: #4FC1FF; - --light-hl-3: #795E26; - --dark-hl-3: #DCDCAA; - --light-hl-4: #001080; - --dark-hl-4: #9CDCFE; - --light-hl-5: #267F99; - --dark-hl-5: #4EC9B0; - --light-hl-6: #A31515; - --dark-hl-6: #CE9178; - --light-hl-7: #098658; - --dark-hl-7: #B5CEA8; - --light-hl-8: #008000; - --dark-hl-8: #6A9955; - --light-code-background: #FFFFFF; - --dark-code-background: #1E1E1E; -} - -@media (prefers-color-scheme: light) { :root { - --hl-0: var(--light-hl-0); - --hl-1: var(--light-hl-1); - --hl-2: var(--light-hl-2); - --hl-3: var(--light-hl-3); - --hl-4: var(--light-hl-4); - --hl-5: var(--light-hl-5); - --hl-6: var(--light-hl-6); - --hl-7: var(--light-hl-7); - --hl-8: var(--light-hl-8); - --code-background: var(--light-code-background); -} } - -@media (prefers-color-scheme: dark) { :root { - --hl-0: var(--dark-hl-0); - --hl-1: var(--dark-hl-1); - --hl-2: var(--dark-hl-2); - --hl-3: var(--dark-hl-3); - --hl-4: var(--dark-hl-4); - --hl-5: var(--dark-hl-5); - --hl-6: var(--dark-hl-6); - --hl-7: var(--dark-hl-7); - --hl-8: var(--dark-hl-8); - --code-background: var(--dark-code-background); -} } - -:root[data-theme='light'] { - --hl-0: var(--light-hl-0); - --hl-1: var(--light-hl-1); - --hl-2: var(--light-hl-2); - --hl-3: var(--light-hl-3); - --hl-4: var(--light-hl-4); - --hl-5: var(--light-hl-5); - --hl-6: var(--light-hl-6); - --hl-7: var(--light-hl-7); - --hl-8: var(--light-hl-8); - --code-background: var(--light-code-background); -} - -:root[data-theme='dark'] { - --hl-0: var(--dark-hl-0); - --hl-1: var(--dark-hl-1); - --hl-2: var(--dark-hl-2); - --hl-3: var(--dark-hl-3); - --hl-4: var(--dark-hl-4); - --hl-5: var(--dark-hl-5); - --hl-6: var(--dark-hl-6); - --hl-7: var(--dark-hl-7); - --hl-8: var(--dark-hl-8); - --code-background: var(--dark-code-background); -} - -.hl-0 { color: var(--hl-0); } -.hl-1 { color: var(--hl-1); } -.hl-2 { color: var(--hl-2); } -.hl-3 { color: var(--hl-3); } -.hl-4 { color: var(--hl-4); } -.hl-5 { color: var(--hl-5); } -.hl-6 { color: var(--hl-6); } -.hl-7 { color: var(--hl-7); } -.hl-8 { color: var(--hl-8); } -pre, code { background: var(--code-background); } diff --git a/docs/api/web/assets/icons.js b/docs/api/web/assets/icons.js deleted file mode 100644 index 58882d7..0000000 --- a/docs/api/web/assets/icons.js +++ /dev/null @@ -1,18 +0,0 @@ -(function() { - addIcons(); - function addIcons() { - if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons); - const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg")); - svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`; - svg.style.display = "none"; - if (location.protocol === "file:") updateUseElements(); - } - - function updateUseElements() { - document.querySelectorAll("use").forEach(el => { - if (el.getAttribute("href").includes("#icon-")) { - el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#")); - } - }); - } -})() \ No newline at end of file diff --git a/docs/api/web/assets/icons.svg b/docs/api/web/assets/icons.svg deleted file mode 100644 index 50ad579..0000000 --- a/docs/api/web/assets/icons.svg +++ /dev/null @@ -1 +0,0 @@ -MMNEPVFCICPMFPCPTTAAATR \ No newline at end of file diff --git a/docs/api/web/assets/main.js b/docs/api/web/assets/main.js deleted file mode 100644 index 64b80ab..0000000 --- a/docs/api/web/assets/main.js +++ /dev/null @@ -1,60 +0,0 @@ -"use strict"; -window.translations={"copy":"Copy","copied":"Copied!","normally_hidden":"This member is normally hidden due to your filter settings.","hierarchy_expand":"Expand","hierarchy_collapse":"Collapse","folder":"Folder","search_index_not_available":"The search index is not available","search_no_results_found_for_0":"No results found for {0}","kind_1":"Project","kind_2":"Module","kind_4":"Namespace","kind_8":"Enumeration","kind_16":"Enumeration Member","kind_32":"Variable","kind_64":"Function","kind_128":"Class","kind_256":"Interface","kind_512":"Constructor","kind_1024":"Property","kind_2048":"Method","kind_4096":"Call Signature","kind_8192":"Index Signature","kind_16384":"Constructor Signature","kind_32768":"Parameter","kind_65536":"Type Literal","kind_131072":"Type Parameter","kind_262144":"Accessor","kind_524288":"Get Signature","kind_1048576":"Set Signature","kind_2097152":"Type Alias","kind_4194304":"Reference","kind_8388608":"Document"}; -"use strict";(()=>{var Ke=Object.create;var he=Object.defineProperty;var Ge=Object.getOwnPropertyDescriptor;var Ze=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ye=Object.prototype.hasOwnProperty;var et=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var tt=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ze(e))!Ye.call(t,i)&&i!==n&&he(t,i,{get:()=>e[i],enumerable:!(r=Ge(e,i))||r.enumerable});return t};var nt=(t,e,n)=>(n=t!=null?Ke(Xe(t)):{},tt(e||!t||!t.__esModule?he(n,"default",{value:t,enumerable:!0}):n,t));var ye=et((me,ge)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=(function(e){return function(n){e.console&&console.warn&&console.warn(n)}})(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,l],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(oc?d+=2:a==c&&(n+=r[l+1]*i[d+1],l+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}if(s.str.length==0&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),f=s.str.charAt(1),p;f in s.node.edges?p=s.node.edges[f]:(p=new t.TokenSet,s.node.edges[f]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),c=0;c1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},(function(e,n){typeof define=="function"&&define.amd?define(n):typeof me=="object"?ge.exports=n():e.lunr=n()})(this,function(){return t})})()});var M,G={getItem(){return null},setItem(){}},K;try{K=localStorage,M=K}catch{K=G,M=G}var S={getItem:t=>M.getItem(t),setItem:(t,e)=>M.setItem(t,e),disableWritingLocalStorage(){M=G},disable(){localStorage.clear(),M=G},enable(){M=K}};window.TypeDoc||={disableWritingLocalStorage(){S.disableWritingLocalStorage()},disableLocalStorage:()=>{S.disable()},enableLocalStorage:()=>{S.enable()}};window.translations||={copy:"Copy",copied:"Copied!",normally_hidden:"This member is normally hidden due to your filter settings.",hierarchy_expand:"Expand",hierarchy_collapse:"Collapse",search_index_not_available:"The search index is not available",search_no_results_found_for_0:"No results found for {0}",folder:"Folder",kind_1:"Project",kind_2:"Module",kind_4:"Namespace",kind_8:"Enumeration",kind_16:"Enumeration Member",kind_32:"Variable",kind_64:"Function",kind_128:"Class",kind_256:"Interface",kind_512:"Constructor",kind_1024:"Property",kind_2048:"Method",kind_4096:"Call Signature",kind_8192:"Index Signature",kind_16384:"Constructor Signature",kind_32768:"Parameter",kind_65536:"Type Literal",kind_131072:"Type Parameter",kind_262144:"Accessor",kind_524288:"Get Signature",kind_1048576:"Set Signature",kind_2097152:"Type Alias",kind_4194304:"Reference",kind_8388608:"Document"};var pe=[];function X(t,e){pe.push({selector:e,constructor:t})}var Z=class{alwaysVisibleMember=null;constructor(){this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}createComponents(e){pe.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(document.body.style.removeProperty("display"),this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}scrollToHash(){if(location.hash){let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!rt(e)){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r,document.querySelector(".col-sidebar").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=n)}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(!n)return;let r=n.offsetParent==null,i=n;for(;i!==document.body;)i instanceof HTMLDetailsElement&&(i.open=!0),i=i.parentElement;if(n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let s=document.createElement("p");s.classList.add("warning"),s.textContent=window.translations.normally_hidden,n.prepend(s)}r&&e.scrollIntoView()}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent=window.translations.copied,e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent=window.translations.copy},100)},1e3)})})}};function rt(t){let e=t.getBoundingClientRect(),n=Math.max(document.documentElement.clientHeight,window.innerHeight);return!(e.bottom<0||e.top-n>=0)}var fe=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var Ie=nt(ye(),1);async function R(t){let e=Uint8Array.from(atob(t),s=>s.charCodeAt(0)),r=new Blob([e]).stream().pipeThrough(new DecompressionStream("deflate")),i=await new Response(r).text();return JSON.parse(i)}var Y="closing",ae="tsd-overlay";function it(){let t=Math.abs(window.innerWidth-document.documentElement.clientWidth);document.body.style.overflow="hidden",document.body.style.paddingRight=`${t}px`}function st(){document.body.style.removeProperty("overflow"),document.body.style.removeProperty("padding-right")}function xe(t,e){t.addEventListener("animationend",()=>{t.classList.contains(Y)&&(t.classList.remove(Y),document.getElementById(ae)?.remove(),t.close(),st())}),t.addEventListener("cancel",n=>{n.preventDefault(),ve(t)}),e?.closeOnClick&&document.addEventListener("click",n=>{t.open&&!t.contains(n.target)&&ve(t)},!0)}function Ee(t){if(t.open)return;let e=document.createElement("div");e.id=ae,document.body.appendChild(e),t.showModal(),it()}function ve(t){if(!t.open)return;document.getElementById(ae)?.classList.add(Y),t.classList.add(Y)}var I=class{el;app;constructor(e){this.el=e.el,this.app=e.app}};var be=document.head.appendChild(document.createElement("style"));be.dataset.for="filters";var le={};function we(t){for(let e of t.split(/\s+/))if(le.hasOwnProperty(e)&&!le[e])return!0;return!1}var ee=class extends I{key;value;constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),be.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } -`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=S.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){S.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),le[`tsd-is-${this.el.name}`]=this.value,this.app.filterChanged(),this.app.updateIndexVisibility()}};var Le=0;async function Se(t,e){if(!window.searchData)return;let n=await R(window.searchData);t.data=n,t.index=Ie.Index.load(n.index),e.innerHTML=""}function _e(){let t=document.getElementById("tsd-search-trigger"),e=document.getElementById("tsd-search"),n=document.getElementById("tsd-search-input"),r=document.getElementById("tsd-search-results"),i=document.getElementById("tsd-search-script"),s=document.getElementById("tsd-search-status");if(!(t&&e&&n&&r&&i&&s))throw new Error("Search controls missing");let o={base:document.documentElement.dataset.base};o.base.endsWith("/")||(o.base+="/"),i.addEventListener("error",()=>{let a=window.translations.search_index_not_available;Pe(s,a)}),i.addEventListener("load",()=>{Se(o,s)}),Se(o,s),ot({trigger:t,searchEl:e,results:r,field:n,status:s},o)}function ot(t,e){let{field:n,results:r,searchEl:i,status:s,trigger:o}=t;xe(i,{closeOnClick:!0});function a(){Ee(i),n.setSelectionRange(0,n.value.length)}o.addEventListener("click",a),n.addEventListener("input",fe(()=>{at(r,n,s,e)},200)),n.addEventListener("keydown",l=>{if(r.childElementCount===0||l.ctrlKey||l.metaKey||l.altKey)return;let d=n.getAttribute("aria-activedescendant"),f=d?document.getElementById(d):null;if(f){let p=!1,v=!1;switch(l.key){case"Home":case"End":case"ArrowLeft":case"ArrowRight":v=!0;break;case"ArrowDown":case"ArrowUp":p=l.shiftKey;break}(p||v)&&ke(n)}if(!l.shiftKey)switch(l.key){case"Enter":f?.querySelector("a")?.click();break;case"ArrowUp":Te(r,n,f,-1),l.preventDefault();break;case"ArrowDown":Te(r,n,f,1),l.preventDefault();break}});function c(){ke(n)}n.addEventListener("change",c),n.addEventListener("blur",c),n.addEventListener("click",c),document.body.addEventListener("keydown",l=>{if(l.altKey||l.metaKey||l.shiftKey)return;let d=l.ctrlKey&&l.key==="k",f=!l.ctrlKey&&!ut()&&l.key==="/";(d||f)&&(l.preventDefault(),a())})}function at(t,e,n,r){if(!r.index||!r.data)return;t.innerHTML="",n.innerHTML="",Le+=1;let i=e.value.trim(),s;if(i){let a=i.split(" ").map(c=>c.length?`*${c}*`:"").join(" ");s=r.index.search(a).filter(({ref:c})=>{let l=r.data.rows[Number(c)].classes;return!l||!we(l)})}else s=[];if(s.length===0&&i){let a=window.translations.search_no_results_found_for_0.replace("{0}",` "${te(i)}" `);Pe(n,a);return}for(let a=0;ac.score-a.score);let o=Math.min(10,s.length);for(let a=0;a`,f=Ce(c.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(f+=` (score: ${s[a].score.toFixed(2)})`),c.parent&&(f=` - ${Ce(c.parent,i)}.${f}`);let p=document.createElement("li");p.id=`tsd-search:${Le}-${a}`,p.role="option",p.ariaSelected="false",p.classList.value=c.classes??"";let v=document.createElement("a");v.tabIndex=-1,v.href=r.base+c.url,v.innerHTML=d+`${f}`,p.append(v),t.appendChild(p)}}function Te(t,e,n,r){let i;if(r===1?i=n?.nextElementSibling||t.firstElementChild:i=n?.previousElementSibling||t.lastElementChild,i!==n){if(!i||i.role!=="option"){console.error("Option missing");return}i.ariaSelected="true",i.scrollIntoView({behavior:"smooth",block:"nearest"}),e.setAttribute("aria-activedescendant",i.id),n?.setAttribute("aria-selected","false")}}function ke(t){let e=t.getAttribute("aria-activedescendant");(e?document.getElementById(e):null)?.setAttribute("aria-selected","false"),t.setAttribute("aria-activedescendant","")}function Ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(te(t.substring(s,o)),`${te(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(te(t.substring(s))),i.join("")}var lt={"&":"&","<":"<",">":">","'":"'",'"':"""};function te(t){return t.replace(/[&<>"'"]/g,e=>lt[e])}function Pe(t,e){t.innerHTML=e?`
${e}
`:""}var ct=["button","checkbox","file","hidden","image","radio","range","reset","submit"];function ut(){let t=document.activeElement;return t?t.isContentEditable||t.tagName==="TEXTAREA"||t.tagName==="SEARCH"?!0:t.tagName==="INPUT"&&!ct.includes(t.type):!1}var D="mousedown",Me="mousemove",$="mouseup",ne={x:0,y:0},Qe=!1,ce=!1,dt=!1,F=!1,Oe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Oe?"is-mobile":"not-mobile");Oe&&"ontouchstart"in document.documentElement&&(dt=!0,D="touchstart",Me="touchmove",$="touchend");document.addEventListener(D,t=>{ce=!0,F=!1;let e=D=="touchstart"?t.targetTouches[0]:t;ne.y=e.pageY||0,ne.x=e.pageX||0});document.addEventListener(Me,t=>{if(ce&&!F){let e=D=="touchstart"?t.targetTouches[0]:t,n=ne.x-(e.pageX||0),r=ne.y-(e.pageY||0);F=Math.sqrt(n*n+r*r)>10}});document.addEventListener($,()=>{ce=!1});document.addEventListener("click",t=>{Qe&&(t.preventDefault(),t.stopImmediatePropagation(),Qe=!1)});var re=class extends I{active;className;constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener($,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(D,n=>this.onDocumentPointerDown(n)),document.addEventListener($,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){F||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!F&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var ue=new Map,de=class{open;accordions=[];key;constructor(e,n){this.key=e,this.open=n}add(e){this.accordions.push(e),e.open=this.open,e.addEventListener("toggle",()=>{this.toggle(e.open)})}toggle(e){for(let n of this.accordions)n.open=e;S.setItem(this.key,e.toString())}},ie=class extends I{constructor(e){super(e);let n=this.el.querySelector("summary"),r=n.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)});let i=`tsd-accordion-${n.dataset.key??n.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`,s;if(ue.has(i))s=ue.get(i);else{let o=S.getItem(i),a=o?o==="true":this.el.open;s=new de(i,a),ue.set(i,s)}s.add(this.el)}};function He(t){let e=S.getItem("tsd-theme")||"os";t.value=e,Ae(e),t.addEventListener("change",()=>{S.setItem("tsd-theme",t.value),Ae(t.value)})}function Ae(t){document.documentElement.dataset.theme=t}var se;function Ne(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",Re),Re())}async function Re(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let e=await R(window.navigationData);se=document.documentElement.dataset.base,se.endsWith("/")||(se+="/"),t.innerHTML="";for(let n of e)Be(n,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function Be(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-accordion`:"tsd-accordion";let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.dataset.key=i.join("$"),o.innerHTML='',De(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let c=a.appendChild(document.createElement("ul"));c.className="tsd-nested-navigation";for(let l of t.children)Be(l,c,i)}else De(t,r,t.class)}function De(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));if(r.href=se+t.path,n&&(r.className=n),location.pathname===r.pathname&&!r.href.includes("#")&&(r.classList.add("current"),r.ariaCurrent="page"),t.kind){let i=window.translations[`kind_${t.kind}`].replaceAll('"',""");r.innerHTML=``}r.appendChild(Fe(t.text,document.createElement("span")))}else{let r=e.appendChild(document.createElement("span")),i=window.translations.folder.replaceAll('"',""");r.innerHTML=``,r.appendChild(Fe(t.text,document.createElement("span")))}}function Fe(t,e){let n=t.split(/(?<=[^A-Z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|(?<=[_-])(?=[^_-])/);for(let r=0;r{let i=r.target;for(;i.parentElement&&i.parentElement.tagName!="LI";)i=i.parentElement;i.dataset.dropdown&&(i.dataset.dropdown=String(i.dataset.dropdown!=="true"))});let t=new Map,e=new Set;for(let r of document.querySelectorAll(".tsd-full-hierarchy [data-refl]")){let i=r.querySelector("ul");t.has(r.dataset.refl)?e.add(r.dataset.refl):i&&t.set(r.dataset.refl,i)}for(let r of e)n(r);function n(r){let i=t.get(r).cloneNode(!0);i.querySelectorAll("[id]").forEach(s=>{s.removeAttribute("id")}),i.querySelectorAll("[data-dropdown]").forEach(s=>{s.dataset.dropdown="false"});for(let s of document.querySelectorAll(`[data-refl="${r}"]`)){let o=gt(),a=s.querySelector("ul");s.insertBefore(o,a),o.dataset.dropdown=String(!!a),a||s.appendChild(i.cloneNode(!0))}}}function pt(){let t=document.getElementById("tsd-hierarchy-script");t&&(t.addEventListener("load",Ve),Ve())}async function Ve(){let t=document.querySelector(".tsd-panel.tsd-hierarchy:has(h4 a)");if(!t||!window.hierarchyData)return;let e=+t.dataset.refl,n=await R(window.hierarchyData),r=t.querySelector("ul"),i=document.createElement("ul");if(i.classList.add("tsd-hierarchy"),ft(i,n,e),r.querySelectorAll("li").length==i.querySelectorAll("li").length)return;let s=document.createElement("span");s.classList.add("tsd-hierarchy-toggle"),s.textContent=window.translations.hierarchy_expand,t.querySelector("h4 a")?.insertAdjacentElement("afterend",s),s.insertAdjacentText("beforebegin",", "),s.addEventListener("click",()=>{s.textContent===window.translations.hierarchy_expand?(r.insertAdjacentElement("afterend",i),r.remove(),s.textContent=window.translations.hierarchy_collapse):(i.insertAdjacentElement("afterend",r),i.remove(),s.textContent=window.translations.hierarchy_expand)})}function ft(t,e,n){let r=e.roots.filter(i=>mt(e,i,n));for(let i of r)t.appendChild(je(e,i,n))}function je(t,e,n,r=new Set){if(r.has(e))return;r.add(e);let i=t.reflections[e],s=document.createElement("li");if(s.classList.add("tsd-hierarchy-item"),e===n){let o=s.appendChild(document.createElement("span"));o.textContent=i.name,o.classList.add("tsd-hierarchy-target")}else{for(let a of i.uniqueNameParents||[]){let c=t.reflections[a],l=s.appendChild(document.createElement("a"));l.textContent=c.name,l.href=oe+c.url,l.className=c.class+" tsd-signature-type",s.append(document.createTextNode("."))}let o=s.appendChild(document.createElement("a"));o.textContent=t.reflections[e].name,o.href=oe+i.url,o.className=i.class+" tsd-signature-type"}if(i.children){let o=s.appendChild(document.createElement("ul"));o.classList.add("tsd-hierarchy");for(let a of i.children){let c=je(t,a,n,r);c&&o.appendChild(c)}}return r.delete(e),s}function mt(t,e,n){if(e===n)return!0;let r=new Set,i=[t.reflections[e]];for(;i.length;){let s=i.pop();if(!r.has(s)){r.add(s);for(let o of s.children||[]){if(o===n)return!0;i.push(t.reflections[o])}}}return!1}function gt(){let t=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("width","20"),t.setAttribute("height","20"),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("fill","none"),t.innerHTML='',t}X(re,"a[data-toggle]");X(ie,".tsd-accordion");X(ee,".tsd-filter-item input[type=checkbox]");var qe=document.getElementById("tsd-theme");qe&&He(qe);var yt=new Z;Object.defineProperty(window,"app",{value:yt});_e();Ne();$e();"virtualKeyboard"in navigator&&(navigator.virtualKeyboard.overlaysContent=!0);})(); -/*! Bundled license information: - -lunr/lunr.js: - (** - * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 - * Copyright (C) 2020 Oliver Nightingale - * @license MIT - *) - (*! - * lunr.utils - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Set - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.tokenizer - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Pipeline - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Vector - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.stemmer - * Copyright (C) 2020 Oliver Nightingale - * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt - *) - (*! - * lunr.stopWordFilter - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.trimmer - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.TokenSet - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Index - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Builder - * Copyright (C) 2020 Oliver Nightingale - *) -*/ diff --git a/docs/api/web/assets/navigation.js b/docs/api/web/assets/navigation.js deleted file mode 100644 index 7d880a2..0000000 --- a/docs/api/web/assets/navigation.js +++ /dev/null @@ -1 +0,0 @@ -window.navigationData = "eJyLrlYqSa0oUbJSSklNyi/NS05V0lEqSCzJAIqkAbklmfl5xfowOb2MktwcoILszLwUJSszk1oduPa0/KLcxBLn0qKi1LzkSmyGoKrAY1RmsWtuYmYONjOgUhiaYwFKaUUI" \ No newline at end of file diff --git a/docs/api/web/assets/search.js b/docs/api/web/assets/search.js deleted file mode 100644 index ec8e697..0000000 --- a/docs/api/web/assets/search.js +++ /dev/null @@ -1 +0,0 @@ -window.searchData = "eJyNkctugzAQRf9l1hbBblUlbKsu8gPdIFRRM1Gt+hHZ0IcQ/94BQ90olpoN8tyZe4zvjODdZ4CqHuFd2Q6qh3sGtjUIFXT46gYrERgMXpNwoqpXzobd1ireeqOpL3UbAhIHYGIZ1Ml50/aPg/do5XcGeDlwK1aFJ9MqneGtnRyoYUAc/IJqhA/0geZJF8VdcaDJk0LdzYHEO8jqjEHb06lzcliOzTr2jLJ3fh6O07sSWF2yQ7Ev903D6s276IuwIZKy+DhVPOPjVz5+4RNUiYxPXPmisjyd3txjd4wR0J+nNY/wsiZTbhGPUNJnmlIOVP2JYu7NF8X9yd8FJxRPKH4TSgWMS00MkRjifwa98qzOqJUlR91M0w+tr/L6"; \ No newline at end of file diff --git a/docs/api/web/assets/style.css b/docs/api/web/assets/style.css deleted file mode 100644 index 5ba5a2a..0000000 --- a/docs/api/web/assets/style.css +++ /dev/null @@ -1,1633 +0,0 @@ -@layer typedoc { - :root { - --dim-toolbar-contents-height: 2.5rem; - --dim-toolbar-border-bottom-width: 1px; - --dim-header-height: calc( - var(--dim-toolbar-border-bottom-width) + - var(--dim-toolbar-contents-height) - ); - - /* 0rem For mobile; unit is required for calculation in `calc` */ - --dim-container-main-margin-y: 0rem; - - --dim-footer-height: 3.5rem; - - --modal-animation-duration: 0.2s; - } - - :root { - /* Light */ - --light-color-background: #f2f4f8; - --light-color-background-secondary: #eff0f1; - /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ - --light-color-background-active: #d6d8da; - --light-color-background-warning: #e6e600; - --light-color-warning-text: #222; - --light-color-accent: #c5c7c9; - --light-color-active-menu-item: var(--light-color-background-active); - --light-color-text: #222; - --light-color-contrast-text: #000; - --light-color-text-aside: #5e5e5e; - - --light-color-icon-background: var(--light-color-background); - --light-color-icon-text: var(--light-color-text); - - --light-color-comment-tag-text: var(--light-color-text); - --light-color-comment-tag: var(--light-color-background); - - --light-color-link: #1f70c2; - --light-color-focus-outline: #3584e4; - - --light-color-ts-keyword: #056bd6; - --light-color-ts-project: #b111c9; - --light-color-ts-module: var(--light-color-ts-project); - --light-color-ts-namespace: var(--light-color-ts-project); - --light-color-ts-enum: #7e6f15; - --light-color-ts-enum-member: var(--light-color-ts-enum); - --light-color-ts-variable: #4760ec; - --light-color-ts-function: #572be7; - --light-color-ts-class: #1f70c2; - --light-color-ts-interface: #108024; - --light-color-ts-constructor: var(--light-color-ts-class); - --light-color-ts-property: #9f5f30; - --light-color-ts-method: #be3989; - --light-color-ts-reference: #ff4d82; - --light-color-ts-call-signature: var(--light-color-ts-method); - --light-color-ts-index-signature: var(--light-color-ts-property); - --light-color-ts-constructor-signature: var( - --light-color-ts-constructor - ); - --light-color-ts-parameter: var(--light-color-ts-variable); - /* type literal not included as links will never be generated to it */ - --light-color-ts-type-parameter: #a55c0e; - --light-color-ts-accessor: #c73c3c; - --light-color-ts-get-signature: var(--light-color-ts-accessor); - --light-color-ts-set-signature: var(--light-color-ts-accessor); - --light-color-ts-type-alias: #d51270; - /* reference not included as links will be colored with the kind that it points to */ - --light-color-document: #000000; - - --light-color-alert-note: #0969d9; - --light-color-alert-tip: #1a7f37; - --light-color-alert-important: #8250df; - --light-color-alert-warning: #9a6700; - --light-color-alert-caution: #cf222e; - - --light-external-icon: url("data:image/svg+xml;utf8,"); - --light-color-scheme: light; - } - - :root { - /* Dark */ - --dark-color-background: #2b2e33; - --dark-color-background-secondary: #1e2024; - /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ - --dark-color-background-active: #5d5d6a; - --dark-color-background-warning: #bebe00; - --dark-color-warning-text: #222; - --dark-color-accent: #9096a2; - --dark-color-active-menu-item: var(--dark-color-background-active); - --dark-color-text: #f5f5f5; - --dark-color-contrast-text: #ffffff; - --dark-color-text-aside: #dddddd; - - --dark-color-icon-background: var(--dark-color-background-secondary); - --dark-color-icon-text: var(--dark-color-text); - - --dark-color-comment-tag-text: var(--dark-color-text); - --dark-color-comment-tag: var(--dark-color-background); - - --dark-color-link: #00aff4; - --dark-color-focus-outline: #4c97f2; - - --dark-color-ts-keyword: #3399ff; - --dark-color-ts-project: #e358ff; - --dark-color-ts-module: var(--dark-color-ts-project); - --dark-color-ts-namespace: var(--dark-color-ts-project); - --dark-color-ts-enum: #f4d93e; - --dark-color-ts-enum-member: var(--dark-color-ts-enum); - --dark-color-ts-variable: #798dff; - --dark-color-ts-function: #a280ff; - --dark-color-ts-class: #8ac4ff; - --dark-color-ts-interface: #6cff87; - --dark-color-ts-constructor: var(--dark-color-ts-class); - --dark-color-ts-property: #ff984d; - --dark-color-ts-method: #ff4db8; - --dark-color-ts-reference: #ff4d82; - --dark-color-ts-call-signature: var(--dark-color-ts-method); - --dark-color-ts-index-signature: var(--dark-color-ts-property); - --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); - --dark-color-ts-parameter: var(--dark-color-ts-variable); - /* type literal not included as links will never be generated to it */ - --dark-color-ts-type-parameter: #e07d13; - --dark-color-ts-accessor: #ff6060; - --dark-color-ts-get-signature: var(--dark-color-ts-accessor); - --dark-color-ts-set-signature: var(--dark-color-ts-accessor); - --dark-color-ts-type-alias: #ff6492; - /* reference not included as links will be colored with the kind that it points to */ - --dark-color-document: #ffffff; - - --dark-color-alert-note: #0969d9; - --dark-color-alert-tip: #1a7f37; - --dark-color-alert-important: #8250df; - --dark-color-alert-warning: #9a6700; - --dark-color-alert-caution: #cf222e; - - --dark-external-icon: url("data:image/svg+xml;utf8,"); - --dark-color-scheme: dark; - } - - @media (prefers-color-scheme: light) { - :root { - --color-background: var(--light-color-background); - --color-background-secondary: var( - --light-color-background-secondary - ); - --color-background-active: var(--light-color-background-active); - --color-background-warning: var(--light-color-background-warning); - --color-warning-text: var(--light-color-warning-text); - --color-accent: var(--light-color-accent); - --color-active-menu-item: var(--light-color-active-menu-item); - --color-text: var(--light-color-text); - --color-contrast-text: var(--light-color-contrast-text); - --color-text-aside: var(--light-color-text-aside); - - --color-icon-background: var(--light-color-icon-background); - --color-icon-text: var(--light-color-icon-text); - - --color-comment-tag-text: var(--light-color-text); - --color-comment-tag: var(--light-color-background); - - --color-link: var(--light-color-link); - --color-focus-outline: var(--light-color-focus-outline); - - --color-ts-keyword: var(--light-color-ts-keyword); - --color-ts-project: var(--light-color-ts-project); - --color-ts-module: var(--light-color-ts-module); - --color-ts-namespace: var(--light-color-ts-namespace); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-enum-member: var(--light-color-ts-enum-member); - --color-ts-variable: var(--light-color-ts-variable); - --color-ts-function: var(--light-color-ts-function); - --color-ts-class: var(--light-color-ts-class); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-constructor: var(--light-color-ts-constructor); - --color-ts-property: var(--light-color-ts-property); - --color-ts-method: var(--light-color-ts-method); - --color-ts-reference: var(--light-color-ts-reference); - --color-ts-call-signature: var(--light-color-ts-call-signature); - --color-ts-index-signature: var(--light-color-ts-index-signature); - --color-ts-constructor-signature: var( - --light-color-ts-constructor-signature - ); - --color-ts-parameter: var(--light-color-ts-parameter); - --color-ts-type-parameter: var(--light-color-ts-type-parameter); - --color-ts-accessor: var(--light-color-ts-accessor); - --color-ts-get-signature: var(--light-color-ts-get-signature); - --color-ts-set-signature: var(--light-color-ts-set-signature); - --color-ts-type-alias: var(--light-color-ts-type-alias); - --color-document: var(--light-color-document); - - --color-alert-note: var(--light-color-alert-note); - --color-alert-tip: var(--light-color-alert-tip); - --color-alert-important: var(--light-color-alert-important); - --color-alert-warning: var(--light-color-alert-warning); - --color-alert-caution: var(--light-color-alert-caution); - - --external-icon: var(--light-external-icon); - --color-scheme: var(--light-color-scheme); - } - } - - @media (prefers-color-scheme: dark) { - :root { - --color-background: var(--dark-color-background); - --color-background-secondary: var( - --dark-color-background-secondary - ); - --color-background-active: var(--dark-color-background-active); - --color-background-warning: var(--dark-color-background-warning); - --color-warning-text: var(--dark-color-warning-text); - --color-accent: var(--dark-color-accent); - --color-active-menu-item: var(--dark-color-active-menu-item); - --color-text: var(--dark-color-text); - --color-contrast-text: var(--dark-color-contrast-text); - --color-text-aside: var(--dark-color-text-aside); - - --color-icon-background: var(--dark-color-icon-background); - --color-icon-text: var(--dark-color-icon-text); - - --color-comment-tag-text: var(--dark-color-text); - --color-comment-tag: var(--dark-color-background); - - --color-link: var(--dark-color-link); - --color-focus-outline: var(--dark-color-focus-outline); - - --color-ts-keyword: var(--dark-color-ts-keyword); - --color-ts-project: var(--dark-color-ts-project); - --color-ts-module: var(--dark-color-ts-module); - --color-ts-namespace: var(--dark-color-ts-namespace); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-enum-member: var(--dark-color-ts-enum-member); - --color-ts-variable: var(--dark-color-ts-variable); - --color-ts-function: var(--dark-color-ts-function); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-constructor: var(--dark-color-ts-constructor); - --color-ts-property: var(--dark-color-ts-property); - --color-ts-method: var(--dark-color-ts-method); - --color-ts-reference: var(--dark-color-ts-reference); - --color-ts-call-signature: var(--dark-color-ts-call-signature); - --color-ts-index-signature: var(--dark-color-ts-index-signature); - --color-ts-constructor-signature: var( - --dark-color-ts-constructor-signature - ); - --color-ts-parameter: var(--dark-color-ts-parameter); - --color-ts-type-parameter: var(--dark-color-ts-type-parameter); - --color-ts-accessor: var(--dark-color-ts-accessor); - --color-ts-get-signature: var(--dark-color-ts-get-signature); - --color-ts-set-signature: var(--dark-color-ts-set-signature); - --color-ts-type-alias: var(--dark-color-ts-type-alias); - --color-document: var(--dark-color-document); - - --color-alert-note: var(--dark-color-alert-note); - --color-alert-tip: var(--dark-color-alert-tip); - --color-alert-important: var(--dark-color-alert-important); - --color-alert-warning: var(--dark-color-alert-warning); - --color-alert-caution: var(--dark-color-alert-caution); - - --external-icon: var(--dark-external-icon); - --color-scheme: var(--dark-color-scheme); - } - } - - :root[data-theme="light"] { - --color-background: var(--light-color-background); - --color-background-secondary: var(--light-color-background-secondary); - --color-background-active: var(--light-color-background-active); - --color-background-warning: var(--light-color-background-warning); - --color-warning-text: var(--light-color-warning-text); - --color-icon-background: var(--light-color-icon-background); - --color-accent: var(--light-color-accent); - --color-active-menu-item: var(--light-color-active-menu-item); - --color-text: var(--light-color-text); - --color-contrast-text: var(--light-color-contrast-text); - --color-text-aside: var(--light-color-text-aside); - --color-icon-text: var(--light-color-icon-text); - - --color-comment-tag-text: var(--light-color-text); - --color-comment-tag: var(--light-color-background); - - --color-link: var(--light-color-link); - --color-focus-outline: var(--light-color-focus-outline); - - --color-ts-keyword: var(--light-color-ts-keyword); - --color-ts-project: var(--light-color-ts-project); - --color-ts-module: var(--light-color-ts-module); - --color-ts-namespace: var(--light-color-ts-namespace); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-enum-member: var(--light-color-ts-enum-member); - --color-ts-variable: var(--light-color-ts-variable); - --color-ts-function: var(--light-color-ts-function); - --color-ts-class: var(--light-color-ts-class); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-constructor: var(--light-color-ts-constructor); - --color-ts-property: var(--light-color-ts-property); - --color-ts-method: var(--light-color-ts-method); - --color-ts-reference: var(--light-color-ts-reference); - --color-ts-call-signature: var(--light-color-ts-call-signature); - --color-ts-index-signature: var(--light-color-ts-index-signature); - --color-ts-constructor-signature: var( - --light-color-ts-constructor-signature - ); - --color-ts-parameter: var(--light-color-ts-parameter); - --color-ts-type-parameter: var(--light-color-ts-type-parameter); - --color-ts-accessor: var(--light-color-ts-accessor); - --color-ts-get-signature: var(--light-color-ts-get-signature); - --color-ts-set-signature: var(--light-color-ts-set-signature); - --color-ts-type-alias: var(--light-color-ts-type-alias); - --color-document: var(--light-color-document); - - --color-note: var(--light-color-note); - --color-tip: var(--light-color-tip); - --color-important: var(--light-color-important); - --color-warning: var(--light-color-warning); - --color-caution: var(--light-color-caution); - - --external-icon: var(--light-external-icon); - --color-scheme: var(--light-color-scheme); - } - - :root[data-theme="dark"] { - --color-background: var(--dark-color-background); - --color-background-secondary: var(--dark-color-background-secondary); - --color-background-active: var(--dark-color-background-active); - --color-background-warning: var(--dark-color-background-warning); - --color-warning-text: var(--dark-color-warning-text); - --color-icon-background: var(--dark-color-icon-background); - --color-accent: var(--dark-color-accent); - --color-active-menu-item: var(--dark-color-active-menu-item); - --color-text: var(--dark-color-text); - --color-contrast-text: var(--dark-color-contrast-text); - --color-text-aside: var(--dark-color-text-aside); - --color-icon-text: var(--dark-color-icon-text); - - --color-comment-tag-text: var(--dark-color-text); - --color-comment-tag: var(--dark-color-background); - - --color-link: var(--dark-color-link); - --color-focus-outline: var(--dark-color-focus-outline); - - --color-ts-keyword: var(--dark-color-ts-keyword); - --color-ts-project: var(--dark-color-ts-project); - --color-ts-module: var(--dark-color-ts-module); - --color-ts-namespace: var(--dark-color-ts-namespace); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-enum-member: var(--dark-color-ts-enum-member); - --color-ts-variable: var(--dark-color-ts-variable); - --color-ts-function: var(--dark-color-ts-function); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-constructor: var(--dark-color-ts-constructor); - --color-ts-property: var(--dark-color-ts-property); - --color-ts-method: var(--dark-color-ts-method); - --color-ts-reference: var(--dark-color-ts-reference); - --color-ts-call-signature: var(--dark-color-ts-call-signature); - --color-ts-index-signature: var(--dark-color-ts-index-signature); - --color-ts-constructor-signature: var( - --dark-color-ts-constructor-signature - ); - --color-ts-parameter: var(--dark-color-ts-parameter); - --color-ts-type-parameter: var(--dark-color-ts-type-parameter); - --color-ts-accessor: var(--dark-color-ts-accessor); - --color-ts-get-signature: var(--dark-color-ts-get-signature); - --color-ts-set-signature: var(--dark-color-ts-set-signature); - --color-ts-type-alias: var(--dark-color-ts-type-alias); - --color-document: var(--dark-color-document); - - --color-note: var(--dark-color-note); - --color-tip: var(--dark-color-tip); - --color-important: var(--dark-color-important); - --color-warning: var(--dark-color-warning); - --color-caution: var(--dark-color-caution); - - --external-icon: var(--dark-external-icon); - --color-scheme: var(--dark-color-scheme); - } - - html { - color-scheme: var(--color-scheme); - @media (prefers-reduced-motion: no-preference) { - scroll-behavior: smooth; - } - } - - *:focus-visible, - .tsd-accordion-summary:focus-visible svg { - outline: 2px solid var(--color-focus-outline); - } - - .always-visible, - .always-visible .tsd-signatures { - display: inherit !important; - } - - h1, - h2, - h3, - h4, - h5, - h6 { - line-height: 1.2; - } - - h1 { - font-size: 1.875rem; - margin: 0.67rem 0; - } - - h2 { - font-size: 1.5rem; - margin: 0.83rem 0; - } - - h3 { - font-size: 1.25rem; - margin: 1rem 0; - } - - h4 { - font-size: 1.05rem; - margin: 1.33rem 0; - } - - h5 { - font-size: 1rem; - margin: 1.5rem 0; - } - - h6 { - font-size: 0.875rem; - margin: 2.33rem 0; - } - - dl, - menu, - ol, - ul { - margin: 1em 0; - } - - dd { - margin: 0 0 0 34px; - } - - .container { - max-width: 1700px; - padding: 0 2rem; - } - - /* Footer */ - footer { - border-top: 1px solid var(--color-accent); - padding-top: 1rem; - padding-bottom: 1rem; - max-height: var(--dim-footer-height); - } - footer > p { - margin: 0 1em; - } - - .container-main { - margin: var(--dim-container-main-margin-y) auto; - /* toolbar, footer, margin */ - min-height: calc( - 100svh - var(--dim-header-height) - var(--dim-footer-height) - - 2 * var(--dim-container-main-margin-y) - ); - } - - @keyframes fade-in { - from { - opacity: 0; - } - to { - opacity: 1; - } - } - @keyframes fade-out { - from { - opacity: 1; - visibility: visible; - } - to { - opacity: 0; - } - } - @keyframes pop-in-from-right { - from { - transform: translate(100%, 0); - } - to { - transform: translate(0, 0); - } - } - @keyframes pop-out-to-right { - from { - transform: translate(0, 0); - visibility: visible; - } - to { - transform: translate(100%, 0); - } - } - body { - background: var(--color-background); - font-family: - -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", - Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; - font-size: 16px; - color: var(--color-text); - margin: 0; - } - - a { - color: var(--color-link); - text-decoration: none; - } - a:hover { - text-decoration: underline; - } - a.external[target="_blank"] { - background-image: var(--external-icon); - background-position: top 3px right; - background-repeat: no-repeat; - padding-right: 13px; - } - a.tsd-anchor-link { - color: var(--color-text); - } - :target { - scroll-margin-block: calc(var(--dim-header-height) + 0.5rem); - } - - code, - pre { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - padding: 0.2em; - margin: 0; - font-size: 0.875rem; - border-radius: 0.8em; - } - - pre { - position: relative; - white-space: pre-wrap; - word-wrap: break-word; - padding: 10px; - border: 1px solid var(--color-accent); - margin-bottom: 8px; - } - pre code { - padding: 0; - font-size: 100%; - } - pre > button { - position: absolute; - top: 10px; - right: 10px; - opacity: 0; - transition: opacity 0.1s; - box-sizing: border-box; - } - pre:hover > button, - pre > button.visible, - pre > button:focus-visible { - opacity: 1; - } - - blockquote { - margin: 1em 0; - padding-left: 1em; - border-left: 4px solid gray; - } - - img { - max-width: 100%; - } - - * { - scrollbar-width: thin; - scrollbar-color: var(--color-accent) var(--color-icon-background); - } - - *::-webkit-scrollbar { - width: 0.75rem; - } - - *::-webkit-scrollbar-track { - background: var(--color-icon-background); - } - - *::-webkit-scrollbar-thumb { - background-color: var(--color-accent); - border-radius: 999rem; - border: 0.25rem solid var(--color-icon-background); - } - - dialog { - border: none; - outline: none; - padding: 0; - background-color: var(--color-background); - } - dialog::backdrop { - display: none; - } - #tsd-overlay { - background-color: rgba(0, 0, 0, 0.5); - position: fixed; - z-index: 9999; - top: 0; - left: 0; - right: 0; - bottom: 0; - animation: fade-in var(--modal-animation-duration) forwards; - } - #tsd-overlay.closing { - animation-name: fade-out; - } - - .tsd-typography { - line-height: 1.333em; - } - .tsd-typography ul { - list-style: square; - padding: 0 0 0 20px; - margin: 0; - } - .tsd-typography .tsd-index-panel h3, - .tsd-index-panel .tsd-typography h3, - .tsd-typography h4, - .tsd-typography h5, - .tsd-typography h6 { - font-size: 1em; - } - .tsd-typography h5, - .tsd-typography h6 { - font-weight: normal; - } - .tsd-typography p, - .tsd-typography ul, - .tsd-typography ol { - margin: 1em 0; - } - .tsd-typography table { - border-collapse: collapse; - border: none; - } - .tsd-typography td, - .tsd-typography th { - padding: 6px 13px; - border: 1px solid var(--color-accent); - } - .tsd-typography thead, - .tsd-typography tr:nth-child(even) { - background-color: var(--color-background-secondary); - } - - .tsd-alert { - padding: 8px 16px; - margin-bottom: 16px; - border-left: 0.25em solid var(--alert-color); - } - .tsd-alert blockquote > :last-child, - .tsd-alert > :last-child { - margin-bottom: 0; - } - .tsd-alert-title { - color: var(--alert-color); - display: inline-flex; - align-items: center; - } - .tsd-alert-title span { - margin-left: 4px; - } - - .tsd-alert-note { - --alert-color: var(--color-alert-note); - } - .tsd-alert-tip { - --alert-color: var(--color-alert-tip); - } - .tsd-alert-important { - --alert-color: var(--color-alert-important); - } - .tsd-alert-warning { - --alert-color: var(--color-alert-warning); - } - .tsd-alert-caution { - --alert-color: var(--color-alert-caution); - } - - .tsd-breadcrumb { - margin: 0; - margin-top: 1rem; - padding: 0; - color: var(--color-text-aside); - } - .tsd-breadcrumb a { - color: var(--color-text-aside); - text-decoration: none; - } - .tsd-breadcrumb a:hover { - text-decoration: underline; - } - .tsd-breadcrumb li { - display: inline; - } - .tsd-breadcrumb li:after { - content: " / "; - } - - .tsd-comment-tags { - display: flex; - flex-direction: column; - } - dl.tsd-comment-tag-group { - display: flex; - align-items: center; - overflow: hidden; - margin: 0.5em 0; - } - dl.tsd-comment-tag-group dt { - display: flex; - margin-right: 0.5em; - font-size: 0.875em; - font-weight: normal; - } - dl.tsd-comment-tag-group dd { - margin: 0; - } - code.tsd-tag { - padding: 0.25em 0.4em; - border: 0.1em solid var(--color-accent); - margin-right: 0.25em; - font-size: 70%; - } - h1 code.tsd-tag:first-of-type { - margin-left: 0.25em; - } - - dl.tsd-comment-tag-group dd:before, - dl.tsd-comment-tag-group dd:after { - content: " "; - } - dl.tsd-comment-tag-group dd pre, - dl.tsd-comment-tag-group dd:after { - clear: both; - } - dl.tsd-comment-tag-group p { - margin: 0; - } - - .tsd-panel.tsd-comment .lead { - font-size: 1.1em; - line-height: 1.333em; - margin-bottom: 2em; - } - .tsd-panel.tsd-comment .lead:last-child { - margin-bottom: 0; - } - - .tsd-filter-visibility h4 { - font-size: 1rem; - padding-top: 0.75rem; - padding-bottom: 0.5rem; - margin: 0; - } - .tsd-filter-item:not(:last-child) { - margin-bottom: 0.5rem; - } - .tsd-filter-input { - display: flex; - width: -moz-fit-content; - width: fit-content; - align-items: center; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - } - .tsd-filter-input input[type="checkbox"] { - cursor: pointer; - position: absolute; - width: 1.5em; - height: 1.5em; - opacity: 0; - } - .tsd-filter-input input[type="checkbox"]:disabled { - pointer-events: none; - } - .tsd-filter-input svg { - cursor: pointer; - width: 1.5em; - height: 1.5em; - margin-right: 0.5em; - border-radius: 0.33em; - /* Leaving this at full opacity breaks event listeners on Firefox. - Don't remove unless you know what you're doing. */ - opacity: 0.99; - } - .tsd-filter-input input[type="checkbox"]:focus-visible + svg { - outline: 2px solid var(--color-focus-outline); - } - .tsd-checkbox-background { - fill: var(--color-accent); - } - input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { - stroke: var(--color-text); - } - .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background { - fill: var(--color-background); - stroke: var(--color-accent); - stroke-width: 0.25rem; - } - .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark { - stroke: var(--color-accent); - } - - .settings-label { - font-weight: bold; - text-transform: uppercase; - display: inline-block; - } - - .tsd-filter-visibility .settings-label { - margin: 0.75rem 0 0.5rem 0; - } - - .tsd-theme-toggle .settings-label { - margin: 0.75rem 0.75rem 0 0; - } - - .tsd-hierarchy h4 label:hover span { - text-decoration: underline; - } - - .tsd-hierarchy { - list-style: square; - margin: 0; - } - .tsd-hierarchy-target { - font-weight: bold; - } - .tsd-hierarchy-toggle { - color: var(--color-link); - cursor: pointer; - } - - .tsd-full-hierarchy:not(:last-child) { - margin-bottom: 1em; - padding-bottom: 1em; - border-bottom: 1px solid var(--color-accent); - } - .tsd-full-hierarchy, - .tsd-full-hierarchy ul { - list-style: none; - margin: 0; - padding: 0; - } - .tsd-full-hierarchy ul { - padding-left: 1.5rem; - } - .tsd-full-hierarchy a { - padding: 0.25rem 0 !important; - font-size: 1rem; - display: inline-flex; - align-items: center; - color: var(--color-text); - } - .tsd-full-hierarchy svg[data-dropdown] { - cursor: pointer; - } - .tsd-full-hierarchy svg[data-dropdown="false"] { - transform: rotate(-90deg); - } - .tsd-full-hierarchy svg[data-dropdown="false"] ~ ul { - display: none; - } - - .tsd-panel-group.tsd-index-group { - margin-bottom: 0; - } - .tsd-index-panel .tsd-index-list { - list-style: none; - line-height: 1.333em; - margin: 0; - padding: 0.25rem 0 0 0; - overflow: hidden; - display: grid; - grid-template-columns: repeat(3, 1fr); - column-gap: 1rem; - grid-template-rows: auto; - } - @media (max-width: 1024px) { - .tsd-index-panel .tsd-index-list { - grid-template-columns: repeat(2, 1fr); - } - } - @media (max-width: 768px) { - .tsd-index-panel .tsd-index-list { - grid-template-columns: repeat(1, 1fr); - } - } - .tsd-index-panel .tsd-index-list li { - -webkit-page-break-inside: avoid; - -moz-page-break-inside: avoid; - -ms-page-break-inside: avoid; - -o-page-break-inside: avoid; - page-break-inside: avoid; - } - - .tsd-flag { - display: inline-block; - padding: 0.25em 0.4em; - border-radius: 4px; - color: var(--color-comment-tag-text); - background-color: var(--color-comment-tag); - text-indent: 0; - font-size: 75%; - line-height: 1; - font-weight: normal; - } - - .tsd-anchor { - position: relative; - top: -100px; - } - - .tsd-member { - position: relative; - } - .tsd-member .tsd-anchor + h3 { - display: flex; - align-items: center; - margin-top: 0; - margin-bottom: 0; - border-bottom: none; - } - - .tsd-navigation.settings { - margin: 0; - margin-bottom: 1rem; - } - .tsd-navigation > a, - .tsd-navigation .tsd-accordion-summary { - width: calc(100% - 0.25rem); - display: flex; - align-items: center; - } - .tsd-navigation a, - .tsd-navigation summary > span, - .tsd-page-navigation a { - display: flex; - width: calc(100% - 0.25rem); - align-items: center; - padding: 0.25rem; - color: var(--color-text); - text-decoration: none; - box-sizing: border-box; - } - .tsd-navigation a.current, - .tsd-page-navigation a.current { - background: var(--color-active-menu-item); - color: var(--color-contrast-text); - } - .tsd-navigation a:hover, - .tsd-page-navigation a:hover { - text-decoration: underline; - } - .tsd-navigation ul, - .tsd-page-navigation ul { - margin-top: 0; - margin-bottom: 0; - padding: 0; - list-style: none; - } - .tsd-navigation li, - .tsd-page-navigation li { - padding: 0; - max-width: 100%; - } - .tsd-navigation .tsd-nav-link { - display: none; - } - .tsd-nested-navigation { - margin-left: 3rem; - } - .tsd-nested-navigation > li > details { - margin-left: -1.5rem; - } - .tsd-small-nested-navigation { - margin-left: 1.5rem; - } - .tsd-small-nested-navigation > li > details { - margin-left: -1.5rem; - } - - .tsd-page-navigation-section > summary { - padding: 0.25rem; - } - .tsd-page-navigation-section > summary > svg { - margin-right: 0.25rem; - } - .tsd-page-navigation-section > div { - margin-left: 30px; - } - .tsd-page-navigation ul { - padding-left: 1.75rem; - } - - #tsd-sidebar-links a { - margin-top: 0; - margin-bottom: 0.5rem; - line-height: 1.25rem; - } - #tsd-sidebar-links a:last-of-type { - margin-bottom: 0; - } - - a.tsd-index-link { - padding: 0.25rem 0 !important; - font-size: 1rem; - line-height: 1.25rem; - display: inline-flex; - align-items: center; - color: var(--color-text); - } - .tsd-accordion-summary { - list-style-type: none; /* hide marker on non-safari */ - outline: none; /* broken on safari, so just hide it */ - display: flex; - align-items: center; - gap: 0.25rem; - box-sizing: border-box; - } - .tsd-accordion-summary::-webkit-details-marker { - display: none; /* hide marker on safari */ - } - .tsd-accordion-summary, - .tsd-accordion-summary a { - -moz-user-select: none; - -webkit-user-select: none; - -ms-user-select: none; - user-select: none; - - cursor: pointer; - } - .tsd-accordion-summary a { - width: calc(100% - 1.5rem); - } - .tsd-accordion-summary > * { - margin-top: 0; - margin-bottom: 0; - padding-top: 0; - padding-bottom: 0; - } - /* - * We need to be careful to target the arrow indicating whether the accordion - * is open, but not any other SVGs included in the details element. - */ - .tsd-accordion:not([open]) > .tsd-accordion-summary > svg:first-child { - transform: rotate(-90deg); - } - .tsd-index-content > :not(:first-child) { - margin-top: 0.75rem; - } - .tsd-index-summary { - margin-top: 1.5rem; - margin-bottom: 0.75rem; - display: flex; - align-content: center; - } - - .tsd-no-select { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - } - .tsd-kind-icon { - margin-right: 0.5rem; - width: 1.25rem; - height: 1.25rem; - min-width: 1.25rem; - min-height: 1.25rem; - } - .tsd-signature > .tsd-kind-icon { - margin-right: 0.8rem; - } - - .tsd-panel { - margin-bottom: 2.5rem; - } - .tsd-panel.tsd-member { - margin-bottom: 4rem; - } - .tsd-panel:empty { - display: none; - } - .tsd-panel > h1, - .tsd-panel > h2, - .tsd-panel > h3 { - margin: 1.5rem -1.5rem 0.75rem -1.5rem; - padding: 0 1.5rem 0.75rem 1.5rem; - } - .tsd-panel > h1.tsd-before-signature, - .tsd-panel > h2.tsd-before-signature, - .tsd-panel > h3.tsd-before-signature { - margin-bottom: 0; - border-bottom: none; - } - - .tsd-panel-group { - margin: 2rem 0; - } - .tsd-panel-group.tsd-index-group { - margin: 2rem 0; - } - .tsd-panel-group.tsd-index-group details { - margin: 2rem 0; - } - .tsd-panel-group > .tsd-accordion-summary { - margin-bottom: 1rem; - } - - #tsd-search[open] { - animation: fade-in var(--modal-animation-duration) ease-out forwards; - } - #tsd-search[open].closing { - animation-name: fade-out; - } - - /* Avoid setting `display` on closed dialog */ - #tsd-search[open] { - display: flex; - flex-direction: column; - padding: 1rem; - width: 32rem; - max-width: 90vw; - max-height: calc(100vh - env(keyboard-inset-height, 0px) - 25vh); - /* Anchor dialog to top */ - margin-top: 10vh; - border-radius: 6px; - will-change: max-height; - } - #tsd-search-input { - box-sizing: border-box; - width: 100%; - padding: 0 0.625rem; /* 10px */ - outline: 0; - border: 2px solid var(--color-accent); - background-color: transparent; - color: var(--color-text); - border-radius: 4px; - height: 2.5rem; - flex: 0 0 auto; - font-size: 0.875rem; - transition: border-color 0.2s, background-color 0.2s; - } - #tsd-search-input:focus-visible { - background-color: var(--color-background-active); - border-color: transparent; - color: var(--color-contrast-text); - } - #tsd-search-input::placeholder { - color: inherit; - opacity: 0.8; - } - #tsd-search-results { - margin: 0; - padding: 0; - list-style: none; - flex: 1 1 auto; - display: flex; - flex-direction: column; - overflow-y: auto; - } - #tsd-search-results:not(:empty) { - margin-top: 0.5rem; - } - #tsd-search-results > li { - background-color: var(--color-background); - line-height: 1.5; - box-sizing: border-box; - border-radius: 4px; - } - #tsd-search-results > li:nth-child(even) { - background-color: var(--color-background-secondary); - } - #tsd-search-results > li:is(:hover, [aria-selected="true"]) { - background-color: var(--color-background-active); - color: var(--color-contrast-text); - } - /* It's important that this takes full size of parent `li`, to capture a click on `li` */ - #tsd-search-results > li > a { - display: flex; - align-items: center; - padding: 0.5rem 0.25rem; - box-sizing: border-box; - width: 100%; - } - #tsd-search-results > li > a > .text { - flex: 1 1 auto; - min-width: 0; - overflow-wrap: anywhere; - } - #tsd-search-results > li > a .parent { - color: var(--color-text-aside); - } - #tsd-search-results > li > a mark { - color: inherit; - background-color: inherit; - font-weight: bold; - } - #tsd-search-status { - flex: 1; - display: grid; - place-content: center; - text-align: center; - overflow-wrap: anywhere; - } - #tsd-search-status:not(:empty) { - min-height: 6rem; - } - - .tsd-signature { - margin: 0 0 1rem 0; - padding: 1rem 0.5rem; - border: 1px solid var(--color-accent); - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - font-size: 14px; - overflow-x: auto; - } - - .tsd-signature-keyword { - color: var(--color-ts-keyword); - font-weight: normal; - } - - .tsd-signature-symbol { - color: var(--color-text-aside); - font-weight: normal; - } - - .tsd-signature-type { - font-style: italic; - font-weight: normal; - } - - .tsd-signatures { - padding: 0; - margin: 0 0 1em 0; - list-style-type: none; - } - .tsd-signatures .tsd-signature { - margin: 0; - border-color: var(--color-accent); - border-width: 1px 0; - transition: background-color 0.1s; - } - .tsd-signatures .tsd-index-signature:not(:last-child) { - margin-bottom: 1em; - } - .tsd-signatures .tsd-index-signature .tsd-signature { - border-width: 1px; - } - .tsd-description .tsd-signatures .tsd-signature { - border-width: 1px; - } - - ul.tsd-parameter-list, - ul.tsd-type-parameter-list { - list-style: square; - margin: 0; - padding-left: 20px; - } - ul.tsd-parameter-list > li.tsd-parameter-signature, - ul.tsd-type-parameter-list > li.tsd-parameter-signature { - list-style: none; - margin-left: -20px; - } - ul.tsd-parameter-list h5, - ul.tsd-type-parameter-list h5 { - font-size: 16px; - margin: 1em 0 0.5em 0; - } - .tsd-sources { - margin-top: 1rem; - font-size: 0.875em; - } - .tsd-sources a { - color: var(--color-text-aside); - text-decoration: underline; - } - .tsd-sources ul { - list-style: none; - padding: 0; - } - - .tsd-page-toolbar { - position: sticky; - z-index: 1; - top: 0; - left: 0; - width: 100%; - color: var(--color-text); - background: var(--color-background-secondary); - border-bottom: var(--dim-toolbar-border-bottom-width) - var(--color-accent) solid; - transition: transform 0.3s ease-in-out; - } - .tsd-page-toolbar a { - color: var(--color-text); - } - .tsd-toolbar-contents { - display: flex; - align-items: center; - height: var(--dim-toolbar-contents-height); - margin: 0 auto; - } - .tsd-toolbar-contents > .title { - font-weight: bold; - margin-right: auto; - } - #tsd-toolbar-links { - display: flex; - align-items: center; - gap: 1.5rem; - margin-right: 1rem; - } - - .tsd-widget { - box-sizing: border-box; - display: inline-block; - opacity: 0.8; - height: 2.5rem; - width: 2.5rem; - transition: opacity 0.1s, background-color 0.1s; - text-align: center; - cursor: pointer; - border: none; - background-color: transparent; - } - .tsd-widget:hover { - opacity: 0.9; - } - .tsd-widget:active { - opacity: 1; - background-color: var(--color-accent); - } - #tsd-toolbar-menu-trigger { - display: none; - } - - .tsd-member-summary-name { - display: inline-flex; - align-items: center; - padding: 0.25rem; - text-decoration: none; - } - - .tsd-anchor-icon { - display: inline-flex; - align-items: center; - margin-left: 0.5rem; - color: var(--color-text); - vertical-align: middle; - } - - .tsd-anchor-icon svg { - width: 1em; - height: 1em; - visibility: hidden; - } - - .tsd-member-summary-name:hover > .tsd-anchor-icon svg, - .tsd-anchor-link:hover > .tsd-anchor-icon svg, - .tsd-anchor-icon:focus-visible svg { - visibility: visible; - } - - .deprecated { - text-decoration: line-through !important; - } - - .warning { - padding: 1rem; - color: var(--color-warning-text); - background: var(--color-background-warning); - } - - .tsd-kind-project { - color: var(--color-ts-project); - } - .tsd-kind-module { - color: var(--color-ts-module); - } - .tsd-kind-namespace { - color: var(--color-ts-namespace); - } - .tsd-kind-enum { - color: var(--color-ts-enum); - } - .tsd-kind-enum-member { - color: var(--color-ts-enum-member); - } - .tsd-kind-variable { - color: var(--color-ts-variable); - } - .tsd-kind-function { - color: var(--color-ts-function); - } - .tsd-kind-class { - color: var(--color-ts-class); - } - .tsd-kind-interface { - color: var(--color-ts-interface); - } - .tsd-kind-constructor { - color: var(--color-ts-constructor); - } - .tsd-kind-property { - color: var(--color-ts-property); - } - .tsd-kind-method { - color: var(--color-ts-method); - } - .tsd-kind-reference { - color: var(--color-ts-reference); - } - .tsd-kind-call-signature { - color: var(--color-ts-call-signature); - } - .tsd-kind-index-signature { - color: var(--color-ts-index-signature); - } - .tsd-kind-constructor-signature { - color: var(--color-ts-constructor-signature); - } - .tsd-kind-parameter { - color: var(--color-ts-parameter); - } - .tsd-kind-type-parameter { - color: var(--color-ts-type-parameter); - } - .tsd-kind-accessor { - color: var(--color-ts-accessor); - } - .tsd-kind-get-signature { - color: var(--color-ts-get-signature); - } - .tsd-kind-set-signature { - color: var(--color-ts-set-signature); - } - .tsd-kind-type-alias { - color: var(--color-ts-type-alias); - } - - /* if we have a kind icon, don't color the text by kind */ - .tsd-kind-icon ~ span { - color: var(--color-text); - } - - /* mobile */ - @media (max-width: 769px) { - #tsd-toolbar-menu-trigger { - display: inline-block; - /* temporary fix to vertically align, for compatibility */ - line-height: 2.5; - } - #tsd-toolbar-links { - display: none; - } - - .container-main { - display: flex; - } - .col-content { - float: none; - max-width: 100%; - width: 100%; - } - .col-sidebar { - position: fixed !important; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - z-index: 1024; - top: 0 !important; - bottom: 0 !important; - left: auto !important; - right: 0 !important; - padding: 1.5rem 1.5rem 0 0; - width: 75vw; - visibility: hidden; - background-color: var(--color-background); - transform: translate(100%, 0); - } - .col-sidebar > *:last-child { - padding-bottom: 20px; - } - .overlay { - content: ""; - display: block; - position: fixed; - z-index: 1023; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: rgba(0, 0, 0, 0.75); - visibility: hidden; - } - - .to-has-menu .overlay { - animation: fade-in 0.4s; - } - - .to-has-menu .col-sidebar { - animation: pop-in-from-right 0.4s; - } - - .from-has-menu .overlay { - animation: fade-out 0.4s; - } - - .from-has-menu .col-sidebar { - animation: pop-out-to-right 0.4s; - } - - .has-menu body { - overflow: hidden; - } - .has-menu .overlay { - visibility: visible; - } - .has-menu .col-sidebar { - visibility: visible; - transform: translate(0, 0); - display: flex; - flex-direction: column; - gap: 1.5rem; - max-height: 100vh; - padding: 1rem 2rem; - } - .has-menu .tsd-navigation { - max-height: 100%; - } - .tsd-navigation .tsd-nav-link { - display: flex; - } - } - - /* one sidebar */ - @media (min-width: 770px) { - .container-main { - display: grid; - grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); - grid-template-areas: "sidebar content"; - --dim-container-main-margin-y: 2rem; - } - - .tsd-breadcrumb { - margin-top: 0; - } - - .col-sidebar { - grid-area: sidebar; - } - .col-content { - grid-area: content; - padding: 0 1rem; - } - } - @media (min-width: 770px) and (max-width: 1399px) { - .col-sidebar { - max-height: calc( - 100vh - var(--dim-header-height) - var(--dim-footer-height) - - 2 * var(--dim-container-main-margin-y) - ); - overflow: auto; - position: sticky; - top: calc( - var(--dim-header-height) + var(--dim-container-main-margin-y) - ); - } - .site-menu { - margin-top: 1rem; - } - } - - /* two sidebars */ - @media (min-width: 1200px) { - .container-main { - grid-template-columns: - minmax(0, 1fr) minmax(0, 2.5fr) minmax( - 0, - 20rem - ); - grid-template-areas: "sidebar content toc"; - } - - .col-sidebar { - display: contents; - } - - .page-menu { - grid-area: toc; - padding-left: 1rem; - } - .site-menu { - grid-area: sidebar; - } - - .site-menu { - margin-top: 0rem; - } - - .page-menu, - .site-menu { - max-height: calc( - 100vh - var(--dim-header-height) - var(--dim-footer-height) - - 2 * var(--dim-container-main-margin-y) - ); - overflow: auto; - position: sticky; - top: calc( - var(--dim-header-height) + var(--dim-container-main-margin-y) - ); - } - } -} diff --git a/docs/api/web/functions/debounce.html b/docs/api/web/functions/debounce.html deleted file mode 100644 index 8969d94..0000000 --- a/docs/api/web/functions/debounce.html +++ /dev/null @@ -1,9 +0,0 @@ -debounce | @kompkit/core
@kompkit/core
    Preparing search index...

    Function debounce

    • Debounces a function call by delaying its execution until after a specified wait period. -Subsequent calls within the wait period reset the timer.

      -

      Type Parameters

      • T extends (...args: any[]) => any

      Parameters

      • fn: T

        The function to debounce.

        -
      • wait: number = 250

        Milliseconds to wait before invoking the function. Defaults to 250ms.

        -

      Returns (...args: Parameters<T>) => void

      A debounced version of the function.

      -
      const search = debounce((query: string) => {
      console.log('Searching:', query);
      }, 300);

      search('hello'); // Will execute after 300ms if no other calls are made -
      - -
    diff --git a/docs/api/web/functions/formatCurrency.html b/docs/api/web/functions/formatCurrency.html deleted file mode 100644 index c861852..0000000 --- a/docs/api/web/functions/formatCurrency.html +++ /dev/null @@ -1,9 +0,0 @@ -formatCurrency | @kompkit/core
    @kompkit/core
      Preparing search index...

      Function formatCurrency

      • Formats a number as a localized currency string.

        -

        Parameters

        • amount: number

          The numeric amount to format.

          -
        • currency: string = "EUR"

          The currency code (e.g., "USD", "EUR", "JPY"). Defaults to "EUR".

          -
        • locale: string = "es-ES"

          The locale string (e.g., "en-US", "es-ES"). Defaults to "es-ES".

          -

        Returns string

        A formatted currency string.

        -
        formatCurrency(1234.56); // "1.234,56 €" (es-ES default)
        formatCurrency(1234.56, "USD", "en-US"); // "$1,234.56"
        formatCurrency(1000, "JPY", "ja-JP"); // "¥1,000" -
        - -
      diff --git a/docs/api/web/functions/isEmail.html b/docs/api/web/functions/isEmail.html deleted file mode 100644 index 30c3645..0000000 --- a/docs/api/web/functions/isEmail.html +++ /dev/null @@ -1,7 +0,0 @@ -isEmail | @kompkit/core
      @kompkit/core
        Preparing search index...

        Function isEmail

        • Validates whether a string matches a basic email pattern.

          -

          Parameters

          • v: string

            The string to validate.

            -

          Returns boolean

          true if the string is a valid email format, false otherwise.

          -
          isEmail('user@example.com'); // true
          isEmail('invalid@'); // false
          isEmail(' test@domain.org '); // true (whitespace is trimmed) -
          - -
        diff --git a/docs/api/web/hierarchy.html b/docs/api/web/hierarchy.html deleted file mode 100644 index 03f92ce..0000000 --- a/docs/api/web/hierarchy.html +++ /dev/null @@ -1 +0,0 @@ -@kompkit/core
        @kompkit/core
          Preparing search index...

          @kompkit/core

          Hierarchy Summary

          diff --git a/docs/api/web/index.html b/docs/api/web/index.html deleted file mode 100644 index 8113f66..0000000 --- a/docs/api/web/index.html +++ /dev/null @@ -1 +0,0 @@ -@kompkit/core
          @kompkit/core
            Preparing search index...

            @kompkit/core

            Functions

            debounce
            formatCurrency
            isEmail
            diff --git a/packages/core/flutter/.dart_tool/package_config.json b/packages/core/flutter/.dart_tool/package_config.json deleted file mode 100644 index ad3f95e..0000000 --- a/packages/core/flutter/.dart_tool/package_config.json +++ /dev/null @@ -1,388 +0,0 @@ -{ - "configVersion": 2, - "packages": [ - { - "name": "_fe_analyzer_shared", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-85.0.0", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "analyzer", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/analyzer-7.7.1", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "args", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/args-2.7.0", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "async", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/async-2.13.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "boolean_selector", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/boolean_selector-2.1.2", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "characters", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/characters-1.4.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "cli_config", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/cli_config-0.2.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "clock", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/clock-1.1.2", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "collection", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/collection-1.19.1", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "convert", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/convert-3.1.2", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "coverage", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/coverage-1.15.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "crypto", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/crypto-3.0.7", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "fake_async", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/fake_async-1.3.3", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "file", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/file-7.0.1", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter", - "rootUri": "file:///Users/ivan/flutter/packages/flutter", - "packageUri": "lib/", - "languageVersion": "3.8" - }, - { - "name": "flutter_lints", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/flutter_lints-3.0.2", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "flutter_test", - "rootUri": "file:///Users/ivan/flutter/packages/flutter_test", - "packageUri": "lib/", - "languageVersion": "3.8" - }, - { - "name": "frontend_server_client", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/frontend_server_client-4.0.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "glob", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/glob-2.1.3", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "http_multi_server", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/http_multi_server-3.2.2", - "packageUri": "lib/", - "languageVersion": "3.2" - }, - { - "name": "http_parser", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/http_parser-4.1.2", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "intl", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/intl-0.19.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "io", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/io-1.0.5", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "js", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/js-0.7.2", - "packageUri": "lib/", - "languageVersion": "3.7" - }, - { - "name": "leak_tracker", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker-11.0.2", - "packageUri": "lib/", - "languageVersion": "3.2" - }, - { - "name": "leak_tracker_flutter_testing", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.10", - "packageUri": "lib/", - "languageVersion": "3.2" - }, - { - "name": "leak_tracker_testing", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/leak_tracker_testing-3.0.2", - "packageUri": "lib/", - "languageVersion": "3.2" - }, - { - "name": "lints", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/lints-3.0.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "logging", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/logging-1.3.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "matcher", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/matcher-0.12.17", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "material_color_utilities", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/material_color_utilities-0.11.1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "meta", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/meta-1.16.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "mime", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/mime-2.0.0", - "packageUri": "lib/", - "languageVersion": "3.2" - }, - { - "name": "node_preamble", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/node_preamble-2.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "package_config", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/package_config-2.2.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "path", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/path-1.9.1", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "pool", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/pool-1.5.2", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "pub_semver", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/pub_semver-2.2.0", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "shelf", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf-1.4.2", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "shelf_packages_handler", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "shelf_static", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_static-1.1.3", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "shelf_web_socket", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "sky_engine", - "rootUri": "file:///Users/ivan/flutter/bin/cache/pkg/sky_engine", - "packageUri": "lib/", - "languageVersion": "3.8" - }, - { - "name": "source_map_stack_trace", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.2", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "source_maps", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_maps-0.10.13", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "source_span", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/source_span-1.10.1", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "stack_trace", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/stack_trace-1.12.1", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "stream_channel", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/stream_channel-2.1.4", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "string_scanner", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/string_scanner-1.4.1", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "term_glyph", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/term_glyph-1.2.2", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "test", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test-1.26.2", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "test_api", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test_api-0.7.6", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "test_core", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/test_core-0.6.11", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "typed_data", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/typed_data-1.4.0", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "vector_math", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/vector_math-2.2.0", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "vm_service", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/vm_service-15.0.2", - "packageUri": "lib/", - "languageVersion": "3.5" - }, - { - "name": "watcher", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/watcher-1.1.4", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "web", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web-1.1.1", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "web_socket", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web_socket-1.0.1", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "web_socket_channel", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/web_socket_channel-3.0.3", - "packageUri": "lib/", - "languageVersion": "3.3" - }, - { - "name": "webkit_inspection_protocol", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "yaml", - "rootUri": "file:///Users/ivan/.pub-cache/hosted/pub.dev/yaml-3.1.3", - "packageUri": "lib/", - "languageVersion": "3.4" - }, - { - "name": "kompkit_core", - "rootUri": "../", - "packageUri": "lib/", - "languageVersion": "3.0" - } - ], - "generator": "pub", - "generatorVersion": "3.9.2", - "flutterRoot": "file:///Users/ivan/flutter", - "flutterVersion": "3.35.7", - "pubCache": "file:///Users/ivan/.pub-cache" -} diff --git a/packages/core/flutter/.dart_tool/package_graph.json b/packages/core/flutter/.dart_tool/package_graph.json deleted file mode 100644 index ad2183b..0000000 --- a/packages/core/flutter/.dart_tool/package_graph.json +++ /dev/null @@ -1,569 +0,0 @@ -{ - "roots": [ - "kompkit_core" - ], - "packages": [ - { - "name": "kompkit_core", - "version": "0.1.0-alpha", - "dependencies": [ - "flutter", - "intl" - ], - "devDependencies": [ - "flutter_lints", - "flutter_test", - "test" - ] - }, - { - "name": "flutter_test", - "version": "0.0.0", - "dependencies": [ - "clock", - "collection", - "fake_async", - "flutter", - "leak_tracker_flutter_testing", - "matcher", - "meta", - "path", - "stack_trace", - "stream_channel", - "test_api", - "vector_math" - ] - }, - { - "name": "intl", - "version": "0.19.0", - "dependencies": [ - "clock", - "meta", - "path" - ] - }, - { - "name": "flutter", - "version": "0.0.0", - "dependencies": [ - "characters", - "collection", - "material_color_utilities", - "meta", - "sky_engine", - "vector_math" - ] - }, - { - "name": "vector_math", - "version": "2.2.0", - "dependencies": [] - }, - { - "name": "test_api", - "version": "0.7.6", - "dependencies": [ - "async", - "boolean_selector", - "collection", - "meta", - "source_span", - "stack_trace", - "stream_channel", - "string_scanner", - "term_glyph" - ] - }, - { - "name": "stream_channel", - "version": "2.1.4", - "dependencies": [ - "async" - ] - }, - { - "name": "stack_trace", - "version": "1.12.1", - "dependencies": [ - "path" - ] - }, - { - "name": "path", - "version": "1.9.1", - "dependencies": [] - }, - { - "name": "meta", - "version": "1.16.0", - "dependencies": [] - }, - { - "name": "matcher", - "version": "0.12.17", - "dependencies": [ - "async", - "meta", - "stack_trace", - "term_glyph", - "test_api" - ] - }, - { - "name": "leak_tracker_flutter_testing", - "version": "3.0.10", - "dependencies": [ - "flutter", - "leak_tracker", - "leak_tracker_testing", - "matcher", - "meta" - ] - }, - { - "name": "fake_async", - "version": "1.3.3", - "dependencies": [ - "clock", - "collection" - ] - }, - { - "name": "collection", - "version": "1.19.1", - "dependencies": [] - }, - { - "name": "clock", - "version": "1.1.2", - "dependencies": [] - }, - { - "name": "sky_engine", - "version": "0.0.0", - "dependencies": [] - }, - { - "name": "material_color_utilities", - "version": "0.11.1", - "dependencies": [ - "collection" - ] - }, - { - "name": "characters", - "version": "1.4.0", - "dependencies": [] - }, - { - "name": "leak_tracker_testing", - "version": "3.0.2", - "dependencies": [ - "leak_tracker", - "matcher", - "meta" - ] - }, - { - "name": "leak_tracker", - "version": "11.0.2", - "dependencies": [ - "clock", - "collection", - "meta", - "path", - "vm_service" - ] - }, - { - "name": "flutter_lints", - "version": "3.0.2", - "dependencies": [ - "lints" - ] - }, - { - "name": "lints", - "version": "3.0.0", - "dependencies": [] - }, - { - "name": "term_glyph", - "version": "1.2.2", - "dependencies": [] - }, - { - "name": "boolean_selector", - "version": "2.1.2", - "dependencies": [ - "source_span", - "string_scanner" - ] - }, - { - "name": "async", - "version": "2.13.0", - "dependencies": [ - "collection", - "meta" - ] - }, - { - "name": "string_scanner", - "version": "1.4.1", - "dependencies": [ - "source_span" - ] - }, - { - "name": "source_span", - "version": "1.10.1", - "dependencies": [ - "collection", - "path", - "term_glyph" - ] - }, - { - "name": "vm_service", - "version": "15.0.2", - "dependencies": [] - }, - { - "name": "shelf_packages_handler", - "version": "3.0.2", - "dependencies": [ - "path", - "shelf", - "shelf_static" - ] - }, - { - "name": "pool", - "version": "1.5.2", - "dependencies": [ - "async", - "stack_trace" - ] - }, - { - "name": "node_preamble", - "version": "2.0.2", - "dependencies": [] - }, - { - "name": "typed_data", - "version": "1.4.0", - "dependencies": [ - "collection" - ] - }, - { - "name": "yaml", - "version": "3.1.3", - "dependencies": [ - "collection", - "source_span", - "string_scanner" - ] - }, - { - "name": "webkit_inspection_protocol", - "version": "1.2.1", - "dependencies": [ - "logging" - ] - }, - { - "name": "shelf_static", - "version": "1.1.3", - "dependencies": [ - "convert", - "http_parser", - "mime", - "path", - "shelf" - ] - }, - { - "name": "package_config", - "version": "2.2.0", - "dependencies": [ - "path" - ] - }, - { - "name": "io", - "version": "1.0.5", - "dependencies": [ - "meta", - "path", - "string_scanner" - ] - }, - { - "name": "http_multi_server", - "version": "3.2.2", - "dependencies": [ - "async" - ] - }, - { - "name": "http_parser", - "version": "4.1.2", - "dependencies": [ - "collection", - "source_span", - "string_scanner", - "typed_data" - ] - }, - { - "name": "convert", - "version": "3.1.2", - "dependencies": [ - "typed_data" - ] - }, - { - "name": "logging", - "version": "1.3.0", - "dependencies": [] - }, - { - "name": "mime", - "version": "2.0.0", - "dependencies": [] - }, - { - "name": "shelf", - "version": "1.4.2", - "dependencies": [ - "async", - "collection", - "http_parser", - "path", - "stack_trace", - "stream_channel" - ] - }, - { - "name": "test", - "version": "1.26.2", - "dependencies": [ - "analyzer", - "async", - "boolean_selector", - "collection", - "coverage", - "http_multi_server", - "io", - "js", - "matcher", - "node_preamble", - "package_config", - "path", - "pool", - "shelf", - "shelf_packages_handler", - "shelf_static", - "shelf_web_socket", - "source_span", - "stack_trace", - "stream_channel", - "test_api", - "test_core", - "typed_data", - "web_socket_channel", - "webkit_inspection_protocol", - "yaml" - ] - }, - { - "name": "test_core", - "version": "0.6.11", - "dependencies": [ - "analyzer", - "args", - "async", - "boolean_selector", - "collection", - "coverage", - "frontend_server_client", - "glob", - "io", - "meta", - "package_config", - "path", - "pool", - "source_map_stack_trace", - "source_maps", - "source_span", - "stack_trace", - "stream_channel", - "test_api", - "vm_service", - "yaml" - ] - }, - { - "name": "frontend_server_client", - "version": "4.0.0", - "dependencies": [ - "async", - "path" - ] - }, - { - "name": "source_map_stack_trace", - "version": "2.1.2", - "dependencies": [ - "path", - "source_maps", - "stack_trace" - ] - }, - { - "name": "source_maps", - "version": "0.10.13", - "dependencies": [ - "source_span" - ] - }, - { - "name": "js", - "version": "0.7.2", - "dependencies": [] - }, - { - "name": "glob", - "version": "2.1.3", - "dependencies": [ - "async", - "collection", - "file", - "path", - "string_scanner" - ] - }, - { - "name": "file", - "version": "7.0.1", - "dependencies": [ - "meta", - "path" - ] - }, - { - "name": "shelf_web_socket", - "version": "3.0.0", - "dependencies": [ - "shelf", - "stream_channel", - "web_socket_channel" - ] - }, - { - "name": "web_socket_channel", - "version": "3.0.3", - "dependencies": [ - "async", - "crypto", - "stream_channel", - "web", - "web_socket" - ] - }, - { - "name": "web_socket", - "version": "1.0.1", - "dependencies": [ - "web" - ] - }, - { - "name": "web", - "version": "1.1.1", - "dependencies": [] - }, - { - "name": "crypto", - "version": "3.0.7", - "dependencies": [ - "typed_data" - ] - }, - { - "name": "args", - "version": "2.7.0", - "dependencies": [] - }, - { - "name": "coverage", - "version": "1.15.0", - "dependencies": [ - "args", - "cli_config", - "glob", - "logging", - "meta", - "package_config", - "path", - "source_maps", - "stack_trace", - "vm_service", - "yaml" - ] - }, - { - "name": "cli_config", - "version": "0.2.0", - "dependencies": [ - "args", - "yaml" - ] - }, - { - "name": "analyzer", - "version": "7.7.1", - "dependencies": [ - "_fe_analyzer_shared", - "collection", - "convert", - "crypto", - "glob", - "meta", - "package_config", - "path", - "pub_semver", - "source_span", - "watcher", - "yaml" - ] - }, - { - "name": "_fe_analyzer_shared", - "version": "85.0.0", - "dependencies": [ - "meta" - ] - }, - { - "name": "pub_semver", - "version": "2.2.0", - "dependencies": [ - "collection" - ] - }, - { - "name": "watcher", - "version": "1.1.4", - "dependencies": [ - "async", - "path" - ] - } - ], - "configVersion": 1 -} \ No newline at end of file diff --git a/packages/core/flutter/.dart_tool/version b/packages/core/flutter/.dart_tool/version deleted file mode 100644 index e119acd..0000000 --- a/packages/core/flutter/.dart_tool/version +++ /dev/null @@ -1 +0,0 @@ -3.35.7 \ No newline at end of file From 4dfcd21c50ef881d56611079a11fdc88f5b43959 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Tue, 9 Dec 2025 18:00:45 +0000 Subject: [PATCH 07/10] feat: enhance development workflow and fix documentation generation --- package-lock.json | 61 ++++++++++++++++++++-- package.json | 42 +++++++++++++-- packages/core/android/build.gradle.kts | 7 ++- scripts/help.js | 72 ++++++++++++++++++++++++++ 4 files changed, 174 insertions(+), 8 deletions(-) create mode 100755 scripts/help.js diff --git a/package-lock.json b/package-lock.json index 3ac9c09..56870da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17 +1,18 @@ { "name": "kompkit", - "version": "0.1.0", + "version": "0.1.0-alpha", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "kompkit", - "version": "0.1.0", + "version": "0.1.0-alpha", "license": "MIT", "workspaces": [ "packages/core/web" ], "devDependencies": { + "concurrently": "^9.2.1", "lerna": "^8.0.0", "tsup": "^8.0.0", "typedoc": "^0.28.14", @@ -2800,6 +2801,47 @@ "typedarray": "^0.0.6" } }, + "node_modules/concurrently": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-9.2.1.tgz", + "integrity": "sha512-fsfrO0MxV64Znoy8/l1vVIjjHa29SZyyqPgQBwhiDcaW8wJc2W3XWVOGx4M3oJBnv/zdUZIIp1gDeS98GzP8Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "4.1.2", + "rxjs": "7.8.2", + "shell-quote": "1.8.3", + "supports-color": "8.1.1", + "tree-kill": "1.2.2", + "yargs": "17.7.2" + }, + "bin": { + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" + } + }, + "node_modules/concurrently/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/confbox": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", @@ -7194,6 +7236,19 @@ "node": ">=8" } }, + "node_modules/shell-quote": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", + "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/siginfo": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", @@ -8974,7 +9029,7 @@ }, "packages/core/web": { "name": "@kompkit/core", - "version": "0.0.1", + "version": "0.1.0-alpha", "devDependencies": { "tsup": "^8.0.0", "typedoc": "^0.28.14", diff --git a/package.json b/package.json index fb38c50..1a3a839 100644 --- a/package.json +++ b/package.json @@ -8,14 +8,49 @@ ], "scripts": { "build": "lerna run build", + "build:web": "npm --prefix packages/core/web run build", + "build:android": "cd packages/core/android && ./gradlew build", + "build:flutter": "cd packages/core/flutter && flutter packages get", "test:web": "lerna run test --scope=@kompkit/core", "test:android": "cd packages/core/android && ./gradlew test", "test:flutter": "cd packages/core/flutter && flutter test", "test": "npm run test:web && npm run test:android && npm run test:flutter", + "test:watch": "npm --prefix packages/core/web run test -- --watch", + "lint:web": "npm --prefix packages/core/web run lint", + "lint:android": "cd packages/core/android && ./gradlew ktlintCheck", + "lint:flutter": "cd packages/core/flutter && dart analyze", + "lint": "npm run lint:web && npm run lint:android && npm run lint:flutter", + "format:web": "npm --prefix packages/core/web run format", + "format:android": "cd packages/core/android && ./gradlew ktlintFormat", + "format:flutter": "cd packages/core/flutter && dart format .", + "format": "npm run format:web && npm run format:android && npm run format:flutter", + "clean:web": "npm --prefix packages/core/web run clean", + "clean:android": "cd packages/core/android && ./gradlew clean", + "clean:flutter": "cd packages/core/flutter && flutter clean", + "clean": "npm run clean:web && npm run clean:android && npm run clean:flutter", + "clean:docs": "rm -rf docs/api/web/* docs/api/android/* docs/api/flutter/*", + "clean:all": "npm run clean && npm run clean:docs", "docs:web": "npm --prefix packages/core/web run docs", "docs:android": "cd packages/core/android && ./gradlew copyDokkaToDocs", "docs:flutter": "cd packages/core/flutter && dart doc --output ../../../docs/api/flutter", - "docs:all": "npm run docs:web && npm run docs:android && npm run docs:flutter" + "docs:all": "npm run docs:web && npm run docs:android && npm run docs:flutter", + "docs:clean": "npm run clean:docs && npm run docs:all", + "serve:web": "cd docs/api/web && python3 -m http.server 3000", + "serve:android": "cd docs/api/android && python3 -m http.server 3001", + "serve:flutter": "cd docs/api/flutter && python3 -m http.server 3002", + "serve:all": "concurrently \"npm run serve:web\" \"npm run serve:android\" \"npm run serve:flutter\"", + "dev:web": "npm --prefix packages/core/web run dev", + "dev:docs": "npm run docs:all && npm run serve:all", + "check": "npm run lint && npm run test", + "check:web": "npm run lint:web && npm run test:web", + "check:android": "npm run lint:android && npm run test:android", + "check:flutter": "npm run lint:flutter && npm run test:flutter", + "install:all": "npm install && cd packages/core/flutter && flutter packages get", + "version:check": "node --version && npm --version && flutter --version && ./packages/core/android/gradlew --version", + "deps:update": "npm update && cd packages/core/flutter && flutter packages upgrade", + "release:prepare": "npm run clean:all && npm run install:all && npm run check && npm run build && npm run docs:all", + "ci": "npm run install:all && npm run check && npm run build", + "help": "node scripts/help.js" }, "keywords": [ "utilities", @@ -30,10 +65,11 @@ "author": "", "license": "MIT", "devDependencies": { + "concurrently": "^9.2.1", "lerna": "^8.0.0", "tsup": "^8.0.0", - "typescript": "^5.6.0", "typedoc": "^0.28.14", + "typescript": "^5.6.0", "vitest": "^1.6.0" } -} \ No newline at end of file +} diff --git a/packages/core/android/build.gradle.kts b/packages/core/android/build.gradle.kts index c7a7c2a..824eb09 100644 --- a/packages/core/android/build.gradle.kts +++ b/packages/core/android/build.gradle.kts @@ -34,8 +34,11 @@ tasks.test { tasks.register("copyDokkaToDocs") { dependsOn(tasks.named("dokkaHtml")) - from(layout.buildDirectory.dir("dokka/html")) - into(layout.projectDirectory.dir("../../docs/api/android")) + from(layout.buildDirectory.dir("dokka/html")) { + include("**/*") + } + into(layout.projectDirectory.dir("../../../docs/api/android")) + duplicatesStrategy = DuplicatesStrategy.INCLUDE } // ktlint configuration diff --git a/scripts/help.js b/scripts/help.js new file mode 100755 index 0000000..af59217 --- /dev/null +++ b/scripts/help.js @@ -0,0 +1,72 @@ +#!/usr/bin/env node + +console.log(` +🚀 KompKit Development Scripts + +📦 BUILD COMMANDS: + npm run build - Build all platforms + npm run build:web - Build Web (TypeScript) + npm run build:android - Build Android (Kotlin) + npm run build:flutter - Build Flutter (Dart) + +🧪 TEST COMMANDS: + npm run test - Run all tests + npm run test:web - Test Web platform + npm run test:android - Test Android platform + npm run test:flutter - Test Flutter platform + npm run test:watch - Watch mode for Web tests + +🔍 LINT & FORMAT: + npm run lint - Lint all platforms + npm run lint:web - Lint Web code + npm run lint:android - Lint Android code (ktlint) + npm run lint:flutter - Lint Flutter code (dart analyze) + npm run format - Format all platforms + npm run format:web - Format Web code + npm run format:android - Format Android code (ktlint) + npm run format:flutter - Format Flutter code + +🧹 CLEAN COMMANDS: + npm run clean - Clean all build artifacts + npm run clean:web - Clean Web build + npm run clean:android - Clean Android build + npm run clean:flutter - Clean Flutter build + npm run clean:docs - Clean generated docs + npm run clean:all - Clean everything + +📚 DOCUMENTATION: + npm run docs:all - Generate all documentation + npm run docs:web - Generate Web docs + npm run docs:android - Generate Android docs + npm run docs:flutter - Generate Flutter docs + npm run docs:clean - Clean & regenerate docs + +🌐 SERVE DOCUMENTATION: + npm run serve:web - Serve Web docs (port 3000) + npm run serve:android - Serve Android docs (port 3001) + npm run serve:flutter - Serve Flutter docs (port 3002) + npm run serve:all - Serve all docs simultaneously + +🛠️ DEVELOPMENT: + npm run dev:web - Web development mode + npm run dev:docs - Generate & serve all docs + +✅ QUALITY CHECKS: + npm run check - Run lint + test for all + npm run check:web - Check Web platform + npm run check:android - Check Android platform + npm run check:flutter - Check Flutter platform + +🔧 MAINTENANCE: + npm run install:all - Install all dependencies + npm run version:check - Check tool versions + npm run deps:update - Update dependencies + npm run release:prepare - Prepare for release + npm run ci - CI pipeline (install + check + build) + +💡 EXAMPLES: + npm run check # Quick quality check + npm run dev:docs # Work on documentation + npm run release:prepare # Before releasing + npm run serve:all # View all docs at once +`); From 1dc10f1581f6b2589b86807af77ef26de95754ad Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Mon, 9 Feb 2026 12:47:13 +0000 Subject: [PATCH 08/10] chore: standardize formatting and update dependency versions - Standardize YAML formatting with consistent quotes and indentation - Update Flutter version from 3.24.0 to 3.27.4 - Update codecov action from v3 to v5 - Exclude flutter package from web CI path filters - Update minimum version requirements (TypeScript 5.7+, Kotlin 2.3+) - Improve markdown table formatting and consistency - Remove trailing whitespace across documentation files --- .github/workflows/flutter.yml | 99 ++- .github/workflows/web.yml | 30 +- README.md | 40 +- docs/ARCHITECTURE.md | 105 ++- docs/CHANGELOG.md | 29 +- docs/README_CI.md | 96 ++- docs/android.md | 9 +- docs/contributing.md | 21 +- docs/getting-started.md | 11 +- docs/roadmap.md | 3 +- package-lock.json | 1030 +++++++++++------------- package.json | 10 +- packages/core/android/build.gradle.kts | 6 +- packages/core/flutter/pubspec.lock | 12 +- packages/core/flutter/pubspec.yaml | 8 +- packages/core/web/package.json | 8 +- 16 files changed, 800 insertions(+), 717 deletions(-) diff --git a/.github/workflows/flutter.yml b/.github/workflows/flutter.yml index 6ef9659..0251a59 100644 --- a/.github/workflows/flutter.yml +++ b/.github/workflows/flutter.yml @@ -2,15 +2,15 @@ name: Flutter CI on: push: - branches: [ release, develop ] + branches: [release, develop] paths: - - 'packages/core/flutter/**' - - '.github/workflows/flutter.yml' + - "packages/core/flutter/**" + - ".github/workflows/flutter.yml" pull_request: - branches: [ release, develop ] + branches: [release, develop] paths: - - 'packages/core/flutter/**' - - '.github/workflows/flutter.yml' + - "packages/core/flutter/**" + - ".github/workflows/flutter.yml" workflow_dispatch: permissions: @@ -26,48 +26,47 @@ jobs: name: Flutter (lint+build+test+docs) runs-on: ubuntu-latest if: ${{ !contains(github.event.head_commit.message, '[skip flutter]') }} - + steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Setup Flutter - uses: subosito/flutter-action@v2 - with: - flutter-version: '3.24.0' - channel: 'stable' - - - name: Verify Flutter installation - run: flutter --version - - - name: Get dependencies - working-directory: packages/core/flutter - run: flutter pub get - - - name: Analyze code - working-directory: packages/core/flutter - run: flutter analyze - - - name: Run tests - working-directory: packages/core/flutter - run: flutter test --coverage - - - name: Upload coverage to Codecov - uses: codecov/codecov-action@v3 - with: - file: packages/core/flutter/coverage/lcov.info - flags: flutter - name: flutter-coverage - - - name: Generate docs (dart doc) - working-directory: packages/core/flutter - run: dart doc --output ../../../docs/api/flutter || echo "Dart doc generation failed" - - - name: Upload flutter docs - uses: actions/upload-artifact@v4 - with: - name: flutter-docs-${{ github.run_id }} - path: docs/api/flutter - if-no-files-found: ignore - retention-days: 30 - + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup Flutter + uses: subosito/flutter-action@v2 + with: + flutter-version: "3.27.4" + channel: "stable" + + - name: Verify Flutter installation + run: flutter --version + + - name: Get dependencies + working-directory: packages/core/flutter + run: flutter pub get + + - name: Analyze code + working-directory: packages/core/flutter + run: flutter analyze + + - name: Run tests + working-directory: packages/core/flutter + run: flutter test --coverage + + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v5 + with: + file: packages/core/flutter/coverage/lcov.info + flags: flutter + name: flutter-coverage + + - name: Generate docs (dart doc) + working-directory: packages/core/flutter + run: dart doc --output ../../../docs/api/flutter || echo "Dart doc generation failed" + + - name: Upload flutter docs + uses: actions/upload-artifact@v4 + with: + name: flutter-docs-${{ github.run_id }} + path: docs/api/flutter + if-no-files-found: ignore + retention-days: 30 diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml index 0d54a86..1c9e6c9 100644 --- a/.github/workflows/web.yml +++ b/.github/workflows/web.yml @@ -3,20 +3,22 @@ name: Web CI on: push: branches: [release, develop] - paths: - - 'packages/**' - - '!packages/core/android/**' - - 'package*.json' - - 'lerna.json' - - '.github/workflows/web.yml' + paths: + - "packages/**" + - "!packages/core/android/**" + - "!packages/core/flutter/**" + - "package*.json" + - "lerna.json" + - ".github/workflows/web.yml" pull_request: branches: [release, develop] paths: - - 'packages/**' - - '!packages/core/android/**' - - 'package*.json' - - 'lerna.json' - - '.github/workflows/web.yml' + - "packages/**" + - "!packages/core/android/**" + - "!packages/core/flutter/**" + - "package*.json" + - "lerna.json" + - ".github/workflows/web.yml" workflow_dispatch: permissions: @@ -32,7 +34,7 @@ jobs: name: Web (lint+build+test+docs) runs-on: ubuntu-latest if: ${{ !contains(github.event.head_commit.message, '[skip web]') }} - + steps: - name: Checkout code uses: actions/checkout@v4 @@ -40,8 +42,8 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20.x' - cache: 'npm' + node-version: "20.x" + cache: "npm" - name: Install dependencies run: npm ci diff --git a/README.md b/README.md index 4f1c333..ac07cd1 100644 --- a/README.md +++ b/README.md @@ -19,13 +19,13 @@ KompKit provides essential utility functions that work seamlessly across Web (Ty ### Monorepo Structure -| Module | Platform | Description | Status | -|--------|----------|-------------|--------| -| `packages/core/web` | TypeScript | Web utilities with Node.js support | ✅ Alpha | -| `packages/core/android` | Kotlin JVM | Android utilities with coroutines | ✅ Alpha | -| `packages/core/flutter` | Dart | Flutter/Dart utilities with async support | ✅ Alpha | -| `docs/` | Documentation | API docs, guides, and examples | ✅ Alpha | -| `.github/workflows/` | CI/CD | Automated testing and validation | ✅ Active | +| Module | Platform | Description | Status | +| ----------------------- | ------------- | ----------------------------------------- | --------- | +| `packages/core/web` | TypeScript | Web utilities with Node.js support | ✅ Alpha | +| `packages/core/android` | Kotlin JVM | Android utilities with coroutines | ✅ Alpha | +| `packages/core/flutter` | Dart | Flutter/Dart utilities with async support | ✅ Alpha | +| `docs/` | Documentation | API docs, guides, and examples | ✅ Alpha | +| `.github/workflows/` | CI/CD | Automated testing and validation | ✅ Active | ### Core Utilities @@ -35,11 +35,11 @@ KompKit provides essential utility functions that work seamlessly across Web (Ty ### Key Features -- ✅ **Cross-platform compatibility** - Identical APIs for web and Android +- ✅ **Cross-platform compatibility** - Identical APIs for Web, Android, and Flutter - ✅ **TypeScript support** - Full type safety and IntelliSense - ✅ **Zero dependencies** - Lightweight with no external dependencies - ✅ **Comprehensive testing** - 100% test coverage across platforms -- ✅ **Modern tooling** - Built with latest TypeScript 5.6+ and Kotlin 2.1+ +- ✅ **Modern tooling** - Built with latest TypeScript 5.7+ and Kotlin 2.3+ - ✅ **Rich documentation** - Auto-generated API docs with examples - ✅ **CI/CD Ready** - Automated testing with GitHub Actions @@ -48,7 +48,7 @@ KompKit provides essential utility functions that work seamlessly across Web (Ty ### Prerequisites - **Web**: Node.js 20+ and npm/yarn -- **Android**: JDK 17+ and Kotlin 2.1+ +- **Android**: JDK 17+ and Kotlin 2.3+ - **Flutter**: Flutter 3.0+ and Dart 3.0+ ### Installation @@ -112,18 +112,20 @@ flutter test Once installed, you can import and use KompKit utilities: **TypeScript/JavaScript:** + ```typescript -import { debounce, isEmail, formatCurrency } from '@kompkit/core'; +import { debounce, isEmail, formatCurrency } from "@kompkit/core"; const search = debounce((query: string) => { - console.log('Searching:', query); + console.log("Searching:", query); }, 300); -console.log(isEmail('user@example.com')); // true +console.log(isEmail("user@example.com")); // true console.log(formatCurrency(1234.56)); // "1.234,56 €" ``` **Kotlin:** + ```kotlin import com.kompkit.core.* @@ -136,6 +138,7 @@ println(formatCurrency(1234.56)) // "1.234,56 €" ``` **Dart/Flutter:** + ```dart import 'package:kompkit_core/kompkit_core.dart'; @@ -175,7 +178,7 @@ KompKit/ ├── packages/core/ │ ├── web/ # TypeScript package │ │ ├── src/ # Source files -│ │ ├── tests/ # Test files +│ │ ├── tests/ # Test files │ │ └── package.json │ ├── android/ # Kotlin JVM package │ │ ├── src/main/kotlin/ # Source files @@ -194,12 +197,12 @@ KompKit/ ## Version Information - **Current Version**: `0.1.0-alpha` -- **Minimum Requirements**: +- **Minimum Requirements**: - Node.js 20+ (Web) - JDK 17+ (Android) - Flutter 3.0+ (Flutter) - - TypeScript 5.6+ - - Kotlin 2.1+ + - TypeScript 5.7+ + - Kotlin 2.3+ - Dart 3.0+ ## Contributing @@ -207,7 +210,7 @@ KompKit/ We welcome contributions! Please see our [Contributing Guide](./docs/CONTRIBUTING.md) for details on: - Development setup -- Code style and conventions +- Code style and conventions - Testing requirements - Pull request process @@ -224,4 +227,3 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file --- > **Alpha Notice**: This project is in active development. APIs may change before the stable 1.0 release. We recommend pinning to specific versions in production applications. - diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 067f7f7..ee7e678 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -32,11 +32,11 @@ KompKit/ ### Core Modules -| Module | Platform | Purpose | Technology Stack | -|--------|----------|---------|------------------| -| `packages/core/web` | Web/Node.js | TypeScript utilities | TypeScript 5.6+, Vitest, TypeDoc | -| `packages/core/android` | JVM/Android | Kotlin utilities | Kotlin 2.1.0, JUnit, Dokka | -| `packages/core/flutter` | Flutter/Dart | Dart utilities | Dart 3.0+, Flutter Test, DartDoc | +| Module | Platform | Purpose | Technology Stack | +| ----------------------- | ------------ | -------------------- | -------------------------------- | +| `packages/core/web` | Web/Node.js | TypeScript utilities | TypeScript 5.7+, Vitest, TypeDoc | +| `packages/core/android` | JVM/Android | Kotlin utilities | Kotlin 2.3.0, JUnit, Dokka | +| `packages/core/flutter` | Flutter/Dart | Dart utilities | Dart 3.0+, Flutter Test, DartDoc | ### Shared Concepts @@ -53,54 +53,87 @@ All modules implement identical functionality: We maintain strict API consistency across platforms: **TypeScript:** + ```typescript export function debounce any>( - fn: T, - wait: number = 250 + fn: T, + wait: number = 250, ): T; export function isEmail(value: string): boolean; export function formatCurrency( - amount: number, - currency: string = 'EUR', - locale: string = 'es-ES' + amount: number, + currency: string = "EUR", + locale: string = "es-ES", ): string; ``` **Kotlin:** + ```kotlin fun debounce( - waitMs: Long = 250L, - scope: CoroutineScope, + waitMs: Long = 250L, + scope: CoroutineScope, dest: (T) -> Unit ): (T) -> Unit fun isEmail(value: String): Boolean fun formatCurrency( - amount: Double, - currency: String = "EUR", + amount: Double, + currency: String = "EUR", locale: Locale = Locale("es", "ES") ): String ``` +**Dart:** + +```dart +Function debounce( + Function fn, + [Duration wait = const Duration(milliseconds: 250)] +); + +VoidCallback debounceVoid( + VoidCallback fn, + [Duration wait = const Duration(milliseconds: 250)] +); + +bool isEmail(String value); + +String formatCurrency( + num amount, { + String currency = "EUR", + String locale = "es_ES", +}); +``` + ### Platform-Specific Adaptations While maintaining API consistency, we leverage platform strengths: #### TypeScript Implementation + - **Closures** for debounce state management - **setTimeout/clearTimeout** for timing control - **Intl.NumberFormat** for currency formatting - **RegExp** for email validation #### Kotlin Implementation + - **Coroutines** for asynchronous debounce operations - **Job cancellation** for timing control - **NumberFormat/Currency** for localized formatting - **Regex** for email validation +#### Dart/Flutter Implementation + +- **Timer** for debounce scheduling and cancellation +- **intl package** (`NumberFormat.currency`) for localized formatting +- **RegExp** for email validation +- **Null safety** with full type-safe APIs + ## Build System Architecture ### Monorepo Management @@ -111,25 +144,27 @@ While maintaining API consistency, we leverage platform strengths: { "workspaces": ["packages/core/web"], "devDependencies": { - "lerna": "^8.0.0", - "tsup": "^8.0.0", - "typescript": "^5.6.0", - "typedoc": "^0.28.14", - "vitest": "^1.6.0" + "lerna": "^8.2.4", + "tsup": "^8.5.0", + "typescript": "^5.7.0", + "typedoc": "^0.28.16", + "vitest": "^3.0.0" } } ``` ### Build Targets -| Platform | Build Tool | Output | Documentation | -|----------|------------|--------|---------------| -| Web | tsup | ESM + CJS + Types | TypeDoc → `docs/api/web/` | -| Kotlin | Gradle | JAR | Dokka → `docs/api/android/` | +| Platform | Build Tool | Output | Documentation | +| -------- | ------------ | ----------------- | ----------------------------- | +| Web | tsup | ESM + CJS + Types | TypeDoc → `docs/api/web/` | +| Kotlin | Gradle | JAR | Dokka → `docs/api/android/` | +| Flutter | Flutter/Dart | Dart package | DartDoc → `docs/api/flutter/` | ### Dependency Strategy **Zero Runtime Dependencies:** + - Web utilities use only browser/Node.js built-ins - Kotlin utilities use only JDK/Kotlin stdlib - Development dependencies isolated to build process @@ -149,7 +184,7 @@ web.yml: - TypeDoc generation - Artifact upload -# Kotlin CI - packages/core/android/** +# Kotlin CI - packages/core/android/** android.yml: - JDK 17 setup - Gradle build (with caching) @@ -176,19 +211,22 @@ android.yml: ``` packages/core/web/tests/ -├── debounce.test.ts -├── validate.test.ts -└── format.test.ts - -packages/core/android/src/test/kotlin/ -├── DebounceTest.kt -├── ValidateTest.kt -└── FormatTest.kt +└── core.test.ts # All utility tests + +packages/core/android/src/test/kotlin/com/kompkit/core/ +└── CoreTests.kt # All utility tests + +packages/core/flutter/test/ +├── kompkit_core_test.dart # Integration tests +├── debounce_test.dart # Debounce unit tests +├── validate_test.dart # Validation unit tests +└── format_test.dart # Formatting unit tests ``` ### Test Coverage **100% coverage requirement** across both platforms: + - Unit tests for all public APIs - Edge case validation - Error condition handling @@ -203,7 +241,7 @@ packages/core/android/src/test/kotlin/ ``` docs/ ├── README_CI.md # CI/CD processes -├── CONTRIBUTING.md # Development guidelines +├── CONTRIBUTING.md # Development guidelines ├── CHANGELOG.md # Version history ├── ARCHITECTURE.md # This document └── api/ # Generated API docs @@ -239,7 +277,6 @@ docs/ - **React Native**: Potential TypeScript reuse - **iOS**: Swift implementation following same patterns -- **Flutter**: Dart implementation with API parity - **Python**: Additional server-side support ### Performance Optimization diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 023d8cd..2f7d4d3 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -12,22 +12,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added #### Core Features -- **Cross-platform utility library** with identical APIs for TypeScript and Kotlin + +- **Cross-platform utility library** with identical APIs for TypeScript, Kotlin, and Dart - **debounce** function for delaying function execution - Web: `debounce(fn: T, wait?: number): T` - Kotlin: `debounce(waitMs: Long, scope: CoroutineScope, dest: (T) -> Unit): (T) -> Unit` + - Dart: `debounce(Function fn, [Duration wait])` and `debounceVoid(VoidCallback fn, [Duration wait])` - **isEmail** function for email validation - Web: `isEmail(value: string): boolean` - Kotlin: `isEmail(value: String): Boolean` + - Dart: `isEmail(String value): bool` - **formatCurrency** function for localized currency formatting - Web: `formatCurrency(amount: number, currency?: string, locale?: string): string` - Kotlin: `formatCurrency(amount: Double, currency: String, locale: Locale): String` + - Dart: `formatCurrency(num amount, {String currency, String locale}): String` #### Development Infrastructure + - **Monorepo structure** with Lerna and npm workspaces -- **Separate CI workflows** for Web and Kotlin platforms - - Web CI: Node.js 20, TypeScript 5.6+, Vitest testing, TypeDoc documentation - - Kotlin CI: JDK 17, Kotlin 2.1.0, JUnit testing, Dokka documentation +- **Separate CI workflows** for Web, Kotlin, and Flutter platforms + - Web CI: Node.js 20, TypeScript 5.7+, Vitest testing, TypeDoc documentation + - Kotlin CI: JDK 17, Kotlin 2.3.0, JUnit testing, Dokka documentation + - Flutter CI: Flutter 3.27, Dart 3.0+, flutter_test, DartDoc documentation - **Code quality tools** - Kotlin: ktlint formatting, detekt static analysis - Web: ESLint, Prettier (configured) @@ -35,6 +41,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Automated artifact generation** (JARs, documentation, test reports) #### Documentation + - **Comprehensive README** with installation and usage examples - **API documentation** auto-generated for both platforms - **Contributing guidelines** with development workflow @@ -42,6 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Architecture overview** explaining monorepo structure #### Build & Testing + - **100% test coverage** across both platforms - **Automated builds** with caching for optimal performance - **Cross-platform compatibility** testing @@ -50,15 +58,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Technical Details #### Supported Platforms + - **Web**: TypeScript/JavaScript with Node.js 20+ -- **Kotlin**: JVM with Kotlin 2.1.0 and JDK 17+ +- **Kotlin**: JVM with Kotlin 2.3.0 and JDK 17+ +- **Flutter/Dart**: Dart 3.0+ with Flutter 3.0+ (all platforms) #### Dependencies + - **Zero runtime dependencies** for core utilities - **Minimal development dependencies** (testing, documentation, build tools) - **Coroutines support** for Kotlin debounce functionality #### Performance + - **Lightweight bundle size** with tree-shaking support - **Optimized CI builds** (< 5 min web, < 8 min Kotlin) - **Efficient caching** strategies for dependencies and builds @@ -80,26 +92,33 @@ This is the initial alpha release. No migration is required. For future releases, we follow this format: ### Added + - New features and functionality ### Changed + - Changes in existing functionality ### Deprecated + - Soon-to-be removed features ### Removed + - Removed features ### Fixed + - Bug fixes ### Security + - Security improvements --- **Legend:** + - 🎉 **Major feature** - ✨ **Enhancement** - 🐛 **Bug fix** diff --git a/docs/README_CI.md b/docs/README_CI.md index 1c83656..b1ec6a9 100644 --- a/docs/README_CI.md +++ b/docs/README_CI.md @@ -6,10 +6,11 @@ KompKit uses GitHub Actions for continuous integration with separate workflows o ## Current Workflows Status -| Workflow | Status | Platform | Triggers | Path Filters | -|----------|--------|----------|----------|--------------| -| **Web CI** | ✅ Active | TypeScript/Node.js | `develop`, `release` | `packages/core/web/**` | -| **Kotlin CI** | ✅ Active | Kotlin JVM | `develop`, `release` | `packages/core/android/**` | +| Workflow | Status | Platform | Triggers | Path Filters | +| -------------- | --------- | ------------------ | -------------------- | -------------------------- | +| **Web CI** | ✅ Active | TypeScript/Node.js | `develop`, `release` | `packages/core/web/**` | +| **Kotlin CI** | ✅ Active | Kotlin JVM | `develop`, `release` | `packages/core/android/**` | +| **Flutter CI** | ✅ Active | Dart/Flutter | `develop`, `release` | `packages/core/flutter/**` | ## Workflow Details @@ -18,12 +19,14 @@ KompKit uses GitHub Actions for continuous integration with separate workflows o **Purpose:** Build, test, and validate TypeScript/JavaScript packages **Triggers:** + - Push/PR to `release` or `develop` branches - Changes in `packages/core/web/**` - Changes in `.github/workflows/web.yml` - Manual dispatch (`workflow_dispatch`) **Jobs:** + - **web**: Lint, typecheck, build, test, and generate documentation - Node.js 20.x with npm caching - Lerna-based monorepo management @@ -37,12 +40,14 @@ KompKit uses GitHub Actions for continuous integration with separate workflows o **Purpose:** Build, test, and validate Kotlin JVM packages **Triggers:** + - Push/PR to `release` or `develop` branches - Changes in `packages/core/android/**` - Changes in `.github/workflows/android.yml` - Manual dispatch (`workflow_dispatch`) **Jobs:** + - **kotlin**: Lint, static analysis, build, test, and generate documentation - JDK 17 (Temurin distribution) - Gradle build with caching @@ -53,32 +58,60 @@ KompKit uses GitHub Actions for continuous integration with separate workflows o **Path Filters:** Optimized to run only when Kotlin-related files change +### 3. Flutter CI (`flutter.yml`) + +**Purpose:** Build, test, and validate Dart/Flutter packages + +**Triggers:** + +- Push/PR to `release` or `develop` branches +- Changes in `packages/core/flutter/**` +- Changes in `.github/workflows/flutter.yml` +- Manual dispatch (`workflow_dispatch`) + +**Jobs:** + +- **flutter**: Analyze, test, and generate documentation + - Flutter 3.24.0 (stable channel) + - `flutter analyze` for static analysis + - `flutter test --coverage` with coverage reporting + - Codecov integration for coverage uploads + - DartDoc documentation generation + - Artifact uploads (docs) + +**Path Filters:** Optimized to run only when Flutter-related files change + ## Technology Stack ### Pinned Action Versions -| Action | Version | Purpose | Used In | -|--------|---------|---------|---------| -| `actions/checkout` | v4 | Repository checkout | Both workflows | -| `actions/setup-node` | v4 | Node.js 20.x setup | Web CI | -| `actions/setup-java` | v4 | JDK 17 setup | Kotlin CI | -| `gradle/actions/setup-gradle` | v4 | Gradle with caching | Kotlin CI | -| `actions/upload-artifact` | v4 | Artifact storage | Both workflows | +| Action | Version | Purpose | Used In | +| ----------------------------- | ------- | ------------------- | ------------- | +| `actions/checkout` | v4 | Repository checkout | All workflows | +| `actions/setup-node` | v4 | Node.js 20.x setup | Web CI | +| `actions/setup-java` | v4 | JDK 17 setup | Kotlin CI | +| `gradle/actions/setup-gradle` | v4 | Gradle with caching | Kotlin CI | +| `subosito/flutter-action` | v2 | Flutter setup | Flutter CI | +| `codecov/codecov-action` | v5 | Coverage upload | Flutter CI | +| `actions/upload-artifact` | v4 | Artifact storage | All workflows | ### Build Requirements -| Platform | Requirements | Version | -|----------|-------------|---------| -| **Web** | Node.js | 20.x | -| **Web** | npm | Latest | -| **Web** | TypeScript | 5.6+ | -| **Kotlin** | JDK | 17 (Temurin) | -| **Kotlin** | Kotlin | 2.1.0 | -| **Kotlin** | Gradle | 8.5 | +| Platform | Requirements | Version | +| ----------- | ------------ | ------------ | +| **Web** | Node.js | 20.x | +| **Web** | npm | Latest | +| **Web** | TypeScript | 5.7+ | +| **Kotlin** | JDK | 17 (Temurin) | +| **Kotlin** | Kotlin | 2.3.0 | +| **Kotlin** | Gradle | 8.5 | +| **Flutter** | Flutter | 3.27.4 | +| **Flutter** | Dart | 3.0+ | ## Security & Permissions **Minimal Permissions:** + - `contents: read` - Repository access - `pull-requests: read` - PR information access @@ -87,6 +120,7 @@ KompKit uses GitHub Actions for continuous integration with separate workflows o ## Local Development ### Web Development + ```bash # Install dependencies npm ci @@ -102,6 +136,7 @@ npm run docs:web ``` ### Kotlin Development + ```bash # Navigate to Kotlin module cd packages/core/android @@ -137,26 +172,35 @@ chmod +x gradlew ## Artifacts ### Web Artifacts + - `web-docs-{run_id}`: Generated TypeDoc documentation (30 days) - `web-build-{run_id}`: Built packages from dist/ directories (7 days) -### Kotlin Artifacts +### Kotlin Artifacts + - `android-test-reports-{run_id}`: JUnit test reports (7 days) - `android-lint-reports-{run_id}`: ktlint and detekt reports (7 days) - `kotlin-jar-{run_id}`: Built JAR files (7 days) - `kotlin-docs-{run_id}`: Dokka-generated documentation (30 days) +### Flutter Artifacts + +- `flutter-docs-{run_id}`: DartDoc-generated documentation (30 days) + ## Skip Flags Use commit message flags to skip specific builds: + - `[skip web]`: Skip web CI workflow - `[skip android]`: Skip Kotlin CI workflow +- `[skip flutter]`: Skip Flutter CI workflow ## Troubleshooting ### Common Issues **1. Gradle Permission Denied** + ```bash chmod +x packages/core/android/gradlew git add packages/core/android/gradlew @@ -164,28 +208,32 @@ git commit -m "fix: make gradlew executable" ``` **2. Node.js Build Failures** + - Check Node.js version compatibility (using 20.x) - Verify `package-lock.json` is committed - Clear npm cache: `npm ci --cache .npm --prefer-offline` **3. Kotlin Build Failures** + - Verify JDK 17 compatibility -- Check Kotlin version compatibility (2.1.0) +- Check Kotlin version compatibility (2.3.0) - Review ktlint/detekt reports for code quality issues - Ensure Gradle wrapper is executable **4. Path Filters Not Working** + - Ensure file changes match the path patterns in workflow triggers - Check that both `push` and `pull_request` events have same path filters ### Debug Commands **Check workflow status:** + ```bash # View recent workflow runs gh run list --limit 10 -# View specific run details +# View specific run details gh run view # Download artifacts @@ -193,6 +241,7 @@ gh run download ``` **Local debugging:** + ```bash # Simulate CI environment export CI=true @@ -207,7 +256,7 @@ npm test --workspaces --if-present || npm test || echo "No tests found" ## Performance Targets - **Web builds**: < 5 minutes for typical changes -- **Kotlin builds**: < 8 minutes for typical changes +- **Kotlin builds**: < 8 minutes for typical changes - **First-time builds**: May take longer due to dependency downloads - **Concurrent builds**: Path filters prevent unnecessary parallel execution @@ -220,6 +269,7 @@ npm test --workspaces --if-present || npm test || echo "No tests found" ## Monitoring Monitor CI health via: + - GitHub Actions dashboard - README badges showing build status - Artifact retention and storage usage diff --git a/docs/android.md b/docs/android.md index 4c0463b..4b30836 100644 --- a/docs/android.md +++ b/docs/android.md @@ -7,14 +7,16 @@ Status: `V0.1.0-alpha`. ## Installation Add the dependency to your module `build.gradle.kts`: + ```kotlin dependencies { implementation("com.kompkit:core:") - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2") } ``` ## Imports + ```kotlin import com.kompkit.core.debounce import com.kompkit.core.isEmail @@ -24,6 +26,7 @@ import com.kompkit.core.formatCurrency ## Usage examples ### debounce + ```kotlin import com.kompkit.core.debounce import kotlinx.coroutines.CoroutineScope @@ -40,6 +43,7 @@ onType("kompkit") // only this call will execute after ~300ms ``` ### isEmail + ```kotlin import com.kompkit.core.isEmail @@ -48,6 +52,7 @@ isEmail("invalid@") // false ``` ### formatCurrency + ```kotlin import com.kompkit.core.formatCurrency import java.util.Locale @@ -57,6 +62,7 @@ formatCurrency(1234.56, "USD", Locale.US) // "$1,234.56" ``` ## Jetpack Compose integration + ```kotlin import androidx.compose.material3.TextField import androidx.compose.runtime.* @@ -85,6 +91,7 @@ fun SearchBox() { ``` ## Notes + - Requires `kotlinx-coroutines-core` for the `debounce` utility. - All utilities are top-level functions in the `com.kompkit.core` package. - Compatible with Android API 21+. diff --git a/docs/contributing.md b/docs/contributing.md index f99a5b0..2209916 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -14,12 +14,14 @@ We welcome contributions to KompKit! This document provides guidelines for contr ### Development Setup 1. **Fork and clone the repository** + ```bash git clone https://github.com/YOUR_USERNAME/KompKit.git cd KompKit ``` 2. **Install dependencies** + ```bash npm install ``` @@ -50,6 +52,7 @@ We use [Conventional Commits](https://www.conventionalcommits.org/) for consiste ``` **Types:** + - `feat`: New features - `fix`: Bug fixes - `docs`: Documentation changes @@ -60,6 +63,7 @@ We use [Conventional Commits](https://www.conventionalcommits.org/) for consiste - `ci`: CI/CD changes **Examples:** + ```bash feat(web): add throttle utility function fix(kotlin): resolve debounce memory leak @@ -136,20 +140,28 @@ cd packages/core/android && ./gradlew ktlintFormat When adding a new utility function: -1. **Implement in both platforms**: +1. **Implement in all three platforms**: - TypeScript: `packages/core/web/src/` - Kotlin: `packages/core/android/src/main/kotlin/com/kompkit/core/` + - Dart: `packages/core/flutter/lib/src/` 2. **Maintain API consistency**: + ```typescript // TypeScript export function myUtility(param: string): boolean { ... } ``` + ```kotlin // Kotlin fun myUtility(param: String): Boolean { ... } ``` + ```dart + // Dart + bool myUtility(String param) { ... } + ``` + 3. **Add comprehensive tests**: - Web: `packages/core/web/tests/` - Kotlin: `packages/core/android/src/test/kotlin/` @@ -168,12 +180,14 @@ When adding a new utility function: ## Code Style ### TypeScript + - Use ESLint and Prettier configurations - Prefer `const` over `let` - Use explicit return types for public APIs - Follow existing naming conventions ### Kotlin + - Follow ktlint formatting rules - Use detekt for static analysis - Prefer `val` over `var` @@ -181,6 +195,7 @@ When adding a new utility function: - Follow Kotlin coding conventions ### Dart/Flutter + - Follow Dart formatting rules (`dart format`) - Use `flutter analyze` for static analysis - Prefer `final` over `var` when possible @@ -190,6 +205,7 @@ When adding a new utility function: ## Pull Request Process 1. **Create a feature branch**: + ```bash git checkout develop git pull origin develop @@ -202,6 +218,7 @@ When adding a new utility function: - Update documentation 3. **Test thoroughly**: + ```bash npm test cd packages/core/android && ./gradlew test @@ -209,12 +226,14 @@ When adding a new utility function: ``` 4. **Commit with conventional messages**: + ```bash git add . git commit -m "feat(core): add new utility function" ``` 5. **Push and create PR**: + ```bash git push origin feature/your-feature-name ``` diff --git a/docs/getting-started.md b/docs/getting-started.md index 286f285..fc0ed11 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -7,21 +7,26 @@ Status: `V0.1.0-alpha`. ## Install ### Web (React/Vue) + ```bash npm i @kompkit/core ``` ### Android (Gradle) + Add the dependency to your module build file: + ```kotlin dependencies { implementation("com.kompkit:core:") - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2") } ``` ### Flutter (pubspec.yaml) + Add the dependency to your pubspec.yaml: + ```yaml dependencies: kompkit_core: @@ -29,7 +34,9 @@ dependencies: ``` ## Build and test locally + Run from the repository root: + ```bash # Build web package npm run build @@ -41,7 +48,7 @@ npm run test ## Utilities | Utility | Description | -|------------------|--------------------------------------------------| +| ---------------- | ------------------------------------------------ | | `debounce` | Debounce a function call by a delay. | | `isEmail` | Validate a string with a basic email regex. | | `formatCurrency` | Format numbers into a localized currency string. | diff --git a/docs/roadmap.md b/docs/roadmap.md index 92a41d5..502fe3e 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -5,7 +5,8 @@ KompKit Core is in early development. This roadmap outlines planned features and ## Current phase: Stability and parity The focus is on: -- Ensuring API consistency between web and android implementations + +- Ensuring API consistency between web, android, and flutter implementations - Expanding test coverage - Fixing bugs and edge cases - Improving documentation diff --git a/package-lock.json b/package-lock.json index 56870da..f3ba49a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,11 +13,11 @@ ], "devDependencies": { "concurrently": "^9.2.1", - "lerna": "^8.0.0", - "tsup": "^8.0.0", - "typedoc": "^0.28.14", - "typescript": "^5.6.0", - "vitest": "^1.6.0" + "lerna": "^8.2.4", + "tsup": "^8.5.0", + "typedoc": "^0.28.16", + "typescript": "^5.7.0", + "vitest": "^3.0.0" } }, "node_modules/@babel/code-frame": { @@ -509,16 +509,16 @@ } }, "node_modules/@gerrit0/mini-shiki": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.15.0.tgz", - "integrity": "sha512-L5IHdZIDa4bG4yJaOzfasOH/o22MCesY0mx+n6VATbaiCtMeR59pdRqYk4bEiQkIHfxsHPNgdi7VJlZb2FhdMQ==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.22.0.tgz", + "integrity": "sha512-jMpciqEVUBKE1QwU64S4saNMzpsSza6diNCk4MWAeCxO2+LFi2FIFmL2S0VDLzEJCxuvCbU783xi8Hp/gkM5CQ==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/engine-oniguruma": "^3.15.0", - "@shikijs/langs": "^3.15.0", - "@shikijs/themes": "^3.15.0", - "@shikijs/types": "^3.15.0", + "@shikijs/engine-oniguruma": "^3.22.0", + "@shikijs/langs": "^3.22.0", + "@shikijs/themes": "^3.22.0", + "@shikijs/types": "^3.22.0", "@shikijs/vscode-textmate": "^10.0.2" } }, @@ -1800,40 +1800,40 @@ ] }, "node_modules/@shikijs/engine-oniguruma": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.15.0.tgz", - "integrity": "sha512-HnqFsV11skAHvOArMZdLBZZApRSYS4LSztk2K3016Y9VCyZISnlYUYsL2hzlS7tPqKHvNqmI5JSUJZprXloMvA==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.22.0.tgz", + "integrity": "sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/types": "3.15.0", + "@shikijs/types": "3.22.0", "@shikijs/vscode-textmate": "^10.0.2" } }, "node_modules/@shikijs/langs": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.15.0.tgz", - "integrity": "sha512-WpRvEFvkVvO65uKYW4Rzxs+IG0gToyM8SARQMtGGsH4GDMNZrr60qdggXrFOsdfOVssG/QQGEl3FnJ3EZ+8w8A==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.22.0.tgz", + "integrity": "sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/types": "3.15.0" + "@shikijs/types": "3.22.0" } }, "node_modules/@shikijs/themes": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.15.0.tgz", - "integrity": "sha512-8ow2zWb1IDvCKjYb0KiLNrK4offFdkfNVPXb1OZykpLCzRU6j+efkY+Y7VQjNlNFXonSw+4AOdGYtmqykDbRiQ==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.22.0.tgz", + "integrity": "sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/types": "3.15.0" + "@shikijs/types": "3.22.0" } }, "node_modules/@shikijs/types": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.15.0.tgz", - "integrity": "sha512-BnP+y/EQnhihgHy4oIAN+6FFtmfTekwOLsQbRw9hOKwqgNy8Bdsjq8B05oAt/ZgvIWWFrshV71ytOrlPfYjIJw==", + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.22.0.tgz", + "integrity": "sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==", "dev": true, "license": "MIT", "dependencies": { @@ -1971,6 +1971,24 @@ "tslib": "^2.4.0" } }, + "node_modules/@types/chai": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", + "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/deep-eql": "*", + "assertion-error": "^2.0.1" + } + }, + "node_modules/@types/deep-eql": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", + "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", @@ -2021,88 +2039,115 @@ "license": "MIT" }, "node_modules/@vitest/expect": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.6.1.tgz", - "integrity": "sha512-jXL+9+ZNIJKruofqXuuTClf44eSpcHlgj3CiuNihUF3Ioujtmc0zIa3UJOW5RjDK1YLBJZnWBlPuqhYycLioog==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz", + "integrity": "sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "1.6.1", - "@vitest/utils": "1.6.1", - "chai": "^4.3.10" + "@types/chai": "^5.2.2", + "@vitest/spy": "3.2.4", + "@vitest/utils": "3.2.4", + "chai": "^5.2.0", + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, - "node_modules/@vitest/runner": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.6.1.tgz", - "integrity": "sha512-3nSnYXkVkf3mXFfE7vVyPmi3Sazhb/2cfZGGs0JRzFsPFvAMBEcrweV1V1GsrstdXeKCTXlJbvnQwGWgEIHmOA==", + "node_modules/@vitest/mocker": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.4.tgz", + "integrity": "sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "1.6.1", - "p-limit": "^5.0.0", - "pathe": "^1.1.1" + "@vitest/spy": "3.2.4", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.17" }, "funding": { "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } } }, - "node_modules/@vitest/runner/node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "node_modules/@vitest/pretty-format": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.4.tgz", + "integrity": "sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } }, - "node_modules/@vitest/snapshot": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.6.1.tgz", - "integrity": "sha512-WvidQuWAzU2p95u8GAKlRMqMyN1yOJkGHnx3M1PL9Raf7AQ1kwLKg04ADlCa3+OXUZE7BceOhVZiuWAbzCKcUQ==", + "node_modules/@vitest/runner": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.4.tgz", + "integrity": "sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==", "dev": true, "license": "MIT", "dependencies": { - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "pretty-format": "^29.7.0" + "@vitest/utils": "3.2.4", + "pathe": "^2.0.3", + "strip-literal": "^3.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, - "node_modules/@vitest/snapshot/node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "node_modules/@vitest/snapshot": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.4.tgz", + "integrity": "sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "3.2.4", + "magic-string": "^0.30.17", + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } }, "node_modules/@vitest/spy": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.6.1.tgz", - "integrity": "sha512-MGcMmpGkZebsMZhbQKkAf9CX5zGvjkBTqf8Zx3ApYWXr3wG+QvEu2eXWfnIIWYSJExIp4V9FCKDEeygzkYrXMw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.4.tgz", + "integrity": "sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==", "dev": true, "license": "MIT", "dependencies": { - "tinyspy": "^2.2.0" + "tinyspy": "^4.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/utils": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.6.1.tgz", - "integrity": "sha512-jOrrUvXM4Av9ZWiG1EajNto0u96kWAhJ1LmPmJhXXQx/32MecEKd10pOLYgS2BQx1TgkGhloPU1ArDW2vvaY6g==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.4.tgz", + "integrity": "sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==", "dev": true, "license": "MIT", "dependencies": { - "diff-sequences": "^29.6.3", - "estree-walker": "^3.0.3", - "loupe": "^2.3.7", - "pretty-format": "^29.7.0" + "@vitest/pretty-format": "3.2.4", + "loupe": "^3.1.4", + "tinyrainbow": "^2.0.0" }, "funding": { "url": "https://opencollective.com/vitest" @@ -2162,19 +2207,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-walk": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", - "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/add-stream": { "version": "1.0.0", "dev": true, @@ -2294,13 +2326,13 @@ } }, "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, "license": "MIT", "engines": { - "node": "*" + "node": ">=12" } }, "node_modules/async": { @@ -2542,22 +2574,20 @@ } }, "node_modules/chai": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", - "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", "dev": true, "license": "MIT", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.1.0" + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=18" } }, "node_modules/chalk": { @@ -2581,16 +2611,13 @@ "license": "MIT" }, "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", "dev": true, "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.2" - }, "engines": { - "node": "*" + "node": ">= 16" } }, "node_modules/chokidar": { @@ -3101,7 +3128,9 @@ } }, "node_modules/debug": { - "version": "4.4.0", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, "license": "MIT", "dependencies": { @@ -3148,14 +3177,11 @@ } }, "node_modules/deep-eql": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", - "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, "license": "MIT", - "dependencies": { - "type-detect": "^4.0.0" - }, "engines": { "node": ">=6" } @@ -3382,6 +3408,13 @@ "node": ">= 0.4" } }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, "node_modules/es-object-atoms": { "version": "1.1.1", "dev": true, @@ -3484,129 +3517,39 @@ "dev": true, "license": "MIT" }, - "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/execa/node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "node_modules/expect-type": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", + "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", "dev": true, "license": "Apache-2.0", "engines": { - "node": ">=16.17.0" - } - }, - "node_modules/execa/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12.0.0" } }, - "node_modules/execa/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "node_modules/exponential-backoff": { + "version": "3.1.3", "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "license": "Apache-2.0" }, - "node_modules/execa/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/execa/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" + "node": ">=12.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/execa/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" + "peerDependencies": { + "picomatch": "^3 || ^4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } } }, - "node_modules/exponential-backoff": { - "version": "3.1.3", - "dev": true, - "license": "Apache-2.0" - }, "node_modules/figures": { "version": "3.2.0", "dev": true, @@ -3821,16 +3764,6 @@ "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, "node_modules/get-intrinsic": { "version": "1.3.0", "dev": true, @@ -3956,19 +3889,6 @@ "node": ">= 0.4" } }, - "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/git-raw-commits": { "version": "3.0.0", "dev": true, @@ -4549,19 +4469,6 @@ "protocols": "^2.0.1" } }, - "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-text-path": { "version": "1.0.1", "dev": true, @@ -5111,23 +5018,6 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/local-pkg": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.1.tgz", - "integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "mlly": "^1.7.3", - "pkg-types": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, "node_modules/locate-path": { "version": "5.0.0", "dev": true, @@ -5172,14 +5062,11 @@ } }, "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", + "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.1" - } + "license": "MIT" }, "node_modules/lunr": { "version": "2.3.9", @@ -6160,22 +6047,6 @@ "node": ">=4" } }, - "node_modules/p-limit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", - "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-locate": { "version": "4.1.0", "dev": true, @@ -6458,13 +6329,13 @@ "license": "MIT" }, "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", + "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", "dev": true, "license": "MIT", "engines": { - "node": "*" + "node": ">= 14.16" } }, "node_modules/picocolors": { @@ -6472,6 +6343,19 @@ "dev": true, "license": "ISC" }, + "node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/pify": { "version": "5.0.0", "dev": true, @@ -7512,9 +7396,9 @@ } }, "node_modules/strip-literal": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-2.1.1.tgz", - "integrity": "sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", + "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", "dev": true, "license": "MIT", "dependencies": { @@ -7756,37 +7640,20 @@ "url": "https://github.com/sponsors/SuperchupuDev" } }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.5.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.3", + "node_modules/tinypool": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", + "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", "dev": true, "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "node": "^18.0.0 || >=20.0.0" } }, - "node_modules/tinypool": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.4.tgz", - "integrity": "sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==", + "node_modules/tinyrainbow": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", + "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", "dev": true, "license": "MIT", "engines": { @@ -7794,9 +7661,9 @@ } }, "node_modules/tinyspy": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.1.tgz", - "integrity": "sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-4.0.4.tgz", + "integrity": "sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==", "dev": true, "license": "MIT", "engines": { @@ -7984,16 +7851,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/type-detect": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", - "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { "version": "0.21.3", "dev": true, @@ -8011,13 +7868,13 @@ "license": "MIT" }, "node_modules/typedoc": { - "version": "0.28.14", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.14.tgz", - "integrity": "sha512-ftJYPvpVfQvFzpkoSfHLkJybdA/geDJ8BGQt/ZnkkhnBYoYW6lBgPQXu6vqLxO4X75dA55hX8Af847H5KXlEFA==", + "version": "0.28.16", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.16.tgz", + "integrity": "sha512-x4xW77QC3i5DUFMBp0qjukOTnr/sSg+oEs86nB3LjDslvAmwe/PUGDWbe3GrIqt59oTqoXK5GRK9tAa0sYMiog==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@gerrit0/mini-shiki": "^3.12.0", + "@gerrit0/mini-shiki": "^3.17.0", "lunr": "^2.3.9", "markdown-it": "^14.1.0", "minimatch": "^9.0.5", @@ -8186,21 +8043,24 @@ } }, "node_modules/vite": { - "version": "5.4.21", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", - "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz", + "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==", "dev": true, "license": "MIT", "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" + "esbuild": "^0.27.0", + "fdir": "^6.5.0", + "picomatch": "^4.0.3", + "postcss": "^8.5.6", + "rollup": "^4.43.0", + "tinyglobby": "^0.2.15" }, "bin": { "vite": "bin/vite.js" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^20.19.0 || >=22.12.0" }, "funding": { "url": "https://github.com/vitejs/vite?sponsor=1" @@ -8209,19 +8069,25 @@ "fsevents": "~2.3.3" }, "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", + "@types/node": "^20.19.0 || >=22.12.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", "lightningcss": "^1.21.0", - "sass": "*", - "sass-embedded": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" }, "peerDependenciesMeta": { "@types/node": { "optional": true }, + "jiti": { + "optional": true + }, "less": { "optional": true }, @@ -8242,43 +8108,42 @@ }, "terser": { "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true } } }, "node_modules/vite-node": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.6.1.tgz", - "integrity": "sha512-YAXkfvGtuTzwWbDSACdJSg4A4DZiAqckWe90Zapc/sEX3XvHcw1NdurM/6od8J207tSDqNbSsgdCacBgvJKFuA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.2.4.tgz", + "integrity": "sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==", "dev": true, "license": "MIT", "dependencies": { "cac": "^6.7.14", - "debug": "^4.3.4", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "vite": "^5.0.0" + "debug": "^4.4.1", + "es-module-lexer": "^1.7.0", + "pathe": "^2.0.3", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" }, "bin": { "vite-node": "vite-node.mjs" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, - "node_modules/vite-node/node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "dev": true, - "license": "MIT" - }, "node_modules/vite/node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", + "integrity": "sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==", "cpu": [ "ppc64" ], @@ -8289,13 +8154,13 @@ "aix" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", + "integrity": "sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==", "cpu": [ "arm" ], @@ -8306,13 +8171,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", + "integrity": "sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==", "cpu": [ "arm64" ], @@ -8323,13 +8188,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", + "integrity": "sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==", "cpu": [ "x64" ], @@ -8340,13 +8205,13 @@ "android" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz", + "integrity": "sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==", "cpu": [ "arm64" ], @@ -8357,13 +8222,13 @@ "darwin" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", + "integrity": "sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==", "cpu": [ "x64" ], @@ -8374,13 +8239,13 @@ "darwin" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", + "integrity": "sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==", "cpu": [ "arm64" ], @@ -8391,13 +8256,13 @@ "freebsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", + "integrity": "sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==", "cpu": [ "x64" ], @@ -8408,13 +8273,13 @@ "freebsd" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", + "integrity": "sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==", "cpu": [ "arm" ], @@ -8425,13 +8290,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", + "integrity": "sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==", "cpu": [ "arm64" ], @@ -8442,13 +8307,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", + "integrity": "sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==", "cpu": [ "ia32" ], @@ -8459,13 +8324,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", + "integrity": "sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==", "cpu": [ "loong64" ], @@ -8476,13 +8341,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", + "integrity": "sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==", "cpu": [ "mips64el" ], @@ -8493,13 +8358,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", + "integrity": "sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==", "cpu": [ "ppc64" ], @@ -8510,13 +8375,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", + "integrity": "sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==", "cpu": [ "riscv64" ], @@ -8527,13 +8392,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", + "integrity": "sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==", "cpu": [ "s390x" ], @@ -8544,13 +8409,13 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", + "integrity": "sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==", "cpu": [ "x64" ], @@ -8561,13 +8426,30 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", + "integrity": "sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", + "integrity": "sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==", "cpu": [ "x64" ], @@ -8578,13 +8460,30 @@ "netbsd" ], "engines": { - "node": ">=12" + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", + "integrity": "sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", + "integrity": "sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==", "cpu": [ "x64" ], @@ -8595,13 +8494,30 @@ "openbsd" ], "engines": { - "node": ">=12" + "node": ">=18" + } + }, + "node_modules/vite/node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", + "integrity": "sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", + "integrity": "sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==", "cpu": [ "x64" ], @@ -8612,13 +8528,13 @@ "sunos" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", + "integrity": "sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==", "cpu": [ "arm64" ], @@ -8629,13 +8545,13 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", + "integrity": "sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==", "cpu": [ "ia32" ], @@ -8646,13 +8562,13 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", + "integrity": "sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==", "cpu": [ "x64" ], @@ -8663,13 +8579,13 @@ "win32" ], "engines": { - "node": ">=12" + "node": ">=18" } }, "node_modules/vite/node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz", + "integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8677,76 +8593,100 @@ "esbuild": "bin/esbuild" }, "engines": { - "node": ">=12" + "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" + "@esbuild/aix-ppc64": "0.27.3", + "@esbuild/android-arm": "0.27.3", + "@esbuild/android-arm64": "0.27.3", + "@esbuild/android-x64": "0.27.3", + "@esbuild/darwin-arm64": "0.27.3", + "@esbuild/darwin-x64": "0.27.3", + "@esbuild/freebsd-arm64": "0.27.3", + "@esbuild/freebsd-x64": "0.27.3", + "@esbuild/linux-arm": "0.27.3", + "@esbuild/linux-arm64": "0.27.3", + "@esbuild/linux-ia32": "0.27.3", + "@esbuild/linux-loong64": "0.27.3", + "@esbuild/linux-mips64el": "0.27.3", + "@esbuild/linux-ppc64": "0.27.3", + "@esbuild/linux-riscv64": "0.27.3", + "@esbuild/linux-s390x": "0.27.3", + "@esbuild/linux-x64": "0.27.3", + "@esbuild/netbsd-arm64": "0.27.3", + "@esbuild/netbsd-x64": "0.27.3", + "@esbuild/openbsd-arm64": "0.27.3", + "@esbuild/openbsd-x64": "0.27.3", + "@esbuild/openharmony-arm64": "0.27.3", + "@esbuild/sunos-x64": "0.27.3", + "@esbuild/win32-arm64": "0.27.3", + "@esbuild/win32-ia32": "0.27.3", + "@esbuild/win32-x64": "0.27.3" + } + }, + "node_modules/vite/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" } }, "node_modules/vitest": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.6.1.tgz", - "integrity": "sha512-Ljb1cnSJSivGN0LqXd/zmDbWEM0RNNg2t1QW/XUhYl/qPqyu7CsqeWtqQXHVaJsecLPuDoak2oJcZN2QoRIOag==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitest/expect": "1.6.1", - "@vitest/runner": "1.6.1", - "@vitest/snapshot": "1.6.1", - "@vitest/spy": "1.6.1", - "@vitest/utils": "1.6.1", - "acorn-walk": "^8.3.2", - "chai": "^4.3.10", - "debug": "^4.3.4", - "execa": "^8.0.1", - "local-pkg": "^0.5.0", - "magic-string": "^0.30.5", - "pathe": "^1.1.1", - "picocolors": "^1.0.0", - "std-env": "^3.5.0", - "strip-literal": "^2.0.0", - "tinybench": "^2.5.1", - "tinypool": "^0.8.3", - "vite": "^5.0.0", - "vite-node": "1.6.1", - "why-is-node-running": "^2.2.2" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", + "integrity": "sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/expect": "3.2.4", + "@vitest/mocker": "3.2.4", + "@vitest/pretty-format": "^3.2.4", + "@vitest/runner": "3.2.4", + "@vitest/snapshot": "3.2.4", + "@vitest/spy": "3.2.4", + "@vitest/utils": "3.2.4", + "chai": "^5.2.0", + "debug": "^4.4.1", + "expect-type": "^1.2.1", + "magic-string": "^0.30.17", + "pathe": "^2.0.3", + "picomatch": "^4.0.2", + "std-env": "^3.9.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.2", + "tinyglobby": "^0.2.14", + "tinypool": "^1.1.1", + "tinyrainbow": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", + "vite-node": "3.2.4", + "why-is-node-running": "^2.3.0" }, "bin": { "vitest": "vitest.mjs" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://opencollective.com/vitest" }, "peerDependencies": { "@edge-runtime/vm": "*", - "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "1.6.1", - "@vitest/ui": "1.6.1", + "@types/debug": "^4.1.12", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "@vitest/browser": "3.2.4", + "@vitest/ui": "3.2.4", "happy-dom": "*", "jsdom": "*" }, @@ -8754,6 +8694,9 @@ "@edge-runtime/vm": { "optional": true }, + "@types/debug": { + "optional": true + }, "@types/node": { "optional": true }, @@ -8771,12 +8714,22 @@ } } }, - "node_modules/vitest/node_modules/pathe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", - "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "node_modules/vitest/node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } }, "node_modules/walk-up-path": { "version": "3.0.1", @@ -9014,27 +8967,14 @@ "node": ">=12" } }, - "node_modules/yocto-queue": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz", - "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "packages/core/web": { "name": "@kompkit/core", "version": "0.1.0-alpha", "devDependencies": { - "tsup": "^8.0.0", - "typedoc": "^0.28.14", - "typescript": "^5.6.0", - "vitest": "^1.6.0" + "tsup": "^8.5.0", + "typedoc": "^0.28.16", + "typescript": "^5.7.0", + "vitest": "^3.0.0" } } } diff --git a/package.json b/package.json index 1a3a839..dbcd8ac 100644 --- a/package.json +++ b/package.json @@ -66,10 +66,10 @@ "license": "MIT", "devDependencies": { "concurrently": "^9.2.1", - "lerna": "^8.0.0", - "tsup": "^8.0.0", - "typedoc": "^0.28.14", - "typescript": "^5.6.0", - "vitest": "^1.6.0" + "lerna": "^8.2.4", + "tsup": "^8.5.0", + "typedoc": "^0.28.16", + "typescript": "^5.7.0", + "vitest": "^3.0.0" } } diff --git a/packages/core/android/build.gradle.kts b/packages/core/android/build.gradle.kts index 824eb09..4e19f11 100644 --- a/packages/core/android/build.gradle.kts +++ b/packages/core/android/build.gradle.kts @@ -1,8 +1,8 @@ plugins { - kotlin("jvm") version "2.1.0" + kotlin("jvm") version "2.3.0" id("org.jetbrains.dokka") version "2.0.0" - id("org.jlleitschuh.gradle.ktlint") version "12.1.2" - id("io.gitlab.arturbosch.detekt") version "1.23.7" + id("org.jlleitschuh.gradle.ktlint") version "14.0.1" + id("io.gitlab.arturbosch.detekt") version "1.23.8" } repositories { diff --git a/packages/core/flutter/pubspec.lock b/packages/core/flutter/pubspec.lock index 5445bd0..9b4c16c 100644 --- a/packages/core/flutter/pubspec.lock +++ b/packages/core/flutter/pubspec.lock @@ -122,10 +122,10 @@ packages: dependency: "direct dev" description: name: flutter_lints - sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1" + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "5.0.0" flutter_test: dependency: "direct dev" description: flutter @@ -167,10 +167,10 @@ packages: dependency: "direct main" description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.20.2" io: dependency: transitive description: @@ -215,10 +215,10 @@ packages: dependency: transitive description: name: lints - sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 url: "https://pub.dev" source: hosted - version: "3.0.0" + version: "5.1.1" logging: dependency: transitive description: diff --git a/packages/core/flutter/pubspec.yaml b/packages/core/flutter/pubspec.yaml index 6277ad4..9161cd7 100644 --- a/packages/core/flutter/pubspec.yaml +++ b/packages/core/flutter/pubspec.yaml @@ -5,19 +5,19 @@ homepage: https://github.com/Kompkit/KompKit repository: https://github.com/Kompkit/KompKit environment: - sdk: '>=3.0.0 <4.0.0' + sdk: ">=3.0.0 <4.0.0" flutter: ">=3.0.0" dependencies: flutter: sdk: flutter - intl: ^0.19.0 + intl: ^0.20.0 dev_dependencies: flutter_test: sdk: flutter - flutter_lints: ^3.0.0 - test: ^1.24.0 + flutter_lints: ^5.0.0 + test: ^1.25.0 flutter: # This package does not contain any Flutter-specific functionality diff --git a/packages/core/web/package.json b/packages/core/web/package.json index 764703f..2da9c8b 100644 --- a/packages/core/web/package.json +++ b/packages/core/web/package.json @@ -14,9 +14,9 @@ "docs": "typedoc" }, "devDependencies": { - "typedoc": "^0.28.14", - "vitest": "^1.6.0", - "tsup": "^8.0.0", - "typescript": "^5.6.0" + "typedoc": "^0.28.16", + "vitest": "^3.0.0", + "tsup": "^8.5.0", + "typescript": "^5.7.0" } } From 8b1c8f8f3843719026ceec2291c2ac1522ff6776 Mon Sep 17 00:00:00 2001 From: Ivan Mendez Date: Mon, 9 Feb 2026 12:58:33 +0000 Subject: [PATCH 09/10] chore: bump version to 0.2.0-alpha and update documentation - Update version across all packages and documentation files - Add comprehensive changelog entry for 0.2.0-alpha release - Document dependency updates (Kotlin 2.3.0, TypeScript 5.7.0, Vitest 3.0.0, Flutter 3.27.4, etc.) - Add Flutter platform references to architecture and roadmap docs - Fix Web CI path filter to exclude Flutter package changes - Standardize formatting and remove trailing whitespace in documentation --- README.md | 2 +- VERSION | 2 +- docs/CHANGELOG.md | 33 ++++++++++++++++++++++++++++++ docs/android.md | 2 +- docs/flutter.md | 22 +++++++++++--------- docs/getting-started.md | 2 +- docs/index.md | 4 ++-- docs/web.md | 16 +++++++++++++-- package-lock.json | 6 +++--- package.json | 2 +- packages/core/flutter/pubspec.yaml | 2 +- packages/core/web/package.json | 2 +- 12 files changed, 71 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index ac07cd1..c826e69 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,7 @@ KompKit/ ## Version Information -- **Current Version**: `0.1.0-alpha` +- **Current Version**: `0.2.0-alpha` - **Minimum Requirements**: - Node.js 20+ (Web) - JDK 17+ (Android) diff --git a/VERSION b/VERSION index 388bb06..e7a2edf 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.1.0-alpha +0.2.0-alpha diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 2f7d4d3..1a9887c 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -7,6 +7,39 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.2.0-alpha] - 2026-02-09 + +### Changed + +#### Dependency Updates + +- **Kotlin**: `2.1.0` → `2.3.0` +- **ktlint-gradle**: `12.1.2` → `14.0.1` +- **detekt**: `1.23.7` → `1.23.8` +- **Vitest**: `^1.6.0` → `^3.0.0` +- **tsup**: `^8.0.0` → `^8.5.0` +- **TypeDoc**: `^0.28.14` → `^0.28.16` +- **TypeScript**: `^5.6.0` → `^5.7.0` +- **intl** (Dart): `^0.19.0` → `^0.20.0` +- **flutter_lints**: `^3.0.0` → `^5.0.0` +- **codecov-action**: `v3` → `v5` +- **Flutter CI**: `3.24.0` → `3.27.4` + +#### Documentation + +- Added Flutter platform references across all documentation (ARCHITECTURE, CHANGELOG, README_CI, contributing, roadmap) +- Updated outdated coroutines version references (`1.8.1` → `1.10.2`) in docs +- Fixed Web CI path filter to exclude Flutter changes +- Updated API signatures and platform-specific adaptations in ARCHITECTURE.md + +### Fixed + +- Web CI workflow now correctly excludes `packages/core/flutter/**` from triggers +- Documentation inconsistencies where Flutter was missing from cross-platform references +- Stale version numbers across documentation files + +--- + ## [0.1.0-alpha] - 2025-11-10 ### Added diff --git a/docs/android.md b/docs/android.md index 4b30836..b49a958 100644 --- a/docs/android.md +++ b/docs/android.md @@ -2,7 +2,7 @@ KompKit Core provides small utilities for Android applications written in Kotlin. -Status: `V0.1.0-alpha`. +Status: `V0.2.0-alpha`. ## Installation diff --git a/docs/flutter.md b/docs/flutter.md index 4c3e4de..01460f1 100644 --- a/docs/flutter.md +++ b/docs/flutter.md @@ -2,6 +2,8 @@ This guide covers using KompKit Core utilities in Flutter and Dart applications. +Status: `V0.2.0-alpha`. + ## Installation ### Flutter Projects @@ -81,7 +83,7 @@ class SearchWidget extends StatefulWidget { class _SearchWidgetState extends State { late final Function(String) _debouncedSearch; - + @override void initState() { super.initState(); @@ -90,12 +92,12 @@ class _SearchWidgetState extends State { _performSearch(query); }, const Duration(milliseconds: 300)); } - + void _performSearch(String query) { // Your search logic here print('Searching for: $query'); } - + @override Widget build(BuildContext context) { return TextField( @@ -165,14 +167,14 @@ class PriceDisplay extends StatelessWidget { final double price; final String currency; final String locale; - + const PriceDisplay({ Key? key, required this.price, this.currency = 'USD', this.locale = 'en_US', }) : super(key: key); - + @override Widget build(BuildContext context) { return Text( @@ -217,10 +219,10 @@ class _DemoScreenState extends State { final _emailController = TextEditingController(); final _priceController = TextEditingController(); late final Function(String) _debouncedEmailCheck; - + String _emailStatus = ''; String _formattedPrice = ''; - + @override void initState() { super.initState(); @@ -230,14 +232,14 @@ class _DemoScreenState extends State { }); }, const Duration(milliseconds: 300)); } - + void _formatPrice() { final price = double.tryParse(_priceController.text) ?? 0; setState(() { _formattedPrice = formatCurrency(price, currency: 'USD', locale: 'en_US'); }); } - + @override Widget build(BuildContext context) { return Scaffold( @@ -299,7 +301,7 @@ dart test KompKit Core for Flutter/Dart works on: - ✅ Flutter iOS -- ✅ Flutter Android +- ✅ Flutter Android - ✅ Flutter Web - ✅ Flutter Desktop (Windows, macOS, Linux) - ✅ Dart VM (Server-side) diff --git a/docs/getting-started.md b/docs/getting-started.md index fc0ed11..4415637 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -2,7 +2,7 @@ KompKit Core is a small cross-platform utility library for Web (TypeScript), Android (Kotlin), and Flutter (Dart). -Status: `V0.1.0-alpha`. +Status: `V0.2.0-alpha`. ## Install diff --git a/docs/index.md b/docs/index.md index f9a8e15..d17af8d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -2,7 +2,7 @@ Tiny, cross-platform utilities for **Web (TypeScript)**, **Android (Kotlin)**, and **Flutter (Dart)**. -Status: `V0.1.0-alpha`. +Status: `V0.2.0-alpha`. ## Utilities @@ -20,4 +20,4 @@ Status: `V0.1.0-alpha`. - API Reference (Web): [docs/api/web](./api/web/) - API Reference (Android): [docs/api/android](./api/android/) - API Reference (Flutter): [docs/api/flutter](./api/flutter/) -- Roadmap: [docs/roadmap.md](./roadmap.md) \ No newline at end of file +- Roadmap: [docs/roadmap.md](./roadmap.md) diff --git a/docs/web.md b/docs/web.md index dc4ad8e..bfaa9ce 100644 --- a/docs/web.md +++ b/docs/web.md @@ -2,9 +2,10 @@ KompKit Core provides small, framework-agnostic utilities for web applications written in TypeScript. -Status: `V0.1.0-alpha`. +Status: `V0.2.0-alpha`. ## Installation + ```bash npm i @kompkit/core ``` @@ -12,11 +13,13 @@ npm i @kompkit/core ## Imports ESM: + ```ts import { debounce, isEmail, formatCurrency } from "@kompkit/core"; ``` CommonJS: + ```js const { debounce, isEmail, formatCurrency } = require("@kompkit/core"); ``` @@ -24,6 +27,7 @@ const { debounce, isEmail, formatCurrency } = require("@kompkit/core"); ## Usage examples ### debounce + ```ts import { debounce } from "@kompkit/core"; @@ -37,6 +41,7 @@ onType("kompkit"); // only this call will execute after ~300ms ``` ### isEmail + ```ts import { isEmail } from "@kompkit/core"; @@ -45,6 +50,7 @@ isEmail("invalid@"); // false ``` ### formatCurrency + ```ts import { formatCurrency } from "@kompkit/core"; @@ -53,6 +59,7 @@ formatCurrency(1234.56, "USD", "en-US"); // "$1,234.56" ``` ## React snippet + ```tsx import { useState } from "react"; import { debounce } from "@kompkit/core"; @@ -63,7 +70,10 @@ export function SearchBox() { return ( { setValue(e.target.value); run(e.target.value); }} + onChange={(e) => { + setValue(e.target.value); + run(e.target.value); + }} placeholder="Search" /> ); @@ -71,6 +81,7 @@ export function SearchBox() { ``` ## Vue snippet + ```vue