From a7822cf1e0bd0cd495adf60426dc4600688988ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Peyronnet?= Date: Sat, 30 Sep 2023 15:06:04 +0200 Subject: [PATCH 1/2] Updated documentation for v1.10 --- .../.vitepress/cache/deps/_metadata.json | 8 +- Documentation/.vitepress/config.js | 2 +- Documentation/package-lock.json | 55 ++++-- Documentation/ui-helpers/windowhelpers.md | 165 ++++++++++++++++++ 4 files changed, 215 insertions(+), 15 deletions(-) diff --git a/Documentation/.vitepress/cache/deps/_metadata.json b/Documentation/.vitepress/cache/deps/_metadata.json index e07fe87..6fa066c 100644 --- a/Documentation/.vitepress/cache/deps/_metadata.json +++ b/Documentation/.vitepress/cache/deps/_metadata.json @@ -1,17 +1,17 @@ { - "hash": "44ac7ce3", - "browserHash": "3699f0c8", + "hash": "3f44673d", + "browserHash": "7f849b1e", "optimized": { "vue": { "src": "../../../node_modules/vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "380e6e7c", + "fileHash": "573735cd", "needsInterop": false }, "vitepress > @vue/devtools-api": { "src": "../../../node_modules/@vue/devtools-api/lib/esm/index.js", "file": "vitepress___@vue_devtools-api.js", - "fileHash": "944a23b0", + "fileHash": "3beed624", "needsInterop": false } }, diff --git a/Documentation/.vitepress/config.js b/Documentation/.vitepress/config.js index 1ca8c4f..da3ecd7 100644 --- a/Documentation/.vitepress/config.js +++ b/Documentation/.vitepress/config.js @@ -38,7 +38,7 @@ export default { }, { icon: "youtube", - link: "https://www.youtube.com/channel/UC283Dtf6EJ8eKfRoo0ISmqg", + link: "https://www.youtube.com/@PeyronnetGroup/", }, ], outline: [1, 3], diff --git a/Documentation/package-lock.json b/Documentation/package-lock.json index 725b6c0..6777a11 100644 --- a/Documentation/package-lock.json +++ b/Documentation/package-lock.json @@ -605,6 +605,28 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", "dev": true }, + "node_modules/@types/linkify-it": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-pTjcqY9E4nOI55Wgpz7eiI8+LzdYnw3qxXCfHyBDdPbYvbyLgWLJGh8EdPvqawwMK1Uo1794AUkkR38Fr0g+2g==", + "dev": true + }, + "node_modules/@types/markdown-it": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-13.0.2.tgz", + "integrity": "sha512-Tla7hH9oeXHOlJyBFdoqV61xWE9FZf/y2g+gFVwQ2vE1/eBzjUno5JCd3Hdb5oATve5OF6xNjZ/4VIZhVVx+hA==", + "dev": true, + "dependencies": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.3.tgz", + "integrity": "sha512-T5k6kTXak79gwmIOaDF2UUQXFbnBE0zBUzF20pz7wDYu0RQMzWg+Ml/Pz50214NsFHBITkoi5VtdjFZnJ2ijjA==", + "dev": true + }, "node_modules/@types/web-bluetooth": { "version": "0.0.17", "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz", @@ -1064,9 +1086,9 @@ "dev": true }, "node_modules/postcss": { - "version": "8.4.29", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.29.tgz", - "integrity": "sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw==", + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", "dev": true, "funding": [ { @@ -1128,9 +1150,9 @@ } }, "node_modules/shiki": { - "version": "0.14.3", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.3.tgz", - "integrity": "sha512-U3S/a+b0KS+UkTyMjoNojvTgrBHjgp7L6ovhFVZsXmBGnVdQ4K4U9oK0z63w538S91ATngv1vXigHCSWOwnr+g==", + "version": "0.14.4", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.4.tgz", + "integrity": "sha512-IXCRip2IQzKwxArNNq1S+On4KPML3Yyn8Zzs/xRgcgOWIr8ntIK3IKzjFPfjy/7kt9ZMjc+FItfqHRBg8b6tNQ==", "dev": true, "dependencies": { "ansi-sequence-parser": "^1.1.0", @@ -1210,25 +1232,38 @@ } }, "node_modules/vitepress": { - "version": "1.0.0-rc.10", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-rc.10.tgz", - "integrity": "sha512-+MsahIWqq5WUEmj6MR4obcKYbT7im07jZPCQPdNJExkeOSbOAJ4xypSLx88x7rvtzWHhHc5aXbOhCRvGEGjFrw==", + "version": "1.0.0-rc.20", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-rc.20.tgz", + "integrity": "sha512-CykMUJ8JLxLcGWek0ew3wln4RYbsOd1+0YzXITTpajggpynm2S331TNkJVOkHrMRc6GYe3y4pS40GfgcW0ZwAw==", "dev": true, "dependencies": { "@docsearch/css": "^3.5.2", "@docsearch/js": "^3.5.2", + "@types/markdown-it": "^13.0.1", "@vue/devtools-api": "^6.5.0", "@vueuse/core": "^10.4.1", "@vueuse/integrations": "^10.4.1", "focus-trap": "^7.5.2", "mark.js": "8.11.1", "minisearch": "^6.1.0", - "shiki": "^0.14.3", + "shiki": "^0.14.4", "vite": "^4.4.9", "vue": "^3.3.4" }, "bin": { "vitepress": "bin/vitepress.js" + }, + "peerDependencies": { + "markdown-it-mathjax3": "^4.3.2", + "postcss": "^8.4.30" + }, + "peerDependenciesMeta": { + "markdown-it-mathjax3": { + "optional": true + }, + "postcss": { + "optional": true + } } }, "node_modules/vscode-oniguruma": { diff --git a/Documentation/ui-helpers/windowhelpers.md b/Documentation/ui-helpers/windowhelpers.md index 7d24238..43ec870 100644 --- a/Documentation/ui-helpers/windowhelpers.md +++ b/Documentation/ui-helpers/windowhelpers.md @@ -41,3 +41,168 @@ public class MyWindowManager } } ``` + +### CloseWindow(windowInfo) + +#### Definition + +Closes a window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | -------------------- | +| `WindowInfo` | `windowInfo` | The window to close. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; +using System.Linq; + +var ws = WindowHelpers.GetWindows(); +var w = ws.Where(x => x.ClassName == "Notepad").First(); +WindowHelpers.CloseWindow(w) +``` + +### MaximizeWindow(windowInfo) + +#### Definition + +Maximizes a window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ----------------------- | +| `WindowInfo` | `windowInfo` | The window to maximize. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; +using System.Linq; + +var ws = WindowHelpers.GetWindows(); +var w = ws.Where(x => x.ClassName == "Notepad").First(); +WindowHelpers.MaximizeWindow(w) +``` + +### RestoreWindow(windowInfo) + +#### Definition + +Restores a window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ---------------------- | +| `WindowInfo` | `windowInfo` | The window to restore. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; +using System.Linq; + +var ws = WindowHelpers.GetWindows(); +var w = ws.Where(x => x.ClassName == "Notepad").First(); +WindowHelpers.RestoreWindow(w) +``` + +### MinimizeWindow(windowInfo) + +#### Definition + +Minimizes a window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ----------------------- | +| `WindowInfo` | `windowInfo` | The window to minimize. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; +using System.Linq; + +var ws = WindowHelpers.GetWindows(); +var w = ws.Where(x => x.ClassName == "Notepad").First(); +WindowHelpers.MinimizeWindow(w) +``` + +### MoveWindow(windowInfo, x, y) + +#### Definition + +Moves a window to specified coordinates. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ----------------------- | +| `WindowInfo` | `windowInfo` | The window to move. | +| `int` | `x` | The X-axis coordinates. | +| `int` | `y` | The Y-axis coordinates. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; + +WindowHelpers.MoveWindow(w, 100, 200); // w is a WindowInfo object, see previous examples. +``` + +### SetTopMost(windowInfo, isTopMost) + +#### Definition + +Sets the Topmost property of a window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ---------------------------------- | +| `WindowInfo` | `windowInfo` | The window to target. | +| `bool` | `isTopMost` | The value of the TopMost property. | + +::: info Note +The `isTopMost` parameter can be set to `true` if the window should always stay on top; `false` otherwise. +::: + +#### Usage + +```c# +using PeyrSharp.UiHelpers; +WindowHelpers.SetTopMost(w, true) +``` + +### GetWindowSize(windowInfo) + +#### Definition + +Gets the width and height of a window. It returns a tuple of integers representing the width and height of the window. + +#### Arguments + +| Type | Name | Meaning | +| ------------ | ------------ | ------------------------------ | +| `WindowInfo` | `windowInfo` | The window to get the size of. | + +#### Exceptions + +| Type | Description | +| --------------------------- | ----------------------------------------- | +| `InvalidOperationException` | Thrown if failed to retrieve window size. | + +#### Usage + +```c# +using PeyrSharp.UiHelpers; + +var size = WindowHelpers.GetWindowSize(w); // w is a WindowInfo object, see previous examples. +Console.WriteLine($"Width: {size.Item1}, Height: {size.Item2}"); +``` From 53e9484a061e788731cc1f466b27be3752774ec0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Peyronnet?= Date: Sat, 30 Sep 2023 15:07:05 +0200 Subject: [PATCH 2/2] Built doc for v1.10 --- docs/404.html | 11 +-- docs/assets/app.0ffeb230.js | 1 + docs/assets/app.49563fce.js | 1 - ...c39d.js => VPAlgoliaSearchBox.8f140d75.js} | 4 +- ...work.b637c96f.js => framework.b40c9ff3.js} | 4 +- docs/assets/chunks/theme.1c98771e.js | 1 - docs/assets/chunks/theme.b4614097.js | 1 + ...ore.md.b893fea5.js => core.md.0cd8ab6b.js} | 2 +- ...3fea5.lean.js => core.md.0cd8ab6b.lean.js} | 2 +- ...8611.js => core_converters.md.6e95d28b.js} | 2 +- ...js => core_converters.md.6e95d28b.lean.js} | 2 +- ...s => core_converters_angle.md.ba10dc1d.js} | 2 +- ...core_converters_angle.md.ba10dc1d.lean.js} | 2 +- ...core_converters_colors_hex.md.5e02203f.js} | 8 +- ...converters_colors_hex.md.5e02203f.lean.js} | 2 +- ...core_converters_colors_hsv.md.87c948d5.js} | 6 +- ..._converters_colors_hsv.md.87c948d5.lean.js | 1 + ..._converters_colors_hsv.md.dbe36e17.lean.js | 1 - ...core_converters_colors_rgb.md.5b4b7e3c.js} | 10 +-- ...converters_colors_rgb.md.5b4b7e3c.lean.js} | 2 +- ... core_converters_distances.md.59b74097.js} | 2 +- ..._converters_distances.md.59b74097.lean.js} | 2 +- ...> core_converters_energies.md.8474f431.js} | 2 +- ...e_converters_energies.md.8474f431.lean.js} | 2 +- ... => core_converters_masses.md.0757297d.js} | 2 +- ...ore_converters_masses.md.0757297d.lean.js} | 2 +- ... => core_converters_speeds.md.c8acd99a.js} | 2 +- ...ore_converters_speeds.md.c8acd99a.lean.js} | 2 +- ...=> core_converters_storage.md.bb73b7e2.js} | 2 +- ...re_converters_storage.md.bb73b7e2.lean.js} | 2 +- ...re_converters_temperatures.md.0c025285.js} | 2 +- ...nverters_temperatures.md.0c025285.lean.js} | 2 +- ...js => core_converters_time.md.e28d170c.js} | 6 +- ... core_converters_time.md.e28d170c.lean.js} | 2 +- ...=> core_converters_volumes.md.80d2f015.js} | 2 +- ...re_converters_volumes.md.80d2f015.lean.js} | 2 +- ....55e86926.js => core_crypt.md.7f709c61.js} | 2 +- ...lean.js => core_crypt.md.7f709c61.lean.js} | 2 +- .../core_guid-options.md.5c1af4b5.lean.js | 1 - ...b5.js => core_guid-options.md.65435a01.js} | 4 +- .../core_guid-options.md.65435a01.lean.js | 1 + ...d.d28b3014.js => core_guid.md.8f92cc06.js} | 2 +- ....lean.js => core_guid.md.8f92cc06.lean.js} | 2 +- ...af24f5.js => core_internet.md.bfab286e.js} | 30 +++---- ...n.js => core_internet.md.bfab286e.lean.js} | 2 +- ...6c2.js => core_json-helper.md.9829d0c8.js} | 12 +-- .../core_json-helper.md.9829d0c8.lean.js | 1 + .../core_json-helper.md.cc60e6c2.lean.js | 1 - ....3a4734f3.js => core_maths.md.99a88ac4.js} | 2 +- ...lean.js => core_maths.md.99a88ac4.lean.js} | 2 +- ...6.js => core_maths_algebra.md.a1c878ba.js} | 2 +- ...=> core_maths_algebra.md.a1c878ba.lean.js} | 2 +- ....js => core_maths_geometry.md.3ef6ef8d.js} | 2 +- ...> core_maths_geometry.md.3ef6ef8d.lean.js} | 2 +- ...core_maths_geometry_circle.md.cf2c0e72.js} | 16 ++-- ...maths_geometry_circle.md.cf2c0e72.lean.js} | 2 +- ...> core_maths_geometry_cone.md.9020dc2e.js} | 24 +++--- ...e_maths_geometry_cone.md.9020dc2e.lean.js} | 2 +- ...> core_maths_geometry_cube.md.94a9ab5b.js} | 52 ++++++------ ...e_maths_geometry_cube.md.94a9ab5b.lean.js} | 2 +- ...re_maths_geometry_cylinder.md.72a7f1fa.js} | 28 +++--- ...ths_geometry_cylinder.md.72a7f1fa.lean.js} | 2 +- ...ore_maths_geometry_diamond.md.a2f1254e.js} | 34 ++++---- ...aths_geometry_diamond.md.a2f1254e.lean.js} | 2 +- ...ore_maths_geometry_hexagon.md.492358ae.js} | 24 +++--- ...aths_geometry_hexagon.md.492358ae.lean.js} | 2 +- ...maths_geometry_pyramid.md.88f2f589.lean.js | 1 - ...ore_maths_geometry_pyramid.md.eaa0444b.js} | 50 +++++------ ...maths_geometry_pyramid.md.eaa0444b.lean.js | 1 + ...e_maths_geometry_rectangle.md.76c0dc8e.js} | 34 ++++---- ...hs_geometry_rectangle.md.76c0dc8e.lean.js} | 2 +- ...core_maths_geometry_sphere.md.5946b618.js} | 24 +++--- ...maths_geometry_sphere.md.5946b618.lean.js} | 2 +- ...aths_geometry_triangle.md.70ac16cf.lean.js | 1 - ...re_maths_geometry_triangle.md.fee7e420.js} | 70 +++++++-------- ...aths_geometry_triangle.md.fee7e420.lean.js | 1 + ... => core_maths_percentages.md.6d1752ea.js} | 2 +- ...ore_maths_percentages.md.6d1752ea.lean.js} | 2 +- ...6a4.js => core_maths_proba.md.dc3a3e18.js} | 2 +- ...s => core_maths_proba.md.dc3a3e18.lean.js} | 2 +- ...b6a.js => core_maths_stats.md.175d8fdb.js} | 2 +- ...s => core_maths_stats.md.175d8fdb.lean.js} | 2 +- ...=> core_maths_trigonometry.md.8d208ceb.js} | 2 +- ...re_maths_trigonometry.md.8d208ceb.lean.js} | 2 +- ...330426.js => core_password.md.654b1f2d.js} | 20 ++--- ...n.js => core_password.md.654b1f2d.lean.js} | 2 +- docs/assets/core_statusinfo.md.a97192f6.js | 1 - .../core_statusinfo.md.a97192f6.lean.js | 1 - docs/assets/core_statusinfo.md.cc755624.js | 1 + .../core_statusinfo.md.cc755624.lean.js | 1 + ...9261.js => core_xml-helper.md.69991328.js} | 18 ++-- ...js => core_xml-helper.md.69991328.lean.js} | 2 +- ...5d6b4f5.js => enumerations.md.40715fa7.js} | 38 ++++----- docs/assets/enumerations.md.40715fa7.lean.js | 1 + docs/assets/enumerations.md.95d6b4f5.lean.js | 1 - ...{env.md.f2ba38d6.js => env.md.02d41078.js} | 2 +- ...ba38d6.lean.js => env.md.02d41078.lean.js} | 2 +- ...c01b3b78.js => env_filesys.md.47cf1218.js} | 38 ++++----- ...ean.js => env_filesys.md.47cf1218.lean.js} | 2 +- ....9b14c21f.js => env_logger.md.09964050.js} | 2 +- ...lean.js => env_logger.md.09964050.lean.js} | 2 +- docs/assets/env_system.md.8962a7fa.lean.js | 1 - ....8962a7fa.js => env_system.md.93ba6399.js} | 14 +-- docs/assets/env_system.md.93ba6399.lean.js | 1 + ....329bcc46.js => env_update.md.fb27e287.js} | 6 +- ...lean.js => env_update.md.fb27e287.lean.js} | 2 +- ....64413305.js => env_uwpapp.md.f9b9170b.js} | 4 +- ...lean.js => env_uwpapp.md.f9b9170b.lean.js} | 2 +- ....77841f50.js => exceptions.md.aa08cd73.js} | 2 +- ...lean.js => exceptions.md.aa08cd73.lean.js} | 2 +- ....32bd4caa.js => extensions.md.3b8d9c51.js} | 2 +- ...lean.js => extensions.md.3b8d9c51.lean.js} | 2 +- ...a02.js => extensions_array.md.0304d0e7.js} | 2 +- ...s => extensions_array.md.0304d0e7.lean.js} | 2 +- ...b3.js => extensions_double.md.954f4d4d.js} | 2 +- ... => extensions_double.md.954f4d4d.lean.js} | 2 +- ...0cb07.js => extensions_int.md.2a945211.js} | 2 +- ....js => extensions_int.md.2a945211.lean.js} | 2 +- .../extensions_string.md.5d08846d.lean.js | 1 - ...6d.js => extensions_string.md.7ea7ef64.js} | 6 +- .../extensions_string.md.7ea7ef64.lean.js | 1 + ...b142ffa1.js => get-started.md.739f2a95.js} | 2 +- ...ean.js => get-started.md.739f2a95.lean.js} | 2 +- ...ex.md.541d4bbc.js => index.md.f3ac5971.js} | 2 +- ...4bbc.lean.js => index.md.f3ac5971.lean.js} | 2 +- ...ro.md.ea3bafe7.js => intro.md.2fca83d6.js} | 2 +- ...afe7.lean.js => intro.md.2fca83d6.lean.js} | 2 +- ...d.cbdb1199.js => reference.md.f58906a7.js} | 2 +- ....lean.js => reference.md.f58906a7.lean.js} | 2 +- docs/assets/style.17f4c02e.css | 1 + docs/assets/style.ddb68ab6.css | 1 - ....f63f6257.js => ui-helpers.md.347ffc12.js} | 2 +- ...lean.js => ui-helpers.md.347ffc12.lean.js} | 2 +- ...31.js => ui-helpers_screen.md.cc96f02f.js} | 18 ++-- ... => ui-helpers_screen.md.cc96f02f.lean.js} | 2 +- .../ui-helpers_windowhelpers.md.a1134c53.js | 25 ------ ...-helpers_windowhelpers.md.a1134c53.lean.js | 1 - .../ui-helpers_windowhelpers.md.b480d14d.js | 77 +++++++++++++++++ ...-helpers_windowhelpers.md.b480d14d.lean.js | 1 + .../ui-helpers_windowinfo.md.7554d1cd.lean.js | 1 - ...s => ui-helpers_windowinfo.md.dd0da397.js} | 6 +- .../ui-helpers_windowinfo.md.dd0da397.lean.js | 1 + ....js => ui-helpers_winforms.md.caf931a7.js} | 22 ++--- ...> ui-helpers_winforms.md.caf931a7.lean.js} | 2 +- ...fecbf.js => ui-helpers_wpf.md.e7c4b045.js} | 2 +- ....js => ui-helpers_wpf.md.e7c4b045.lean.js} | 2 +- docs/core.html | 17 ++-- docs/core/converters.html | 17 ++-- docs/core/converters/angle.html | 19 +++-- docs/core/converters/colors/hex.html | 23 ++--- docs/core/converters/colors/hsv.html | 21 ++--- docs/core/converters/colors/rgb.html | 27 +++--- docs/core/converters/distances.html | 19 +++-- docs/core/converters/energies.html | 19 +++-- docs/core/converters/masses.html | 19 +++-- docs/core/converters/speeds.html | 19 +++-- docs/core/converters/storage.html | 19 +++-- docs/core/converters/temperatures.html | 19 +++-- docs/core/converters/time.html | 23 ++--- docs/core/converters/volumes.html | 19 +++-- docs/core/crypt.html | 19 +++-- docs/core/guid-options.html | 19 +++-- docs/core/guid.html | 19 +++-- docs/core/internet.html | 47 +++++----- docs/core/json-helper.html | 27 +++--- docs/core/maths.html | 17 ++-- docs/core/maths/algebra.html | 19 +++-- docs/core/maths/geometry.html | 17 ++-- docs/core/maths/geometry/circle.html | 33 +++---- docs/core/maths/geometry/cone.html | 39 ++++----- docs/core/maths/geometry/cube.html | 67 ++++++++------- docs/core/maths/geometry/cylinder.html | 45 +++++----- docs/core/maths/geometry/diamond.html | 49 +++++------ docs/core/maths/geometry/hexagon.html | 39 ++++----- docs/core/maths/geometry/pyramid.html | 65 +++++++------- docs/core/maths/geometry/rectangle.html | 51 +++++------ docs/core/maths/geometry/sphere.html | 39 ++++----- docs/core/maths/geometry/triangle.html | 85 ++++++++++--------- docs/core/maths/percentages.html | 19 +++-- docs/core/maths/proba.html | 19 +++-- docs/core/maths/stats.html | 19 +++-- docs/core/maths/trigonometry.html | 19 +++-- docs/core/password.html | 35 ++++---- docs/core/statusinfo.html | 17 ++-- docs/core/xml-helper.html | 35 ++++---- docs/enumerations.html | 53 ++++++------ docs/env.html | 17 ++-- docs/env/filesys.html | 55 ++++++------ docs/env/logger.html | 19 +++-- docs/env/system.html | 29 ++++--- docs/env/update.html | 23 ++--- docs/env/uwpapp.html | 21 ++--- docs/exceptions.html | 19 +++-- docs/extensions.html | 17 ++-- docs/extensions/array.html | 19 +++-- docs/extensions/double.html | 19 +++-- docs/extensions/int.html | 19 +++-- docs/extensions/string.html | 23 ++--- docs/get-started.html | 19 +++-- docs/hashmap.json | 2 +- docs/index.html | 17 ++-- docs/intro.html | 17 ++-- docs/reference.html | 17 ++-- docs/ui-helpers.html | 17 ++-- docs/ui-helpers/screen.html | 35 ++++---- docs/ui-helpers/windowhelpers.html | 71 ++++++++++++++-- docs/ui-helpers/windowinfo.html | 23 ++--- docs/ui-helpers/winforms.html | 39 ++++----- docs/ui-helpers/wpf.html | 19 +++-- 209 files changed, 1427 insertions(+), 1260 deletions(-) create mode 100644 docs/assets/app.0ffeb230.js delete mode 100644 docs/assets/app.49563fce.js rename docs/assets/chunks/{VPAlgoliaSearchBox.c3e2c39d.js => VPAlgoliaSearchBox.8f140d75.js} (99%) rename docs/assets/chunks/{framework.b637c96f.js => framework.b40c9ff3.js} (52%) delete mode 100644 docs/assets/chunks/theme.1c98771e.js create mode 100644 docs/assets/chunks/theme.b4614097.js rename docs/assets/{core.md.b893fea5.js => core.md.0cd8ab6b.js} (93%) rename docs/assets/{core.md.b893fea5.lean.js => core.md.0cd8ab6b.lean.js} (66%) rename docs/assets/{core_converters.md.d4088611.js => core_converters.md.6e95d28b.js} (94%) rename docs/assets/{core_converters.md.d4088611.lean.js => core_converters.md.6e95d28b.lean.js} (69%) rename docs/assets/{core_converters_angle.md.8a16953e.js => core_converters_angle.md.ba10dc1d.js} (98%) rename docs/assets/{core_converters_angle.md.8a16953e.lean.js => core_converters_angle.md.ba10dc1d.lean.js} (70%) rename docs/assets/{core_converters_colors_hex.md.33132cc5.js => core_converters_colors_hex.md.5e02203f.js} (92%) rename docs/assets/{core_converters_colors_hex.md.33132cc5.lean.js => core_converters_colors_hex.md.5e02203f.lean.js} (71%) rename docs/assets/{core_converters_colors_hsv.md.dbe36e17.js => core_converters_colors_hsv.md.87c948d5.js} (61%) create mode 100644 docs/assets/core_converters_colors_hsv.md.87c948d5.lean.js delete mode 100644 docs/assets/core_converters_colors_hsv.md.dbe36e17.lean.js rename docs/assets/{core_converters_colors_rgb.md.d296121e.js => core_converters_colors_rgb.md.5b4b7e3c.js} (97%) rename docs/assets/{core_converters_colors_rgb.md.d296121e.lean.js => core_converters_colors_rgb.md.5b4b7e3c.lean.js} (71%) rename docs/assets/{core_converters_distances.md.0f400c09.js => core_converters_distances.md.59b74097.js} (99%) rename docs/assets/{core_converters_distances.md.0f400c09.lean.js => core_converters_distances.md.59b74097.lean.js} (71%) rename docs/assets/{core_converters_energies.md.d8e42ef0.js => core_converters_energies.md.8474f431.js} (98%) rename docs/assets/{core_converters_energies.md.d8e42ef0.lean.js => core_converters_energies.md.8474f431.lean.js} (71%) rename docs/assets/{core_converters_masses.md.f6cfd9f7.js => core_converters_masses.md.0757297d.js} (98%) rename docs/assets/{core_converters_masses.md.f6cfd9f7.lean.js => core_converters_masses.md.0757297d.lean.js} (70%) rename docs/assets/{core_converters_speeds.md.c887147e.js => core_converters_speeds.md.c8acd99a.js} (99%) rename docs/assets/{core_converters_speeds.md.c887147e.lean.js => core_converters_speeds.md.c8acd99a.lean.js} (70%) rename docs/assets/{core_converters_storage.md.10e30c28.js => core_converters_storage.md.bb73b7e2.js} (99%) rename docs/assets/{core_converters_storage.md.10e30c28.lean.js => core_converters_storage.md.bb73b7e2.lean.js} (71%) rename docs/assets/{core_converters_temperatures.md.8a78c1a2.js => core_converters_temperatures.md.0c025285.js} (98%) rename docs/assets/{core_converters_temperatures.md.8a78c1a2.lean.js => core_converters_temperatures.md.0c025285.lean.js} (72%) rename docs/assets/{core_converters_time.md.7e0c9e9e.js => core_converters_time.md.e28d170c.js} (98%) rename docs/assets/{core_converters_time.md.7e0c9e9e.lean.js => core_converters_time.md.e28d170c.lean.js} (70%) rename docs/assets/{core_converters_volumes.md.385daf16.js => core_converters_volumes.md.80d2f015.js} (98%) rename docs/assets/{core_converters_volumes.md.385daf16.lean.js => core_converters_volumes.md.80d2f015.lean.js} (71%) rename docs/assets/{core_crypt.md.55e86926.js => core_crypt.md.7f709c61.js} (99%) rename docs/assets/{core_crypt.md.55e86926.lean.js => core_crypt.md.7f709c61.lean.js} (68%) delete mode 100644 docs/assets/core_guid-options.md.5c1af4b5.lean.js rename docs/assets/{core_guid-options.md.5c1af4b5.js => core_guid-options.md.65435a01.js} (65%) create mode 100644 docs/assets/core_guid-options.md.65435a01.lean.js rename docs/assets/{core_guid.md.d28b3014.js => core_guid.md.8f92cc06.js} (99%) rename docs/assets/{core_guid.md.d28b3014.lean.js => core_guid.md.8f92cc06.lean.js} (68%) rename docs/assets/{core_internet.md.b3af24f5.js => core_internet.md.bfab286e.js} (93%) rename docs/assets/{core_internet.md.b3af24f5.lean.js => core_internet.md.bfab286e.lean.js} (69%) rename docs/assets/{core_json-helper.md.cc60e6c2.js => core_json-helper.md.9829d0c8.js} (94%) create mode 100644 docs/assets/core_json-helper.md.9829d0c8.lean.js delete mode 100644 docs/assets/core_json-helper.md.cc60e6c2.lean.js rename docs/assets/{core_maths.md.3a4734f3.js => core_maths.md.99a88ac4.js} (95%) rename docs/assets/{core_maths.md.3a4734f3.lean.js => core_maths.md.99a88ac4.lean.js} (68%) rename docs/assets/{core_maths_algebra.md.8645a716.js => core_maths_algebra.md.a1c878ba.js} (99%) rename docs/assets/{core_maths_algebra.md.8645a716.lean.js => core_maths_algebra.md.a1c878ba.lean.js} (70%) rename docs/assets/{core_maths_geometry.md.a190352c.js => core_maths_geometry.md.3ef6ef8d.js} (94%) rename docs/assets/{core_maths_geometry.md.a190352c.lean.js => core_maths_geometry.md.3ef6ef8d.lean.js} (70%) rename docs/assets/{core_maths_geometry_circle.md.a8461aaf.js => core_maths_geometry_circle.md.cf2c0e72.js} (75%) rename docs/assets/{core_maths_geometry_circle.md.a8461aaf.lean.js => core_maths_geometry_circle.md.cf2c0e72.lean.js} (71%) rename docs/assets/{core_maths_geometry_cone.md.2492cc46.js => core_maths_geometry_cone.md.9020dc2e.js} (77%) rename docs/assets/{core_maths_geometry_cone.md.2492cc46.lean.js => core_maths_geometry_cone.md.9020dc2e.lean.js} (56%) rename docs/assets/{core_maths_geometry_cube.md.0f432795.js => core_maths_geometry_cube.md.94a9ab5b.js} (75%) rename docs/assets/{core_maths_geometry_cube.md.0f432795.lean.js => core_maths_geometry_cube.md.94a9ab5b.lean.js} (56%) rename docs/assets/{core_maths_geometry_cylinder.md.6b48f4e1.js => core_maths_geometry_cylinder.md.72a7f1fa.js} (72%) rename docs/assets/{core_maths_geometry_cylinder.md.6b48f4e1.lean.js => core_maths_geometry_cylinder.md.72a7f1fa.lean.js} (72%) rename docs/assets/{core_maths_geometry_diamond.md.aed6072d.js => core_maths_geometry_diamond.md.a2f1254e.js} (75%) rename docs/assets/{core_maths_geometry_diamond.md.aed6072d.lean.js => core_maths_geometry_diamond.md.a2f1254e.lean.js} (57%) rename docs/assets/{core_maths_geometry_hexagon.md.b4c1eb61.js => core_maths_geometry_hexagon.md.492358ae.js} (71%) rename docs/assets/{core_maths_geometry_hexagon.md.b4c1eb61.lean.js => core_maths_geometry_hexagon.md.492358ae.lean.js} (57%) delete mode 100644 docs/assets/core_maths_geometry_pyramid.md.88f2f589.lean.js rename docs/assets/{core_maths_geometry_pyramid.md.88f2f589.js => core_maths_geometry_pyramid.md.eaa0444b.js} (78%) create mode 100644 docs/assets/core_maths_geometry_pyramid.md.eaa0444b.lean.js rename docs/assets/{core_maths_geometry_rectangle.md.113c3105.js => core_maths_geometry_rectangle.md.76c0dc8e.js} (74%) rename docs/assets/{core_maths_geometry_rectangle.md.113c3105.lean.js => core_maths_geometry_rectangle.md.76c0dc8e.lean.js} (72%) rename docs/assets/{core_maths_geometry_sphere.md.5f6f998f.js => core_maths_geometry_sphere.md.5946b618.js} (72%) rename docs/assets/{core_maths_geometry_sphere.md.5f6f998f.lean.js => core_maths_geometry_sphere.md.5946b618.lean.js} (57%) delete mode 100644 docs/assets/core_maths_geometry_triangle.md.70ac16cf.lean.js rename docs/assets/{core_maths_geometry_triangle.md.70ac16cf.js => core_maths_geometry_triangle.md.fee7e420.js} (71%) create mode 100644 docs/assets/core_maths_geometry_triangle.md.fee7e420.lean.js rename docs/assets/{core_maths_percentages.md.a68b9e85.js => core_maths_percentages.md.6d1752ea.js} (99%) rename docs/assets/{core_maths_percentages.md.a68b9e85.lean.js => core_maths_percentages.md.6d1752ea.lean.js} (71%) rename docs/assets/{core_maths_proba.md.0aecd6a4.js => core_maths_proba.md.dc3a3e18.js} (98%) rename docs/assets/{core_maths_proba.md.0aecd6a4.lean.js => core_maths_proba.md.dc3a3e18.lean.js} (69%) rename docs/assets/{core_maths_stats.md.edb41b6a.js => core_maths_stats.md.175d8fdb.js} (99%) rename docs/assets/{core_maths_stats.md.edb41b6a.lean.js => core_maths_stats.md.175d8fdb.lean.js} (69%) rename docs/assets/{core_maths_trigonometry.md.db5e4666.js => core_maths_trigonometry.md.8d208ceb.js} (99%) rename docs/assets/{core_maths_trigonometry.md.db5e4666.lean.js => core_maths_trigonometry.md.8d208ceb.lean.js} (71%) rename docs/assets/{core_password.md.5b330426.js => core_password.md.654b1f2d.js} (93%) rename docs/assets/{core_password.md.5b330426.lean.js => core_password.md.654b1f2d.lean.js} (53%) delete mode 100644 docs/assets/core_statusinfo.md.a97192f6.js delete mode 100644 docs/assets/core_statusinfo.md.a97192f6.lean.js create mode 100644 docs/assets/core_statusinfo.md.cc755624.js create mode 100644 docs/assets/core_statusinfo.md.cc755624.lean.js rename docs/assets/{core_xml-helper.md.bb579261.js => core_xml-helper.md.69991328.js} (95%) rename docs/assets/{core_xml-helper.md.bb579261.lean.js => core_xml-helper.md.69991328.lean.js} (69%) rename docs/assets/{enumerations.md.95d6b4f5.js => enumerations.md.40715fa7.js} (88%) create mode 100644 docs/assets/enumerations.md.40715fa7.lean.js delete mode 100644 docs/assets/enumerations.md.95d6b4f5.lean.js rename docs/assets/{env.md.f2ba38d6.js => env.md.02d41078.js} (92%) rename docs/assets/{env.md.f2ba38d6.lean.js => env.md.02d41078.lean.js} (66%) rename docs/assets/{env_filesys.md.c01b3b78.js => env_filesys.md.47cf1218.js} (90%) rename docs/assets/{env_filesys.md.c01b3b78.lean.js => env_filesys.md.47cf1218.lean.js} (68%) rename docs/assets/{env_logger.md.9b14c21f.js => env_logger.md.09964050.js} (99%) rename docs/assets/{env_logger.md.9b14c21f.lean.js => env_logger.md.09964050.lean.js} (68%) delete mode 100644 docs/assets/env_system.md.8962a7fa.lean.js rename docs/assets/{env_system.md.8962a7fa.js => env_system.md.93ba6399.js} (93%) create mode 100644 docs/assets/env_system.md.93ba6399.lean.js rename docs/assets/{env_update.md.329bcc46.js => env_update.md.fb27e287.js} (96%) rename docs/assets/{env_update.md.329bcc46.lean.js => env_update.md.fb27e287.lean.js} (68%) rename docs/assets/{env_uwpapp.md.64413305.js => env_uwpapp.md.f9b9170b.js} (77%) rename docs/assets/{env_uwpapp.md.64413305.lean.js => env_uwpapp.md.f9b9170b.lean.js} (68%) rename docs/assets/{exceptions.md.77841f50.js => exceptions.md.aa08cd73.js} (98%) rename docs/assets/{exceptions.md.77841f50.lean.js => exceptions.md.aa08cd73.lean.js} (68%) rename docs/assets/{extensions.md.32bd4caa.js => extensions.md.3b8d9c51.js} (92%) rename docs/assets/{extensions.md.32bd4caa.lean.js => extensions.md.3b8d9c51.lean.js} (68%) rename docs/assets/{extensions_array.md.ed7cfa02.js => extensions_array.md.0304d0e7.js} (99%) rename docs/assets/{extensions_array.md.ed7cfa02.lean.js => extensions_array.md.0304d0e7.lean.js} (70%) rename docs/assets/{extensions_double.md.4449dcb3.js => extensions_double.md.954f4d4d.js} (99%) rename docs/assets/{extensions_double.md.4449dcb3.lean.js => extensions_double.md.954f4d4d.lean.js} (70%) rename docs/assets/{extensions_int.md.adc0cb07.js => extensions_int.md.2a945211.js} (99%) rename docs/assets/{extensions_int.md.adc0cb07.lean.js => extensions_int.md.2a945211.lean.js} (69%) delete mode 100644 docs/assets/extensions_string.md.5d08846d.lean.js rename docs/assets/{extensions_string.md.5d08846d.js => extensions_string.md.7ea7ef64.js} (99%) create mode 100644 docs/assets/extensions_string.md.7ea7ef64.lean.js rename docs/assets/{get-started.md.b142ffa1.js => get-started.md.739f2a95.js} (98%) rename docs/assets/{get-started.md.b142ffa1.lean.js => get-started.md.739f2a95.lean.js} (69%) rename docs/assets/{index.md.541d4bbc.js => index.md.f3ac5971.js} (94%) rename docs/assets/{index.md.541d4bbc.lean.js => index.md.f3ac5971.lean.js} (94%) rename docs/assets/{intro.md.ea3bafe7.js => intro.md.2fca83d6.js} (97%) rename docs/assets/{intro.md.ea3bafe7.lean.js => intro.md.2fca83d6.lean.js} (67%) rename docs/assets/{reference.md.cbdb1199.js => reference.md.f58906a7.js} (96%) rename docs/assets/{reference.md.cbdb1199.lean.js => reference.md.f58906a7.lean.js} (52%) create mode 100644 docs/assets/style.17f4c02e.css delete mode 100644 docs/assets/style.ddb68ab6.css rename docs/assets/{ui-helpers.md.f63f6257.js => ui-helpers.md.347ffc12.js} (92%) rename docs/assets/{ui-helpers.md.f63f6257.lean.js => ui-helpers.md.347ffc12.lean.js} (68%) rename docs/assets/{ui-helpers_screen.md.c277ff31.js => ui-helpers_screen.md.cc96f02f.js} (97%) rename docs/assets/{ui-helpers_screen.md.c277ff31.lean.js => ui-helpers_screen.md.cc96f02f.lean.js} (69%) delete mode 100644 docs/assets/ui-helpers_windowhelpers.md.a1134c53.js delete mode 100644 docs/assets/ui-helpers_windowhelpers.md.a1134c53.lean.js create mode 100644 docs/assets/ui-helpers_windowhelpers.md.b480d14d.js create mode 100644 docs/assets/ui-helpers_windowhelpers.md.b480d14d.lean.js delete mode 100644 docs/assets/ui-helpers_windowinfo.md.7554d1cd.lean.js rename docs/assets/{ui-helpers_windowinfo.md.7554d1cd.js => ui-helpers_windowinfo.md.dd0da397.js} (63%) create mode 100644 docs/assets/ui-helpers_windowinfo.md.dd0da397.lean.js rename docs/assets/{ui-helpers_winforms.md.fe389c98.js => ui-helpers_winforms.md.caf931a7.js} (95%) rename docs/assets/{ui-helpers_winforms.md.fe389c98.lean.js => ui-helpers_winforms.md.caf931a7.lean.js} (70%) rename docs/assets/{ui-helpers_wpf.md.91ffecbf.js => ui-helpers_wpf.md.e7c4b045.js} (97%) rename docs/assets/{ui-helpers_wpf.md.91ffecbf.lean.js => ui-helpers_wpf.md.e7c4b045.lean.js} (69%) diff --git a/docs/404.html b/docs/404.html index e0882d8..51a4db8 100644 --- a/docs/404.html +++ b/docs/404.html @@ -5,16 +5,17 @@ 404 | PeyrSharp - + - + - + + -
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.

Released under the MIT License.

- +
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/assets/app.0ffeb230.js b/docs/assets/app.0ffeb230.js new file mode 100644 index 0000000..6eec948 --- /dev/null +++ b/docs/assets/app.0ffeb230.js @@ -0,0 +1 @@ +import{s,a0 as i,a1 as u,a2 as c,a3 as l,a4 as d,a5 as f,a6 as m,a7 as h,a8 as A,a9 as g,U as P,d as v,u as y,j as C,y as w,aa as _,ab as b,ac as E,ad as R}from"./chunks/framework.b40c9ff3.js";import{t as D}from"./chunks/theme.b4614097.js";function p(e){if(e.extends){const a=p(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const o=p(D),j=v({name:"VitePressApp",setup(){const{site:e}=y();return C(()=>{w(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),_(),b(),E(),o.setup&&o.setup(),()=>R(o.Layout)}});async function O(){const e=T(),a=S();a.provide(u,e);const t=c(e.route);return a.provide(l,t),a.component("Content",d),a.component("ClientOnly",f),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),o.enhanceApp&&await o.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function S(){return h(j)}function T(){let e=s,a;return A(t=>{let n=g(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=P(()=>import(n),[])),s&&(e=!1),r},o.NotFound)}s&&O().then(({app:e,router:a,data:t})=>{a.go().then(()=>{i(a.route,t.site),e.mount("#app")})});export{O as createApp}; diff --git a/docs/assets/app.49563fce.js b/docs/assets/app.49563fce.js deleted file mode 100644 index 61a3f1c..0000000 --- a/docs/assets/app.49563fce.js +++ /dev/null @@ -1 +0,0 @@ -import{s as o,a0 as p,a1 as i,a2 as u,a3 as c,a4 as l,a5 as d,a6 as f,a7 as m,a8 as h,a9 as A,U as g,d as P,u as v,j as y,y as C,aa as w,ab as _,ac as b,ad as E}from"./chunks/framework.b637c96f.js";import{t as R}from"./chunks/theme.1c98771e.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=r(R),D=P({name:"VitePressApp",setup(){const{site:e}=v();return y(()=>{C(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),_(),b(),s.setup&&s.setup(),()=>E(s.Layout)}});async function j(){const e=S(),a=O();a.provide(i,e);const t=u(e.route);return a.provide(c,t),a.component("Content",l),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:f}),{app:a,router:e,data:t}}function O(){return m(D)}function S(){let e=o,a;return h(t=>{let n=A(t);return n?(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),o&&(e=!1),g(()=>import(n),[])):null},s.NotFound)}o&&j().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{j as createApp}; diff --git a/docs/assets/chunks/VPAlgoliaSearchBox.c3e2c39d.js b/docs/assets/chunks/VPAlgoliaSearchBox.8f140d75.js similarity index 99% rename from docs/assets/chunks/VPAlgoliaSearchBox.c3e2c39d.js rename to docs/assets/chunks/VPAlgoliaSearchBox.8f140d75.js index 7d6c68d..1fac717 100644 --- a/docs/assets/chunks/VPAlgoliaSearchBox.c3e2c39d.js +++ b/docs/assets/chunks/VPAlgoliaSearchBox.8f140d75.js @@ -1,4 +1,4 @@ -import{d as so,ae as fo,K as mo,j as po,x as vo,o as ho,c as yo}from"./framework.b637c96f.js";import{u as go}from"./theme.1c98771e.js";/*! @docsearch/js 3.5.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */function un(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,r)}return n}function I(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function se(t,e){return function(n){if(Array.isArray(n))return n}(t)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var i,a,u=[],c=!0,s=!1;try{for(o=o.call(n);!(c=(i=o.next()).done)&&(u.push(i.value),!r||u.length!==r);c=!0);}catch(l){s=!0,a=l}finally{try{c||o.return==null||o.return()}finally{if(s)throw a}}return u}}(t,e)||yr(t,e)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +import{d as so,ae as fo,K as mo,j as po,x as vo,o as ho,c as yo}from"./framework.b40c9ff3.js";import{u as go}from"./theme.b4614097.js";/*! @docsearch/js 3.5.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */function un(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,r)}return n}function I(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function se(t,e){return function(n){if(Array.isArray(n))return n}(t)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var i,a,u=[],c=!0,s=!1;try{for(o=o.call(n);!(c=(i=o.next()).done)&&(u.push(i.value),!r||u.length!==r);c=!0);}catch(l){s=!0,a=l}finally{try{c||o.return==null||o.return()}finally{if(s)throw a}}return u}}(t,e)||yr(t,e)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ft(t){return function(e){if(Array.isArray(e))return Lt(e)}(t)||function(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}(t)||yr(t)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function yr(t,e){if(t){if(typeof t=="string")return Lt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set"?Array.from(t):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Lt(t,e):void 0}}function Lt(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n3)for(n=[n],i=3;i0?Ie(v.type,v.props,v.key,null,v.__v):v)!=null){if(v.__=n,v.__b=n.__b+1,(p=b[l])===null||p&&v.key==p.key&&v.type===p.type)b[l]=void 0;else for(m=0;m<_;m++){if((p=b[m])&&v.key==p.key&&v.type===p.type){b[m]=void 0;break}p=null}Yt(t,v,p=p||mt,o,i,a,u,c,s),d=v.__e,(m=v.ref)&&p.ref!=m&&(y||(y=[]),p.ref&&y.push(p.ref,null,v),y.push(m,v.__c||d,v)),d!=null?(h==null&&(h=d),typeof v.type=="function"&&v.__k!=null&&v.__k===p.__k?v.__d=c=wr(v,c,t):c=jr(t,v,p,b,d,c),s||n.type!=="option"?typeof n.type=="function"&&(n.__d=c):t.value=""):c&&p.__e==c&&c.parentNode!=t&&(c=We(p))}for(n.__e=h,l=_;l--;)b[l]!=null&&(typeof n.type=="function"&&b[l].__e!=null&&b[l].__e==n.__d&&(n.__d=We(r,l+1)),Ir(b[l],b[l]));if(y)for(l=0;l3)for(n=[n],i=3;i=n.__.length&&n.__.push({}),n.__[t]}function kr(t){return pe=1,Ar(xr,t)}function Ar(t,e,n){var r=Je(de++,2);return r.t=t,r.__c||(r.__=[n?n(e):xr(void 0,e),function(o){var i=r.t(r.__[0],o);r.__[0]!==i&&(r.__=[i,r.__[1]],r.__c.setState({}))}],r.__c=q),r.__}function Cr(t,e){var n=Je(de++,3);!w.__s&&Gt(n.__H,e)&&(n.__=t,n.__H=e,q.__H.__h.push(n))}function bn(t,e){var n=Je(de++,4);!w.__s&&Gt(n.__H,e)&&(n.__=t,n.__H=e,q.__h.push(n))}function Pt(t,e){var n=Je(de++,7);return Gt(n.__H,e)&&(n.__=t(),n.__H=e,n.__h=t),n.__}function Eo(){Ht.forEach(function(t){if(t.__P)try{t.__H.__h.forEach(ct),t.__H.__h.forEach(Ut),t.__H.__h=[]}catch(e){t.__H.__h=[],w.__e(e,t.__v)}}),Ht=[]}w.__b=function(t){q=null,vn&&vn(t)},w.__r=function(t){dn&&dn(t),de=0;var e=(q=t.__c).__H;e&&(e.__h.forEach(ct),e.__h.forEach(Ut),e.__h=[])},w.diffed=function(t){hn&&hn(t);var e=t.__c;e&&e.__H&&e.__H.__h.length&&(Ht.push(e)!==1&&pn===w.requestAnimationFrame||((pn=w.requestAnimationFrame)||function(n){var r,o=function(){clearTimeout(i),_n&&cancelAnimationFrame(r),setTimeout(n)},i=setTimeout(o,100);_n&&(r=requestAnimationFrame(o))})(Eo)),q=void 0},w.__c=function(t,e){e.some(function(n){try{n.__h.forEach(ct),n.__h=n.__h.filter(function(r){return!r.__||Ut(r)})}catch(r){e.some(function(o){o.__h&&(o.__h=[])}),e=[],w.__e(r,n.__v)}}),yn&&yn(t,e)},w.unmount=function(t){gn&&gn(t);var e=t.__c;if(e&&e.__H)try{e.__H.__.forEach(ct)}catch(n){w.__e(n,e.__v)}};var _n=typeof requestAnimationFrame=="function";function ct(t){var e=q;typeof t.__c=="function"&&t.__c(),q=e}function Ut(t){var e=q;t.__c=t.__(),q=e}function Gt(t,e){return!t||t.length!==e.length||e.some(function(n,r){return n!==t[r]})}function xr(t,e){return typeof e=="function"?e(t):e}function Nr(t,e){for(var n in e)t[n]=e[n];return t}function Ft(t,e){for(var n in t)if(n!=="__source"&&!(n in e))return!0;for(var r in e)if(r!=="__source"&&t[r]!==e[r])return!0;return!1}function Bt(t){this.props=t}(Bt.prototype=new K).isPureReactComponent=!0,Bt.prototype.shouldComponentUpdate=function(t,e){return Ft(this.props,t)||Ft(this.state,e)};var On=w.__b;w.__b=function(t){t.type&&t.type.__f&&t.ref&&(t.props.ref=t.ref,t.ref=null),On&&On(t)};var Po=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911,Sn=function(t,e){return t==null?null:$($(t).map(e))},Io={map:Sn,forEach:Sn,count:function(t){return t?$(t).length:0},only:function(t){var e=$(t);if(e.length!==1)throw"Children.only";return e[0]},toArray:$},Do=w.__e;function ut(){this.__u=0,this.t=null,this.__b=null}function Tr(t){var e=t.__.__c;return e&&e.__e&&e.__e(t)}function je(){this.u=null,this.o=null}w.__e=function(t,e,n){if(t.then){for(var r,o=e;o=o.__;)if((r=o.__c)&&r.__c)return e.__e==null&&(e.__e=n.__e,e.__k=n.__k),r.__c(t,e)}Do(t,e,n)},(ut.prototype=new K).__c=function(t,e){var n=e.__c,r=this;r.t==null&&(r.t=[]),r.t.push(n);var o=Tr(r.__v),i=!1,a=function(){i||(i=!0,n.componentWillUnmount=n.__c,o?o(u):u())};n.__c=n.componentWillUnmount,n.componentWillUnmount=function(){a(),n.__c&&n.__c()};var u=function(){if(!--r.__u){if(r.state.__e){var s=r.state.__e;r.__v.__k[0]=function m(p,v,d){return p&&(p.__v=null,p.__k=p.__k&&p.__k.map(function(h){return m(h,v,d)}),p.__c&&p.__c.__P===v&&(p.__e&&d.insertBefore(p.__e,p.__d),p.__c.__e=!0,p.__c.__P=d)),p}(s,s.__c.__P,s.__c.__O)}var l;for(r.setState({__e:r.__b=null});l=r.t.pop();)l.forceUpdate()}},c=e.__h===!0;r.__u++||c||r.setState({__e:r.__b=r.__v.__k[0]}),t.then(a,a)},ut.prototype.componentWillUnmount=function(){this.t=[]},ut.prototype.render=function(t,e){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=function i(a,u,c){return a&&(a.__c&&a.__c.__H&&(a.__c.__H.__.forEach(function(s){typeof s.__c=="function"&&s.__c()}),a.__c.__H=null),(a=Nr({},a)).__c!=null&&(a.__c.__P===c&&(a.__c.__P=u),a.__c=null),a.__k=a.__k&&a.__k.map(function(s){return i(s,u,c)})),a}(this.__b,n,r.__O=r.__P)}this.__b=null}var o=e.__e&&W(X,null,t.fallback);return o&&(o.__h=null),[W(X,null,e.__e?null:t.children),o]};var wn=function(t,e,n){if(++n[1]===n[0]&&t.o.delete(e),t.props.revealOrder&&(t.props.revealOrder[0]!=="t"||!t.o.size))for(n=t.u;n;){for(;n.length>3;)n.pop()();if(n[1]>>1,1),e.i.removeChild(r)}}),Ke(W(ko,{context:e.context},t.__v),e.l)):e.l&&e.componentWillUnmount()}function Rr(t,e){return W(Ao,{__v:t,i:e})}(je.prototype=new K).__e=function(t){var e=this,n=Tr(e.__v),r=e.o.get(t);return r[0]++,function(o){var i=function(){e.props.revealOrder?(r.push(o),wn(e,t,r)):o()};n?n(i):i()}},je.prototype.render=function(t){this.u=null,this.o=new Map;var e=$(t.children);t.revealOrder&&t.revealOrder[0]==="b"&&e.reverse();for(var n=e.length;n--;)this.o.set(e[n],this.u=[1,0,this.u]);return t.children},je.prototype.componentDidUpdate=je.prototype.componentDidMount=function(){var t=this;this.o.forEach(function(e,n){wn(t,n,e)})};var qr=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,Co=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,xo=function(t){return(typeof Symbol<"u"&&Ve(Symbol())=="symbol"?/fil|che|rad/i:/fil|che|ra/i).test(t)};function Lr(t,e,n){return e.__k==null&&(e.textContent=""),Ke(t,e),typeof n=="function"&&n(),t?t.__c:null}K.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(K.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})});var jn=w.event;function No(){}function To(){return this.cancelBubble}function Ro(){return this.defaultPrevented}w.event=function(t){return jn&&(t=jn(t)),t.persist=No,t.isPropagationStopped=To,t.isDefaultPrevented=Ro,t.nativeEvent=t};var Mr,En={configurable:!0,get:function(){return this.class}},Pn=w.vnode;w.vnode=function(t){var e=t.type,n=t.props,r=n;if(typeof e=="string"){for(var o in r={},n){var i=n[o];o==="value"&&"defaultValue"in n&&i==null||(o==="defaultValue"&&"value"in n&&n.value==null?o="value":o==="download"&&i===!0?i="":/ondoubleclick/i.test(o)?o="ondblclick":/^onchange(textarea|input)/i.test(o+e)&&!xo(n.type)?o="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(o)?o=o.toLowerCase():Co.test(o)?o=o.replace(/[A-Z0-9]/,"-$&").toLowerCase():i===null&&(i=void 0),r[o]=i)}e=="select"&&r.multiple&&Array.isArray(r.value)&&(r.value=$(n.children).forEach(function(a){a.props.selected=r.value.indexOf(a.props.value)!=-1})),e=="select"&&r.defaultValue!=null&&(r.value=$(n.children).forEach(function(a){a.props.selected=r.multiple?r.defaultValue.indexOf(a.props.value)!=-1:r.defaultValue==a.props.value})),t.props=r}e&&n.class!=n.className&&(En.enumerable="className"in n,n.className!=null&&(r.class=n.className),Object.defineProperty(r,"className",En)),t.$$typeof=qr,Pn&&Pn(t)};var In=w.__r;w.__r=function(t){In&&In(t),Mr=t.__c};var qo={ReactCurrentDispatcher:{current:{readContext:function(t){return Mr.__n[t.__c].props.value}}}};(typeof performance>"u"?"undefined":Ve(performance))=="object"&&typeof performance.now=="function"&&performance.now.bind(performance);function Dn(t){return!!t&&t.$$typeof===qr}var f={useState:kr,useReducer:Ar,useEffect:Cr,useLayoutEffect:bn,useRef:function(t){return pe=5,Pt(function(){return{current:t}},[])},useImperativeHandle:function(t,e,n){pe=6,bn(function(){typeof t=="function"?t(e()):t&&(t.current=e())},n==null?n:n.concat(t))},useMemo:Pt,useCallback:function(t,e){return pe=8,Pt(function(){return t},e)},useContext:function(t){var e=q.context[t.__c],n=Je(de++,9);return n.__c=t,e?(n.__==null&&(n.__=!0,e.sub(q)),e.props.value):t.__},useDebugValue:function(t,e){w.useDebugValue&&w.useDebugValue(e?e(t):t)},version:"16.8.0",Children:Io,render:Lr,hydrate:function(t,e,n){return Dr(t,e),typeof n=="function"&&n(),t?t.__c:null},unmountComponentAtNode:function(t){return!!t.__k&&(Ke(null,t),!0)},createPortal:Rr,createElement:W,createContext:function(t,e){var n={__c:e="__cC"+br++,__:t,Consumer:function(r,o){return r.children(o)},Provider:function(r){var o,i;return this.getChildContext||(o=[],(i={})[e]=this,this.getChildContext=function(){return i},this.shouldComponentUpdate=function(a){this.props.value!==a.value&&o.some(Mt)},this.sub=function(a){o.push(a);var u=a.componentWillUnmount;a.componentWillUnmount=function(){o.splice(o.indexOf(a),1),u&&u.call(a)}}),r.children}};return n.Provider.__=n.Consumer.contextType=n},createFactory:function(t){return W.bind(null,t)},cloneElement:function(t){return Dn(t)?jo.apply(null,arguments):t},createRef:function(){return{current:null}},Fragment:X,isValidElement:Dn,findDOMNode:function(t){return t&&(t.base||t.nodeType===1&&t)||null},Component:K,PureComponent:Bt,memo:function(t,e){function n(o){var i=this.props.ref,a=i==o.ref;return!a&&i&&(i.call?i(null):i.current=null),e?!e(this.props,o)||!a:Ft(this.props,o)}function r(o){return this.shouldComponentUpdate=n,W(t,o)}return r.displayName="Memo("+(t.displayName||t.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r},forwardRef:function(t){function e(n,r){var o=Nr({},n);return delete o.ref,t(o,(r=n.ref||r)&&(Ve(r)!="object"||"current"in r)?r:null)}return e.$$typeof=Po,e.render=e,e.prototype.isReactComponent=e.__f=!0,e.displayName="ForwardRef("+(t.displayName||t.name)+")",e},unstable_batchedUpdates:function(t,e){return t(e)},StrictMode:X,Suspense:ut,SuspenseList:je,lazy:function(t){var e,n,r;function o(i){if(e||(e=t()).then(function(a){n=a.default||a},function(a){r=a}),r)throw r;if(!n)throw e;return W(n,i)}return o.displayName="Lazy",o.__f=!0,o},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:qo};function Lo(){return f.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},f.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function Hr(){return f.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20"},f.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var Mo=["translations"];function Vt(){return Vt=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var Fo=f.forwardRef(function(t,e){var n=t.translations,r=n===void 0?{}:n,o=Uo(t,Mo),i=r.buttonText,a=i===void 0?"Search":i,u=r.buttonAriaLabel,c=u===void 0?"Search":u,s=Ho(kr(null),2),l=s[0],m=s[1];return Cr(function(){typeof navigator<"u"&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?m("⌘"):m("Ctrl"))},[]),f.createElement("button",Vt({type:"button",className:"DocSearch DocSearch-Button","aria-label":c},o,{ref:e}),f.createElement("span",{className:"DocSearch-Button-Container"},f.createElement(Hr,null),f.createElement("span",{className:"DocSearch-Button-Placeholder"},a)),f.createElement("span",{className:"DocSearch-Button-Keys"},l!==null&&f.createElement(f.Fragment,null,f.createElement("kbd",{className:"DocSearch-Button-Key"},l==="Ctrl"?f.createElement(Lo,null):l),f.createElement("kbd",{className:"DocSearch-Button-Key"},"K"))))});function Ur(t,e){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),i=0;it.length)&&(e=t.length);for(var n=0,r=new Array(e);n=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function Zi(t){var e=t.translations,n=e===void 0?{}:e,r=Qi(t,Ji),o=n.noResultsText,i=o===void 0?"No results for":o,a=n.suggestedQueryText,u=a===void 0?"Try searching for":a,c=n.reportMissingResultsText,s=c===void 0?"Believe this query should return results?":c,l=n.reportMissingResultsLinkText,m=l===void 0?"Let us know.":l,p=r.state.context.searchSuggestions;return f.createElement("div",{className:"DocSearch-NoResults"},f.createElement("div",{className:"DocSearch-Screen-Icon"},f.createElement(Ki,null)),f.createElement("p",{className:"DocSearch-Title"},i,' "',f.createElement("strong",null,r.state.query),'"'),p&&p.length>0&&f.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},f.createElement("p",{className:"DocSearch-Help"},u,":"),f.createElement("ul",null,p.slice(0,3).reduce(function(v,d){return[].concat($i(v),[f.createElement("li",{key:d},f.createElement("button",{className:"DocSearch-Prefill",key:d,type:"button",onClick:function(){r.setQuery(d.toLowerCase()+" "),r.refresh(),r.inputRef.current.focus()}},d))])},[]))),r.getMissingResultsUrl&&f.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),f.createElement("a",{href:r.getMissingResultsUrl({query:r.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var Yi=["hit","attribute","tagName"];function er(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,r)}return n}function tr(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function nr(t,e){return e.split(".").reduce(function(n,r){return n!=null&&n[r]?n[r]:null},t)}function ue(t){var e=t.hit,n=t.attribute,r=t.tagName;return W(r===void 0?"span":r,tr(tr({},Xi(t,Yi)),{},{dangerouslySetInnerHTML:{__html:nr(e,"_snippetResult.".concat(n,".value"))||nr(e,n)}}))}function rr(t,e){return function(n){if(Array.isArray(n))return n}(t)||function(n,r){var o=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(o!=null){var i,a,u=[],c=!0,s=!1;try{for(o=o.call(n);!(c=(i=o.next()).done)&&(u.push(i.value),!r||u.length!==r);c=!0);}catch(l){s=!0,a=l}finally{try{c||o.return==null||o.return()}finally{if(s)throw a}}return u}}(t,e)||function(n,r){if(n){if(typeof n=="string")return or(n,r);var o=Object.prototype.toString.call(n).slice(8,-1);if(o==="Object"&&n.constructor&&(o=n.constructor.name),o==="Map"||o==="Set")return Array.from(n);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return or(n,r)}}(t,e)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function or(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n|<\/mark>)/g,na=RegExp(zr.source);function Jr(t){var e,n,r=t;if(!r.__docsearch_parent&&!t._highlightResult)return t.hierarchy.lvl0;var o=((r.__docsearch_parent?(e=r.__docsearch_parent)===null||e===void 0||(e=e._highlightResult)===null||e===void 0||(e=e.hierarchy)===null||e===void 0?void 0:e.lvl0:(n=t._highlightResult)===null||n===void 0||(n=n.hierarchy)===null||n===void 0?void 0:n.lvl0)||{}).value;return o&&na.test(o)?o.replace(zr,""):o}function Jt(){return Jt=Object.assign||function(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function aa(t){var e=t.translations,n=e===void 0?{}:e,r=ia(t,oa),o=n.recentSearchesTitle,i=o===void 0?"Recent":o,a=n.noRecentSearchesText,u=a===void 0?"No recent searches":a,c=n.saveRecentSearchButtonTitle,s=c===void 0?"Save this search":c,l=n.removeRecentSearchButtonTitle,m=l===void 0?"Remove this search from history":l,p=n.favoriteSearchesTitle,v=p===void 0?"Favorite":p,d=n.removeFavoriteSearchButtonTitle,h=d===void 0?"Remove this search from favorites":d;return r.state.status==="idle"&&r.hasCollections===!1?r.disableUserPersonalization?null:f.createElement("div",{className:"DocSearch-StartScreen"},f.createElement("p",{className:"DocSearch-Help"},u)):r.hasCollections===!1?null:f.createElement("div",{className:"DocSearch-Dropdown-Container"},f.createElement(zt,ht({},r,{title:i,collection:r.state.collections[0],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Mi,null))},renderAction:function(y){var b=y.item,_=y.runFavoriteTransition,S=y.runDeleteTransition;return f.createElement(f.Fragment,null,f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:s,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),_(function(){r.favoriteSearches.add(b),r.recentSearches.remove(b),r.refresh()})}},f.createElement(Xn,null))),f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:m,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),S(function(){r.recentSearches.remove(b),r.refresh()})}},f.createElement(Kt,null))))}})),f.createElement(zt,ht({},r,{title:v,collection:r.state.collections[1],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Xn,null))},renderAction:function(y){var b=y.item,_=y.runDeleteTransition;return f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:h,type:"submit",onClick:function(S){S.preventDefault(),S.stopPropagation(),_(function(){r.favoriteSearches.remove(b),r.refresh()})}},f.createElement(Kt,null)))}})))}var ca=["translations"];function yt(){return yt=Object.assign||function(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var la=f.memo(function(t){var e=t.translations,n=e===void 0?{}:e,r=ua(t,ca);if(r.state.status==="error")return f.createElement(zi,{translations:n==null?void 0:n.errorScreen});var o=r.state.collections.some(function(i){return i.items.length>0});return r.state.query?o===!1?f.createElement(Zi,yt({},r,{translations:n==null?void 0:n.noResultsScreen})):f.createElement(ra,r):f.createElement(aa,yt({},r,{hasCollections:o,translations:n==null?void 0:n.startScreen}))},function(t,e){return e.state.status==="loading"||e.state.status==="stalled"}),sa=["translations"];function gt(){return gt=Object.assign||function(t){for(var e=1;e=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function ma(t){var e=t.translations,n=e===void 0?{}:e,r=fa(t,sa),o=n.resetButtonTitle,i=o===void 0?"Clear the query":o,a=n.resetButtonAriaLabel,u=a===void 0?"Clear the query":a,c=n.cancelButtonText,s=c===void 0?"Cancel":c,l=n.cancelButtonAriaLabel,m=l===void 0?"Cancel":l,p=r.getFormProps({inputElement:r.inputRef.current}).onReset;return f.useEffect(function(){r.autoFocus&&r.inputRef.current&&r.inputRef.current.focus()},[r.autoFocus,r.inputRef]),f.useEffect(function(){r.isFromSelection&&r.inputRef.current&&r.inputRef.current.select()},[r.isFromSelection,r.inputRef]),f.createElement(f.Fragment,null,f.createElement("form",{className:"DocSearch-Form",onSubmit:function(v){v.preventDefault()},onReset:p},f.createElement("label",gt({className:"DocSearch-MagnifierLabel"},r.getLabelProps()),f.createElement(Hr,null)),f.createElement("div",{className:"DocSearch-LoadingIndicator"},f.createElement(Li,null)),f.createElement("input",gt({className:"DocSearch-Input",ref:r.inputRef},r.getInputProps({inputElement:r.inputRef.current,autoFocus:r.autoFocus,maxLength:64}))),f.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":u,hidden:!r.state.query},f.createElement(Kt,null))),f.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":m,onClick:r.onClose},s))}var pa=["_highlightResult","_snippetResult"];function va(t,e){if(t==null)return{};var n,r,o=function(a,u){if(a==null)return{};var c,s,l={},m=Object.keys(a);for(s=0;s=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function da(t){return function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch{return!1}}()===!1?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(e){return window.localStorage.setItem(t,JSON.stringify(e))},getItem:function(){var e=window.localStorage.getItem(t);return e?JSON.parse(e):[]}}}function cr(t){var e=t.key,n=t.limit,r=n===void 0?5:n,o=da(e),i=o.getItem().slice(0,r);return{add:function(a){var u=a,c=(u._highlightResult,u._snippetResult,va(u,pa)),s=i.findIndex(function(l){return l.objectID===c.objectID});s>-1&&i.splice(s,1),i.unshift(c),i=i.slice(0,r),o.setItem(i)},remove:function(a){i=i.filter(function(u){return u.objectID!==a.objectID}),o.setItem(i)},getAll:function(){return i}}}var ha=["facetName","facetQuery"];function ya(t){var e,n="algoliasearch-client-js-".concat(t.key),r=function(){return e===void 0&&(e=t.localStorage||window.localStorage),e},o=function(){return JSON.parse(r().getItem(n)||"{}")},i=function(u){r().setItem(n,JSON.stringify(u))},a=function(){var u=t.timeToLive?1e3*t.timeToLive:null,c=o(),s=Object.fromEntries(Object.entries(c).filter(function(m){return se(m,2)[1].timestamp!==void 0}));if(i(s),u){var l=Object.fromEntries(Object.entries(s).filter(function(m){var p=se(m,2)[1],v=new Date().getTime();return!(p.timestamp+u2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){a();var l=JSON.stringify(u);return o()[l]}).then(function(l){return Promise.all([l?l.value:c(),l!==void 0])}).then(function(l){var m=se(l,2),p=m[0],v=m[1];return Promise.all([p,v||s.miss(p)])}).then(function(l){return se(l,1)[0]})},set:function(u,c){return Promise.resolve().then(function(){var s=o();return s[JSON.stringify(u)]={timestamp:new Date().getTime(),value:c},r().setItem(n,JSON.stringify(s)),c})},delete:function(u){return Promise.resolve().then(function(){var c=o();delete c[JSON.stringify(u)],r().setItem(n,JSON.stringify(c))})},clear:function(){return Promise.resolve().then(function(){r().removeItem(n)})}}}function Ee(t){var e=ft(t.caches),n=e.shift();return n===void 0?{get:function(r,o){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return o().then(function(a){return Promise.all([a,i.miss(a)])}).then(function(a){return se(a,1)[0]})},set:function(r,o){return Promise.resolve(o)},delete:function(r){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(r,o){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(r,o,i).catch(function(){return Ee({caches:e}).get(r,o,i)})},set:function(r,o){return n.set(r,o).catch(function(){return Ee({caches:e}).set(r,o)})},delete:function(r){return n.delete(r).catch(function(){return Ee({caches:e}).delete(r)})},clear:function(){return n.clear().catch(function(){return Ee({caches:e}).clear()})}}}function Tt(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{serializable:!0},e={};return{get:function(n,r){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}},i=JSON.stringify(n);if(i in e)return Promise.resolve(t.serializable?JSON.parse(e[i]):e[i]);var a=r(),u=o&&o.miss||function(){return Promise.resolve()};return a.then(function(c){return u(c)}).then(function(){return a})},set:function(n,r){return e[JSON.stringify(n)]=t.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(n){return delete e[JSON.stringify(n)],Promise.resolve()},clear:function(){return e={},Promise.resolve()}}}function ga(t){for(var e=t.length-1;e>0;e--){var n=Math.floor(Math.random()*(e+1)),r=t[e];t[e]=t[n],t[n]=r}return t}function $r(t,e){return e&&Object.keys(e).forEach(function(n){t[n]=e[n](t)}),t}function bt(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r0?r:void 0,timeout:n.timeout||e,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}var me={Read:1,Write:2,Any:3},Qr=1,ba=2,Zr=3;function Yr(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Qr;return I(I({},t),{},{status:e,lastUpdate:Date.now()})}function Gr(t){return typeof t=="string"?{protocol:"https",url:t,accept:me.Any}:{protocol:t.protocol||"https",url:t.url,accept:t.accept||me.Any}}var $t="GET",_t="POST";function _a(t,e){return Promise.all(e.map(function(n){return t.get(n,function(){return Promise.resolve(Yr(n))})})).then(function(n){var r=n.filter(function(a){return function(u){return u.status===Qr||Date.now()-u.lastUpdate>12e4}(a)}),o=n.filter(function(a){return function(u){return u.status===Zr&&Date.now()-u.lastUpdate<=12e4}(a)}),i=[].concat(ft(r),ft(o));return{getTimeout:function(a,u){return(o.length===0&&a===0?1:o.length+3+a)*u},statelessHosts:i.length>0?i.map(function(a){return Gr(a)}):e}})}function lr(t,e,n,r){var o=[],i=function(p,v){if(!(p.method===$t||p.data===void 0&&v.data===void 0)){var d=Array.isArray(p.data)?p.data:I(I({},p.data),v.data);return JSON.stringify(d)}}(n,r),a=function(p,v){var d=I(I({},p.headers),v.headers),h={};return Object.keys(d).forEach(function(y){var b=d[y];h[y.toLowerCase()]=b}),h}(t,r),u=n.method,c=n.method!==$t?{}:I(I({},n.data),r.data),s=I(I(I({"x-algolia-agent":t.userAgent.value},t.queryParameters),c),r.queryParameters),l=0,m=function p(v,d){var h=v.pop();if(h===void 0)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:sr(o)};var y={data:i,headers:a,method:u,url:Sa(h,n.path,s),connectTimeout:d(l,t.timeouts.connect),responseTimeout:d(l,r.timeout)},b=function(S){var O={request:y,response:S,host:h,triesLeft:v.length};return o.push(O),O},_={onSuccess:function(S){return function(O){try{return JSON.parse(O.content)}catch(g){throw function(P,C){return{name:"DeserializationError",message:P,response:C}}(g.message,O)}}(S)},onRetry:function(S){var O=b(S);return S.isTimedOut&&l++,Promise.all([t.logger.info("Retryable failure",eo(O)),t.hostsCache.set(h,Yr(h,S.isTimedOut?Zr:ba))]).then(function(){return p(v,d)})},onFail:function(S){throw b(S),function(O,g){var P=O.content,C=O.status,L=P;try{L=JSON.parse(P).message}catch{}return function(x,k,N){return{name:"ApiError",message:x,status:k,transporterStackTrace:N}}(L,C,g)}(S,sr(o))}};return t.requester.send(y).then(function(S){return function(O,g){return function(P){var C=P.status;return P.isTimedOut||function(L){var x=L.isTimedOut,k=L.status;return!x&&~~k==0}(P)||~~(C/100)!=2&&~~(C/100)!=4}(O)?g.onRetry(O):~~(O.status/100)==2?g.onSuccess(O):g.onFail(O)}(S,_)})};return _a(t.hostsCache,e).then(function(p){return m(ft(p.statelessHosts).reverse(),p.getTimeout)})}function Oa(t){var e={value:"Algolia for JavaScript (".concat(t,")"),add:function(n){var r="; ".concat(n.segment).concat(n.version!==void 0?" (".concat(n.version,")"):"");return e.value.indexOf(r)===-1&&(e.value="".concat(e.value).concat(r)),e}};return e}function Sa(t,e,n){var r=Xr(n),o="".concat(t.protocol,"://").concat(t.url,"/").concat(e.charAt(0)==="/"?e.substr(1):e);return r.length&&(o+="?".concat(r)),o}function Xr(t){return Object.keys(t).map(function(e){return bt("%s=%s",e,(n=t[e],Object.prototype.toString.call(n)==="[object Object]"||Object.prototype.toString.call(n)==="[object Array]"?JSON.stringify(t[e]):t[e]));var n}).join("&")}function sr(t){return t.map(function(e){return eo(e)})}function eo(t){var e=t.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return I(I({},t),{},{request:I(I({},t.request),{},{headers:I(I({},t.request.headers),e)})})}var wa=function(t){var e=t.appId,n=function(i,a,u){var c={"x-algolia-api-key":u,"x-algolia-application-id":a};return{headers:function(){return i===st.WithinHeaders?c:{}},queryParameters:function(){return i===st.WithinQueryParameters?c:{}}}}(t.authMode!==void 0?t.authMode:st.WithinHeaders,e,t.apiKey),r=function(i){var a=i.hostsCache,u=i.logger,c=i.requester,s=i.requestsCache,l=i.responsesCache,m=i.timeouts,p=i.userAgent,v=i.hosts,d=i.queryParameters,h={hostsCache:a,logger:u,requester:c,requestsCache:s,responsesCache:l,timeouts:m,userAgent:p,headers:i.headers,queryParameters:d,hosts:v.map(function(y){return Gr(y)}),read:function(y,b){var _=ur(b,h.timeouts.read),S=function(){return lr(h,h.hosts.filter(function(g){return(g.accept&me.Read)!=0}),y,_)};if((_.cacheable!==void 0?_.cacheable:y.cacheable)!==!0)return S();var O={request:y,mappedRequestOptions:_,transporter:{queryParameters:h.queryParameters,headers:h.headers}};return h.responsesCache.get(O,function(){return h.requestsCache.get(O,function(){return h.requestsCache.set(O,S()).then(function(g){return Promise.all([h.requestsCache.delete(O),g])},function(g){return Promise.all([h.requestsCache.delete(O),Promise.reject(g)])}).then(function(g){var P=se(g,2);return P[0],P[1]})})},{miss:function(g){return h.responsesCache.set(O,g)}})},write:function(y,b){return lr(h,h.hosts.filter(function(_){return(_.accept&me.Write)!=0}),y,ur(b,h.timeouts.write))}};return h}(I(I({hosts:[{url:"".concat(e,"-dsn.algolia.net"),accept:me.Read},{url:"".concat(e,".algolia.net"),accept:me.Write}].concat(ga([{url:"".concat(e,"-1.algolianet.com")},{url:"".concat(e,"-2.algolianet.com")},{url:"".concat(e,"-3.algolianet.com")}]))},t),{},{headers:I(I(I({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),t.headers),queryParameters:I(I({},n.queryParameters()),t.queryParameters)})),o={transporter:r,appId:e,addAlgoliaAgent:function(i,a){r.userAgent.add({segment:i,version:a})},clearCache:function(){return Promise.all([r.requestsCache.clear(),r.responsesCache.clear()]).then(function(){})}};return $r(o,t.methods)},ja=function(t){return function(e,n){return e.method===$t?t.transporter.read(e,n):t.transporter.write(e,n)}},to=function(t){return function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r={transporter:t.transporter,appId:t.appId,indexName:e};return $r(r,n.methods)}},fr=function(t){return function(e,n){var r=e.map(function(o){return I(I({},o),{},{params:Xr(o.params||{})})});return t.transporter.read({method:_t,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)}},mr=function(t){return function(e,n){return Promise.all(e.map(function(r){var o=r.params,i=o.facetName,a=o.facetQuery,u=_o(o,ha);return to(t)(r.indexName,{methods:{searchForFacetValues:no}}).searchForFacetValues(i,a,I(I({},n),u))}))}},Ea=function(t){return function(e,n,r){return t.transporter.read({method:_t,path:bt("1/answers/%s/prediction",t.indexName),data:{query:e,queryLanguages:n},cacheable:!0},r)}},Pa=function(t){return function(e,n){return t.transporter.read({method:_t,path:bt("1/indexes/%s/query",t.indexName),data:{query:e},cacheable:!0},n)}},no=function(t){return function(e,n,r){return t.transporter.read({method:_t,path:bt("1/indexes/%s/facets/%s/query",t.indexName,e),data:{facetQuery:n},cacheable:!0},r)}},Ia=1,Da=2,ka=3;function ro(t,e,n){var r,o={appId:t,apiKey:e,timeouts:{connect:1,read:2,write:30},requester:{send:function(i){return new Promise(function(a){var u=new XMLHttpRequest;u.open(i.method,i.url,!0),Object.keys(i.headers).forEach(function(m){return u.setRequestHeader(m,i.headers[m])});var c,s=function(m,p){return setTimeout(function(){u.abort(),a({status:0,content:p,isTimedOut:!0})},1e3*m)},l=s(i.connectTimeout,"Connection timeout");u.onreadystatechange=function(){u.readyState>u.OPENED&&c===void 0&&(clearTimeout(l),c=s(i.responseTimeout,"Socket timeout"))},u.onerror=function(){u.status===0&&(clearTimeout(l),clearTimeout(c),a({content:u.responseText||"Network request failed",status:u.status,isTimedOut:!1}))},u.onload=function(){clearTimeout(l),clearTimeout(c),a({content:u.responseText,status:u.status,isTimedOut:!1})},u.send(i.data)})}},logger:(r=ka,{debug:function(i,a){return Ia>=r&&console.debug(i,a),Promise.resolve()},info:function(i,a){return Da>=r&&console.info(i,a),Promise.resolve()},error:function(i,a){return console.error(i,a),Promise.resolve()}}),responsesCache:Tt(),requestsCache:Tt({serializable:!1}),hostsCache:Ee({caches:[ya({key:"".concat("4.19.1","-").concat(t)}),Tt()]}),userAgent:Oa("4.19.1").add({segment:"Browser",version:"lite"}),authMode:st.WithinQueryParameters};return wa(I(I(I({},o),n),{},{methods:{search:fr,searchForFacetValues:mr,multipleQueries:fr,multipleSearchForFacetValues:mr,customRequest:ja,initIndex:function(i){return function(a){return to(i)(a,{methods:{search:Pa,searchForFacetValues:no,findAnswers:Ea}})}}}}))}ro.version="4.19.1";var Aa=["footer","searchBox"];function Be(){return Be=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n=0||(l[c]=a[c]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}function Ta(t){var e=t.appId,n=t.apiKey,r=t.indexName,o=t.placeholder,i=o===void 0?"Search docs":o,a=t.searchParameters,u=t.maxResultsPerGroup,c=t.onClose,s=c===void 0?ta:c,l=t.transformItems,m=l===void 0?ar:l,p=t.hitComponent,v=p===void 0?qi:p,d=t.resultsFooterComponent,h=d===void 0?function(){return null}:d,y=t.navigator,b=t.initialScrollY,_=b===void 0?0:b,S=t.transformSearchClient,O=S===void 0?ar:S,g=t.disableUserPersonalization,P=g!==void 0&&g,C=t.initialQuery,L=C===void 0?"":C,x=t.translations,k=x===void 0?{}:x,N=t.getMissingResultsUrl,U=t.insights,F=U!==void 0&&U,M=k.footer,Ot=k.searchBox,St=Na(k,Aa),$e=xa(f.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),B=$e[0],oo=$e[1],Xt=f.useRef(null),wt=f.useRef(null),en=f.useRef(null),Qe=f.useRef(null),he=f.useRef(null),Q=f.useRef(10),tn=f.useRef(typeof window<"u"?window.getSelection().toString().slice(0,64):"").current,ee=f.useRef(L||tn).current,nn=function(j,D,T){return f.useMemo(function(){var H=ro(j,D);return H.addAlgoliaAgent("docsearch","3.5.2"),/docsearch.js \(.*\)/.test(H.transporter.userAgent.value)===!1&&H.addAlgoliaAgent("docsearch-react","3.5.2"),T(H)},[j,D,T])}(e,n,O),oe=f.useRef(cr({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(r),limit:10})).current,ye=f.useRef(cr({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(r),limit:oe.getAll().length===0?7:4})).current,ge=f.useCallback(function(j){if(!P){var D=j.type==="content"?j.__docsearch_parent:j;D&&oe.getAll().findIndex(function(T){return T.objectID===D.objectID})===-1&&ye.add(D)}},[oe,ye,P]),io=f.useCallback(function(j){if(B.context.algoliaInsightsPlugin&&j.__autocomplete_id){var D=j,T={eventName:"Item Selected",index:D.__autocomplete_indexName,items:[D],positions:[j.__autocomplete_id],queryID:D.__autocomplete_queryID};B.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(T)}},[B.context.algoliaInsightsPlugin]),be=f.useMemo(function(){return Ni({id:"docsearch",defaultActiveItemId:0,placeholder:i,openOnFocus:!0,initialState:{query:ee,context:{searchSuggestions:[]}},insights:F,navigator:y,onStateChange:function(j){oo(j.state)},getSources:function(j){var D=j.query,T=j.state,H=j.setContext,Z=j.setStatus;if(!D)return P?[]:[{sourceId:"recentSearches",onSelect:function(A){var V=A.item,_e=A.event;ge(V),at(_e)||s()},getItemUrl:function(A){return A.item.url},getItems:function(){return ye.getAll()}},{sourceId:"favoriteSearches",onSelect:function(A){var V=A.item,_e=A.event;ge(V),at(_e)||s()},getItemUrl:function(A){return A.item.url},getItems:function(){return oe.getAll()}}];var Y=!!F;return nn.search([{query:D,indexName:r,params:Rt({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(Q.current),"hierarchy.lvl2:".concat(Q.current),"hierarchy.lvl3:".concat(Q.current),"hierarchy.lvl4:".concat(Q.current),"hierarchy.lvl5:".concat(Q.current),"hierarchy.lvl6:".concat(Q.current),"content:".concat(Q.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20,clickAnalytics:Y},a)}]).catch(function(A){throw A.name==="RetryError"&&Z("error"),A}).then(function(A){var V=A.results[0],_e=V.hits,uo=V.nbHits,jt=ir(_e,function(Et){return Jr(Et)},u);T.context.searchSuggestions.length0&&(rn(),he.current&&he.current.focus())},[ee,rn]),f.useEffect(function(){function j(){if(wt.current){var D=.01*window.innerHeight;wt.current.style.setProperty("--docsearch-vh","".concat(D,"px"))}}return j(),window.addEventListener("resize",j),function(){window.removeEventListener("resize",j)}},[]),f.createElement("div",Be({ref:Xt},co({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container",B.status==="stalled"&&"DocSearch-Container--Stalled",B.status==="error"&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(j){j.target===j.currentTarget&&s()}}),f.createElement("div",{className:"DocSearch-Modal",ref:wt},f.createElement("header",{className:"DocSearch-SearchBar",ref:en},f.createElement(ma,Be({},be,{state:B,autoFocus:ee.length===0,inputRef:he,isFromSelection:!!ee&&ee===tn,translations:Ot,onClose:s}))),f.createElement("div",{className:"DocSearch-Dropdown",ref:Qe},f.createElement(la,Be({},be,{indexName:r,state:B,hitComponent:v,resultsFooterComponent:h,disableUserPersonalization:P,recentSearches:ye,favoriteSearches:oe,inputRef:he,translations:St,getMissingResultsUrl:N,onItemClick:function(j,D){io(j),ge(j),at(D)||s()}}))),f.createElement("footer",{className:"DocSearch-Footer"},f.createElement(Ri,{translations:M}))))}function Qt(){return Qt=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&arguments[1]!==void 0?arguments[1]:window;return typeof e=="string"?n.document.querySelector(e):e}(t.container,t.environment))}const La={id:"docsearch"},Ua=so({__name:"VPAlgoliaSearchBox",props:{algolia:{}},setup(t){const e=t,n=fo(),r=mo(),{site:o,localeIndex:i,lang:a}=go();po(u),vo(i,u);function u(){var v,d;const l={...e.algolia,...(v=e.algolia.locales)==null?void 0:v[i.value]},m=((d=l.searchParameters)==null?void 0:d.facetFilters)??[],p=[...(Array.isArray(m)?m:[m]).filter(h=>!h.startsWith("lang:")),`lang:${a.value}`];c({...l,searchParameters:{...l.searchParameters,facetFilters:p}})}function c(l){const m=Object.assign({},l,{container:"#docsearch",navigator:{navigate({itemUrl:p}){const{pathname:v}=new URL(window.location.origin+p);r.path===v?window.location.assign(window.location.origin+p):n.go(p)}},transformItems(p){return p.map(v=>Object.assign({},v,{url:s(v.url)}))},hitComponent({hit:p,children:v}){return{__v:null,type:"a",ref:void 0,constructor:void 0,key:void 0,props:{href:p.url,children:v}}}});qa(m)}function s(l){const{pathname:m,hash:p}=new URL(l);return m.replace(/\.html$/,o.value.cleanUrls?"":".html")+p}return(l,m)=>(ho(),yo("div",La))}});export{Ua as default}; +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function hr(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&arguments[1]!==void 0?arguments[1]:window;return typeof e=="string"?n.document.querySelector(e):e}(t.container,t.environment))}const La={id:"docsearch"},Ua=so({__name:"VPAlgoliaSearchBox",props:{algolia:{}},setup(t){const e=t,n=fo(),r=mo(),{site:o,localeIndex:i,lang:a}=go();po(u),vo(i,u);function u(){var v,d;const l={...e.algolia,...(v=e.algolia.locales)==null?void 0:v[i.value]},m=((d=l.searchParameters)==null?void 0:d.facetFilters)??[],p=[...(Array.isArray(m)?m:[m]).filter(h=>!h.startsWith("lang:")),`lang:${a.value}`];c({...l,searchParameters:{...l.searchParameters,facetFilters:p}})}function c(l){const m=Object.assign({},l,{container:"#docsearch",navigator:{navigate({itemUrl:p}){const{pathname:v}=new URL(window.location.origin+p);r.path===v?window.location.assign(window.location.origin+p):n.go(p)}},transformItems(p){return p.map(v=>Object.assign({},v,{url:s(v.url)}))},hitComponent({hit:p,children:v}){return{__v:null,type:"a",ref:void 0,constructor:void 0,key:void 0,props:{href:p.url,children:v}}}});qa(m)}function s(l){const{pathname:m,hash:p}=new URL(l,location.origin);return m.replace(/\.html$/,o.value.cleanUrls?"":".html")+p}return(l,m)=>(ho(),yo("div",La))}});export{Ua as default}; diff --git a/docs/assets/chunks/framework.b637c96f.js b/docs/assets/chunks/framework.b40c9ff3.js similarity index 52% rename from docs/assets/chunks/framework.b637c96f.js rename to docs/assets/chunks/framework.b40c9ff3.js index 076c6ea..55f3dcb 100644 --- a/docs/assets/chunks/framework.b637c96f.js +++ b/docs/assets/chunks/framework.b40c9ff3.js @@ -1,2 +1,2 @@ -function rr(e,t){const n=Object.create(null),r=e.split(",");for(let s=0;s!!n[s.toLowerCase()]:s=>!!n[s]}const te={},dt=[],Re=()=>{},qo=()=>!1,zo=/^on[^a-z]/,Bt=e=>zo.test(e),sr=e=>e.startsWith("onUpdate:"),ie=Object.assign,or=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Yo=Object.prototype.hasOwnProperty,z=(e,t)=>Yo.call(e,t),D=Array.isArray,ht=e=>mn(e)==="[object Map]",Ss=e=>mn(e)==="[object Set]",K=e=>typeof e=="function",se=e=>typeof e=="string",ir=e=>typeof e=="symbol",ee=e=>e!==null&&typeof e=="object",Os=e=>ee(e)&&K(e.then)&&K(e.catch),Rs=Object.prototype.toString,mn=e=>Rs.call(e),Jo=e=>mn(e).slice(8,-1),Ps=e=>mn(e)==="[object Object]",lr=e=>se(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Pt=rr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),_n=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Xo=/-(\w)/g,Le=_n(e=>e.replace(Xo,(t,n)=>n?n.toUpperCase():"")),Qo=/\B([A-Z])/g,lt=_n(e=>e.replace(Qo,"-$1").toLowerCase()),yn=_n(e=>e.charAt(0).toUpperCase()+e.slice(1)),nn=_n(e=>e?`on${yn(e)}`:""),Nt=(e,t)=>!Object.is(e,t),Mn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Zo=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Go=e=>{const t=se(e)?Number(e):NaN;return isNaN(t)?e:t};let Mr;const Wn=()=>Mr||(Mr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function cr(e){if(D(e)){const t={};for(let n=0;n{if(n){const r=n.split(ti);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function ar(e){let t="";if(se(e))t=e;else if(D(e))for(let n=0;nse(e)?e:e==null?"":D(e)||ee(e)&&(e.toString===Rs||!K(e.toString))?JSON.stringify(e,Is,2):String(e),Is=(e,t)=>t&&t.__v_isRef?Is(e,t.value):ht(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s])=>(n[`${r} =>`]=s,n),{})}:Ss(t)?{[`Set(${t.size})`]:[...t.values()]}:ee(t)&&!D(t)&&!Ps(t)?String(t):t;let be;class ii{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=be,!t&&be&&(this.index=(be.scopes||(be.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=be;try{return be=this,t()}finally{be=n}}}on(){be=this}off(){be=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Ls=e=>(e.w&ze)>0,Ns=e=>(e.n&ze)>0,ai=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(d==="length"||d>=c)&&l.push(u)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":D(e)?lr(n)&&l.push(i.get("length")):(l.push(i.get(st)),ht(e)&&l.push(i.get(qn)));break;case"delete":D(e)||(l.push(i.get(st)),ht(e)&&l.push(i.get(qn)));break;case"set":ht(e)&&l.push(i.get(st));break}if(l.length===1)l[0]&&zn(l[0]);else{const c=[];for(const u of l)u&&c.push(...u);zn(ur(c))}}function zn(e,t){const n=D(e)?e:[...e];for(const r of n)r.computed&&Nr(r);for(const r of n)r.computed||Nr(r)}function Nr(e,t){(e!==Se||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function fi(e,t){var n;return(n=ln.get(e))==null?void 0:n.get(t)}const di=rr("__proto__,__v_isRef,__isVue"),js=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ir)),hi=dr(),pi=dr(!1,!0),gi=dr(!0),$r=mi();function mi(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=Y(this);for(let o=0,i=this.length;o{e[t]=function(...n){Et();const r=Y(this)[t].apply(this,n);return xt(),r}}),e}function _i(e){const t=Y(this);return me(t,"has",e),t.hasOwnProperty(e)}function dr(e=!1,t=!1){return function(r,s,o){if(s==="__v_isReactive")return!e;if(s==="__v_isReadonly")return e;if(s==="__v_isShallow")return t;if(s==="__v_raw"&&o===(e?t?Mi:Ks:t?ks:Us).get(r))return r;const i=D(r);if(!e){if(i&&z($r,s))return Reflect.get($r,s,o);if(s==="hasOwnProperty")return _i}const l=Reflect.get(r,s,o);return(ir(s)?js.has(s):di(s))||(e||me(r,"get",s),t)?l:ce(l)?i&&lr(s)?l:l.value:ee(l)?e?wn(l):vn(l):l}}const yi=Ds(),bi=Ds(!0);function Ds(e=!1){return function(n,r,s,o){let i=n[r];if(yt(i)&&ce(i)&&!ce(s))return!1;if(!e&&(!cn(s)&&!yt(s)&&(i=Y(i),s=Y(s)),!D(n)&&ce(i)&&!ce(s)))return i.value=s,!0;const l=D(n)&&lr(r)?Number(r)e,bn=e=>Reflect.getPrototypeOf(e);function Vt(e,t,n=!1,r=!1){e=e.__v_raw;const s=Y(e),o=Y(t);n||(t!==o&&me(s,"get",t),me(s,"get",o));const{has:i}=bn(s),l=r?hr:n?mr:$t;if(i.call(s,t))return l(e.get(t));if(i.call(s,o))return l(e.get(o));e!==s&&e.get(t)}function qt(e,t=!1){const n=this.__v_raw,r=Y(n),s=Y(e);return t||(e!==s&&me(r,"has",e),me(r,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function zt(e,t=!1){return e=e.__v_raw,!t&&me(Y(e),"iterate",st),Reflect.get(e,"size",e)}function Hr(e){e=Y(e);const t=Y(this);return bn(t).has.call(t,e)||(t.add(e),He(t,"add",e,e)),this}function jr(e,t){t=Y(t);const n=Y(this),{has:r,get:s}=bn(n);let o=r.call(n,e);o||(e=Y(e),o=r.call(n,e));const i=s.call(n,e);return n.set(e,t),o?Nt(t,i)&&He(n,"set",e,t):He(n,"add",e,t),this}function Dr(e){const t=Y(this),{has:n,get:r}=bn(t);let s=n.call(t,e);s||(e=Y(e),s=n.call(t,e)),r&&r.call(t,e);const o=t.delete(e);return s&&He(t,"delete",e,void 0),o}function Br(){const e=Y(this),t=e.size!==0,n=e.clear();return t&&He(e,"clear",void 0,void 0),n}function Yt(e,t){return function(r,s){const o=this,i=o.__v_raw,l=Y(i),c=t?hr:e?mr:$t;return!e&&me(l,"iterate",st),i.forEach((u,d)=>r.call(s,c(u),c(d),o))}}function Jt(e,t,n){return function(...r){const s=this.__v_raw,o=Y(s),i=ht(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,u=s[e](...r),d=n?hr:t?mr:$t;return!t&&me(o,"iterate",c?qn:st),{next(){const{value:h,done:y}=u.next();return y?{value:h,done:y}:{value:l?[d(h[0]),d(h[1])]:d(h),done:y}},[Symbol.iterator](){return this}}}}function De(e){return function(...t){return e==="delete"?!1:this}}function Ti(){const e={get(o){return Vt(this,o)},get size(){return zt(this)},has:qt,add:Hr,set:jr,delete:Dr,clear:Br,forEach:Yt(!1,!1)},t={get(o){return Vt(this,o,!1,!0)},get size(){return zt(this)},has:qt,add:Hr,set:jr,delete:Dr,clear:Br,forEach:Yt(!1,!0)},n={get(o){return Vt(this,o,!0)},get size(){return zt(this,!0)},has(o){return qt.call(this,o,!0)},add:De("add"),set:De("set"),delete:De("delete"),clear:De("clear"),forEach:Yt(!0,!1)},r={get(o){return Vt(this,o,!0,!0)},get size(){return zt(this,!0)},has(o){return qt.call(this,o,!0)},add:De("add"),set:De("set"),delete:De("delete"),clear:De("clear"),forEach:Yt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=Jt(o,!1,!1),n[o]=Jt(o,!0,!1),t[o]=Jt(o,!1,!0),r[o]=Jt(o,!0,!0)}),[e,n,t,r]}const[Ai,Si,Oi,Ri]=Ti();function pr(e,t){const n=t?e?Ri:Oi:e?Si:Ai;return(r,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(z(n,s)&&s in r?n:r,s,o)}const Pi={get:pr(!1,!1)},Fi={get:pr(!1,!0)},Ii={get:pr(!0,!1)},Us=new WeakMap,ks=new WeakMap,Ks=new WeakMap,Mi=new WeakMap;function Li(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ni(e){return e.__v_skip||!Object.isExtensible(e)?0:Li(Jo(e))}function vn(e){return yt(e)?e:gr(e,!1,Bs,Pi,Us)}function $i(e){return gr(e,!1,xi,Fi,ks)}function wn(e){return gr(e,!0,Ei,Ii,Ks)}function gr(e,t,n,r,s){if(!ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=s.get(e);if(o)return o;const i=Ni(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return s.set(e,l),l}function pt(e){return yt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function yt(e){return!!(e&&e.__v_isReadonly)}function cn(e){return!!(e&&e.__v_isShallow)}function Ws(e){return pt(e)||yt(e)}function Y(e){const t=e&&e.__v_raw;return t?Y(t):e}function Ft(e){return on(e,"__v_skip",!0),e}const $t=e=>ee(e)?vn(e):e,mr=e=>ee(e)?wn(e):e;function _r(e){We&&Se&&(e=Y(e),Hs(e.dep||(e.dep=ur())))}function yr(e,t){e=Y(e);const n=e.dep;n&&zn(n)}function ce(e){return!!(e&&e.__v_isRef===!0)}function fe(e){return qs(e,!1)}function Vs(e){return qs(e,!0)}function qs(e,t){return ce(e)?e:new Hi(e,t)}class Hi{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:Y(t),this._value=n?t:$t(t)}get value(){return _r(this),this._value}set value(t){const n=this.__v_isShallow||cn(t)||yt(t);t=n?t:Y(t),Nt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:$t(t),yr(this))}}function zs(e){return ce(e)?e.value:e}const ji={get:(e,t,n)=>zs(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return ce(s)&&!ce(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function Ys(e){return pt(e)?e:new Proxy(e,ji)}class Di{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>_r(this),()=>yr(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function Bi(e){return new Di(e)}class Ui{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return fi(Y(this._object),this._key)}}class ki{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Ki(e,t,n){return ce(e)?e:K(e)?new ki(e):ee(e)&&arguments.length>1?Wi(e,t,n):fe(e)}function Wi(e,t,n){const r=e[t];return ce(r)?r:new Ui(e,t,n)}class Vi{constructor(t,n,r,s){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new fr(t,()=>{this._dirty||(this._dirty=!0,yr(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const t=Y(this);return _r(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function qi(e,t,n=!1){let r,s;const o=K(e);return o?(r=e,s=Re):(r=e.get,s=e.set),new Vi(r,s,o||!s,n)}function Ve(e,t,n,r){let s;try{s=r?e(...r):e()}catch(o){Ut(o,t,n)}return s}function xe(e,t,n,r){if(K(e)){const o=Ve(e,t,n,r);return o&&Os(o)&&o.catch(i=>{Ut(i,t,n)}),o}const s=[];for(let o=0;o>>1;jt(ue[r])Me&&ue.splice(t,1)}function Xi(e){D(e)?gt.push(...e):(!$e||!$e.includes(e,e.allowRecurse?et+1:et))&>.push(e),Xs()}function Ur(e,t=Ht?Me+1:0){for(;tjt(n)-jt(r)),et=0;et<$e.length;et++)$e[et]();$e=null,et=0}}const jt=e=>e.id==null?1/0:e.id,Qi=(e,t)=>{const n=jt(e)-jt(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Qs(e){Yn=!1,Ht=!0,ue.sort(Qi);const t=Re;try{for(Me=0;Mese(C)?C.trim():C)),h&&(s=n.map(Zo))}let l,c=r[l=nn(t)]||r[l=nn(Le(t))];!c&&o&&(c=r[l=nn(lt(t))]),c&&xe(c,e,6,s);const u=r[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,xe(u,e,6,s)}}function Zs(e,t,n=!1){const r=t.emitsCache,s=r.get(e);if(s!==void 0)return s;const o=e.emits;let i={},l=!1;if(!K(e)){const c=u=>{const d=Zs(u,t,!0);d&&(l=!0,ie(i,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(ee(e)&&r.set(e,null),null):(D(o)?o.forEach(c=>i[c]=null):ie(i,o),ee(e)&&r.set(e,i),i)}function xn(e,t){return!e||!Bt(t)?!1:(t=t.slice(2).replace(/Once$/,""),z(e,t[0].toLowerCase()+t.slice(1))||z(e,lt(t))||z(e,t))}let de=null,Tn=null;function un(e){const t=de;return de=e,Tn=e&&e.type.__scopeId||null,t}function va(e){Tn=e}function wa(){Tn=null}function Gi(e,t=de,n){if(!t||e._n)return e;const r=(...s)=>{r._d&&Gr(-1);const o=un(t);let i;try{i=e(...s)}finally{un(o),r._d&&Gr(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function Ln(e){const{type:t,vnode:n,proxy:r,withProxy:s,props:o,propsOptions:[i],slots:l,attrs:c,emit:u,render:d,renderCache:h,data:y,setupState:C,ctx:x,inheritAttrs:O}=e;let H,g;const m=un(e);try{if(n.shapeFlag&4){const A=s||r;H=Ae(d.call(A,A,h,o,C,y,x)),g=c}else{const A=t;H=Ae(A.length>1?A(o,{attrs:c,slots:l,emit:u}):A(o,null)),g=t.props?c:el(c)}}catch(A){Lt.length=0,Ut(A,e,1),H=re(ve)}let j=H;if(g&&O!==!1){const A=Object.keys(g),{shapeFlag:B}=j;A.length&&B&7&&(i&&A.some(sr)&&(g=tl(g,i)),j=Ye(j,g))}return n.dirs&&(j=Ye(j),j.dirs=j.dirs?j.dirs.concat(n.dirs):n.dirs),n.transition&&(j.transition=n.transition),H=j,un(m),H}const el=e=>{let t;for(const n in e)(n==="class"||n==="style"||Bt(n))&&((t||(t={}))[n]=e[n]);return t},tl=(e,t)=>{const n={};for(const r in e)(!sr(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function nl(e,t,n){const{props:r,children:s,component:o}=e,{props:i,children:l,patchFlag:c}=t,u=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?kr(r,i,u):!!i;if(c&8){const d=t.dynamicProps;for(let h=0;he.__isSuspense;function Gs(e,t){t&&t.pendingBranch?D(e)?t.effects.push(...e):t.effects.push(e):Xi(e)}function eo(e,t){return An(e,null,t)}function Ca(e,t){return An(e,null,{flush:"post"})}const Xt={};function qe(e,t,n){return An(e,t,n)}function An(e,t,{immediate:n,deep:r,flush:s,onTrack:o,onTrigger:i}=te){var l;const c=Ms()===((l=le)==null?void 0:l.scope)?le:null;let u,d=!1,h=!1;if(ce(e)?(u=()=>e.value,d=cn(e)):pt(e)?(u=()=>e,r=!0):D(e)?(h=!0,d=e.some(A=>pt(A)||cn(A)),u=()=>e.map(A=>{if(ce(A))return A.value;if(pt(A))return ft(A);if(K(A))return Ve(A,c,2)})):K(e)?t?u=()=>Ve(e,c,2):u=()=>{if(!(c&&c.isUnmounted))return y&&y(),xe(e,c,3,[C])}:u=Re,t&&r){const A=u;u=()=>ft(A())}let y,C=A=>{y=m.onStop=()=>{Ve(A,c,4)}},x;if(wt)if(C=Re,t?n&&xe(t,c,3,[u(),h?[]:void 0,C]):u(),s==="sync"){const A=Zl();x=A.__watcherHandles||(A.__watcherHandles=[])}else return Re;let O=h?new Array(e.length).fill(Xt):Xt;const H=()=>{if(m.active)if(t){const A=m.run();(r||d||(h?A.some((B,q)=>Nt(B,O[q])):Nt(A,O)))&&(y&&y(),xe(t,c,3,[A,O===Xt?void 0:h&&O[0]===Xt?[]:O,C]),O=A)}else m.run()};H.allowRecurse=!!t;let g;s==="sync"?g=H:s==="post"?g=()=>pe(H,c&&c.suspense):(H.pre=!0,c&&(H.id=c.uid),g=()=>En(H));const m=new fr(u,g);t?n?H():O=m.run():s==="post"?pe(m.run.bind(m),c&&c.suspense):m.run();const j=()=>{m.stop(),c&&c.scope&&or(c.scope.effects,m)};return x&&x.push(j),j}function ol(e,t,n){const r=this.proxy,s=se(e)?e.includes(".")?to(r,e):()=>r[e]:e.bind(r,r);let o;K(t)?o=t:(o=t.handler,n=t);const i=le;vt(this);const l=An(s,o.bind(r),n);return i?vt(i):ot(),l}function to(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s{ft(n,t)});else if(Ps(e))for(const n in e)ft(e[n],t);return e}function Ie(e,t,n,r){const s=e.dirs,o=t&&t.dirs;for(let i=0;i{e.isMounted=!0}),io(()=>{e.isUnmounting=!0}),e}const we=[Function,Array],no={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:we,onEnter:we,onAfterEnter:we,onEnterCancelled:we,onBeforeLeave:we,onLeave:we,onAfterLeave:we,onLeaveCancelled:we,onBeforeAppear:we,onAppear:we,onAfterAppear:we,onAppearCancelled:we},ll={name:"BaseTransition",props:no,setup(e,{slots:t}){const n=Pn(),r=il();let s;return()=>{const o=t.default&&so(t.default(),!0);if(!o||!o.length)return;let i=o[0];if(o.length>1){for(const O of o)if(O.type!==ve){i=O;break}}const l=Y(e),{mode:c}=l;if(r.isLeaving)return Nn(i);const u=Kr(i);if(!u)return Nn(i);const d=Jn(u,l,r,n);Xn(u,d);const h=n.subTree,y=h&&Kr(h);let C=!1;const{getTransitionKey:x}=u.type;if(x){const O=x();s===void 0?s=O:O!==s&&(s=O,C=!0)}if(y&&y.type!==ve&&(!tt(u,y)||C)){const O=Jn(y,l,r,n);if(Xn(y,O),c==="out-in")return r.isLeaving=!0,O.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},Nn(i);c==="in-out"&&u.type!==ve&&(O.delayLeave=(H,g,m)=>{const j=ro(r,y);j[String(y.key)]=y,H._leaveCb=()=>{g(),H._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=m})}return i}}},cl=ll;function ro(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Jn(e,t,n,r){const{appear:s,mode:o,persisted:i=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:h,onLeave:y,onAfterLeave:C,onLeaveCancelled:x,onBeforeAppear:O,onAppear:H,onAfterAppear:g,onAppearCancelled:m}=t,j=String(e.key),A=ro(n,e),B=(_,I)=>{_&&xe(_,r,9,I)},q=(_,I)=>{const M=I[1];B(_,I),D(_)?_.every(J=>J.length<=1)&&M():_.length<=1&&M()},k={mode:o,persisted:i,beforeEnter(_){let I=l;if(!n.isMounted)if(s)I=O||l;else return;_._leaveCb&&_._leaveCb(!0);const M=A[j];M&&tt(e,M)&&M.el._leaveCb&&M.el._leaveCb(),B(I,[_])},enter(_){let I=c,M=u,J=d;if(!n.isMounted)if(s)I=H||c,M=g||u,J=m||d;else return;let P=!1;const W=_._enterCb=L=>{P||(P=!0,L?B(J,[_]):B(M,[_]),k.delayedLeave&&k.delayedLeave(),_._enterCb=void 0)};I?q(I,[_,W]):W()},leave(_,I){const M=String(e.key);if(_._enterCb&&_._enterCb(!0),n.isUnmounting)return I();B(h,[_]);let J=!1;const P=_._leaveCb=W=>{J||(J=!0,I(),W?B(x,[_]):B(C,[_]),_._leaveCb=void 0,A[M]===e&&delete A[M])};A[M]=e,y?q(y,[_,P]):P()},clone(_){return Jn(_,t,n,r)}};return k}function Nn(e){if(kt(e))return e=Ye(e),e.children=null,e}function Kr(e){return kt(e)?e.children?e.children[0]:void 0:e}function Xn(e,t){e.shapeFlag&6&&e.component?Xn(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function so(e,t=!1,n){let r=[],s=0;for(let o=0;o1)for(let o=0;oie({name:e.name},t,{setup:e}))():e}const mt=e=>!!e.type.__asyncLoader;function Ea(e){K(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:s=200,timeout:o,suspensible:i=!0,onError:l}=e;let c=null,u,d=0;const h=()=>(d++,c=null,y()),y=()=>{let C;return c||(C=c=t().catch(x=>{if(x=x instanceof Error?x:new Error(String(x)),l)return new Promise((O,H)=>{l(x,()=>O(h()),()=>H(x),d+1)});throw x}).then(x=>C!==c&&c?c:(x&&(x.__esModule||x[Symbol.toStringTag]==="Module")&&(x=x.default),u=x,x)))};return vr({name:"AsyncComponentWrapper",__asyncLoader:y,get __asyncResolved(){return u},setup(){const C=le;if(u)return()=>$n(u,C);const x=m=>{c=null,Ut(m,C,13,!r)};if(i&&C.suspense||wt)return y().then(m=>()=>$n(m,C)).catch(m=>(x(m),()=>r?re(r,{error:m}):null));const O=fe(!1),H=fe(),g=fe(!!s);return s&&setTimeout(()=>{g.value=!1},s),o!=null&&setTimeout(()=>{if(!O.value&&!H.value){const m=new Error(`Async component timed out after ${o}ms.`);x(m),H.value=m}},o),y().then(()=>{O.value=!0,C.parent&&kt(C.parent.vnode)&&En(C.parent.update)}).catch(m=>{x(m),H.value=m}),()=>{if(O.value&&u)return $n(u,C);if(H.value&&r)return re(r,{error:H.value});if(n&&!g.value)return re(n)}}})}function $n(e,t){const{ref:n,props:r,children:s,ce:o}=t.vnode,i=re(e,r,s);return i.ref=n,i.ce=o,delete t.vnode.ce,i}const kt=e=>e.type.__isKeepAlive;function al(e,t){oo(e,"a",t)}function ul(e,t){oo(e,"da",t)}function oo(e,t,n=le){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Sn(t,r,n),n){let s=n.parent;for(;s&&s.parent;)kt(s.parent.vnode)&&fl(r,t,n,s),s=s.parent}}function fl(e,t,n,r){const s=Sn(t,e,r,!0);On(()=>{or(r[t],s)},n)}function Sn(e,t,n=le,r=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{if(n.isUnmounted)return;Et(),vt(n);const l=xe(t,n,e,i);return ot(),xt(),l});return r?s.unshift(o):s.push(o),o}}const je=e=>(t,n=le)=>(!wt||e==="sp")&&Sn(e,(...r)=>t(...r),n),dl=je("bm"),Tt=je("m"),hl=je("bu"),pl=je("u"),io=je("bum"),On=je("um"),gl=je("sp"),ml=je("rtg"),_l=je("rtc");function yl(e,t=le){Sn("ec",e,t)}const wr="components";function xa(e,t){return co(wr,e,!0,t)||e}const lo=Symbol.for("v-ndc");function Ta(e){return se(e)?co(wr,e,!1)||e:e||lo}function co(e,t,n=!0,r=!1){const s=de||le;if(s){const o=s.type;if(e===wr){const l=Jl(o,!1);if(l&&(l===t||l===Le(t)||l===yn(Le(t))))return o}const i=Wr(s[e]||o[e],t)||Wr(s.appContext[e],t);return!i&&r?o:i}}function Wr(e,t){return e&&(e[t]||e[Le(t)]||e[yn(Le(t))])}function Aa(e,t,n,r){let s;const o=n&&n[r];if(D(e)||se(e)){s=new Array(e.length);for(let i=0,l=e.length;it(i,l,void 0,o&&o[l]));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,c=i.length;lpn(t)?!(t.type===ve||t.type===ge&&!ao(t.children)):!0)?e:null}function Oa(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:nn(r)]=e[r];return n}const Qn=e=>e?To(e)?Ar(e)||e.proxy:Qn(e.parent):null,It=ie(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Qn(e.parent),$root:e=>Qn(e.root),$emit:e=>e.emit,$options:e=>Cr(e),$forceUpdate:e=>e.f||(e.f=()=>En(e.update)),$nextTick:e=>e.n||(e.n=Cn.bind(e.proxy)),$watch:e=>ol.bind(e)}),Hn=(e,t)=>e!==te&&!e.__isScriptSetup&&z(e,t),bl={get({_:e},t){const{ctx:n,setupState:r,data:s,props:o,accessCache:i,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const C=i[t];if(C!==void 0)switch(C){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(Hn(r,t))return i[t]=1,r[t];if(s!==te&&z(s,t))return i[t]=2,s[t];if((u=e.propsOptions[0])&&z(u,t))return i[t]=3,o[t];if(n!==te&&z(n,t))return i[t]=4,n[t];Zn&&(i[t]=0)}}const d=It[t];let h,y;if(d)return t==="$attrs"&&me(e,"get",t),d(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==te&&z(n,t))return i[t]=4,n[t];if(y=c.config.globalProperties,z(y,t))return y[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:o}=e;return Hn(s,t)?(s[t]=n,!0):r!==te&&z(r,t)?(r[t]=n,!0):z(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,propsOptions:o}},i){let l;return!!n[i]||e!==te&&z(e,i)||Hn(t,i)||(l=o[0])&&z(l,i)||z(r,i)||z(It,i)||z(s.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:z(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ra(){return vl().slots}function vl(){const e=Pn();return e.setupContext||(e.setupContext=So(e))}function Vr(e){return D(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Zn=!0;function wl(e){const t=Cr(e),n=e.proxy,r=e.ctx;Zn=!1,t.beforeCreate&&qr(t.beforeCreate,e,"bc");const{data:s,computed:o,methods:i,watch:l,provide:c,inject:u,created:d,beforeMount:h,mounted:y,beforeUpdate:C,updated:x,activated:O,deactivated:H,beforeDestroy:g,beforeUnmount:m,destroyed:j,unmounted:A,render:B,renderTracked:q,renderTriggered:k,errorCaptured:_,serverPrefetch:I,expose:M,inheritAttrs:J,components:P,directives:W,filters:L}=t;if(u&&Cl(u,r,null),i)for(const ne in i){const Z=i[ne];K(Z)&&(r[ne]=Z.bind(n))}if(s){const ne=s.call(n,n);ee(ne)&&(e.data=vn(ne))}if(Zn=!0,o)for(const ne in o){const Z=o[ne],Je=K(Z)?Z.bind(n,n):K(Z.get)?Z.get.bind(n,n):Re,Kt=!K(Z)&&K(Z.set)?Z.set.bind(n):Re,Xe=ae({get:Je,set:Kt});Object.defineProperty(r,ne,{enumerable:!0,configurable:!0,get:()=>Xe.value,set:Pe=>Xe.value=Pe})}if(l)for(const ne in l)uo(l[ne],r,n,ne);if(c){const ne=K(c)?c.call(n):c;Reflect.ownKeys(ne).forEach(Z=>{Ol(Z,ne[Z])})}d&&qr(d,e,"c");function X(ne,Z){D(Z)?Z.forEach(Je=>ne(Je.bind(n))):Z&&ne(Z.bind(n))}if(X(dl,h),X(Tt,y),X(hl,C),X(pl,x),X(al,O),X(ul,H),X(yl,_),X(_l,q),X(ml,k),X(io,m),X(On,A),X(gl,I),D(M))if(M.length){const ne=e.exposed||(e.exposed={});M.forEach(Z=>{Object.defineProperty(ne,Z,{get:()=>n[Z],set:Je=>n[Z]=Je})})}else e.exposed||(e.exposed={});B&&e.render===Re&&(e.render=B),J!=null&&(e.inheritAttrs=J),P&&(e.components=P),W&&(e.directives=W)}function Cl(e,t,n=Re){D(e)&&(e=Gn(e));for(const r in e){const s=e[r];let o;ee(s)?"default"in s?o=_t(s.from||r,s.default,!0):o=_t(s.from||r):o=_t(s),ce(o)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[r]=o}}function qr(e,t,n){xe(D(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function uo(e,t,n,r){const s=r.includes(".")?to(n,r):()=>n[r];if(se(e)){const o=t[e];K(o)&&qe(s,o)}else if(K(e))qe(s,e.bind(n));else if(ee(e))if(D(e))e.forEach(o=>uo(o,t,n,r));else{const o=K(e.handler)?e.handler.bind(n):t[e.handler];K(o)&&qe(s,o,e)}}function Cr(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(u=>fn(c,u,i,!0)),fn(c,t,i)),ee(t)&&o.set(t,c),c}function fn(e,t,n,r=!1){const{mixins:s,extends:o}=t;o&&fn(e,o,n,!0),s&&s.forEach(i=>fn(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=El[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const El={data:zr,props:Yr,emits:Yr,methods:Rt,computed:Rt,beforeCreate:he,created:he,beforeMount:he,mounted:he,beforeUpdate:he,updated:he,beforeDestroy:he,beforeUnmount:he,destroyed:he,unmounted:he,activated:he,deactivated:he,errorCaptured:he,serverPrefetch:he,components:Rt,directives:Rt,watch:Tl,provide:zr,inject:xl};function zr(e,t){return t?e?function(){return ie(K(e)?e.call(this,this):e,K(t)?t.call(this,this):t)}:t:e}function xl(e,t){return Rt(Gn(e),Gn(t))}function Gn(e){if(D(e)){const t={};for(let n=0;n1)return n&&K(t)?t.call(r&&r.proxy):t}}function Rl(e,t,n,r=!1){const s={},o={};on(o,Rn,1),e.propsDefaults=Object.create(null),ho(e,t,s,o);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);n?e.props=r?s:$i(s):e.type.props?e.props=s:e.props=o,e.attrs=o}function Pl(e,t,n,r){const{props:s,attrs:o,vnode:{patchFlag:i}}=e,l=Y(s),[c]=e.propsOptions;let u=!1;if((r||i>0)&&!(i&16)){if(i&8){const d=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[y,C]=po(h,t,!0);ie(i,y),C&&l.push(...C)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!o&&!c)return ee(e)&&r.set(e,dt),dt;if(D(o))for(let d=0;d-1,C[1]=O<0||x-1||z(C,"default"))&&l.push(h)}}}const u=[i,l];return ee(e)&&r.set(e,u),u}function Jr(e){return e[0]!=="$"}function Xr(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function Qr(e,t){return Xr(e)===Xr(t)}function Zr(e,t){return D(t)?t.findIndex(n=>Qr(n,e)):K(t)&&Qr(t,e)?0:-1}const go=e=>e[0]==="_"||e==="$stable",Er=e=>D(e)?e.map(Ae):[Ae(e)],Fl=(e,t,n)=>{if(t._n)return t;const r=Gi((...s)=>Er(t(...s)),n);return r._c=!1,r},mo=(e,t,n)=>{const r=e._ctx;for(const s in e){if(go(s))continue;const o=e[s];if(K(o))t[s]=Fl(s,o,r);else if(o!=null){const i=Er(o);t[s]=()=>i}}},_o=(e,t)=>{const n=Er(t);e.slots.default=()=>n},Il=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=Y(t),on(t,"_",n)):mo(t,e.slots={})}else e.slots={},t&&_o(e,t);on(e.slots,Rn,1)},Ml=(e,t,n)=>{const{vnode:r,slots:s}=e;let o=!0,i=te;if(r.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:(ie(s,t),!n&&l===1&&delete s._):(o=!t.$stable,mo(t,s)),i=t}else t&&(_o(e,t),i={default:1});if(o)for(const l in s)!go(l)&&!(l in i)&&delete s[l]};function hn(e,t,n,r,s=!1){if(D(e)){e.forEach((y,C)=>hn(y,t&&(D(t)?t[C]:t),n,r,s));return}if(mt(r)&&!s)return;const o=r.shapeFlag&4?Ar(r.component)||r.component.proxy:r.el,i=s?null:o,{i:l,r:c}=e,u=t&&t.r,d=l.refs===te?l.refs={}:l.refs,h=l.setupState;if(u!=null&&u!==c&&(se(u)?(d[u]=null,z(h,u)&&(h[u]=null)):ce(u)&&(u.value=null)),K(c))Ve(c,l,12,[i,d]);else{const y=se(c),C=ce(c);if(y||C){const x=()=>{if(e.f){const O=y?z(h,c)?h[c]:d[c]:c.value;s?D(O)&&or(O,o):D(O)?O.includes(o)||O.push(o):y?(d[c]=[o],z(h,c)&&(h[c]=d[c])):(c.value=[o],e.k&&(d[e.k]=c.value))}else y?(d[c]=i,z(h,c)&&(h[c]=i)):C&&(c.value=i,e.k&&(d[e.k]=i))};i?(x.id=-1,pe(x,n)):x()}}}let Be=!1;const Qt=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Zt=e=>e.nodeType===8;function Ll(e){const{mt:t,p:n,o:{patchProp:r,createText:s,nextSibling:o,parentNode:i,remove:l,insert:c,createComment:u}}=e,d=(g,m)=>{if(!m.hasChildNodes()){n(null,g,m),an(),m._vnode=g;return}Be=!1,h(m.firstChild,g,null,null,null),an(),m._vnode=g,Be&&console.error("Hydration completed but contains mismatches.")},h=(g,m,j,A,B,q=!1)=>{const k=Zt(g)&&g.data==="[",_=()=>O(g,m,j,A,B,k),{type:I,ref:M,shapeFlag:J,patchFlag:P}=m;let W=g.nodeType;m.el=g,P===-2&&(q=!1,m.dynamicChildren=null);let L=null;switch(I){case bt:W!==3?m.children===""?(c(m.el=s(""),i(g),g),L=g):L=_():(g.data!==m.children&&(Be=!0,g.data=m.children),L=o(g));break;case ve:W!==8||k?L=_():L=o(g);break;case Mt:if(k&&(g=o(g),W=g.nodeType),W===1||W===3){L=g;const _e=!m.children.length;for(let X=0;X{q=q||!!m.dynamicChildren;const{type:k,props:_,patchFlag:I,shapeFlag:M,dirs:J}=m,P=k==="input"&&J||k==="option";if(P||I!==-1){if(J&&Ie(m,null,j,"created"),_)if(P||!q||I&48)for(const L in _)(P&&L.endsWith("value")||Bt(L)&&!Pt(L))&&r(g,L,null,_[L],!1,void 0,j);else _.onClick&&r(g,"onClick",null,_.onClick,!1,void 0,j);let W;if((W=_&&_.onVnodeBeforeMount)&&Ce(W,j,m),J&&Ie(m,null,j,"beforeMount"),((W=_&&_.onVnodeMounted)||J)&&Gs(()=>{W&&Ce(W,j,m),J&&Ie(m,null,j,"mounted")},A),M&16&&!(_&&(_.innerHTML||_.textContent))){let L=C(g.firstChild,m,g,j,A,B,q);for(;L;){Be=!0;const _e=L;L=L.nextSibling,l(_e)}}else M&8&&g.textContent!==m.children&&(Be=!0,g.textContent=m.children)}return g.nextSibling},C=(g,m,j,A,B,q,k)=>{k=k||!!m.dynamicChildren;const _=m.children,I=_.length;for(let M=0;M{const{slotScopeIds:k}=m;k&&(B=B?B.concat(k):k);const _=i(g),I=C(o(g),m,_,j,A,B,q);return I&&Zt(I)&&I.data==="]"?o(m.anchor=I):(Be=!0,c(m.anchor=u("]"),_,I),I)},O=(g,m,j,A,B,q)=>{if(Be=!0,m.el=null,q){const I=H(g);for(;;){const M=o(g);if(M&&M!==I)l(M);else break}}const k=o(g),_=i(g);return l(g),n(null,m,_,k,j,A,Qt(_),B),k},H=g=>{let m=0;for(;g;)if(g=o(g),g&&Zt(g)&&(g.data==="["&&m++,g.data==="]")){if(m===0)return o(g);m--}return g};return[d,h]}const pe=Gs;function Nl(e){return $l(e,Ll)}function $l(e,t){const n=Wn();n.__VUE__=!0;const{insert:r,remove:s,patchProp:o,createElement:i,createText:l,createComment:c,setText:u,setElementText:d,parentNode:h,nextSibling:y,setScopeId:C=Re,insertStaticContent:x}=e,O=(a,f,p,v=null,b=null,T=null,R=!1,E=null,S=!!f.dynamicChildren)=>{if(a===f)return;a&&!tt(a,f)&&(v=Wt(a),Pe(a,b,T,!0),a=null),f.patchFlag===-2&&(S=!1,f.dynamicChildren=null);const{type:w,ref:N,shapeFlag:F}=f;switch(w){case bt:H(a,f,p,v);break;case ve:g(a,f,p,v);break;case Mt:a==null&&m(f,p,v,R);break;case ge:P(a,f,p,v,b,T,R,E,S);break;default:F&1?B(a,f,p,v,b,T,R,E,S):F&6?W(a,f,p,v,b,T,R,E,S):(F&64||F&128)&&w.process(a,f,p,v,b,T,R,E,S,ct)}N!=null&&b&&hn(N,a&&a.ref,T,f||a,!f)},H=(a,f,p,v)=>{if(a==null)r(f.el=l(f.children),p,v);else{const b=f.el=a.el;f.children!==a.children&&u(b,f.children)}},g=(a,f,p,v)=>{a==null?r(f.el=c(f.children||""),p,v):f.el=a.el},m=(a,f,p,v)=>{[a.el,a.anchor]=x(a.children,f,p,v,a.el,a.anchor)},j=({el:a,anchor:f},p,v)=>{let b;for(;a&&a!==f;)b=y(a),r(a,p,v),a=b;r(f,p,v)},A=({el:a,anchor:f})=>{let p;for(;a&&a!==f;)p=y(a),s(a),a=p;s(f)},B=(a,f,p,v,b,T,R,E,S)=>{R=R||f.type==="svg",a==null?q(f,p,v,b,T,R,E,S):I(a,f,b,T,R,E,S)},q=(a,f,p,v,b,T,R,E)=>{let S,w;const{type:N,props:F,shapeFlag:$,transition:U,dirs:V}=a;if(S=a.el=i(a.type,T,F&&F.is,F),$&8?d(S,a.children):$&16&&_(a.children,S,null,v,b,T&&N!=="foreignObject",R,E),V&&Ie(a,null,v,"created"),k(S,a,a.scopeId,R,v),F){for(const Q in F)Q!=="value"&&!Pt(Q)&&o(S,Q,null,F[Q],T,a.children,v,b,Ne);"value"in F&&o(S,"value",null,F.value),(w=F.onVnodeBeforeMount)&&Ce(w,v,a)}V&&Ie(a,null,v,"beforeMount");const G=(!b||b&&!b.pendingBranch)&&U&&!U.persisted;G&&U.beforeEnter(S),r(S,f,p),((w=F&&F.onVnodeMounted)||G||V)&&pe(()=>{w&&Ce(w,v,a),G&&U.enter(S),V&&Ie(a,null,v,"mounted")},b)},k=(a,f,p,v,b)=>{if(p&&C(a,p),v)for(let T=0;T{for(let w=S;w{const E=f.el=a.el;let{patchFlag:S,dynamicChildren:w,dirs:N}=f;S|=a.patchFlag&16;const F=a.props||te,$=f.props||te;let U;p&&Qe(p,!1),(U=$.onVnodeBeforeUpdate)&&Ce(U,p,f,a),N&&Ie(f,a,p,"beforeUpdate"),p&&Qe(p,!0);const V=b&&f.type!=="foreignObject";if(w?M(a.dynamicChildren,w,E,p,v,V,T):R||Z(a,f,E,null,p,v,V,T,!1),S>0){if(S&16)J(E,f,F,$,p,v,b);else if(S&2&&F.class!==$.class&&o(E,"class",null,$.class,b),S&4&&o(E,"style",F.style,$.style,b),S&8){const G=f.dynamicProps;for(let Q=0;Q{U&&Ce(U,p,f,a),N&&Ie(f,a,p,"updated")},v)},M=(a,f,p,v,b,T,R)=>{for(let E=0;E{if(p!==v){if(p!==te)for(const E in p)!Pt(E)&&!(E in v)&&o(a,E,p[E],null,R,f.children,b,T,Ne);for(const E in v){if(Pt(E))continue;const S=v[E],w=p[E];S!==w&&E!=="value"&&o(a,E,w,S,R,f.children,b,T,Ne)}"value"in v&&o(a,"value",p.value,v.value)}},P=(a,f,p,v,b,T,R,E,S)=>{const w=f.el=a?a.el:l(""),N=f.anchor=a?a.anchor:l("");let{patchFlag:F,dynamicChildren:$,slotScopeIds:U}=f;U&&(E=E?E.concat(U):U),a==null?(r(w,p,v),r(N,p,v),_(f.children,p,N,b,T,R,E,S)):F>0&&F&64&&$&&a.dynamicChildren?(M(a.dynamicChildren,$,p,b,T,R,E),(f.key!=null||b&&f===b.subTree)&&yo(a,f,!0)):Z(a,f,p,N,b,T,R,E,S)},W=(a,f,p,v,b,T,R,E,S)=>{f.slotScopeIds=E,a==null?f.shapeFlag&512?b.ctx.activate(f,p,v,R,S):L(f,p,v,b,T,R,S):_e(a,f,S)},L=(a,f,p,v,b,T,R)=>{const E=a.component=Vl(a,v,b);if(kt(a)&&(E.ctx.renderer=ct),ql(E),E.asyncDep){if(b&&b.registerDep(E,X),!a.el){const S=E.subTree=re(ve);g(null,S,f,p)}return}X(E,a,f,p,b,T,R)},_e=(a,f,p)=>{const v=f.component=a.component;if(nl(a,f,p))if(v.asyncDep&&!v.asyncResolved){ne(v,f,p);return}else v.next=f,Ji(v.update),v.update();else f.el=a.el,v.vnode=f},X=(a,f,p,v,b,T,R)=>{const E=()=>{if(a.isMounted){let{next:N,bu:F,u:$,parent:U,vnode:V}=a,G=N,Q;Qe(a,!1),N?(N.el=V.el,ne(a,N,R)):N=V,F&&Mn(F),(Q=N.props&&N.props.onVnodeBeforeUpdate)&&Ce(Q,U,N,V),Qe(a,!0);const oe=Ln(a),Te=a.subTree;a.subTree=oe,O(Te,oe,h(Te.el),Wt(Te),a,b,T),N.el=oe.el,G===null&&rl(a,oe.el),$&&pe($,b),(Q=N.props&&N.props.onVnodeUpdated)&&pe(()=>Ce(Q,U,N,V),b)}else{let N;const{el:F,props:$}=f,{bm:U,m:V,parent:G}=a,Q=mt(f);if(Qe(a,!1),U&&Mn(U),!Q&&(N=$&&$.onVnodeBeforeMount)&&Ce(N,G,f),Qe(a,!0),F&&In){const oe=()=>{a.subTree=Ln(a),In(F,a.subTree,a,b,null)};Q?f.type.__asyncLoader().then(()=>!a.isUnmounted&&oe()):oe()}else{const oe=a.subTree=Ln(a);O(null,oe,p,v,a,b,T),f.el=oe.el}if(V&&pe(V,b),!Q&&(N=$&&$.onVnodeMounted)){const oe=f;pe(()=>Ce(N,G,oe),b)}(f.shapeFlag&256||G&&mt(G.vnode)&&G.vnode.shapeFlag&256)&&a.a&&pe(a.a,b),a.isMounted=!0,f=p=v=null}},S=a.effect=new fr(E,()=>En(w),a.scope),w=a.update=()=>S.run();w.id=a.uid,Qe(a,!0),w()},ne=(a,f,p)=>{f.component=a;const v=a.vnode.props;a.vnode=f,a.next=null,Pl(a,f.props,v,p),Ml(a,f.children,p),Et(),Ur(),xt()},Z=(a,f,p,v,b,T,R,E,S=!1)=>{const w=a&&a.children,N=a?a.shapeFlag:0,F=f.children,{patchFlag:$,shapeFlag:U}=f;if($>0){if($&128){Kt(w,F,p,v,b,T,R,E,S);return}else if($&256){Je(w,F,p,v,b,T,R,E,S);return}}U&8?(N&16&&Ne(w,b,T),F!==w&&d(p,F)):N&16?U&16?Kt(w,F,p,v,b,T,R,E,S):Ne(w,b,T,!0):(N&8&&d(p,""),U&16&&_(F,p,v,b,T,R,E,S))},Je=(a,f,p,v,b,T,R,E,S)=>{a=a||dt,f=f||dt;const w=a.length,N=f.length,F=Math.min(w,N);let $;for($=0;$N?Ne(a,b,T,!0,!1,F):_(f,p,v,b,T,R,E,S,F)},Kt=(a,f,p,v,b,T,R,E,S)=>{let w=0;const N=f.length;let F=a.length-1,$=N-1;for(;w<=F&&w<=$;){const U=a[w],V=f[w]=S?Ke(f[w]):Ae(f[w]);if(tt(U,V))O(U,V,p,null,b,T,R,E,S);else break;w++}for(;w<=F&&w<=$;){const U=a[F],V=f[$]=S?Ke(f[$]):Ae(f[$]);if(tt(U,V))O(U,V,p,null,b,T,R,E,S);else break;F--,$--}if(w>F){if(w<=$){const U=$+1,V=U$)for(;w<=F;)Pe(a[w],b,T,!0),w++;else{const U=w,V=w,G=new Map;for(w=V;w<=$;w++){const ye=f[w]=S?Ke(f[w]):Ae(f[w]);ye.key!=null&&G.set(ye.key,w)}let Q,oe=0;const Te=$-V+1;let at=!1,Pr=0;const At=new Array(Te);for(w=0;w=Te){Pe(ye,b,T,!0);continue}let Fe;if(ye.key!=null)Fe=G.get(ye.key);else for(Q=V;Q<=$;Q++)if(At[Q-V]===0&&tt(ye,f[Q])){Fe=Q;break}Fe===void 0?Pe(ye,b,T,!0):(At[Fe-V]=w+1,Fe>=Pr?Pr=Fe:at=!0,O(ye,f[Fe],p,null,b,T,R,E,S),oe++)}const Fr=at?Hl(At):dt;for(Q=Fr.length-1,w=Te-1;w>=0;w--){const ye=V+w,Fe=f[ye],Ir=ye+1{const{el:T,type:R,transition:E,children:S,shapeFlag:w}=a;if(w&6){Xe(a.component.subTree,f,p,v);return}if(w&128){a.suspense.move(f,p,v);return}if(w&64){R.move(a,f,p,ct);return}if(R===ge){r(T,f,p);for(let F=0;FE.enter(T),b);else{const{leave:F,delayLeave:$,afterLeave:U}=E,V=()=>r(T,f,p),G=()=>{F(T,()=>{V(),U&&U()})};$?$(T,V,G):G()}else r(T,f,p)},Pe=(a,f,p,v=!1,b=!1)=>{const{type:T,props:R,ref:E,children:S,dynamicChildren:w,shapeFlag:N,patchFlag:F,dirs:$}=a;if(E!=null&&hn(E,null,p,a,!0),N&256){f.ctx.deactivate(a);return}const U=N&1&&$,V=!mt(a);let G;if(V&&(G=R&&R.onVnodeBeforeUnmount)&&Ce(G,f,a),N&6)Vo(a.component,p,v);else{if(N&128){a.suspense.unmount(p,v);return}U&&Ie(a,null,f,"beforeUnmount"),N&64?a.type.remove(a,f,p,b,ct,v):w&&(T!==ge||F>0&&F&64)?Ne(w,f,p,!1,!0):(T===ge&&F&384||!b&&N&16)&&Ne(S,f,p),v&&Or(a)}(V&&(G=R&&R.onVnodeUnmounted)||U)&&pe(()=>{G&&Ce(G,f,a),U&&Ie(a,null,f,"unmounted")},p)},Or=a=>{const{type:f,el:p,anchor:v,transition:b}=a;if(f===ge){Wo(p,v);return}if(f===Mt){A(a);return}const T=()=>{s(p),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(a.shapeFlag&1&&b&&!b.persisted){const{leave:R,delayLeave:E}=b,S=()=>R(p,T);E?E(a.el,T,S):S()}else T()},Wo=(a,f)=>{let p;for(;a!==f;)p=y(a),s(a),a=p;s(f)},Vo=(a,f,p)=>{const{bum:v,scope:b,update:T,subTree:R,um:E}=a;v&&Mn(v),b.stop(),T&&(T.active=!1,Pe(R,a,f,p)),E&&pe(E,f),pe(()=>{a.isUnmounted=!0},f),f&&f.pendingBranch&&!f.isUnmounted&&a.asyncDep&&!a.asyncResolved&&a.suspenseId===f.pendingId&&(f.deps--,f.deps===0&&f.resolve())},Ne=(a,f,p,v=!1,b=!1,T=0)=>{for(let R=T;Ra.shapeFlag&6?Wt(a.component.subTree):a.shapeFlag&128?a.suspense.next():y(a.anchor||a.el),Rr=(a,f,p)=>{a==null?f._vnode&&Pe(f._vnode,null,null,!0):O(f._vnode||null,a,f,null,null,null,p),Ur(),an(),f._vnode=a},ct={p:O,um:Pe,m:Xe,r:Or,mt:L,mc:_,pc:Z,pbc:M,n:Wt,o:e};let Fn,In;return t&&([Fn,In]=t(ct)),{render:Rr,hydrate:Fn,createApp:Sl(Rr,Fn)}}function Qe({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function yo(e,t,n=!1){const r=e.children,s=t.children;if(D(r)&&D(s))for(let o=0;o>1,e[n[l]]0&&(t[r]=n[o-1]),n[o]=r)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}const jl=e=>e.__isTeleport,ge=Symbol.for("v-fgt"),bt=Symbol.for("v-txt"),ve=Symbol.for("v-cmt"),Mt=Symbol.for("v-stc"),Lt=[];let Oe=null;function bo(e=!1){Lt.push(Oe=e?null:[])}function Dl(){Lt.pop(),Oe=Lt[Lt.length-1]||null}let Dt=1;function Gr(e){Dt+=e}function vo(e){return e.dynamicChildren=Dt>0?Oe||dt:null,Dl(),Dt>0&&Oe&&Oe.push(e),e}function Pa(e,t,n,r,s,o){return vo(Eo(e,t,n,r,s,o,!0))}function wo(e,t,n,r,s){return vo(re(e,t,n,r,s,!0))}function pn(e){return e?e.__v_isVNode===!0:!1}function tt(e,t){return e.type===t.type&&e.key===t.key}const Rn="__vInternal",Co=({key:e})=>e??null,rn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?se(e)||ce(e)||K(e)?{i:de,r:e,k:t,f:!!n}:e:null);function Eo(e,t=null,n=null,r=0,s=null,o=e===ge?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Co(t),ref:t&&rn(t),scopeId:Tn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:de};return l?(xr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=se(n)?8:16),Dt>0&&!i&&Oe&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&Oe.push(c),c}const re=Bl;function Bl(e,t=null,n=null,r=0,s=null,o=!1){if((!e||e===lo)&&(e=ve),pn(e)){const l=Ye(e,t,!0);return n&&xr(l,n),Dt>0&&!o&&Oe&&(l.shapeFlag&6?Oe[Oe.indexOf(e)]=l:Oe.push(l)),l.patchFlag|=-2,l}if(Xl(e)&&(e=e.__vccOpts),t){t=Ul(t);let{class:l,style:c}=t;l&&!se(l)&&(t.class=ar(l)),ee(c)&&(Ws(c)&&!D(c)&&(c=ie({},c)),t.style=cr(c))}const i=se(e)?1:sl(e)?128:jl(e)?64:ee(e)?4:K(e)?2:0;return Eo(e,t,n,r,s,i,o,!0)}function Ul(e){return e?Ws(e)||Rn in e?ie({},e):e:null}function Ye(e,t,n=!1){const{props:r,ref:s,patchFlag:o,children:i}=e,l=t?kl(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Co(l),ref:t&&t.ref?n&&s?D(s)?s.concat(rn(t)):[s,rn(t)]:rn(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ge?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ye(e.ssContent),ssFallback:e.ssFallback&&Ye(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function xo(e=" ",t=0){return re(bt,null,e,t)}function Fa(e,t){const n=re(Mt,null,e);return n.staticCount=t,n}function Ia(e="",t=!1){return t?(bo(),wo(ve,null,e)):re(ve,null,e)}function Ae(e){return e==null||typeof e=="boolean"?re(ve):D(e)?re(ge,null,e.slice()):typeof e=="object"?Ke(e):re(bt,null,String(e))}function Ke(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ye(e)}function xr(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(D(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),xr(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!(Rn in t)?t._ctx=de:s===3&&de&&(de.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else K(t)?(t={default:t,_ctx:de},n=32):(t=String(t),r&64?(n=16,t=[xo(t)]):n=8);e.children=t,e.shapeFlag|=n}function kl(...e){const t={};for(let n=0;nle||de;let Tr,ut,es="__VUE_INSTANCE_SETTERS__";(ut=Wn()[es])||(ut=Wn()[es]=[]),ut.push(e=>le=e),Tr=e=>{ut.length>1?ut.forEach(t=>t(e)):ut[0](e)};const vt=e=>{Tr(e),e.scope.on()},ot=()=>{le&&le.scope.off(),Tr(null)};function To(e){return e.vnode.shapeFlag&4}let wt=!1;function ql(e,t=!1){wt=t;const{props:n,children:r}=e.vnode,s=To(e);Rl(e,n,s,t),Il(e,r);const o=s?zl(e,t):void 0;return wt=!1,o}function zl(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Ft(new Proxy(e.ctx,bl));const{setup:r}=n;if(r){const s=e.setupContext=r.length>1?So(e):null;vt(e),Et();const o=Ve(r,e,0,[e.props,s]);if(xt(),ot(),Os(o)){if(o.then(ot,ot),t)return o.then(i=>{ts(e,i,t)}).catch(i=>{Ut(i,e,0)});e.asyncDep=o}else ts(e,o,t)}else Ao(e,t)}function ts(e,t,n){K(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ee(t)&&(e.setupState=Ys(t)),Ao(e,n)}let ns;function Ao(e,t,n){const r=e.type;if(!e.render){if(!t&&ns&&!r.render){const s=r.template||Cr(e).template;if(s){const{isCustomElement:o,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:c}=r,u=ie(ie({isCustomElement:o,delimiters:l},i),c);r.render=ns(s,u)}}e.render=r.render||Re}vt(e),Et(),wl(e),xt(),ot()}function Yl(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return me(e,"get","$attrs"),t[n]}}))}function So(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return Yl(e)},slots:e.slots,emit:e.emit,expose:t}}function Ar(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Ys(Ft(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in It)return It[n](e)},has(t,n){return n in t||n in It}}))}function Jl(e,t=!0){return K(e)?e.displayName||e.name:e.name||t&&e.__name}function Xl(e){return K(e)&&"__vccOpts"in e}const ae=(e,t)=>qi(e,t,wt);function tr(e,t,n){const r=arguments.length;return r===2?ee(t)&&!D(t)?pn(t)?re(e,null,[t]):re(e,t):re(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&pn(n)&&(n=[n]),re(e,t,n))}const Ql=Symbol.for("v-scx"),Zl=()=>_t(Ql),Gl="3.3.4",ec="http://www.w3.org/2000/svg",nt=typeof document<"u"?document:null,rs=nt&&nt.createElement("template"),tc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t?nt.createElementNS(ec,e):nt.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>nt.createTextNode(e),createComment:e=>nt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>nt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{rs.innerHTML=r?`${e}`:e;const l=rs.content;if(r){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function nc(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function rc(e,t,n){const r=e.style,s=se(n);if(n&&!s){if(t&&!se(t))for(const o in t)n[o]==null&&nr(r,o,"");for(const o in n)nr(r,o,n[o])}else{const o=r.display;s?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=o)}}const ss=/\s*!important$/;function nr(e,t,n){if(D(n))n.forEach(r=>nr(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=sc(e,t);ss.test(n)?e.setProperty(lt(r),n.replace(ss,""),"important"):e[r]=n}}const os=["Webkit","Moz","ms"],jn={};function sc(e,t){const n=jn[t];if(n)return n;let r=Le(t);if(r!=="filter"&&r in e)return jn[t]=r;r=yn(r);for(let s=0;sDn||(fc.then(()=>Dn=0),Dn=Date.now());function hc(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;xe(pc(r,n.value),t,5,[r])};return n.value=e,n.attached=dc(),n}function pc(e,t){if(D(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const cs=/^on[a-z]/,gc=(e,t,n,r,s=!1,o,i,l,c)=>{t==="class"?nc(e,r,s):t==="style"?rc(e,n,r):Bt(t)?sr(t)||ac(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):mc(e,t,r,s))?ic(e,t,r,o,i,l,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),oc(e,t,r,s))};function mc(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&cs.test(t)&&K(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||cs.test(t)&&se(n)?!1:t in e}const Ue="transition",St="animation",Oo=(e,{slots:t})=>tr(cl,_c(e),t);Oo.displayName="Transition";const Ro={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};Oo.props=ie({},no,Ro);const Ze=(e,t=[])=>{D(e)?e.forEach(n=>n(...t)):e&&e(...t)},as=e=>e?D(e)?e.some(t=>t.length>1):e.length>1:!1;function _c(e){const t={};for(const P in e)P in Ro||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:u=i,appearToClass:d=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:y=`${n}-leave-active`,leaveToClass:C=`${n}-leave-to`}=e,x=yc(s),O=x&&x[0],H=x&&x[1],{onBeforeEnter:g,onEnter:m,onEnterCancelled:j,onLeave:A,onLeaveCancelled:B,onBeforeAppear:q=g,onAppear:k=m,onAppearCancelled:_=j}=t,I=(P,W,L)=>{Ge(P,W?d:l),Ge(P,W?u:i),L&&L()},M=(P,W)=>{P._isLeaving=!1,Ge(P,h),Ge(P,C),Ge(P,y),W&&W()},J=P=>(W,L)=>{const _e=P?k:m,X=()=>I(W,P,L);Ze(_e,[W,X]),us(()=>{Ge(W,P?c:o),ke(W,P?d:l),as(_e)||fs(W,r,O,X)})};return ie(t,{onBeforeEnter(P){Ze(g,[P]),ke(P,o),ke(P,i)},onBeforeAppear(P){Ze(q,[P]),ke(P,c),ke(P,u)},onEnter:J(!1),onAppear:J(!0),onLeave(P,W){P._isLeaving=!0;const L=()=>M(P,W);ke(P,h),wc(),ke(P,y),us(()=>{P._isLeaving&&(Ge(P,h),ke(P,C),as(A)||fs(P,r,H,L))}),Ze(A,[P,L])},onEnterCancelled(P){I(P,!1),Ze(j,[P])},onAppearCancelled(P){I(P,!0),Ze(_,[P])},onLeaveCancelled(P){M(P),Ze(B,[P])}})}function yc(e){if(e==null)return null;if(ee(e))return[Bn(e.enter),Bn(e.leave)];{const t=Bn(e);return[t,t]}}function Bn(e){return Go(e)}function ke(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function Ge(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function us(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let bc=0;function fs(e,t,n,r){const s=e._endId=++bc,o=()=>{s===e._endId&&r()};if(n)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=vc(e,t);if(!i)return r();const u=i+"end";let d=0;const h=()=>{e.removeEventListener(u,y),o()},y=C=>{C.target===e&&++d>=c&&h()};setTimeout(()=>{d(n[x]||"").split(", "),s=r(`${Ue}Delay`),o=r(`${Ue}Duration`),i=ds(s,o),l=r(`${St}Delay`),c=r(`${St}Duration`),u=ds(l,c);let d=null,h=0,y=0;t===Ue?i>0&&(d=Ue,h=i,y=o.length):t===St?u>0&&(d=St,h=u,y=c.length):(h=Math.max(i,u),d=h>0?i>u?Ue:St:null,y=d?d===Ue?o.length:c.length:0);const C=d===Ue&&/\b(transform|all)(,|$)/.test(r(`${Ue}Property`).toString());return{type:d,timeout:h,propCount:y,hasTransform:C}}function ds(e,t){for(;e.lengthhs(n)+hs(e[r])))}function hs(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function wc(){return document.body.offsetHeight}const Cc=["ctrl","shift","alt","meta"],Ec={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Cc.some(n=>e[`${n}Key`]&&!t.includes(n))},Ma=(e,t)=>(n,...r)=>{for(let s=0;sn=>{if(!("key"in n))return;const r=lt(n.key);if(t.some(s=>s===r||xc[s]===r))return e(n)},Tc=ie({patchProp:gc},tc);let Un,ps=!1;function Ac(){return Un=ps?Un:Nl(Tc),ps=!0,Un}const Na=(...e)=>{const t=Ac().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Sc(r);if(s)return n(s,!0,s instanceof SVGElement)},t};function Sc(e){return se(e)?document.querySelector(e):e}const $a=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Oc="modulepreload",Rc=function(e){return"/"+e},gs={},Ha=function(t,n,r){if(!n||n.length===0)return t();const s=document.getElementsByTagName("link");return Promise.all(n.map(o=>{if(o=Rc(o),o in gs)return;gs[o]=!0;const i=o.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(!!r)for(let d=s.length-1;d>=0;d--){const h=s[d];if(h.href===o&&(!i||h.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${l}`))return;const u=document.createElement("link");if(u.rel=i?"stylesheet":Oc,i||(u.as="script",u.crossOrigin=""),u.href=o,document.head.appendChild(u),i)return new Promise((d,h)=>{u.addEventListener("load",d),u.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})},Pc=window.__VP_SITE_DATA__;function Sr(e){return Ms()?(ci(e),!0):!1}function it(e){return typeof e=="function"?e():zs(e)}const Po=typeof window<"u"&&typeof document<"u",Fc=Object.prototype.toString,Ic=e=>Fc.call(e)==="[object Object]",Fo=()=>{},ms=Mc();function Mc(){var e;return Po&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent)}function Lc(e,t){function n(...r){return new Promise((s,o)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(s).catch(o)})}return n}const Io=e=>e();function Nc(e=Io){const t=fe(!0);function n(){t.value=!1}function r(){t.value=!0}const s=(...o)=>{t.value&&e(...o)};return{isActive:wn(t),pause:n,resume:r,eventFilter:s}}function Mo(...e){if(e.length!==1)return Ki(...e);const t=e[0];return typeof t=="function"?wn(Bi(()=>({get:t,set:Fo}))):fe(t)}function $c(e,t,n={}){const{eventFilter:r=Io,...s}=n;return qe(e,Lc(r,t),s)}function Hc(e,t,n={}){const{eventFilter:r,...s}=n,{eventFilter:o,pause:i,resume:l,isActive:c}=Nc(r);return{stop:$c(e,t,{...s,eventFilter:o}),pause:i,resume:l,isActive:c}}function jc(e,t=!0){Pn()?Tt(e):t?e():Cn(e)}function Lo(e){var t;const n=it(e);return(t=n==null?void 0:n.$el)!=null?t:n}const Ct=Po?window:void 0;function gn(...e){let t,n,r,s;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,s]=e,t=Ct):[t,n,r,s]=e,!t)return Fo;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const o=[],i=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,y,C)=>(d.addEventListener(h,y,C),()=>d.removeEventListener(h,y,C)),c=qe(()=>[Lo(t),it(s)],([d,h])=>{if(i(),!d)return;const y=Ic(h)?{...h}:h;o.push(...n.flatMap(C=>r.map(x=>l(d,C,x,y))))},{immediate:!0,flush:"post"}),u=()=>{c(),i()};return Sr(u),u}function Dc(){const e=fe(!1);return Pn()&&Tt(()=>{e.value=!0}),e}function Bc(e){const t=Dc();return ae(()=>(t.value,!!e()))}function Uc(e,t={}){const{window:n=Ct}=t,r=Bc(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let s;const o=fe(!1),i=u=>{o.value=u.matches},l=()=>{s&&("removeEventListener"in s?s.removeEventListener("change",i):s.removeListener(i))},c=eo(()=>{r.value&&(l(),s=n.matchMedia(it(e)),"addEventListener"in s?s.addEventListener("change",i):s.addListener(i),o.value=s.matches)});return Sr(()=>{c(),l(),s=void 0}),o}const Gt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},en="__vueuse_ssr_handlers__",kc=Kc();function Kc(){return en in Gt||(Gt[en]=Gt[en]||{}),Gt[en]}function No(e,t){return kc[e]||t}function Wc(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Vc={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},_s="vueuse-storage";function qc(e,t,n,r={}){var s;const{flush:o="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:u=!1,shallow:d,window:h=Ct,eventFilter:y,onError:C=_=>{console.error(_)}}=r,x=(d?Vs:fe)(t);if(!n)try{n=No("getDefaultStorage",()=>{var _;return(_=Ct)==null?void 0:_.localStorage})()}catch(_){C(_)}if(!n)return x;const O=it(t),H=Wc(O),g=(s=r.serializer)!=null?s:Vc[H],{pause:m,resume:j}=Hc(x,()=>A(x.value),{flush:o,deep:i,eventFilter:y});return h&&l&&(gn(h,"storage",k),gn(h,_s,q)),k(),x;function A(_){try{if(_==null)n.removeItem(e);else{const I=g.write(_),M=n.getItem(e);M!==I&&(n.setItem(e,I),h&&h.dispatchEvent(new CustomEvent(_s,{detail:{key:e,oldValue:M,newValue:I,storageArea:n}})))}}catch(I){C(I)}}function B(_){const I=_?_.newValue:n.getItem(e);if(I==null)return c&&O!==null&&n.setItem(e,g.write(O)),O;if(!_&&u){const M=g.read(I);return typeof u=="function"?u(M,O):H==="object"&&!Array.isArray(M)?{...O,...M}:M}else return typeof I!="string"?I:g.read(I)}function q(_){k(_.detail)}function k(_){if(!(_&&_.storageArea!==n)){if(_&&_.key==null){x.value=O;return}if(!(_&&_.key!==e)){m();try{(_==null?void 0:_.newValue)!==g.write(x.value)&&(x.value=B(_))}catch(I){C(I)}finally{_?Cn(j):j()}}}}}function zc(e){return Uc("(prefers-color-scheme: dark)",e)}function Yc(e={}){const{selector:t="html",attribute:n="class",initialValue:r="auto",window:s=Ct,storage:o,storageKey:i="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:u,disableTransition:d=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},y=zc({window:s}),C=ae(()=>y.value?"dark":"light"),x=c||(i==null?Mo(r):qc(i,r,o,{window:s,listenToStorageChanges:l})),O=ae(()=>x.value==="auto"?C.value:x.value),H=No("updateHTMLAttrs",(A,B,q)=>{const k=typeof A=="string"?s==null?void 0:s.document.querySelector(A):Lo(A);if(!k)return;let _;if(d){_=s.document.createElement("style");const I="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";_.appendChild(document.createTextNode(I)),s.document.head.appendChild(_)}if(B==="class"){const I=q.split(/\s/g);Object.values(h).flatMap(M=>(M||"").split(/\s/g)).filter(Boolean).forEach(M=>{I.includes(M)?k.classList.add(M):k.classList.remove(M)})}else k.setAttribute(B,q);d&&(s.getComputedStyle(_).opacity,document.head.removeChild(_))});function g(A){var B;H(t,n,(B=h[A])!=null?B:A)}function m(A){e.onChanged?e.onChanged(A,g):g(A)}qe(O,m,{flush:"post",immediate:!0}),jc(()=>m(O.value));const j=ae({get(){return u?x.value:O.value},set(A){x.value=A}});try{return Object.assign(j,{store:x,system:C,state:O})}catch{return j}}function Jc(e={}){const{valueDark:t="dark",valueLight:n=""}=e,r=Yc({...e,onChanged:(o,i)=>{var l;e.onChanged?(l=e.onChanged)==null||l.call(e,o==="dark",i,o):i(o)},modes:{dark:t,light:n}});return ae({get(){return r.value==="dark"},set(o){const i=o?"dark":"light";r.system.value===i?r.value="auto":r.value=i}})}function kn(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function $o(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}function ja(e,t=!1){const n=fe(t);let r=null,s;qe(Mo(e),l=>{const c=kn(it(l));if(c){const u=c;s=u.style.overflow,n.value&&(u.style.overflow="hidden")}},{immediate:!0});const o=()=>{const l=kn(it(e));!l||n.value||(ms&&(r=gn(l,"touchmove",c=>{Xc(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},i=()=>{const l=kn(it(e));!l||!n.value||(ms&&(r==null||r()),l.style.overflow=s,n.value=!1)};return Sr(i),ae({get(){return n.value},set(l){l?o():i()}})}function Da({window:e=Ct}={}){if(!e)return{x:fe(0),y:fe(0)};const t=fe(e.scrollX),n=fe(e.scrollY);return gn(e,"scroll",()=>{t.value=e.scrollX,n.value=e.scrollY},{capture:!1,passive:!0}),{x:t,y:n}}const Ho=/^[a-z]+:/i,Qc="vitepress-theme-appearance",jo=/#.*$/,Zc=/(index)?\.(md|html)$/,Ee=typeof document<"u",Do={relativePath:"",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function Gc(e,t,n=!1){if(t===void 0)return!1;if(e=ys(`/${e}`),n)return new RegExp(t).test(e);if(ys(t)!==e)return!1;const r=t.match(jo);return r?(Ee?location.hash:"")===r[0]:!0}function ys(e){return decodeURI(e).replace(jo,"").replace(Zc,"")}function ea(e){return Ho.test(e)}function ta(e,t){var r,s,o,i,l,c,u;const n=Object.keys(e.locales).find(d=>d!=="root"&&!ea(d)&&Gc(t,`/${d}/`,!0))||"root";return Object.assign({},e,{localeIndex:n,lang:((r=e.locales[n])==null?void 0:r.lang)??e.lang,dir:((s=e.locales[n])==null?void 0:s.dir)??e.dir,title:((o=e.locales[n])==null?void 0:o.title)??e.title,titleTemplate:((i=e.locales[n])==null?void 0:i.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:Uo(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(u=e.locales[n])==null?void 0:u.themeConfig}})}function Bo(e,t){const n=t.title||e.title,r=t.titleTemplate??e.titleTemplate;if(typeof r=="string"&&r.includes(":title"))return r.replace(/:title/g,n);const s=na(e.title,r);return`${n}${s}`}function na(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function ra(e,t){const[n,r]=t;if(n!=="meta")return!1;const s=Object.entries(r)[0];return s==null?!1:e.some(([o,i])=>o===n&&i[s[0]]===s[1])}function Uo(e,t){return[...e.filter(n=>!ra(t,n)),...t]}const sa=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,oa=/^[a-z]:/i;function bs(e){const t=oa.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(sa,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const ia=Symbol(),rt=Vs(Pc);function Ba(e){const t=ae(()=>ta(rt.value,e.data.relativePath)),n=t.value.appearance?Jc({storageKey:Qc,initialValue:()=>typeof t.value.appearance=="string"?t.value.appearance:"auto",...typeof t.value.appearance=="object"?t.value.appearance:{}}):fe(!1);return{site:t,theme:ae(()=>t.value.themeConfig),page:ae(()=>e.data),frontmatter:ae(()=>e.data.frontmatter),params:ae(()=>e.data.params),lang:ae(()=>t.value.lang),dir:ae(()=>t.value.dir),localeIndex:ae(()=>t.value.localeIndex||"root"),title:ae(()=>Bo(t.value,e.data)),description:ae(()=>e.data.description||t.value.description),isDark:n}}function la(){const e=_t(ia);if(!e)throw new Error("vitepress data not properly injected in app");return e}function ca(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function vs(e){return Ho.test(e)||!e.startsWith("/")?e:ca(rt.value.base,e)}function aa(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),Ee){const n="/";t=bs(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let r=__VP_HASH_MAP__[t.toLowerCase()];if(r||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",r=__VP_HASH_MAP__[t.toLowerCase()]),!r)return null;t=`${n}assets/${t}.${r}.js`}else t=`./${bs(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let sn=[];function Ua(e){sn.push(e),On(()=>{sn=sn.filter(t=>t!==e)})}const ua=Symbol(),ws="http://a.com",fa=()=>({path:"/",component:null,data:Do});function ka(e,t){const n=vn(fa()),r={route:n,go:s};async function s(l=Ee?location.href:"/"){var u,d;if(await((u=r.onBeforeRouteChange)==null?void 0:u.call(r,l))===!1)return;const c=new URL(l,ws);rt.value.cleanUrls||!c.pathname.endsWith("/")&&!c.pathname.endsWith(".html")&&(c.pathname+=".html",l=c.pathname+c.search+c.hash),xs(l),await i(l),await((d=r.onAfterRouteChanged)==null?void 0:d.call(r,l))}let o=null;async function i(l,c=0,u=!1){var y;if(await((y=r.onBeforePageLoad)==null?void 0:y.call(r,l))===!1)return;const d=new URL(l,ws),h=o=d.pathname;try{let C=await e(h);if(!C)throw new Error(`Page not found: ${h}`);if(o===h){o=null;const{default:x,__pageData:O}=C;if(!x)throw new Error(`Invalid route component: ${x}`);n.path=Ee?h:vs(h),n.component=Ft(x),n.data=Ft(O),Ee&&Cn(()=>{let H=rt.value.base+O.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!rt.value.cleanUrls&&!H.endsWith("/")&&(H+=".html"),H!==d.pathname&&(d.pathname=H,l=H+d.search+d.hash,history.replaceState(null,"",l)),d.hash&&!c){let g=null;try{g=document.getElementById(decodeURIComponent(d.hash).slice(1))}catch(m){console.warn(m)}if(g){Cs(g,d.hash);return}}window.scrollTo(0,c)})}}catch(C){if(!/fetch|Page not found/.test(C.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(C),!u)try{const x=await fetch(rt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await x.json(),await i(l,c,!0);return}catch{}o===h&&(o=null,n.path=Ee?h:vs(h),n.component=t?Ft(t):null,n.data=Do)}}return Ee&&(window.addEventListener("click",l=>{if(l.target.closest("button"))return;const u=l.target.closest("a");if(u&&!u.closest(".vp-raw")&&(u instanceof SVGElement||!u.download)){const{target:d}=u,{href:h,origin:y,pathname:C,hash:x,search:O}=new URL(u.href instanceof SVGAnimatedString?u.href.animVal:u.href,u.baseURI),H=window.location,g=C.match(/\.\w+$/);!l.ctrlKey&&!l.shiftKey&&!l.altKey&&!l.metaKey&&!d&&y===H.origin&&!(g&&g[0]!==".html")&&(l.preventDefault(),C===H.pathname&&O===H.search?(x!==H.hash&&(history.pushState(null,"",x),window.dispatchEvent(new Event("hashchange"))),x?Cs(u,x,u.classList.contains("header-anchor")):(xs(h),window.scrollTo(0,0))):s(h))}},{capture:!0}),window.addEventListener("popstate",l=>{i(location.href,l.state&&l.state.scrollPosition||0)}),window.addEventListener("hashchange",l=>{l.preventDefault()})),r}function da(){const e=_t(ua);if(!e)throw new Error("useRouter() is called without provider.");return e}function ko(){return da().route}function Cs(e,t,n=!1){let r=null;try{r=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(s){console.warn(s)}if(r){let u=function(){!n||Math.abs(c-window.scrollY)>window.innerHeight?window.scrollTo(0,c):window.scrollTo({left:0,top:c,behavior:"smooth"})},s=rt.value.scrollOffset,o=0,i=24;if(typeof s=="object"&&"padding"in s&&(i=s.padding,s=s.selector),typeof s=="number")o=s;else if(typeof s=="string")o=Es(s,i);else if(Array.isArray(s))for(const d of s){const h=Es(d,i);if(h){o=h;break}}const l=parseInt(window.getComputedStyle(r).paddingTop,10),c=window.scrollY+r.getBoundingClientRect().top-o+l;requestAnimationFrame(u)}}function Es(e,t){const n=document.querySelector(e);if(!n)return 0;const r=n.getBoundingClientRect().bottom;return r<0?0:r+t}function xs(e){Ee&&e!==location.href&&(history.replaceState({scrollPosition:window.scrollY},document.title),history.pushState(null,"",e))}const Ts=()=>sn.forEach(e=>e()),Ka=vr({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=ko(),{site:n}=la();return()=>tr(e.as,n.value.contentProps??{style:{position:"relative"}},[t.component?tr(t.component,{onVnodeMounted:Ts,onVnodeUpdated:Ts}):"404 Page Not Found"])}}),Wa=vr({setup(e,{slots:t}){const n=fe(!1);return Tt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function Va(){Ee&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const r=(n=t.parentElement)==null?void 0:n.parentElement;if(!r)return;const s=Array.from(r.querySelectorAll("input")).indexOf(t);if(s<0)return;const o=r.querySelector(".blocks");if(!o)return;const i=Array.from(o.children).find(u=>u.classList.contains("active"));if(!i)return;const l=o.children[s];if(!l||i===l)return;i.classList.remove("active"),l.classList.add("active");const c=r==null?void 0:r.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function qa(){if(Ee){const e=new WeakMap;window.addEventListener("click",t=>{var r;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const s=n.parentElement,o=(r=n.nextElementSibling)==null?void 0:r.nextElementSibling;if(!s||!o)return;const i=/language-(shellscript|shell|bash|sh|zsh)/.test(s.className);let l="";o.querySelectorAll("span.line:not(.diff.remove)").forEach(c=>l+=(c.textContent||"")+` -`),l=l.slice(0,-1),i&&(l=l.replace(/^ *(\$|>) /gm,"").trim()),ha(l).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const c=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,c)})}})}}async function ha(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const r=document.getSelection(),s=r?r.rangeCount>0&&r.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),s&&(r.removeAllRanges(),r.addRange(s)),n&&n.focus()}}function za(e,t){let n=[],r=!0;const s=o=>{if(r){r=!1;return}n.forEach(i=>document.head.removeChild(i)),n=[],o.forEach(i=>{const l=As(i);document.head.appendChild(l),n.push(l)})};eo(()=>{const o=e.data,i=t.value,l=o&&o.description,c=o&&o.frontmatter.head||[];document.title=Bo(i,o);const u=l||i.description;let d=document.querySelector("meta[name=description]");d?d.setAttribute("content",u):As(["meta",{name:"description",content:u}]),s(Uo(i.head,ga(c)))})}function As([e,t,n]){const r=document.createElement(e);for(const s in t)r.setAttribute(s,t[s]);return n&&(r.innerHTML=n),r}function pa(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function ga(e){return e.filter(t=>!pa(t))}const Kn=new Set,Ko=()=>document.createElement("link"),ma=e=>{const t=Ko();t.rel="prefetch",t.href=e,document.head.appendChild(t)},_a=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let tn;const ya=Ee&&(tn=Ko())&&tn.relList&&tn.relList.supports&&tn.relList.supports("prefetch")?ma:_a;function Ya(){if(!Ee||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const r=()=>{n&&n.disconnect(),n=new IntersectionObserver(o=>{o.forEach(i=>{if(i.isIntersecting){const l=i.target;n.unobserve(l);const{pathname:c}=l;if(!Kn.has(c)){Kn.add(c);const u=aa(c);u&&ya(u)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(o=>{const{hostname:i,pathname:l}=new URL(o.href instanceof SVGAnimatedString?o.href.animVal:o.href,o.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||o.target!=="_blank"&&i===location.hostname&&(l!==location.pathname?n.observe(o):Kn.add(l))})})};Tt(r);const s=ko();qe(()=>s.path,r),On(()=>{n&&n.disconnect()})}export{Ra as $,Ca as A,pl as B,xa as C,Aa as D,Vs as E,ge as F,Ua as G,re as H,Ta as I,Ho as J,ko as K,kl as L,_t as M,cr as N,Cn as O,Da as P,Fa as Q,wn as R,Ea as S,Oo as T,Ha as U,ja as V,Ol as W,La as X,Oa as Y,Ma as Z,$a as _,xo as a,za as a0,ua as a1,Ba as a2,ia as a3,Ka as a4,Wa as a5,rt as a6,Na as a7,ka as a8,aa as a9,Ya as aa,qa as ab,Va as ac,tr as ad,da as ae,wo as b,Pa as c,vr as d,Ia as e,vs as f,ae as g,fe as h,ea as i,Tt as j,Eo as k,zs as l,wa as m,ar as n,bo as o,va as p,Gc as q,Sa as r,Ee as s,ba as t,la as u,Uc as v,Gi as w,qe as x,eo as y,On as z}; +function sr(e,t){const n=Object.create(null),r=e.split(",");for(let s=0;s!!n[s.toLowerCase()]:s=>!!n[s]}const te={},dt=[],Re=()=>{},zo=()=>!1,Yo=/^on[^a-z]/,Bt=e=>Yo.test(e),or=e=>e.startsWith("onUpdate:"),ie=Object.assign,ir=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Jo=Object.prototype.hasOwnProperty,z=(e,t)=>Jo.call(e,t),D=Array.isArray,ht=e=>mn(e)==="[object Map]",Ss=e=>mn(e)==="[object Set]",K=e=>typeof e=="function",se=e=>typeof e=="string",lr=e=>typeof e=="symbol",ee=e=>e!==null&&typeof e=="object",Os=e=>ee(e)&&K(e.then)&&K(e.catch),Rs=Object.prototype.toString,mn=e=>Rs.call(e),Xo=e=>mn(e).slice(8,-1),Ps=e=>mn(e)==="[object Object]",cr=e=>se(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Pt=sr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),_n=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Qo=/-(\w)/g,Le=_n(e=>e.replace(Qo,(t,n)=>n?n.toUpperCase():"")),Zo=/\B([A-Z])/g,lt=_n(e=>e.replace(Zo,"-$1").toLowerCase()),yn=_n(e=>e.charAt(0).toUpperCase()+e.slice(1)),nn=_n(e=>e?`on${yn(e)}`:""),Nt=(e,t)=>!Object.is(e,t),Mn=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Go=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ei=e=>{const t=se(e)?Number(e):NaN;return isNaN(t)?e:t};let Lr;const Wn=()=>Lr||(Lr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function ar(e){if(D(e)){const t={};for(let n=0;n{if(n){const r=n.split(ni);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function ur(e){let t="";if(se(e))t=e;else if(D(e))for(let n=0;nse(e)?e:e==null?"":D(e)||ee(e)&&(e.toString===Rs||!K(e.toString))?JSON.stringify(e,Is,2):String(e),Is=(e,t)=>t&&t.__v_isRef?Is(e,t.value):ht(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s])=>(n[`${r} =>`]=s,n),{})}:Ss(t)?{[`Set(${t.size})`]:[...t.values()]}:ee(t)&&!D(t)&&!Ps(t)?String(t):t;let be;class li{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=be,!t&&be&&(this.index=(be.scopes||(be.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=be;try{return be=this,t()}finally{be=n}}}on(){be=this}off(){be=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n{const t=new Set(e);return t.w=0,t.n=0,t},Ls=e=>(e.w&ze)>0,Ns=e=>(e.n&ze)>0,ui=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{(d==="length"||d>=c)&&l.push(u)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":D(e)?cr(n)&&l.push(i.get("length")):(l.push(i.get(rt)),ht(e)&&l.push(i.get(qn)));break;case"delete":D(e)||(l.push(i.get(rt)),ht(e)&&l.push(i.get(qn)));break;case"set":ht(e)&&l.push(i.get(rt));break}if(l.length===1)l[0]&&zn(l[0]);else{const c=[];for(const u of l)u&&c.push(...u);zn(fr(c))}}function zn(e,t){const n=D(e)?e:[...e];for(const r of n)r.computed&&$r(r);for(const r of n)r.computed||$r(r)}function $r(e,t){(e!==Se||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}function di(e,t){var n;return(n=ln.get(e))==null?void 0:n.get(t)}const hi=sr("__proto__,__v_isRef,__isVue"),js=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(lr)),pi=hr(),gi=hr(!1,!0),mi=hr(!0),Hr=_i();function _i(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=Y(this);for(let o=0,i=this.length;o{e[t]=function(...n){Et();const r=Y(this)[t].apply(this,n);return xt(),r}}),e}function yi(e){const t=Y(this);return me(t,"has",e),t.hasOwnProperty(e)}function hr(e=!1,t=!1){return function(r,s,o){if(s==="__v_isReactive")return!e;if(s==="__v_isReadonly")return e;if(s==="__v_isShallow")return t;if(s==="__v_raw"&&o===(e?t?Li:Ks:t?Us:ks).get(r))return r;const i=D(r);if(!e){if(i&&z(Hr,s))return Reflect.get(Hr,s,o);if(s==="hasOwnProperty")return yi}const l=Reflect.get(r,s,o);return(lr(s)?js.has(s):hi(s))||(e||me(r,"get",s),t)?l:ce(l)?i&&cr(s)?l:l.value:ee(l)?e?wn(l):vn(l):l}}const bi=Ds(),vi=Ds(!0);function Ds(e=!1){return function(n,r,s,o){let i=n[r];if(yt(i)&&ce(i)&&!ce(s))return!1;if(!e&&(!cn(s)&&!yt(s)&&(i=Y(i),s=Y(s)),!D(n)&&ce(i)&&!ce(s)))return i.value=s,!0;const l=D(n)&&cr(r)?Number(r)e,bn=e=>Reflect.getPrototypeOf(e);function Vt(e,t,n=!1,r=!1){e=e.__v_raw;const s=Y(e),o=Y(t);n||(t!==o&&me(s,"get",t),me(s,"get",o));const{has:i}=bn(s),l=r?pr:n?_r:$t;if(i.call(s,t))return l(e.get(t));if(i.call(s,o))return l(e.get(o));e!==s&&e.get(t)}function qt(e,t=!1){const n=this.__v_raw,r=Y(n),s=Y(e);return t||(e!==s&&me(r,"has",e),me(r,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function zt(e,t=!1){return e=e.__v_raw,!t&&me(Y(e),"iterate",rt),Reflect.get(e,"size",e)}function jr(e){e=Y(e);const t=Y(this);return bn(t).has.call(t,e)||(t.add(e),He(t,"add",e,e)),this}function Dr(e,t){t=Y(t);const n=Y(this),{has:r,get:s}=bn(n);let o=r.call(n,e);o||(e=Y(e),o=r.call(n,e));const i=s.call(n,e);return n.set(e,t),o?Nt(t,i)&&He(n,"set",e,t):He(n,"add",e,t),this}function Br(e){const t=Y(this),{has:n,get:r}=bn(t);let s=n.call(t,e);s||(e=Y(e),s=n.call(t,e)),r&&r.call(t,e);const o=t.delete(e);return s&&He(t,"delete",e,void 0),o}function kr(){const e=Y(this),t=e.size!==0,n=e.clear();return t&&He(e,"clear",void 0,void 0),n}function Yt(e,t){return function(r,s){const o=this,i=o.__v_raw,l=Y(i),c=t?pr:e?_r:$t;return!e&&me(l,"iterate",rt),i.forEach((u,d)=>r.call(s,c(u),c(d),o))}}function Jt(e,t,n){return function(...r){const s=this.__v_raw,o=Y(s),i=ht(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,u=s[e](...r),d=n?pr:t?_r:$t;return!t&&me(o,"iterate",c?qn:rt),{next(){const{value:h,done:y}=u.next();return y?{value:h,done:y}:{value:l?[d(h[0]),d(h[1])]:d(h),done:y}},[Symbol.iterator](){return this}}}}function De(e){return function(...t){return e==="delete"?!1:this}}function Ai(){const e={get(o){return Vt(this,o)},get size(){return zt(this)},has:qt,add:jr,set:Dr,delete:Br,clear:kr,forEach:Yt(!1,!1)},t={get(o){return Vt(this,o,!1,!0)},get size(){return zt(this)},has:qt,add:jr,set:Dr,delete:Br,clear:kr,forEach:Yt(!1,!0)},n={get(o){return Vt(this,o,!0)},get size(){return zt(this,!0)},has(o){return qt.call(this,o,!0)},add:De("add"),set:De("set"),delete:De("delete"),clear:De("clear"),forEach:Yt(!0,!1)},r={get(o){return Vt(this,o,!0,!0)},get size(){return zt(this,!0)},has(o){return qt.call(this,o,!0)},add:De("add"),set:De("set"),delete:De("delete"),clear:De("clear"),forEach:Yt(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=Jt(o,!1,!1),n[o]=Jt(o,!0,!1),t[o]=Jt(o,!1,!0),r[o]=Jt(o,!0,!0)}),[e,n,t,r]}const[Si,Oi,Ri,Pi]=Ai();function gr(e,t){const n=t?e?Pi:Ri:e?Oi:Si;return(r,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(z(n,s)&&s in r?n:r,s,o)}const Fi={get:gr(!1,!1)},Ii={get:gr(!1,!0)},Mi={get:gr(!0,!1)},ks=new WeakMap,Us=new WeakMap,Ks=new WeakMap,Li=new WeakMap;function Ni(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function $i(e){return e.__v_skip||!Object.isExtensible(e)?0:Ni(Xo(e))}function vn(e){return yt(e)?e:mr(e,!1,Bs,Fi,ks)}function Hi(e){return mr(e,!1,Ti,Ii,Us)}function wn(e){return mr(e,!0,xi,Mi,Ks)}function mr(e,t,n,r,s){if(!ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=s.get(e);if(o)return o;const i=$i(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return s.set(e,l),l}function pt(e){return yt(e)?pt(e.__v_raw):!!(e&&e.__v_isReactive)}function yt(e){return!!(e&&e.__v_isReadonly)}function cn(e){return!!(e&&e.__v_isShallow)}function Ws(e){return pt(e)||yt(e)}function Y(e){const t=e&&e.__v_raw;return t?Y(t):e}function Ft(e){return on(e,"__v_skip",!0),e}const $t=e=>ee(e)?vn(e):e,_r=e=>ee(e)?wn(e):e;function yr(e){We&&Se&&(e=Y(e),Hs(e.dep||(e.dep=fr())))}function br(e,t){e=Y(e);const n=e.dep;n&&zn(n)}function ce(e){return!!(e&&e.__v_isRef===!0)}function ue(e){return qs(e,!1)}function Vs(e){return qs(e,!0)}function qs(e,t){return ce(e)?e:new ji(e,t)}class ji{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:Y(t),this._value=n?t:$t(t)}get value(){return yr(this),this._value}set value(t){const n=this.__v_isShallow||cn(t)||yt(t);t=n?t:Y(t),Nt(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:$t(t),br(this))}}function zs(e){return ce(e)?e.value:e}const Di={get:(e,t,n)=>zs(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return ce(s)&&!ce(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function Ys(e){return pt(e)?e:new Proxy(e,Di)}class Bi{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>yr(this),()=>br(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function ki(e){return new Bi(e)}class Ui{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return di(Y(this._object),this._key)}}class Ki{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Wi(e,t,n){return ce(e)?e:K(e)?new Ki(e):ee(e)&&arguments.length>1?Vi(e,t,n):ue(e)}function Vi(e,t,n){const r=e[t];return ce(r)?r:new Ui(e,t,n)}class qi{constructor(t,n,r,s){this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this._dirty=!0,this.effect=new dr(t,()=>{this._dirty||(this._dirty=!0,br(this))}),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const t=Y(this);return yr(t),(t._dirty||!t._cacheable)&&(t._dirty=!1,t._value=t.effect.run()),t._value}set value(t){this._setter(t)}}function zi(e,t,n=!1){let r,s;const o=K(e);return o?(r=e,s=Re):(r=e.get,s=e.set),new qi(r,s,o||!s,n)}function Ve(e,t,n,r){let s;try{s=r?e(...r):e()}catch(o){kt(o,t,n)}return s}function xe(e,t,n,r){if(K(e)){const o=Ve(e,t,n,r);return o&&Os(o)&&o.catch(i=>{kt(i,t,n)}),o}const s=[];for(let o=0;o>>1;jt(fe[r])Me&&fe.splice(t,1)}function Qi(e){D(e)?gt.push(...e):(!$e||!$e.includes(e,e.allowRecurse?et+1:et))&>.push(e),Xs()}function Ur(e,t=Ht?Me+1:0){for(;tjt(n)-jt(r)),et=0;et<$e.length;et++)$e[et]();$e=null,et=0}}const jt=e=>e.id==null?1/0:e.id,Zi=(e,t)=>{const n=jt(e)-jt(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Qs(e){Yn=!1,Ht=!0,fe.sort(Zi);const t=Re;try{for(Me=0;Mese(C)?C.trim():C)),h&&(s=n.map(Go))}let l,c=r[l=nn(t)]||r[l=nn(Le(t))];!c&&o&&(c=r[l=nn(lt(t))]),c&&xe(c,e,6,s);const u=r[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,xe(u,e,6,s)}}function Zs(e,t,n=!1){const r=t.emitsCache,s=r.get(e);if(s!==void 0)return s;const o=e.emits;let i={},l=!1;if(!K(e)){const c=u=>{const d=Zs(u,t,!0);d&&(l=!0,ie(i,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(ee(e)&&r.set(e,null),null):(D(o)?o.forEach(c=>i[c]=null):ie(i,o),ee(e)&&r.set(e,i),i)}function xn(e,t){return!e||!Bt(t)?!1:(t=t.slice(2).replace(/Once$/,""),z(e,t[0].toLowerCase()+t.slice(1))||z(e,lt(t))||z(e,t))}let de=null,Tn=null;function un(e){const t=de;return de=e,Tn=e&&e.type.__scopeId||null,t}function wa(e){Tn=e}function Ca(){Tn=null}function el(e,t=de,n){if(!t||e._n)return e;const r=(...s)=>{r._d&&es(-1);const o=un(t);let i;try{i=e(...s)}finally{un(o),r._d&&es(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function Ln(e){const{type:t,vnode:n,proxy:r,withProxy:s,props:o,propsOptions:[i],slots:l,attrs:c,emit:u,render:d,renderCache:h,data:y,setupState:C,ctx:x,inheritAttrs:O}=e;let H,g;const m=un(e);try{if(n.shapeFlag&4){const A=s||r;H=Ae(d.call(A,A,h,o,C,y,x)),g=c}else{const A=t;H=Ae(A.length>1?A(o,{attrs:c,slots:l,emit:u}):A(o,null)),g=t.props?c:tl(c)}}catch(A){Lt.length=0,kt(A,e,1),H=re(ve)}let j=H;if(g&&O!==!1){const A=Object.keys(g),{shapeFlag:B}=j;A.length&&B&7&&(i&&A.some(or)&&(g=nl(g,i)),j=Ye(j,g))}return n.dirs&&(j=Ye(j),j.dirs=j.dirs?j.dirs.concat(n.dirs):n.dirs),n.transition&&(j.transition=n.transition),H=j,un(m),H}const tl=e=>{let t;for(const n in e)(n==="class"||n==="style"||Bt(n))&&((t||(t={}))[n]=e[n]);return t},nl=(e,t)=>{const n={};for(const r in e)(!or(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function rl(e,t,n){const{props:r,children:s,component:o}=e,{props:i,children:l,patchFlag:c}=t,u=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Kr(r,i,u):!!i;if(c&8){const d=t.dynamicProps;for(let h=0;he.__isSuspense;function Gs(e,t){t&&t.pendingBranch?D(e)?t.effects.push(...e):t.effects.push(e):Qi(e)}function eo(e,t){return An(e,null,t)}function Ea(e,t){return An(e,null,{flush:"post"})}const Xt={};function qe(e,t,n){return An(e,t,n)}function An(e,t,{immediate:n,deep:r,flush:s,onTrack:o,onTrigger:i}=te){var l;const c=Ms()===((l=le)==null?void 0:l.scope)?le:null;let u,d=!1,h=!1;if(ce(e)?(u=()=>e.value,d=cn(e)):pt(e)?(u=()=>e,r=!0):D(e)?(h=!0,d=e.some(A=>pt(A)||cn(A)),u=()=>e.map(A=>{if(ce(A))return A.value;if(pt(A))return ft(A);if(K(A))return Ve(A,c,2)})):K(e)?t?u=()=>Ve(e,c,2):u=()=>{if(!(c&&c.isUnmounted))return y&&y(),xe(e,c,3,[C])}:u=Re,t&&r){const A=u;u=()=>ft(A())}let y,C=A=>{y=m.onStop=()=>{Ve(A,c,4)}},x;if(wt)if(C=Re,t?n&&xe(t,c,3,[u(),h?[]:void 0,C]):u(),s==="sync"){const A=Gl();x=A.__watcherHandles||(A.__watcherHandles=[])}else return Re;let O=h?new Array(e.length).fill(Xt):Xt;const H=()=>{if(m.active)if(t){const A=m.run();(r||d||(h?A.some((B,q)=>Nt(B,O[q])):Nt(A,O)))&&(y&&y(),xe(t,c,3,[A,O===Xt?void 0:h&&O[0]===Xt?[]:O,C]),O=A)}else m.run()};H.allowRecurse=!!t;let g;s==="sync"?g=H:s==="post"?g=()=>pe(H,c&&c.suspense):(H.pre=!0,c&&(H.id=c.uid),g=()=>En(H));const m=new dr(u,g);t?n?H():O=m.run():s==="post"?pe(m.run.bind(m),c&&c.suspense):m.run();const j=()=>{m.stop(),c&&c.scope&&ir(c.scope.effects,m)};return x&&x.push(j),j}function il(e,t,n){const r=this.proxy,s=se(e)?e.includes(".")?to(r,e):()=>r[e]:e.bind(r,r);let o;K(t)?o=t:(o=t.handler,n=t);const i=le;vt(this);const l=An(s,o.bind(r),n);return i?vt(i):st(),l}function to(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s{ft(n,t)});else if(Ps(e))for(const n in e)ft(e[n],t);return e}function Ie(e,t,n,r){const s=e.dirs,o=t&&t.dirs;for(let i=0;i{e.isMounted=!0}),io(()=>{e.isUnmounting=!0}),e}const we=[Function,Array],no={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:we,onEnter:we,onAfterEnter:we,onEnterCancelled:we,onBeforeLeave:we,onLeave:we,onAfterLeave:we,onLeaveCancelled:we,onBeforeAppear:we,onAppear:we,onAfterAppear:we,onAppearCancelled:we},cl={name:"BaseTransition",props:no,setup(e,{slots:t}){const n=Pn(),r=ll();let s;return()=>{const o=t.default&&so(t.default(),!0);if(!o||!o.length)return;let i=o[0];if(o.length>1){for(const O of o)if(O.type!==ve){i=O;break}}const l=Y(e),{mode:c}=l;if(r.isLeaving)return Nn(i);const u=Wr(i);if(!u)return Nn(i);const d=Jn(u,l,r,n);Xn(u,d);const h=n.subTree,y=h&&Wr(h);let C=!1;const{getTransitionKey:x}=u.type;if(x){const O=x();s===void 0?s=O:O!==s&&(s=O,C=!0)}if(y&&y.type!==ve&&(!tt(u,y)||C)){const O=Jn(y,l,r,n);if(Xn(y,O),c==="out-in")return r.isLeaving=!0,O.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&n.update()},Nn(i);c==="in-out"&&u.type!==ve&&(O.delayLeave=(H,g,m)=>{const j=ro(r,y);j[String(y.key)]=y,H._leaveCb=()=>{g(),H._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=m})}return i}}},al=cl;function ro(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Jn(e,t,n,r){const{appear:s,mode:o,persisted:i=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:h,onLeave:y,onAfterLeave:C,onLeaveCancelled:x,onBeforeAppear:O,onAppear:H,onAfterAppear:g,onAppearCancelled:m}=t,j=String(e.key),A=ro(n,e),B=(_,I)=>{_&&xe(_,r,9,I)},q=(_,I)=>{const M=I[1];B(_,I),D(_)?_.every(J=>J.length<=1)&&M():_.length<=1&&M()},U={mode:o,persisted:i,beforeEnter(_){let I=l;if(!n.isMounted)if(s)I=O||l;else return;_._leaveCb&&_._leaveCb(!0);const M=A[j];M&&tt(e,M)&&M.el._leaveCb&&M.el._leaveCb(),B(I,[_])},enter(_){let I=c,M=u,J=d;if(!n.isMounted)if(s)I=H||c,M=g||u,J=m||d;else return;let P=!1;const W=_._enterCb=L=>{P||(P=!0,L?B(J,[_]):B(M,[_]),U.delayedLeave&&U.delayedLeave(),_._enterCb=void 0)};I?q(I,[_,W]):W()},leave(_,I){const M=String(e.key);if(_._enterCb&&_._enterCb(!0),n.isUnmounting)return I();B(h,[_]);let J=!1;const P=_._leaveCb=W=>{J||(J=!0,I(),W?B(x,[_]):B(C,[_]),_._leaveCb=void 0,A[M]===e&&delete A[M])};A[M]=e,y?q(y,[_,P]):P()},clone(_){return Jn(_,t,n,r)}};return U}function Nn(e){if(Ut(e))return e=Ye(e),e.children=null,e}function Wr(e){return Ut(e)?e.children?e.children[0]:void 0:e}function Xn(e,t){e.shapeFlag&6&&e.component?Xn(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function so(e,t=!1,n){let r=[],s=0;for(let o=0;o1)for(let o=0;oie({name:e.name},t,{setup:e}))():e}const mt=e=>!!e.type.__asyncLoader;function xa(e){K(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:s=200,timeout:o,suspensible:i=!0,onError:l}=e;let c=null,u,d=0;const h=()=>(d++,c=null,y()),y=()=>{let C;return c||(C=c=t().catch(x=>{if(x=x instanceof Error?x:new Error(String(x)),l)return new Promise((O,H)=>{l(x,()=>O(h()),()=>H(x),d+1)});throw x}).then(x=>C!==c&&c?c:(x&&(x.__esModule||x[Symbol.toStringTag]==="Module")&&(x=x.default),u=x,x)))};return wr({name:"AsyncComponentWrapper",__asyncLoader:y,get __asyncResolved(){return u},setup(){const C=le;if(u)return()=>$n(u,C);const x=m=>{c=null,kt(m,C,13,!r)};if(i&&C.suspense||wt)return y().then(m=>()=>$n(m,C)).catch(m=>(x(m),()=>r?re(r,{error:m}):null));const O=ue(!1),H=ue(),g=ue(!!s);return s&&setTimeout(()=>{g.value=!1},s),o!=null&&setTimeout(()=>{if(!O.value&&!H.value){const m=new Error(`Async component timed out after ${o}ms.`);x(m),H.value=m}},o),y().then(()=>{O.value=!0,C.parent&&Ut(C.parent.vnode)&&En(C.parent.update)}).catch(m=>{x(m),H.value=m}),()=>{if(O.value&&u)return $n(u,C);if(H.value&&r)return re(r,{error:H.value});if(n&&!g.value)return re(n)}}})}function $n(e,t){const{ref:n,props:r,children:s,ce:o}=t.vnode,i=re(e,r,s);return i.ref=n,i.ce=o,delete t.vnode.ce,i}const Ut=e=>e.type.__isKeepAlive;function ul(e,t){oo(e,"a",t)}function fl(e,t){oo(e,"da",t)}function oo(e,t,n=le){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Sn(t,r,n),n){let s=n.parent;for(;s&&s.parent;)Ut(s.parent.vnode)&&dl(r,t,n,s),s=s.parent}}function dl(e,t,n,r){const s=Sn(t,e,r,!0);On(()=>{ir(r[t],s)},n)}function Sn(e,t,n=le,r=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{if(n.isUnmounted)return;Et(),vt(n);const l=xe(t,n,e,i);return st(),xt(),l});return r?s.unshift(o):s.push(o),o}}const je=e=>(t,n=le)=>(!wt||e==="sp")&&Sn(e,(...r)=>t(...r),n),hl=je("bm"),Tt=je("m"),pl=je("bu"),gl=je("u"),io=je("bum"),On=je("um"),ml=je("sp"),_l=je("rtg"),yl=je("rtc");function bl(e,t=le){Sn("ec",e,t)}const Cr="components";function Ta(e,t){return co(Cr,e,!0,t)||e}const lo=Symbol.for("v-ndc");function Aa(e){return se(e)?co(Cr,e,!1)||e:e||lo}function co(e,t,n=!0,r=!1){const s=de||le;if(s){const o=s.type;if(e===Cr){const l=Xl(o,!1);if(l&&(l===t||l===Le(t)||l===yn(Le(t))))return o}const i=Vr(s[e]||o[e],t)||Vr(s.appContext[e],t);return!i&&r?o:i}}function Vr(e,t){return e&&(e[t]||e[Le(t)]||e[yn(Le(t))])}function Sa(e,t,n,r){let s;const o=n&&n[r];if(D(e)||se(e)){s=new Array(e.length);for(let i=0,l=e.length;it(i,l,void 0,o&&o[l]));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,c=i.length;lpn(t)?!(t.type===ve||t.type===ge&&!ao(t.children)):!0)?e:null}function Ra(e,t){const n={};for(const r in e)n[t&&/[A-Z]/.test(r)?`on:${r}`:nn(r)]=e[r];return n}const Qn=e=>e?To(e)?Sr(e)||e.proxy:Qn(e.parent):null,It=ie(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Qn(e.parent),$root:e=>Qn(e.root),$emit:e=>e.emit,$options:e=>Er(e),$forceUpdate:e=>e.f||(e.f=()=>En(e.update)),$nextTick:e=>e.n||(e.n=Cn.bind(e.proxy)),$watch:e=>il.bind(e)}),Hn=(e,t)=>e!==te&&!e.__isScriptSetup&&z(e,t),vl={get({_:e},t){const{ctx:n,setupState:r,data:s,props:o,accessCache:i,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const C=i[t];if(C!==void 0)switch(C){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(Hn(r,t))return i[t]=1,r[t];if(s!==te&&z(s,t))return i[t]=2,s[t];if((u=e.propsOptions[0])&&z(u,t))return i[t]=3,o[t];if(n!==te&&z(n,t))return i[t]=4,n[t];Zn&&(i[t]=0)}}const d=It[t];let h,y;if(d)return t==="$attrs"&&me(e,"get",t),d(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==te&&z(n,t))return i[t]=4,n[t];if(y=c.config.globalProperties,z(y,t))return y[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:o}=e;return Hn(s,t)?(s[t]=n,!0):r!==te&&z(r,t)?(r[t]=n,!0):z(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,propsOptions:o}},i){let l;return!!n[i]||e!==te&&z(e,i)||Hn(t,i)||(l=o[0])&&z(l,i)||z(r,i)||z(It,i)||z(s.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:z(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Pa(){return wl().slots}function wl(){const e=Pn();return e.setupContext||(e.setupContext=So(e))}function qr(e){return D(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Zn=!0;function Cl(e){const t=Er(e),n=e.proxy,r=e.ctx;Zn=!1,t.beforeCreate&&zr(t.beforeCreate,e,"bc");const{data:s,computed:o,methods:i,watch:l,provide:c,inject:u,created:d,beforeMount:h,mounted:y,beforeUpdate:C,updated:x,activated:O,deactivated:H,beforeDestroy:g,beforeUnmount:m,destroyed:j,unmounted:A,render:B,renderTracked:q,renderTriggered:U,errorCaptured:_,serverPrefetch:I,expose:M,inheritAttrs:J,components:P,directives:W,filters:L}=t;if(u&&El(u,r,null),i)for(const ne in i){const Z=i[ne];K(Z)&&(r[ne]=Z.bind(n))}if(s){const ne=s.call(n,n);ee(ne)&&(e.data=vn(ne))}if(Zn=!0,o)for(const ne in o){const Z=o[ne],Je=K(Z)?Z.bind(n,n):K(Z.get)?Z.get.bind(n,n):Re,Kt=!K(Z)&&K(Z.set)?Z.set.bind(n):Re,Xe=ae({get:Je,set:Kt});Object.defineProperty(r,ne,{enumerable:!0,configurable:!0,get:()=>Xe.value,set:Pe=>Xe.value=Pe})}if(l)for(const ne in l)uo(l[ne],r,n,ne);if(c){const ne=K(c)?c.call(n):c;Reflect.ownKeys(ne).forEach(Z=>{Rl(Z,ne[Z])})}d&&zr(d,e,"c");function X(ne,Z){D(Z)?Z.forEach(Je=>ne(Je.bind(n))):Z&&ne(Z.bind(n))}if(X(hl,h),X(Tt,y),X(pl,C),X(gl,x),X(ul,O),X(fl,H),X(bl,_),X(yl,q),X(_l,U),X(io,m),X(On,A),X(ml,I),D(M))if(M.length){const ne=e.exposed||(e.exposed={});M.forEach(Z=>{Object.defineProperty(ne,Z,{get:()=>n[Z],set:Je=>n[Z]=Je})})}else e.exposed||(e.exposed={});B&&e.render===Re&&(e.render=B),J!=null&&(e.inheritAttrs=J),P&&(e.components=P),W&&(e.directives=W)}function El(e,t,n=Re){D(e)&&(e=Gn(e));for(const r in e){const s=e[r];let o;ee(s)?"default"in s?o=_t(s.from||r,s.default,!0):o=_t(s.from||r):o=_t(s),ce(o)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[r]=o}}function zr(e,t,n){xe(D(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function uo(e,t,n,r){const s=r.includes(".")?to(n,r):()=>n[r];if(se(e)){const o=t[e];K(o)&&qe(s,o)}else if(K(e))qe(s,e.bind(n));else if(ee(e))if(D(e))e.forEach(o=>uo(o,t,n,r));else{const o=K(e.handler)?e.handler.bind(n):t[e.handler];K(o)&&qe(s,o,e)}}function Er(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(u=>fn(c,u,i,!0)),fn(c,t,i)),ee(t)&&o.set(t,c),c}function fn(e,t,n,r=!1){const{mixins:s,extends:o}=t;o&&fn(e,o,n,!0),s&&s.forEach(i=>fn(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=xl[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const xl={data:Yr,props:Jr,emits:Jr,methods:Rt,computed:Rt,beforeCreate:he,created:he,beforeMount:he,mounted:he,beforeUpdate:he,updated:he,beforeDestroy:he,beforeUnmount:he,destroyed:he,unmounted:he,activated:he,deactivated:he,errorCaptured:he,serverPrefetch:he,components:Rt,directives:Rt,watch:Al,provide:Yr,inject:Tl};function Yr(e,t){return t?e?function(){return ie(K(e)?e.call(this,this):e,K(t)?t.call(this,this):t)}:t:e}function Tl(e,t){return Rt(Gn(e),Gn(t))}function Gn(e){if(D(e)){const t={};for(let n=0;n1)return n&&K(t)?t.call(r&&r.proxy):t}}function Pl(e,t,n,r=!1){const s={},o={};on(o,Rn,1),e.propsDefaults=Object.create(null),ho(e,t,s,o);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);n?e.props=r?s:Hi(s):e.type.props?e.props=s:e.props=o,e.attrs=o}function Fl(e,t,n,r){const{props:s,attrs:o,vnode:{patchFlag:i}}=e,l=Y(s),[c]=e.propsOptions;let u=!1;if((r||i>0)&&!(i&16)){if(i&8){const d=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[y,C]=po(h,t,!0);ie(i,y),C&&l.push(...C)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!o&&!c)return ee(e)&&r.set(e,dt),dt;if(D(o))for(let d=0;d-1,C[1]=O<0||x-1||z(C,"default"))&&l.push(h)}}}const u=[i,l];return ee(e)&&r.set(e,u),u}function Xr(e){return e[0]!=="$"}function Qr(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:e===null?"null":""}function Zr(e,t){return Qr(e)===Qr(t)}function Gr(e,t){return D(t)?t.findIndex(n=>Zr(n,e)):K(t)&&Zr(t,e)?0:-1}const go=e=>e[0]==="_"||e==="$stable",xr=e=>D(e)?e.map(Ae):[Ae(e)],Il=(e,t,n)=>{if(t._n)return t;const r=el((...s)=>xr(t(...s)),n);return r._c=!1,r},mo=(e,t,n)=>{const r=e._ctx;for(const s in e){if(go(s))continue;const o=e[s];if(K(o))t[s]=Il(s,o,r);else if(o!=null){const i=xr(o);t[s]=()=>i}}},_o=(e,t)=>{const n=xr(t);e.slots.default=()=>n},Ml=(e,t)=>{if(e.vnode.shapeFlag&32){const n=t._;n?(e.slots=Y(t),on(t,"_",n)):mo(t,e.slots={})}else e.slots={},t&&_o(e,t);on(e.slots,Rn,1)},Ll=(e,t,n)=>{const{vnode:r,slots:s}=e;let o=!0,i=te;if(r.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:(ie(s,t),!n&&l===1&&delete s._):(o=!t.$stable,mo(t,s)),i=t}else t&&(_o(e,t),i={default:1});if(o)for(const l in s)!go(l)&&!(l in i)&&delete s[l]};function hn(e,t,n,r,s=!1){if(D(e)){e.forEach((y,C)=>hn(y,t&&(D(t)?t[C]:t),n,r,s));return}if(mt(r)&&!s)return;const o=r.shapeFlag&4?Sr(r.component)||r.component.proxy:r.el,i=s?null:o,{i:l,r:c}=e,u=t&&t.r,d=l.refs===te?l.refs={}:l.refs,h=l.setupState;if(u!=null&&u!==c&&(se(u)?(d[u]=null,z(h,u)&&(h[u]=null)):ce(u)&&(u.value=null)),K(c))Ve(c,l,12,[i,d]);else{const y=se(c),C=ce(c);if(y||C){const x=()=>{if(e.f){const O=y?z(h,c)?h[c]:d[c]:c.value;s?D(O)&&ir(O,o):D(O)?O.includes(o)||O.push(o):y?(d[c]=[o],z(h,c)&&(h[c]=d[c])):(c.value=[o],e.k&&(d[e.k]=c.value))}else y?(d[c]=i,z(h,c)&&(h[c]=i)):C&&(c.value=i,e.k&&(d[e.k]=i))};i?(x.id=-1,pe(x,n)):x()}}}let Be=!1;const Qt=e=>/svg/.test(e.namespaceURI)&&e.tagName!=="foreignObject",Zt=e=>e.nodeType===8;function Nl(e){const{mt:t,p:n,o:{patchProp:r,createText:s,nextSibling:o,parentNode:i,remove:l,insert:c,createComment:u}}=e,d=(g,m)=>{if(!m.hasChildNodes()){n(null,g,m),an(),m._vnode=g;return}Be=!1,h(m.firstChild,g,null,null,null),an(),m._vnode=g,Be&&console.error("Hydration completed but contains mismatches.")},h=(g,m,j,A,B,q=!1)=>{const U=Zt(g)&&g.data==="[",_=()=>O(g,m,j,A,B,U),{type:I,ref:M,shapeFlag:J,patchFlag:P}=m;let W=g.nodeType;m.el=g,P===-2&&(q=!1,m.dynamicChildren=null);let L=null;switch(I){case bt:W!==3?m.children===""?(c(m.el=s(""),i(g),g),L=g):L=_():(g.data!==m.children&&(Be=!0,g.data=m.children),L=o(g));break;case ve:W!==8||U?L=_():L=o(g);break;case Mt:if(U&&(g=o(g),W=g.nodeType),W===1||W===3){L=g;const _e=!m.children.length;for(let X=0;X{q=q||!!m.dynamicChildren;const{type:U,props:_,patchFlag:I,shapeFlag:M,dirs:J}=m,P=U==="input"&&J||U==="option";if(P||I!==-1){if(J&&Ie(m,null,j,"created"),_)if(P||!q||I&48)for(const L in _)(P&&L.endsWith("value")||Bt(L)&&!Pt(L))&&r(g,L,null,_[L],!1,void 0,j);else _.onClick&&r(g,"onClick",null,_.onClick,!1,void 0,j);let W;if((W=_&&_.onVnodeBeforeMount)&&Ce(W,j,m),J&&Ie(m,null,j,"beforeMount"),((W=_&&_.onVnodeMounted)||J)&&Gs(()=>{W&&Ce(W,j,m),J&&Ie(m,null,j,"mounted")},A),M&16&&!(_&&(_.innerHTML||_.textContent))){let L=C(g.firstChild,m,g,j,A,B,q);for(;L;){Be=!0;const _e=L;L=L.nextSibling,l(_e)}}else M&8&&g.textContent!==m.children&&(Be=!0,g.textContent=m.children)}return g.nextSibling},C=(g,m,j,A,B,q,U)=>{U=U||!!m.dynamicChildren;const _=m.children,I=_.length;for(let M=0;M{const{slotScopeIds:U}=m;U&&(B=B?B.concat(U):U);const _=i(g),I=C(o(g),m,_,j,A,B,q);return I&&Zt(I)&&I.data==="]"?o(m.anchor=I):(Be=!0,c(m.anchor=u("]"),_,I),I)},O=(g,m,j,A,B,q)=>{if(Be=!0,m.el=null,q){const I=H(g);for(;;){const M=o(g);if(M&&M!==I)l(M);else break}}const U=o(g),_=i(g);return l(g),n(null,m,_,U,j,A,Qt(_),B),U},H=g=>{let m=0;for(;g;)if(g=o(g),g&&Zt(g)&&(g.data==="["&&m++,g.data==="]")){if(m===0)return o(g);m--}return g};return[d,h]}const pe=Gs;function $l(e){return Hl(e,Nl)}function Hl(e,t){const n=Wn();n.__VUE__=!0;const{insert:r,remove:s,patchProp:o,createElement:i,createText:l,createComment:c,setText:u,setElementText:d,parentNode:h,nextSibling:y,setScopeId:C=Re,insertStaticContent:x}=e,O=(a,f,p,v=null,b=null,T=null,R=!1,E=null,S=!!f.dynamicChildren)=>{if(a===f)return;a&&!tt(a,f)&&(v=Wt(a),Pe(a,b,T,!0),a=null),f.patchFlag===-2&&(S=!1,f.dynamicChildren=null);const{type:w,ref:N,shapeFlag:F}=f;switch(w){case bt:H(a,f,p,v);break;case ve:g(a,f,p,v);break;case Mt:a==null&&m(f,p,v,R);break;case ge:P(a,f,p,v,b,T,R,E,S);break;default:F&1?B(a,f,p,v,b,T,R,E,S):F&6?W(a,f,p,v,b,T,R,E,S):(F&64||F&128)&&w.process(a,f,p,v,b,T,R,E,S,ct)}N!=null&&b&&hn(N,a&&a.ref,T,f||a,!f)},H=(a,f,p,v)=>{if(a==null)r(f.el=l(f.children),p,v);else{const b=f.el=a.el;f.children!==a.children&&u(b,f.children)}},g=(a,f,p,v)=>{a==null?r(f.el=c(f.children||""),p,v):f.el=a.el},m=(a,f,p,v)=>{[a.el,a.anchor]=x(a.children,f,p,v,a.el,a.anchor)},j=({el:a,anchor:f},p,v)=>{let b;for(;a&&a!==f;)b=y(a),r(a,p,v),a=b;r(f,p,v)},A=({el:a,anchor:f})=>{let p;for(;a&&a!==f;)p=y(a),s(a),a=p;s(f)},B=(a,f,p,v,b,T,R,E,S)=>{R=R||f.type==="svg",a==null?q(f,p,v,b,T,R,E,S):I(a,f,b,T,R,E,S)},q=(a,f,p,v,b,T,R,E)=>{let S,w;const{type:N,props:F,shapeFlag:$,transition:k,dirs:V}=a;if(S=a.el=i(a.type,T,F&&F.is,F),$&8?d(S,a.children):$&16&&_(a.children,S,null,v,b,T&&N!=="foreignObject",R,E),V&&Ie(a,null,v,"created"),U(S,a,a.scopeId,R,v),F){for(const Q in F)Q!=="value"&&!Pt(Q)&&o(S,Q,null,F[Q],T,a.children,v,b,Ne);"value"in F&&o(S,"value",null,F.value),(w=F.onVnodeBeforeMount)&&Ce(w,v,a)}V&&Ie(a,null,v,"beforeMount");const G=(!b||b&&!b.pendingBranch)&&k&&!k.persisted;G&&k.beforeEnter(S),r(S,f,p),((w=F&&F.onVnodeMounted)||G||V)&&pe(()=>{w&&Ce(w,v,a),G&&k.enter(S),V&&Ie(a,null,v,"mounted")},b)},U=(a,f,p,v,b)=>{if(p&&C(a,p),v)for(let T=0;T{for(let w=S;w{const E=f.el=a.el;let{patchFlag:S,dynamicChildren:w,dirs:N}=f;S|=a.patchFlag&16;const F=a.props||te,$=f.props||te;let k;p&&Qe(p,!1),(k=$.onVnodeBeforeUpdate)&&Ce(k,p,f,a),N&&Ie(f,a,p,"beforeUpdate"),p&&Qe(p,!0);const V=b&&f.type!=="foreignObject";if(w?M(a.dynamicChildren,w,E,p,v,V,T):R||Z(a,f,E,null,p,v,V,T,!1),S>0){if(S&16)J(E,f,F,$,p,v,b);else if(S&2&&F.class!==$.class&&o(E,"class",null,$.class,b),S&4&&o(E,"style",F.style,$.style,b),S&8){const G=f.dynamicProps;for(let Q=0;Q{k&&Ce(k,p,f,a),N&&Ie(f,a,p,"updated")},v)},M=(a,f,p,v,b,T,R)=>{for(let E=0;E{if(p!==v){if(p!==te)for(const E in p)!Pt(E)&&!(E in v)&&o(a,E,p[E],null,R,f.children,b,T,Ne);for(const E in v){if(Pt(E))continue;const S=v[E],w=p[E];S!==w&&E!=="value"&&o(a,E,w,S,R,f.children,b,T,Ne)}"value"in v&&o(a,"value",p.value,v.value)}},P=(a,f,p,v,b,T,R,E,S)=>{const w=f.el=a?a.el:l(""),N=f.anchor=a?a.anchor:l("");let{patchFlag:F,dynamicChildren:$,slotScopeIds:k}=f;k&&(E=E?E.concat(k):k),a==null?(r(w,p,v),r(N,p,v),_(f.children,p,N,b,T,R,E,S)):F>0&&F&64&&$&&a.dynamicChildren?(M(a.dynamicChildren,$,p,b,T,R,E),(f.key!=null||b&&f===b.subTree)&&yo(a,f,!0)):Z(a,f,p,N,b,T,R,E,S)},W=(a,f,p,v,b,T,R,E,S)=>{f.slotScopeIds=E,a==null?f.shapeFlag&512?b.ctx.activate(f,p,v,R,S):L(f,p,v,b,T,R,S):_e(a,f,S)},L=(a,f,p,v,b,T,R)=>{const E=a.component=ql(a,v,b);if(Ut(a)&&(E.ctx.renderer=ct),zl(E),E.asyncDep){if(b&&b.registerDep(E,X),!a.el){const S=E.subTree=re(ve);g(null,S,f,p)}return}X(E,a,f,p,b,T,R)},_e=(a,f,p)=>{const v=f.component=a.component;if(rl(a,f,p))if(v.asyncDep&&!v.asyncResolved){ne(v,f,p);return}else v.next=f,Xi(v.update),v.update();else f.el=a.el,v.vnode=f},X=(a,f,p,v,b,T,R)=>{const E=()=>{if(a.isMounted){let{next:N,bu:F,u:$,parent:k,vnode:V}=a,G=N,Q;Qe(a,!1),N?(N.el=V.el,ne(a,N,R)):N=V,F&&Mn(F),(Q=N.props&&N.props.onVnodeBeforeUpdate)&&Ce(Q,k,N,V),Qe(a,!0);const oe=Ln(a),Te=a.subTree;a.subTree=oe,O(Te,oe,h(Te.el),Wt(Te),a,b,T),N.el=oe.el,G===null&&sl(a,oe.el),$&&pe($,b),(Q=N.props&&N.props.onVnodeUpdated)&&pe(()=>Ce(Q,k,N,V),b)}else{let N;const{el:F,props:$}=f,{bm:k,m:V,parent:G}=a,Q=mt(f);if(Qe(a,!1),k&&Mn(k),!Q&&(N=$&&$.onVnodeBeforeMount)&&Ce(N,G,f),Qe(a,!0),F&&In){const oe=()=>{a.subTree=Ln(a),In(F,a.subTree,a,b,null)};Q?f.type.__asyncLoader().then(()=>!a.isUnmounted&&oe()):oe()}else{const oe=a.subTree=Ln(a);O(null,oe,p,v,a,b,T),f.el=oe.el}if(V&&pe(V,b),!Q&&(N=$&&$.onVnodeMounted)){const oe=f;pe(()=>Ce(N,G,oe),b)}(f.shapeFlag&256||G&&mt(G.vnode)&&G.vnode.shapeFlag&256)&&a.a&&pe(a.a,b),a.isMounted=!0,f=p=v=null}},S=a.effect=new dr(E,()=>En(w),a.scope),w=a.update=()=>S.run();w.id=a.uid,Qe(a,!0),w()},ne=(a,f,p)=>{f.component=a;const v=a.vnode.props;a.vnode=f,a.next=null,Fl(a,f.props,v,p),Ll(a,f.children,p),Et(),Ur(),xt()},Z=(a,f,p,v,b,T,R,E,S=!1)=>{const w=a&&a.children,N=a?a.shapeFlag:0,F=f.children,{patchFlag:$,shapeFlag:k}=f;if($>0){if($&128){Kt(w,F,p,v,b,T,R,E,S);return}else if($&256){Je(w,F,p,v,b,T,R,E,S);return}}k&8?(N&16&&Ne(w,b,T),F!==w&&d(p,F)):N&16?k&16?Kt(w,F,p,v,b,T,R,E,S):Ne(w,b,T,!0):(N&8&&d(p,""),k&16&&_(F,p,v,b,T,R,E,S))},Je=(a,f,p,v,b,T,R,E,S)=>{a=a||dt,f=f||dt;const w=a.length,N=f.length,F=Math.min(w,N);let $;for($=0;$N?Ne(a,b,T,!0,!1,F):_(f,p,v,b,T,R,E,S,F)},Kt=(a,f,p,v,b,T,R,E,S)=>{let w=0;const N=f.length;let F=a.length-1,$=N-1;for(;w<=F&&w<=$;){const k=a[w],V=f[w]=S?Ke(f[w]):Ae(f[w]);if(tt(k,V))O(k,V,p,null,b,T,R,E,S);else break;w++}for(;w<=F&&w<=$;){const k=a[F],V=f[$]=S?Ke(f[$]):Ae(f[$]);if(tt(k,V))O(k,V,p,null,b,T,R,E,S);else break;F--,$--}if(w>F){if(w<=$){const k=$+1,V=k$)for(;w<=F;)Pe(a[w],b,T,!0),w++;else{const k=w,V=w,G=new Map;for(w=V;w<=$;w++){const ye=f[w]=S?Ke(f[w]):Ae(f[w]);ye.key!=null&&G.set(ye.key,w)}let Q,oe=0;const Te=$-V+1;let at=!1,Fr=0;const At=new Array(Te);for(w=0;w=Te){Pe(ye,b,T,!0);continue}let Fe;if(ye.key!=null)Fe=G.get(ye.key);else for(Q=V;Q<=$;Q++)if(At[Q-V]===0&&tt(ye,f[Q])){Fe=Q;break}Fe===void 0?Pe(ye,b,T,!0):(At[Fe-V]=w+1,Fe>=Fr?Fr=Fe:at=!0,O(ye,f[Fe],p,null,b,T,R,E,S),oe++)}const Ir=at?jl(At):dt;for(Q=Ir.length-1,w=Te-1;w>=0;w--){const ye=V+w,Fe=f[ye],Mr=ye+1{const{el:T,type:R,transition:E,children:S,shapeFlag:w}=a;if(w&6){Xe(a.component.subTree,f,p,v);return}if(w&128){a.suspense.move(f,p,v);return}if(w&64){R.move(a,f,p,ct);return}if(R===ge){r(T,f,p);for(let F=0;FE.enter(T),b);else{const{leave:F,delayLeave:$,afterLeave:k}=E,V=()=>r(T,f,p),G=()=>{F(T,()=>{V(),k&&k()})};$?$(T,V,G):G()}else r(T,f,p)},Pe=(a,f,p,v=!1,b=!1)=>{const{type:T,props:R,ref:E,children:S,dynamicChildren:w,shapeFlag:N,patchFlag:F,dirs:$}=a;if(E!=null&&hn(E,null,p,a,!0),N&256){f.ctx.deactivate(a);return}const k=N&1&&$,V=!mt(a);let G;if(V&&(G=R&&R.onVnodeBeforeUnmount)&&Ce(G,f,a),N&6)qo(a.component,p,v);else{if(N&128){a.suspense.unmount(p,v);return}k&&Ie(a,null,f,"beforeUnmount"),N&64?a.type.remove(a,f,p,b,ct,v):w&&(T!==ge||F>0&&F&64)?Ne(w,f,p,!1,!0):(T===ge&&F&384||!b&&N&16)&&Ne(S,f,p),v&&Rr(a)}(V&&(G=R&&R.onVnodeUnmounted)||k)&&pe(()=>{G&&Ce(G,f,a),k&&Ie(a,null,f,"unmounted")},p)},Rr=a=>{const{type:f,el:p,anchor:v,transition:b}=a;if(f===ge){Vo(p,v);return}if(f===Mt){A(a);return}const T=()=>{s(p),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(a.shapeFlag&1&&b&&!b.persisted){const{leave:R,delayLeave:E}=b,S=()=>R(p,T);E?E(a.el,T,S):S()}else T()},Vo=(a,f)=>{let p;for(;a!==f;)p=y(a),s(a),a=p;s(f)},qo=(a,f,p)=>{const{bum:v,scope:b,update:T,subTree:R,um:E}=a;v&&Mn(v),b.stop(),T&&(T.active=!1,Pe(R,a,f,p)),E&&pe(E,f),pe(()=>{a.isUnmounted=!0},f),f&&f.pendingBranch&&!f.isUnmounted&&a.asyncDep&&!a.asyncResolved&&a.suspenseId===f.pendingId&&(f.deps--,f.deps===0&&f.resolve())},Ne=(a,f,p,v=!1,b=!1,T=0)=>{for(let R=T;Ra.shapeFlag&6?Wt(a.component.subTree):a.shapeFlag&128?a.suspense.next():y(a.anchor||a.el),Pr=(a,f,p)=>{a==null?f._vnode&&Pe(f._vnode,null,null,!0):O(f._vnode||null,a,f,null,null,null,p),Ur(),an(),f._vnode=a},ct={p:O,um:Pe,m:Xe,r:Rr,mt:L,mc:_,pc:Z,pbc:M,n:Wt,o:e};let Fn,In;return t&&([Fn,In]=t(ct)),{render:Pr,hydrate:Fn,createApp:Ol(Pr,Fn)}}function Qe({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function yo(e,t,n=!1){const r=e.children,s=t.children;if(D(r)&&D(s))for(let o=0;o>1,e[n[l]]0&&(t[r]=n[o-1]),n[o]=r)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}const Dl=e=>e.__isTeleport,ge=Symbol.for("v-fgt"),bt=Symbol.for("v-txt"),ve=Symbol.for("v-cmt"),Mt=Symbol.for("v-stc"),Lt=[];let Oe=null;function bo(e=!1){Lt.push(Oe=e?null:[])}function Bl(){Lt.pop(),Oe=Lt[Lt.length-1]||null}let Dt=1;function es(e){Dt+=e}function vo(e){return e.dynamicChildren=Dt>0?Oe||dt:null,Bl(),Dt>0&&Oe&&Oe.push(e),e}function Fa(e,t,n,r,s,o){return vo(Eo(e,t,n,r,s,o,!0))}function wo(e,t,n,r,s){return vo(re(e,t,n,r,s,!0))}function pn(e){return e?e.__v_isVNode===!0:!1}function tt(e,t){return e.type===t.type&&e.key===t.key}const Rn="__vInternal",Co=({key:e})=>e??null,rn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?se(e)||ce(e)||K(e)?{i:de,r:e,k:t,f:!!n}:e:null);function Eo(e,t=null,n=null,r=0,s=null,o=e===ge?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Co(t),ref:t&&rn(t),scopeId:Tn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:de};return l?(Tr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=se(n)?8:16),Dt>0&&!i&&Oe&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&Oe.push(c),c}const re=kl;function kl(e,t=null,n=null,r=0,s=null,o=!1){if((!e||e===lo)&&(e=ve),pn(e)){const l=Ye(e,t,!0);return n&&Tr(l,n),Dt>0&&!o&&Oe&&(l.shapeFlag&6?Oe[Oe.indexOf(e)]=l:Oe.push(l)),l.patchFlag|=-2,l}if(Ql(e)&&(e=e.__vccOpts),t){t=Ul(t);let{class:l,style:c}=t;l&&!se(l)&&(t.class=ur(l)),ee(c)&&(Ws(c)&&!D(c)&&(c=ie({},c)),t.style=ar(c))}const i=se(e)?1:ol(e)?128:Dl(e)?64:ee(e)?4:K(e)?2:0;return Eo(e,t,n,r,s,i,o,!0)}function Ul(e){return e?Ws(e)||Rn in e?ie({},e):e:null}function Ye(e,t,n=!1){const{props:r,ref:s,patchFlag:o,children:i}=e,l=t?Kl(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&Co(l),ref:t&&t.ref?n&&s?D(s)?s.concat(rn(t)):[s,rn(t)]:rn(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ge?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ye(e.ssContent),ssFallback:e.ssFallback&&Ye(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce}}function xo(e=" ",t=0){return re(bt,null,e,t)}function Ia(e,t){const n=re(Mt,null,e);return n.staticCount=t,n}function Ma(e="",t=!1){return t?(bo(),wo(ve,null,e)):re(ve,null,e)}function Ae(e){return e==null||typeof e=="boolean"?re(ve):D(e)?re(ge,null,e.slice()):typeof e=="object"?Ke(e):re(bt,null,String(e))}function Ke(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ye(e)}function Tr(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(D(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Tr(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!(Rn in t)?t._ctx=de:s===3&&de&&(de.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else K(t)?(t={default:t,_ctx:de},n=32):(t=String(t),r&64?(n=16,t=[xo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Kl(...e){const t={};for(let n=0;nle||de;let Ar,ut,ts="__VUE_INSTANCE_SETTERS__";(ut=Wn()[ts])||(ut=Wn()[ts]=[]),ut.push(e=>le=e),Ar=e=>{ut.length>1?ut.forEach(t=>t(e)):ut[0](e)};const vt=e=>{Ar(e),e.scope.on()},st=()=>{le&&le.scope.off(),Ar(null)};function To(e){return e.vnode.shapeFlag&4}let wt=!1;function zl(e,t=!1){wt=t;const{props:n,children:r}=e.vnode,s=To(e);Pl(e,n,s,t),Ml(e,r);const o=s?Yl(e,t):void 0;return wt=!1,o}function Yl(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=Ft(new Proxy(e.ctx,vl));const{setup:r}=n;if(r){const s=e.setupContext=r.length>1?So(e):null;vt(e),Et();const o=Ve(r,e,0,[e.props,s]);if(xt(),st(),Os(o)){if(o.then(st,st),t)return o.then(i=>{ns(e,i,t)}).catch(i=>{kt(i,e,0)});e.asyncDep=o}else ns(e,o,t)}else Ao(e,t)}function ns(e,t,n){K(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ee(t)&&(e.setupState=Ys(t)),Ao(e,n)}let rs;function Ao(e,t,n){const r=e.type;if(!e.render){if(!t&&rs&&!r.render){const s=r.template||Er(e).template;if(s){const{isCustomElement:o,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:c}=r,u=ie(ie({isCustomElement:o,delimiters:l},i),c);r.render=rs(s,u)}}e.render=r.render||Re}vt(e),Et(),Cl(e),xt(),st()}function Jl(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return me(e,"get","$attrs"),t[n]}}))}function So(e){const t=n=>{e.exposed=n||{}};return{get attrs(){return Jl(e)},slots:e.slots,emit:e.emit,expose:t}}function Sr(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Ys(Ft(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in It)return It[n](e)},has(t,n){return n in t||n in It}}))}function Xl(e,t=!0){return K(e)?e.displayName||e.name:e.name||t&&e.__name}function Ql(e){return K(e)&&"__vccOpts"in e}const ae=(e,t)=>zi(e,t,wt);function tr(e,t,n){const r=arguments.length;return r===2?ee(t)&&!D(t)?pn(t)?re(e,null,[t]):re(e,t):re(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&pn(n)&&(n=[n]),re(e,t,n))}const Zl=Symbol.for("v-scx"),Gl=()=>_t(Zl),ec="3.3.4",tc="http://www.w3.org/2000/svg",nt=typeof document<"u"?document:null,ss=nt&&nt.createElement("template"),nc={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t?nt.createElementNS(tc,e):nt.createElement(e,n?{is:n}:void 0);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>nt.createTextNode(e),createComment:e=>nt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>nt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{ss.innerHTML=r?`${e}`:e;const l=ss.content;if(r){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function rc(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function sc(e,t,n){const r=e.style,s=se(n);if(n&&!s){if(t&&!se(t))for(const o in t)n[o]==null&&nr(r,o,"");for(const o in n)nr(r,o,n[o])}else{const o=r.display;s?t!==n&&(r.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(r.display=o)}}const os=/\s*!important$/;function nr(e,t,n){if(D(n))n.forEach(r=>nr(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=oc(e,t);os.test(n)?e.setProperty(lt(r),n.replace(os,""),"important"):e[r]=n}}const is=["Webkit","Moz","ms"],jn={};function oc(e,t){const n=jn[t];if(n)return n;let r=Le(t);if(r!=="filter"&&r in e)return jn[t]=r;r=yn(r);for(let s=0;sDn||(dc.then(()=>Dn=0),Dn=Date.now());function pc(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;xe(gc(r,n.value),t,5,[r])};return n.value=e,n.attached=hc(),n}function gc(e,t){if(D(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const as=/^on[a-z]/,mc=(e,t,n,r,s=!1,o,i,l,c)=>{t==="class"?rc(e,r,s):t==="style"?sc(e,n,r):Bt(t)?or(t)||uc(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):_c(e,t,r,s))?lc(e,t,r,o,i,l,c):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),ic(e,t,r,s))};function _c(e,t,n,r){return r?!!(t==="innerHTML"||t==="textContent"||t in e&&as.test(t)&&K(n)):t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA"||as.test(t)&&se(n)?!1:t in e}const ke="transition",St="animation",Oo=(e,{slots:t})=>tr(al,yc(e),t);Oo.displayName="Transition";const Ro={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};Oo.props=ie({},no,Ro);const Ze=(e,t=[])=>{D(e)?e.forEach(n=>n(...t)):e&&e(...t)},us=e=>e?D(e)?e.some(t=>t.length>1):e.length>1:!1;function yc(e){const t={};for(const P in e)P in Ro||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:u=i,appearToClass:d=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:y=`${n}-leave-active`,leaveToClass:C=`${n}-leave-to`}=e,x=bc(s),O=x&&x[0],H=x&&x[1],{onBeforeEnter:g,onEnter:m,onEnterCancelled:j,onLeave:A,onLeaveCancelled:B,onBeforeAppear:q=g,onAppear:U=m,onAppearCancelled:_=j}=t,I=(P,W,L)=>{Ge(P,W?d:l),Ge(P,W?u:i),L&&L()},M=(P,W)=>{P._isLeaving=!1,Ge(P,h),Ge(P,C),Ge(P,y),W&&W()},J=P=>(W,L)=>{const _e=P?U:m,X=()=>I(W,P,L);Ze(_e,[W,X]),fs(()=>{Ge(W,P?c:o),Ue(W,P?d:l),us(_e)||ds(W,r,O,X)})};return ie(t,{onBeforeEnter(P){Ze(g,[P]),Ue(P,o),Ue(P,i)},onBeforeAppear(P){Ze(q,[P]),Ue(P,c),Ue(P,u)},onEnter:J(!1),onAppear:J(!0),onLeave(P,W){P._isLeaving=!0;const L=()=>M(P,W);Ue(P,h),Cc(),Ue(P,y),fs(()=>{P._isLeaving&&(Ge(P,h),Ue(P,C),us(A)||ds(P,r,H,L))}),Ze(A,[P,L])},onEnterCancelled(P){I(P,!1),Ze(j,[P])},onAppearCancelled(P){I(P,!0),Ze(_,[P])},onLeaveCancelled(P){M(P),Ze(B,[P])}})}function bc(e){if(e==null)return null;if(ee(e))return[Bn(e.enter),Bn(e.leave)];{const t=Bn(e);return[t,t]}}function Bn(e){return ei(e)}function Ue(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e._vtc||(e._vtc=new Set)).add(t)}function Ge(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function fs(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let vc=0;function ds(e,t,n,r){const s=e._endId=++vc,o=()=>{s===e._endId&&r()};if(n)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=wc(e,t);if(!i)return r();const u=i+"end";let d=0;const h=()=>{e.removeEventListener(u,y),o()},y=C=>{C.target===e&&++d>=c&&h()};setTimeout(()=>{d(n[x]||"").split(", "),s=r(`${ke}Delay`),o=r(`${ke}Duration`),i=hs(s,o),l=r(`${St}Delay`),c=r(`${St}Duration`),u=hs(l,c);let d=null,h=0,y=0;t===ke?i>0&&(d=ke,h=i,y=o.length):t===St?u>0&&(d=St,h=u,y=c.length):(h=Math.max(i,u),d=h>0?i>u?ke:St:null,y=d?d===ke?o.length:c.length:0);const C=d===ke&&/\b(transform|all)(,|$)/.test(r(`${ke}Property`).toString());return{type:d,timeout:h,propCount:y,hasTransform:C}}function hs(e,t){for(;e.lengthps(n)+ps(e[r])))}function ps(e){return Number(e.slice(0,-1).replace(",","."))*1e3}function Cc(){return document.body.offsetHeight}const Ec=["ctrl","shift","alt","meta"],xc={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ec.some(n=>e[`${n}Key`]&&!t.includes(n))},La=(e,t)=>(n,...r)=>{for(let s=0;sn=>{if(!("key"in n))return;const r=lt(n.key);if(t.some(s=>s===r||Tc[s]===r))return e(n)},Ac=ie({patchProp:mc},nc);let kn,gs=!1;function Sc(){return kn=gs?kn:$l(Ac),gs=!0,kn}const $a=(...e)=>{const t=Sc().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Oc(r);if(s)return n(s,!0,s instanceof SVGElement)},t};function Oc(e){return se(e)?document.querySelector(e):e}const Ha=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Rc="modulepreload",Pc=function(e){return"/"+e},ms={},ja=function(t,n,r){if(!n||n.length===0)return t();const s=document.getElementsByTagName("link");return Promise.all(n.map(o=>{if(o=Pc(o),o in ms)return;ms[o]=!0;const i=o.endsWith(".css"),l=i?'[rel="stylesheet"]':"";if(!!r)for(let d=s.length-1;d>=0;d--){const h=s[d];if(h.href===o&&(!i||h.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${l}`))return;const u=document.createElement("link");if(u.rel=i?"stylesheet":Rc,i||(u.as="script",u.crossOrigin=""),u.href=o,document.head.appendChild(u),i)return new Promise((d,h)=>{u.addEventListener("load",d),u.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})},Fc=window.__VP_SITE_DATA__;function Or(e){return Ms()?(ai(e),!0):!1}function ot(e){return typeof e=="function"?e():zs(e)}const Po=typeof window<"u"&&typeof document<"u",Ic=Object.prototype.toString,Mc=e=>Ic.call(e)==="[object Object]",Fo=()=>{},_s=Lc();function Lc(){var e;return Po&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent)}function Nc(e,t){function n(...r){return new Promise((s,o)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(s).catch(o)})}return n}const Io=e=>e();function $c(e=Io){const t=ue(!0);function n(){t.value=!1}function r(){t.value=!0}const s=(...o)=>{t.value&&e(...o)};return{isActive:wn(t),pause:n,resume:r,eventFilter:s}}function Mo(...e){if(e.length!==1)return Wi(...e);const t=e[0];return typeof t=="function"?wn(ki(()=>({get:t,set:Fo}))):ue(t)}function Hc(e,t,n={}){const{eventFilter:r=Io,...s}=n;return qe(e,Nc(r,t),s)}function jc(e,t,n={}){const{eventFilter:r,...s}=n,{eventFilter:o,pause:i,resume:l,isActive:c}=$c(r);return{stop:Hc(e,t,{...s,eventFilter:o}),pause:i,resume:l,isActive:c}}function Dc(e,t=!0){Pn()?Tt(e):t?e():Cn(e)}function Lo(e){var t;const n=ot(e);return(t=n==null?void 0:n.$el)!=null?t:n}const Ct=Po?window:void 0;function gn(...e){let t,n,r,s;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,s]=e,t=Ct):[t,n,r,s]=e,!t)return Fo;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const o=[],i=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,y,C)=>(d.addEventListener(h,y,C),()=>d.removeEventListener(h,y,C)),c=qe(()=>[Lo(t),ot(s)],([d,h])=>{if(i(),!d)return;const y=Mc(h)?{...h}:h;o.push(...n.flatMap(C=>r.map(x=>l(d,C,x,y))))},{immediate:!0,flush:"post"}),u=()=>{c(),i()};return Or(u),u}function Bc(){const e=ue(!1);return Pn()&&Tt(()=>{e.value=!0}),e}function kc(e){const t=Bc();return ae(()=>(t.value,!!e()))}function Uc(e,t={}){const{window:n=Ct}=t,r=kc(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let s;const o=ue(!1),i=u=>{o.value=u.matches},l=()=>{s&&("removeEventListener"in s?s.removeEventListener("change",i):s.removeListener(i))},c=eo(()=>{r.value&&(l(),s=n.matchMedia(ot(e)),"addEventListener"in s?s.addEventListener("change",i):s.addListener(i),o.value=s.matches)});return Or(()=>{c(),l(),s=void 0}),o}const Gt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},en="__vueuse_ssr_handlers__",Kc=Wc();function Wc(){return en in Gt||(Gt[en]=Gt[en]||{}),Gt[en]}function No(e,t){return Kc[e]||t}function Vc(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const qc={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},ys="vueuse-storage";function zc(e,t,n,r={}){var s;const{flush:o="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:u=!1,shallow:d,window:h=Ct,eventFilter:y,onError:C=_=>{console.error(_)}}=r,x=(d?Vs:ue)(t);if(!n)try{n=No("getDefaultStorage",()=>{var _;return(_=Ct)==null?void 0:_.localStorage})()}catch(_){C(_)}if(!n)return x;const O=ot(t),H=Vc(O),g=(s=r.serializer)!=null?s:qc[H],{pause:m,resume:j}=jc(x,()=>A(x.value),{flush:o,deep:i,eventFilter:y});return h&&l&&(gn(h,"storage",U),gn(h,ys,q)),U(),x;function A(_){try{if(_==null)n.removeItem(e);else{const I=g.write(_),M=n.getItem(e);M!==I&&(n.setItem(e,I),h&&h.dispatchEvent(new CustomEvent(ys,{detail:{key:e,oldValue:M,newValue:I,storageArea:n}})))}}catch(I){C(I)}}function B(_){const I=_?_.newValue:n.getItem(e);if(I==null)return c&&O!==null&&n.setItem(e,g.write(O)),O;if(!_&&u){const M=g.read(I);return typeof u=="function"?u(M,O):H==="object"&&!Array.isArray(M)?{...O,...M}:M}else return typeof I!="string"?I:g.read(I)}function q(_){U(_.detail)}function U(_){if(!(_&&_.storageArea!==n)){if(_&&_.key==null){x.value=O;return}if(!(_&&_.key!==e)){m();try{(_==null?void 0:_.newValue)!==g.write(x.value)&&(x.value=B(_))}catch(I){C(I)}finally{_?Cn(j):j()}}}}}function Yc(e){return Uc("(prefers-color-scheme: dark)",e)}function Jc(e={}){const{selector:t="html",attribute:n="class",initialValue:r="auto",window:s=Ct,storage:o,storageKey:i="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:u,disableTransition:d=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},y=Yc({window:s}),C=ae(()=>y.value?"dark":"light"),x=c||(i==null?Mo(r):zc(i,r,o,{window:s,listenToStorageChanges:l})),O=ae(()=>x.value==="auto"?C.value:x.value),H=No("updateHTMLAttrs",(A,B,q)=>{const U=typeof A=="string"?s==null?void 0:s.document.querySelector(A):Lo(A);if(!U)return;let _;if(d){_=s.document.createElement("style");const I="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";_.appendChild(document.createTextNode(I)),s.document.head.appendChild(_)}if(B==="class"){const I=q.split(/\s/g);Object.values(h).flatMap(M=>(M||"").split(/\s/g)).filter(Boolean).forEach(M=>{I.includes(M)?U.classList.add(M):U.classList.remove(M)})}else U.setAttribute(B,q);d&&(s.getComputedStyle(_).opacity,document.head.removeChild(_))});function g(A){var B;H(t,n,(B=h[A])!=null?B:A)}function m(A){e.onChanged?e.onChanged(A,g):g(A)}qe(O,m,{flush:"post",immediate:!0}),Dc(()=>m(O.value));const j=ae({get(){return u?x.value:O.value},set(A){x.value=A}});try{return Object.assign(j,{store:x,system:C,state:O})}catch{return j}}function Xc(e={}){const{valueDark:t="dark",valueLight:n=""}=e,r=Jc({...e,onChanged:(o,i)=>{var l;e.onChanged?(l=e.onChanged)==null||l.call(e,o==="dark",i,o):i(o)},modes:{dark:t,light:n}});return ae({get(){return r.value==="dark"},set(o){const i=o?"dark":"light";r.system.value===i?r.value="auto":r.value=i}})}function Un(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function $o(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}function Da(e,t=!1){const n=ue(t);let r=null,s;qe(Mo(e),l=>{const c=Un(ot(l));if(c){const u=c;s=u.style.overflow,n.value&&(u.style.overflow="hidden")}},{immediate:!0});const o=()=>{const l=Un(ot(e));!l||n.value||(_s&&(r=gn(l,"touchmove",c=>{Qc(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},i=()=>{const l=Un(ot(e));!l||!n.value||(_s&&(r==null||r()),l.style.overflow=s,n.value=!1)};return Or(i),ae({get(){return n.value},set(l){l?o():i()}})}function Ba({window:e=Ct}={}){if(!e)return{x:ue(0),y:ue(0)};const t=ue(e.scrollX),n=ue(e.scrollY);return gn(e,"scroll",()=>{t.value=e.scrollX,n.value=e.scrollY},{capture:!1,passive:!0}),{x:t,y:n}}const Ho=/^[a-z]+:/i,Zc="vitepress-theme-appearance",jo=/#.*$/,Gc=/(index)?\.(md|html)$/,Ee=typeof document<"u",Do={relativePath:"",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function ea(e,t,n=!1){if(t===void 0)return!1;if(e=bs(`/${e}`),n)return new RegExp(t).test(e);if(bs(t)!==e)return!1;const r=t.match(jo);return r?(Ee?location.hash:"")===r[0]:!0}function bs(e){return decodeURI(e).replace(jo,"").replace(Gc,"")}function ta(e){return Ho.test(e)}function na(e,t){var r,s,o,i,l,c,u;const n=Object.keys(e.locales).find(d=>d!=="root"&&!ta(d)&&ea(t,`/${d}/`,!0))||"root";return Object.assign({},e,{localeIndex:n,lang:((r=e.locales[n])==null?void 0:r.lang)??e.lang,dir:((s=e.locales[n])==null?void 0:s.dir)??e.dir,title:((o=e.locales[n])==null?void 0:o.title)??e.title,titleTemplate:((i=e.locales[n])==null?void 0:i.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:ko(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(u=e.locales[n])==null?void 0:u.themeConfig}})}function Bo(e,t){const n=t.title||e.title,r=t.titleTemplate??e.titleTemplate;if(typeof r=="string"&&r.includes(":title"))return r.replace(/:title/g,n);const s=ra(e.title,r);return`${n}${s}`}function ra(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function sa(e,t){const[n,r]=t;if(n!=="meta")return!1;const s=Object.entries(r)[0];return s==null?!1:e.some(([o,i])=>o===n&&i[s[0]]===s[1])}function ko(e,t){return[...e.filter(n=>!sa(t,n)),...t]}const oa=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,ia=/^[a-z]:/i;function vs(e){const t=ia.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(oa,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const la=Symbol(),it=Vs(Fc);function ka(e){const t=ae(()=>na(it.value,e.data.relativePath)),n=t.value.appearance,r=n==="force-dark"?ue(!0):n?Xc({storageKey:Zc,initialValue:()=>typeof n=="string"?n:"auto",...typeof n=="object"?n:{}}):ue(!1);return{site:t,theme:ae(()=>t.value.themeConfig),page:ae(()=>e.data),frontmatter:ae(()=>e.data.frontmatter),params:ae(()=>e.data.params),lang:ae(()=>t.value.lang),dir:ae(()=>t.value.dir),localeIndex:ae(()=>t.value.localeIndex||"root"),title:ae(()=>Bo(t.value,e.data)),description:ae(()=>e.data.description||t.value.description),isDark:r}}function ca(){const e=_t(la);if(!e)throw new Error("vitepress data not properly injected in app");return e}function aa(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function ws(e){return Ho.test(e)||!e.startsWith("/")?e:aa(it.value.base,e)}function ua(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),Ee){const n="/";t=vs(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let r=__VP_HASH_MAP__[t.toLowerCase()];if(r||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",r=__VP_HASH_MAP__[t.toLowerCase()]),!r)return null;t=`${n}assets/${t}.${r}.js`}else t=`./${vs(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let sn=[];function Ua(e){sn.push(e),On(()=>{sn=sn.filter(t=>t!==e)})}const fa=Symbol(),Uo="http://a.com",da=()=>({path:"/",component:null,data:Do});function Ka(e,t){const n=vn(da()),r={route:n,go:s};async function s(l=Ee?location.href:"/"){var c,u;l=rr(l),await((c=r.onBeforeRouteChange)==null?void 0:c.call(r,l))!==!1&&(xs(l),await i(l),await((u=r.onAfterRouteChanged)==null?void 0:u.call(r,l)))}let o=null;async function i(l,c=0,u=!1){var y;if(await((y=r.onBeforePageLoad)==null?void 0:y.call(r,l))===!1)return;const d=new URL(l,Uo),h=o=d.pathname;try{let C=await e(h);if(!C)throw new Error(`Page not found: ${h}`);if(o===h){o=null;const{default:x,__pageData:O}=C;if(!x)throw new Error(`Invalid route component: ${x}`);n.path=Ee?h:ws(h),n.component=Ft(x),n.data=Ft(O),Ee&&Cn(()=>{let H=it.value.base+O.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!it.value.cleanUrls&&!H.endsWith("/")&&(H+=".html"),H!==d.pathname&&(d.pathname=H,l=H+d.search+d.hash,history.replaceState(null,"",l)),d.hash&&!c){let g=null;try{g=document.getElementById(decodeURIComponent(d.hash).slice(1))}catch(m){console.warn(m)}if(g){Cs(g,d.hash);return}}window.scrollTo(0,c)})}}catch(C){if(!/fetch|Page not found/.test(C.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(C),!u)try{const x=await fetch(it.value.base+"hashmap.json");window.__VP_HASH_MAP__=await x.json(),await i(l,c,!0);return}catch{}o===h&&(o=null,n.path=Ee?h:ws(h),n.component=t?Ft(t):null,n.data=Do)}}return Ee&&(window.addEventListener("click",l=>{if(l.target.closest("button"))return;const u=l.target.closest("a");if(u&&!u.closest(".vp-raw")&&(u instanceof SVGElement||!u.download)){const{target:d}=u,{href:h,origin:y,pathname:C,hash:x,search:O}=new URL(u.href instanceof SVGAnimatedString?u.href.animVal:u.href,u.baseURI),H=window.location,g=C.match(/\.\w+$/);!l.ctrlKey&&!l.shiftKey&&!l.altKey&&!l.metaKey&&!d&&y===H.origin&&!(g&&g[0]!==".html")&&(l.preventDefault(),C===H.pathname&&O===H.search?(x!==H.hash&&(history.pushState(null,"",x),window.dispatchEvent(new Event("hashchange"))),x?Cs(u,x,u.classList.contains("header-anchor")):(xs(h),window.scrollTo(0,0))):s(h))}},{capture:!0}),window.addEventListener("popstate",l=>{i(rr(location.href),l.state&&l.state.scrollPosition||0)}),window.addEventListener("hashchange",l=>{l.preventDefault()})),r}function ha(){const e=_t(fa);if(!e)throw new Error("useRouter() is called without provider.");return e}function Ko(){return ha().route}function Cs(e,t,n=!1){let r=null;try{r=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(s){console.warn(s)}if(r){let u=function(){!n||Math.abs(c-window.scrollY)>window.innerHeight?window.scrollTo(0,c):window.scrollTo({left:0,top:c,behavior:"smooth"})},s=it.value.scrollOffset,o=0,i=24;if(typeof s=="object"&&"padding"in s&&(i=s.padding,s=s.selector),typeof s=="number")o=s;else if(typeof s=="string")o=Es(s,i);else if(Array.isArray(s))for(const d of s){const h=Es(d,i);if(h){o=h;break}}const l=parseInt(window.getComputedStyle(r).paddingTop,10),c=window.scrollY+r.getBoundingClientRect().top-o+l;requestAnimationFrame(u)}}function Es(e,t){const n=document.querySelector(e);if(!n)return 0;const r=n.getBoundingClientRect().bottom;return r<0?0:r+t}function xs(e){Ee&&e!==rr(location.href)&&(history.replaceState({scrollPosition:window.scrollY},document.title),history.pushState(null,"",e))}function rr(e){const t=new URL(e,Uo);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),it.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const Ts=()=>sn.forEach(e=>e()),Wa=wr({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=Ko(),{site:n}=ca();return()=>tr(e.as,n.value.contentProps??{style:{position:"relative"}},[t.component?tr(t.component,{onVnodeMounted:Ts,onVnodeUpdated:Ts}):"404 Page Not Found"])}}),Va=wr({setup(e,{slots:t}){const n=ue(!1);return Tt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function qa(){Ee&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const r=(n=t.parentElement)==null?void 0:n.parentElement;if(!r)return;const s=Array.from(r.querySelectorAll("input")).indexOf(t);if(s<0)return;const o=r.querySelector(".blocks");if(!o)return;const i=Array.from(o.children).find(u=>u.classList.contains("active"));if(!i)return;const l=o.children[s];if(!l||i===l)return;i.classList.remove("active"),l.classList.add("active");const c=r==null?void 0:r.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function za(){if(Ee){const e=new WeakMap;window.addEventListener("click",t=>{var r;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const s=n.parentElement,o=(r=n.nextElementSibling)==null?void 0:r.nextElementSibling;if(!s||!o)return;const i=/language-(shellscript|shell|bash|sh|zsh)/.test(s.className);let l="";o.querySelectorAll("span.line:not(.diff.remove)").forEach(c=>l+=(c.textContent||"")+` +`),l=l.slice(0,-1),i&&(l=l.replace(/^ *(\$|>) /gm,"").trim()),pa(l).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const c=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,c)})}})}}async function pa(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const r=document.getSelection(),s=r?r.rangeCount>0&&r.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),s&&(r.removeAllRanges(),r.addRange(s)),n&&n.focus()}}function Ya(e,t){let n=[],r=!0;const s=o=>{if(r){r=!1;return}n.forEach(i=>document.head.removeChild(i)),n=[],o.forEach(i=>{const l=As(i);document.head.appendChild(l),n.push(l)})};eo(()=>{const o=e.data,i=t.value,l=o&&o.description,c=o&&o.frontmatter.head||[];document.title=Bo(i,o);const u=l||i.description;let d=document.querySelector("meta[name=description]");d?d.setAttribute("content",u):As(["meta",{name:"description",content:u}]),s(ko(i.head,ma(c)))})}function As([e,t,n]){const r=document.createElement(e);for(const s in t)r.setAttribute(s,t[s]);return n&&(r.innerHTML=n),e==="script"&&!t.async&&(r.async=!1),r}function ga(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function ma(e){return e.filter(t=>!ga(t))}const Kn=new Set,Wo=()=>document.createElement("link"),_a=e=>{const t=Wo();t.rel="prefetch",t.href=e,document.head.appendChild(t)},ya=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let tn;const ba=Ee&&(tn=Wo())&&tn.relList&&tn.relList.supports&&tn.relList.supports("prefetch")?_a:ya;function Ja(){if(!Ee||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const r=()=>{n&&n.disconnect(),n=new IntersectionObserver(o=>{o.forEach(i=>{if(i.isIntersecting){const l=i.target;n.unobserve(l);const{pathname:c}=l;if(!Kn.has(c)){Kn.add(c);const u=ua(c);u&&ba(u)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(o=>{const{hostname:i,pathname:l}=new URL(o.href instanceof SVGAnimatedString?o.href.animVal:o.href,o.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||o.target!=="_blank"&&i===location.hostname&&(l!==location.pathname?n.observe(o):Kn.add(l))})})};Tt(r);const s=Ko();qe(()=>s.path,r),On(()=>{n&&n.disconnect()})}export{Pa as $,Ea as A,gl as B,Ta as C,Sa as D,Vs as E,ge as F,Ua as G,re as H,Aa as I,Ho as J,Ko as K,Kl as L,_t as M,ar as N,Cn as O,Ba as P,Ia as Q,wn as R,xa as S,Oo as T,ja as U,Da as V,Rl as W,Na as X,Ra as Y,La as Z,Ha as _,xo as a,Ya as a0,fa as a1,ka as a2,la as a3,Wa as a4,Va as a5,it as a6,$a as a7,Ka as a8,ua as a9,Ja as aa,za as ab,qa as ac,tr as ad,ha as ae,wo as b,Fa as c,wr as d,Ma as e,ws as f,ae as g,ue as h,ta as i,Tt as j,Eo as k,zs as l,Ca as m,ur as n,bo as o,wa as p,ea as q,Oa as r,Ee as s,va as t,ca as u,Uc as v,el as w,qe as x,eo as y,On as z}; diff --git a/docs/assets/chunks/theme.1c98771e.js b/docs/assets/chunks/theme.1c98771e.js deleted file mode 100644 index aa95c6c..0000000 --- a/docs/assets/chunks/theme.1c98771e.js +++ /dev/null @@ -1 +0,0 @@ -import{d as g,o as a,c as i,r as u,n as M,a as H,t as w,_ as m,b,w as _,T as ie,e as f,u as Fe,i as Oe,f as ce,g as y,h as L,j as O,k as c,l,p as E,m as D,q as K,s as J,v as ae,x as R,y as ue,z as ee,A as Le,B as Ge,C as j,F as S,D as x,E as de,G as W,H as h,I as U,J as Se,K as te,L as Z,M as se,N as Me,O as Ue,P as Ce,Q as Re,R as je,S as Ke,U as qe,V as Ie,W as Ne,X as We,Y as Ye,Z as Je,$ as Xe}from"./framework.b637c96f.js";const Ze=g({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(s){return(e,t)=>(a(),i("span",{class:M(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[H(w(e.text),1)],!0)],2))}});const Qe=m(Ze,[["__scopeId","data-v-ea5b2908"]]),et={key:0,class:"VPBackdrop"},tt=g({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(s){return(e,t)=>(a(),b(ie,{name:"fade"},{default:_(()=>[e.show?(a(),i("div",et)):f("",!0)]),_:1}))}});const st=m(tt,[["__scopeId","data-v-54a304ca"]]),P=Fe;function nt(s,e){let t,n=!1;return()=>{t&&clearTimeout(t),n?t=setTimeout(s,e):(s(),(n=!0)&&setTimeout(()=>n=!1,e))}}function le(s){return/^\//.test(s)?s:`/${s}`}function Y(s){if(Oe(s))return s;const{site:e}=P(),{pathname:t,search:n,hash:o}=new URL(s,"http://a.com"),r=t.endsWith("/")||t.endsWith(".html")?s:s.replace(/(?:(^\.+)\/)?.*$/,`$1${t.replace(/(\.md)?$/,e.value.cleanUrls?"":".html")}${n}${o}`);return ce(r)}function X({removeCurrent:s=!0,correspondingLink:e=!1}={}){const{site:t,localeIndex:n,page:o,theme:r}=P(),d=y(()=>{var v,k;return{label:(v=t.value.locales[n.value])==null?void 0:v.label,link:((k=t.value.locales[n.value])==null?void 0:k.link)||(n.value==="root"?"/":`/${n.value}/`)}});return{localeLinks:y(()=>Object.entries(t.value.locales).flatMap(([v,k])=>s&&d.value.label===k.label?[]:{text:k.label,link:ot(k.link||(v==="root"?"/":`/${v}/`),r.value.i18nRouting!==!1&&e,o.value.relativePath.slice(d.value.link.length-1),!t.value.cleanUrls)})),currentLang:d}}function ot(s,e,t,n){return e?s.replace(/\/$/,"")+le(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,n?".html":"")):s}const at=s=>(E("data-v-b9c0c15a"),s=s(),D(),s),lt={class:"NotFound"},rt={class:"code"},it={class:"title"},ct=at(()=>c("div",{class:"divider"},null,-1)),ut={class:"quote"},dt={class:"action"},_t=["href","aria-label"],vt=g({__name:"NotFound",setup(s){const{site:e,theme:t}=P(),{localeLinks:n}=X({removeCurrent:!1}),o=L("/");return O(()=>{var d;const r=window.location.pathname.replace(e.value.base,"").replace(/(^.*?\/).*$/,"/$1");n.value.length&&(o.value=((d=n.value.find(({link:p})=>p.startsWith(r)))==null?void 0:d.link)||n.value[0].link)}),(r,d)=>{var p,v,k,N,T;return a(),i("div",lt,[c("p",rt,w(((p=l(t).notFound)==null?void 0:p.code)??"404"),1),c("h1",it,w(((v=l(t).notFound)==null?void 0:v.title)??"PAGE NOT FOUND"),1),ct,c("blockquote",ut,w(((k=l(t).notFound)==null?void 0:k.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),c("div",dt,[c("a",{class:"link",href:l(ce)(o.value),"aria-label":((N=l(t).notFound)==null?void 0:N.linkLabel)??"go to home"},w(((T=l(t).notFound)==null?void 0:T.linkText)??"Take me home"),9,_t)])])}}});const pt=m(vt,[["__scopeId","data-v-b9c0c15a"]]);function Te(s,e){if(Array.isArray(s))return Q(s);if(s==null)return[];e=le(e);const t=Object.keys(s).sort((o,r)=>r.split("/").length-o.split("/").length).find(o=>e.startsWith(le(o))),n=t?s[t]:[];return Array.isArray(n)?Q(n):Q(n.items,n.base)}function ht(s){const e=[];let t=0;for(const n in s){const o=s[n];if(o.items){t=e.push(o);continue}e[t]||e.push({items:[]}),e[t].items.push(o)}return e}function ft(s){const e=[];function t(n){for(const o of n)o.text&&o.link&&e.push({text:o.text,link:o.link,docFooterText:o.docFooterText}),o.items&&t(o.items)}return t(s),e}function re(s,e){return Array.isArray(e)?e.some(t=>re(s,t)):K(s,e.link)?!0:e.items?re(s,e.items):!1}function Q(s,e){return[...s].map(t=>{const n={...t},o=n.base||e;return o&&n.link&&(n.link=o+n.link),n.items&&(n.items=Q(n.items,o)),n})}function F(){const{frontmatter:s,page:e,theme:t}=P(),n=ae("(min-width: 960px)"),o=L(!1),r=y(()=>{const V=t.value.sidebar,$=e.value.relativePath;return V?Te(V,$):[]}),d=L(r.value);R(r,(V,$)=>{JSON.stringify(V)!==JSON.stringify($)&&(d.value=r.value)});const p=y(()=>s.value.sidebar!==!1&&d.value.length>0&&s.value.layout!=="home"),v=y(()=>k?s.value.aside==null?t.value.aside==="left":s.value.aside==="left":!1),k=y(()=>s.value.layout==="home"?!1:s.value.aside!=null?!!s.value.aside:t.value.aside!==!1),N=y(()=>p.value&&n.value),T=y(()=>p.value?ht(d.value):[]);function A(){o.value=!0}function I(){o.value=!1}function B(){o.value?I():A()}return{isOpen:o,sidebar:d,sidebarGroups:T,hasSidebar:p,hasAside:k,leftAside:v,isSidebarEnabled:N,open:A,close:I,toggle:B}}function mt(s,e){let t;ue(()=>{t=s.value?document.activeElement:void 0}),O(()=>{window.addEventListener("keyup",n)}),ee(()=>{window.removeEventListener("keyup",n)});function n(o){o.key==="Escape"&&s.value&&(e(),t==null||t.focus())}}const Be=L(J?location.hash:"");J&&window.addEventListener("hashchange",()=>{Be.value=location.hash});function gt(s){const{page:e}=P(),t=L(!1),n=y(()=>s.value.collapsed!=null),o=y(()=>!!s.value.link),r=L(!1),d=()=>{r.value=K(e.value.relativePath,s.value.link)};R([e,s,Be],d),O(d);const p=y(()=>r.value?!0:s.value.items?re(e.value.relativePath,s.value.items):!1),v=y(()=>!!(s.value.items&&s.value.items.length));ue(()=>{t.value=!!(n.value&&s.value.collapsed)}),Le(()=>{(r.value||p.value)&&(t.value=!1)});function k(){n.value&&(t.value=!t.value)}return{collapsed:t,collapsible:n,isLink:o,isActiveLink:r,hasActiveLink:p,hasChildren:v,toggle:k}}function bt(){const{hasSidebar:s}=F(),e=ae("(min-width: 960px)"),t=ae("(min-width: 1280px)");return{isAsideEnabled:y(()=>!t.value&&!e.value?!1:s.value?t.value:e.value)}}const $t=71;function _e(s){return typeof s.outline=="object"&&!Array.isArray(s.outline)&&s.outline.label||s.outlineTitle||"On this page"}function ve(s){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const n=Number(t.tagName[1]);return{title:kt(t),link:"#"+t.id,level:n}});return yt(e,s)}function kt(s){let e="";for(const t of s.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function yt(s,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[n,o]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;s=s.filter(d=>d.level>=n&&d.level<=o);const r=[];e:for(let d=0;d=0;v--){const k=s[v];if(k.level{requestAnimationFrame(r),window.addEventListener("scroll",n)}),Ge(()=>{d(location.hash)}),ee(()=>{window.removeEventListener("scroll",n)});function r(){if(!t.value)return;const p=[].slice.call(s.value.querySelectorAll(".outline-link")),v=[].slice.call(document.querySelectorAll(".content .header-anchor")).filter(I=>p.some(B=>B.hash===I.hash&&I.offsetParent!==null)),k=window.scrollY,N=window.innerHeight,T=document.body.offsetHeight,A=Math.abs(k+N-T)<1;if(v.length&&A){d(v[v.length-1].hash);return}for(let I=0;I{const o=j("VPDocOutlineItem",!0);return a(),i("ul",{class:M(t.root?"root":"nested")},[(a(!0),i(S,null,x(t.headers,({children:r,link:d,title:p})=>(a(),i("li",null,[c("a",{class:"outline-link",href:d,onClick:e,title:p},w(p),9,wt),r!=null&&r.length?(a(),b(o,{key:0,headers:r},null,8,["headers"])):f("",!0)]))),256))],2)}}});const pe=m(Lt,[["__scopeId","data-v-463da30f"]]),St=s=>(E("data-v-626d8d18"),s=s(),D(),s),Mt={class:"content"},Ct={class:"outline-title",role:"heading"},It={"aria-labelledby":"doc-outline-aria-label"},Nt=St(()=>c("span",{class:"visually-hidden",id:"doc-outline-aria-label"}," Table of Contents for current page ",-1)),Tt=g({__name:"VPDocAsideOutline",setup(s){const{frontmatter:e,theme:t}=P(),n=de([]);W(()=>{n.value=ve(e.value.outline??t.value.outline)});const o=L(),r=L();return Pt(o,r),(d,p)=>(a(),i("div",{class:M(["VPDocAsideOutline",{"has-outline":n.value.length>0}]),ref_key:"container",ref:o,role:"navigation"},[c("div",Mt,[c("div",{class:"outline-marker",ref_key:"marker",ref:r},null,512),c("div",Ct,w(l(_e)(l(t))),1),c("nav",It,[Nt,h(pe,{headers:n.value,root:!0},null,8,["headers"])])])],2))}});const Bt=m(Tt,[["__scopeId","data-v-626d8d18"]]),At={class:"VPDocAsideCarbonAds"},xt=g({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(s){const e=()=>null;return(t,n)=>(a(),i("div",At,[h(l(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Ht=s=>(E("data-v-cb998dce"),s=s(),D(),s),zt={class:"VPDocAside"},Et=Ht(()=>c("div",{class:"spacer"},null,-1)),Dt=g({__name:"VPDocAside",setup(s){const{theme:e}=P();return(t,n)=>(a(),i("div",zt,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),h(Bt),u(t.$slots,"aside-outline-after",{},void 0,!0),Et,u(t.$slots,"aside-ads-before",{},void 0,!0),l(e).carbonAds?(a(),b(xt,{key:0,"carbon-ads":l(e).carbonAds},null,8,["carbon-ads"])):f("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}});const Ft=m(Dt,[["__scopeId","data-v-cb998dce"]]);function Ot(){const{theme:s,page:e}=P();return y(()=>{const{text:t="Edit this page",pattern:n=""}=s.value.editLink||{};let o;return typeof n=="function"?o=n(e.value):o=n.replace(/:path/g,e.value.filePath),{url:o,text:t}})}function Gt(){const{page:s,theme:e,frontmatter:t}=P();return y(()=>{var v,k,N,T,A,I,B,V;const n=Te(e.value.sidebar,s.value.relativePath),o=ft(n),r=o.findIndex($=>K(s.value.relativePath,$.link)),d=((v=e.value.docFooter)==null?void 0:v.prev)===!1&&!t.value.prev||t.value.prev===!1,p=((k=e.value.docFooter)==null?void 0:k.next)===!1&&!t.value.next||t.value.next===!1;return{prev:d?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((N=o[r-1])==null?void 0:N.docFooterText)??((T=o[r-1])==null?void 0:T.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((A=o[r-1])==null?void 0:A.link)},next:p?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((I=o[r+1])==null?void 0:I.docFooterText)??((B=o[r+1])==null?void 0:B.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((V=o[r+1])==null?void 0:V.link)}}})}const Ut={},Rt={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},jt=c("path",{d:"M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"},null,-1),Kt=c("path",{d:"M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"},null,-1),qt=[jt,Kt];function Wt(s,e){return a(),i("svg",Rt,qt)}const Yt=m(Ut,[["render",Wt]]),G=g({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(s){const e=s,t=y(()=>e.tag??(e.href?"a":"span")),n=y(()=>e.href&&Se.test(e.href));return(o,r)=>(a(),b(U(t.value),{class:M(["VPLink",{link:o.href,"vp-external-link-icon":n.value,"no-icon":o.noIcon}]),href:o.href?l(Y)(o.href):void 0,target:o.target??(n.value?"_blank":void 0),rel:o.rel??(n.value?"noreferrer":void 0)},{default:_(()=>[u(o.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Jt={class:"VPLastUpdated"},Xt=["datetime"],Zt=g({__name:"VPDocFooterLastUpdated",setup(s){const{theme:e,page:t,frontmatter:n}=P(),o=y(()=>new Date(n.value.lastUpdated??t.value.lastUpdated)),r=y(()=>o.value.toISOString()),d=L("");return O(()=>{ue(()=>{var p;d.value=new Intl.DateTimeFormat(void 0,((p=e.value.lastUpdated)==null?void 0:p.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(o.value)})}),(p,v)=>{var k;return a(),i("p",Jt,[H(w(((k=l(e).lastUpdated)==null?void 0:k.text)||l(e).lastUpdatedText||"Last updated")+": ",1),c("time",{datetime:r.value},w(d.value),9,Xt)])}}});const Qt=m(Zt,[["__scopeId","data-v-6a7fda06"]]),es={key:0,class:"VPDocFooter"},ts={key:0,class:"edit-info"},ss={key:0,class:"edit-link"},ns={key:1,class:"last-updated"},os={key:1,class:"prev-next"},as={class:"pager"},ls=["href"],rs=["innerHTML"],is=["innerHTML"],cs={class:"pager"},us=["href"],ds=["innerHTML"],_s=["innerHTML"],vs=g({__name:"VPDocFooter",setup(s){const{theme:e,page:t,frontmatter:n}=P(),o=Ot(),r=Gt(),d=y(()=>e.value.editLink&&n.value.editLink!==!1),p=y(()=>t.value.lastUpdated&&n.value.lastUpdated!==!1),v=y(()=>d.value||p.value||r.value.prev||r.value.next);return(k,N)=>{var T,A,I,B,V,$;return v.value?(a(),i("footer",es,[u(k.$slots,"doc-footer-before",{},void 0,!0),d.value||p.value?(a(),i("div",ts,[d.value?(a(),i("div",ss,[h(G,{class:"edit-link-button",href:l(o).url,"no-icon":!0},{default:_(()=>[h(Yt,{class:"edit-link-icon","aria-label":"edit icon"}),H(" "+w(l(o).text),1)]),_:1},8,["href"])])):f("",!0),p.value?(a(),i("div",ns,[h(Qt)])):f("",!0)])):f("",!0),(T=l(r).prev)!=null&&T.link||(A=l(r).next)!=null&&A.link?(a(),i("nav",os,[c("div",as,[(I=l(r).prev)!=null&&I.link?(a(),i("a",{key:0,class:"pager-link prev",href:l(Y)(l(r).prev.link)},[c("span",{class:"desc",innerHTML:((B=l(e).docFooter)==null?void 0:B.prev)||"Previous page"},null,8,rs),c("span",{class:"title",innerHTML:l(r).prev.text},null,8,is)],8,ls)):f("",!0)]),c("div",cs,[(V=l(r).next)!=null&&V.link?(a(),i("a",{key:0,class:"pager-link next",href:l(Y)(l(r).next.link)},[c("span",{class:"desc",innerHTML:(($=l(e).docFooter)==null?void 0:$.next)||"Next page"},null,8,ds),c("span",{class:"title",innerHTML:l(r).next.text},null,8,_s)],8,us)):f("",!0)])])):f("",!0)])):f("",!0)}}});const ps=m(vs,[["__scopeId","data-v-a2d931e4"]]),hs={},fs={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ms=c("path",{d:"M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"},null,-1),gs=[ms];function bs(s,e){return a(),i("svg",fs,gs)}const he=m(hs,[["render",bs]]),$s={key:0,class:"VPDocOutlineDropdown"},ks={key:0,class:"items"},ys=g({__name:"VPDocOutlineDropdown",setup(s){const{frontmatter:e,theme:t}=P(),n=L(!1);W(()=>{n.value=!1});const o=de([]);return W(()=>{o.value=ve(e.value.outline??t.value.outline)}),(r,d)=>o.value.length>0?(a(),i("div",$s,[c("button",{onClick:d[0]||(d[0]=p=>n.value=!n.value),class:M({open:n.value})},[H(w(l(_e)(l(t)))+" ",1),h(he,{class:"icon"})],2),n.value?(a(),i("div",ks,[h(pe,{headers:o.value},null,8,["headers"])])):f("",!0)])):f("",!0)}});const Ps=m(ys,[["__scopeId","data-v-95bb0785"]]),Vs=s=>(E("data-v-a3c25e27"),s=s(),D(),s),ws={class:"container"},Ls=Vs(()=>c("div",{class:"aside-curtain"},null,-1)),Ss={class:"aside-container"},Ms={class:"aside-content"},Cs={class:"content"},Is={class:"content-container"},Ns={class:"main"},Ts=g({__name:"VPDoc",setup(s){const{theme:e}=P(),t=te(),{hasSidebar:n,hasAside:o,leftAside:r}=F(),d=y(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(p,v)=>{const k=j("Content");return a(),i("div",{class:M(["VPDoc",{"has-sidebar":l(n),"has-aside":l(o)}])},[u(p.$slots,"doc-top",{},void 0,!0),c("div",ws,[l(o)?(a(),i("div",{key:0,class:M(["aside",{"left-aside":l(r)}])},[Ls,c("div",Ss,[c("div",Ms,[h(Ft,null,{"aside-top":_(()=>[u(p.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":_(()=>[u(p.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":_(()=>[u(p.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":_(()=>[u(p.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":_(()=>[u(p.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":_(()=>[u(p.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):f("",!0),c("div",Cs,[c("div",Is,[u(p.$slots,"doc-before",{},void 0,!0),h(Ps),c("main",Ns,[h(k,{class:M(["vp-doc",[d.value,l(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),h(ps,null,{"doc-footer-before":_(()=>[u(p.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(p.$slots,"doc-after",{},void 0,!0)])])]),u(p.$slots,"doc-bottom",{},void 0,!0)],2)}}});const Bs=m(Ts,[["__scopeId","data-v-a3c25e27"]]),As=g({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{}},setup(s){const e=s,t=y(()=>e.href&&Se.test(e.href)),n=y(()=>e.tag||e.href?"a":"button");return(o,r)=>(a(),b(U(n.value),{class:M(["VPButton",[o.size,o.theme]]),href:o.href?l(Y)(o.href):void 0,target:t.value?"_blank":void 0,rel:t.value?"noreferrer":void 0},{default:_(()=>[H(w(o.text),1)]),_:1},8,["class","href","target","rel"]))}});const xs=m(As,[["__scopeId","data-v-1e76fe75"]]),Hs=["src","alt"],zs=g({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(s){return(e,t)=>{const n=j("VPImage",!0);return e.image?(a(),i(S,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),i("img",Z({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:l(ce)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,Hs)):(a(),i(S,{key:1},[h(n,Z({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),h(n,Z({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):f("",!0)}}});const fe=m(zs,[["__scopeId","data-v-ab19afbb"]]),Es=s=>(E("data-v-5a3e9999"),s=s(),D(),s),Ds={class:"container"},Fs={class:"main"},Os={key:0,class:"name"},Gs=["innerHTML"],Us=["innerHTML"],Rs=["innerHTML"],js={key:0,class:"actions"},Ks={key:0,class:"image"},qs={class:"image-container"},Ws=Es(()=>c("div",{class:"image-bg"},null,-1)),Ys=g({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(s){const e=se("hero-image-slot-exists");return(t,n)=>(a(),i("div",{class:M(["VPHero",{"has-image":t.image||l(e)}])},[c("div",Ds,[c("div",Fs,[u(t.$slots,"home-hero-info",{},()=>[t.name?(a(),i("h1",Os,[c("span",{innerHTML:t.name,class:"clip"},null,8,Gs)])):f("",!0),t.text?(a(),i("p",{key:1,innerHTML:t.text,class:"text"},null,8,Us)):f("",!0),t.tagline?(a(),i("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,Rs)):f("",!0)],!0),t.actions?(a(),i("div",js,[(a(!0),i(S,null,x(t.actions,o=>(a(),i("div",{key:o.link,class:"action"},[h(xs,{tag:"a",size:"medium",theme:o.theme,text:o.text,href:o.link},null,8,["theme","text","href"])]))),128))])):f("",!0)]),t.image||l(e)?(a(),i("div",Ks,[c("div",qs,[Ws,u(t.$slots,"home-hero-image",{},()=>[t.image?(a(),b(fe,{key:0,class:"image-src",image:t.image},null,8,["image"])):f("",!0)],!0)])])):f("",!0)])],2))}});const Js=m(Ys,[["__scopeId","data-v-5a3e9999"]]),Xs=g({__name:"VPHomeHero",setup(s){const{frontmatter:e}=P();return(t,n)=>l(e).hero?(a(),b(Js,{key:0,class:"VPHomeHero",name:l(e).hero.name,text:l(e).hero.text,tagline:l(e).hero.tagline,image:l(e).hero.image,actions:l(e).hero.actions},{"home-hero-info":_(()=>[u(t.$slots,"home-hero-info")]),"home-hero-image":_(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):f("",!0)}}),Zs={},Qs={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},en=c("path",{d:"M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"},null,-1),tn=[en];function sn(s,e){return a(),i("svg",Qs,tn)}const nn=m(Zs,[["render",sn]]),on={class:"box"},an=["innerHTML"],ln=["innerHTML"],rn=["innerHTML"],cn={key:3,class:"link-text"},un={class:"link-text-value"},dn=g({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{}},setup(s){return(e,t)=>(a(),b(G,{class:"VPFeature",href:e.link,rel:e.rel,"no-icon":!0,tag:e.link?"a":"div"},{default:_(()=>[c("article",on,[typeof e.icon=="object"?(a(),b(fe,{key:0,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),i("div",{key:1,class:"icon",innerHTML:e.icon},null,8,an)):f("",!0),c("h2",{class:"title",innerHTML:e.title},null,8,ln),e.details?(a(),i("p",{key:2,class:"details",innerHTML:e.details},null,8,rn)):f("",!0),e.linkText?(a(),i("div",cn,[c("p",un,[H(w(e.linkText)+" ",1),h(nn,{class:"link-text-icon"})])])):f("",!0)])]),_:1},8,["href","rel","tag"]))}});const _n=m(dn,[["__scopeId","data-v-6c0c85a1"]]),vn={key:0,class:"VPFeatures"},pn={class:"container"},hn={class:"items"},fn=g({__name:"VPFeatures",props:{features:{}},setup(s){const e=s,t=y(()=>{const n=e.features.length;if(n){if(n===2)return"grid-2";if(n===3)return"grid-3";if(n%3===0)return"grid-6";if(n>3)return"grid-4"}else return});return(n,o)=>n.features?(a(),i("div",vn,[c("div",pn,[c("div",hn,[(a(!0),i(S,null,x(n.features,r=>(a(),i("div",{key:r.title,class:M(["item",[t.value]])},[h(_n,{icon:r.icon,title:r.title,details:r.details,link:r.link,"link-text":r.linkText,rel:r.rel},null,8,["icon","title","details","link","link-text","rel"])],2))),128))])])])):f("",!0)}});const mn=m(fn,[["__scopeId","data-v-7e232fde"]]),gn=g({__name:"VPHomeFeatures",setup(s){const{frontmatter:e}=P();return(t,n)=>l(e).features?(a(),b(mn,{key:0,class:"VPHomeFeatures",features:l(e).features},null,8,["features"])):f("",!0)}}),bn={class:"VPHome"},$n=g({__name:"VPHome",setup(s){return(e,t)=>{const n=j("Content");return a(),i("div",bn,[u(e.$slots,"home-hero-before",{},void 0,!0),h(Xs,null,{"home-hero-info":_(()=>[u(e.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":_(()=>[u(e.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(e.$slots,"home-hero-after",{},void 0,!0),u(e.$slots,"home-features-before",{},void 0,!0),h(gn),u(e.$slots,"home-features-after",{},void 0,!0),h(n)])}}});const kn=m($n,[["__scopeId","data-v-20eabd3a"]]),yn={},Pn={class:"VPPage"};function Vn(s,e){const t=j("Content");return a(),i("div",Pn,[u(s.$slots,"page-top"),h(t),u(s.$slots,"page-bottom")])}const wn=m(yn,[["render",Vn]]),Ln=g({__name:"VPContent",setup(s){const{page:e,frontmatter:t}=P(),{hasSidebar:n}=F();return(o,r)=>(a(),i("div",{class:M(["VPContent",{"has-sidebar":l(n),"is-home":l(t).layout==="home"}]),id:"VPContent"},[l(e).isNotFound?u(o.$slots,"not-found",{key:0},()=>[h(pt)],!0):l(t).layout==="page"?(a(),b(wn,{key:1},{"page-top":_(()=>[u(o.$slots,"page-top",{},void 0,!0)]),"page-bottom":_(()=>[u(o.$slots,"page-bottom",{},void 0,!0)]),_:3})):l(t).layout==="home"?(a(),b(kn,{key:2},{"home-hero-before":_(()=>[u(o.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":_(()=>[u(o.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":_(()=>[u(o.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":_(()=>[u(o.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":_(()=>[u(o.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":_(()=>[u(o.$slots,"home-features-after",{},void 0,!0)]),_:3})):l(t).layout&&l(t).layout!=="doc"?(a(),b(U(l(t).layout),{key:3})):(a(),b(Bs,{key:4},{"doc-top":_(()=>[u(o.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":_(()=>[u(o.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":_(()=>[u(o.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":_(()=>[u(o.$slots,"doc-before",{},void 0,!0)]),"doc-after":_(()=>[u(o.$slots,"doc-after",{},void 0,!0)]),"aside-top":_(()=>[u(o.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":_(()=>[u(o.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":_(()=>[u(o.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":_(()=>[u(o.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":_(()=>[u(o.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":_(()=>[u(o.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}});const Sn=m(Ln,[["__scopeId","data-v-3cf691b6"]]),Mn={class:"container"},Cn=["innerHTML"],In=["innerHTML"],Nn=g({__name:"VPFooter",setup(s){const{theme:e,frontmatter:t}=P(),{hasSidebar:n}=F();return(o,r)=>l(e).footer&&l(t).footer!==!1?(a(),i("footer",{key:0,class:M(["VPFooter",{"has-sidebar":l(n)}])},[c("div",Mn,[l(e).footer.message?(a(),i("p",{key:0,class:"message",innerHTML:l(e).footer.message},null,8,Cn)):f("",!0),l(e).footer.copyright?(a(),i("p",{key:1,class:"copyright",innerHTML:l(e).footer.copyright},null,8,In)):f("",!0)])],2)):f("",!0)}});const Tn=m(Nn,[["__scopeId","data-v-e4279f1c"]]),Bn={class:"header"},An={class:"outline"},xn=g({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(s){const e=s,{theme:t}=P(),n=L(!1),o=L(0),r=L();W(()=>{n.value=!1});function d(){n.value=!n.value,o.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function p(k){k.target.classList.contains("outline-link")&&(r.value&&(r.value.style.transition="none"),Ue(()=>{n.value=!1}))}function v(){n.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(k,N)=>(a(),i("div",{class:"VPLocalNavOutlineDropdown",style:Me({"--vp-vh":o.value+"px"})},[k.headers.length>0?(a(),i("button",{key:0,onClick:d,class:M({open:n.value})},[H(w(l(_e)(l(t)))+" ",1),h(he,{class:"icon"})],2)):(a(),i("button",{key:1,onClick:v},w(l(t).returnToTopLabel||"Return to top"),1)),h(ie,{name:"flyout"},{default:_(()=>[n.value?(a(),i("div",{key:0,ref_key:"items",ref:r,class:"items",onClick:p},[c("div",Bn,[c("a",{class:"top-link",href:"#",onClick:v},w(l(t).returnToTopLabel||"Return to top"),1)]),c("div",An,[h(pe,{headers:k.headers},null,8,["headers"])])],512)):f("",!0)]),_:1})],4))}});const Hn=m(xn,[["__scopeId","data-v-24251f6f"]]),zn={},En={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Dn=c("path",{d:"M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"},null,-1),Fn=c("path",{d:"M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"},null,-1),On=c("path",{d:"M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"},null,-1),Gn=c("path",{d:"M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"},null,-1),Un=[Dn,Fn,On,Gn];function Rn(s,e){return a(),i("svg",En,Un)}const jn=m(zn,[["render",Rn]]),Kn=["aria-expanded"],qn={class:"menu-text"},Wn=g({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(s){const{theme:e,frontmatter:t}=P(),{hasSidebar:n}=F(),{y:o}=Ce(),r=de([]),d=L(0);O(()=>{d.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),W(()=>{r.value=ve(t.value.outline??e.value.outline)});const p=y(()=>r.value.length===0&&!n.value),v=y(()=>({VPLocalNav:!0,fixed:p.value,"reached-top":o.value>=d.value}));return(k,N)=>l(t).layout!=="home"&&(!p.value||l(o)>=d.value)?(a(),i("div",{key:0,class:M(v.value)},[l(n)?(a(),i("button",{key:0,class:"menu","aria-expanded":k.open,"aria-controls":"VPSidebarNav",onClick:N[0]||(N[0]=T=>k.$emit("open-menu"))},[h(jn,{class:"menu-icon"}),c("span",qn,w(l(e).sidebarMenuLabel||"Menu"),1)],8,Kn)):f("",!0),h(Hn,{headers:r.value,navHeight:d.value},null,8,["headers","navHeight"])],2)):f("",!0)}});const Yn=m(Wn,[["__scopeId","data-v-9e669cc1"]]);function Jn(){const s=L(!1);function e(){s.value=!0,window.addEventListener("resize",o)}function t(){s.value=!1,window.removeEventListener("resize",o)}function n(){s.value?t():e()}function o(){window.outerWidth>=768&&t()}const r=te();return R(()=>r.path,t),{isScreenOpen:s,openScreen:e,closeScreen:t,toggleScreen:n}}const Xn={},Zn={class:"VPSwitch",type:"button",role:"switch"},Qn={class:"check"},eo={key:0,class:"icon"};function to(s,e){return a(),i("button",Zn,[c("span",Qn,[s.$slots.default?(a(),i("span",eo,[u(s.$slots,"default",{},void 0,!0)])):f("",!0)])])}const so=m(Xn,[["render",to],["__scopeId","data-v-1c29e291"]]),no={},oo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ao=c("path",{d:"M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"},null,-1),lo=[ao];function ro(s,e){return a(),i("svg",oo,lo)}const io=m(no,[["render",ro]]),co={},uo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},_o=Re('',9),vo=[_o];function po(s,e){return a(),i("svg",uo,vo)}const ho=m(co,[["render",po]]),fo=g({__name:"VPSwitchAppearance",setup(s){const{isDark:e}=P(),t=se("toggle-appearance",()=>{e.value=!e.value});return(n,o)=>(a(),b(so,{title:"toggle dark mode",class:"VPSwitchAppearance","aria-checked":l(e),onClick:l(t)},{default:_(()=>[h(ho,{class:"sun"}),h(io,{class:"moon"})]),_:1},8,["aria-checked","onClick"]))}});const me=m(fo,[["__scopeId","data-v-3329432d"]]),mo={key:0,class:"VPNavBarAppearance"},go=g({__name:"VPNavBarAppearance",setup(s){const{site:e}=P();return(t,n)=>l(e).appearance?(a(),i("div",mo,[h(me)])):f("",!0)}});const bo=m(go,[["__scopeId","data-v-5e9f0637"]]),ge=L();let Ae=!1,oe=0;function $o(s){const e=L(!1);if(J){!Ae&&ko(),oe++;const t=R(ge,n=>{var o,r,d;n===s.el.value||(o=s.el.value)!=null&&o.contains(n)?(e.value=!0,(r=s.onFocus)==null||r.call(s)):(e.value=!1,(d=s.onBlur)==null||d.call(s))});ee(()=>{t(),oe--,oe||yo()})}return je(e)}function ko(){document.addEventListener("focusin",xe),Ae=!0,ge.value=document.activeElement}function yo(){document.removeEventListener("focusin",xe)}function xe(){ge.value=document.activeElement}const Po={},Vo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},wo=c("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),Lo=[wo];function So(s,e){return a(),i("svg",Vo,Lo)}const He=m(Po,[["render",So]]),Mo={},Co={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Io=c("circle",{cx:"12",cy:"12",r:"2"},null,-1),No=c("circle",{cx:"19",cy:"12",r:"2"},null,-1),To=c("circle",{cx:"5",cy:"12",r:"2"},null,-1),Bo=[Io,No,To];function Ao(s,e){return a(),i("svg",Co,Bo)}const xo=m(Mo,[["render",Ao]]),Ho={class:"VPMenuLink"},zo=g({__name:"VPMenuLink",props:{item:{}},setup(s){const{page:e}=P();return(t,n)=>(a(),i("div",Ho,[h(G,{class:M({active:l(K)(l(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:_(()=>[H(w(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const ne=m(zo,[["__scopeId","data-v-f51f088d"]]),Eo={class:"VPMenuGroup"},Do={key:0,class:"title"},Fo=g({__name:"VPMenuGroup",props:{text:{},items:{}},setup(s){return(e,t)=>(a(),i("div",Eo,[e.text?(a(),i("p",Do,w(e.text),1)):f("",!0),(a(!0),i(S,null,x(e.items,n=>(a(),i(S,null,["link"in n?(a(),b(ne,{key:0,item:n},null,8,["item"])):f("",!0)],64))),256))]))}});const Oo=m(Fo,[["__scopeId","data-v-a6b0397c"]]),Go={class:"VPMenu"},Uo={key:0,class:"items"},Ro=g({__name:"VPMenu",props:{items:{}},setup(s){return(e,t)=>(a(),i("div",Go,[e.items?(a(),i("div",Uo,[(a(!0),i(S,null,x(e.items,n=>(a(),i(S,{key:n.text},["link"in n?(a(),b(ne,{key:0,item:n},null,8,["item"])):(a(),b(Oo,{key:1,text:n.text,items:n.items},null,8,["text","items"]))],64))),128))])):f("",!0),u(e.$slots,"default",{},void 0,!0)]))}});const jo=m(Ro,[["__scopeId","data-v-e42ed9b3"]]),Ko=["aria-expanded","aria-label"],qo={key:0,class:"text"},Wo=["innerHTML"],Yo={class:"menu"},Jo=g({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(s){const e=L(!1),t=L();$o({el:t,onBlur:n});function n(){e.value=!1}return(o,r)=>(a(),i("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:r[1]||(r[1]=d=>e.value=!0),onMouseleave:r[2]||(r[2]=d=>e.value=!1)},[c("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":o.label,onClick:r[0]||(r[0]=d=>e.value=!e.value)},[o.button||o.icon?(a(),i("span",qo,[o.icon?(a(),b(U(o.icon),{key:0,class:"option-icon"})):f("",!0),o.button?(a(),i("span",{key:1,innerHTML:o.button},null,8,Wo)):f("",!0),h(He,{class:"text-icon"})])):(a(),b(xo,{key:1,class:"icon"}))],8,Ko),c("div",Yo,[h(jo,{items:o.items},{default:_(()=>[u(o.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const be=m(Jo,[["__scopeId","data-v-aa8de344"]]),Xo={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',x:'X',youtube:'YouTube'},Zo=["href","aria-label","innerHTML"],Qo=g({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(s){const e=s,t=y(()=>typeof e.icon=="object"?e.icon.svg:Xo[e.icon]);return(n,o)=>(a(),i("a",{class:"VPSocialLink no-icon",href:n.link,"aria-label":n.ariaLabel??(typeof n.icon=="string"?n.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Zo))}});const ea=m(Qo,[["__scopeId","data-v-16cf740a"]]),ta={class:"VPSocialLinks"},sa=g({__name:"VPSocialLinks",props:{links:{}},setup(s){return(e,t)=>(a(),i("div",ta,[(a(!0),i(S,null,x(e.links,({link:n,icon:o,ariaLabel:r})=>(a(),b(ea,{key:n,icon:o,link:n,ariaLabel:r},null,8,["icon","link","ariaLabel"]))),128))]))}});const $e=m(sa,[["__scopeId","data-v-e71e869c"]]),na={key:0,class:"group translations"},oa={class:"trans-title"},aa={key:1,class:"group"},la={class:"item appearance"},ra={class:"label"},ia={class:"appearance-action"},ca={key:2,class:"group"},ua={class:"item social-links"},da=g({__name:"VPNavBarExtra",setup(s){const{site:e,theme:t}=P(),{localeLinks:n,currentLang:o}=X({correspondingLink:!0}),r=y(()=>n.value.length&&o.value.label||e.value.appearance||t.value.socialLinks);return(d,p)=>r.value?(a(),b(be,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:_(()=>[l(n).length&&l(o).label?(a(),i("div",na,[c("p",oa,w(l(o).label),1),(a(!0),i(S,null,x(l(n),v=>(a(),b(ne,{key:v.link,item:v},null,8,["item"]))),128))])):f("",!0),l(e).appearance?(a(),i("div",aa,[c("div",la,[c("p",ra,w(l(t).darkModeSwitchLabel||"Appearance"),1),c("div",ia,[h(me)])])])):f("",!0),l(t).socialLinks?(a(),i("div",ca,[c("div",ua,[h($e,{class:"social-links-list",links:l(t).socialLinks},null,8,["links"])])])):f("",!0)]),_:1})):f("",!0)}});const _a=m(da,[["__scopeId","data-v-c8c2ae4b"]]),va=s=>(E("data-v-6bee1efd"),s=s(),D(),s),pa=["aria-expanded"],ha=va(()=>c("span",{class:"container"},[c("span",{class:"top"}),c("span",{class:"middle"}),c("span",{class:"bottom"})],-1)),fa=[ha],ma=g({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(s){return(e,t)=>(a(),i("button",{type:"button",class:M(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=n=>e.$emit("click"))},fa,10,pa))}});const ga=m(ma,[["__scopeId","data-v-6bee1efd"]]),ba=["innerHTML"],$a=g({__name:"VPNavBarMenuLink",props:{item:{}},setup(s){const{page:e}=P();return(t,n)=>(a(),b(G,{class:M({VPNavBarMenuLink:!0,active:l(K)(l(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:_(()=>[c("span",{innerHTML:t.item.text},null,8,ba)]),_:1},8,["class","href","target","rel"]))}});const ka=m($a,[["__scopeId","data-v-cb318fec"]]),ya=g({__name:"VPNavBarMenuGroup",props:{item:{}},setup(s){const{page:e}=P();return(t,n)=>(a(),b(be,{class:M({VPNavBarMenuGroup:!0,active:l(K)(l(e).relativePath,t.item.activeMatch,!!t.item.activeMatch)}),button:t.item.text,items:t.item.items},null,8,["class","button","items"]))}}),Pa=s=>(E("data-v-f732b5d0"),s=s(),D(),s),Va={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},wa=Pa(()=>c("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),La=g({__name:"VPNavBarMenu",setup(s){const{theme:e}=P();return(t,n)=>l(e).nav?(a(),i("nav",Va,[wa,(a(!0),i(S,null,x(l(e).nav,o=>(a(),i(S,{key:o.text},["link"in o?(a(),b(ka,{key:0,item:o},null,8,["item"])):(a(),b(ya,{key:1,item:o},null,8,["item"]))],64))),128))])):f("",!0)}});const Sa=m(La,[["__scopeId","data-v-f732b5d0"]]);const Ma={type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search"},Ca={class:"DocSearch-Button-Container"},Ia=c("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[c("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),Na={class:"DocSearch-Button-Placeholder"},Ta=c("span",{class:"DocSearch-Button-Keys"},[c("kbd",{class:"DocSearch-Button-Key"}),c("kbd",{class:"DocSearch-Button-Key"},"K")],-1),we=g({__name:"VPNavBarSearchButton",props:{placeholder:{}},setup(s){return(e,t)=>(a(),i("button",Ma,[c("span",Ca,[Ia,c("span",Na,w(e.placeholder),1)]),Ta]))}});const Ba={id:"local-search"},Aa={key:1,id:"docsearch"},xa=g({__name:"VPNavBarSearch",setup(s){const e=()=>null,t=Ke(()=>qe(()=>import("./VPAlgoliaSearchBox.c3e2c39d.js"),["assets/chunks/VPAlgoliaSearchBox.c3e2c39d.js","assets/chunks/framework.b637c96f.js"])),{theme:n,localeIndex:o}=P(),r=L(!1),d=L(!1),p=y(()=>{var $,C,z,q,ke,ye,Pe;const V=(($=n.value.search)==null?void 0:$.options)??n.value.algolia;return((ke=(q=(z=(C=V==null?void 0:V.locales)==null?void 0:C[o.value])==null?void 0:z.translations)==null?void 0:q.button)==null?void 0:ke.buttonText)||((Pe=(ye=V==null?void 0:V.translations)==null?void 0:ye.button)==null?void 0:Pe.buttonText)||"Search"}),v=()=>{const V="VPAlgoliaPreconnect";(window.requestIdleCallback||setTimeout)(()=>{var z;const C=document.createElement("link");C.id=V,C.rel="preconnect",C.href=`https://${(((z=n.value.search)==null?void 0:z.options)??n.value.algolia).appId}-dsn.algolia.net`,C.crossOrigin="",document.head.appendChild(C)})};O(()=>{v();const V=C=>{(C.key.toLowerCase()==="k"&&(C.metaKey||C.ctrlKey)||!T(C)&&C.key==="/")&&(C.preventDefault(),k(),$())},$=()=>{window.removeEventListener("keydown",V)};window.addEventListener("keydown",V),ee($)});function k(){r.value||(r.value=!0,setTimeout(N,16))}function N(){const V=new Event("keydown");V.key="k",V.metaKey=!0,window.dispatchEvent(V),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||N()},16)}function T(V){const $=V.target,C=$.tagName;return $.isContentEditable||C==="INPUT"||C==="SELECT"||C==="TEXTAREA"}const A=L(!1),I=L("'Meta'");O(()=>{I.value=/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?"'⌘'":"'Ctrl'"});const B="algolia";return(V,$)=>{var C;return a(),i("div",{class:"VPNavBarSearch",style:Me({"--vp-meta-key":I.value})},[l(B)==="local"?(a(),i(S,{key:0},[A.value?(a(),b(l(e),{key:0,placeholder:p.value,onClose:$[0]||($[0]=z=>A.value=!1)},null,8,["placeholder"])):f("",!0),c("div",Ba,[h(we,{placeholder:p.value,onClick:$[1]||($[1]=z=>A.value=!0)},null,8,["placeholder"])])],64)):l(B)==="algolia"?(a(),i(S,{key:1},[r.value?(a(),b(l(t),{key:0,algolia:((C=l(n).search)==null?void 0:C.options)??l(n).algolia,onVnodeBeforeMount:$[2]||($[2]=z=>d.value=!0)},null,8,["algolia"])):f("",!0),d.value?f("",!0):(a(),i("div",Aa,[h(we,{placeholder:p.value,onClick:k},null,8,["placeholder"])]))],64)):f("",!0)],4)}}});const Ha=g({__name:"VPNavBarSocialLinks",setup(s){const{theme:e}=P();return(t,n)=>l(e).socialLinks?(a(),b($e,{key:0,class:"VPNavBarSocialLinks",links:l(e).socialLinks},null,8,["links"])):f("",!0)}});const za=m(Ha,[["__scopeId","data-v-ef6192dc"]]),Ea=["href"],Da=g({__name:"VPNavBarTitle",setup(s){const{site:e,theme:t}=P(),{hasSidebar:n}=F(),{currentLang:o}=X();return(r,d)=>(a(),i("div",{class:M(["VPNavBarTitle",{"has-sidebar":l(n)}])},[c("a",{class:"title",href:l(t).logoLink??l(Y)(l(o).link)},[u(r.$slots,"nav-bar-title-before",{},void 0,!0),l(t).logo?(a(),b(fe,{key:0,class:"logo",image:l(t).logo},null,8,["image"])):f("",!0),l(t).siteTitle?(a(),i(S,{key:1},[H(w(l(t).siteTitle),1)],64)):l(t).siteTitle===void 0?(a(),i(S,{key:2},[H(w(l(e).title),1)],64)):f("",!0),u(r.$slots,"nav-bar-title-after",{},void 0,!0)],8,Ea)],2))}});const Fa=m(Da,[["__scopeId","data-v-2973dbb4"]]),Oa={},Ga={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ua=c("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),Ra=c("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),ja=[Ua,Ra];function Ka(s,e){return a(),i("svg",Ga,ja)}const ze=m(Oa,[["render",Ka]]),qa={class:"items"},Wa={class:"title"},Ya=g({__name:"VPNavBarTranslations",setup(s){const{theme:e}=P(),{localeLinks:t,currentLang:n}=X({correspondingLink:!0});return(o,r)=>l(t).length&&l(n).label?(a(),b(be,{key:0,class:"VPNavBarTranslations",icon:ze,label:l(e).langMenuLabel||"Change language"},{default:_(()=>[c("div",qa,[c("p",Wa,w(l(n).label),1),(a(!0),i(S,null,x(l(t),d=>(a(),b(ne,{key:d.link,item:d},null,8,["item"]))),128))])]),_:1},8,["label"])):f("",!0)}});const Ja=m(Ya,[["__scopeId","data-v-ff4524ae"]]),Xa=s=>(E("data-v-f1abbc6e"),s=s(),D(),s),Za={class:"container"},Qa={class:"title"},el={class:"content"},tl=Xa(()=>c("div",{class:"curtain"},null,-1)),sl={class:"content-body"},nl=g({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(s){const{y:e}=Ce(),{hasSidebar:t}=F(),{frontmatter:n}=P(),o=L({});return Le(()=>{o.value={"has-sidebar":t.value,top:n.value.layout==="home"&&e.value===0}}),(r,d)=>(a(),i("div",{class:M(["VPNavBar",o.value])},[c("div",Za,[c("div",Qa,[h(Fa,null,{"nav-bar-title-before":_(()=>[u(r.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":_(()=>[u(r.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),c("div",el,[tl,c("div",sl,[u(r.$slots,"nav-bar-content-before",{},void 0,!0),h(xa,{class:"search"}),h(Sa,{class:"menu"}),h(Ja,{class:"translations"}),h(bo,{class:"appearance"}),h(za,{class:"social-links"}),h(_a,{class:"extra"}),u(r.$slots,"nav-bar-content-after",{},void 0,!0),h(ga,{class:"hamburger",active:r.isScreenOpen,onClick:d[0]||(d[0]=p=>r.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const ol=m(nl,[["__scopeId","data-v-f1abbc6e"]]),al={key:0,class:"VPNavScreenAppearance"},ll={class:"text"},rl=g({__name:"VPNavScreenAppearance",setup(s){const{site:e,theme:t}=P();return(n,o)=>l(e).appearance?(a(),i("div",al,[c("p",ll,w(l(t).darkModeSwitchLabel||"Appearance"),1),h(me)])):f("",!0)}});const il=m(rl,[["__scopeId","data-v-0dc5cf49"]]),cl=g({__name:"VPNavScreenMenuLink",props:{item:{}},setup(s){const e=se("close-screen");return(t,n)=>(a(),b(G,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:l(e)},{default:_(()=>[H(w(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const ul=m(cl,[["__scopeId","data-v-fe523e3d"]]),dl={},_l={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},vl=c("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),pl=[vl];function hl(s,e){return a(),i("svg",_l,pl)}const fl=m(dl,[["render",hl]]),ml=g({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(s){const e=se("close-screen");return(t,n)=>(a(),b(G,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:l(e)},{default:_(()=>[H(w(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const Ee=m(ml,[["__scopeId","data-v-aea78dd1"]]),gl={class:"VPNavScreenMenuGroupSection"},bl={key:0,class:"title"},$l=g({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(s){return(e,t)=>(a(),i("div",gl,[e.text?(a(),i("p",bl,w(e.text),1)):f("",!0),(a(!0),i(S,null,x(e.items,n=>(a(),b(Ee,{key:n.text,item:n},null,8,["item"]))),128))]))}});const kl=m($l,[["__scopeId","data-v-f60dbfa7"]]),yl=["aria-controls","aria-expanded"],Pl={class:"button-text"},Vl=["id"],wl={key:1,class:"group"},Ll=g({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(s){const e=s,t=L(!1),n=y(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function o(){t.value=!t.value}return(r,d)=>(a(),i("div",{class:M(["VPNavScreenMenuGroup",{open:t.value}])},[c("button",{class:"button","aria-controls":n.value,"aria-expanded":t.value,onClick:o},[c("span",Pl,w(r.text),1),h(fl,{class:"button-icon"})],8,yl),c("div",{id:n.value,class:"items"},[(a(!0),i(S,null,x(r.items,p=>(a(),i(S,{key:p.text},["link"in p?(a(),i("div",{key:p.text,class:"item"},[h(Ee,{item:p},null,8,["item"])])):(a(),i("div",wl,[h(kl,{text:p.text,items:p.items},null,8,["text","items"])]))],64))),128))],8,Vl)],2))}});const Sl=m(Ll,[["__scopeId","data-v-c2c554ed"]]),Ml={key:0,class:"VPNavScreenMenu"},Cl=g({__name:"VPNavScreenMenu",setup(s){const{theme:e}=P();return(t,n)=>l(e).nav?(a(),i("nav",Ml,[(a(!0),i(S,null,x(l(e).nav,o=>(a(),i(S,{key:o.text},["link"in o?(a(),b(ul,{key:0,item:o},null,8,["item"])):(a(),b(Sl,{key:1,text:o.text||"",items:o.items},null,8,["text","items"]))],64))),128))])):f("",!0)}}),Il=g({__name:"VPNavScreenSocialLinks",setup(s){const{theme:e}=P();return(t,n)=>l(e).socialLinks?(a(),b($e,{key:0,class:"VPNavScreenSocialLinks",links:l(e).socialLinks},null,8,["links"])):f("",!0)}}),Nl={class:"list"},Tl=g({__name:"VPNavScreenTranslations",setup(s){const{localeLinks:e,currentLang:t}=X({correspondingLink:!0}),n=L(!1);function o(){n.value=!n.value}return(r,d)=>l(e).length&&l(t).label?(a(),i("div",{key:0,class:M(["VPNavScreenTranslations",{open:n.value}])},[c("button",{class:"title",onClick:o},[h(ze,{class:"icon lang"}),H(" "+w(l(t).label)+" ",1),h(He,{class:"icon chevron"})]),c("ul",Nl,[(a(!0),i(S,null,x(l(e),p=>(a(),i("li",{key:p.link,class:"item"},[h(G,{class:"link",href:p.link},{default:_(()=>[H(w(p.text),1)]),_:2},1032,["href"])]))),128))])],2)):f("",!0)}});const Bl=m(Tl,[["__scopeId","data-v-41505286"]]),Al={class:"container"},xl=g({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(s){const e=L(null),t=Ie(J?document.body:null);return(n,o)=>(a(),b(ie,{name:"fade",onEnter:o[0]||(o[0]=r=>t.value=!0),onAfterLeave:o[1]||(o[1]=r=>t.value=!1)},{default:_(()=>[n.open?(a(),i("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[c("div",Al,[u(n.$slots,"nav-screen-content-before",{},void 0,!0),h(Cl,{class:"menu"}),h(Bl,{class:"translations"}),h(il,{class:"appearance"}),h(Il,{class:"social-links"}),u(n.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):f("",!0)]),_:3}))}});const Hl=m(xl,[["__scopeId","data-v-57cce842"]]),zl={class:"VPNav"},El=g({__name:"VPNav",setup(s){const{isScreenOpen:e,closeScreen:t,toggleScreen:n}=Jn();return Ne("close-screen",t),(o,r)=>(a(),i("header",zl,[h(ol,{"is-screen-open":l(e),onToggleScreen:l(n)},{"nav-bar-title-before":_(()=>[u(o.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":_(()=>[u(o.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":_(()=>[u(o.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":_(()=>[u(o.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(Hl,{open:l(e)},{"nav-screen-content-before":_(()=>[u(o.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":_(()=>[u(o.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])]))}});const Dl=m(El,[["__scopeId","data-v-5bdc5df3"]]),Fl=s=>(E("data-v-bd01e0d5"),s=s(),D(),s),Ol=["role","tabindex"],Gl=Fl(()=>c("div",{class:"indicator"},null,-1)),Ul=["onKeydown"],Rl={key:1,class:"items"},jl=g({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(s){const e=s,{collapsed:t,collapsible:n,isLink:o,isActiveLink:r,hasActiveLink:d,hasChildren:p,toggle:v}=gt(y(()=>e.item)),k=y(()=>p.value?"section":"div"),N=y(()=>o.value?"a":"div"),T=y(()=>p.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),A=y(()=>o.value?void 0:"button"),I=y(()=>[[`level-${e.depth}`],{collapsible:n.value},{collapsed:t.value},{"is-link":o.value},{"is-active":r.value},{"has-active":d.value}]);function B($){"key"in $&&$.key!=="Enter"||!e.item.link&&v()}function V(){e.item.link&&v()}return($,C)=>{const z=j("VPSidebarItem",!0);return a(),b(U(k.value),{class:M(["VPSidebarItem",I.value])},{default:_(()=>[$.item.text?(a(),i("div",Z({key:0,class:"item",role:A.value},Ye($.item.items?{click:B,keydown:B}:{},!0),{tabindex:$.item.items&&0}),[Gl,$.item.link?(a(),b(G,{key:0,tag:N.value,class:"link",href:$.item.link,rel:$.item.rel,target:$.item.target},{default:_(()=>[(a(),b(U(T.value),{class:"text",innerHTML:$.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),b(U(T.value),{key:1,class:"text",innerHTML:$.item.text},null,8,["innerHTML"])),$.item.collapsed!=null?(a(),i("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:V,onKeydown:We(V,["enter"]),tabindex:"0"},[h(he,{class:"caret-icon"})],40,Ul)):f("",!0)],16,Ol)):f("",!0),$.item.items&&$.item.items.length?(a(),i("div",Rl,[$.depth<5?(a(!0),i(S,{key:0},x($.item.items,q=>(a(),b(z,{key:q.text,item:q,depth:$.depth+1},null,8,["item","depth"]))),128)):f("",!0)])):f("",!0)]),_:1},8,["class"])}}});const Kl=m(jl,[["__scopeId","data-v-bd01e0d5"]]),De=s=>(E("data-v-ee2efba5"),s=s(),D(),s),ql=De(()=>c("div",{class:"curtain"},null,-1)),Wl={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Yl=De(()=>c("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Jl=g({__name:"VPSidebar",props:{open:{type:Boolean}},setup(s){const e=s,{sidebarGroups:t,hasSidebar:n}=F(),o=L(null),r=Ie(J?document.body:null);return R([e,o],()=>{var d;e.open?(r.value=!0,(d=o.value)==null||d.focus()):r.value=!1},{immediate:!0,flush:"post"}),(d,p)=>l(n)?(a(),i("aside",{key:0,class:M(["VPSidebar",{open:d.open}]),ref_key:"navEl",ref:o,onClick:p[0]||(p[0]=Je(()=>{},["stop"]))},[ql,c("nav",Wl,[Yl,u(d.$slots,"sidebar-nav-before",{},void 0,!0),(a(!0),i(S,null,x(l(t),v=>(a(),i("div",{key:v.text,class:"group"},[h(Kl,{item:v,depth:0},null,8,["item"])]))),128)),u(d.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):f("",!0)}});const Xl=m(Jl,[["__scopeId","data-v-ee2efba5"]]),Zl=g({__name:"VPSkipLink",setup(s){const e=te(),t=L();R(()=>e.path,()=>t.value.focus());function n({target:o}){const r=document.getElementById(decodeURIComponent(o.hash).slice(1));if(r){const d=()=>{r.removeAttribute("tabindex"),r.removeEventListener("blur",d)};r.setAttribute("tabindex","-1"),r.addEventListener("blur",d),r.focus(),window.scrollTo(0,0)}}return(o,r)=>(a(),i(S,null,[c("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),c("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:n}," Skip to content ")],64))}});const Ql=m(Zl,[["__scopeId","data-v-c8291ffa"]]),er=g({__name:"Layout",setup(s){const{isOpen:e,open:t,close:n}=F(),o=te();R(()=>o.path,n),mt(e,n);const{frontmatter:r}=P(),d=Xe(),p=y(()=>!!d["home-hero-image"]);return Ne("hero-image-slot-exists",p),(v,k)=>{const N=j("Content");return l(r).layout!==!1?(a(),i("div",{key:0,class:M(["Layout",l(r).pageClass])},[u(v.$slots,"layout-top",{},void 0,!0),h(Ql),h(st,{class:"backdrop",show:l(e),onClick:l(n)},null,8,["show","onClick"]),l(r).navbar!==!1?(a(),b(Dl,{key:0},{"nav-bar-title-before":_(()=>[u(v.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":_(()=>[u(v.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":_(()=>[u(v.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":_(()=>[u(v.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":_(()=>[u(v.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":_(()=>[u(v.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3})):f("",!0),h(Yn,{open:l(e),onOpenMenu:l(t)},null,8,["open","onOpenMenu"]),h(Xl,{open:l(e)},{"sidebar-nav-before":_(()=>[u(v.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":_(()=>[u(v.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(Sn,null,{"page-top":_(()=>[u(v.$slots,"page-top",{},void 0,!0)]),"page-bottom":_(()=>[u(v.$slots,"page-bottom",{},void 0,!0)]),"not-found":_(()=>[u(v.$slots,"not-found",{},void 0,!0)]),"home-hero-before":_(()=>[u(v.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":_(()=>[u(v.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":_(()=>[u(v.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":_(()=>[u(v.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":_(()=>[u(v.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":_(()=>[u(v.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":_(()=>[u(v.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":_(()=>[u(v.$slots,"doc-before",{},void 0,!0)]),"doc-after":_(()=>[u(v.$slots,"doc-after",{},void 0,!0)]),"doc-top":_(()=>[u(v.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":_(()=>[u(v.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":_(()=>[u(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":_(()=>[u(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":_(()=>[u(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":_(()=>[u(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":_(()=>[u(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":_(()=>[u(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(Tn),u(v.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),b(N,{key:1}))}}});const tr=m(er,[["__scopeId","data-v-4064354f"]]);const nr={Layout:tr,enhanceApp:({app:s})=>{s.component("Badge",Qe)}};export{nr as t,P as u}; diff --git a/docs/assets/chunks/theme.b4614097.js b/docs/assets/chunks/theme.b4614097.js new file mode 100644 index 0000000..f3098f8 --- /dev/null +++ b/docs/assets/chunks/theme.b4614097.js @@ -0,0 +1 @@ +import{d as g,o as a,c as i,r as u,n as N,a as x,t as L,_ as m,b as $,w as v,T as ue,e as f,u as Ee,i as De,f as de,g as y,h as S,j as U,k as c,l as r,p as z,m as E,q as G,s as q,v as re,x as R,y as te,z as se,A as we,B as Fe,C as j,F as C,D as A,E as _e,G as W,H as h,I as O,J as Le,K as ne,L as Z,M as oe,N as Oe,O as Ge,P as Se,Q as Ue,R as Re,S as je,U as qe,V as Me,W as Ce,X as Ke,Y as We,Z as Ye,$ as Je}from"./framework.b40c9ff3.js";const Xe=g({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(s){return(e,t)=>(a(),i("span",{class:N(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[x(L(e.text),1)],!0)],2))}});const Ze=m(Xe,[["__scopeId","data-v-ea5b2908"]]),Qe={key:0,class:"VPBackdrop"},et=g({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(s){return(e,t)=>(a(),$(ue,{name:"fade"},{default:v(()=>[e.show?(a(),i("div",Qe)):f("",!0)]),_:1}))}});const tt=m(et,[["__scopeId","data-v-54a304ca"]]),P=Ee;function st(s,e){let t,n=!1;return()=>{t&&clearTimeout(t),n?t=setTimeout(s,e):(s(),(n=!0)&&setTimeout(()=>n=!1,e))}}function ie(s){return/^\//.test(s)?s:`/${s}`}function Y(s){if(De(s))return s;const{site:e}=P(),{pathname:t,search:n,hash:o}=new URL(s,"http://a.com"),l=t.endsWith("/")||t.endsWith(".html")?s:s.replace(/(?:(^\.+)\/)?.*$/,`$1${t.replace(/(\.md)?$/,e.value.cleanUrls?"":".html")}${n}${o}`);return de(l)}function J({removeCurrent:s=!0,correspondingLink:e=!1}={}){const{site:t,localeIndex:n,page:o,theme:l}=P(),d=y(()=>{var _,k;return{label:(_=t.value.locales[n.value])==null?void 0:_.label,link:((k=t.value.locales[n.value])==null?void 0:k.link)||(n.value==="root"?"/":`/${n.value}/`)}});return{localeLinks:y(()=>Object.entries(t.value.locales).flatMap(([_,k])=>s&&d.value.label===k.label?[]:{text:k.label,link:nt(k.link||(_==="root"?"/":`/${_}/`),l.value.i18nRouting!==!1&&e,o.value.relativePath.slice(d.value.link.length-1),!t.value.cleanUrls)})),currentLang:d}}function nt(s,e,t,n){return e?s.replace(/\/$/,"")+ie(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,n?".html":"")):s}const ot=s=>(z("data-v-b9c0c15a"),s=s(),E(),s),at={class:"NotFound"},lt={class:"code"},rt={class:"title"},it=ot(()=>c("div",{class:"divider"},null,-1)),ct={class:"quote"},ut={class:"action"},dt=["href","aria-label"],_t=g({__name:"NotFound",setup(s){const{site:e,theme:t}=P(),{localeLinks:n}=J({removeCurrent:!1}),o=S("/");return U(()=>{var d;const l=window.location.pathname.replace(e.value.base,"").replace(/(^.*?\/).*$/,"/$1");n.value.length&&(o.value=((d=n.value.find(({link:p})=>p.startsWith(l)))==null?void 0:d.link)||n.value[0].link)}),(l,d)=>{var p,_,k,M,T;return a(),i("div",at,[c("p",lt,L(((p=r(t).notFound)==null?void 0:p.code)??"404"),1),c("h1",rt,L(((_=r(t).notFound)==null?void 0:_.title)??"PAGE NOT FOUND"),1),it,c("blockquote",ct,L(((k=r(t).notFound)==null?void 0:k.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),c("div",ut,[c("a",{class:"link",href:r(de)(o.value),"aria-label":((M=r(t).notFound)==null?void 0:M.linkLabel)??"go to home"},L(((T=r(t).notFound)==null?void 0:T.linkText)??"Take me home"),9,dt)])])}}});const vt=m(_t,[["__scopeId","data-v-b9c0c15a"]]);function Ne(s,e){if(Array.isArray(s))return Q(s);if(s==null)return[];e=ie(e);const t=Object.keys(s).sort((o,l)=>l.split("/").length-o.split("/").length).find(o=>e.startsWith(ie(o))),n=t?s[t]:[];return Array.isArray(n)?Q(n):Q(n.items,n.base)}function pt(s){const e=[];let t=0;for(const n in s){const o=s[n];if(o.items){t=e.push(o);continue}e[t]||e.push({items:[]}),e[t].items.push(o)}return e}function ht(s){const e=[];function t(n){for(const o of n)o.text&&o.link&&e.push({text:o.text,link:o.link,docFooterText:o.docFooterText}),o.items&&t(o.items)}return t(s),e}function ce(s,e){return Array.isArray(e)?e.some(t=>ce(s,t)):G(s,e.link)?!0:e.items?ce(s,e.items):!1}function Q(s,e){return[...s].map(t=>{const n={...t},o=n.base||e;return o&&n.link&&(n.link=o+n.link),n.items&&(n.items=Q(n.items,o)),n})}function D(){const{frontmatter:s,page:e,theme:t}=P(),n=re("(min-width: 960px)"),o=S(!1),l=y(()=>{const w=t.value.sidebar,b=e.value.relativePath;return w?Ne(w,b):[]}),d=S(l.value);R(l,(w,b)=>{JSON.stringify(w)!==JSON.stringify(b)&&(d.value=l.value)});const p=y(()=>s.value.sidebar!==!1&&d.value.length>0&&s.value.layout!=="home"),_=y(()=>k?s.value.aside==null?t.value.aside==="left":s.value.aside==="left":!1),k=y(()=>s.value.layout==="home"?!1:s.value.aside!=null?!!s.value.aside:t.value.aside!==!1),M=y(()=>p.value&&n.value),T=y(()=>p.value?pt(d.value):[]);function B(){o.value=!0}function I(){o.value=!1}function V(){o.value?I():B()}return{isOpen:o,sidebar:d,sidebarGroups:T,hasSidebar:p,hasAside:k,leftAside:_,isSidebarEnabled:M,open:B,close:I,toggle:V}}function ft(s,e){let t;te(()=>{t=s.value?document.activeElement:void 0}),U(()=>{window.addEventListener("keyup",n)}),se(()=>{window.removeEventListener("keyup",n)});function n(o){o.key==="Escape"&&s.value&&(e(),t==null||t.focus())}}const Ie=S(q?location.hash:"");q&&window.addEventListener("hashchange",()=>{Ie.value=location.hash});function mt(s){const{page:e}=P(),t=S(!1),n=y(()=>s.value.collapsed!=null),o=y(()=>!!s.value.link),l=S(!1),d=()=>{l.value=G(e.value.relativePath,s.value.link)};R([e,s,Ie],d),U(d);const p=y(()=>l.value?!0:s.value.items?ce(e.value.relativePath,s.value.items):!1),_=y(()=>!!(s.value.items&&s.value.items.length));te(()=>{t.value=!!(n.value&&s.value.collapsed)}),we(()=>{(l.value||p.value)&&(t.value=!1)});function k(){n.value&&(t.value=!t.value)}return{collapsed:t,collapsible:n,isLink:o,isActiveLink:l,hasActiveLink:p,hasChildren:_,toggle:k}}function gt(){const{hasSidebar:s}=D(),e=re("(min-width: 960px)"),t=re("(min-width: 1280px)");return{isAsideEnabled:y(()=>!t.value&&!e.value?!1:s.value?t.value:e.value)}}const bt=71;function ve(s){return typeof s.outline=="object"&&!Array.isArray(s.outline)&&s.outline.label||s.outlineTitle||"On this page"}function pe(s){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const n=Number(t.tagName[1]);return{title:$t(t),link:"#"+t.id,level:n}});return kt(e,s)}function $t(s){let e="";for(const t of s.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function kt(s,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[n,o]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;s=s.filter(d=>d.level>=n&&d.level<=o);const l=[];e:for(let d=0;d=0;_--){const k=s[_];if(k.level{requestAnimationFrame(l),window.addEventListener("scroll",n)}),Fe(()=>{d(location.hash)}),se(()=>{window.removeEventListener("scroll",n)});function l(){if(!t.value)return;const p=[].slice.call(s.value.querySelectorAll(".outline-link")),_=[].slice.call(document.querySelectorAll(".content .header-anchor")).filter(I=>p.some(V=>V.hash===I.hash&&I.offsetParent!==null)),k=window.scrollY,M=window.innerHeight,T=document.body.offsetHeight,B=Math.abs(k+M-T)<1;if(_.length&&B){d(_[_.length-1].hash);return}for(let I=0;I<_.length;I++){const V=_[I],w=_[I+1],[b,H]=Pt(I,V,w);if(b){d(H);return}}}function d(p){o&&o.classList.remove("active"),p==null?o=null:o=s.value.querySelector(`a[href="${decodeURIComponent(p)}"]`);const _=o;_?(_.classList.add("active"),e.value.style.top=_.offsetTop+33+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function Pe(s){return s.parentElement.offsetTop-bt}function Pt(s,e,t){const n=window.scrollY;return s===0&&n===0?[!0,null]:n{const o=j("VPDocOutlineItem",!0);return a(),i("ul",{class:N(t.root?"root":"nested")},[(a(!0),i(C,null,A(t.headers,({children:l,link:d,title:p})=>(a(),i("li",null,[c("a",{class:"outline-link",href:d,onClick:e,title:p},L(p),9,Vt),l!=null&&l.length?(a(),$(o,{key:0,headers:l},null,8,["headers"])):f("",!0)]))),256))],2)}}});const he=m(wt,[["__scopeId","data-v-463da30f"]]),Lt=s=>(z("data-v-3a6c4994"),s=s(),E(),s),St={class:"content"},Mt={class:"outline-title",role:"heading","aria-level":"2"},Ct={"aria-labelledby":"doc-outline-aria-label"},Nt=Lt(()=>c("span",{class:"visually-hidden",id:"doc-outline-aria-label"}," Table of Contents for current page ",-1)),It=g({__name:"VPDocAsideOutline",setup(s){const{frontmatter:e,theme:t}=P(),n=_e([]);W(()=>{n.value=pe(e.value.outline??t.value.outline)});const o=S(),l=S();return yt(o,l),(d,p)=>(a(),i("div",{class:N(["VPDocAsideOutline",{"has-outline":n.value.length>0}]),ref_key:"container",ref:o,role:"navigation"},[c("div",St,[c("div",{class:"outline-marker",ref_key:"marker",ref:l},null,512),c("div",Mt,L(r(ve)(r(t))),1),c("nav",Ct,[Nt,h(he,{headers:n.value,root:!0},null,8,["headers"])])])],2))}});const Tt=m(It,[["__scopeId","data-v-3a6c4994"]]),Bt={class:"VPDocAsideCarbonAds"},At=g({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(s){const e=()=>null;return(t,n)=>(a(),i("div",Bt,[h(r(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),xt=s=>(z("data-v-cb998dce"),s=s(),E(),s),Ht={class:"VPDocAside"},zt=xt(()=>c("div",{class:"spacer"},null,-1)),Et=g({__name:"VPDocAside",setup(s){const{theme:e}=P();return(t,n)=>(a(),i("div",Ht,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),h(Tt),u(t.$slots,"aside-outline-after",{},void 0,!0),zt,u(t.$slots,"aside-ads-before",{},void 0,!0),r(e).carbonAds?(a(),$(At,{key:0,"carbon-ads":r(e).carbonAds},null,8,["carbon-ads"])):f("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}});const Dt=m(Et,[["__scopeId","data-v-cb998dce"]]);function Ft(){const{theme:s,page:e}=P();return y(()=>{const{text:t="Edit this page",pattern:n=""}=s.value.editLink||{};let o;return typeof n=="function"?o=n(e.value):o=n.replace(/:path/g,e.value.filePath),{url:o,text:t}})}function Ot(){const{page:s,theme:e,frontmatter:t}=P();return y(()=>{var _,k,M,T,B,I,V,w;const n=Ne(e.value.sidebar,s.value.relativePath),o=ht(n),l=o.findIndex(b=>G(s.value.relativePath,b.link)),d=((_=e.value.docFooter)==null?void 0:_.prev)===!1&&!t.value.prev||t.value.prev===!1,p=((k=e.value.docFooter)==null?void 0:k.next)===!1&&!t.value.next||t.value.next===!1;return{prev:d?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((M=o[l-1])==null?void 0:M.docFooterText)??((T=o[l-1])==null?void 0:T.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((B=o[l-1])==null?void 0:B.link)},next:p?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((I=o[l+1])==null?void 0:I.docFooterText)??((V=o[l+1])==null?void 0:V.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((w=o[l+1])==null?void 0:w.link)}}})}const Gt={},Ut={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Rt=c("path",{d:"M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"},null,-1),jt=c("path",{d:"M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"},null,-1),qt=[Rt,jt];function Kt(s,e){return a(),i("svg",Ut,qt)}const Wt=m(Gt,[["render",Kt]]),F=g({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(s){const e=s,t=y(()=>e.tag??(e.href?"a":"span")),n=y(()=>e.href&&Le.test(e.href));return(o,l)=>(a(),$(O(t.value),{class:N(["VPLink",{link:o.href,"vp-external-link-icon":n.value,"no-icon":o.noIcon}]),href:o.href?r(Y)(o.href):void 0,target:o.target??(n.value?"_blank":void 0),rel:o.rel??(n.value?"noreferrer":void 0)},{default:v(()=>[u(o.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Yt={class:"VPLastUpdated"},Jt=["datetime"],Xt=g({__name:"VPDocFooterLastUpdated",setup(s){const{theme:e,page:t,frontmatter:n,lang:o}=P(),l=y(()=>new Date(n.value.lastUpdated??t.value.lastUpdated)),d=y(()=>l.value.toISOString()),p=S("");return U(()=>{te(()=>{var _,k,M;p.value=new Intl.DateTimeFormat((k=(_=e.value.lastUpdated)==null?void 0:_.formatOptions)!=null&&k.forceLocale?o.value:void 0,((M=e.value.lastUpdated)==null?void 0:M.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(l.value)})}),(_,k)=>{var M;return a(),i("p",Yt,[x(L(((M=r(e).lastUpdated)==null?void 0:M.text)||r(e).lastUpdatedText||"Last updated")+": ",1),c("time",{datetime:d.value},L(p.value),9,Jt)])}}});const Zt=m(Xt,[["__scopeId","data-v-19a7ae4e"]]),Qt={key:0,class:"VPDocFooter"},es={key:0,class:"edit-info"},ts={key:0,class:"edit-link"},ss={key:1,class:"last-updated"},ns={key:1,class:"prev-next"},os={class:"pager"},as=["href"],ls=["innerHTML"],rs=["innerHTML"],is={class:"pager"},cs=["href"],us=["innerHTML"],ds=["innerHTML"],_s=g({__name:"VPDocFooter",setup(s){const{theme:e,page:t,frontmatter:n}=P(),o=Ft(),l=Ot(),d=y(()=>e.value.editLink&&n.value.editLink!==!1),p=y(()=>t.value.lastUpdated&&n.value.lastUpdated!==!1),_=y(()=>d.value||p.value||l.value.prev||l.value.next);return(k,M)=>{var T,B,I,V,w,b;return _.value?(a(),i("footer",Qt,[u(k.$slots,"doc-footer-before",{},void 0,!0),d.value||p.value?(a(),i("div",es,[d.value?(a(),i("div",ts,[h(F,{class:"edit-link-button",href:r(o).url,"no-icon":!0},{default:v(()=>[h(Wt,{class:"edit-link-icon","aria-label":"edit icon"}),x(" "+L(r(o).text),1)]),_:1},8,["href"])])):f("",!0),p.value?(a(),i("div",ss,[h(Zt)])):f("",!0)])):f("",!0),(T=r(l).prev)!=null&&T.link||(B=r(l).next)!=null&&B.link?(a(),i("nav",ns,[c("div",os,[(I=r(l).prev)!=null&&I.link?(a(),i("a",{key:0,class:"pager-link prev",href:r(Y)(r(l).prev.link)},[c("span",{class:"desc",innerHTML:((V=r(e).docFooter)==null?void 0:V.prev)||"Previous page"},null,8,ls),c("span",{class:"title",innerHTML:r(l).prev.text},null,8,rs)],8,as)):f("",!0)]),c("div",is,[(w=r(l).next)!=null&&w.link?(a(),i("a",{key:0,class:"pager-link next",href:r(Y)(r(l).next.link)},[c("span",{class:"desc",innerHTML:((b=r(e).docFooter)==null?void 0:b.next)||"Next page"},null,8,us),c("span",{class:"title",innerHTML:r(l).next.text},null,8,ds)],8,cs)):f("",!0)])])):f("",!0)])):f("",!0)}}});const vs=m(_s,[["__scopeId","data-v-a2d931e4"]]),ps={},hs={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},fs=c("path",{d:"M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"},null,-1),ms=[fs];function gs(s,e){return a(),i("svg",hs,ms)}const fe=m(ps,[["render",gs]]),bs={key:0,class:"VPDocOutlineDropdown"},$s={key:0,class:"items"},ks=g({__name:"VPDocOutlineDropdown",setup(s){const{frontmatter:e,theme:t}=P(),n=S(!1);W(()=>{n.value=!1});const o=_e([]);return W(()=>{o.value=pe(e.value.outline??t.value.outline)}),(l,d)=>o.value.length>0?(a(),i("div",bs,[c("button",{onClick:d[0]||(d[0]=p=>n.value=!n.value),class:N({open:n.value})},[x(L(r(ve)(r(t)))+" ",1),h(fe,{class:"icon"})],2),n.value?(a(),i("div",$s,[h(he,{headers:o.value},null,8,["headers"])])):f("",!0)])):f("",!0)}});const ys=m(ks,[["__scopeId","data-v-95bb0785"]]),Ps=s=>(z("data-v-a3c25e27"),s=s(),E(),s),Vs={class:"container"},ws=Ps(()=>c("div",{class:"aside-curtain"},null,-1)),Ls={class:"aside-container"},Ss={class:"aside-content"},Ms={class:"content"},Cs={class:"content-container"},Ns={class:"main"},Is=g({__name:"VPDoc",setup(s){const{theme:e}=P(),t=ne(),{hasSidebar:n,hasAside:o,leftAside:l}=D(),d=y(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(p,_)=>{const k=j("Content");return a(),i("div",{class:N(["VPDoc",{"has-sidebar":r(n),"has-aside":r(o)}])},[u(p.$slots,"doc-top",{},void 0,!0),c("div",Vs,[r(o)?(a(),i("div",{key:0,class:N(["aside",{"left-aside":r(l)}])},[ws,c("div",Ls,[c("div",Ss,[h(Dt,null,{"aside-top":v(()=>[u(p.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[u(p.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[u(p.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(p.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(p.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(p.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):f("",!0),c("div",Ms,[c("div",Cs,[u(p.$slots,"doc-before",{},void 0,!0),h(ys),c("main",Ns,[h(k,{class:N(["vp-doc",[d.value,r(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),h(vs,null,{"doc-footer-before":v(()=>[u(p.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(p.$slots,"doc-after",{},void 0,!0)])])]),u(p.$slots,"doc-bottom",{},void 0,!0)],2)}}});const Ts=m(Is,[["__scopeId","data-v-a3c25e27"]]),Bs=g({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{}},setup(s){const e=s,t=y(()=>e.href&&Le.test(e.href)),n=y(()=>e.tag||e.href?"a":"button");return(o,l)=>(a(),$(O(n.value),{class:N(["VPButton",[o.size,o.theme]]),href:o.href?r(Y)(o.href):void 0,target:t.value?"_blank":void 0,rel:t.value?"noreferrer":void 0},{default:v(()=>[x(L(o.text),1)]),_:1},8,["class","href","target","rel"]))}});const As=m(Bs,[["__scopeId","data-v-1e76fe75"]]),xs=["src","alt"],Hs=g({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(s){return(e,t)=>{const n=j("VPImage",!0);return e.image?(a(),i(C,{key:0},[typeof e.image=="string"||"src"in e.image?(a(),i("img",Z({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:r(de)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,xs)):(a(),i(C,{key:1},[h(n,Z({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),h(n,Z({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):f("",!0)}}});const ee=m(Hs,[["__scopeId","data-v-ab19afbb"]]),zs=s=>(z("data-v-5a3e9999"),s=s(),E(),s),Es={class:"container"},Ds={class:"main"},Fs={key:0,class:"name"},Os=["innerHTML"],Gs=["innerHTML"],Us=["innerHTML"],Rs={key:0,class:"actions"},js={key:0,class:"image"},qs={class:"image-container"},Ks=zs(()=>c("div",{class:"image-bg"},null,-1)),Ws=g({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(s){const e=oe("hero-image-slot-exists");return(t,n)=>(a(),i("div",{class:N(["VPHero",{"has-image":t.image||r(e)}])},[c("div",Es,[c("div",Ds,[u(t.$slots,"home-hero-info",{},()=>[t.name?(a(),i("h1",Fs,[c("span",{innerHTML:t.name,class:"clip"},null,8,Os)])):f("",!0),t.text?(a(),i("p",{key:1,innerHTML:t.text,class:"text"},null,8,Gs)):f("",!0),t.tagline?(a(),i("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,Us)):f("",!0)],!0),t.actions?(a(),i("div",Rs,[(a(!0),i(C,null,A(t.actions,o=>(a(),i("div",{key:o.link,class:"action"},[h(As,{tag:"a",size:"medium",theme:o.theme,text:o.text,href:o.link},null,8,["theme","text","href"])]))),128))])):f("",!0)]),t.image||r(e)?(a(),i("div",js,[c("div",qs,[Ks,u(t.$slots,"home-hero-image",{},()=>[t.image?(a(),$(ee,{key:0,class:"image-src",image:t.image},null,8,["image"])):f("",!0)],!0)])])):f("",!0)])],2))}});const Ys=m(Ws,[["__scopeId","data-v-5a3e9999"]]),Js=g({__name:"VPHomeHero",setup(s){const{frontmatter:e}=P();return(t,n)=>r(e).hero?(a(),$(Ys,{key:0,class:"VPHomeHero",name:r(e).hero.name,text:r(e).hero.text,tagline:r(e).hero.tagline,image:r(e).hero.image,actions:r(e).hero.actions},{"home-hero-info":v(()=>[u(t.$slots,"home-hero-info")]),"home-hero-image":v(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):f("",!0)}}),Xs={},Zs={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Qs=c("path",{d:"M19.9,12.4c0.1-0.2,0.1-0.5,0-0.8c-0.1-0.1-0.1-0.2-0.2-0.3l-7-7c-0.4-0.4-1-0.4-1.4,0s-0.4,1,0,1.4l5.3,5.3H5c-0.6,0-1,0.4-1,1s0.4,1,1,1h11.6l-5.3,5.3c-0.4,0.4-0.4,1,0,1.4c0.2,0.2,0.5,0.3,0.7,0.3s0.5-0.1,0.7-0.3l7-7C19.8,12.6,19.9,12.5,19.9,12.4z"},null,-1),en=[Qs];function tn(s,e){return a(),i("svg",Zs,en)}const sn=m(Xs,[["render",tn]]),nn={class:"box"},on={key:0,class:"icon"},an=["innerHTML"],ln=["innerHTML"],rn=["innerHTML"],cn={key:4,class:"link-text"},un={class:"link-text-value"},dn=g({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(s){return(e,t)=>(a(),$(F,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:v(()=>[c("article",nn,[typeof e.icon=="object"&&e.icon.wrap?(a(),i("div",on,[h(ee,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(a(),$(ee,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(a(),i("div",{key:2,class:"icon",innerHTML:e.icon},null,8,an)):f("",!0),c("h2",{class:"title",innerHTML:e.title},null,8,ln),e.details?(a(),i("p",{key:3,class:"details",innerHTML:e.details},null,8,rn)):f("",!0),e.linkText?(a(),i("div",cn,[c("p",un,[x(L(e.linkText)+" ",1),h(sn,{class:"link-text-icon"})])])):f("",!0)])]),_:1},8,["href","rel","target","tag"]))}});const _n=m(dn,[["__scopeId","data-v-ee984185"]]),vn={key:0,class:"VPFeatures"},pn={class:"container"},hn={class:"items"},fn=g({__name:"VPFeatures",props:{features:{}},setup(s){const e=s,t=y(()=>{const n=e.features.length;if(n){if(n===2)return"grid-2";if(n===3)return"grid-3";if(n%3===0)return"grid-6";if(n>3)return"grid-4"}else return});return(n,o)=>n.features?(a(),i("div",vn,[c("div",pn,[c("div",hn,[(a(!0),i(C,null,A(n.features,l=>(a(),i("div",{key:l.title,class:N(["item",[t.value]])},[h(_n,{icon:l.icon,title:l.title,details:l.details,link:l.link,"link-text":l.linkText,rel:l.rel,target:l.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):f("",!0)}});const mn=m(fn,[["__scopeId","data-v-b1eea84a"]]),gn=g({__name:"VPHomeFeatures",setup(s){const{frontmatter:e}=P();return(t,n)=>r(e).features?(a(),$(mn,{key:0,class:"VPHomeFeatures",features:r(e).features},null,8,["features"])):f("",!0)}}),bn={class:"VPHome"},$n=g({__name:"VPHome",setup(s){return(e,t)=>{const n=j("Content");return a(),i("div",bn,[u(e.$slots,"home-hero-before",{},void 0,!0),h(Js,null,{"home-hero-info":v(()=>[u(e.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(e.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(e.$slots,"home-hero-after",{},void 0,!0),u(e.$slots,"home-features-before",{},void 0,!0),h(gn),u(e.$slots,"home-features-after",{},void 0,!0),h(n)])}}});const kn=m($n,[["__scopeId","data-v-20eabd3a"]]),yn={},Pn={class:"VPPage"};function Vn(s,e){const t=j("Content");return a(),i("div",Pn,[u(s.$slots,"page-top"),h(t),u(s.$slots,"page-bottom")])}const wn=m(yn,[["render",Vn]]),Ln=g({__name:"VPContent",setup(s){const{page:e,frontmatter:t}=P(),{hasSidebar:n}=D();return(o,l)=>(a(),i("div",{class:N(["VPContent",{"has-sidebar":r(n),"is-home":r(t).layout==="home"}]),id:"VPContent"},[r(e).isNotFound?u(o.$slots,"not-found",{key:0},()=>[h(vt)],!0):r(t).layout==="page"?(a(),$(wn,{key:1},{"page-top":v(()=>[u(o.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[u(o.$slots,"page-bottom",{},void 0,!0)]),_:3})):r(t).layout==="home"?(a(),$(kn,{key:2},{"home-hero-before":v(()=>[u(o.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[u(o.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(o.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[u(o.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[u(o.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[u(o.$slots,"home-features-after",{},void 0,!0)]),_:3})):r(t).layout&&r(t).layout!=="doc"?(a(),$(O(r(t).layout),{key:3})):(a(),$(Ts,{key:4},{"doc-top":v(()=>[u(o.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[u(o.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":v(()=>[u(o.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[u(o.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[u(o.$slots,"doc-after",{},void 0,!0)]),"aside-top":v(()=>[u(o.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":v(()=>[u(o.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(o.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(o.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(o.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":v(()=>[u(o.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}});const Sn=m(Ln,[["__scopeId","data-v-3cf691b6"]]),Mn={class:"container"},Cn=["innerHTML"],Nn=["innerHTML"],In=g({__name:"VPFooter",setup(s){const{theme:e,frontmatter:t}=P(),{hasSidebar:n}=D();return(o,l)=>r(e).footer&&r(t).footer!==!1?(a(),i("footer",{key:0,class:N(["VPFooter",{"has-sidebar":r(n)}])},[c("div",Mn,[r(e).footer.message?(a(),i("p",{key:0,class:"message",innerHTML:r(e).footer.message},null,8,Cn)):f("",!0),r(e).footer.copyright?(a(),i("p",{key:1,class:"copyright",innerHTML:r(e).footer.copyright},null,8,Nn)):f("",!0)])],2)):f("",!0)}});const Tn=m(In,[["__scopeId","data-v-e4279f1c"]]),Bn={class:"header"},An={class:"outline"},xn=g({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(s){const e=s,{theme:t}=P(),n=S(!1),o=S(0),l=S();W(()=>{n.value=!1});function d(){n.value=!n.value,o.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function p(k){k.target.classList.contains("outline-link")&&(l.value&&(l.value.style.transition="none"),Ge(()=>{n.value=!1}))}function _(){n.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(k,M)=>(a(),i("div",{class:"VPLocalNavOutlineDropdown",style:Oe({"--vp-vh":o.value+"px"})},[k.headers.length>0?(a(),i("button",{key:0,onClick:d,class:N({open:n.value})},[x(L(r(ve)(r(t)))+" ",1),h(fe,{class:"icon"})],2)):(a(),i("button",{key:1,onClick:_},L(r(t).returnToTopLabel||"Return to top"),1)),h(ue,{name:"flyout"},{default:v(()=>[n.value?(a(),i("div",{key:0,ref_key:"items",ref:l,class:"items",onClick:p},[c("div",Bn,[c("a",{class:"top-link",href:"#",onClick:_},L(r(t).returnToTopLabel||"Return to top"),1)]),c("div",An,[h(he,{headers:k.headers},null,8,["headers"])])],512)):f("",!0)]),_:1})],4))}});const Hn=m(xn,[["__scopeId","data-v-24251f6f"]]),zn={},En={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Dn=c("path",{d:"M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"},null,-1),Fn=c("path",{d:"M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"},null,-1),On=c("path",{d:"M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"},null,-1),Gn=c("path",{d:"M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"},null,-1),Un=[Dn,Fn,On,Gn];function Rn(s,e){return a(),i("svg",En,Un)}const jn=m(zn,[["render",Rn]]),qn=["aria-expanded"],Kn={class:"menu-text"},Wn=g({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(s){const{theme:e,frontmatter:t}=P(),{hasSidebar:n}=D(),{y:o}=Se(),l=_e([]),d=S(0);U(()=>{d.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),W(()=>{l.value=pe(t.value.outline??e.value.outline)});const p=y(()=>l.value.length===0&&!n.value),_=y(()=>({VPLocalNav:!0,fixed:p.value,"reached-top":o.value>=d.value}));return(k,M)=>r(t).layout!=="home"&&(!p.value||r(o)>=d.value)?(a(),i("div",{key:0,class:N(_.value)},[r(n)?(a(),i("button",{key:0,class:"menu","aria-expanded":k.open,"aria-controls":"VPSidebarNav",onClick:M[0]||(M[0]=T=>k.$emit("open-menu"))},[h(jn,{class:"menu-icon"}),c("span",Kn,L(r(e).sidebarMenuLabel||"Menu"),1)],8,qn)):f("",!0),h(Hn,{headers:l.value,navHeight:d.value},null,8,["headers","navHeight"])],2)):f("",!0)}});const Yn=m(Wn,[["__scopeId","data-v-9e669cc1"]]);function Jn(){const s=S(!1);function e(){s.value=!0,window.addEventListener("resize",o)}function t(){s.value=!1,window.removeEventListener("resize",o)}function n(){s.value?t():e()}function o(){window.outerWidth>=768&&t()}const l=ne();return R(()=>l.path,t),{isScreenOpen:s,openScreen:e,closeScreen:t,toggleScreen:n}}const Xn={},Zn={class:"VPSwitch",type:"button",role:"switch"},Qn={class:"check"},eo={key:0,class:"icon"};function to(s,e){return a(),i("button",Zn,[c("span",Qn,[s.$slots.default?(a(),i("span",eo,[u(s.$slots,"default",{},void 0,!0)])):f("",!0)])])}const so=m(Xn,[["render",to],["__scopeId","data-v-1c29e291"]]),no={},oo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},ao=c("path",{d:"M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"},null,-1),lo=[ao];function ro(s,e){return a(),i("svg",oo,lo)}const io=m(no,[["render",ro]]),co={},uo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},_o=Ue('',9),vo=[_o];function po(s,e){return a(),i("svg",uo,vo)}const ho=m(co,[["render",po]]),fo=g({__name:"VPSwitchAppearance",setup(s){const{isDark:e}=P(),t=oe("toggle-appearance",()=>{e.value=!e.value});return(n,o)=>(a(),$(so,{title:"toggle dark mode",class:"VPSwitchAppearance","aria-checked":r(e),onClick:r(t)},{default:v(()=>[h(ho,{class:"sun"}),h(io,{class:"moon"})]),_:1},8,["aria-checked","onClick"]))}});const me=m(fo,[["__scopeId","data-v-3329432d"]]),mo={key:0,class:"VPNavBarAppearance"},go=g({__name:"VPNavBarAppearance",setup(s){const{site:e}=P();return(t,n)=>r(e).appearance&&r(e).appearance!=="force-dark"?(a(),i("div",mo,[h(me)])):f("",!0)}});const bo=m(go,[["__scopeId","data-v-283b26e9"]]),ge=S();let Te=!1,le=0;function $o(s){const e=S(!1);if(q){!Te&&ko(),le++;const t=R(ge,n=>{var o,l,d;n===s.el.value||(o=s.el.value)!=null&&o.contains(n)?(e.value=!0,(l=s.onFocus)==null||l.call(s)):(e.value=!1,(d=s.onBlur)==null||d.call(s))});se(()=>{t(),le--,le||yo()})}return Re(e)}function ko(){document.addEventListener("focusin",Be),Te=!0,ge.value=document.activeElement}function yo(){document.removeEventListener("focusin",Be)}function Be(){ge.value=document.activeElement}const Po={},Vo={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},wo=c("path",{d:"M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"},null,-1),Lo=[wo];function So(s,e){return a(),i("svg",Vo,Lo)}const Ae=m(Po,[["render",So]]),Mo={},Co={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},No=c("circle",{cx:"12",cy:"12",r:"2"},null,-1),Io=c("circle",{cx:"19",cy:"12",r:"2"},null,-1),To=c("circle",{cx:"5",cy:"12",r:"2"},null,-1),Bo=[No,Io,To];function Ao(s,e){return a(),i("svg",Co,Bo)}const xo=m(Mo,[["render",Ao]]),Ho={class:"VPMenuLink"},zo=g({__name:"VPMenuLink",props:{item:{}},setup(s){const{page:e}=P();return(t,n)=>(a(),i("div",Ho,[h(F,{class:N({active:r(G)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:v(()=>[x(L(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}});const ae=m(zo,[["__scopeId","data-v-f51f088d"]]),Eo={class:"VPMenuGroup"},Do={key:0,class:"title"},Fo=g({__name:"VPMenuGroup",props:{text:{},items:{}},setup(s){return(e,t)=>(a(),i("div",Eo,[e.text?(a(),i("p",Do,L(e.text),1)):f("",!0),(a(!0),i(C,null,A(e.items,n=>(a(),i(C,null,["link"in n?(a(),$(ae,{key:0,item:n},null,8,["item"])):f("",!0)],64))),256))]))}});const Oo=m(Fo,[["__scopeId","data-v-a6b0397c"]]),Go={class:"VPMenu"},Uo={key:0,class:"items"},Ro=g({__name:"VPMenu",props:{items:{}},setup(s){return(e,t)=>(a(),i("div",Go,[e.items?(a(),i("div",Uo,[(a(!0),i(C,null,A(e.items,n=>(a(),i(C,{key:n.text},["link"in n?(a(),$(ae,{key:0,item:n},null,8,["item"])):(a(),$(Oo,{key:1,text:n.text,items:n.items},null,8,["text","items"]))],64))),128))])):f("",!0),u(e.$slots,"default",{},void 0,!0)]))}});const jo=m(Ro,[["__scopeId","data-v-e42ed9b3"]]),qo=["aria-expanded","aria-label"],Ko={key:0,class:"text"},Wo=["innerHTML"],Yo={class:"menu"},Jo=g({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(s){const e=S(!1),t=S();$o({el:t,onBlur:n});function n(){e.value=!1}return(o,l)=>(a(),i("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:l[1]||(l[1]=d=>e.value=!0),onMouseleave:l[2]||(l[2]=d=>e.value=!1)},[c("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":o.label,onClick:l[0]||(l[0]=d=>e.value=!e.value)},[o.button||o.icon?(a(),i("span",Ko,[o.icon?(a(),$(O(o.icon),{key:0,class:"option-icon"})):f("",!0),o.button?(a(),i("span",{key:1,innerHTML:o.button},null,8,Wo)):f("",!0),h(Ae,{class:"text-icon"})])):(a(),$(xo,{key:1,class:"icon"}))],8,qo),c("div",Yo,[h(jo,{items:o.items},{default:v(()=>[u(o.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}});const be=m(Jo,[["__scopeId","data-v-aa8de344"]]),Xo={discord:'Discord',facebook:'Facebook',github:'GitHub',instagram:'Instagram',linkedin:'LinkedIn',mastodon:'Mastodon',slack:'Slack',twitter:'Twitter',x:'X',youtube:'YouTube'},Zo=["href","aria-label","innerHTML"],Qo=g({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(s){const e=s,t=y(()=>typeof e.icon=="object"?e.icon.svg:Xo[e.icon]);return(n,o)=>(a(),i("a",{class:"VPSocialLink no-icon",href:n.link,"aria-label":n.ariaLabel??(typeof n.icon=="string"?n.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Zo))}});const ea=m(Qo,[["__scopeId","data-v-16cf740a"]]),ta={class:"VPSocialLinks"},sa=g({__name:"VPSocialLinks",props:{links:{}},setup(s){return(e,t)=>(a(),i("div",ta,[(a(!0),i(C,null,A(e.links,({link:n,icon:o,ariaLabel:l})=>(a(),$(ea,{key:n,icon:o,link:n,ariaLabel:l},null,8,["icon","link","ariaLabel"]))),128))]))}});const $e=m(sa,[["__scopeId","data-v-e71e869c"]]),na={key:0,class:"group translations"},oa={class:"trans-title"},aa={key:1,class:"group"},la={class:"item appearance"},ra={class:"label"},ia={class:"appearance-action"},ca={key:2,class:"group"},ua={class:"item social-links"},da=g({__name:"VPNavBarExtra",setup(s){const{site:e,theme:t}=P(),{localeLinks:n,currentLang:o}=J({correspondingLink:!0}),l=y(()=>n.value.length&&o.value.label||e.value.appearance||t.value.socialLinks);return(d,p)=>l.value?(a(),$(be,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:v(()=>[r(n).length&&r(o).label?(a(),i("div",na,[c("p",oa,L(r(o).label),1),(a(!0),i(C,null,A(r(n),_=>(a(),$(ae,{key:_.link,item:_},null,8,["item"]))),128))])):f("",!0),r(e).appearance?(a(),i("div",aa,[c("div",la,[c("p",ra,L(r(t).darkModeSwitchLabel||"Appearance"),1),c("div",ia,[h(me)])])])):f("",!0),r(t).socialLinks?(a(),i("div",ca,[c("div",ua,[h($e,{class:"social-links-list",links:r(t).socialLinks},null,8,["links"])])])):f("",!0)]),_:1})):f("",!0)}});const _a=m(da,[["__scopeId","data-v-c8c2ae4b"]]),va=s=>(z("data-v-6bee1efd"),s=s(),E(),s),pa=["aria-expanded"],ha=va(()=>c("span",{class:"container"},[c("span",{class:"top"}),c("span",{class:"middle"}),c("span",{class:"bottom"})],-1)),fa=[ha],ma=g({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(s){return(e,t)=>(a(),i("button",{type:"button",class:N(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=n=>e.$emit("click"))},fa,10,pa))}});const ga=m(ma,[["__scopeId","data-v-6bee1efd"]]),ba=["innerHTML"],$a=g({__name:"VPNavBarMenuLink",props:{item:{}},setup(s){const{page:e}=P();return(t,n)=>(a(),$(F,{class:N({VPNavBarMenuLink:!0,active:r(G)(r(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:v(()=>[c("span",{innerHTML:t.item.text},null,8,ba)]),_:1},8,["class","href","target","rel"]))}});const ka=m($a,[["__scopeId","data-v-cb318fec"]]),ya=g({__name:"VPNavBarMenuGroup",props:{item:{}},setup(s){const e=s,{page:t}=P(),n=l=>"link"in l?G(t.value.relativePath,l.link,!!e.item.activeMatch):l.items.some(n),o=y(()=>n(e.item));return(l,d)=>(a(),$(be,{class:N({VPNavBarMenuGroup:!0,active:r(G)(r(t).relativePath,l.item.activeMatch,!!l.item.activeMatch)||o.value}),button:l.item.text,items:l.item.items},null,8,["class","button","items"]))}}),Pa=s=>(z("data-v-f732b5d0"),s=s(),E(),s),Va={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},wa=Pa(()=>c("span",{id:"main-nav-aria-label",class:"visually-hidden"},"Main Navigation",-1)),La=g({__name:"VPNavBarMenu",setup(s){const{theme:e}=P();return(t,n)=>r(e).nav?(a(),i("nav",Va,[wa,(a(!0),i(C,null,A(r(e).nav,o=>(a(),i(C,{key:o.text},["link"in o?(a(),$(ka,{key:0,item:o},null,8,["item"])):(a(),$(ya,{key:1,item:o},null,8,["item"]))],64))),128))])):f("",!0)}});const Sa=m(La,[["__scopeId","data-v-f732b5d0"]]);const Ma={type:"button",class:"DocSearch DocSearch-Button","aria-label":"Search"},Ca={class:"DocSearch-Button-Container"},Na=c("svg",{class:"DocSearch-Search-Icon",width:"20",height:"20",viewBox:"0 0 20 20","aria-label":"search icon"},[c("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round"})],-1),Ia={class:"DocSearch-Button-Placeholder"},Ta=c("span",{class:"DocSearch-Button-Keys"},[c("kbd",{class:"DocSearch-Button-Key"}),c("kbd",{class:"DocSearch-Button-Key"},"K")],-1),Ve=g({__name:"VPNavBarSearchButton",props:{placeholder:{}},setup(s){return(e,t)=>(a(),i("button",Ma,[c("span",Ca,[Na,c("span",Ia,L(e.placeholder),1)]),Ta]))}});const Ba={class:"VPNavBarSearch"},Aa={id:"local-search"},xa={key:1,id:"docsearch"},Ha=g({__name:"VPNavBarSearch",setup(s){const e=()=>null,t=je(()=>qe(()=>import("./VPAlgoliaSearchBox.8f140d75.js"),["assets/chunks/VPAlgoliaSearchBox.8f140d75.js","assets/chunks/framework.b40c9ff3.js"])),{theme:n,localeIndex:o}=P(),l=S(!1),d=S(!1),p=y(()=>{var w,b,H,X,K,ke,ye;const V=((w=n.value.search)==null?void 0:w.options)??n.value.algolia;return((K=(X=(H=(b=V==null?void 0:V.locales)==null?void 0:b[o.value])==null?void 0:H.translations)==null?void 0:X.button)==null?void 0:K.buttonText)||((ye=(ke=V==null?void 0:V.translations)==null?void 0:ke.button)==null?void 0:ye.buttonText)||"Search"}),_=()=>{const V="VPAlgoliaPreconnect";(window.requestIdleCallback||setTimeout)(()=>{var H;const b=document.createElement("link");b.id=V,b.rel="preconnect",b.href=`https://${(((H=n.value.search)==null?void 0:H.options)??n.value.algolia).appId}-dsn.algolia.net`,b.crossOrigin="",document.head.appendChild(b)})};U(()=>{_();const V=b=>{(b.key.toLowerCase()==="k"&&(b.metaKey||b.ctrlKey)||!T(b)&&b.key==="/")&&(b.preventDefault(),k(),w())},w=()=>{window.removeEventListener("keydown",V)};window.addEventListener("keydown",V),se(w)});function k(){l.value||(l.value=!0,setTimeout(M,16))}function M(){const V=new Event("keydown");V.key="k",V.metaKey=!0,window.dispatchEvent(V),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||M()},16)}function T(V){const w=V.target,b=w.tagName;return w.isContentEditable||b==="INPUT"||b==="SELECT"||b==="TEXTAREA"}const B=S(!1),I="algolia";return(V,w)=>{var b;return a(),i("div",Ba,[r(I)==="local"?(a(),i(C,{key:0},[B.value?(a(),$(r(e),{key:0,placeholder:p.value,onClose:w[0]||(w[0]=H=>B.value=!1)},null,8,["placeholder"])):f("",!0),c("div",Aa,[h(Ve,{placeholder:p.value,onClick:w[1]||(w[1]=H=>B.value=!0)},null,8,["placeholder"])])],64)):r(I)==="algolia"?(a(),i(C,{key:1},[l.value?(a(),$(r(t),{key:0,algolia:((b=r(n).search)==null?void 0:b.options)??r(n).algolia,onVnodeBeforeMount:w[2]||(w[2]=H=>d.value=!0)},null,8,["algolia"])):f("",!0),d.value?f("",!0):(a(),i("div",xa,[h(Ve,{placeholder:p.value,onClick:k},null,8,["placeholder"])]))],64)):f("",!0)])}}});const za=g({__name:"VPNavBarSocialLinks",setup(s){const{theme:e}=P();return(t,n)=>r(e).socialLinks?(a(),$($e,{key:0,class:"VPNavBarSocialLinks",links:r(e).socialLinks},null,8,["links"])):f("",!0)}});const Ea=m(za,[["__scopeId","data-v-ef6192dc"]]),Da=["href"],Fa=g({__name:"VPNavBarTitle",setup(s){const{site:e,theme:t}=P(),{hasSidebar:n}=D(),{currentLang:o}=J();return(l,d)=>(a(),i("div",{class:N(["VPNavBarTitle",{"has-sidebar":r(n)}])},[c("a",{class:"title",href:r(t).logoLink??r(Y)(r(o).link)},[u(l.$slots,"nav-bar-title-before",{},void 0,!0),r(t).logo?(a(),$(ee,{key:0,class:"logo",image:r(t).logo},null,8,["image"])):f("",!0),r(t).siteTitle?(a(),i(C,{key:1},[x(L(r(t).siteTitle),1)],64)):r(t).siteTitle===void 0?(a(),i(C,{key:2},[x(L(r(e).title),1)],64)):f("",!0),u(l.$slots,"nav-bar-title-after",{},void 0,!0)],8,Da)],2))}});const Oa=m(Fa,[["__scopeId","data-v-2973dbb4"]]),Ga={},Ua={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},Ra=c("path",{d:"M0 0h24v24H0z",fill:"none"},null,-1),ja=c("path",{d:" M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z ",class:"css-c4d79v"},null,-1),qa=[Ra,ja];function Ka(s,e){return a(),i("svg",Ua,qa)}const xe=m(Ga,[["render",Ka]]),Wa={class:"items"},Ya={class:"title"},Ja=g({__name:"VPNavBarTranslations",setup(s){const{theme:e}=P(),{localeLinks:t,currentLang:n}=J({correspondingLink:!0});return(o,l)=>r(t).length&&r(n).label?(a(),$(be,{key:0,class:"VPNavBarTranslations",icon:xe,label:r(e).langMenuLabel||"Change language"},{default:v(()=>[c("div",Wa,[c("p",Ya,L(r(n).label),1),(a(!0),i(C,null,A(r(t),d=>(a(),$(ae,{key:d.link,item:d},null,8,["item"]))),128))])]),_:1},8,["label"])):f("",!0)}});const Xa=m(Ja,[["__scopeId","data-v-ff4524ae"]]),Za=s=>(z("data-v-f1abbc6e"),s=s(),E(),s),Qa={class:"container"},el={class:"title"},tl={class:"content"},sl=Za(()=>c("div",{class:"curtain"},null,-1)),nl={class:"content-body"},ol=g({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(s){const{y:e}=Se(),{hasSidebar:t}=D(),{frontmatter:n}=P(),o=S({});return we(()=>{o.value={"has-sidebar":t.value,top:n.value.layout==="home"&&e.value===0}}),(l,d)=>(a(),i("div",{class:N(["VPNavBar",o.value])},[c("div",Qa,[c("div",el,[h(Oa,null,{"nav-bar-title-before":v(()=>[u(l.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(l.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),c("div",tl,[sl,c("div",nl,[u(l.$slots,"nav-bar-content-before",{},void 0,!0),h(Ha,{class:"search"}),h(Sa,{class:"menu"}),h(Xa,{class:"translations"}),h(bo,{class:"appearance"}),h(Ea,{class:"social-links"}),h(_a,{class:"extra"}),u(l.$slots,"nav-bar-content-after",{},void 0,!0),h(ga,{class:"hamburger",active:l.isScreenOpen,onClick:d[0]||(d[0]=p=>l.$emit("toggle-screen"))},null,8,["active"])])])])],2))}});const al=m(ol,[["__scopeId","data-v-f1abbc6e"]]),ll={key:0,class:"VPNavScreenAppearance"},rl={class:"text"},il=g({__name:"VPNavScreenAppearance",setup(s){const{site:e,theme:t}=P();return(n,o)=>r(e).appearance?(a(),i("div",ll,[c("p",rl,L(r(t).darkModeSwitchLabel||"Appearance"),1),h(me)])):f("",!0)}});const cl=m(il,[["__scopeId","data-v-0dc5cf49"]]),ul=g({__name:"VPNavScreenMenuLink",props:{item:{}},setup(s){const e=oe("close-screen");return(t,n)=>(a(),$(F,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e)},{default:v(()=>[x(L(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const dl=m(ul,[["__scopeId","data-v-fe523e3d"]]),_l={},vl={xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",viewBox:"0 0 24 24"},pl=c("path",{d:"M18.9,10.9h-6v-6c0-0.6-0.4-1-1-1s-1,0.4-1,1v6h-6c-0.6,0-1,0.4-1,1s0.4,1,1,1h6v6c0,0.6,0.4,1,1,1s1-0.4,1-1v-6h6c0.6,0,1-0.4,1-1S19.5,10.9,18.9,10.9z"},null,-1),hl=[pl];function fl(s,e){return a(),i("svg",vl,hl)}const ml=m(_l,[["render",fl]]),gl=g({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(s){const e=oe("close-screen");return(t,n)=>(a(),$(F,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:r(e)},{default:v(()=>[x(L(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}});const He=m(gl,[["__scopeId","data-v-aea78dd1"]]),bl={class:"VPNavScreenMenuGroupSection"},$l={key:0,class:"title"},kl=g({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(s){return(e,t)=>(a(),i("div",bl,[e.text?(a(),i("p",$l,L(e.text),1)):f("",!0),(a(!0),i(C,null,A(e.items,n=>(a(),$(He,{key:n.text,item:n},null,8,["item"]))),128))]))}});const yl=m(kl,[["__scopeId","data-v-f60dbfa7"]]),Pl=["aria-controls","aria-expanded"],Vl={class:"button-text"},wl=["id"],Ll={key:1,class:"group"},Sl=g({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(s){const e=s,t=S(!1),n=y(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function o(){t.value=!t.value}return(l,d)=>(a(),i("div",{class:N(["VPNavScreenMenuGroup",{open:t.value}])},[c("button",{class:"button","aria-controls":n.value,"aria-expanded":t.value,onClick:o},[c("span",Vl,L(l.text),1),h(ml,{class:"button-icon"})],8,Pl),c("div",{id:n.value,class:"items"},[(a(!0),i(C,null,A(l.items,p=>(a(),i(C,{key:p.text},["link"in p?(a(),i("div",{key:p.text,class:"item"},[h(He,{item:p},null,8,["item"])])):(a(),i("div",Ll,[h(yl,{text:p.text,items:p.items},null,8,["text","items"])]))],64))),128))],8,wl)],2))}});const Ml=m(Sl,[["__scopeId","data-v-c2c554ed"]]),Cl={key:0,class:"VPNavScreenMenu"},Nl=g({__name:"VPNavScreenMenu",setup(s){const{theme:e}=P();return(t,n)=>r(e).nav?(a(),i("nav",Cl,[(a(!0),i(C,null,A(r(e).nav,o=>(a(),i(C,{key:o.text},["link"in o?(a(),$(dl,{key:0,item:o},null,8,["item"])):(a(),$(Ml,{key:1,text:o.text||"",items:o.items},null,8,["text","items"]))],64))),128))])):f("",!0)}}),Il=g({__name:"VPNavScreenSocialLinks",setup(s){const{theme:e}=P();return(t,n)=>r(e).socialLinks?(a(),$($e,{key:0,class:"VPNavScreenSocialLinks",links:r(e).socialLinks},null,8,["links"])):f("",!0)}}),Tl={class:"list"},Bl=g({__name:"VPNavScreenTranslations",setup(s){const{localeLinks:e,currentLang:t}=J({correspondingLink:!0}),n=S(!1);function o(){n.value=!n.value}return(l,d)=>r(e).length&&r(t).label?(a(),i("div",{key:0,class:N(["VPNavScreenTranslations",{open:n.value}])},[c("button",{class:"title",onClick:o},[h(xe,{class:"icon lang"}),x(" "+L(r(t).label)+" ",1),h(Ae,{class:"icon chevron"})]),c("ul",Tl,[(a(!0),i(C,null,A(r(e),p=>(a(),i("li",{key:p.link,class:"item"},[h(F,{class:"link",href:p.link},{default:v(()=>[x(L(p.text),1)]),_:2},1032,["href"])]))),128))])],2)):f("",!0)}});const Al=m(Bl,[["__scopeId","data-v-41505286"]]),xl={class:"container"},Hl=g({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(s){const e=S(null),t=Me(q?document.body:null);return(n,o)=>(a(),$(ue,{name:"fade",onEnter:o[0]||(o[0]=l=>t.value=!0),onAfterLeave:o[1]||(o[1]=l=>t.value=!1)},{default:v(()=>[n.open?(a(),i("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[c("div",xl,[u(n.$slots,"nav-screen-content-before",{},void 0,!0),h(Nl,{class:"menu"}),h(Al,{class:"translations"}),h(cl,{class:"appearance"}),h(Il,{class:"social-links"}),u(n.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):f("",!0)]),_:3}))}});const zl=m(Hl,[["__scopeId","data-v-57cce842"]]),El={key:0,class:"VPNav"},Dl=g({__name:"VPNav",setup(s){const{isScreenOpen:e,closeScreen:t,toggleScreen:n}=Jn(),{frontmatter:o}=P(),l=y(()=>o.value.navbar!==!1);return Ce("close-screen",t),te(()=>{q&&document.documentElement.classList.toggle("hide-nav",!l.value)}),(d,p)=>l.value?(a(),i("header",El,[h(al,{"is-screen-open":r(e),onToggleScreen:r(n)},{"nav-bar-title-before":v(()=>[u(d.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(d.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[u(d.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[u(d.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),h(zl,{open:r(e)},{"nav-screen-content-before":v(()=>[u(d.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[u(d.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):f("",!0)}});const Fl=m(Dl,[["__scopeId","data-v-7ad780c2"]]),Ol=s=>(z("data-v-bd01e0d5"),s=s(),E(),s),Gl=["role","tabindex"],Ul=Ol(()=>c("div",{class:"indicator"},null,-1)),Rl=["onKeydown"],jl={key:1,class:"items"},ql=g({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(s){const e=s,{collapsed:t,collapsible:n,isLink:o,isActiveLink:l,hasActiveLink:d,hasChildren:p,toggle:_}=mt(y(()=>e.item)),k=y(()=>p.value?"section":"div"),M=y(()=>o.value?"a":"div"),T=y(()=>p.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),B=y(()=>o.value?void 0:"button"),I=y(()=>[[`level-${e.depth}`],{collapsible:n.value},{collapsed:t.value},{"is-link":o.value},{"is-active":l.value},{"has-active":d.value}]);function V(b){"key"in b&&b.key!=="Enter"||!e.item.link&&_()}function w(){e.item.link&&_()}return(b,H)=>{const X=j("VPSidebarItem",!0);return a(),$(O(k.value),{class:N(["VPSidebarItem",I.value])},{default:v(()=>[b.item.text?(a(),i("div",Z({key:0,class:"item",role:B.value},We(b.item.items?{click:V,keydown:V}:{},!0),{tabindex:b.item.items&&0}),[Ul,b.item.link?(a(),$(F,{key:0,tag:M.value,class:"link",href:b.item.link,rel:b.item.rel,target:b.item.target},{default:v(()=>[(a(),$(O(T.value),{class:"text",innerHTML:b.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(a(),$(O(T.value),{key:1,class:"text",innerHTML:b.item.text},null,8,["innerHTML"])),b.item.collapsed!=null?(a(),i("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:w,onKeydown:Ke(w,["enter"]),tabindex:"0"},[h(fe,{class:"caret-icon"})],40,Rl)):f("",!0)],16,Gl)):f("",!0),b.item.items&&b.item.items.length?(a(),i("div",jl,[b.depth<5?(a(!0),i(C,{key:0},A(b.item.items,K=>(a(),$(X,{key:K.text,item:K,depth:b.depth+1},null,8,["item","depth"]))),128)):f("",!0)])):f("",!0)]),_:1},8,["class"])}}});const Kl=m(ql,[["__scopeId","data-v-bd01e0d5"]]),ze=s=>(z("data-v-ee2efba5"),s=s(),E(),s),Wl=ze(()=>c("div",{class:"curtain"},null,-1)),Yl={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Jl=ze(()=>c("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Xl=g({__name:"VPSidebar",props:{open:{type:Boolean}},setup(s){const e=s,{sidebarGroups:t,hasSidebar:n}=D(),o=S(null),l=Me(q?document.body:null);return R([e,o],()=>{var d;e.open?(l.value=!0,(d=o.value)==null||d.focus()):l.value=!1},{immediate:!0,flush:"post"}),(d,p)=>r(n)?(a(),i("aside",{key:0,class:N(["VPSidebar",{open:d.open}]),ref_key:"navEl",ref:o,onClick:p[0]||(p[0]=Ye(()=>{},["stop"]))},[Wl,c("nav",Yl,[Jl,u(d.$slots,"sidebar-nav-before",{},void 0,!0),(a(!0),i(C,null,A(r(t),_=>(a(),i("div",{key:_.text,class:"group"},[h(Kl,{item:_,depth:0},null,8,["item"])]))),128)),u(d.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):f("",!0)}});const Zl=m(Xl,[["__scopeId","data-v-ee2efba5"]]),Ql=g({__name:"VPSkipLink",setup(s){const e=ne(),t=S();R(()=>e.path,()=>t.value.focus());function n({target:o}){const l=document.getElementById(decodeURIComponent(o.hash).slice(1));if(l){const d=()=>{l.removeAttribute("tabindex"),l.removeEventListener("blur",d)};l.setAttribute("tabindex","-1"),l.addEventListener("blur",d),l.focus(),window.scrollTo(0,0)}}return(o,l)=>(a(),i(C,null,[c("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),c("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:n}," Skip to content ")],64))}});const er=m(Ql,[["__scopeId","data-v-c8291ffa"]]),tr=g({__name:"Layout",setup(s){const{isOpen:e,open:t,close:n}=D(),o=ne();R(()=>o.path,n),ft(e,n);const{frontmatter:l}=P(),d=Je(),p=y(()=>!!d["home-hero-image"]);return Ce("hero-image-slot-exists",p),(_,k)=>{const M=j("Content");return r(l).layout!==!1?(a(),i("div",{key:0,class:N(["Layout",r(l).pageClass])},[u(_.$slots,"layout-top",{},void 0,!0),h(er),h(tt,{class:"backdrop",show:r(e),onClick:r(n)},null,8,["show","onClick"]),h(Fl,null,{"nav-bar-title-before":v(()=>[u(_.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":v(()=>[u(_.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":v(()=>[u(_.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":v(()=>[u(_.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":v(()=>[u(_.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":v(()=>[u(_.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),h(Yn,{open:r(e),onOpenMenu:r(t)},null,8,["open","onOpenMenu"]),h(Zl,{open:r(e)},{"sidebar-nav-before":v(()=>[u(_.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":v(()=>[u(_.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),h(Sn,null,{"page-top":v(()=>[u(_.$slots,"page-top",{},void 0,!0)]),"page-bottom":v(()=>[u(_.$slots,"page-bottom",{},void 0,!0)]),"not-found":v(()=>[u(_.$slots,"not-found",{},void 0,!0)]),"home-hero-before":v(()=>[u(_.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info":v(()=>[u(_.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-image":v(()=>[u(_.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":v(()=>[u(_.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":v(()=>[u(_.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":v(()=>[u(_.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":v(()=>[u(_.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":v(()=>[u(_.$slots,"doc-before",{},void 0,!0)]),"doc-after":v(()=>[u(_.$slots,"doc-after",{},void 0,!0)]),"doc-top":v(()=>[u(_.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":v(()=>[u(_.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":v(()=>[u(_.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":v(()=>[u(_.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":v(()=>[u(_.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":v(()=>[u(_.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":v(()=>[u(_.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":v(()=>[u(_.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),h(Tn),u(_.$slots,"layout-bottom",{},void 0,!0)],2)):(a(),$(M,{key:1}))}}});const sr=m(tr,[["__scopeId","data-v-9d8abc1e"]]);const or={Layout:sr,enhanceApp:({app:s})=>{s.component("Badge",Ze)}};export{or as t,P as u}; diff --git a/docs/assets/core.md.b893fea5.js b/docs/assets/core.md.0cd8ab6b.js similarity index 93% rename from docs/assets/core.md.b893fea5.js rename to docs/assets/core.md.0cd8ab6b.js index e904856..601b3a6 100644 --- a/docs/assets/core.md.b893fea5.js +++ b/docs/assets/core.md.0cd8ab6b.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const _=JSON.parse('{"title":"Core","description":"","frontmatter":{},"headers":[],"relativePath":"core.md","filePath":"core.md","lastUpdated":1666705294000}'),o={name:"core.md"},s=r('

Core

This page is about the PeyrSharp.Core module.

Compatibility

The PeyrSharp.Core module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Namespaces

The Core namespace contains other namespaces:

Classes

',10),l=[s];function i(d,h,c,n,m,p){return e(),a("div",null,l)}const f=t(o,[["render",i]]);export{_ as __pageData,f as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const _=JSON.parse('{"title":"Core","description":"","frontmatter":{},"headers":[],"relativePath":"core.md","filePath":"core.md","lastUpdated":1666705294000}'),o={name:"core.md"},s=r('

Core

This page is about the PeyrSharp.Core module.

Compatibility

The PeyrSharp.Core module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Namespaces

The Core namespace contains other namespaces:

Classes

',10),l=[s];function i(d,h,c,n,m,p){return e(),a("div",null,l)}const f=t(o,[["render",i]]);export{_ as __pageData,f as default}; diff --git a/docs/assets/core.md.b893fea5.lean.js b/docs/assets/core.md.0cd8ab6b.lean.js similarity index 66% rename from docs/assets/core.md.b893fea5.lean.js rename to docs/assets/core.md.0cd8ab6b.lean.js index 21dbb10..045953d 100644 --- a/docs/assets/core.md.b893fea5.lean.js +++ b/docs/assets/core.md.0cd8ab6b.lean.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const _=JSON.parse('{"title":"Core","description":"","frontmatter":{},"headers":[],"relativePath":"core.md","filePath":"core.md","lastUpdated":1666705294000}'),o={name:"core.md"},s=r("",10),l=[s];function i(d,h,c,n,m,p){return e(),a("div",null,l)}const f=t(o,[["render",i]]);export{_ as __pageData,f as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const _=JSON.parse('{"title":"Core","description":"","frontmatter":{},"headers":[],"relativePath":"core.md","filePath":"core.md","lastUpdated":1666705294000}'),o={name:"core.md"},s=r("",10),l=[s];function i(d,h,c,n,m,p){return e(),a("div",null,l)}const f=t(o,[["render",i]]);export{_ as __pageData,f as default}; diff --git a/docs/assets/core_converters.md.d4088611.js b/docs/assets/core_converters.md.6e95d28b.js similarity index 94% rename from docs/assets/core_converters.md.d4088611.js rename to docs/assets/core_converters.md.6e95d28b.js index 9880d86..0fd7ca4 100644 --- a/docs/assets/core_converters.md.d4088611.js +++ b/docs/assets/core_converters.md.6e95d28b.js @@ -1 +1 @@ -import{_ as e,o as t,c as r,Q as a}from"./chunks/framework.b637c96f.js";const _=JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters.md","filePath":"core/converters.md","lastUpdated":1666629081000}'),o={name:"core/converters.md"},s=a('

Converters

This page is about the Converters namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Converters namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),l=[s];function c(i,n,h,d,m,p){return t(),r("div",null,l)}const v=e(o,[["render",c]]);export{_ as __pageData,v as default}; +import{_ as e,o as t,c as r,Q as a}from"./chunks/framework.b40c9ff3.js";const _=JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters.md","filePath":"core/converters.md","lastUpdated":1666629081000}'),o={name:"core/converters.md"},s=a('

Converters

This page is about the Converters namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Converters namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),l=[s];function c(i,n,h,d,m,p){return t(),r("div",null,l)}const v=e(o,[["render",c]]);export{_ as __pageData,v as default}; diff --git a/docs/assets/core_converters.md.d4088611.lean.js b/docs/assets/core_converters.md.6e95d28b.lean.js similarity index 69% rename from docs/assets/core_converters.md.d4088611.lean.js rename to docs/assets/core_converters.md.6e95d28b.lean.js index 571ffd8..e180a0e 100644 --- a/docs/assets/core_converters.md.d4088611.lean.js +++ b/docs/assets/core_converters.md.6e95d28b.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as r,Q as a}from"./chunks/framework.b637c96f.js";const _=JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters.md","filePath":"core/converters.md","lastUpdated":1666629081000}'),o={name:"core/converters.md"},s=a("",7),l=[s];function c(i,n,h,d,m,p){return t(),r("div",null,l)}const v=e(o,[["render",c]]);export{_ as __pageData,v as default}; +import{_ as e,o as t,c as r,Q as a}from"./chunks/framework.b40c9ff3.js";const _=JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters.md","filePath":"core/converters.md","lastUpdated":1666629081000}'),o={name:"core/converters.md"},s=a("",7),l=[s];function c(i,n,h,d,m,p){return t(),r("div",null,l)}const v=e(o,[["render",c]]);export{_ as __pageData,v as default}; diff --git a/docs/assets/core_converters_angle.md.8a16953e.js b/docs/assets/core_converters_angle.md.ba10dc1d.js similarity index 98% rename from docs/assets/core_converters_angle.md.8a16953e.js rename to docs/assets/core_converters_angle.md.ba10dc1d.js index f96d260..8f9a932 100644 --- a/docs/assets/core_converters_angle.md.8a16953e.js +++ b/docs/assets/core_converters_angle.md.ba10dc1d.js @@ -1,4 +1,4 @@ -import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Angle","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/angle.md","filePath":"core/converters/angle.md","lastUpdated":1666626451000}'),o={name:"core/converters/angle.md"},t=n(`

Angle

This page is about the Angle class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Angle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

DegreesToRadians(degrees)

Definition

Converts degrees to radians. Returns a double value.

Arguments

TypeNameMeaning
doubledegreesNumber of degrees to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Angle","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/angle.md","filePath":"core/converters/angle.md","lastUpdated":1666626451000}'),o={name:"core/converters/angle.md"},t=n(`

Angle

This page is about the Angle class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Angle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

DegreesToRadians(degrees)

Definition

Converts degrees to radians. Returns a double value.

Arguments

TypeNameMeaning
doubledegreesNumber of degrees to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double radians = Angle.DegreesToRadians(90);
 // radians = 1.5707963271535559
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_angle.md.8a16953e.lean.js b/docs/assets/core_converters_angle.md.ba10dc1d.lean.js
similarity index 70%
rename from docs/assets/core_converters_angle.md.8a16953e.lean.js
rename to docs/assets/core_converters_angle.md.ba10dc1d.lean.js
index 41a0311..25c1d17 100644
--- a/docs/assets/core_converters_angle.md.8a16953e.lean.js
+++ b/docs/assets/core_converters_angle.md.ba10dc1d.lean.js
@@ -1 +1 @@
-import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Angle","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/angle.md","filePath":"core/converters/angle.md","lastUpdated":1666626451000}'),o={name:"core/converters/angle.md"},t=n("",21),l=[t];function r(p,c,d,i,h,y){return s(),e("div",null,l)}const u=a(o,[["render",r]]);export{E as __pageData,u as default};
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Angle","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/angle.md","filePath":"core/converters/angle.md","lastUpdated":1666626451000}'),o={name:"core/converters/angle.md"},t=n("",21),l=[t];function r(p,c,d,i,h,y){return s(),e("div",null,l)}const u=a(o,[["render",r]]);export{E as __pageData,u as default};
diff --git a/docs/assets/core_converters_colors_hex.md.33132cc5.js b/docs/assets/core_converters_colors_hex.md.5e02203f.js
similarity index 92%
rename from docs/assets/core_converters_colors_hex.md.33132cc5.js
rename to docs/assets/core_converters_colors_hex.md.5e02203f.js
index 0180995..9521f41 100644
--- a/docs/assets/core_converters_colors_hex.md.33132cc5.js
+++ b/docs/assets/core_converters_colors_hex.md.5e02203f.js
@@ -1,8 +1,8 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"HEX","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hex.md","filePath":"core/converters/colors/hex.md","lastUpdated":1666628903000}'),n={name:"core/converters/colors/hex.md"},t=o(`

HEX

This page is about the HEX class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HEX class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HEX(hex)

Initializes a hexadecimal class from a hexadecimal value.

Arguments

TypeNameMeaning
stringhexThe hexadecimal value (with or without #).

WARNING

If you specify a non-hexadecimal value, a HEXInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"HEX","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hex.md","filePath":"core/converters/colors/hex.md","lastUpdated":1666628903000}'),n={name:"core/converters/colors/hex.md"},t=o(`

HEX

This page is about the HEX class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HEX class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HEX(hex)

Initializes a hexadecimal class from a hexadecimal value.

Arguments

TypeNameMeaning
stringhexThe hexadecimal value (with or without #).

WARNING

If you specify a non-hexadecimal value, a HEXInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
 
-HEX hex = new("#FF0A17");
using PeyrSharp.Core.Converters;
+HEX hex = new("#FF0A17");
using PeyrSharp.Core.Converters;
 
-HEX hex = new("#FF0A17");

Methods

ToRgb()

Definition

Converts the HEX color to RGB. Returns a RGB class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
+HEX hex = new("#FF0A17");

Methods

ToRgb()

Definition

Converts the HEX color to RGB. Returns a RGB class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
 
 RGB rgb = new HEX("#FFFFFF").ToRgb();
using PeyrSharp.Core.Converters;
 
@@ -10,4 +10,4 @@ import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const u=
 
 HSV hsv = new HEX("#E1077B").ToHsv();
using PeyrSharp.Core.Converters;
 
-HSV hsv = new HEX("#E1077B").ToHsv();

Properties

Value

Definition

c#
public string Value { get; init; }
public string Value { get; init; }

The Value property contains the hexadecimal value of the HEX color. You can only get this property.

`,33),l=[t];function r(p,c,i,h,d,y){return a(),e("div",null,l)}const g=s(n,[["render",r]]);export{u as __pageData,g as default}; +HSV hsv = new HEX("#E1077B").ToHsv();

Properties

Value

Definition

c#
public string Value { get; init; }
public string Value { get; init; }

The Value property contains the hexadecimal value of the HEX color. You can only get this property.

`,33),l=[t];function r(p,c,i,h,d,y){return a(),e("div",null,l)}const g=s(n,[["render",r]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_converters_colors_hex.md.33132cc5.lean.js b/docs/assets/core_converters_colors_hex.md.5e02203f.lean.js similarity index 71% rename from docs/assets/core_converters_colors_hex.md.33132cc5.lean.js rename to docs/assets/core_converters_colors_hex.md.5e02203f.lean.js index 16c51a0..7837577 100644 --- a/docs/assets/core_converters_colors_hex.md.33132cc5.lean.js +++ b/docs/assets/core_converters_colors_hex.md.5e02203f.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"HEX","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hex.md","filePath":"core/converters/colors/hex.md","lastUpdated":1666628903000}'),n={name:"core/converters/colors/hex.md"},t=o("",33),l=[t];function r(p,c,i,h,d,y){return a(),e("div",null,l)}const g=s(n,[["render",r]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"HEX","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hex.md","filePath":"core/converters/colors/hex.md","lastUpdated":1666628903000}'),n={name:"core/converters/colors/hex.md"},t=o("",33),l=[t];function r(p,c,i,h,d,y){return a(),e("div",null,l)}const g=s(n,[["render",r]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_converters_colors_hsv.md.dbe36e17.js b/docs/assets/core_converters_colors_hsv.md.87c948d5.js similarity index 61% rename from docs/assets/core_converters_colors_hsv.md.dbe36e17.js rename to docs/assets/core_converters_colors_hsv.md.87c948d5.js index 54769d0..e87a37d 100644 --- a/docs/assets/core_converters_colors_hsv.md.dbe36e17.js +++ b/docs/assets/core_converters_colors_hsv.md.87c948d5.js @@ -1,5 +1,5 @@ -import{_ as a,o as e,c as t,Q as s}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"HSV","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hsv.md","filePath":"core/converters/colors/hsv.md","lastUpdated":1666628914000}'),o={name:"core/converters/colors/hsv.md"},n=s(`

HSV

This page is about the HSV class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HSV class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HSV(hue, saturation, value)

Definition

Initializes a HSV color from its hue, saturation, and value.

Arguments

TypeNameMeaning
inthueThe Hue of the color.
intsaturationThe saturation percentage.
intvalueThe value/brightness percentage.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"HSV","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hsv.md","filePath":"core/converters/colors/hsv.md","lastUpdated":1666628914000}'),o={name:"core/converters/colors/hsv.md"},n=t(`

HSV

This page is about the HSV class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HSV class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HSV(hue, saturation, value)

Definition

Initializes a HSV color from its hue, saturation, and value.

Arguments

TypeNameMeaning
inthueThe Hue of the color.
intsaturationThe saturation percentage.
intvalueThe value/brightness percentage.

Usage

c#
using PeyrSharp.Core.Converters;
 
-HSV hsv = new(50, 75, 100);
using PeyrSharp.Core.Converters;
+HSV hsv = new(50, 75, 100);
using PeyrSharp.Core.Converters;
 
-HSV hsv = new(50, 75, 100);

Properties

Hue

Definition

c#
public int Hue { get; init; }
public int Hue { get; init; }

The Hue property contains the hue of the HSV color. You can only get this property.

Saturation

Definition

c#
public int Saturation { get; init; }
public int Saturation { get; init; }

The Value property contains the saturation percentage of the HSV color. You can only get this property.

Value

Definition

c#
public int Value { get; init; }
public int Value { get; init; }

The Value property contains the value/brightness percentage of the HSV color. You can only get this property.

`,26),r=[n];function l(i,c,p,d,h,u){return e(),t("div",null,r)}const g=a(o,[["render",l]]);export{b as __pageData,g as default}; +HSV hsv = new(50, 75, 100);

Properties

Hue

Definition

c#
public int Hue { get; init; }
public int Hue { get; init; }

The Hue property contains the hue of the HSV color. You can only get this property.

Saturation

Definition

c#
public int Saturation { get; init; }
public int Saturation { get; init; }

The Value property contains the saturation percentage of the HSV color. You can only get this property.

Value

Definition

c#
public int Value { get; init; }
public int Value { get; init; }

The Value property contains the value/brightness percentage of the HSV color. You can only get this property.

`,26),l=[n];function r(p,c,i,d,h,u){return e(),s("div",null,l)}const b=a(o,[["render",r]]);export{E as __pageData,b as default}; diff --git a/docs/assets/core_converters_colors_hsv.md.87c948d5.lean.js b/docs/assets/core_converters_colors_hsv.md.87c948d5.lean.js new file mode 100644 index 0000000..8f525aa --- /dev/null +++ b/docs/assets/core_converters_colors_hsv.md.87c948d5.lean.js @@ -0,0 +1 @@ +import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"HSV","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hsv.md","filePath":"core/converters/colors/hsv.md","lastUpdated":1666628914000}'),o={name:"core/converters/colors/hsv.md"},n=t("",26),l=[n];function r(p,c,i,d,h,u){return e(),s("div",null,l)}const b=a(o,[["render",r]]);export{E as __pageData,b as default}; diff --git a/docs/assets/core_converters_colors_hsv.md.dbe36e17.lean.js b/docs/assets/core_converters_colors_hsv.md.dbe36e17.lean.js deleted file mode 100644 index c8dde2d..0000000 --- a/docs/assets/core_converters_colors_hsv.md.dbe36e17.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as a,o as e,c as t,Q as s}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"HSV","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/hsv.md","filePath":"core/converters/colors/hsv.md","lastUpdated":1666628914000}'),o={name:"core/converters/colors/hsv.md"},n=s("",26),r=[n];function l(i,c,p,d,h,u){return e(),t("div",null,r)}const g=a(o,[["render",l]]);export{b as __pageData,g as default}; diff --git a/docs/assets/core_converters_colors_rgb.md.d296121e.js b/docs/assets/core_converters_colors_rgb.md.5b4b7e3c.js similarity index 97% rename from docs/assets/core_converters_colors_rgb.md.d296121e.js rename to docs/assets/core_converters_colors_rgb.md.5b4b7e3c.js index 53358de..bfb9aff 100644 --- a/docs/assets/core_converters_colors_rgb.md.d296121e.js +++ b/docs/assets/core_converters_colors_rgb.md.5b4b7e3c.js @@ -1,14 +1,14 @@ -import{_ as s,o as a,c as o,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"RGB","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/rgb.md","filePath":"core/converters/colors/rgb.md","lastUpdated":1666628921000}'),e={name:"core/converters/colors/rgb.md"},l=n(`

RGB

This page is about the RGB class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The RGB class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

RGB(color)

Definition

Initializes a RGB class from a System.Drawing.Color. Returns a RGB class.

Arguments

TypeNameMeaning
ColorcolorThe RGB color.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as o,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"RGB","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/rgb.md","filePath":"core/converters/colors/rgb.md","lastUpdated":1666628921000}'),e={name:"core/converters/colors/rgb.md"},l=n(`

RGB

This page is about the RGB class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The RGB class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

RGB(color)

Definition

Initializes a RGB class from a System.Drawing.Color. Returns a RGB class.

Arguments

TypeNameMeaning
ColorcolorThe RGB color.

Usage

c#
using PeyrSharp.Core.Converters;
 using System.Drawing;
 
-RGB rgb = new(Color.FromArgb(255, 150, 120));
using PeyrSharp.Core.Converters;
+RGB rgb = new(Color.FromArgb(255, 150, 120));
using PeyrSharp.Core.Converters;
 using System.Drawing;
 
-RGB rgb = new(Color.FromArgb(255, 150, 120));

RGB(r, g, b)

Definition

Initializes a RGB class from its r, g and b values. Returns a RGB class.

Arguments

TypeNameMeaning
intrRed.
intgGreen.
intbBlue.

WARNING

If you specify a value that is not between 0 and 255, a RGBInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
+RGB rgb = new(Color.FromArgb(255, 150, 120));

RGB(r, g, b)

Definition

Initializes a RGB class from its r, g and b values. Returns a RGB class.

Arguments

TypeNameMeaning
intrRed.
intgGreen.
intbBlue.

WARNING

If you specify a value that is not between 0 and 255, a RGBInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
 
-RGB rgb = new(255, 150, 120);
using PeyrSharp.Core.Converters;
+RGB rgb = new(255, 150, 120);
using PeyrSharp.Core.Converters;
 
-RGB rgb = new(255, 150, 120);

Methods

ToHex()

Definition

Converts the RGB color to hexadecimal (HEX). Returns a HEX class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
+RGB rgb = new(255, 150, 120);

Methods

ToHex()

Definition

Converts the RGB color to hexadecimal (HEX). Returns a HEX class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
 
 HEX hex = new RGB(255, 0, 0).ToHex();
using PeyrSharp.Core.Converters;
 
diff --git a/docs/assets/core_converters_colors_rgb.md.d296121e.lean.js b/docs/assets/core_converters_colors_rgb.md.5b4b7e3c.lean.js
similarity index 71%
rename from docs/assets/core_converters_colors_rgb.md.d296121e.lean.js
rename to docs/assets/core_converters_colors_rgb.md.5b4b7e3c.lean.js
index 00170b1..967943b 100644
--- a/docs/assets/core_converters_colors_rgb.md.d296121e.lean.js
+++ b/docs/assets/core_converters_colors_rgb.md.5b4b7e3c.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as o,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"RGB","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/rgb.md","filePath":"core/converters/colors/rgb.md","lastUpdated":1666628921000}'),e={name:"core/converters/colors/rgb.md"},l=n("",41),t=[l];function r(p,c,i,d,y,h){return a(),o("div",null,t)}const g=s(e,[["render",r]]);export{u as __pageData,g as default};
+import{_ as s,o as a,c as o,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"RGB","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/colors/rgb.md","filePath":"core/converters/colors/rgb.md","lastUpdated":1666628921000}'),e={name:"core/converters/colors/rgb.md"},l=n("",41),t=[l];function r(p,c,i,d,y,h){return a(),o("div",null,t)}const g=s(e,[["render",r]]);export{u as __pageData,g as default};
diff --git a/docs/assets/core_converters_distances.md.0f400c09.js b/docs/assets/core_converters_distances.md.59b74097.js
similarity index 99%
rename from docs/assets/core_converters_distances.md.0f400c09.js
rename to docs/assets/core_converters_distances.md.59b74097.js
index 978e474..285f2cb 100644
--- a/docs/assets/core_converters_distances.md.0f400c09.js
+++ b/docs/assets/core_converters_distances.md.59b74097.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Distances","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/distances.md","filePath":"core/converters/distances.md","lastUpdated":1666511609000}'),o={name:"core/converters/distances.md"},t=n(`

Distances

This page is about the Distances class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Distances class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

MilesToKm(miles)

Definition

Converts miles to kilometers. Returns a double value.

Arguments

TypeNameMeaning
doublemilesNumber of mile(s) to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Distances","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/distances.md","filePath":"core/converters/distances.md","lastUpdated":1666511609000}'),o={name:"core/converters/distances.md"},t=n(`

Distances

This page is about the Distances class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Distances class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

MilesToKm(miles)

Definition

Converts miles to kilometers. Returns a double value.

Arguments

TypeNameMeaning
doublemilesNumber of mile(s) to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double km = Distances.MilesToKm(10);
 // km = 16.09344
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_distances.md.0f400c09.lean.js b/docs/assets/core_converters_distances.md.59b74097.lean.js
similarity index 71%
rename from docs/assets/core_converters_distances.md.0f400c09.lean.js
rename to docs/assets/core_converters_distances.md.59b74097.lean.js
index c866c75..633a801 100644
--- a/docs/assets/core_converters_distances.md.0f400c09.lean.js
+++ b/docs/assets/core_converters_distances.md.59b74097.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Distances","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/distances.md","filePath":"core/converters/distances.md","lastUpdated":1666511609000}'),o={name:"core/converters/distances.md"},t=n("",35),l=[t];function p(r,c,i,d,h,y){return a(),e("div",null,l)}const u=s(o,[["render",p]]);export{m as __pageData,u as default};
+import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Distances","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/distances.md","filePath":"core/converters/distances.md","lastUpdated":1666511609000}'),o={name:"core/converters/distances.md"},t=n("",35),l=[t];function p(r,c,i,d,h,y){return a(),e("div",null,l)}const u=s(o,[["render",p]]);export{m as __pageData,u as default};
diff --git a/docs/assets/core_converters_energies.md.d8e42ef0.js b/docs/assets/core_converters_energies.md.8474f431.js
similarity index 98%
rename from docs/assets/core_converters_energies.md.d8e42ef0.js
rename to docs/assets/core_converters_energies.md.8474f431.js
index 3bdcb98..fd95e93 100644
--- a/docs/assets/core_converters_energies.md.d8e42ef0.js
+++ b/docs/assets/core_converters_energies.md.8474f431.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Energies","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/energies.md","filePath":"core/converters/energies.md","lastUpdated":1678016186000}'),n={name:"core/converters/energies.md"},l=o(`

Energies

This page is about the Energies class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Energies class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CaloriesToJoules(calories)

Definition

Converts calories to joules.

Arguments

TypeNameMeaning
doublecaloriesThe amount of energy in calories to be converted.

Returns

The equivalent amount of energy in joules.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Energies","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/energies.md","filePath":"core/converters/energies.md","lastUpdated":1678016186000}'),n={name:"core/converters/energies.md"},l=o(`

Energies

This page is about the Energies class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Energies class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CaloriesToJoules(calories)

Definition

Converts calories to joules.

Arguments

TypeNameMeaning
doublecaloriesThe amount of energy in calories to be converted.

Returns

The equivalent amount of energy in joules.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double calories = 100.0;
 double joules = Energies.CaloriesToJoules(calories);
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_energies.md.d8e42ef0.lean.js b/docs/assets/core_converters_energies.md.8474f431.lean.js
similarity index 71%
rename from docs/assets/core_converters_energies.md.d8e42ef0.lean.js
rename to docs/assets/core_converters_energies.md.8474f431.lean.js
index 12d5086..390116c 100644
--- a/docs/assets/core_converters_energies.md.d8e42ef0.lean.js
+++ b/docs/assets/core_converters_energies.md.8474f431.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Energies","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/energies.md","filePath":"core/converters/energies.md","lastUpdated":1678016186000}'),n={name:"core/converters/energies.md"},l=o("",25),t=[l];function r(p,c,i,d,h,y){return a(),e("div",null,t)}const b=s(n,[["render",r]]);export{E as __pageData,b as default};
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Energies","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/energies.md","filePath":"core/converters/energies.md","lastUpdated":1678016186000}'),n={name:"core/converters/energies.md"},l=o("",25),t=[l];function r(p,c,i,d,h,y){return a(),e("div",null,t)}const b=s(n,[["render",r]]);export{E as __pageData,b as default};
diff --git a/docs/assets/core_converters_masses.md.f6cfd9f7.js b/docs/assets/core_converters_masses.md.0757297d.js
similarity index 98%
rename from docs/assets/core_converters_masses.md.f6cfd9f7.js
rename to docs/assets/core_converters_masses.md.0757297d.js
index c9e2e5b..becea60 100644
--- a/docs/assets/core_converters_masses.md.f6cfd9f7.js
+++ b/docs/assets/core_converters_masses.md.0757297d.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as o,Q as e}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Masses","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/masses.md","filePath":"core/converters/masses.md","lastUpdated":1666511609000}'),n={name:"core/converters/masses.md"},t=e(`

Masses

This page is about the Masses class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Masses class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

PoundsToKilograms(pounds)

Definition

Converts pounds to kilograms. Returns a double value.

Arguments

TypeNameMeaning
doublepoundsNumber of pounds to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as o,Q as e}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Masses","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/masses.md","filePath":"core/converters/masses.md","lastUpdated":1666511609000}'),n={name:"core/converters/masses.md"},t=e(`

Masses

This page is about the Masses class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Masses class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

PoundsToKilograms(pounds)

Definition

Converts pounds to kilograms. Returns a double value.

Arguments

TypeNameMeaning
doublepoundsNumber of pounds to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double kg = Masses.PoundsToKilograms(10);
 // kg = 4.535923703803784
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_masses.md.f6cfd9f7.lean.js b/docs/assets/core_converters_masses.md.0757297d.lean.js
similarity index 70%
rename from docs/assets/core_converters_masses.md.f6cfd9f7.lean.js
rename to docs/assets/core_converters_masses.md.0757297d.lean.js
index 4da53a4..7af7e41 100644
--- a/docs/assets/core_converters_masses.md.f6cfd9f7.lean.js
+++ b/docs/assets/core_converters_masses.md.0757297d.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as o,Q as e}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Masses","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/masses.md","filePath":"core/converters/masses.md","lastUpdated":1666511609000}'),n={name:"core/converters/masses.md"},t=e("",21),l=[t];function r(p,c,d,i,h,y){return a(),o("div",null,l)}const E=s(n,[["render",r]]);export{m as __pageData,E as default};
+import{_ as s,o as a,c as o,Q as e}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Masses","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/masses.md","filePath":"core/converters/masses.md","lastUpdated":1666511609000}'),n={name:"core/converters/masses.md"},t=e("",21),l=[t];function r(p,c,d,i,h,y){return a(),o("div",null,l)}const E=s(n,[["render",r]]);export{m as __pageData,E as default};
diff --git a/docs/assets/core_converters_speeds.md.c887147e.js b/docs/assets/core_converters_speeds.md.c8acd99a.js
similarity index 99%
rename from docs/assets/core_converters_speeds.md.c887147e.js
rename to docs/assets/core_converters_speeds.md.c8acd99a.js
index f1f6aaf..39746b2 100644
--- a/docs/assets/core_converters_speeds.md.c887147e.js
+++ b/docs/assets/core_converters_speeds.md.c8acd99a.js
@@ -1,4 +1,4 @@
-import{_ as s,o as e,c as a,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Speeds","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/speeds.md","filePath":"core/converters/speeds.md","lastUpdated":1683446294000}'),n={name:"core/converters/speeds.md"},l=o(`

Speeds

This page is about the Speeds class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Speeds class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

KnotsToKilometersPerHour(knots)

Definition

Converts knots to kilometers per hour.

Arguments

TypeNameMeaning
doubleknotsThe speed in knots.

Returns

The equivalent speed in kilometers per hour.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as e,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Speeds","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/speeds.md","filePath":"core/converters/speeds.md","lastUpdated":1683446294000}'),n={name:"core/converters/speeds.md"},l=o(`

Speeds

This page is about the Speeds class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Speeds class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

KnotsToKilometersPerHour(knots)

Definition

Converts knots to kilometers per hour.

Arguments

TypeNameMeaning
doubleknotsThe speed in knots.

Returns

The equivalent speed in kilometers per hour.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double speedInKnots = 20.0;
 double speedInKilometersPerHour = Speeds.KnotsToKilometersPerHour(speedInKnots);
diff --git a/docs/assets/core_converters_speeds.md.c887147e.lean.js b/docs/assets/core_converters_speeds.md.c8acd99a.lean.js
similarity index 70%
rename from docs/assets/core_converters_speeds.md.c887147e.lean.js
rename to docs/assets/core_converters_speeds.md.c8acd99a.lean.js
index 802257a..5901c29 100644
--- a/docs/assets/core_converters_speeds.md.c887147e.lean.js
+++ b/docs/assets/core_converters_speeds.md.c8acd99a.lean.js
@@ -1 +1 @@
-import{_ as s,o as e,c as a,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Speeds","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/speeds.md","filePath":"core/converters/speeds.md","lastUpdated":1683446294000}'),n={name:"core/converters/speeds.md"},l=o("",95),p=[l];function r(t,c,i,d,y,E){return e(),a("div",null,p)}const m=s(n,[["render",r]]);export{u as __pageData,m as default};
+import{_ as s,o as e,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Speeds","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/speeds.md","filePath":"core/converters/speeds.md","lastUpdated":1683446294000}'),n={name:"core/converters/speeds.md"},l=o("",95),p=[l];function r(t,c,i,d,y,E){return e(),a("div",null,p)}const m=s(n,[["render",r]]);export{u as __pageData,m as default};
diff --git a/docs/assets/core_converters_storage.md.10e30c28.js b/docs/assets/core_converters_storage.md.bb73b7e2.js
similarity index 99%
rename from docs/assets/core_converters_storage.md.10e30c28.js
rename to docs/assets/core_converters_storage.md.bb73b7e2.js
index 6854dc3..61d9b38 100644
--- a/docs/assets/core_converters_storage.md.10e30c28.js
+++ b/docs/assets/core_converters_storage.md.bb73b7e2.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as t}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"Storage","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/storage.md","filePath":"core/converters/storage.md","lastUpdated":1683446294000}'),o={name:"core/converters/storage.md"},n=t(`

Storage

This page is about the Storage class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Storage class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToByte(value, storageUnit)

Definition

Converts a size (kb, mb, ...) to byte. Returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doublevalueThe value to convert.
StorageUnitsstorageUnitThe unit of the value. (ex: kilobyte, gigabyte...)

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as e,Q as t}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"Storage","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/storage.md","filePath":"core/converters/storage.md","lastUpdated":1683446294000}'),o={name:"core/converters/storage.md"},n=t(`

Storage

This page is about the Storage class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Storage class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToByte(value, storageUnit)

Definition

Converts a size (kb, mb, ...) to byte. Returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doublevalueThe value to convert.
StorageUnitsstorageUnitThe unit of the value. (ex: kilobyte, gigabyte...)

Usage

c#
using PeyrSharp.Core.Converters;
 
 double byte = Storage.ToByte(1, StorageUnits.Kilobyte);
 // byte = 1000
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_storage.md.10e30c28.lean.js b/docs/assets/core_converters_storage.md.bb73b7e2.lean.js
similarity index 71%
rename from docs/assets/core_converters_storage.md.10e30c28.lean.js
rename to docs/assets/core_converters_storage.md.bb73b7e2.lean.js
index 8d5ef56..313d957 100644
--- a/docs/assets/core_converters_storage.md.10e30c28.lean.js
+++ b/docs/assets/core_converters_storage.md.bb73b7e2.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as t}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"Storage","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/storage.md","filePath":"core/converters/storage.md","lastUpdated":1683446294000}'),o={name:"core/converters/storage.md"},n=t("",69),l=[n];function p(r,c,i,d,y,h){return a(),e("div",null,l)}const E=s(o,[["render",p]]);export{b as __pageData,E as default};
+import{_ as s,o as a,c as e,Q as t}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"Storage","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/storage.md","filePath":"core/converters/storage.md","lastUpdated":1683446294000}'),o={name:"core/converters/storage.md"},n=t("",69),l=[n];function p(r,c,i,d,y,h){return a(),e("div",null,l)}const E=s(o,[["render",p]]);export{b as __pageData,E as default};
diff --git a/docs/assets/core_converters_temperatures.md.8a78c1a2.js b/docs/assets/core_converters_temperatures.md.0c025285.js
similarity index 98%
rename from docs/assets/core_converters_temperatures.md.8a78c1a2.js
rename to docs/assets/core_converters_temperatures.md.0c025285.js
index 16859b4..84eaab7 100644
--- a/docs/assets/core_converters_temperatures.md.8a78c1a2.js
+++ b/docs/assets/core_converters_temperatures.md.0c025285.js
@@ -1,4 +1,4 @@
-import{_ as s,o as e,c as a,Q as t}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Temperatures","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/temperatures.md","filePath":"core/converters/temperatures.md","lastUpdated":1666511987000}'),o={name:"core/converters/temperatures.md"},n=t(`

Temperatures

This page is about the Temperatures class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Temperatures class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CelsiusToFahrenheit(celsius)

Definition

Converts Celsius (°C) to Fahrenheit (°F). Returns a double value.

Arguments

TypeNameMeaning
doublecelsiusNumber of Celsius to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as e,c as a,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Temperatures","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/temperatures.md","filePath":"core/converters/temperatures.md","lastUpdated":1666511987000}'),o={name:"core/converters/temperatures.md"},n=t(`

Temperatures

This page is about the Temperatures class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Temperatures class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CelsiusToFahrenheit(celsius)

Definition

Converts Celsius (°C) to Fahrenheit (°F). Returns a double value.

Arguments

TypeNameMeaning
doublecelsiusNumber of Celsius to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double f = Temperatures.CelsiusToFahrenheit(22);
 // f = 71.6
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_temperatures.md.8a78c1a2.lean.js b/docs/assets/core_converters_temperatures.md.0c025285.lean.js
similarity index 72%
rename from docs/assets/core_converters_temperatures.md.8a78c1a2.lean.js
rename to docs/assets/core_converters_temperatures.md.0c025285.lean.js
index 6939463..7cffa5a 100644
--- a/docs/assets/core_converters_temperatures.md.8a78c1a2.lean.js
+++ b/docs/assets/core_converters_temperatures.md.0c025285.lean.js
@@ -1 +1 @@
-import{_ as s,o as e,c as a,Q as t}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Temperatures","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/temperatures.md","filePath":"core/converters/temperatures.md","lastUpdated":1666511987000}'),o={name:"core/converters/temperatures.md"},n=t("",21),l=[n];function r(p,c,i,d,h,u){return e(),a("div",null,l)}const m=s(o,[["render",r]]);export{E as __pageData,m as default};
+import{_ as s,o as e,c as a,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Temperatures","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/temperatures.md","filePath":"core/converters/temperatures.md","lastUpdated":1666511987000}'),o={name:"core/converters/temperatures.md"},n=t("",21),l=[n];function r(p,c,i,d,h,u){return e(),a("div",null,l)}const m=s(o,[["render",r]]);export{E as __pageData,m as default};
diff --git a/docs/assets/core_converters_time.md.7e0c9e9e.js b/docs/assets/core_converters_time.md.e28d170c.js
similarity index 98%
rename from docs/assets/core_converters_time.md.7e0c9e9e.js
rename to docs/assets/core_converters_time.md.e28d170c.js
index f9944c1..17c2591 100644
--- a/docs/assets/core_converters_time.md.7e0c9e9e.js
+++ b/docs/assets/core_converters_time.md.e28d170c.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Time","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/time.md","filePath":"core/converters/time.md","lastUpdated":1670145438000}'),o={name:"core/converters/time.md"},t=e(`

Time

This page is about the Time class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Time class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToSeconds(d, timeUnits)

Definition

Converts a specified time unit value to seconds. For instance, you can convert days, hours or minutes to seconds. It returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doubledThe time unit to convert.
TimeUnitstimeUnitsThe unit of the time. (ex: minutes, hours...)

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Time","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/time.md","filePath":"core/converters/time.md","lastUpdated":1670145438000}'),o={name:"core/converters/time.md"},t=e(`

Time

This page is about the Time class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Time class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToSeconds(d, timeUnits)

Definition

Converts a specified time unit value to seconds. For instance, you can convert days, hours or minutes to seconds. It returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doubledThe time unit to convert.
TimeUnitstimeUnitsThe unit of the time. (ex: minutes, hours...)

Usage

c#
using PeyrSharp.Core.Converters;
 using PeyrSharp.Enums;
 
 double seconds = Time.ToSeconds(5, TimeUnits.Minutes);
@@ -36,8 +36,8 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 var date = Time.UnixTimeToDateTime(1670144268); // 12/04/2022 08:57:48

DateTimeToUnixTime(dateTime)

Available in version 1.1 and higher.

Definition

Converts DateTime to Unix Time. It returns an int value.

Arguments

TypeNameMeaning
DateTimedateTimeThe converted DateTime in Unix Time.

Usage

c#
using PeyrSharp.Core.Converters;
 
-int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
+int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
 // unix = 1670144268
using PeyrSharp.Core.Converters;
 
-int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
+int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
 // unix = 1670144268
`,55),l=[t];function p(r,c,i,d,y,h){return a(),n("div",null,l)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; diff --git a/docs/assets/core_converters_time.md.7e0c9e9e.lean.js b/docs/assets/core_converters_time.md.e28d170c.lean.js similarity index 70% rename from docs/assets/core_converters_time.md.7e0c9e9e.lean.js rename to docs/assets/core_converters_time.md.e28d170c.lean.js index a1ceb81..5797167 100644 --- a/docs/assets/core_converters_time.md.7e0c9e9e.lean.js +++ b/docs/assets/core_converters_time.md.e28d170c.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Time","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/time.md","filePath":"core/converters/time.md","lastUpdated":1670145438000}'),o={name:"core/converters/time.md"},t=e("",55),l=[t];function p(r,c,i,d,y,h){return a(),n("div",null,l)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Time","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/time.md","filePath":"core/converters/time.md","lastUpdated":1670145438000}'),o={name:"core/converters/time.md"},t=e("",55),l=[t];function p(r,c,i,d,y,h){return a(),n("div",null,l)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; diff --git a/docs/assets/core_converters_volumes.md.385daf16.js b/docs/assets/core_converters_volumes.md.80d2f015.js similarity index 98% rename from docs/assets/core_converters_volumes.md.385daf16.js rename to docs/assets/core_converters_volumes.md.80d2f015.js index 5ef720c..61e5eb7 100644 --- a/docs/assets/core_converters_volumes.md.385daf16.js +++ b/docs/assets/core_converters_volumes.md.80d2f015.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Volumes","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/volumes.md","filePath":"core/converters/volumes.md","lastUpdated":1666513063000}'),t={name:"core/converters/volumes.md"},n=o(`

Volumes

This page is about the Volumes class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Volumes class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

M3ToLitre(m3)

Definition

Converts Cubic Meters (m³) to Litre (L). Returns a double value.

Arguments

TypeNameMeaning
doublem3Number of cubic meters to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Volumes","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/volumes.md","filePath":"core/converters/volumes.md","lastUpdated":1666513063000}'),t={name:"core/converters/volumes.md"},n=o(`

Volumes

This page is about the Volumes class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Volumes class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

M3ToLitre(m3)

Definition

Converts Cubic Meters (m³) to Litre (L). Returns a double value.

Arguments

TypeNameMeaning
doublem3Number of cubic meters to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double litre = Volumes.M3ToLitre(10);
 // litre = 10000
using PeyrSharp.Core.Converters;
diff --git a/docs/assets/core_converters_volumes.md.385daf16.lean.js b/docs/assets/core_converters_volumes.md.80d2f015.lean.js
similarity index 71%
rename from docs/assets/core_converters_volumes.md.385daf16.lean.js
rename to docs/assets/core_converters_volumes.md.80d2f015.lean.js
index 8b53baa..7768f0e 100644
--- a/docs/assets/core_converters_volumes.md.385daf16.lean.js
+++ b/docs/assets/core_converters_volumes.md.80d2f015.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"Volumes","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/volumes.md","filePath":"core/converters/volumes.md","lastUpdated":1666513063000}'),t={name:"core/converters/volumes.md"},n=o("",21),l=[n];function r(p,c,i,d,h,y){return a(),e("div",null,l)}const E=s(t,[["render",r]]);export{m as __pageData,E as default};
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"Volumes","description":"","frontmatter":{},"headers":[],"relativePath":"core/converters/volumes.md","filePath":"core/converters/volumes.md","lastUpdated":1666513063000}'),t={name:"core/converters/volumes.md"},n=o("",21),l=[n];function r(p,c,i,d,h,y){return a(),e("div",null,l)}const E=s(t,[["render",r]]);export{m as __pageData,E as default};
diff --git a/docs/assets/core_crypt.md.55e86926.js b/docs/assets/core_crypt.md.7f709c61.js
similarity index 99%
rename from docs/assets/core_crypt.md.55e86926.js
rename to docs/assets/core_crypt.md.7f709c61.js
index e0263a1..375170b 100644
--- a/docs/assets/core_crypt.md.55e86926.js
+++ b/docs/assets/core_crypt.md.7f709c61.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Crypt","description":"","frontmatter":{},"headers":[],"relativePath":"core/crypt.md","filePath":"core/crypt.md","lastUpdated":1666705294000}'),t={name:"core/crypt.md"},o=e(`

Crypt

This page is about the Crypt class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Crypt class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

EncryptAes(str, key)

Definitions

Encrypts a string using AES encryption. Returns the encrypted content as a string as well.

Arguments

TypeNameMeaning
stringstrThe text to encrypt.
stringkeyThe encryption key. This is the same key that will be used to decrypt the text.

Usage

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Crypt","description":"","frontmatter":{},"headers":[],"relativePath":"core/crypt.md","filePath":"core/crypt.md","lastUpdated":1666705294000}'),t={name:"core/crypt.md"},o=e(`

Crypt

This page is about the Crypt class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Crypt class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

EncryptAes(str, key)

Definitions

Encrypts a string using AES encryption. Returns the encrypted content as a string as well.

Arguments

TypeNameMeaning
stringstrThe text to encrypt.
stringkeyThe encryption key. This is the same key that will be used to decrypt the text.

Usage

c#
using PeyrSharp.Core;
 
 string text = "Hello, world!";
 string encrypted = Crypt.EncryptAes(text, "password");
diff --git a/docs/assets/core_crypt.md.55e86926.lean.js b/docs/assets/core_crypt.md.7f709c61.lean.js
similarity index 68%
rename from docs/assets/core_crypt.md.55e86926.lean.js
rename to docs/assets/core_crypt.md.7f709c61.lean.js
index f2cd41e..0c28604 100644
--- a/docs/assets/core_crypt.md.55e86926.lean.js
+++ b/docs/assets/core_crypt.md.7f709c61.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Crypt","description":"","frontmatter":{},"headers":[],"relativePath":"core/crypt.md","filePath":"core/crypt.md","lastUpdated":1666705294000}'),t={name:"core/crypt.md"},o=e("",49),p=[o];function l(r,c,y,i,d,E){return a(),n("div",null,p)}const g=s(t,[["render",l]]);export{u as __pageData,g as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Crypt","description":"","frontmatter":{},"headers":[],"relativePath":"core/crypt.md","filePath":"core/crypt.md","lastUpdated":1666705294000}'),t={name:"core/crypt.md"},o=e("",49),p=[o];function l(r,c,y,i,d,E){return a(),n("div",null,p)}const g=s(t,[["render",l]]);export{u as __pageData,g as default};
diff --git a/docs/assets/core_guid-options.md.5c1af4b5.lean.js b/docs/assets/core_guid-options.md.5c1af4b5.lean.js
deleted file mode 100644
index f4f99b3..0000000
--- a/docs/assets/core_guid-options.md.5c1af4b5.lean.js
+++ /dev/null
@@ -1 +0,0 @@
-import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"GuidOptions","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid-options.md","filePath":"core/guid-options.md","lastUpdated":1665313649000}'),o={name:"core/guid-options.md"},p=n("",41),t=[p];function l(i,c,r,d,h,y){return a(),e("div",null,t)}const b=s(o,[["render",l]]);export{g as __pageData,b as default};
diff --git a/docs/assets/core_guid-options.md.5c1af4b5.js b/docs/assets/core_guid-options.md.65435a01.js
similarity index 65%
rename from docs/assets/core_guid-options.md.5c1af4b5.js
rename to docs/assets/core_guid-options.md.65435a01.js
index 5f2e433..8282b61 100644
--- a/docs/assets/core_guid-options.md.5c1af4b5.js
+++ b/docs/assets/core_guid-options.md.65435a01.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"GuidOptions","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid-options.md","filePath":"core/guid-options.md","lastUpdated":1665313649000}'),o={name:"core/guid-options.md"},p=n(`

GuidOptions

This page is about the GuidOptions class available in PeyrSharp.Core. You can find here all of its properties.

Compatibility

The GuidOptions class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

GuidOptions()

Definition

Initializes GuidOptions with default values for its properties.

Usage

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"GuidOptions","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid-options.md","filePath":"core/guid-options.md","lastUpdated":1665313649000}'),o={name:"core/guid-options.md"},p=n(`

GuidOptions

This page is about the GuidOptions class available in PeyrSharp.Core. You can find here all of its properties.

Compatibility

The GuidOptions class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

GuidOptions()

Definition

Initializes GuidOptions with default values for its properties.

Usage

c#
using PeyrSharp.Core;
 
 var options = new GuidOptions();
 /*
@@ -34,4 +34,4 @@ import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=
         - Hyphens = true
         - Braces = true
         - UpperCaseOnly = true
-*/

Properties

Length

Definition

c#
public int Length { get; set; }
public int Length { get; set; }

The Length property is an int representing the length of the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Hyphens

Definition

c#
public bool Hyphens { get; set; }
public bool Hyphens { get; set; }

The Hyphens property is a bool, which will determine if you want hyphens in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Braces

Definition

c#
public bool Braces { get; set; }
public bool Braces { get; set; }

The Braces property is a bool, which will determine if you want braces in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

UpperCaseOnly

Definition

c#
public bool UpperCaseOnly { get; set; }
public bool UpperCaseOnly { get; set; }

The UpperCaseOnly property is a bool, which will determine if you want to only have upper cases in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

`,41),t=[p];function l(i,c,r,d,h,y){return a(),e("div",null,t)}const b=s(o,[["render",l]]);export{g as __pageData,b as default}; +*/

Properties

Length

Definition

c#
public int Length { get; set; }
public int Length { get; set; }

The Length property is an int representing the length of the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Hyphens

Definition

c#
public bool Hyphens { get; set; }
public bool Hyphens { get; set; }

The Hyphens property is a bool, which will determine if you want hyphens in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Braces

Definition

c#
public bool Braces { get; set; }
public bool Braces { get; set; }

The Braces property is a bool, which will determine if you want braces in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

UpperCaseOnly

Definition

c#
public bool UpperCaseOnly { get; set; }
public bool UpperCaseOnly { get; set; }

The UpperCaseOnly property is a bool, which will determine if you want to only have upper cases in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

`,41),l=[p];function t(i,c,r,d,h,y){return a(),e("div",null,l)}const b=s(o,[["render",t]]);export{g as __pageData,b as default}; diff --git a/docs/assets/core_guid-options.md.65435a01.lean.js b/docs/assets/core_guid-options.md.65435a01.lean.js new file mode 100644 index 0000000..f7446b5 --- /dev/null +++ b/docs/assets/core_guid-options.md.65435a01.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"GuidOptions","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid-options.md","filePath":"core/guid-options.md","lastUpdated":1665313649000}'),o={name:"core/guid-options.md"},p=n("",41),l=[p];function t(i,c,r,d,h,y){return a(),e("div",null,l)}const b=s(o,[["render",t]]);export{g as __pageData,b as default}; diff --git a/docs/assets/core_guid.md.d28b3014.js b/docs/assets/core_guid.md.8f92cc06.js similarity index 99% rename from docs/assets/core_guid.md.d28b3014.js rename to docs/assets/core_guid.md.8f92cc06.js index c959a3e..9236b0d 100644 --- a/docs/assets/core_guid.md.d28b3014.js +++ b/docs/assets/core_guid.md.8f92cc06.js @@ -1,4 +1,4 @@ -import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"GuidGen","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid.md","filePath":"core/guid.md","lastUpdated":1665311928000}'),o={name:"core/guid.md"},t=n(`

GuidGen

This page is about the GuidGen class available in PeyrSharp.Core. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The GuidGen class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Generate()

Definition

The Generate() method generates a Guid and will return it as a string.

INFO

This method has different overloads.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core;
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"GuidGen","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid.md","filePath":"core/guid.md","lastUpdated":1665311928000}'),o={name:"core/guid.md"},t=n(`

GuidGen

This page is about the GuidGen class available in PeyrSharp.Core. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The GuidGen class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Generate()

Definition

The Generate() method generates a Guid and will return it as a string.

INFO

This method has different overloads.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core;
 
 string guid = GuidGen.Generate();
 // guid = 7992acdd-1c9a-4985-92df-04599d560bbc (example)
using PeyrSharp.Core;
diff --git a/docs/assets/core_guid.md.d28b3014.lean.js b/docs/assets/core_guid.md.8f92cc06.lean.js
similarity index 68%
rename from docs/assets/core_guid.md.d28b3014.lean.js
rename to docs/assets/core_guid.md.8f92cc06.lean.js
index ed178cc..11517d9 100644
--- a/docs/assets/core_guid.md.d28b3014.lean.js
+++ b/docs/assets/core_guid.md.8f92cc06.lean.js
@@ -1 +1 @@
-import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"GuidGen","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid.md","filePath":"core/guid.md","lastUpdated":1665311928000}'),o={name:"core/guid.md"},t=n("",43),l=[t];function p(r,c,i,d,h,u){return s(),e("div",null,l)}const E=a(o,[["render",p]]);export{g as __pageData,E as default};
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"GuidGen","description":"","frontmatter":{},"headers":[],"relativePath":"core/guid.md","filePath":"core/guid.md","lastUpdated":1665311928000}'),o={name:"core/guid.md"},t=n("",43),l=[t];function p(r,c,i,d,h,u){return s(),e("div",null,l)}const E=a(o,[["render",p]]);export{g as __pageData,E as default};
diff --git a/docs/assets/core_internet.md.b3af24f5.js b/docs/assets/core_internet.md.bfab286e.js
similarity index 93%
rename from docs/assets/core_internet.md.b3af24f5.js
rename to docs/assets/core_internet.md.bfab286e.js
index 2363e95..d2dd927 100644
--- a/docs/assets/core_internet.md.b3af24f5.js
+++ b/docs/assets/core_internet.md.bfab286e.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Internet","description":"","frontmatter":{},"headers":[],"relativePath":"core/internet.md","filePath":"core/internet.md","lastUpdated":1683446294000}'),l={name:"core/internet.md"},e=o(`

Internet

This page is about the Internet class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Internet class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IsAvailableAsync()

Definition

Checks if a connection to the Internet is available. Returns a bool value.

INFO

This method is asynchronous and awaitable.

Arguments

This method has no arguments

Usage

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Internet","description":"","frontmatter":{},"headers":[],"relativePath":"core/internet.md","filePath":"core/internet.md","lastUpdated":1683446294000}'),l={name:"core/internet.md"},e=o(`

Internet

This page is about the Internet class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Internet class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IsAvailableAsync()

Definition

Checks if a connection to the Internet is available. Returns a bool value.

INFO

This method is asynchronous and awaitable.

Arguments

This method has no arguments

Usage

c#
using PeyrSharp.Core;
 
 public static async void Main()
 {
@@ -23,25 +23,25 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=
 public static async void Main()
 {
     int status = await Internet.GetStatusCodeAsync("https://google.com");
-    // status should be 200 if everything is working
+    // status should be 200 if everything is working
 }
using PeyrSharp.Core;
 
 public static async void Main()
 {
     int status = await Internet.GetStatusCodeAsync("https://google.com");
-    // status should be 200 if everything is working
+    // status should be 200 if everything is working
 }

GetStatusDescriptionAsync(url)

Definition

Gets the status description of a specific page by making a request to it. Returns the status description as a string.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlThe URL where to send the request.

Usage

c#
using PeyrSharp.Core;
 
 public static async void Main()
 {
     string status = await Internet.GetStatusDescriptionAsync("https://google.com");
-    // status should be OK if everything is working
+    // status should be OK if everything is working
 }
using PeyrSharp.Core;
 
 public static async void Main()
 {
     string status = await Internet.GetStatusDescriptionAsync("https://google.com");
-    // status should be OK if everything is working
+    // status should be OK if everything is working
 }

GetStatusInfoAsync(url)

Definition

This method sends an HTTP GET request to a given URL and returns a Task of StatusInfo object that contains the status code, description, and type of the URL. The HTTP request method used is HttpClient.GetAsync().

Arguments

TypeNameMeaning
stringurlThe URL to get the status info from.

Returns

A Task of StatusInfo object containing the status code, description, and type of the URL.

Usage

c#
using PeyrSharp.Core;
 
 StatusInfo statusInfo = await Internet.GetStatusInfoAsync("https://www.google.com");
using PeyrSharp.Core;
@@ -54,19 +54,19 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=
     int status = await Internet.GetStatusCodeAsync("https://google.com");
     switch (Internet.GetStatusCodeType(status))
     {
-        case StatusCodes.Informational:
+        case StatusCodes.Informational:
             Console.WriteLine("An information status code has been returned.");
             break;
-        case StatusCodes.Success:
+        case StatusCodes.Success:
             Console.WriteLine("An successful status code has been returned.");
             break;
-        case StatusCodes.Redirection:
+        case StatusCodes.Redirection:
             Console.WriteLine("An redirection status code has been returned.");
             break;
-        case StatusCodes.ClientError:
+        case StatusCodes.ClientError:
             Console.WriteLine("An client error status code has been returned.");
             break;
-        case StatusCodes.ServerError:
+        case StatusCodes.ServerError:
             Console.WriteLine("An server error status code has been returned.");
             break;
     }
@@ -78,19 +78,19 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=
     int status = await Internet.GetStatusCodeAsync("https://google.com");
     switch (Internet.GetStatusCodeType(status))
     {
-        case StatusCodes.Informational:
+        case StatusCodes.Informational:
             Console.WriteLine("An information status code has been returned.");
             break;
-        case StatusCodes.Success:
+        case StatusCodes.Success:
             Console.WriteLine("An successful status code has been returned.");
             break;
-        case StatusCodes.Redirection:
+        case StatusCodes.Redirection:
             Console.WriteLine("An redirection status code has been returned.");
             break;
-        case StatusCodes.ClientError:
+        case StatusCodes.ClientError:
             Console.WriteLine("An client error status code has been returned.");
             break;
-        case StatusCodes.ServerError:
+        case StatusCodes.ServerError:
             Console.WriteLine("An server error status code has been returned.");
             break;
     }
diff --git a/docs/assets/core_internet.md.b3af24f5.lean.js b/docs/assets/core_internet.md.bfab286e.lean.js
similarity index 69%
rename from docs/assets/core_internet.md.b3af24f5.lean.js
rename to docs/assets/core_internet.md.bfab286e.lean.js
index 84e6487..2a26470 100644
--- a/docs/assets/core_internet.md.b3af24f5.lean.js
+++ b/docs/assets/core_internet.md.bfab286e.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Internet","description":"","frontmatter":{},"headers":[],"relativePath":"core/internet.md","filePath":"core/internet.md","lastUpdated":1683446294000}'),l={name:"core/internet.md"},e=o("",71),t=[e];function p(r,c,i,y,E,d){return a(),n("div",null,t)}const b=s(l,[["render",p]]);export{u as __pageData,b as default};
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Internet","description":"","frontmatter":{},"headers":[],"relativePath":"core/internet.md","filePath":"core/internet.md","lastUpdated":1683446294000}'),l={name:"core/internet.md"},e=o("",71),t=[e];function p(r,c,i,y,E,d){return a(),n("div",null,t)}const b=s(l,[["render",p]]);export{u as __pageData,b as default};
diff --git a/docs/assets/core_json-helper.md.cc60e6c2.js b/docs/assets/core_json-helper.md.9829d0c8.js
similarity index 94%
rename from docs/assets/core_json-helper.md.cc60e6c2.js
rename to docs/assets/core_json-helper.md.9829d0c8.js
index 37bd7a3..d998c03 100644
--- a/docs/assets/core_json-helper.md.cc60e6c2.js
+++ b/docs/assets/core_json-helper.md.9829d0c8.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"JsonHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/json-helper.md","filePath":"core/json-helper.md","lastUpdated":1690620914000}'),l={name:"core/json-helper.md"},e=o(`

JsonHelper

This page is about the JsonHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The JsonHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromJson<T>(fileName)

Definition

The LoadFromJson<T>() method loads an object from a JSON file.

Type Parameters

TypeMeaning
TThe type of the object to save.

Arguments

TypeNameMeaning
stringfileNameThe name of the file to load from.

Returns

The object loaded from the file.

Usage

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"JsonHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/json-helper.md","filePath":"core/json-helper.md","lastUpdated":1690620914000}'),e={name:"core/json-helper.md"},l=o(`

JsonHelper

This page is about the JsonHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The JsonHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromJson<T>(fileName)

Definition

The LoadFromJson<T>() method loads an object from a JSON file.

Type Parameters

TypeMeaning
TThe type of the object to save.

Arguments

TypeNameMeaning
stringfileNameThe name of the file to load from.

Returns

The object loaded from the file.

Usage

c#
using PeyrSharp.Core;
 using System.IO;
 using System.Text.Json;
 
@@ -20,10 +20,10 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const F=
 
 public static void Main()
 {
-    // Create an object to save
+    // Create an object to save
     MyObject obj = new MyObject();
 
-    // Save the object as a JSON file
+    // Save the object as a JSON file
     JsonHelper.SaveAsJson(obj, "output.json");
 }
 
@@ -37,10 +37,10 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const F=
 
 public static void Main()
 {
-    // Create an object to save
+    // Create an object to save
     MyObject obj = new MyObject();
 
-    // Save the object as a JSON file
+    // Save the object as a JSON file
     JsonHelper.SaveAsJson(obj, "output.json");
 }
 
@@ -48,4 +48,4 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const F=
 {
     public string Name { get; set; }
     public int Age { get; set; }
-}
`,27),p=[e];function t(r,c,y,E,i,d){return a(),n("div",null,p)}const m=s(l,[["render",t]]);export{F as __pageData,m as default}; +}
`,27),p=[l];function t(r,c,y,E,i,d){return a(),n("div",null,p)}const m=s(e,[["render",t]]);export{F as __pageData,m as default}; diff --git a/docs/assets/core_json-helper.md.9829d0c8.lean.js b/docs/assets/core_json-helper.md.9829d0c8.lean.js new file mode 100644 index 0000000..81d6112 --- /dev/null +++ b/docs/assets/core_json-helper.md.9829d0c8.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"JsonHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/json-helper.md","filePath":"core/json-helper.md","lastUpdated":1690620914000}'),e={name:"core/json-helper.md"},l=o("",27),p=[l];function t(r,c,y,E,i,d){return a(),n("div",null,p)}const m=s(e,[["render",t]]);export{F as __pageData,m as default}; diff --git a/docs/assets/core_json-helper.md.cc60e6c2.lean.js b/docs/assets/core_json-helper.md.cc60e6c2.lean.js deleted file mode 100644 index b50a769..0000000 --- a/docs/assets/core_json-helper.md.cc60e6c2.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"JsonHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/json-helper.md","filePath":"core/json-helper.md","lastUpdated":1690620914000}'),l={name:"core/json-helper.md"},e=o("",27),p=[e];function t(r,c,y,E,i,d){return a(),n("div",null,p)}const m=s(l,[["render",t]]);export{F as __pageData,m as default}; diff --git a/docs/assets/core_maths.md.3a4734f3.js b/docs/assets/core_maths.md.99a88ac4.js similarity index 95% rename from docs/assets/core_maths.md.3a4734f3.js rename to docs/assets/core_maths.md.99a88ac4.js index 459ca07..a1ceab4 100644 --- a/docs/assets/core_maths.md.3a4734f3.js +++ b/docs/assets/core_maths.md.99a88ac4.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const p=JSON.parse('{"title":"Maths","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths.md","filePath":"core/maths.md","lastUpdated":1675590267000}'),o={name:"core/maths.md"},h=r('

Maths

This page is about the Maths namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Maths namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),l=[h];function s(i,m,c,d,n,f){return e(),a("div",null,l)}const _=t(o,[["render",s]]);export{p as __pageData,_ as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const p=JSON.parse('{"title":"Maths","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths.md","filePath":"core/maths.md","lastUpdated":1675590267000}'),o={name:"core/maths.md"},h=r('

Maths

This page is about the Maths namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Maths namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),l=[h];function s(i,m,c,d,n,f){return e(),a("div",null,l)}const _=t(o,[["render",s]]);export{p as __pageData,_ as default}; diff --git a/docs/assets/core_maths.md.3a4734f3.lean.js b/docs/assets/core_maths.md.99a88ac4.lean.js similarity index 68% rename from docs/assets/core_maths.md.3a4734f3.lean.js rename to docs/assets/core_maths.md.99a88ac4.lean.js index 2fa4bc1..9d6dc55 100644 --- a/docs/assets/core_maths.md.3a4734f3.lean.js +++ b/docs/assets/core_maths.md.99a88ac4.lean.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const p=JSON.parse('{"title":"Maths","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths.md","filePath":"core/maths.md","lastUpdated":1675590267000}'),o={name:"core/maths.md"},h=r("",7),l=[h];function s(i,m,c,d,n,f){return e(),a("div",null,l)}const _=t(o,[["render",s]]);export{p as __pageData,_ as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const p=JSON.parse('{"title":"Maths","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths.md","filePath":"core/maths.md","lastUpdated":1675590267000}'),o={name:"core/maths.md"},h=r("",7),l=[h];function s(i,m,c,d,n,f){return e(),a("div",null,l)}const _=t(o,[["render",s]]);export{p as __pageData,_ as default}; diff --git a/docs/assets/core_maths_algebra.md.8645a716.js b/docs/assets/core_maths_algebra.md.a1c878ba.js similarity index 99% rename from docs/assets/core_maths_algebra.md.8645a716.js rename to docs/assets/core_maths_algebra.md.a1c878ba.js index 69ad4ff..97a4d94 100644 --- a/docs/assets/core_maths_algebra.md.8645a716.js +++ b/docs/assets/core_maths_algebra.md.a1c878ba.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Algebra","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/algebra.md","filePath":"core/maths/algebra.md","lastUpdated":1666370076000}'),o={name:"core/maths/algebra.md"},l=e(`

Algebra

This page is about the Algebra class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Algebra class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Sum(numbers) (double)

Definition

Returns the sum of specified double numbers. It returns a double value.

Arguments

TypeNameMeaning
params double[]numbersThe numbers to do the sum of.

Usage

c#
using PeyrSharp.Core.Maths;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Algebra","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/algebra.md","filePath":"core/maths/algebra.md","lastUpdated":1666370076000}'),o={name:"core/maths/algebra.md"},l=e(`

Algebra

This page is about the Algebra class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Algebra class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Sum(numbers) (double)

Definition

Returns the sum of specified double numbers. It returns a double value.

Arguments

TypeNameMeaning
params double[]numbersThe numbers to do the sum of.

Usage

c#
using PeyrSharp.Core.Maths;
 
 // Usage 1
 double sum = Algebra.Sum(12, 1.5, 45, 2.2);
diff --git a/docs/assets/core_maths_algebra.md.8645a716.lean.js b/docs/assets/core_maths_algebra.md.a1c878ba.lean.js
similarity index 70%
rename from docs/assets/core_maths_algebra.md.8645a716.lean.js
rename to docs/assets/core_maths_algebra.md.a1c878ba.lean.js
index 9a1d8f7..68ea663 100644
--- a/docs/assets/core_maths_algebra.md.8645a716.lean.js
+++ b/docs/assets/core_maths_algebra.md.a1c878ba.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Algebra","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/algebra.md","filePath":"core/maths/algebra.md","lastUpdated":1666370076000}'),o={name:"core/maths/algebra.md"},l=e("",63),p=[l];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Algebra","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/algebra.md","filePath":"core/maths/algebra.md","lastUpdated":1666370076000}'),o={name:"core/maths/algebra.md"},l=e("",63),p=[l];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default};
diff --git a/docs/assets/core_maths_geometry.md.a190352c.js b/docs/assets/core_maths_geometry.md.3ef6ef8d.js
similarity index 94%
rename from docs/assets/core_maths_geometry.md.a190352c.js
rename to docs/assets/core_maths_geometry.md.3ef6ef8d.js
index 29a173d..a46d865 100644
--- a/docs/assets/core_maths_geometry.md.a190352c.js
+++ b/docs/assets/core_maths_geometry.md.3ef6ef8d.js
@@ -1 +1 @@
-import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b637c96f.js";const y=JSON.parse('{"title":"Geometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry.md","filePath":"core/maths/geometry.md","lastUpdated":1665756355000}'),o={name:"core/maths/geometry.md"},l=r('

Geometry

This page is about the Geometry namespace available in PeyrSharp.Core.Maths. This namespace includes several classes to get and calculates various aspects of different shapes, like the area, perimeter, volume and more.

Compatibility

The namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),s=[l];function i(h,m,d,c,n,p){return t(),a("div",null,s)}const f=e(o,[["render",i]]);export{y as __pageData,f as default}; +import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const y=JSON.parse('{"title":"Geometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry.md","filePath":"core/maths/geometry.md","lastUpdated":1665756355000}'),o={name:"core/maths/geometry.md"},l=r('

Geometry

This page is about the Geometry namespace available in PeyrSharp.Core.Maths. This namespace includes several classes to get and calculates various aspects of different shapes, like the area, perimeter, volume and more.

Compatibility

The namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

',7),s=[l];function i(h,m,d,c,n,p){return t(),a("div",null,s)}const f=e(o,[["render",i]]);export{y as __pageData,f as default}; diff --git a/docs/assets/core_maths_geometry.md.a190352c.lean.js b/docs/assets/core_maths_geometry.md.3ef6ef8d.lean.js similarity index 70% rename from docs/assets/core_maths_geometry.md.a190352c.lean.js rename to docs/assets/core_maths_geometry.md.3ef6ef8d.lean.js index b02e757..6a357a4 100644 --- a/docs/assets/core_maths_geometry.md.a190352c.lean.js +++ b/docs/assets/core_maths_geometry.md.3ef6ef8d.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b637c96f.js";const y=JSON.parse('{"title":"Geometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry.md","filePath":"core/maths/geometry.md","lastUpdated":1665756355000}'),o={name:"core/maths/geometry.md"},l=r("",7),s=[l];function i(h,m,d,c,n,p){return t(),a("div",null,s)}const f=e(o,[["render",i]]);export{y as __pageData,f as default}; +import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const y=JSON.parse('{"title":"Geometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry.md","filePath":"core/maths/geometry.md","lastUpdated":1665756355000}'),o={name:"core/maths/geometry.md"},l=r("",7),s=[l];function i(h,m,d,c,n,p){return t(),a("div",null,s)}const f=e(o,[["render",i]]);export{y as __pageData,f as default}; diff --git a/docs/assets/core_maths_geometry_circle.md.a8461aaf.js b/docs/assets/core_maths_geometry_circle.md.cf2c0e72.js similarity index 75% rename from docs/assets/core_maths_geometry_circle.md.a8461aaf.js rename to docs/assets/core_maths_geometry_circle.md.cf2c0e72.js index 05cd440..d71fa51 100644 --- a/docs/assets/core_maths_geometry_circle.md.a8461aaf.js +++ b/docs/assets/core_maths_geometry_circle.md.cf2c0e72.js @@ -1,25 +1,25 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Circle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/circle.md","filePath":"core/maths/geometry/circle.md","lastUpdated":1665756380000}'),o={name:"core/maths/geometry/circle.md"},l=n(`

Circle

This page is about the Circle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Circle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Circle(radius)

Definition

Initializes a Circle class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the circle.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Circle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/circle.md","filePath":"core/maths/geometry/circle.md","lastUpdated":1665756380000}'),o={name:"core/maths/geometry/circle.md"},l=n(`

Circle

This page is about the Circle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Circle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Circle(radius)

Definition

Initializes a Circle class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the circle.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10); // Creates a circle with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
+Circle circle = new(10); // Creates a circle with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10); // Creates a circle with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Circle circle = new(10); // Creates a circle with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var area = circle.Area;
 // area = 314.1592653589793
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var area = circle.Area;
-// area = 314.1592653589793

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 314.1592653589793

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var perimeter = circle.Perimeter;
 // perimeter = 62.83185307179586
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var perimeter = circle.Perimeter;
 // perimeter = 62.83185307179586
`,27),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_circle.md.a8461aaf.lean.js b/docs/assets/core_maths_geometry_circle.md.cf2c0e72.lean.js similarity index 71% rename from docs/assets/core_maths_geometry_circle.md.a8461aaf.lean.js rename to docs/assets/core_maths_geometry_circle.md.cf2c0e72.lean.js index 1b9e0de..ea079dc 100644 --- a/docs/assets/core_maths_geometry_circle.md.a8461aaf.lean.js +++ b/docs/assets/core_maths_geometry_circle.md.cf2c0e72.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Circle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/circle.md","filePath":"core/maths/geometry/circle.md","lastUpdated":1665756380000}'),o={name:"core/maths/geometry/circle.md"},l=n("",27),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Circle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/circle.md","filePath":"core/maths/geometry/circle.md","lastUpdated":1665756380000}'),o={name:"core/maths/geometry/circle.md"},l=n("",27),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_cone.md.2492cc46.js b/docs/assets/core_maths_geometry_cone.md.9020dc2e.js similarity index 77% rename from docs/assets/core_maths_geometry_cone.md.2492cc46.js rename to docs/assets/core_maths_geometry_cone.md.9020dc2e.js index e995b78..72024be 100644 --- a/docs/assets/core_maths_geometry_cone.md.2492cc46.js +++ b/docs/assets/core_maths_geometry_cone.md.9020dc2e.js @@ -1,35 +1,35 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cone","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cone.md","filePath":"core/maths/geometry/cone.md","lastUpdated":1665652653000}'),e={name:"core/maths/geometry/cone.md"},l=o(`

Cone

This page is about the Cone class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cone class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cone(radius, height)

Definition

Initializes a Cone class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cone.
doubleheightThe height of the cone.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cone","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cone.md","filePath":"core/maths/geometry/cone.md","lastUpdated":1665652653000}'),e={name:"core/maths/geometry/cone.md"},l=o(`

Cone

This page is about the Cone class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cone class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cone(radius, height)

Definition

Initializes a Cone class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cone.
doubleheightThe height of the cone.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20
using PeyrSharp.Core.Maths.Geometry;
+Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cone. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cone. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20);
+Cone cone = new(10, 20);
 
 var volume = cone.Volume;
 // volume = 2094.3951023931954
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20);
+Cone cone = new(10, 20);
 
 var volume = cone.Volume;
-// volume = 2094.3951023931954

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 2094.3951023931954

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(15, 20);
+Cone cone = new(15, 20);
 
 var radius = cone.Radius;
 // radius = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(15, 20);
+Cone cone = new(15, 20);
 
 var radius = cone.Radius;
-// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle cone = new(10, 40);
+Circle cone = new(10, 40);
 
 var height = cone.Height;
 // height = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Circle cone = new(10, 40);
+Circle cone = new(10, 40);
 
 var height = cone.Height;
-// height = 40
`,33),p=[l];function t(c,r,i,d,y,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; +// height = 40
`,33),p=[l];function t(c,r,i,y,d,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_cone.md.2492cc46.lean.js b/docs/assets/core_maths_geometry_cone.md.9020dc2e.lean.js similarity index 56% rename from docs/assets/core_maths_geometry_cone.md.2492cc46.lean.js rename to docs/assets/core_maths_geometry_cone.md.9020dc2e.lean.js index a4d8b6b..118ac0c 100644 --- a/docs/assets/core_maths_geometry_cone.md.2492cc46.lean.js +++ b/docs/assets/core_maths_geometry_cone.md.9020dc2e.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cone","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cone.md","filePath":"core/maths/geometry/cone.md","lastUpdated":1665652653000}'),e={name:"core/maths/geometry/cone.md"},l=o("",33),p=[l];function t(c,r,i,d,y,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cone","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cone.md","filePath":"core/maths/geometry/cone.md","lastUpdated":1665652653000}'),e={name:"core/maths/geometry/cone.md"},l=o("",33),p=[l];function t(c,r,i,y,d,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_cube.md.0f432795.js b/docs/assets/core_maths_geometry_cube.md.94a9ab5b.js similarity index 75% rename from docs/assets/core_maths_geometry_cube.md.0f432795.js rename to docs/assets/core_maths_geometry_cube.md.94a9ab5b.js index e557eb7..c2d3e0e 100644 --- a/docs/assets/core_maths_geometry_cube.md.0f432795.js +++ b/docs/assets/core_maths_geometry_cube.md.94a9ab5b.js @@ -1,79 +1,79 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cube","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cube.md","filePath":"core/maths/geometry/cube.md","lastUpdated":1665652653000}'),o={name:"core/maths/geometry/cube.md"},l=e(`

Cube

This page is about the Cube class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cube class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cube(side)

Definition

Initializes a Cube class from the length of the side of the cube.

Arguments

TypeNameMeaning
doublesideThe length of the side of the cube.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cube","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cube.md","filePath":"core/maths/geometry/cube.md","lastUpdated":1665652653000}'),o={name:"core/maths/geometry/cube.md"},l=e(`

Cube

This page is about the Cube class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cube class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cube(side)

Definition

Initializes a Cube class from the length of the side of the cube.

Arguments

TypeNameMeaning
doublesideThe length of the side of the cube.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10); // Creates a 10x10x10 cube
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10); // Creates a 10x10x10 cube
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10); // Creates a 10x10x10 cube

Cube(width, length, height)

Definition

Initializes a Cube class from the width, the length and the height of the cuboidal.

Arguments

TypeNameMeaning
doublewidthThe width of the cuboidal.
doublelengthThe length of the cuboidal.
doubleheightThe height of the cuboidal.

WARNING

If width, length or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10); // Creates a 10x10x10 cube

Cube(width, length, height)

Definition

Initializes a Cube class from the width, the length and the height of the cuboidal.

Arguments

TypeNameMeaning
doublewidthThe width of the cuboidal.
doublelengthThe length of the cuboidal.
doubleheightThe height of the cuboidal.

WARNING

If width, length or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var area = cube.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var area = cube.Area;
-// area = 100

Edge

Definition

c#
public double Edge { get; }
public double Edge { get; }

The Edge property is a double which returns the edge of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Edge

Definition

c#
public double Edge { get; }
public double Edge { get; }

The Edge property is a double which returns the edge of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var edge = cube.Edge;
 // edge = 7.0710678118654755
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var edge = cube.Edge;
-// edge = 7.0710678118654755

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// edge = 7.0710678118654755

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var length = cube.Length;
 // length = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var length = cube.Length;
-// length = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var height = cube.Height;
 // height = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var height = cube.Height;
-// height = 10

Side

Definition

c#
public double? Side { get; init; }
public double? Side { get; init; }

The Side property is a double? which returns the length of the side of the cube. You can only get this property.

WARNING

This property can be null if not initialized with Cube(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// height = 10

Side

Definition

c#
public double? Side { get; init; }
public double? Side { get; init; }

The Side property is a double? which returns the length of the side of the cube. You can only get this property.

WARNING

This property can be null if not initialized with Cube(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var side = cube.Side ?? 0;
 // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var side = cube.Side ?? 0;
-// side = 10

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side = 10

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var volume = cube.Volume; // 10^3
 // volume = 1000
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var volume = cube.Volume; // 10^3
-// volume = 1000

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 1000

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var width = cube.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var width = cube.Width;
-// width = 10
`,66),p=[l];function t(c,r,i,y,d,h){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default}; +// width = 10
`,66),p=[l];function t(c,r,i,y,d,E){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default}; diff --git a/docs/assets/core_maths_geometry_cube.md.0f432795.lean.js b/docs/assets/core_maths_geometry_cube.md.94a9ab5b.lean.js similarity index 56% rename from docs/assets/core_maths_geometry_cube.md.0f432795.lean.js rename to docs/assets/core_maths_geometry_cube.md.94a9ab5b.lean.js index f5a39c8..e654ace 100644 --- a/docs/assets/core_maths_geometry_cube.md.0f432795.lean.js +++ b/docs/assets/core_maths_geometry_cube.md.94a9ab5b.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cube","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cube.md","filePath":"core/maths/geometry/cube.md","lastUpdated":1665652653000}'),o={name:"core/maths/geometry/cube.md"},l=e("",66),p=[l];function t(c,r,i,y,d,h){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cube","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cube.md","filePath":"core/maths/geometry/cube.md","lastUpdated":1665652653000}'),o={name:"core/maths/geometry/cube.md"},l=e("",66),p=[l];function t(c,r,i,y,d,E){return a(),n("div",null,p)}const b=s(o,[["render",t]]);export{u as __pageData,b as default}; diff --git a/docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.js b/docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.js similarity index 72% rename from docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.js rename to docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.js index fcb6ad3..f1b57a5 100644 --- a/docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.js +++ b/docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.js @@ -1,45 +1,45 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cylinder","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cylinder.md","filePath":"core/maths/geometry/cylinder.md","lastUpdated":1665652653000}'),l={name:"core/maths/geometry/cylinder.md"},o=e(`

Cylinder

This page is about the Cylinder class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cylinder class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cylinder(radius, height)

Definition

Initializes a Cylinder class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cylinder.
doubleheightThe height of the cylinder.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cylinder","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cylinder.md","filePath":"core/maths/geometry/cylinder.md","lastUpdated":1665652653000}'),l={name:"core/maths/geometry/cylinder.md"},o=e(`

Cylinder

This page is about the Cylinder class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cylinder class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cylinder(radius, height)

Definition

Initializes a Cylinder class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cylinder.
doubleheightThe height of the cylinder.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10
using PeyrSharp.Core.Maths.Geometry;
+Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var volume = cylinder.Volume;
 // volume = 6283.185307179587
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var volume = cylinder.Volume;
-// volume = 6283.185307179587

BaseArea

Definition

c#
public double BaseArea { get; }
public double BaseArea { get; }

The BaseArea property is a double which returns the area of the circle, which is the base of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 6283.185307179587

BaseArea

Definition

c#
public double BaseArea { get; }
public double BaseArea { get; }

The BaseArea property is a double which returns the area of the circle, which is the base of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var baseArea = cylinder.BaseArea;
 // baseArea = 314.1592653589793
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var baseArea = cylinder.BaseArea;
-// baseArea = 314.1592653589793

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// baseArea = 314.1592653589793

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(15, 20);
+Cylinder cylinder = new(15, 20);
 
 var radius = cylinder.Radius;
 // radius = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(15, 20);
+Cylinder cylinder = new(15, 20);
 
 var radius = cylinder.Radius;
-// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 40);
+Cylinder cylinder = new(10, 40);
 
 var height = cylinder.Height;
 // height = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 40);
+Cylinder cylinder = new(10, 40);
 
 var height = cylinder.Height;
 // height = 40
`,39),p=[o];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const g=s(l,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.lean.js b/docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.lean.js similarity index 72% rename from docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.lean.js rename to docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.lean.js index f2515f7..19063db 100644 --- a/docs/assets/core_maths_geometry_cylinder.md.6b48f4e1.lean.js +++ b/docs/assets/core_maths_geometry_cylinder.md.72a7f1fa.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Cylinder","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cylinder.md","filePath":"core/maths/geometry/cylinder.md","lastUpdated":1665652653000}'),l={name:"core/maths/geometry/cylinder.md"},o=e("",39),p=[o];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const g=s(l,[["render",t]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Cylinder","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/cylinder.md","filePath":"core/maths/geometry/cylinder.md","lastUpdated":1665652653000}'),l={name:"core/maths/geometry/cylinder.md"},o=e("",39),p=[o];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const g=s(l,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_diamond.md.aed6072d.js b/docs/assets/core_maths_geometry_diamond.md.a2f1254e.js similarity index 75% rename from docs/assets/core_maths_geometry_diamond.md.aed6072d.js rename to docs/assets/core_maths_geometry_diamond.md.a2f1254e.js index 73307ce..65ab152 100644 --- a/docs/assets/core_maths_geometry_diamond.md.aed6072d.js +++ b/docs/assets/core_maths_geometry_diamond.md.a2f1254e.js @@ -1,51 +1,51 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Diamond","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/diamond.md","filePath":"core/maths/geometry/diamond.md","lastUpdated":1666360764000}'),e={name:"core/maths/geometry/diamond.md"},l=o(`

Diamond

This page is about the Diamond class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Diamond class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Diamond(side)

Definition

Initializes a Diamond class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Diamond","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/diamond.md","filePath":"core/maths/geometry/diamond.md","lastUpdated":1666360764000}'),e={name:"core/maths/geometry/diamond.md"},l=o(`

Diamond

This page is about the Diamond class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Diamond class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Diamond(side)

Definition

Initializes a Diamond class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.

Diamond(diagonal1, diagonal2)

Definition

Initializes a Diamond class from the length of its diagonals.

Arguments

TypeNameMeaning
doublediagonal1The length of the first diagonal.
doublediagonal2The side of the second diagonal.

WARNING

If diagonal1 or diagonal2 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.

Diamond(diagonal1, diagonal2)

Definition

Initializes a Diamond class from the length of its diagonals.

Arguments

TypeNameMeaning
doublediagonal1The length of the first diagonal.
doublediagonal2The side of the second diagonal.

WARNING

If diagonal1 or diagonal2 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 // Creates a diamond where the first diagonal is equal to 5, and the second one is equal to 10.
-Diamond diamond = new(5, 10);
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5, 10);
using PeyrSharp.Core.Maths.Geometry;
 
 // Creates a diamond where the first diagonal is equal to 5, and the second one is equal to 10.
-Diamond diamond = new(5, 10);

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(diagonal1, diagonal2).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5, 10);

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(diagonal1, diagonal2).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5, 10);
+Diamond diamond = new(5, 10);
 
 var area = diamond.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5, 10);
+Diamond diamond = new(5, 10);
 
 var area = diamond.Area;
-// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var perimeter = diamond.Perimeter;
 // perimeter = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var perimeter = diamond.Perimeter;
-// perimeter = 40

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of sides of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 40

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of sides of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var side = diamond.Side;
 // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var side = diamond.Side;
-// side = 10

Diagonals

Definition

c#
public double[] Diagonals { get; init; }
public double[] Diagonals { get; init; }

The Side property is a double[] array which returns the diagonals of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side = 10

Diagonals

Definition

c#
public double[] Diagonals { get; init; }
public double[] Diagonals { get; init; }

The Side property is a double[] array which returns the diagonals of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10, 14);
+Diamond diamond = new(10, 14);
 
 var side = diamond.Diagonals;
 // side = { 10, 14 }
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10, 14);
+Diamond diamond = new(10, 14);
 
 var side = diamond.Diagonals;
-// side = { 10, 14 }
`,49),p=[l];function t(r,c,i,d,y,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; +// side = { 10, 14 }
`,49),p=[l];function t(r,c,i,d,y,E){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_diamond.md.aed6072d.lean.js b/docs/assets/core_maths_geometry_diamond.md.a2f1254e.lean.js similarity index 57% rename from docs/assets/core_maths_geometry_diamond.md.aed6072d.lean.js rename to docs/assets/core_maths_geometry_diamond.md.a2f1254e.lean.js index 3e0eb0d..1a502a3 100644 --- a/docs/assets/core_maths_geometry_diamond.md.aed6072d.lean.js +++ b/docs/assets/core_maths_geometry_diamond.md.a2f1254e.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Diamond","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/diamond.md","filePath":"core/maths/geometry/diamond.md","lastUpdated":1666360764000}'),e={name:"core/maths/geometry/diamond.md"},l=o("",49),p=[l];function t(r,c,i,d,y,h){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Diamond","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/diamond.md","filePath":"core/maths/geometry/diamond.md","lastUpdated":1666360764000}'),e={name:"core/maths/geometry/diamond.md"},l=o("",49),p=[l];function t(r,c,i,d,y,E){return a(),n("div",null,p)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.js b/docs/assets/core_maths_geometry_hexagon.md.492358ae.js similarity index 71% rename from docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.js rename to docs/assets/core_maths_geometry_hexagon.md.492358ae.js index 26d8ef8..74e1391 100644 --- a/docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.js +++ b/docs/assets/core_maths_geometry_hexagon.md.492358ae.js @@ -1,33 +1,33 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Hexagon","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/hexagon.md","filePath":"core/maths/geometry/hexagon.md","lastUpdated":1665753720000}'),o={name:"core/maths/geometry/hexagon.md"},l=n(`

Hexagon

This page is about the Hexagon class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Hexagon class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Hexagon(side)

Definition

Initializes a Hexagon class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side of the hexagon.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Hexagon","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/hexagon.md","filePath":"core/maths/geometry/hexagon.md","lastUpdated":1665753720000}'),o={name:"core/maths/geometry/hexagon.md"},l=e(`

Hexagon

This page is about the Hexagon class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Hexagon class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Hexagon(side)

Definition

Initializes a Hexagon class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side of the hexagon.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12); // Creates a hexagon with a length of 12
using PeyrSharp.Core.Maths.Geometry;
+Hexagon hexagon = new(12); // Creates a hexagon with a length of 12
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12); // Creates a hexagon with a length of 12

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Hexagon hexagon = new(12); // Creates a hexagon with a length of 12

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var area = hexagon.Area;
 // area = 374.1229744348775
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var area = hexagon.Area;
-// area = 374.1229744348775

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 374.1229744348775

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var perimeter = hexagon.Perimeter;
 // perimeter = 72
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var perimeter = hexagon.Perimeter;
-// perimeter = 72

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of the side of the hexagon. You can only get this property

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 72

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of the side of the hexagon. You can only get this property

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(10);
+Hexagon hexagon = new(10);
 
 var side = hexagon.Side; // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(10);
+Hexagon hexagon = new(10);
 
-var side = hexagon.Side; // side = 10
`,33),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const u=s(o,[["render",t]]);export{g as __pageData,u as default}; +var side = hexagon.Side; // side = 10
`,33),p=[l];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(o,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.lean.js b/docs/assets/core_maths_geometry_hexagon.md.492358ae.lean.js similarity index 57% rename from docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.lean.js rename to docs/assets/core_maths_geometry_hexagon.md.492358ae.lean.js index e24595c..aeebb0b 100644 --- a/docs/assets/core_maths_geometry_hexagon.md.b4c1eb61.lean.js +++ b/docs/assets/core_maths_geometry_hexagon.md.492358ae.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Hexagon","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/hexagon.md","filePath":"core/maths/geometry/hexagon.md","lastUpdated":1665753720000}'),o={name:"core/maths/geometry/hexagon.md"},l=n("",33),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const u=s(o,[["render",t]]);export{g as __pageData,u as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Hexagon","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/hexagon.md","filePath":"core/maths/geometry/hexagon.md","lastUpdated":1665753720000}'),o={name:"core/maths/geometry/hexagon.md"},l=e("",33),p=[l];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(o,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_pyramid.md.88f2f589.lean.js b/docs/assets/core_maths_geometry_pyramid.md.88f2f589.lean.js deleted file mode 100644 index 77056dd..0000000 --- a/docs/assets/core_maths_geometry_pyramid.md.88f2f589.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Pyramid","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/pyramid.md","filePath":"core/maths/geometry/pyramid.md","lastUpdated":1665753720000}'),e={name:"core/maths/geometry/pyramid.md"},l=o("",78),p=[l];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_pyramid.md.88f2f589.js b/docs/assets/core_maths_geometry_pyramid.md.eaa0444b.js similarity index 78% rename from docs/assets/core_maths_geometry_pyramid.md.88f2f589.js rename to docs/assets/core_maths_geometry_pyramid.md.eaa0444b.js index e983eee..7d3698b 100644 --- a/docs/assets/core_maths_geometry_pyramid.md.88f2f589.js +++ b/docs/assets/core_maths_geometry_pyramid.md.eaa0444b.js @@ -1,8 +1,8 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Pyramid","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/pyramid.md","filePath":"core/maths/geometry/pyramid.md","lastUpdated":1665753720000}'),e={name:"core/maths/geometry/pyramid.md"},l=o(`

Pyramid

This page is about the Pyramid class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors, methods and properties.

Compatibility

The Pyramid class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Pyramid(width, length, height)

Definition

Initializes a Pyramid class from a specific width, length, and height.

Arguments

TypeNameMeaning
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.
doubleheightThe height of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Pyramid","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/pyramid.md","filePath":"core/maths/geometry/pyramid.md","lastUpdated":1665753720000}'),l={name:"core/maths/geometry/pyramid.md"},e=o(`

Pyramid

This page is about the Pyramid class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors, methods and properties.

Compatibility

The Pyramid class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Pyramid(width, length, height)

Definition

Initializes a Pyramid class from a specific width, length, and height.

Arguments

TypeNameMeaning
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.
doubleheightThe height of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15

Methods

FromVolumeAndSize(volume, width, length)

Definition

Initializes a Pyramid class from a specific volume, width, and length.

Arguments

TypeNameMeaning
doublevolumeThe volume of the pyramid.
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15

Methods

FromVolumeAndSize(volume, width, length)

Definition

Initializes a Pyramid class from a specific volume, width, and length.

Arguments

TypeNameMeaning
doublevolumeThe volume of the pyramid.
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);
using PeyrSharp.Core.Maths.Geometry;
 
@@ -14,74 +14,74 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const g=
 
 Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);

Properties

AreaBase

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The AreaBase property is a double which returns the area of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);

Properties

AreaBase

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The AreaBase property is a double which returns the area of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var area = pyramid.AreaBase;
 // area = 120
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var area = pyramid.AreaBase;
-// area = 120

Volume

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The Volume property is a double which returns the volume of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 120

Volume

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The Volume property is a double which returns the volume of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var volume = pyramid.Volume;
 // volume = 600
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var volume = pyramid.Volume;
-// volume = 600

LengthBase

Definition

c#
public double LengthBase { get; }
public double LengthBase { get; }

The LengthBase property is a double which returns the length of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 600

LengthBase

Definition

c#
public double LengthBase { get; }
public double LengthBase { get; }

The LengthBase property is a double which returns the length of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var length = pyramid.LengthBase;
 // length = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var length = pyramid.LengthBase;
-// length = 10

WidthBase

Definition

c#
public double WidthBase { get; }
public double WidthBase { get; }

The WidthBase property is a double which returns the width of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 10

WidthBase

Definition

c#
public double WidthBase { get; }
public double WidthBase { get; }

The WidthBase property is a double which returns the width of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var width = pyramid.WidthBase;
 // width = 12
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var width = pyramid.WidthBase;
-// width = 12

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 12

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var width = pyramid.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var width = pyramid.Width;
-// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var length = pyramid.Length;
 // length = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var length = pyramid.Length;
-// length = 20

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 20

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var height = pyramid.Height;
 // height = 30
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var height = pyramid.Height;
-// height = 30
`,78),p=[l];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{g as __pageData,u as default}; +// height = 30
`,78),p=[e];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_pyramid.md.eaa0444b.lean.js b/docs/assets/core_maths_geometry_pyramid.md.eaa0444b.lean.js new file mode 100644 index 0000000..e4be3fb --- /dev/null +++ b/docs/assets/core_maths_geometry_pyramid.md.eaa0444b.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Pyramid","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/pyramid.md","filePath":"core/maths/geometry/pyramid.md","lastUpdated":1665753720000}'),l={name:"core/maths/geometry/pyramid.md"},e=o("",78),p=[e];function t(r,c,i,y,d,h){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_rectangle.md.113c3105.js b/docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.js similarity index 74% rename from docs/assets/core_maths_geometry_rectangle.md.113c3105.js rename to docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.js index f4e038d..d5c35d1 100644 --- a/docs/assets/core_maths_geometry_rectangle.md.113c3105.js +++ b/docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.js @@ -1,55 +1,55 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Rectangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/rectangle.md","filePath":"core/maths/geometry/rectangle.md","lastUpdated":1665754402000}'),l={name:"core/maths/geometry/rectangle.md"},o=e(`

Rectangle

This page is about the Rectangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Rectangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Rectangle(width, length)

Definition

Initializes a Rectangle class from a specific length and width.

Arguments

TypeNameMeaning
doublewidthThe width of the rectangle.
doublelengthThe length of the rectangle.

WARNING

If width or length ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Rectangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/rectangle.md","filePath":"core/maths/geometry/rectangle.md","lastUpdated":1665754402000}'),l={name:"core/maths/geometry/rectangle.md"},o=e(`

Rectangle

This page is about the Rectangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Rectangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Rectangle(width, length)

Definition

Initializes a Rectangle class from a specific length and width.

Arguments

TypeNameMeaning
doublewidthThe width of the rectangle.
doublelengthThe length of the rectangle.

WARNING

If width or length ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle
using PeyrSharp.Core.Maths.Geometry;
+Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var area = rectangle.Area;
 // area = 150
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var area = rectangle.Area;
-// area = 150

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 150

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var perimeter = rectangle.Perimeter;
 // perimeter = 50
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var perimeter = rectangle.Perimeter;
-// perimeter = 50

Diagonal

Definition

c#
public double Diagonal { get; }
public double Diagonal { get; }

The Diagonal property is a double which returns the length of the diagonal of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 50

Diagonal

Definition

c#
public double Diagonal { get; }
public double Diagonal { get; }

The Diagonal property is a double which returns the length of the diagonal of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var diagonal = rectangle.Diagonal;
 // diagonal = 18.027756377319946
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var diagonal = rectangle.Diagonal;
-// diagonal = 18.027756377319946

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// diagonal = 18.027756377319946

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var width = rectangle.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var width = rectangle.Width;
-// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var length = rectangle.Length;
 // length = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var length = rectangle.Length;
 // length = 20
`,45),p=[o];function t(c,r,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_rectangle.md.113c3105.lean.js b/docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.lean.js similarity index 72% rename from docs/assets/core_maths_geometry_rectangle.md.113c3105.lean.js rename to docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.lean.js index 2423b75..6e931ba 100644 --- a/docs/assets/core_maths_geometry_rectangle.md.113c3105.lean.js +++ b/docs/assets/core_maths_geometry_rectangle.md.76c0dc8e.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Rectangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/rectangle.md","filePath":"core/maths/geometry/rectangle.md","lastUpdated":1665754402000}'),l={name:"core/maths/geometry/rectangle.md"},o=e("",45),p=[o];function t(c,r,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Rectangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/rectangle.md","filePath":"core/maths/geometry/rectangle.md","lastUpdated":1665754402000}'),l={name:"core/maths/geometry/rectangle.md"},o=e("",45),p=[o];function t(c,r,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_sphere.md.5f6f998f.js b/docs/assets/core_maths_geometry_sphere.md.5946b618.js similarity index 72% rename from docs/assets/core_maths_geometry_sphere.md.5f6f998f.js rename to docs/assets/core_maths_geometry_sphere.md.5946b618.js index ed38be8..98783b9 100644 --- a/docs/assets/core_maths_geometry_sphere.md.5f6f998f.js +++ b/docs/assets/core_maths_geometry_sphere.md.5946b618.js @@ -1,35 +1,35 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Sphere","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/sphere.md","filePath":"core/maths/geometry/sphere.md","lastUpdated":1665754815000}'),o={name:"core/maths/geometry/sphere.md"},l=n(`

Sphere

This page is about the Sphere class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Sphere class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Sphere(radius)

Definition

Initializes a Sphere class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the sphere.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Sphere","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/sphere.md","filePath":"core/maths/geometry/sphere.md","lastUpdated":1665754815000}'),o={name:"core/maths/geometry/sphere.md"},l=n(`

Sphere

This page is about the Sphere class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Sphere class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Sphere(radius)

Definition

Initializes a Sphere class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the sphere.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10); // Creates a sphere with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
+Sphere sphere = new(10); // Creates a sphere with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10); // Creates a sphere with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Sphere sphere = new(10); // Creates a sphere with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var area = sphere.Area;
 // area = 1256.6370614359173
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var area = sphere.Area;
-// area = 1256.6370614359173

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 1256.6370614359173

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var volume = sphere.Volume;
 // volume = 2356.194490192345
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var volume = sphere.Volume;
-// volume = 2356.194490192345

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the sphere, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 2356.194490192345

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the sphere, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var radius = sphere.Radius;
 // radius = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var radius = sphere.Radius;
-// radius = 10
`,33),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; +// radius = 10
`,33),p=[l];function t(r,c,i,y,d,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_sphere.md.5f6f998f.lean.js b/docs/assets/core_maths_geometry_sphere.md.5946b618.lean.js similarity index 57% rename from docs/assets/core_maths_geometry_sphere.md.5f6f998f.lean.js rename to docs/assets/core_maths_geometry_sphere.md.5946b618.lean.js index b294bfd..41f708e 100644 --- a/docs/assets/core_maths_geometry_sphere.md.5f6f998f.lean.js +++ b/docs/assets/core_maths_geometry_sphere.md.5946b618.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Sphere","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/sphere.md","filePath":"core/maths/geometry/sphere.md","lastUpdated":1665754815000}'),o={name:"core/maths/geometry/sphere.md"},l=n("",33),p=[l];function t(r,c,i,d,y,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Sphere","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/sphere.md","filePath":"core/maths/geometry/sphere.md","lastUpdated":1665754815000}'),o={name:"core/maths/geometry/sphere.md"},l=n("",33),p=[l];function t(r,c,i,y,d,h){return a(),e("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_maths_geometry_triangle.md.70ac16cf.lean.js b/docs/assets/core_maths_geometry_triangle.md.70ac16cf.lean.js deleted file mode 100644 index cc637c4..0000000 --- a/docs/assets/core_maths_geometry_triangle.md.70ac16cf.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Triangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/triangle.md","filePath":"core/maths/geometry/triangle.md","lastUpdated":1665755989000}'),l={name:"core/maths/geometry/triangle.md"},o=e("",87),p=[o];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_triangle.md.70ac16cf.js b/docs/assets/core_maths_geometry_triangle.md.fee7e420.js similarity index 71% rename from docs/assets/core_maths_geometry_triangle.md.70ac16cf.js rename to docs/assets/core_maths_geometry_triangle.md.fee7e420.js index 0b6af03..19b1b50 100644 --- a/docs/assets/core_maths_geometry_triangle.md.70ac16cf.js +++ b/docs/assets/core_maths_geometry_triangle.md.fee7e420.js @@ -1,111 +1,111 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Triangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/triangle.md","filePath":"core/maths/geometry/triangle.md","lastUpdated":1665755989000}'),l={name:"core/maths/geometry/triangle.md"},o=e(`

Triangle

This page is about the Triangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Triangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Triangle(side1, side2, side3)

Definition

Initializes a Triangle class from the length of its sides.

Arguments

TypeNameMeaning
doubleside1The length of the first side of the triangle.
doubleside2The length of the second side of the triangle.
doubleside3The length of the third side of the triangle.

WARNING

If side1, side2, or side3 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Triangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/triangle.md","filePath":"core/maths/geometry/triangle.md","lastUpdated":1665755989000}'),e={name:"core/maths/geometry/triangle.md"},o=l(`

Triangle

This page is about the Triangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Triangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Triangle(side1, side2, side3)

Definition

Initializes a Triangle class from the length of its sides.

Arguments

TypeNameMeaning
doubleside1The length of the first side of the triangle.
doubleside2The length of the second side of the triangle.
doubleside3The length of the third side of the triangle.

WARNING

If side1, side2, or side3 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 10); // Creates a triangle
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20, 10); // Creates a triangle
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 10); // Creates a triangle

Triangle(width, height)

Definition

Initializes a Triangle class from a width and height.

Arguments

TypeNameMeaning
doublewidthThe width of the triangle.
doubleheightThe height of the triangle.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20, 10); // Creates a triangle

Triangle(width, height)

Definition

Initializes a Triangle class from a width and height.

Arguments

TypeNameMeaning
doublewidthThe width of the triangle.
doubleheightThe height of the triangle.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var area = triangle.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var area = triangle.Area;
-// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 10, 20);
+Triangle triangle = new(10, 10, 20);
 
 var perimeter = triangle.Perimeter;
 // perimeter = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 10, 20);
+Triangle triangle = new(10, 10, 20);
 
 var perimeter = triangle.Perimeter;
-// perimeter = 40

Hypotenuse

Definition

c#
public double Hypotenuse { get; }
public double Hypotenuse { get; }

The Hypotenuse property is a double which returns the hypotenuse of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 40

Hypotenuse

Definition

c#
public double Hypotenuse { get; }
public double Hypotenuse { get; }

The Hypotenuse property is a double which returns the hypotenuse of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 // Assuming the triangle is right
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var hypotenuse = triangle.Hypotenuse;
 // hypotenuse = 5
using PeyrSharp.Core.Maths.Geometry;
 
 // Assuming the triangle is right
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var hypotenuse = triangle.Hypotenuse;
-// hypotenuse = 5

IsRight

Definition

c#
public bool IsRight { get; }
public bool IsRight { get; }

The IsRight property is a bool which returns true if the triangle is right. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// hypotenuse = 5

IsRight

Definition

c#
public bool IsRight { get; }
public bool IsRight { get; }

The IsRight property is a bool which returns true if the triangle is right. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var right = triangle.IsRight;
 // right = true
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var right = triangle.IsRight;
-// right = true

CanBeBuilt

Definition

c#
public bool CanBeBuilt { get; }
public bool CanBeBuilt { get; }

The CanBeBuilt property is a bool which returns true if the triangle can be built. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// right = true

CanBeBuilt

Definition

c#
public bool CanBeBuilt { get; }
public bool CanBeBuilt { get; }

The CanBeBuilt property is a bool which returns true if the triangle can be built. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 10);
+Triangle triangle = new(3, 4, 10);
 
 var canBeBuilt = triangle.CanBeBuilt;
 // canBeBuilt = false
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 10);
+Triangle triangle = new(3, 4, 10);
 
 var canBeBuilt = triangle.CanBeBuilt;
-// canBeBuilt = false

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// canBeBuilt = false

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var width = triangle.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var width = triangle.Width;
-// width = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var height = triangle.Height;
 // height = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var height = triangle.Height;
-// height = 20

Side1

Definition

c#
public double Side1 { get; init; }
public double Side1 { get; init; }

The Side1 property is a double which returns the length of the first side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// height = 20

Side1

Definition

c#
public double Side1 { get; init; }
public double Side1 { get; init; }

The Side1 property is a double which returns the length of the first side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side1 = triangle.Side1;
 // side1 = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side1 = triangle.Side1;
-// side1 = 10

Side2

Definition

c#
public double Side2 { get; init; }
public double Side2 { get; init; }

The Side2 property is a double which returns the length of the second side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side1 = 10

Side2

Definition

c#
public double Side2 { get; init; }
public double Side2 { get; init; }

The Side2 property is a double which returns the length of the second side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side2 = triangle.Side2;
 // side2 = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side2 = triangle.Side2;
-// side2 = 20

Side3

Definition

c#
public double Side3 { get; init; }
public double Side3 { get; init; }

The Side3 property is a double which returns the length of the third side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side2 = 20

Side3

Definition

c#
public double Side3 { get; init; }
public double Side3 { get; init; }

The Side3 property is a double which returns the length of the third side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side3 = triangle.Side3;
 // side3 = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side3 = triangle.Side3;
-// side3 = 15
`,87),p=[o];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{g as __pageData,u as default}; +// side3 = 15
`,87),p=[o];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_geometry_triangle.md.fee7e420.lean.js b/docs/assets/core_maths_geometry_triangle.md.fee7e420.lean.js new file mode 100644 index 0000000..3c16844 --- /dev/null +++ b/docs/assets/core_maths_geometry_triangle.md.fee7e420.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Triangle","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/geometry/triangle.md","filePath":"core/maths/geometry/triangle.md","lastUpdated":1665755989000}'),e={name:"core/maths/geometry/triangle.md"},o=l("",87),p=[o];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{g as __pageData,u as default}; diff --git a/docs/assets/core_maths_percentages.md.a68b9e85.js b/docs/assets/core_maths_percentages.md.6d1752ea.js similarity index 99% rename from docs/assets/core_maths_percentages.md.a68b9e85.js rename to docs/assets/core_maths_percentages.md.6d1752ea.js index 1194353..a75390e 100644 --- a/docs/assets/core_maths_percentages.md.a68b9e85.js +++ b/docs/assets/core_maths_percentages.md.6d1752ea.js @@ -1,4 +1,4 @@ -import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Percentages","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/percentages.md","filePath":"core/maths/percentages.md","lastUpdated":1666371130000}'),o={name:"core/maths/percentages.md"},t=n(`

Percentages

This page is about the Percentages class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Percentages class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IncreaseBy(value, increaseRate)

Definition

Returns the value after an increase of x% as a double.

Arguments

TypeNameMeaning
doublevalueThe original value.
doubleincreaseRateThe increase percentage (as x/100d).

Usage

c#
using PeyrSharp.Core.Maths;
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Percentages","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/percentages.md","filePath":"core/maths/percentages.md","lastUpdated":1666371130000}'),o={name:"core/maths/percentages.md"},t=n(`

Percentages

This page is about the Percentages class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Percentages class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IncreaseBy(value, increaseRate)

Definition

Returns the value after an increase of x% as a double.

Arguments

TypeNameMeaning
doublevalueThe original value.
doubleincreaseRateThe increase percentage (as x/100d).

Usage

c#
using PeyrSharp.Core.Maths;
 
 double price = Percentages.IncreaseBy(100, 10/100d); // Increase the price by 10%
 // price = 110
using PeyrSharp.Core.Maths;
diff --git a/docs/assets/core_maths_percentages.md.a68b9e85.lean.js b/docs/assets/core_maths_percentages.md.6d1752ea.lean.js
similarity index 71%
rename from docs/assets/core_maths_percentages.md.a68b9e85.lean.js
rename to docs/assets/core_maths_percentages.md.6d1752ea.lean.js
index 33f3ea4..fba2dec 100644
--- a/docs/assets/core_maths_percentages.md.a68b9e85.lean.js
+++ b/docs/assets/core_maths_percentages.md.6d1752ea.lean.js
@@ -1 +1 @@
-import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Percentages","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/percentages.md","filePath":"core/maths/percentages.md","lastUpdated":1666371130000}'),o={name:"core/maths/percentages.md"},t=n("",35),l=[t];function p(r,c,i,d,h,y){return s(),e("div",null,l)}const g=a(o,[["render",p]]);export{u as __pageData,g as default};
+import{_ as a,o as s,c as e,Q as n}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Percentages","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/percentages.md","filePath":"core/maths/percentages.md","lastUpdated":1666371130000}'),o={name:"core/maths/percentages.md"},t=n("",35),l=[t];function p(r,c,i,d,h,y){return s(),e("div",null,l)}const g=a(o,[["render",p]]);export{u as __pageData,g as default};
diff --git a/docs/assets/core_maths_proba.md.0aecd6a4.js b/docs/assets/core_maths_proba.md.dc3a3e18.js
similarity index 98%
rename from docs/assets/core_maths_proba.md.0aecd6a4.js
rename to docs/assets/core_maths_proba.md.dc3a3e18.js
index 038c869..19c189c 100644
--- a/docs/assets/core_maths_proba.md.0aecd6a4.js
+++ b/docs/assets/core_maths_proba.md.dc3a3e18.js
@@ -1,4 +1,4 @@
-import{_ as a,o as s,c as o,Q as t}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"Proba","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/proba.md","filePath":"core/maths/proba.md","lastUpdated":1675590267000}'),e={name:"core/maths/proba.md"},n=t(`

Proba

This page is about the Proba class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Proba class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetRandomValue(probabilities)

Definition

Gets a random value based on the specified probabilities. Returns a randomly selected value.

Type parameters

TypeNameMeaning
T-The type of the values to select from.

Parameters

TypeNameMeaning
Dictionary<T, double>probabilitiesA dictionary containing the probability of getting each value.

Exceptions

  • ArgumentException: Thrown if the sum of probabilities is not equal to 1.
  • Exception: Thrown if an unexpected error occurs while selecting a random value.

Usage

c#
using PeyrSharp.Core.Maths;
+import{_ as a,o as s,c as o,Q as t}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"Proba","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/proba.md","filePath":"core/maths/proba.md","lastUpdated":1675590267000}'),e={name:"core/maths/proba.md"},n=t(`

Proba

This page is about the Proba class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Proba class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetRandomValue(probabilities)

Definition

Gets a random value based on the specified probabilities. Returns a randomly selected value.

Type parameters

TypeNameMeaning
T-The type of the values to select from.

Parameters

TypeNameMeaning
Dictionary<T, double>probabilitiesA dictionary containing the probability of getting each value.

Exceptions

  • ArgumentException: Thrown if the sum of probabilities is not equal to 1.
  • Exception: Thrown if an unexpected error occurs while selecting a random value.

Usage

c#
using PeyrSharp.Core.Maths;
 
 Dictionary<string, double> probabilities = new Dictionary<string, double>
 {
diff --git a/docs/assets/core_maths_proba.md.0aecd6a4.lean.js b/docs/assets/core_maths_proba.md.dc3a3e18.lean.js
similarity index 69%
rename from docs/assets/core_maths_proba.md.0aecd6a4.lean.js
rename to docs/assets/core_maths_proba.md.dc3a3e18.lean.js
index 0b21a68..888165b 100644
--- a/docs/assets/core_maths_proba.md.0aecd6a4.lean.js
+++ b/docs/assets/core_maths_proba.md.dc3a3e18.lean.js
@@ -1 +1 @@
-import{_ as a,o as s,c as o,Q as t}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"Proba","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/proba.md","filePath":"core/maths/proba.md","lastUpdated":1675590267000}'),e={name:"core/maths/proba.md"},n=t("",18),l=[n];function p(r,c,i,d,y,h){return s(),o("div",null,l)}const u=a(e,[["render",p]]);export{b as __pageData,u as default};
+import{_ as a,o as s,c as o,Q as t}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"Proba","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/proba.md","filePath":"core/maths/proba.md","lastUpdated":1675590267000}'),e={name:"core/maths/proba.md"},n=t("",18),l=[n];function p(r,c,i,d,y,h){return s(),o("div",null,l)}const u=a(e,[["render",p]]);export{b as __pageData,u as default};
diff --git a/docs/assets/core_maths_stats.md.edb41b6a.js b/docs/assets/core_maths_stats.md.175d8fdb.js
similarity index 99%
rename from docs/assets/core_maths_stats.md.edb41b6a.js
rename to docs/assets/core_maths_stats.md.175d8fdb.js
index 2cfcd12..249c2f1 100644
--- a/docs/assets/core_maths_stats.md.edb41b6a.js
+++ b/docs/assets/core_maths_stats.md.175d8fdb.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Stats","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/stats.md","filePath":"core/maths/stats.md","lastUpdated":1688123549000}'),l={name:"core/maths/stats.md"},e=o(`

Stats

This page is about the Stats class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Stats class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Mean(values)

Definition

Returns the mean of a dataset as a double.

Arguments

TypeNameMeaning
List<double>valuesThe dataset to calculate.

Exceptions

TypeMeaning
ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Core.Maths;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Stats","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/stats.md","filePath":"core/maths/stats.md","lastUpdated":1688123549000}'),l={name:"core/maths/stats.md"},e=o(`

Stats

This page is about the Stats class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Stats class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Mean(values)

Definition

Returns the mean of a dataset as a double.

Arguments

TypeNameMeaning
List<double>valuesThe dataset to calculate.

Exceptions

TypeMeaning
ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Core.Maths;
 
 List<double> dataset = new List<double> { 1, 2, 3, 4, 5 };
 double mean = Stats.Mean(dataset); // Calculate the mean of the dataset
diff --git a/docs/assets/core_maths_stats.md.edb41b6a.lean.js b/docs/assets/core_maths_stats.md.175d8fdb.lean.js
similarity index 69%
rename from docs/assets/core_maths_stats.md.edb41b6a.lean.js
rename to docs/assets/core_maths_stats.md.175d8fdb.lean.js
index 043be6a..a504563 100644
--- a/docs/assets/core_maths_stats.md.edb41b6a.lean.js
+++ b/docs/assets/core_maths_stats.md.175d8fdb.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Stats","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/stats.md","filePath":"core/maths/stats.md","lastUpdated":1688123549000}'),l={name:"core/maths/stats.md"},e=o("",63),t=[e];function p(r,c,y,d,i,E){return a(),n("div",null,t)}const b=s(l,[["render",p]]);export{u as __pageData,b as default};
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Stats","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/stats.md","filePath":"core/maths/stats.md","lastUpdated":1688123549000}'),l={name:"core/maths/stats.md"},e=o("",63),t=[e];function p(r,c,y,d,i,E){return a(),n("div",null,t)}const b=s(l,[["render",p]]);export{u as __pageData,b as default};
diff --git a/docs/assets/core_maths_trigonometry.md.db5e4666.js b/docs/assets/core_maths_trigonometry.md.8d208ceb.js
similarity index 99%
rename from docs/assets/core_maths_trigonometry.md.db5e4666.js
rename to docs/assets/core_maths_trigonometry.md.8d208ceb.js
index b0034b0..1c6a7ba 100644
--- a/docs/assets/core_maths_trigonometry.md.db5e4666.js
+++ b/docs/assets/core_maths_trigonometry.md.8d208ceb.js
@@ -1,4 +1,4 @@
-import{_ as s,o as e,c as a,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Trigonometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/trigonometry.md","filePath":"core/maths/trigonometry.md","lastUpdated":1666370076000}'),o={name:"core/maths/trigonometry.md"},t=n(`

Trigonometry

This page is about the Trigonometry class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Trigonometry class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetOpposedSideFrom(triangleSide, angle, value)

Definition

Gets the length of the opposed side of a specific angle, from the length of either the hypotenuse or the adjacent side of the angle.

Arguments

TypeNameMeaning
TriangleSidestriangleSideThe side of the triangle.
doubleangleThe value of the angle.
doublevalueThe length of the chosen side.

WARNING

If triangleSide is equal to TriangleSides.Opposed, an Exception will be thrown.

Usage

c#
using PeyrSharp.Core.Maths;
+import{_ as s,o as e,c as a,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Trigonometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/trigonometry.md","filePath":"core/maths/trigonometry.md","lastUpdated":1666370076000}'),o={name:"core/maths/trigonometry.md"},t=n(`

Trigonometry

This page is about the Trigonometry class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Trigonometry class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetOpposedSideFrom(triangleSide, angle, value)

Definition

Gets the length of the opposed side of a specific angle, from the length of either the hypotenuse or the adjacent side of the angle.

Arguments

TypeNameMeaning
TriangleSidestriangleSideThe side of the triangle.
doubleangleThe value of the angle.
doublevalueThe length of the chosen side.

WARNING

If triangleSide is equal to TriangleSides.Opposed, an Exception will be thrown.

Usage

c#
using PeyrSharp.Core.Maths;
 using PeyrSharp.Enums;
 
 double opposed = Trigonometry.GetOpposedSideFrom(TriangleSides.Adjacent, 1.05, 5);
diff --git a/docs/assets/core_maths_trigonometry.md.db5e4666.lean.js b/docs/assets/core_maths_trigonometry.md.8d208ceb.lean.js
similarity index 71%
rename from docs/assets/core_maths_trigonometry.md.db5e4666.lean.js
rename to docs/assets/core_maths_trigonometry.md.8d208ceb.lean.js
index 053f674..cba5812 100644
--- a/docs/assets/core_maths_trigonometry.md.db5e4666.lean.js
+++ b/docs/assets/core_maths_trigonometry.md.8d208ceb.lean.js
@@ -1 +1 @@
-import{_ as s,o as e,c as a,Q as n}from"./chunks/framework.b637c96f.js";const g=JSON.parse('{"title":"Trigonometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/trigonometry.md","filePath":"core/maths/trigonometry.md","lastUpdated":1666370076000}'),o={name:"core/maths/trigonometry.md"},t=n("",31),l=[t];function p(r,c,d,i,h,y){return e(),a("div",null,l)}const u=s(o,[["render",p]]);export{g as __pageData,u as default};
+import{_ as s,o as e,c as a,Q as n}from"./chunks/framework.b40c9ff3.js";const g=JSON.parse('{"title":"Trigonometry","description":"","frontmatter":{},"headers":[],"relativePath":"core/maths/trigonometry.md","filePath":"core/maths/trigonometry.md","lastUpdated":1666370076000}'),o={name:"core/maths/trigonometry.md"},t=n("",31),l=[t];function p(r,c,d,i,h,y){return e(),a("div",null,l)}const u=s(o,[["render",p]]);export{g as __pageData,u as default};
diff --git a/docs/assets/core_password.md.5b330426.js b/docs/assets/core_password.md.654b1f2d.js
similarity index 93%
rename from docs/assets/core_password.md.5b330426.js
rename to docs/assets/core_password.md.654b1f2d.js
index 49edcd6..b2dca93 100644
--- a/docs/assets/core_password.md.5b330426.js
+++ b/docs/assets/core_password.md.654b1f2d.js
@@ -1,42 +1,42 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Password","description":"","frontmatter":{},"headers":[],"relativePath":"core/password.md","filePath":"core/password.md","lastUpdated":1665311928000}'),o={name:"core/password.md"},t=e(`

Password

This page is about the Password class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Password class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GenerateAsync(length, chars, separator)

Definition

The GenerateAsync() method generates a password of a specific length, with specific characters asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Password","description":"","frontmatter":{},"headers":[],"relativePath":"core/password.md","filePath":"core/password.md","lastUpdated":1665311928000}'),o={name:"core/password.md"},t=e(`

Password

This page is about the Password class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Password class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GenerateAsync(length, chars, separator)

Definition

The GenerateAsync() method generates a password of a specific length, with specific characters asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate a password with 10 characters
+    // Generate a password with 10 characters
     string password = await Password.GenerateAsync(10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }
using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate a password with 10 characters
+    // Generate a password with 10 characters
     string password = await Password.GenerateAsync(10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }

GenerateAsync(length, passwordPresets)

Definition

The GenerateAsync() method generates a password of a specific length, with a specific PasswordPresets asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
PasswordPresetspasswordPresetsThe password preset used when generating the password

Usage

c#
using PeyrSharp.Core;
 using PeyrSharp.Enums;
 
 private async void Main()
 {
-    // Generate a password with 10 characters, using the Complex preset
+    // Generate a password with 10 characters, using the Complex preset
     string password = await Password.GenerateAsync(10, PasswordPresets.Complex);
 }
using PeyrSharp.Core;
 using PeyrSharp.Enums;
 
 private async void Main()
 {
-    // Generate a password with 10 characters, using the Complex preset
+    // Generate a password with 10 characters, using the Complex preset
     string password = await Password.GenerateAsync(10, PasswordPresets.Complex);
 }

GenerateAsync(amount, length, chars, separator)

Definition

The GenerateAsync() method generates a specific amount of passwords with specific lengths and characters asynchronously.

Arguments

TypeNameMeaning
intamountThe amount of passwords to generate.
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using System.Collections.Generic;
 using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters
+    // Generate 10 passwords with 10 characters
     List<string> passwords = await Password.GenerateAsync(10, 10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }
using System.Collections.Generic;
 using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters
+    // Generate 10 passwords with 10 characters
     List<string> passwords = await Password.GenerateAsync(10, 10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }

GenerateAsync(amount, length, passwordPresets)

Definition

The GenerateAsync() method generates a specific amount of passwords with specific lengths and PasswordPresets asynchronously.

Arguments

TypeNameMeaning
intamountThe amount of passwords to generate.
intlengthThe length of the password.
PasswordPresetspasswordPresetsThe password preset used when generating the password

Usage

c#
using System.Collections.Generic;
 using PeyrSharp.Core;
@@ -44,7 +44,7 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters with the simple preset
+    // Generate 10 passwords with 10 characters with the simple preset
     List<string> passwords = await Password.GenerateAsync(10, 10, PasswordPresets.Simple);
 }
using System.Collections.Generic;
 using PeyrSharp.Core;
@@ -52,6 +52,6 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters with the simple preset
+    // Generate 10 passwords with 10 characters with the simple preset
     List<string> passwords = await Password.GenerateAsync(10, 10, PasswordPresets.Simple);
-}
`,35),l=[t];function p(r,c,d,y,i,E){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default}; +}
`,35),l=[t];function p(r,c,d,i,y,E){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_password.md.5b330426.lean.js b/docs/assets/core_password.md.654b1f2d.lean.js similarity index 53% rename from docs/assets/core_password.md.5b330426.lean.js rename to docs/assets/core_password.md.654b1f2d.lean.js index 24a0e67..b9960a8 100644 --- a/docs/assets/core_password.md.5b330426.lean.js +++ b/docs/assets/core_password.md.654b1f2d.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Password","description":"","frontmatter":{},"headers":[],"relativePath":"core/password.md","filePath":"core/password.md","lastUpdated":1665311928000}'),o={name:"core/password.md"},t=e("",35),l=[t];function p(r,c,d,y,i,E){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default}; +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Password","description":"","frontmatter":{},"headers":[],"relativePath":"core/password.md","filePath":"core/password.md","lastUpdated":1665311928000}'),o={name:"core/password.md"},t=e("",35),l=[t];function p(r,c,d,i,y,E){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default}; diff --git a/docs/assets/core_statusinfo.md.a97192f6.js b/docs/assets/core_statusinfo.md.a97192f6.js deleted file mode 100644 index 26a7293..0000000 --- a/docs/assets/core_statusinfo.md.a97192f6.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"StatusInfo","description":"","frontmatter":{},"headers":[],"relativePath":"core/statusinfo.md","filePath":"core/statusinfo.md","lastUpdated":1683446294000}'),o={name:"core/statusinfo.md"},i=s('

StatusInfo

This page is about the StatusInfo class available in PeyrSharp.Core. You can find here all of its methods.

Compatibility

The StatusInfo class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Properties

StatusCode

Definition

c#
public int StatusCode { get; set; }
public int StatusCode { get; set; }

Gets or sets the status code that indicates the outcome of the request.

StatusDescription

Definition

c#
public string StatusDescription { get; set; }
public string StatusDescription { get; set; }

Gets or sets the status description that provides a human-readable message of the status code.

StatusType

Definition

c#
public StatusCodes StatusType { get; set; }
public StatusCodes StatusType { get; set; }

Gets or sets the status type that categorizes the status code into informational, success, redirection, client error, or server error. The StatusCodes is an enumeration representing the type of HTTP status codes that can be returned.

',18),n=[i];function r(d,c,l,p,h,u){return e(),a("div",null,n)}const g=t(o,[["render",r]]);export{b as __pageData,g as default}; diff --git a/docs/assets/core_statusinfo.md.a97192f6.lean.js b/docs/assets/core_statusinfo.md.a97192f6.lean.js deleted file mode 100644 index 5458581..0000000 --- a/docs/assets/core_statusinfo.md.a97192f6.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b637c96f.js";const b=JSON.parse('{"title":"StatusInfo","description":"","frontmatter":{},"headers":[],"relativePath":"core/statusinfo.md","filePath":"core/statusinfo.md","lastUpdated":1683446294000}'),o={name:"core/statusinfo.md"},i=s("",18),n=[i];function r(d,c,l,p,h,u){return e(),a("div",null,n)}const g=t(o,[["render",r]]);export{b as __pageData,g as default}; diff --git a/docs/assets/core_statusinfo.md.cc755624.js b/docs/assets/core_statusinfo.md.cc755624.js new file mode 100644 index 0000000..33d0122 --- /dev/null +++ b/docs/assets/core_statusinfo.md.cc755624.js @@ -0,0 +1 @@ +import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"StatusInfo","description":"","frontmatter":{},"headers":[],"relativePath":"core/statusinfo.md","filePath":"core/statusinfo.md","lastUpdated":1683446294000}'),o={name:"core/statusinfo.md"},i=s('

StatusInfo

This page is about the StatusInfo class available in PeyrSharp.Core. You can find here all of its methods.

Compatibility

The StatusInfo class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Properties

StatusCode

Definition

c#
public int StatusCode { get; set; }
public int StatusCode { get; set; }

Gets or sets the status code that indicates the outcome of the request.

StatusDescription

Definition

c#
public string StatusDescription { get; set; }
public string StatusDescription { get; set; }

Gets or sets the status description that provides a human-readable message of the status code.

StatusType

Definition

c#
public StatusCodes StatusType { get; set; }
public StatusCodes StatusType { get; set; }

Gets or sets the status type that categorizes the status code into informational, success, redirection, client error, or server error. The StatusCodes is an enumeration representing the type of HTTP status codes that can be returned.

',18),n=[i];function r(l,c,d,p,h,u){return e(),a("div",null,n)}const g=t(o,[["render",r]]);export{b as __pageData,g as default}; diff --git a/docs/assets/core_statusinfo.md.cc755624.lean.js b/docs/assets/core_statusinfo.md.cc755624.lean.js new file mode 100644 index 0000000..0e087c9 --- /dev/null +++ b/docs/assets/core_statusinfo.md.cc755624.lean.js @@ -0,0 +1 @@ +import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b40c9ff3.js";const b=JSON.parse('{"title":"StatusInfo","description":"","frontmatter":{},"headers":[],"relativePath":"core/statusinfo.md","filePath":"core/statusinfo.md","lastUpdated":1683446294000}'),o={name:"core/statusinfo.md"},i=s("",18),n=[i];function r(l,c,d,p,h,u){return e(),a("div",null,n)}const g=t(o,[["render",r]]);export{b as __pageData,g as default}; diff --git a/docs/assets/core_xml-helper.md.bb579261.js b/docs/assets/core_xml-helper.md.69991328.js similarity index 95% rename from docs/assets/core_xml-helper.md.bb579261.js rename to docs/assets/core_xml-helper.md.69991328.js index 646e8d2..b3ba9a1 100644 --- a/docs/assets/core_xml-helper.md.bb579261.js +++ b/docs/assets/core_xml-helper.md.69991328.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"XmlHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/xml-helper.md","filePath":"core/xml-helper.md","lastUpdated":1690620899000}'),o={name:"core/xml-helper.md"},p=l(`

XmlHelper

This page is about the XmlHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The XmlHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromXml<T>(path)

Definition

The LoadFromXml() method loads an object of type T from an XML file at the specified path. If the file does not exist, a new instance of type T will be created and saved to the file using the SaveToXml() method before returning it.

Type Parameters

TypeDescription
TThe type of object to be saved.

Parameters

TypeNameMeaning
stringpathThe path of the XML file to load or create.

Returns

  • The loaded object of type T if the file exists and can be deserialized successfully.
  • A new instance of type T if the file does not exist and can be created and saved successfully.
  • null if an exception occurs during loading or saving.

Exceptions

  • Exception: If an error occurs during the loading or saving process.

Usage

csharp
using PeyrSharp.Core;
+import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"XmlHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/xml-helper.md","filePath":"core/xml-helper.md","lastUpdated":1690620899000}'),o={name:"core/xml-helper.md"},p=l(`

XmlHelper

This page is about the XmlHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The XmlHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromXml<T>(path)

Definition

The LoadFromXml() method loads an object of type T from an XML file at the specified path. If the file does not exist, a new instance of type T will be created and saved to the file using the SaveToXml() method before returning it.

Type Parameters

TypeDescription
TThe type of object to be saved.

Parameters

TypeNameMeaning
stringpathThe path of the XML file to load or create.

Returns

  • The loaded object of type T if the file exists and can be deserialized successfully.
  • A new instance of type T if the file does not exist and can be created and saved successfully.
  • null if an exception occurs during loading or saving.

Exceptions

  • Exception: If an error occurs during the loading or saving process.

Usage

csharp
using PeyrSharp.Core;
 using System;
 using System.IO;
 using System.Xml.Serialization;
@@ -7,17 +7,17 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     string path = "path/to/xml/file.xml";
 
-    // Load an object from the XML file
+    // Load an object from the XML file
     MyObject obj = XmlHelper.LoadFromXml<MyObject>(path);
 
     if (obj != null)
     {
-        // Object loaded successfully
+        // Object loaded successfully
         Console.WriteLine("Object loaded: " + obj.ToString());
     }
     else
     {
-        // Error occurred during loading or saving
+        // Error occurred during loading or saving
         Console.WriteLine("Failed to load object.");
     }
 }
@@ -41,17 +41,17 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     string path = "path/to/xml/file.xml";
 
-    // Load an object from the XML file
+    // Load an object from the XML file
     MyObject obj = XmlHelper.LoadFromXml<MyObject>(path);
 
     if (obj != null)
     {
-        // Object loaded successfully
+        // Object loaded successfully
         Console.WriteLine("Object loaded: " + obj.ToString());
     }
     else
     {
-        // Error occurred during loading or saving
+        // Error occurred during loading or saving
         Console.WriteLine("Failed to load object.");
     }
 }
@@ -81,7 +81,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
     {
         MyClass myObject = new MyClass { MyProperty = 123 };
 
-        // Save the object to an XML file
+        // Save the object to an XML file
         bool success = XmlHelper.SaveToXml(myObject, "path/to/file.xml");
     }
 }
using PeyrSharp.Core;
@@ -99,7 +99,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
     {
         MyClass myObject = new MyClass { MyProperty = 123 };
 
-        // Save the object to an XML file
+        // Save the object to an XML file
         bool success = XmlHelper.SaveToXml(myObject, "path/to/file.xml");
     }
 }
`,31),e=[p];function t(c,r,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; diff --git a/docs/assets/core_xml-helper.md.bb579261.lean.js b/docs/assets/core_xml-helper.md.69991328.lean.js similarity index 69% rename from docs/assets/core_xml-helper.md.bb579261.lean.js rename to docs/assets/core_xml-helper.md.69991328.lean.js index 0be58c7..bf83852 100644 --- a/docs/assets/core_xml-helper.md.bb579261.lean.js +++ b/docs/assets/core_xml-helper.md.69991328.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"XmlHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/xml-helper.md","filePath":"core/xml-helper.md","lastUpdated":1690620899000}'),o={name:"core/xml-helper.md"},p=l("",31),e=[p];function t(c,r,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; +import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"XmlHelper","description":"","frontmatter":{},"headers":[],"relativePath":"core/xml-helper.md","filePath":"core/xml-helper.md","lastUpdated":1690620899000}'),o={name:"core/xml-helper.md"},p=l("",31),e=[p];function t(c,r,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; diff --git a/docs/assets/enumerations.md.95d6b4f5.js b/docs/assets/enumerations.md.40715fa7.js similarity index 88% rename from docs/assets/enumerations.md.95d6b4f5.js rename to docs/assets/enumerations.md.40715fa7.js index b60535f..ba790d2 100644 --- a/docs/assets/enumerations.md.95d6b4f5.js +++ b/docs/assets/enumerations.md.40715fa7.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Enumerations","description":"","frontmatter":{},"headers":[],"relativePath":"enumerations.md","filePath":"enumerations.md","lastUpdated":1680429306000}'),o={name:"enumerations.md"},t=e(`

Enumerations

This page is about the enumerations available in PeyrSharp.Enums. They are grouped by category.

Compatibility

Enumerations are part of the PeyrSharp.Enums module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Enums
Framework.NET 5.NET 6.NET 7
Enums

Converters

StorageUnits

Definition

The StorageUnits enumeration represents all possible numeric storage units. It contains the following values:

ValueNameMeaning
0ByteThe byte unit. (b)
1KilobyteThe kilobyte unit. (kb)
2MegabyteThe megabyte unit. (mb)
3GigabyteThe gigabyte unit. (gb)
4TerabyteThe terabyte unit. (tb)
5PetabyteThe petabyte unit. (pb)

Example

c#
public static double ToPetabyte(double value, StorageUnits unit)
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Enumerations","description":"","frontmatter":{},"headers":[],"relativePath":"enumerations.md","filePath":"enumerations.md","lastUpdated":1680429306000}'),o={name:"enumerations.md"},l=e(`

Enumerations

This page is about the enumerations available in PeyrSharp.Enums. They are grouped by category.

Compatibility

Enumerations are part of the PeyrSharp.Enums module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Enums
Framework.NET 5.NET 6.NET 7
Enums

Converters

StorageUnits

Definition

The StorageUnits enumeration represents all possible numeric storage units. It contains the following values:

ValueNameMeaning
0ByteThe byte unit. (b)
1KilobyteThe kilobyte unit. (kb)
2MegabyteThe megabyte unit. (mb)
3GigabyteThe gigabyte unit. (gb)
4TerabyteThe terabyte unit. (tb)
5PetabyteThe petabyte unit. (pb)

Example

c#
public static double ToPetabyte(double value, StorageUnits unit)
 {
     if (unit == StorageUnits.Terabyte)
     {
@@ -40,54 +40,54 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 Logger.Log(message, filePath, date, logLevel);

More info here about the example

OperatingSystems

Definition

The OperatingSystems enumerations represents all possible operating systems that a .NET program could run on. It contains several values:

ValueNameMeaning
0WindowsThe Microsoft Windows Operating System.
1macOSThe Apple macOS Operating System.
2LinuxA Linux-based Operating System.
3UnknownAn unknown Operating System.

Example

c#
if (Env.CurrentOs == OperatingSystems.Windows)
 {
-    //Do something if the OS is Windows
+    //Do something if the OS is Windows
 }
if (Env.CurrentOs == OperatingSystems.Windows)
 {
-    //Do something if the OS is Windows
+    //Do something if the OS is Windows
 }

SystemThemes

Definition

The SystemThemes enumerations represents all themes available on a Windows device. It contains several values:

ValueNameMeaning
0DarkThe user is using dark theme.
1LightThe user is using light theme.
2UnknownThe current theme is unknown.

Example

c#
if (GetCurrentTheme() == SystemThemes.Dark)
 {
     Console.WriteLine("You have dark theme enabled!");
 }
if (GetCurrentTheme() == SystemThemes.Dark)
 {
     Console.WriteLine("You have dark theme enabled!");
-}

WindowsVersion

Definition

The WindowsVersion enumerations represents all possible Windows versions supported by .NET, which means all version from Windows 7 to 11. It contains several values:

ValueNameMeaning
0Windows7The Windows 7 (NT 6.1) Operating System.
1Windows8The Windows 8 (NT 6.2) Operating System.
2Windows81The Windows 8.1 (NT 6.3) Operating System.
3Windows10The Windows 10 (NT 10.0) Operating System.
4Windows11The Windows 11 (NT 10.0, Build 22000+) Operating System.

Example

c#
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;

Geometry

TriangleSides

Definition

The TriangleSides enumeration represents the different sides of a triangle: hypotenuse, adjacent, and opposite. It contains these values:

ValueNameMeaning
0OpposedThe opposed side of a specific angle of a triangle.
1HypotenuseThe hypotenuse of a triangle.
2AdjacentThe adjacent side of a specific angle of a triangle.

Example

c#
// Get the adjacent side from the opposed side of a specific angle.
+}

WindowsVersion

Definition

The WindowsVersion enumerations represents all possible Windows versions supported by .NET, which means all version from Windows 7 to 11. It contains several values:

ValueNameMeaning
0Windows7The Windows 7 (NT 6.1) Operating System.
1Windows8The Windows 8 (NT 6.2) Operating System.
2Windows81The Windows 8.1 (NT 6.3) Operating System.
3Windows10The Windows 10 (NT 10.0) Operating System.
4Windows11The Windows 11 (NT 10.0, Build 22000+) Operating System.

Example

c#
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;

Geometry

TriangleSides

Definition

The TriangleSides enumeration represents the different sides of a triangle: hypotenuse, adjacent, and opposite. It contains these values:

ValueNameMeaning
0OpposedThe opposed side of a specific angle of a triangle.
1HypotenuseThe hypotenuse of a triangle.
2AdjacentThe adjacent side of a specific angle of a triangle.

Example

c#
// Get the adjacent side from the opposed side of a specific angle.
 Trigonometry.GetAdjacentSideFrom(TriangleSides.Opposed, 20);
// Get the adjacent side from the opposed side of a specific angle.
 Trigonometry.GetAdjacentSideFrom(TriangleSides.Opposed, 20);

Internet

StatusCodes

Definition

The StatusCodes enumeration represents the different kinds of status codes returned by a server after a request is made to it. The following status codes are available in this enumeration:

ValueNameMeaning
0InformationalInformational responses (100-199)
1SuccessSuccessful responses (200-299)
2RedirectionRedirection messages (300-399)
3ClientErrorClient error responses (400-499)
4ServerErrorServer error responses (500-599)

Example

c#
status = GetRequestStatus();
 
 switch (status)
 {
-    case StatusCodes.Informational:
+    case StatusCodes.Informational:
         Console.WriteLine("An information status code has been returned.");
         break;
-    case StatusCodes.Success:
+    case StatusCodes.Success:
         Console.WriteLine("An successful status code has been returned.");
         break;
-    case StatusCodes.Redirection:
+    case StatusCodes.Redirection:
         Console.WriteLine("An redirection status code has been returned.");
         break;
-    case StatusCodes.ClientError:
+    case StatusCodes.ClientError:
         Console.WriteLine("An client error status code has been returned.");
         break;
-    case StatusCodes.ServerError:
+    case StatusCodes.ServerError:
         Console.WriteLine("An server error status code has been returned.");
         break;
 }
status = GetRequestStatus();
 
 switch (status)
 {
-    case StatusCodes.Informational:
+    case StatusCodes.Informational:
         Console.WriteLine("An information status code has been returned.");
         break;
-    case StatusCodes.Success:
+    case StatusCodes.Success:
         Console.WriteLine("An successful status code has been returned.");
         break;
-    case StatusCodes.Redirection:
+    case StatusCodes.Redirection:
         Console.WriteLine("An redirection status code has been returned.");
         break;
-    case StatusCodes.ClientError:
+    case StatusCodes.ClientError:
         Console.WriteLine("An client error status code has been returned.");
         break;
-    case StatusCodes.ServerError:
+    case StatusCodes.ServerError:
         Console.WriteLine("An server error status code has been returned.");
         break;
 }

Password

PasswordPresets

Definition

The PasswordPresets enumeration represents all the of the presets available when generating a password using the Password class of PeyrSharp.Core. It has two values:

ValueNameMeaning
0SimpleThe Simple preset generates a password with simple characters.
1ComplexThe Complex preset generates a password with unusual, hard and complex characters.

Example

c#
private async void Main()
@@ -98,14 +98,14 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
     string password = Password.GenerateAsync(10, PasswordPresets.Simple); // Generate a simple password
 }

PasswordStrength

Definition

The PasswordStrength enumeration represents different strength levels of a password; if it's a strong or weak password. It contains these values:

ValueNameMeaning
0LowThe password has a low strength; you shouldn't use it.
1MediumThe password has a medium strength; don't use it on important websites.
2GoodThe password has a good strength; you can safely use it.
3VeryGoodThe password has an excellent strength, meaning it will be hard for hackers to hack it.

Example

c#
internal async void Main()
 {
-    // Check if the generated password is complex
+    // Check if the generated password is complex
     if (Password.GetStrength(await Password.GenerateAsync(15, PasswordPresets.Complex)) == PasswordStrength.Medium)
     {
         Console.WriteLine("The password isn't complex enough.");
     }
 }
internal async void Main()
 {
-    // Check if the generated password is complex
+    // Check if the generated password is complex
     if (Password.GetStrength(await Password.GenerateAsync(15, PasswordPresets.Complex)) == PasswordStrength.Medium)
     {
         Console.WriteLine("The password isn't complex enough.");
@@ -118,7 +118,7 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
     {
         private void button1_Click(object sender, EventArgs e)
         {
-            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
+            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
         }
     }
 }
using PeyrSharp.UiHelpers;
@@ -129,7 +129,7 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
     {
         private void button1_Click(object sender, EventArgs e)
         {
-            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
+            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
         }
     }
-}
`,78),l=[t];function p(r,c,i,d,E,y){return a(),n("div",null,l)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; +}
`,78),t=[l];function p(r,c,i,d,E,y){return a(),n("div",null,t)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; diff --git a/docs/assets/enumerations.md.40715fa7.lean.js b/docs/assets/enumerations.md.40715fa7.lean.js new file mode 100644 index 0000000..ec7956d --- /dev/null +++ b/docs/assets/enumerations.md.40715fa7.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Enumerations","description":"","frontmatter":{},"headers":[],"relativePath":"enumerations.md","filePath":"enumerations.md","lastUpdated":1680429306000}'),o={name:"enumerations.md"},l=e("",78),t=[l];function p(r,c,i,d,E,y){return a(),n("div",null,t)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; diff --git a/docs/assets/enumerations.md.95d6b4f5.lean.js b/docs/assets/enumerations.md.95d6b4f5.lean.js deleted file mode 100644 index 5c8df7b..0000000 --- a/docs/assets/enumerations.md.95d6b4f5.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Enumerations","description":"","frontmatter":{},"headers":[],"relativePath":"enumerations.md","filePath":"enumerations.md","lastUpdated":1680429306000}'),o={name:"enumerations.md"},t=e("",78),l=[t];function p(r,c,i,d,E,y){return a(),n("div",null,l)}const m=s(o,[["render",p]]);export{u as __pageData,m as default}; diff --git a/docs/assets/env.md.f2ba38d6.js b/docs/assets/env.md.02d41078.js similarity index 92% rename from docs/assets/env.md.f2ba38d6.js rename to docs/assets/env.md.02d41078.js index 9a56c6e..300190c 100644 --- a/docs/assets/env.md.f2ba38d6.js +++ b/docs/assets/env.md.02d41078.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as o}from"./chunks/framework.b637c96f.js";const f=JSON.parse('{"title":"Env","description":"","frontmatter":{},"headers":[],"relativePath":"env.md","filePath":"env.md","lastUpdated":1673089188000}'),s={name:"env.md"},r=o('

Env

This page is about the PeyrSharp.Env module.

Compatibility

The PeyrSharp.Env module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Classes

',8),l=[r];function d(i,n,h,c,m,p){return e(),a("div",null,l)}const v=t(s,[["render",d]]);export{f as __pageData,v as default}; +import{_ as t,o as e,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const f=JSON.parse('{"title":"Env","description":"","frontmatter":{},"headers":[],"relativePath":"env.md","filePath":"env.md","lastUpdated":1673089188000}'),s={name:"env.md"},r=o('

Env

This page is about the PeyrSharp.Env module.

Compatibility

The PeyrSharp.Env module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Classes

',8),l=[r];function d(i,n,h,c,m,p){return e(),a("div",null,l)}const v=t(s,[["render",d]]);export{f as __pageData,v as default}; diff --git a/docs/assets/env.md.f2ba38d6.lean.js b/docs/assets/env.md.02d41078.lean.js similarity index 66% rename from docs/assets/env.md.f2ba38d6.lean.js rename to docs/assets/env.md.02d41078.lean.js index 3b7816b..c000805 100644 --- a/docs/assets/env.md.f2ba38d6.lean.js +++ b/docs/assets/env.md.02d41078.lean.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as o}from"./chunks/framework.b637c96f.js";const f=JSON.parse('{"title":"Env","description":"","frontmatter":{},"headers":[],"relativePath":"env.md","filePath":"env.md","lastUpdated":1673089188000}'),s={name:"env.md"},r=o("",8),l=[r];function d(i,n,h,c,m,p){return e(),a("div",null,l)}const v=t(s,[["render",d]]);export{f as __pageData,v as default}; +import{_ as t,o as e,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const f=JSON.parse('{"title":"Env","description":"","frontmatter":{},"headers":[],"relativePath":"env.md","filePath":"env.md","lastUpdated":1673089188000}'),s={name:"env.md"},r=o("",8),l=[r];function d(i,n,h,c,m,p){return e(),a("div",null,l)}const v=t(s,[["render",d]]);export{f as __pageData,v as default}; diff --git a/docs/assets/env_filesys.md.c01b3b78.js b/docs/assets/env_filesys.md.47cf1218.js similarity index 90% rename from docs/assets/env_filesys.md.c01b3b78.js rename to docs/assets/env_filesys.md.47cf1218.js index 243e58b..eea4cd0 100644 --- a/docs/assets/env_filesys.md.c01b3b78.js +++ b/docs/assets/env_filesys.md.47cf1218.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"FileSys","description":"","frontmatter":{},"headers":[],"relativePath":"env/filesys.md","filePath":"env/filesys.md","lastUpdated":1675590267000}'),o={name:"env/filesys.md"},l=e(`

FileSys

This page is about the FileSys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The FileSys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetAvailableSpace(drive, unit)

Definition

Gets the amount of available storage on a specified drive. It returns double.

Arguments

TypeNameMeaning
stringdriveThe drive letter or name to get the amount of available space.
StorageUnitsunitThe unit of the returned result.

Usage

c#
using PeyrSharp.Enums;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"FileSys","description":"","frontmatter":{},"headers":[],"relativePath":"env/filesys.md","filePath":"env/filesys.md","lastUpdated":1675590267000}'),o={name:"env/filesys.md"},l=e(`

FileSys

This page is about the FileSys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The FileSys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetAvailableSpace(drive, unit)

Definition

Gets the amount of available storage on a specified drive. It returns double.

Arguments

TypeNameMeaning
stringdriveThe drive letter or name to get the amount of available space.
StorageUnitsunitThe unit of the returned result.

Usage

c#
using PeyrSharp.Enums;
 using PeyrSharp.Env;
 
 double space = FileSys.GetAvailableSpace("C:/", StorageUnits.Gigabyte);
using PeyrSharp.Enums;
@@ -38,26 +38,26 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 public static async Task ExampleAsync()
 {
-    // Write some text in a file
+    // Write some text in a file
     string text = "Hello, World!";
     await File.WriteAllTextAsync("Hello.txt", text);
 
-    // Count the number of characters
+    // Count the number of characters
     int chars = await FileSys.CountFileCharactersAsync("Hello.txt");
 
-    // chars = 13
+    // chars = 13
 }
using PeyrSharp.Env;
 
 public static async Task ExampleAsync()
 {
-    // Write some text in a file
+    // Write some text in a file
     string text = "Hello, World!";
     await File.WriteAllTextAsync("Hello.txt", text);
 
-    // Count the number of characters
+    // Count the number of characters
     int chars = await FileSys.CountFileCharactersAsync("Hello.txt");
 
-    // chars = 13
+    // chars = 13
 }

CanWriteFile(filePath)

Definition

Checks if your program has the permission to write a file in a specific directory. It returns a bool; true if you can write/edit the specified directory.

Arguments

TypeNameMeaning
stringfilePathThe path to the directory.

Usage

c#
using PeyrSharp.Env;
 
 if (FileSys.CanWriteFile(@"C:\\Windows"))
@@ -78,12 +78,12 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
     Console.WriteLine("You do not have permission to edit in this folder.");
 }

IsDriveOpticalDrive(driveInfo)

Available in version 1.1 and higher.

Definition

Checks if the specified drive is an optical drive, such as CD-ROM or DVD. It returns a bool; true if the drive is an optical drive.

Arguments

TypeNameMeaning
stringdriveInfoThe drive to check.

Usage

c#
using PeyrSharp.Env;
 
-if (FileSys.IsOpticalDrive(new(@"E:\\")))
+if (FileSys.IsOpticalDrive(new(@"E:\\")))
 {
     Console.WriteLine("Drive E:/ is an optical drive")
 }
using PeyrSharp.Env;
 
-if (FileSys.IsOpticalDrive(new(@"E:\\")))
+if (FileSys.IsOpticalDrive(new(@"E:\\")))
 {
     Console.WriteLine("Drive E:/ is an optical drive")
 }

GetDriveStorageUnit(driveInfo)

Available in version 1.1 and higher.

Definition

Gets the appropriate StorageUnits to use depending of the total size of the drive. It returns a StorageUnits value.

Arguments

TypeNameMeaning
stringdriveInfoThe drive to get the unit of.

Usage

c#
using PeyrSharp.Env;
@@ -92,10 +92,10 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 string message = unit switch
 {
-    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
-    StorageUnits.Terabyte => "The drive unit is in terabytes",
-    StorageUnits.Petabyte => "The drive unit is in petabytes",
-    _ => "Unknown size unit"
+    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
+    StorageUnits.Terabyte => "The drive unit is in terabytes",
+    StorageUnits.Petabyte => "The drive unit is in petabytes",
+    _ => "Unknown size unit"
 }
 
 Console.WriteLine(message);
using PeyrSharp.Env;
@@ -104,17 +104,17 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 
 string message = unit switch
 {
-    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
-    StorageUnits.Terabyte => "The drive unit is in terabytes",
-    StorageUnits.Petabyte => "The drive unit is in petabytes",
-    _ => "Unknown size unit"
+    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
+    StorageUnits.Terabyte => "The drive unit is in terabytes",
+    StorageUnits.Petabyte => "The drive unit is in petabytes",
+    _ => "Unknown size unit"
 }
 
-Console.WriteLine(message);

Properties

AppDataPath

Definition

c#
public static string AppDataPath { get; }
public static string AppDataPath { get; }

The AppDataPath property gets the %APPDATA% path. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+Console.WriteLine(message);

Properties

AppDataPath

Definition

c#
public static string AppDataPath { get; }
public static string AppDataPath { get; }

The AppDataPath property gets the %APPDATA% path. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string appdata = FileSys.AppDataPath;
using PeyrSharp.Env;
 
-string appdata = FileSys.AppDataPath;

CurrentAppDirectory

Available in version 1.1 and higher.

Definition

c#
public static string CurrentAppDirectory { get; }
public static string CurrentAppDirectory { get; }

The CurrentAppDirectory property gets the path where is located the executable file that is currently running. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+string appdata = FileSys.AppDataPath;

CurrentAppDirectory

Available in version 1.1 and higher.

Definition

c#
public static string CurrentAppDirectory { get; }
public static string CurrentAppDirectory { get; }

The CurrentAppDirectory property gets the path where is located the executable file that is currently running. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string dir = FileSys.CurrentAppDirectory;
using PeyrSharp.Env;
 
diff --git a/docs/assets/env_filesys.md.c01b3b78.lean.js b/docs/assets/env_filesys.md.47cf1218.lean.js
similarity index 68%
rename from docs/assets/env_filesys.md.c01b3b78.lean.js
rename to docs/assets/env_filesys.md.47cf1218.lean.js
index 70d874a..9c709dd 100644
--- a/docs/assets/env_filesys.md.c01b3b78.lean.js
+++ b/docs/assets/env_filesys.md.47cf1218.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"FileSys","description":"","frontmatter":{},"headers":[],"relativePath":"env/filesys.md","filePath":"env/filesys.md","lastUpdated":1675590267000}'),o={name:"env/filesys.md"},l=e("",126),p=[l];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"FileSys","description":"","frontmatter":{},"headers":[],"relativePath":"env/filesys.md","filePath":"env/filesys.md","lastUpdated":1675590267000}'),o={name:"env/filesys.md"},l=e("",126),p=[l];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default};
diff --git a/docs/assets/env_logger.md.9b14c21f.js b/docs/assets/env_logger.md.09964050.js
similarity index 99%
rename from docs/assets/env_logger.md.9b14c21f.js
rename to docs/assets/env_logger.md.09964050.js
index 0e6e3d8..bd7754b 100644
--- a/docs/assets/env_logger.md.9b14c21f.js
+++ b/docs/assets/env_logger.md.09964050.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Logger","description":"","frontmatter":{},"headers":[],"relativePath":"env/logger.md","filePath":"env/logger.md","lastUpdated":1680429326000}'),t={name:"env/logger.md"},n=o(`

Logger

This page is about the Logger class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Logger class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

Log(message, filePath, dateTime)

Definition

The Log() method logs a specific message alongside a timestamp into a file. This method does not return a value (void).

INFO

You can call this method multiple times on the same file and it will append the message to it.

Arguments

TypeNameMeaning
stringmessageThe message or text that needs to be logged.
stringfilePathThe path where the file should be written.
DateTimedateTimeThe timestamp of the log, the time when the log was made.

Usage

c#
using PeyrSharp.Env;
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Logger","description":"","frontmatter":{},"headers":[],"relativePath":"env/logger.md","filePath":"env/logger.md","lastUpdated":1680429326000}'),t={name:"env/logger.md"},n=o(`

Logger

This page is about the Logger class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Logger class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

Log(message, filePath, dateTime)

Definition

The Log() method logs a specific message alongside a timestamp into a file. This method does not return a value (void).

INFO

You can call this method multiple times on the same file and it will append the message to it.

Arguments

TypeNameMeaning
stringmessageThe message or text that needs to be logged.
stringfilePathThe path where the file should be written.
DateTimedateTimeThe timestamp of the log, the time when the log was made.

Usage

c#
using PeyrSharp.Env;
 
 Logger.Log("Hello", @"C:\\Logs\\log1.txt", DateTime.Now)
 // The line above will generate a file with the following content:
diff --git a/docs/assets/env_logger.md.9b14c21f.lean.js b/docs/assets/env_logger.md.09964050.lean.js
similarity index 68%
rename from docs/assets/env_logger.md.9b14c21f.lean.js
rename to docs/assets/env_logger.md.09964050.lean.js
index 4bbb6c0..fecbf3b 100644
--- a/docs/assets/env_logger.md.9b14c21f.lean.js
+++ b/docs/assets/env_logger.md.09964050.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Logger","description":"","frontmatter":{},"headers":[],"relativePath":"env/logger.md","filePath":"env/logger.md","lastUpdated":1680429326000}'),t={name:"env/logger.md"},n=o("",30),l=[n];function p(r,c,i,d,h,g){return a(),e("div",null,l)}const m=s(t,[["render",p]]);export{E as __pageData,m as default};
+import{_ as s,o as a,c as e,Q as o}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Logger","description":"","frontmatter":{},"headers":[],"relativePath":"env/logger.md","filePath":"env/logger.md","lastUpdated":1680429326000}'),t={name:"env/logger.md"},n=o("",30),l=[n];function p(r,c,i,d,h,g){return a(),e("div",null,l)}const m=s(t,[["render",p]]);export{E as __pageData,m as default};
diff --git a/docs/assets/env_system.md.8962a7fa.lean.js b/docs/assets/env_system.md.8962a7fa.lean.js
deleted file mode 100644
index 4df31a2..0000000
--- a/docs/assets/env_system.md.8962a7fa.lean.js
+++ /dev/null
@@ -1 +0,0 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Sys","description":"","frontmatter":{},"headers":[],"relativePath":"env/system.md","filePath":"env/system.md","lastUpdated":1688123577000}'),o={name:"env/system.md"},p=e("",114),l=[p];function t(c,r,i,y,E,d){return a(),n("div",null,l)}const g=s(o,[["render",t]]);export{u as __pageData,g as default};
diff --git a/docs/assets/env_system.md.8962a7fa.js b/docs/assets/env_system.md.93ba6399.js
similarity index 93%
rename from docs/assets/env_system.md.8962a7fa.js
rename to docs/assets/env_system.md.93ba6399.js
index 21d36df..c1d3875 100644
--- a/docs/assets/env_system.md.8962a7fa.js
+++ b/docs/assets/env_system.md.93ba6399.js
@@ -1,13 +1,13 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Sys","description":"","frontmatter":{},"headers":[],"relativePath":"env/system.md","filePath":"env/system.md","lastUpdated":1688123577000}'),o={name:"env/system.md"},p=e(`

Sys

This page is about the Sys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The Sys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

ExecuteAsAdmin(process)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
ProcessprocessThe process to launch as admin.

Usage

c#
using PeyrSharp.Env;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Sys","description":"","frontmatter":{},"headers":[],"relativePath":"env/system.md","filePath":"env/system.md","lastUpdated":1693471064000}'),e={name:"env/system.md"},p=o(`

Sys

This page is about the Sys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The Sys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

ExecuteAsAdmin(process)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
ProcessprocessThe process to launch as admin.

Usage

c#
using PeyrSharp.Env;
 
 // Define a process
-Process p = new();
+Process p = new();
 p.StartInfo.FileName = "notepad.exe";
 
 Sys.ExecuteAsAdmin(p);
using PeyrSharp.Env;
 
 // Define a process
-Process p = new();
+Process p = new();
 p.StartInfo.FileName = "notepad.exe";
 
 Sys.ExecuteAsAdmin(p);

ExecuteAsAdmin(fileName)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
stringfileNameThe path to the program to launch in admin mode.

Usage

c#
using PeyrSharp.Env;
@@ -96,7 +96,7 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 if (Sys.CurrentWindowsVersion == WindowsVersion.Windows11)
 {
     Console.WriteLine("You are on Windows 11");
-}

IsDarkThemeSupported

Definition

c#
public static bool IsDarkThemeSupported { get; }
public static bool IsDarkThemeSupported { get; }

Gets if the current Windows version supports dark theme. Returns a bool value. You can only get this property.

WARNING

This property only works on Windows.

Usage

c#
using PeyrSharp.Env;
+}

IsDarkThemeSupported

Definition

c#
public static bool IsDarkThemeSupported { get; }
public static bool IsDarkThemeSupported { get; }

Gets if the current Windows version supports dark theme. Returns a bool value. You can only get this property.

WARNING

This property only works on Windows.

Usage

c#
using PeyrSharp.Env;
 
 if (Sys.IsDarkThemeSupported)
 {
@@ -150,7 +150,7 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 for (int i = 0; i < procs.Length; i++)
 {
     Console.WriteLine(procs[i].ProcessName); // Print the name of all running processes
-}

RunningProcessesNames

Definition

c#
public static string[] RunningProcessesNames { get; }
public static string[] RunningProcessesNames { get; }

Gets the names of the processes that are currently running. Returns a string[] array. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+}

RunningProcessesNames

Definition

c#
public static string[] RunningProcessesNames { get; }
public static string[] RunningProcessesNames { get; }

Gets the names of the processes that are currently running. Returns a string[] array. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string[] procs = Sys.RunningProcessesNames;
 
@@ -164,8 +164,8 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 for (int i = 0; i < procs.Length; i++)
 {
     Console.WriteLine(procs[i]); // Print the name of all running processes
-}

UnixTime

Definition

c#
public static int Unix { get; }
public static int Unix { get; }

Gets the current UnixTime. Returns an int. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+}

UnixTime

Definition

c#
public static int Unix { get; }
public static int Unix { get; }

Gets the current UnixTime. Returns an int. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 int unixTime = Sys.UnixTime;
using PeyrSharp.Env;
 
-int unixTime = Sys.UnixTime;
`,114),l=[p];function t(c,r,i,y,E,d){return a(),n("div",null,l)}const g=s(o,[["render",t]]);export{u as __pageData,g as default}; +int unixTime = Sys.UnixTime;
`,114),l=[p];function t(c,r,i,y,E,d){return a(),n("div",null,l)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/env_system.md.93ba6399.lean.js b/docs/assets/env_system.md.93ba6399.lean.js new file mode 100644 index 0000000..511eb4b --- /dev/null +++ b/docs/assets/env_system.md.93ba6399.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Sys","description":"","frontmatter":{},"headers":[],"relativePath":"env/system.md","filePath":"env/system.md","lastUpdated":1693471064000}'),e={name:"env/system.md"},p=o("",114),l=[p];function t(c,r,i,y,E,d){return a(),n("div",null,l)}const g=s(e,[["render",t]]);export{u as __pageData,g as default}; diff --git a/docs/assets/env_update.md.329bcc46.js b/docs/assets/env_update.md.fb27e287.js similarity index 96% rename from docs/assets/env_update.md.329bcc46.js rename to docs/assets/env_update.md.fb27e287.js index 1fab94e..f3b9e85 100644 --- a/docs/assets/env_update.md.329bcc46.js +++ b/docs/assets/env_update.md.fb27e287.js @@ -1,15 +1,15 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Update","description":"","frontmatter":{},"headers":[],"relativePath":"env/update.md","filePath":"env/update.md","lastUpdated":1683354307000}'),e={name:"env/update.md"},t=o(`

Update

This page is about the Update class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Update class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetLastVersionAsync(url)

Definition

Downloads the content of remote file as string. The remote file should contain the last version text. Do not provide the URL of an HTML page.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlLink of the file where the latest version is stored.

Usage

c#
using PeyrSharp.Env;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Update","description":"","frontmatter":{},"headers":[],"relativePath":"env/update.md","filePath":"env/update.md","lastUpdated":1683354307000}'),e={name:"env/update.md"},t=o(`

Update

This page is about the Update class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Update class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetLastVersionAsync(url)

Definition

Downloads the content of remote file as string. The remote file should contain the last version text. Do not provide the URL of an HTML page.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlLink of the file where the latest version is stored.

Usage

c#
using PeyrSharp.Env;
 
 private async void Main()
 {
     string lastVersion = await Update.GetLastVersionAsync("https://raw.githubusercontent.com/DevyusCode/LeoCorp-Docs/master/Liens/Update%20System/LABS%20Experimental%20Console/version.txt");
-    // lastVersion would be equal to the content of this text files
+    // lastVersion would be equal to the content of this text files
 }
using PeyrSharp.Env;
 
 private async void Main()
 {
     string lastVersion = await Update.GetLastVersionAsync("https://raw.githubusercontent.com/DevyusCode/LeoCorp-Docs/master/Liens/Update%20System/LABS%20Experimental%20Console/version.txt");
-    // lastVersion would be equal to the content of this text files
+    // lastVersion would be equal to the content of this text files
 }

IsAvailable(currentVersion, remoteVersion)

Definition

Compares two versions. Returns a bool.

INFO

It is recommended to use this method with the GetLastVersionAsync() one.

Arguments

TypeNameMeaning
stringcurrentVersionThe current version of the app.
stringremoveVersionThe latest version, stored remotely.

Usage

c#
using PeyrSharp.Env;
 
 private async void Main()
diff --git a/docs/assets/env_update.md.329bcc46.lean.js b/docs/assets/env_update.md.fb27e287.lean.js
similarity index 68%
rename from docs/assets/env_update.md.329bcc46.lean.js
rename to docs/assets/env_update.md.fb27e287.lean.js
index 645e1fd..342f10c 100644
--- a/docs/assets/env_update.md.329bcc46.lean.js
+++ b/docs/assets/env_update.md.fb27e287.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Update","description":"","frontmatter":{},"headers":[],"relativePath":"env/update.md","filePath":"env/update.md","lastUpdated":1683354307000}'),e={name:"env/update.md"},t=o("",24),l=[t];function p(r,c,i,d,y,E){return a(),n("div",null,l)}const m=s(e,[["render",p]]);export{u as __pageData,m as default};
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Update","description":"","frontmatter":{},"headers":[],"relativePath":"env/update.md","filePath":"env/update.md","lastUpdated":1683354307000}'),e={name:"env/update.md"},t=o("",24),l=[t];function p(r,c,i,d,y,E){return a(),n("div",null,l)}const m=s(e,[["render",p]]);export{u as __pageData,m as default};
diff --git a/docs/assets/env_uwpapp.md.64413305.js b/docs/assets/env_uwpapp.md.f9b9170b.js
similarity index 77%
rename from docs/assets/env_uwpapp.md.64413305.js
rename to docs/assets/env_uwpapp.md.f9b9170b.js
index 74b652b..054b2a1 100644
--- a/docs/assets/env_uwpapp.md.64413305.js
+++ b/docs/assets/env_uwpapp.md.f9b9170b.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as p,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"UwpApp","description":"","frontmatter":{},"headers":[],"relativePath":"env/uwpapp.md","filePath":"env/uwpapp.md","lastUpdated":1688123577000}'),n={name:"env/uwpapp.md"},o=e(`

UwpApp

This page is about the UwpApp class available in PeyrSharp.Env. It Represents a simplified version of a UWP app object.

Compatibility

The UwpApp class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Properties

Name

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The name of the UWP app.

Usage

c#
// Create a UwpApp object
+import{_ as s,o as a,c as p,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"UwpApp","description":"","frontmatter":{},"headers":[],"relativePath":"env/uwpapp.md","filePath":"env/uwpapp.md","lastUpdated":1688123577000}'),n={name:"env/uwpapp.md"},o=e(`

UwpApp

This page is about the UwpApp class available in PeyrSharp.Env. It Represents a simplified version of a UWP app object.

Compatibility

The UwpApp class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Properties

Name

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The name of the UWP app.

Usage

c#
// Create a UwpApp object
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
@@ -6,7 +6,7 @@ import{_ as s,o as a,c as p,Q as e}from"./chunks/framework.b637c96f.js";const u=
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
-Console.WriteLine(uwpApp.Name); // Output: MyApp

AppID

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The App ID in the Package Family Name property.

Usage

c#
// Create a UwpApp object
+Console.WriteLine(uwpApp.Name); // Output: MyApp

AppID

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The App ID in the Package Family Name property.

Usage

c#
// Create a UwpApp object
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
diff --git a/docs/assets/env_uwpapp.md.64413305.lean.js b/docs/assets/env_uwpapp.md.f9b9170b.lean.js
similarity index 68%
rename from docs/assets/env_uwpapp.md.64413305.lean.js
rename to docs/assets/env_uwpapp.md.f9b9170b.lean.js
index a3d4c53..bf1e663 100644
--- a/docs/assets/env_uwpapp.md.64413305.lean.js
+++ b/docs/assets/env_uwpapp.md.f9b9170b.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as p,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"UwpApp","description":"","frontmatter":{},"headers":[],"relativePath":"env/uwpapp.md","filePath":"env/uwpapp.md","lastUpdated":1688123577000}'),n={name:"env/uwpapp.md"},o=e("",19),t=[o];function l(c,r,i,d,y,h){return a(),p("div",null,t)}const m=s(n,[["render",l]]);export{u as __pageData,m as default};
+import{_ as s,o as a,c as p,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"UwpApp","description":"","frontmatter":{},"headers":[],"relativePath":"env/uwpapp.md","filePath":"env/uwpapp.md","lastUpdated":1688123577000}'),n={name:"env/uwpapp.md"},o=e("",19),t=[o];function l(c,r,i,d,y,h){return a(),p("div",null,t)}const m=s(n,[["render",l]]);export{u as __pageData,m as default};
diff --git a/docs/assets/exceptions.md.77841f50.js b/docs/assets/exceptions.md.aa08cd73.js
similarity index 98%
rename from docs/assets/exceptions.md.77841f50.js
rename to docs/assets/exceptions.md.aa08cd73.js
index 3398a59..026c659 100644
--- a/docs/assets/exceptions.md.77841f50.js
+++ b/docs/assets/exceptions.md.aa08cd73.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Exceptions","description":"","frontmatter":{},"headers":[],"relativePath":"exceptions.md","filePath":"exceptions.md","lastUpdated":1665311928000}'),o={name:"exceptions.md"},l=e(`

Exceptions

This page is about the exceptions available in PeyrSharp.Exceptions. They are grouped by category.

Compatibility

Exceptions are part of the PeyrSharp.Exceptions module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Exceptions
Framework.NET 5.NET 6.NET 7
Exceptions

Converters

RGBInvalidValueException

Definition

The RGBInvalidValueException is an exception used in the Converters class when you provide an invalid value for a RGB color.

Usage

c#
using PeyrSharp.Exceptions;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Exceptions","description":"","frontmatter":{},"headers":[],"relativePath":"exceptions.md","filePath":"exceptions.md","lastUpdated":1665311928000}'),o={name:"exceptions.md"},l=e(`

Exceptions

This page is about the exceptions available in PeyrSharp.Exceptions. They are grouped by category.

Compatibility

Exceptions are part of the PeyrSharp.Exceptions module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Exceptions
Framework.NET 5.NET 6.NET 7
Exceptions

Converters

RGBInvalidValueException

Definition

The RGBInvalidValueException is an exception used in the Converters class when you provide an invalid value for a RGB color.

Usage

c#
using PeyrSharp.Exceptions;
 
 throw new RGBInvalidValueException("Please provide correct RGB values.");
using PeyrSharp.Exceptions;
 
diff --git a/docs/assets/exceptions.md.77841f50.lean.js b/docs/assets/exceptions.md.aa08cd73.lean.js
similarity index 68%
rename from docs/assets/exceptions.md.77841f50.lean.js
rename to docs/assets/exceptions.md.aa08cd73.lean.js
index 622db8d..5e4aba4 100644
--- a/docs/assets/exceptions.md.77841f50.lean.js
+++ b/docs/assets/exceptions.md.aa08cd73.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"Exceptions","description":"","frontmatter":{},"headers":[],"relativePath":"exceptions.md","filePath":"exceptions.md","lastUpdated":1665311928000}'),o={name:"exceptions.md"},l=e("",22),p=[l];function t(c,r,i,d,E,h){return a(),n("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"Exceptions","description":"","frontmatter":{},"headers":[],"relativePath":"exceptions.md","filePath":"exceptions.md","lastUpdated":1665311928000}'),o={name:"exceptions.md"},l=e("",22),p=[l];function t(c,r,i,d,E,h){return a(),n("div",null,p)}const g=s(o,[["render",t]]);export{u as __pageData,g as default};
diff --git a/docs/assets/extensions.md.32bd4caa.js b/docs/assets/extensions.md.3b8d9c51.js
similarity index 92%
rename from docs/assets/extensions.md.32bd4caa.js
rename to docs/assets/extensions.md.3b8d9c51.js
index a3e54ab..2bfd533 100644
--- a/docs/assets/extensions.md.32bd4caa.js
+++ b/docs/assets/extensions.md.3b8d9c51.js
@@ -1 +1 @@
-import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b637c96f.js";const x=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions.md","filePath":"extensions.md","lastUpdated":1667468707000}'),o={name:"extensions.md"},n=s('

Extensions

This page is about the PeyrSharp.Extensions module.

Compatibility

The PeyrSharp.Extensions module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Classes

',7),i=[n];function r(d,l,h,c,m,_){return e(),a("div",null,i)}const f=t(o,[["render",r]]);export{x as __pageData,f as default}; +import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b40c9ff3.js";const x=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions.md","filePath":"extensions.md","lastUpdated":1667468707000}'),o={name:"extensions.md"},n=s('

Extensions

This page is about the PeyrSharp.Extensions module.

Compatibility

The PeyrSharp.Extensions module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Classes

',7),i=[n];function r(d,l,h,c,m,_){return e(),a("div",null,i)}const f=t(o,[["render",r]]);export{x as __pageData,f as default}; diff --git a/docs/assets/extensions.md.32bd4caa.lean.js b/docs/assets/extensions.md.3b8d9c51.lean.js similarity index 68% rename from docs/assets/extensions.md.32bd4caa.lean.js rename to docs/assets/extensions.md.3b8d9c51.lean.js index 0c928b6..fb890af 100644 --- a/docs/assets/extensions.md.32bd4caa.lean.js +++ b/docs/assets/extensions.md.3b8d9c51.lean.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b637c96f.js";const x=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions.md","filePath":"extensions.md","lastUpdated":1667468707000}'),o={name:"extensions.md"},n=s("",7),i=[n];function r(d,l,h,c,m,_){return e(),a("div",null,i)}const f=t(o,[["render",r]]);export{x as __pageData,f as default}; +import{_ as t,o as e,c as a,Q as s}from"./chunks/framework.b40c9ff3.js";const x=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions.md","filePath":"extensions.md","lastUpdated":1667468707000}'),o={name:"extensions.md"},n=s("",7),i=[n];function r(d,l,h,c,m,_){return e(),a("div",null,i)}const f=t(o,[["render",r]]);export{x as __pageData,f as default}; diff --git a/docs/assets/extensions_array.md.ed7cfa02.js b/docs/assets/extensions_array.md.0304d0e7.js similarity index 99% rename from docs/assets/extensions_array.md.ed7cfa02.js rename to docs/assets/extensions_array.md.0304d0e7.js index 00bc88f..28f8b9b 100644 --- a/docs/assets/extensions_array.md.ed7cfa02.js +++ b/docs/assets/extensions_array.md.0304d0e7.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"ArrayExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/array.md","filePath":"extensions/array.md","lastUpdated":1673177468000}'),o={name:"extensions/array.md"},l=e(`

ArrayExtensions

This page is about the ArrayExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The ArrayExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Append(item)

Definition

The Append<T>() method adds an item to an existing array of any type. It returns an array of the chosen type (T[]).

Arguments

TypeNameMeaning
TitemThe item to append in the array.

Usage

c#
using PeyrSharp.Extensions;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"ArrayExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/array.md","filePath":"extensions/array.md","lastUpdated":1673177468000}'),o={name:"extensions/array.md"},l=e(`

ArrayExtensions

This page is about the ArrayExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The ArrayExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Append(item)

Definition

The Append<T>() method adds an item to an existing array of any type. It returns an array of the chosen type (T[]).

Arguments

TypeNameMeaning
TitemThe item to append in the array.

Usage

c#
using PeyrSharp.Extensions;
 
 int[] numbers = { 1, 2, 3, 4 };
 int[] appendNumbers = numbers.Append(5);
diff --git a/docs/assets/extensions_array.md.ed7cfa02.lean.js b/docs/assets/extensions_array.md.0304d0e7.lean.js
similarity index 70%
rename from docs/assets/extensions_array.md.ed7cfa02.lean.js
rename to docs/assets/extensions_array.md.0304d0e7.lean.js
index 723020c..badaeac 100644
--- a/docs/assets/extensions_array.md.ed7cfa02.lean.js
+++ b/docs/assets/extensions_array.md.0304d0e7.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const m=JSON.parse('{"title":"ArrayExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/array.md","filePath":"extensions/array.md","lastUpdated":1673177468000}'),o={name:"extensions/array.md"},l=e("",42),t=[l];function p(r,c,i,y,d,E){return a(),n("div",null,t)}const u=s(o,[["render",p]]);export{m as __pageData,u as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse('{"title":"ArrayExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/array.md","filePath":"extensions/array.md","lastUpdated":1673177468000}'),o={name:"extensions/array.md"},l=e("",42),t=[l];function p(r,c,i,y,d,E){return a(),n("div",null,t)}const u=s(o,[["render",p]]);export{m as __pageData,u as default};
diff --git a/docs/assets/extensions_double.md.4449dcb3.js b/docs/assets/extensions_double.md.954f4d4d.js
similarity index 99%
rename from docs/assets/extensions_double.md.4449dcb3.js
rename to docs/assets/extensions_double.md.954f4d4d.js
index d0e6e04..0d0f778 100644
--- a/docs/assets/extensions_double.md.4449dcb3.js
+++ b/docs/assets/extensions_double.md.954f4d4d.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"DoubleExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/double.md","filePath":"extensions/double.md","lastUpdated":1680429319000}'),o={name:"extensions/double.md"},t=e(`

DoubleExtensions

This page is about the DoubleExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The DoubleExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Mean(values)

Definition

Calculates the mean (average) of a dataset. Returns the mean of the dataset as double.

Exceptions

TypeCondition
System.ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Extensions;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"DoubleExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/double.md","filePath":"extensions/double.md","lastUpdated":1680429319000}'),o={name:"extensions/double.md"},t=e(`

DoubleExtensions

This page is about the DoubleExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The DoubleExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Mean(values)

Definition

Calculates the mean (average) of a dataset. Returns the mean of the dataset as double.

Exceptions

TypeCondition
System.ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Extensions;
 
 double[] data = new double[] { 1.0, 2.0, 3.0, 4.0, 5.0 };
 double mean = data.Mean(); // 5
using PeyrSharp.Extensions;
diff --git a/docs/assets/extensions_double.md.4449dcb3.lean.js b/docs/assets/extensions_double.md.954f4d4d.lean.js
similarity index 70%
rename from docs/assets/extensions_double.md.4449dcb3.lean.js
rename to docs/assets/extensions_double.md.954f4d4d.lean.js
index dfeb511..4a4b848 100644
--- a/docs/assets/extensions_double.md.4449dcb3.lean.js
+++ b/docs/assets/extensions_double.md.954f4d4d.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"DoubleExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/double.md","filePath":"extensions/double.md","lastUpdated":1680429319000}'),o={name:"extensions/double.md"},t=e("",115),l=[t];function p(r,c,i,y,d,E){return a(),n("div",null,l)}const b=s(o,[["render",p]]);export{u as __pageData,b as default};
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"DoubleExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/double.md","filePath":"extensions/double.md","lastUpdated":1680429319000}'),o={name:"extensions/double.md"},t=e("",115),l=[t];function p(r,c,i,y,d,E){return a(),n("div",null,l)}const b=s(o,[["render",p]]);export{u as __pageData,b as default};
diff --git a/docs/assets/extensions_int.md.adc0cb07.js b/docs/assets/extensions_int.md.2a945211.js
similarity index 99%
rename from docs/assets/extensions_int.md.adc0cb07.js
rename to docs/assets/extensions_int.md.2a945211.js
index 23f3284..753e435 100644
--- a/docs/assets/extensions_int.md.adc0cb07.js
+++ b/docs/assets/extensions_int.md.2a945211.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"IntExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/int.md","filePath":"extensions/int.md","lastUpdated":1680429319000}'),e={name:"extensions/int.md"},l=o(`

IntExtensions

This page is about the IntExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The IntExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

GetDivisors()

Definition

Gets all divisors of a specific number. Returns an array of int[].

Arguments

This method does not have any arguments.

Usage

c#
using PeyrSharp.Extensions;
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"IntExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/int.md","filePath":"extensions/int.md","lastUpdated":1680429319000}'),e={name:"extensions/int.md"},l=o(`

IntExtensions

This page is about the IntExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The IntExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

GetDivisors()

Definition

Gets all divisors of a specific number. Returns an array of int[].

Arguments

This method does not have any arguments.

Usage

c#
using PeyrSharp.Extensions;
 
 int[] divs = 16.GetDivisors(); // { 1, 2, 4, 8, 16 }
using PeyrSharp.Extensions;
 
diff --git a/docs/assets/extensions_int.md.adc0cb07.lean.js b/docs/assets/extensions_int.md.2a945211.lean.js
similarity index 69%
rename from docs/assets/extensions_int.md.adc0cb07.lean.js
rename to docs/assets/extensions_int.md.2a945211.lean.js
index 406c4dc..ba2ffc1 100644
--- a/docs/assets/extensions_int.md.adc0cb07.lean.js
+++ b/docs/assets/extensions_int.md.2a945211.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"IntExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/int.md","filePath":"extensions/int.md","lastUpdated":1680429319000}'),e={name:"extensions/int.md"},l=o("",49),p=[l];function t(r,c,i,y,E,d){return a(),n("div",null,p)}const F=s(e,[["render",t]]);export{u as __pageData,F as default};
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"IntExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/int.md","filePath":"extensions/int.md","lastUpdated":1680429319000}'),e={name:"extensions/int.md"},l=o("",49),p=[l];function t(r,c,i,y,E,d){return a(),n("div",null,p)}const F=s(e,[["render",t]]);export{u as __pageData,F as default};
diff --git a/docs/assets/extensions_string.md.5d08846d.lean.js b/docs/assets/extensions_string.md.5d08846d.lean.js
deleted file mode 100644
index 3c98e1b..0000000
--- a/docs/assets/extensions_string.md.5d08846d.lean.js
+++ /dev/null
@@ -1 +0,0 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"StringExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/string.md","filePath":"extensions/string.md","lastUpdated":1678016235000}'),o={name:"extensions/string.md"},t=e("",104),l=[t];function p(r,c,i,d,h,y){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default};
diff --git a/docs/assets/extensions_string.md.5d08846d.js b/docs/assets/extensions_string.md.7ea7ef64.js
similarity index 99%
rename from docs/assets/extensions_string.md.5d08846d.js
rename to docs/assets/extensions_string.md.7ea7ef64.js
index 3620030..a42ea05 100644
--- a/docs/assets/extensions_string.md.5d08846d.js
+++ b/docs/assets/extensions_string.md.7ea7ef64.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"StringExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/string.md","filePath":"extensions/string.md","lastUpdated":1678016235000}'),o={name:"extensions/string.md"},t=e(`

StringExtensions

This page is about the StringExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The StringExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

CountWords()

Definition

Counts the number of words in a string. Returns int.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Extensions;
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"StringExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/string.md","filePath":"extensions/string.md","lastUpdated":1693471064000}'),o={name:"extensions/string.md"},t=e(`

StringExtensions

This page is about the StringExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The StringExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

CountWords()

Definition

Counts the number of words in a string. Returns int.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Extensions;
 
 int numberOfWords = "Hello, this is a test sentence!".CountWords();
 // numberOfWords = 6
using PeyrSharp.Extensions;
@@ -57,11 +57,11 @@ import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b637c96f.js";const u=
 // lines = { "Hello", "World" }

ToUpperAt(str, r)

Definition

Returns a new string in which the characters in a specified range of the current string are converted to uppercase. Returns a string that is equivalent to the current string, but with the characters in the specified range converted to uppercase.

Arguments

TypeNameMeaning
stringstrThe string to modify.
RangerThe range of characters to convert to uppercase.

Usage

c#
using PeyrSharp.Extensions;
 
 string str = "aBcDeFgHiJ";
-string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
+string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
 // upper = "aBCDEFGhij"
using PeyrSharp.Extensions;
 
 string str = "aBcDeFgHiJ";
-string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
+string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
 // upper = "aBCDEFGhij"

ToUpperAt(s)

Definition

Uppercases the first letter of a string. Returns a string with the first letter uppercased.

Arguments

TypeNameMeaning
stringsThe string to capitalize.

Usage

c#
using PeyrSharp.Extensions;
 
 string str = "test";
diff --git a/docs/assets/extensions_string.md.7ea7ef64.lean.js b/docs/assets/extensions_string.md.7ea7ef64.lean.js
new file mode 100644
index 0000000..59a4e2a
--- /dev/null
+++ b/docs/assets/extensions_string.md.7ea7ef64.lean.js
@@ -0,0 +1 @@
+import{_ as s,o as a,c as n,Q as e}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"StringExtensions","description":"","frontmatter":{},"headers":[],"relativePath":"extensions/string.md","filePath":"extensions/string.md","lastUpdated":1693471064000}'),o={name:"extensions/string.md"},t=e("",104),l=[t];function p(r,c,i,d,h,y){return a(),n("div",null,l)}const g=s(o,[["render",p]]);export{u as __pageData,g as default};
diff --git a/docs/assets/get-started.md.b142ffa1.js b/docs/assets/get-started.md.739f2a95.js
similarity index 98%
rename from docs/assets/get-started.md.b142ffa1.js
rename to docs/assets/get-started.md.739f2a95.js
index e4b210f..0d6d5e0 100644
--- a/docs/assets/get-started.md.b142ffa1.js
+++ b/docs/assets/get-started.md.739f2a95.js
@@ -1,4 +1,4 @@
-import{_ as s,o as a,c as e,Q as l}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Get Started","description":"","frontmatter":{},"headers":[],"relativePath":"get-started.md","filePath":"get-started.md","lastUpdated":1683355029000}'),n={name:"get-started.md"},t=l(`

Get Started

Packages and modules

Before installing PeyrSharp, you may want to consider what features you will actually need to use in your project. Indeed, PeyrSharp is divided in multiple modules and packages.

If you think you need all the features of PeyrSharp, you can directly install the PeyrSharp NuGet package. However, you can also install the packages that you only need in your project. Here's a list of all the packages and their features:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • LogLevel
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platforms.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

INFO

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Installation methods

PeyrShall is available on NuGet, you can install it by running the following command:

.NET CLI

You can add PeyrSharp to your project the .NET CLI.

powershell
dotnet add package PeyrSharp --version 1.0.0.2211
dotnet add package PeyrSharp --version 1.0.0.2211

Package Manager

sh
NuGet\\Install-Package PeyrSharp -Version 1.0.0.2211
NuGet\\Install-Package PeyrSharp -Version 1.0.0.2211

Package Reference

You can specify in your project file that it is dependent on PeyrSharp.

xml
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />

Start coding

To call methods and classes included in PeyrSharp, you will need to add the corresponding using directives in your code file.

c#
using PeyrSharp.Core;
+import{_ as s,o as a,c as e,Q as l}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Get Started","description":"","frontmatter":{},"headers":[],"relativePath":"get-started.md","filePath":"get-started.md","lastUpdated":1683355029000}'),n={name:"get-started.md"},t=l(`

Get Started

Packages and modules

Before installing PeyrSharp, you may want to consider what features you will actually need to use in your project. Indeed, PeyrSharp is divided in multiple modules and packages.

If you think you need all the features of PeyrSharp, you can directly install the PeyrSharp NuGet package. However, you can also install the packages that you only need in your project. Here's a list of all the packages and their features:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • LogLevel
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platforms.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

INFO

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Installation methods

PeyrShall is available on NuGet, you can install it by running the following command:

.NET CLI

You can add PeyrSharp to your project the .NET CLI.

powershell
dotnet add package PeyrSharp --version 1.0.0.2211
dotnet add package PeyrSharp --version 1.0.0.2211

Package Manager

sh
NuGet\\Install-Package PeyrSharp -Version 1.0.0.2211
NuGet\\Install-Package PeyrSharp -Version 1.0.0.2211

Package Reference

You can specify in your project file that it is dependent on PeyrSharp.

xml
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />

Start coding

To call methods and classes included in PeyrSharp, you will need to add the corresponding using directives in your code file.

c#
using PeyrSharp.Core;
 using PeyrSharp.Env;
 using PeyrSharp.Enums;
 using PeyrSharp.Exceptions;
diff --git a/docs/assets/get-started.md.b142ffa1.lean.js b/docs/assets/get-started.md.739f2a95.lean.js
similarity index 69%
rename from docs/assets/get-started.md.b142ffa1.lean.js
rename to docs/assets/get-started.md.739f2a95.lean.js
index e5df19f..1210bd8 100644
--- a/docs/assets/get-started.md.b142ffa1.lean.js
+++ b/docs/assets/get-started.md.739f2a95.lean.js
@@ -1 +1 @@
-import{_ as s,o as a,c as e,Q as l}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"Get Started","description":"","frontmatter":{},"headers":[],"relativePath":"get-started.md","filePath":"get-started.md","lastUpdated":1683355029000}'),n={name:"get-started.md"},t=l("",35),o=[t];function r(p,i,c,d,y,h){return a(),e("div",null,o)}const m=s(n,[["render",r]]);export{E as __pageData,m as default};
+import{_ as s,o as a,c as e,Q as l}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"Get Started","description":"","frontmatter":{},"headers":[],"relativePath":"get-started.md","filePath":"get-started.md","lastUpdated":1683355029000}'),n={name:"get-started.md"},t=l("",35),o=[t];function r(p,i,c,d,y,h){return a(),e("div",null,o)}const m=s(n,[["render",r]]);export{E as __pageData,m as default};
diff --git a/docs/assets/index.md.541d4bbc.js b/docs/assets/index.md.f3ac5971.js
similarity index 94%
rename from docs/assets/index.md.541d4bbc.js
rename to docs/assets/index.md.f3ac5971.js
index cc8ff60..c99ae23 100644
--- a/docs/assets/index.md.541d4bbc.js
+++ b/docs/assets/index.md.f3ac5971.js
@@ -1 +1 @@
-import{_ as e,o as t,c as a}from"./chunks/framework.b637c96f.js";const m=JSON.parse(`{"title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","description":"","frontmatter":{"layout":"home","title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","hero":{"name":"PeyrSharp","text":"Made for you.","tagline":"A C# library designed to make developers' job easier.","image":{"src":"/logo.png","alt":"PeyrSharp"},"actions":[{"theme":"brand","text":"Get Started","link":"/get-started"},{"theme":"alt","text":"Reference","link":"/reference"}]},"features":[{"title":"Easy-to-use","details":"Using PeyrSharp in a project is very easy and intuitive.","icon":"✅"},{"title":".NET Powered","details":"PeyrSharp is built using C# and .NET. It's available for projects targeting .NET 5 and higher.","icon":"🚀"},{"title":"Cross-Platform","details":"PeyrSharp is compatible with every operating systems that .NET supports.","icon":"🖥️"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1665305917000}`),r={name:"index.md"};function i(s,o,n,l,d,p){return t(),a("div")}const h=e(r,[["render",i]]);export{m as __pageData,h as default};
+import{_ as e,o as t,c as a}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse(`{"title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","description":"","frontmatter":{"layout":"home","title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","hero":{"name":"PeyrSharp","text":"Made for you.","tagline":"A C# library designed to make developers' job easier.","image":{"src":"/logo.png","alt":"PeyrSharp"},"actions":[{"theme":"brand","text":"Get Started","link":"/get-started"},{"theme":"alt","text":"Reference","link":"/reference"}]},"features":[{"title":"Easy-to-use","details":"Using PeyrSharp in a project is very easy and intuitive.","icon":"✅"},{"title":".NET Powered","details":"PeyrSharp is built using C# and .NET. It's available for projects targeting .NET 5 and higher.","icon":"🚀"},{"title":"Cross-Platform","details":"PeyrSharp is compatible with every operating systems that .NET supports.","icon":"🖥️"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1665305917000}`),r={name:"index.md"};function i(s,o,n,l,d,p){return t(),a("div")}const h=e(r,[["render",i]]);export{m as __pageData,h as default};
diff --git a/docs/assets/index.md.541d4bbc.lean.js b/docs/assets/index.md.f3ac5971.lean.js
similarity index 94%
rename from docs/assets/index.md.541d4bbc.lean.js
rename to docs/assets/index.md.f3ac5971.lean.js
index cc8ff60..c99ae23 100644
--- a/docs/assets/index.md.541d4bbc.lean.js
+++ b/docs/assets/index.md.f3ac5971.lean.js
@@ -1 +1 @@
-import{_ as e,o as t,c as a}from"./chunks/framework.b637c96f.js";const m=JSON.parse(`{"title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","description":"","frontmatter":{"layout":"home","title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","hero":{"name":"PeyrSharp","text":"Made for you.","tagline":"A C# library designed to make developers' job easier.","image":{"src":"/logo.png","alt":"PeyrSharp"},"actions":[{"theme":"brand","text":"Get Started","link":"/get-started"},{"theme":"alt","text":"Reference","link":"/reference"}]},"features":[{"title":"Easy-to-use","details":"Using PeyrSharp in a project is very easy and intuitive.","icon":"✅"},{"title":".NET Powered","details":"PeyrSharp is built using C# and .NET. It's available for projects targeting .NET 5 and higher.","icon":"🚀"},{"title":"Cross-Platform","details":"PeyrSharp is compatible with every operating systems that .NET supports.","icon":"🖥️"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1665305917000}`),r={name:"index.md"};function i(s,o,n,l,d,p){return t(),a("div")}const h=e(r,[["render",i]]);export{m as __pageData,h as default};
+import{_ as e,o as t,c as a}from"./chunks/framework.b40c9ff3.js";const m=JSON.parse(`{"title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","description":"","frontmatter":{"layout":"home","title":"PeyrSharp","titleTemplate":"A C# library designed to make developers' job easier.","hero":{"name":"PeyrSharp","text":"Made for you.","tagline":"A C# library designed to make developers' job easier.","image":{"src":"/logo.png","alt":"PeyrSharp"},"actions":[{"theme":"brand","text":"Get Started","link":"/get-started"},{"theme":"alt","text":"Reference","link":"/reference"}]},"features":[{"title":"Easy-to-use","details":"Using PeyrSharp in a project is very easy and intuitive.","icon":"✅"},{"title":".NET Powered","details":"PeyrSharp is built using C# and .NET. It's available for projects targeting .NET 5 and higher.","icon":"🚀"},{"title":"Cross-Platform","details":"PeyrSharp is compatible with every operating systems that .NET supports.","icon":"🖥️"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1665305917000}`),r={name:"index.md"};function i(s,o,n,l,d,p){return t(),a("div")}const h=e(r,[["render",i]]);export{m as __pageData,h as default};
diff --git a/docs/assets/intro.md.ea3bafe7.js b/docs/assets/intro.md.2fca83d6.js
similarity index 97%
rename from docs/assets/intro.md.ea3bafe7.js
rename to docs/assets/intro.md.2fca83d6.js
index 149b6fc..31e667c 100644
--- a/docs/assets/intro.md.ea3bafe7.js
+++ b/docs/assets/intro.md.2fca83d6.js
@@ -1 +1 @@
-import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const y=JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1683355029000}'),i={name:"intro.md"},o=r('

Introduction

The roots

In March 2020, we published LeoCorpLibrary, which was also a C# library that contains useful methods. When we started the development of it, we didn't know where the project will go yet. Over the releases, we've added more and more methods and new features. However, the meaning and the purpose of LeoCorpLibrary was becoming less clear for everyone; it was becoming a mess. This is why we decided to rather not release v5, but instead, we decided to make a brand new .NET Library, PeyrSharp.

Our next product

PeyrSharp is a C# written library designed to make developers' life easier. We've all written code that we wish we hadn't. PeyrSharp is here to respond to this need; by implementing useful methods in various domains: Mathematics, Web/HTTP requests, unit converters, extensions, environment-related operations, and more!

Modules

PeyrSharp is divided in multiple packages:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platform.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

NOTE

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

',24),s=[o];function l(d,n,h,c,m,u){return e(),a("div",null,s)}const b=t(i,[["render",l]]);export{y as __pageData,b as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const y=JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1683355029000}'),i={name:"intro.md"},o=r('

Introduction

The roots

In March 2020, we published LeoCorpLibrary, which was also a C# library that contains useful methods. When we started the development of it, we didn't know where the project will go yet. Over the releases, we've added more and more methods and new features. However, the meaning and the purpose of LeoCorpLibrary was becoming less clear for everyone; it was becoming a mess. This is why we decided to rather not release v5, but instead, we decided to make a brand new .NET Library, PeyrSharp.

Our next product

PeyrSharp is a C# written library designed to make developers' life easier. We've all written code that we wish we hadn't. PeyrSharp is here to respond to this need; by implementing useful methods in various domains: Mathematics, Web/HTTP requests, unit converters, extensions, environment-related operations, and more!

Modules

PeyrSharp is divided in multiple packages:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platform.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

NOTE

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

',24),s=[o];function l(d,n,h,c,m,u){return e(),a("div",null,s)}const b=t(i,[["render",l]]);export{y as __pageData,b as default}; diff --git a/docs/assets/intro.md.ea3bafe7.lean.js b/docs/assets/intro.md.2fca83d6.lean.js similarity index 67% rename from docs/assets/intro.md.ea3bafe7.lean.js rename to docs/assets/intro.md.2fca83d6.lean.js index 959f9c2..6e1c5a9 100644 --- a/docs/assets/intro.md.ea3bafe7.lean.js +++ b/docs/assets/intro.md.2fca83d6.lean.js @@ -1 +1 @@ -import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b637c96f.js";const y=JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1683355029000}'),i={name:"intro.md"},o=r("",24),s=[o];function l(d,n,h,c,m,u){return e(),a("div",null,s)}const b=t(i,[["render",l]]);export{y as __pageData,b as default}; +import{_ as t,o as e,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const y=JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1683355029000}'),i={name:"intro.md"},o=r("",24),s=[o];function l(d,n,h,c,m,u){return e(),a("div",null,s)}const b=t(i,[["render",l]]);export{y as __pageData,b as default}; diff --git a/docs/assets/reference.md.cbdb1199.js b/docs/assets/reference.md.f58906a7.js similarity index 96% rename from docs/assets/reference.md.cbdb1199.js rename to docs/assets/reference.md.f58906a7.js index 82f5853..3728830 100644 --- a/docs/assets/reference.md.cbdb1199.js +++ b/docs/assets/reference.md.f58906a7.js @@ -1 +1 @@ -import{_ as e,o as r,c as a,Q as l}from"./chunks/framework.b637c96f.js";const d=JSON.parse('{"title":"Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference.md","filePath":"reference.md","lastUpdated":1690620922000}'),i={name:"reference.md"},t=l('

Reference

The reference of PeyrSharp.

PeyrSharp.Core

PeyrSharp.Env

PeyrSharp.Enums

PeyrSharp.Exceptions

PeyrSharp.Extensions

PeyrSharp.UiHelpers

',14),h=[t];function o(s,n,m,c,p,f){return r(),a("div",null,h)}const y=e(i,[["render",o]]);export{d as __pageData,y as default}; +import{_ as e,o as r,c as a,Q as l}from"./chunks/framework.b40c9ff3.js";const d=JSON.parse('{"title":"Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference.md","filePath":"reference.md","lastUpdated":1693471064000}'),i={name:"reference.md"},t=l('

Reference

The reference of PeyrSharp.

PeyrSharp.Core

PeyrSharp.Env

PeyrSharp.Enums

PeyrSharp.Exceptions

PeyrSharp.Extensions

PeyrSharp.UiHelpers

',14),h=[t];function o(s,n,m,c,p,f){return r(),a("div",null,h)}const y=e(i,[["render",o]]);export{d as __pageData,y as default}; diff --git a/docs/assets/reference.md.cbdb1199.lean.js b/docs/assets/reference.md.f58906a7.lean.js similarity index 52% rename from docs/assets/reference.md.cbdb1199.lean.js rename to docs/assets/reference.md.f58906a7.lean.js index 7ba0591..a01e00c 100644 --- a/docs/assets/reference.md.cbdb1199.lean.js +++ b/docs/assets/reference.md.f58906a7.lean.js @@ -1 +1 @@ -import{_ as e,o as r,c as a,Q as l}from"./chunks/framework.b637c96f.js";const d=JSON.parse('{"title":"Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference.md","filePath":"reference.md","lastUpdated":1690620922000}'),i={name:"reference.md"},t=l("",14),h=[t];function o(s,n,m,c,p,f){return r(),a("div",null,h)}const y=e(i,[["render",o]]);export{d as __pageData,y as default}; +import{_ as e,o as r,c as a,Q as l}from"./chunks/framework.b40c9ff3.js";const d=JSON.parse('{"title":"Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference.md","filePath":"reference.md","lastUpdated":1693471064000}'),i={name:"reference.md"},t=l("",14),h=[t];function o(s,n,m,c,p,f){return r(),a("div",null,h)}const y=e(i,[["render",o]]);export{d as __pageData,y as default}; diff --git a/docs/assets/style.17f4c02e.css b/docs/assets/style.17f4c02e.css new file mode 100644 index 0000000..2a96882 --- /dev/null +++ b/docs/assets/style.17f4c02e.css @@ -0,0 +1 @@ +@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-cyrillic.5f2c6c8c.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-cyrillic-ext.e75737ce.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-greek.d5a6d92a.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-greek-ext.ab0619bc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-latin.2ed14f66.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-latin-ext.0030eebd.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-vietnamese.14ce25a6.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-cyrillic.ea42a392.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-cyrillic-ext.33bd5a8e.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-greek.8f4463c4.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-greek-ext.4fbe9427.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-latin.bd3b6f56.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-latin-ext.bd8920cc.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-vietnamese.6ce511fb.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chinese Quotes;src:local("PingFang SC Regular"),local("PingFang SC"),local("SimHei"),local("Source Han Sans SC");unicode-range:U+2018,U+2019,U+201C,U+201D}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Chinese Quotes", "Inter var", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E")}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-green-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-green-1);--vp-code-line-diff-remove-color: var(--vp-c-red-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-red-1);--vp-code-line-warning-color: var(--vp-c-yellow-soft);--vp-code-line-error-color: var(--vp-c-red-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-brand-soft);--vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-gray-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-brand-1);--vp-badge-tip-bg: var(--vp-c-brand-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);direction:ltr;font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{display:inline-block;margin:auto 2px -2px}mjx-container>svg{margin:auto}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-brand-1)}.custom-block.tip a:hover{color:var(--vp-c-brand-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code-light{display:none}html:not(.dark) .vp-code-dark{display:none}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s}.vp-doc blockquote>p{margin:0;font-size:16px;color:var(--vp-c-text-2);transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin-bottom:4px;text-align:center;letter-spacing:1px;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge[data-v-ea5b2908]{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.vp-doc h1>.VPBadge[data-v-ea5b2908]{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge[data-v-ea5b2908]{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge[data-v-ea5b2908]{vertical-align:middle}.vp-doc h4>.VPBadge[data-v-ea5b2908],.vp-doc h5>.VPBadge[data-v-ea5b2908],.vp-doc h6>.VPBadge[data-v-ea5b2908]{vertical-align:middle;line-height:18px}.VPBadge.info[data-v-ea5b2908]{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip[data-v-ea5b2908]{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning[data-v-ea5b2908]{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger[data-v-ea5b2908]{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-54a304ca]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-54a304ca],.VPBackdrop.fade-leave-to[data-v-54a304ca]{opacity:0}.VPBackdrop.fade-leave-active[data-v-54a304ca]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-54a304ca]{display:none}}.NotFound[data-v-b9c0c15a]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-b9c0c15a]{padding:96px 32px 168px}}.code[data-v-b9c0c15a]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-b9c0c15a]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-b9c0c15a]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-b9c0c15a]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-b9c0c15a]{padding-top:20px}.link[data-v-b9c0c15a]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-b9c0c15a]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-463da30f]{position:relative;z-index:1}.nested[data-v-463da30f]{padding-left:16px}.outline-link[data-v-463da30f]{display:block;line-height:28px;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s;font-weight:400}.outline-link[data-v-463da30f]:hover,.outline-link.active[data-v-463da30f]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-463da30f]{padding-left:13px}.VPDocAsideOutline[data-v-3a6c4994]{display:none}.VPDocAsideOutline.has-outline[data-v-3a6c4994]{display:block}.content[data-v-3a6c4994]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-3a6c4994]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-3a6c4994]{letter-spacing:.4px;line-height:28px;font-size:13px;font-weight:600}.VPDocAside[data-v-cb998dce]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-cb998dce]{flex-grow:1}.VPDocAside[data-v-cb998dce] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-cb998dce] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-cb998dce] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-19a7ae4e]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-19a7ae4e]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-a2d931e4]{margin-top:64px}.edit-info[data-v-a2d931e4]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-a2d931e4]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-a2d931e4]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-a2d931e4]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-a2d931e4]{margin-right:8px;width:14px;height:14px;fill:currentColor}.prev-next[data-v-a2d931e4]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-a2d931e4]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-a2d931e4]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-a2d931e4]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-a2d931e4]{margin-left:auto;text-align:right}.desc[data-v-a2d931e4]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-a2d931e4]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDocOutlineDropdown[data-v-95bb0785]{margin-bottom:48px}.VPDocOutlineDropdown button[data-v-95bb0785]{display:block;font-size:14px;font-weight:500;line-height:24px;border:1px solid var(--vp-c-border);padding:4px 12px;color:var(--vp-c-text-2);background-color:var(--vp-c-default-soft);border-radius:8px;transition:color .5s}.VPDocOutlineDropdown button[data-v-95bb0785]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPDocOutlineDropdown button.open[data-v-95bb0785]{color:var(--vp-c-text-1)}.icon[data-v-95bb0785]{display:inline-block;vertical-align:middle;width:16px;height:16px;fill:currentColor}[data-v-95bb0785] .outline-link{font-size:14px;font-weight:400}.open>.icon[data-v-95bb0785]{transform:rotate(90deg)}.items[data-v-95bb0785]{margin-top:12px;border-left:1px solid var(--vp-c-divider)}.VPDoc[data-v-a3c25e27]{padding:32px 24px 96px;width:100%}.VPDoc .VPDocOutlineDropdown[data-v-a3c25e27]{display:none}@media (min-width: 960px) and (max-width: 1279px){.VPDoc .VPDocOutlineDropdown[data-v-a3c25e27]{display:block}}@media (min-width: 768px){.VPDoc[data-v-a3c25e27]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-a3c25e27]{padding:32px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-a3c25e27]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-a3c25e27]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-a3c25e27]{display:flex;justify-content:center}.VPDoc .aside[data-v-a3c25e27]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-a3c25e27]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-a3c25e27]{max-width:1104px}}.container[data-v-a3c25e27]{margin:0 auto;width:100%}.aside[data-v-a3c25e27]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-a3c25e27]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-a3c25e27]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 32px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-a3c25e27]::-webkit-scrollbar{display:none}.aside-curtain[data-v-a3c25e27]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-a3c25e27]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px));padding-bottom:32px}.content[data-v-a3c25e27]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-a3c25e27]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-a3c25e27]{order:1;margin:0;min-width:640px}}.content-container[data-v-a3c25e27]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-a3c25e27]{max-width:688px}.external-link-icon-enabled[data-v-a3c25e27] :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.VPButton[data-v-1e76fe75]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-1e76fe75]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-1e76fe75]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-1e76fe75]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-1e76fe75]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-1e76fe75]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-1e76fe75]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-1e76fe75]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-1e76fe75]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-1e76fe75]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-1e76fe75]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-1e76fe75]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-1e76fe75]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-ab19afbb]{display:none}.dark .VPImage.light[data-v-ab19afbb]{display:none}.VPHero[data-v-5a3e9999]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-5a3e9999]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-5a3e9999]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-5a3e9999]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-5a3e9999]{flex-direction:row}}.main[data-v-5a3e9999]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-5a3e9999]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-5a3e9999]{text-align:left}}@media (min-width: 960px){.main[data-v-5a3e9999]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-5a3e9999]{max-width:592px}}.name[data-v-5a3e9999],.text[data-v-5a3e9999]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-5a3e9999],.VPHero.has-image .text[data-v-5a3e9999]{margin:0 auto}.name[data-v-5a3e9999]{color:var(--vp-home-hero-name-color)}.clip[data-v-5a3e9999]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-5a3e9999],.text[data-v-5a3e9999]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-5a3e9999],.text[data-v-5a3e9999]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-5a3e9999],.VPHero.has-image .text[data-v-5a3e9999]{margin:0}}.tagline[data-v-5a3e9999]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-5a3e9999]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-5a3e9999]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-5a3e9999]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-5a3e9999]{margin:0}}.actions[data-v-5a3e9999]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-5a3e9999]{justify-content:center}@media (min-width: 640px){.actions[data-v-5a3e9999]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-5a3e9999]{justify-content:flex-start}}.action[data-v-5a3e9999]{flex-shrink:0;padding:6px}.image[data-v-5a3e9999]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-5a3e9999]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-5a3e9999]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-5a3e9999]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-5a3e9999]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-5a3e9999]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-5a3e9999]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-5a3e9999]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-5a3e9999]{width:320px;height:320px}}[data-v-5a3e9999] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-5a3e9999] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-5a3e9999] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-ee984185]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-ee984185]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-ee984185]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-ee984185]>.VPImage{margin-bottom:20px}.icon[data-v-ee984185]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-ee984185]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-ee984185]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-ee984185]{padding-top:8px}.link-text-value[data-v-ee984185]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-ee984185]{display:inline-block;margin-left:6px;width:14px;height:14px;fill:currentColor}.VPFeatures[data-v-b1eea84a]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-b1eea84a]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-b1eea84a]{padding:0 64px}}.container[data-v-b1eea84a]{margin:0 auto;max-width:1152px}.items[data-v-b1eea84a]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-b1eea84a]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-b1eea84a],.item.grid-4[data-v-b1eea84a],.item.grid-6[data-v-b1eea84a]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-b1eea84a],.item.grid-4[data-v-b1eea84a]{width:50%}.item.grid-3[data-v-b1eea84a],.item.grid-6[data-v-b1eea84a]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-b1eea84a]{width:25%}}.VPHome[data-v-20eabd3a]{padding-bottom:96px}.VPHome[data-v-20eabd3a] .VPHomeSponsors{margin-top:112px;margin-bottom:-128px}@media (min-width: 768px){.VPHome[data-v-20eabd3a]{padding-bottom:128px}}.VPContent[data-v-3cf691b6]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-3cf691b6]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-3cf691b6]{margin:0}@media (min-width: 960px){.VPContent[data-v-3cf691b6]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-3cf691b6]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-3cf691b6]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-e4279f1c]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-e4279f1c]{display:none}@media (min-width: 768px){.VPFooter[data-v-e4279f1c]{padding:32px}}.container[data-v-e4279f1c]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-e4279f1c],.copyright[data-v-e4279f1c]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-24251f6f]{padding:12px 20px 11px}.VPLocalNavOutlineDropdown button[data-v-24251f6f]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-24251f6f]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-24251f6f]{color:var(--vp-c-text-1)}.icon[data-v-24251f6f]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-24251f6f] .outline-link{font-size:14px;padding:2px 0}.open>.icon[data-v-24251f6f]{transform:rotate(90deg)}.items[data-v-24251f6f]{position:absolute;top:64px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}.header[data-v-24251f6f]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-24251f6f]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-24251f6f]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-24251f6f]{transition:all .2s ease-out}.flyout-leave-active[data-v-24251f6f]{transition:all .15s ease-in}.flyout-enter-from[data-v-24251f6f],.flyout-leave-to[data-v-24251f6f]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-9e669cc1]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--vp-c-gutter);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-9e669cc1]{position:fixed}.VPLocalNav.reached-top[data-v-9e669cc1]{border-top-color:transparent}@media (min-width: 960px){.VPLocalNav[data-v-9e669cc1]{display:none}}.menu[data-v-9e669cc1]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-9e669cc1]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-9e669cc1]{padding:0 32px}}.menu-icon[data-v-9e669cc1]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPOutlineDropdown[data-v-9e669cc1]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-9e669cc1]{padding:12px 32px 11px}}.VPSwitch[data-v-1c29e291]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-1c29e291]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-1c29e291]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-1c29e291]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-1c29e291] svg{position:absolute;top:3px;left:3px;width:12px;height:12px;fill:var(--vp-c-text-2)}.dark .icon[data-v-1c29e291] svg{fill:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-3329432d]{opacity:1}.moon[data-v-3329432d],.dark .sun[data-v-3329432d]{opacity:0}.dark .moon[data-v-3329432d]{opacity:1}.dark .VPSwitchAppearance[data-v-3329432d] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-283b26e9]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-283b26e9]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-f51f088d]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-f51f088d]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-f51f088d]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-f51f088d]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-a6b0397c]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-a6b0397c]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-a6b0397c]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-a6b0397c]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-e42ed9b3]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-e42ed9b3] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-e42ed9b3] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-e42ed9b3] .group:last-child{padding-bottom:0}.VPMenu[data-v-e42ed9b3] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-e42ed9b3] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-e42ed9b3] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-e42ed9b3] .action{padding-left:24px}.VPFlyout[data-v-aa8de344]{position:relative}.VPFlyout[data-v-aa8de344]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-aa8de344]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-aa8de344]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-aa8de344]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-aa8de344]{color:var(--vp-c-brand-2)}.VPFlyout:hover .menu[data-v-aa8de344],.button[aria-expanded=true]+.menu[data-v-aa8de344]{opacity:1;visibility:visible;transform:translateY(0)}.button[aria-expanded=false]+.menu[data-v-aa8de344]{opacity:0;visibility:hidden;transform:translateY(0)}.button[data-v-aa8de344]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-aa8de344]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-aa8de344]{margin-right:0;width:16px;height:16px;fill:currentColor}.text-icon[data-v-aa8de344]{margin-left:4px;width:14px;height:14px;fill:currentColor}.icon[data-v-aa8de344]{width:20px;height:20px;fill:currentColor;transition:fill .25s}.menu[data-v-aa8de344]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-16cf740a]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-16cf740a]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-16cf740a]>svg{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-e71e869c]{display:flex;justify-content:center}.VPNavBarExtra[data-v-c8c2ae4b]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-c8c2ae4b]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-c8c2ae4b]{display:none}}.trans-title[data-v-c8c2ae4b]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-c8c2ae4b],.item.social-links[data-v-c8c2ae4b]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-c8c2ae4b]{min-width:176px}.appearance-action[data-v-c8c2ae4b]{margin-right:-2px}.social-links-list[data-v-c8c2ae4b]{margin:-4px -8px}.VPNavBarHamburger[data-v-6bee1efd]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-6bee1efd]{display:none}}.container[data-v-6bee1efd]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-6bee1efd]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-6bee1efd]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-6bee1efd]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-6bee1efd]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-6bee1efd]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-6bee1efd]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-6bee1efd],.VPNavBarHamburger.active:hover .middle[data-v-6bee1efd],.VPNavBarHamburger.active:hover .bottom[data-v-6bee1efd]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-6bee1efd],.middle[data-v-6bee1efd],.bottom[data-v-6bee1efd]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-6bee1efd]{top:0;left:0;transform:translate(0)}.middle[data-v-6bee1efd]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-6bee1efd]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-cb318fec]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-cb318fec],.VPNavBarMenuLink[data-v-cb318fec]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-f732b5d0]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-f732b5d0]{display:flex}}/*! @docsearch/css 3.5.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-ef6192dc]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-ef6192dc]{display:flex;align-items:center}}.title[data-v-2973dbb4]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-2973dbb4]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-2973dbb4]{border-bottom-color:var(--vp-c-divider)}}[data-v-2973dbb4] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-ff4524ae]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-ff4524ae]{display:flex;align-items:center}}.title[data-v-ff4524ae]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-f1abbc6e]{position:relative;border-bottom:1px solid transparent;padding:0 8px 0 24px;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap}@media (min-width: 768px){.VPNavBar[data-v-f1abbc6e]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar[data-v-f1abbc6e]{padding:0}.VPNavBar[data-v-f1abbc6e]:not(.has-sidebar):not(.top){border-bottom-color:var(--vp-c-gutter);background-color:var(--vp-nav-bg-color)}}.container[data-v-f1abbc6e]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-f1abbc6e],.container>.content[data-v-f1abbc6e]{pointer-events:none}.container[data-v-f1abbc6e] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-f1abbc6e]{max-width:100%}}.title[data-v-f1abbc6e]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-f1abbc6e]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-f1abbc6e]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-f1abbc6e]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-f1abbc6e]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-f1abbc6e]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-f1abbc6e]{display:flex;justify-content:flex-end;align-items:center;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.top) .content-body[data-v-f1abbc6e]{position:relative;background-color:var(--vp-nav-bg-color)}}@media (max-width: 767px){.content-body[data-v-f1abbc6e]{column-gap:.5rem}}.menu+.translations[data-v-f1abbc6e]:before,.menu+.appearance[data-v-f1abbc6e]:before,.menu+.social-links[data-v-f1abbc6e]:before,.translations+.appearance[data-v-f1abbc6e]:before,.appearance+.social-links[data-v-f1abbc6e]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-f1abbc6e]:before,.translations+.appearance[data-v-f1abbc6e]:before{margin-right:16px}.appearance+.social-links[data-v-f1abbc6e]:before{margin-left:16px}.social-links[data-v-f1abbc6e]{margin-right:-8px}@media (min-width: 960px){.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]{position:absolute;right:0;bottom:-31px;width:calc(100% - var(--vp-sidebar-width));height:32px}.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]:before{display:block;width:100%;height:32px;background:linear-gradient(var(--vp-c-bg),transparent 70%);content:""}}@media (min-width: 1440px){.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]{width:calc(100% - ((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)))}}.VPNavScreenAppearance[data-v-0dc5cf49]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-0dc5cf49]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-fe523e3d]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-fe523e3d]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-aea78dd1]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-aea78dd1]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-f60dbfa7]{display:block}.title[data-v-f60dbfa7]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-c2c554ed]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-c2c554ed]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-c2c554ed]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-c2c554ed]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-c2c554ed]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-c2c554ed]{transform:rotate(45deg)}.button[data-v-c2c554ed]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-c2c554ed]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-c2c554ed]{width:14px;height:14px;fill:var(--vp-c-text-2);transition:fill .5s,transform .25s}.group[data-v-c2c554ed]:first-child{padding-top:0}.group+.group[data-v-c2c554ed],.group+.item[data-v-c2c554ed]{padding-top:4px}.VPNavScreenTranslations[data-v-41505286]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-41505286]{height:auto}.title[data-v-41505286]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-41505286]{width:16px;height:16px;fill:currentColor}.icon.lang[data-v-41505286]{margin-right:8px}.icon.chevron[data-v-41505286]{margin-left:4px}.list[data-v-41505286]{padding:4px 0 0 24px}.link[data-v-41505286]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-57cce842]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 1px);right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .5s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-57cce842],.VPNavScreen.fade-leave-active[data-v-57cce842]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-57cce842],.VPNavScreen.fade-leave-active .container[data-v-57cce842]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-57cce842],.VPNavScreen.fade-leave-to[data-v-57cce842]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-57cce842],.VPNavScreen.fade-leave-to .container[data-v-57cce842]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-57cce842]{display:none}}.container[data-v-57cce842]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-57cce842],.menu+.appearance[data-v-57cce842],.translations+.appearance[data-v-57cce842]{margin-top:24px}.menu+.social-links[data-v-57cce842]{margin-top:16px}.appearance+.social-links[data-v-57cce842]{margin-top:16px}.VPNav[data-v-7ad780c2]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-7ad780c2]{position:fixed}}.VPSidebarItem.level-0[data-v-bd01e0d5]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-bd01e0d5]{padding-bottom:10px}.item[data-v-bd01e0d5]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-bd01e0d5]{cursor:pointer}.indicator[data-v-bd01e0d5]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-bd01e0d5]{background-color:var(--vp-c-brand-1)}.link[data-v-bd01e0d5]{display:flex;align-items:center;flex-grow:1}.text[data-v-bd01e0d5]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-bd01e0d5]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-bd01e0d5],.VPSidebarItem.level-2 .text[data-v-bd01e0d5],.VPSidebarItem.level-3 .text[data-v-bd01e0d5],.VPSidebarItem.level-4 .text[data-v-bd01e0d5],.VPSidebarItem.level-5 .text[data-v-bd01e0d5]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-bd01e0d5]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-bd01e0d5]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-bd01e0d5]{color:var(--vp-c-brand-1)}.caret[data-v-bd01e0d5]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-bd01e0d5]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-bd01e0d5]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-bd01e0d5]{width:18px;height:18px;fill:currentColor;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-bd01e0d5]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-bd01e0d5],.VPSidebarItem.level-2 .items[data-v-bd01e0d5],.VPSidebarItem.level-3 .items[data-v-bd01e0d5],.VPSidebarItem.level-4 .items[data-v-bd01e0d5],.VPSidebarItem.level-5 .items[data-v-bd01e0d5]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-bd01e0d5]{display:none}.VPSidebar[data-v-ee2efba5]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-ee2efba5]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-ee2efba5]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-ee2efba5]{z-index:1;padding-top:var(--vp-nav-height);padding-bottom:128px;width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-ee2efba5]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-ee2efba5]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-ee2efba5]{outline:0}.group+.group[data-v-ee2efba5]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-ee2efba5]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSkipLink[data-v-c8291ffa]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c8291ffa]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c8291ffa]{top:14px;left:16px}}.Layout[data-v-9d8abc1e]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-843cc1b2]{border-top:1px solid var(--vp-c-gutter);padding:88px 24px 96px;background-color:var(--vp-c-bg)}.container[data-v-843cc1b2]{margin:0 auto;max-width:1152px}.love[data-v-843cc1b2]{margin:0 auto;width:28px;height:28px;color:var(--vp-c-text-3)}.icon[data-v-843cc1b2]{width:28px;height:28px;fill:currentColor}.message[data-v-843cc1b2]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-843cc1b2]{padding-top:32px}.action[data-v-843cc1b2]{padding-top:40px;text-align:center}.VPTeamPage[data-v-b1cfd8dc]{padding-bottom:96px}@media (min-width: 768px){.VPTeamPage[data-v-b1cfd8dc]{padding-bottom:128px}}.VPTeamPageSection+.VPTeamPageSection[data-v-b1cfd8dc-s],.VPTeamMembers+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-b1cfd8dc-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-b1cfd8dc-s],.VPTeamMembers+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:96px}}.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 64px}}.VPTeamPageTitle[data-v-46c5e327]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-46c5e327]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-46c5e327]{padding:80px 64px 48px}}.title[data-v-46c5e327]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-46c5e327]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-46c5e327]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-46c5e327]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-3bf2e850]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-3bf2e850]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-3bf2e850]{padding:0 64px}}.title[data-v-3bf2e850]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-3bf2e850]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-3bf2e850]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-3bf2e850]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-3bf2e850]{padding-top:40px}.VPTeamMembersItem[data-v-3a0078bd]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-3a0078bd]{padding:32px}.VPTeamMembersItem.small .data[data-v-3a0078bd]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-3a0078bd]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-3a0078bd]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-3a0078bd]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-3a0078bd]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-3a0078bd]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-3a0078bd]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-3a0078bd]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-3a0078bd]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-3a0078bd]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-3a0078bd]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-3a0078bd]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-3a0078bd]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-3a0078bd]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-3a0078bd]{text-align:center}.avatar[data-v-3a0078bd]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-3a0078bd]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-3a0078bd]{margin:0;font-weight:600}.affiliation[data-v-3a0078bd]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-3a0078bd]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-3a0078bd]:hover{color:var(--vp-c-brand-1)}.desc[data-v-3a0078bd]{margin:0 auto}.desc[data-v-3a0078bd] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-3a0078bd]{display:flex;justify-content:center;height:56px}.sp-link[data-v-3a0078bd]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-3a0078bd]:hover,.sp .sp-link.link[data-v-3a0078bd]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-3a0078bd]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPTeamMembers.small .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-bf782009]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-bf782009]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-bf782009]{max-width:876px}.VPTeamMembers.medium .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-bf782009]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-bf782009]{max-width:760px}.container[data-v-bf782009]{display:grid;gap:24px;margin:0 auto;max-width:1152px}:root{--vp-c-brand: #00e0ff;--vp-c-brand-1: #6aebfc;--vp-c-brand-2: #00e0ff;--vp-c-brand-3: #00b9d1;--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 135deg, #00e0ff 0%, #00ff57 100% )}html.dark{--vp-c-bg: #0a0a1e;--vp-c-bg-light: #141428;--vp-c-bg-lighter: #1e1e32;--vp-code-bg-color: #1e1e32;--vp-c-black-mute: #1e1e32;--vp-c-black: #1e1e32;--vp-c-bg-soft: #1e1e32} diff --git a/docs/assets/style.ddb68ab6.css b/docs/assets/style.ddb68ab6.css deleted file mode 100644 index b20a0a1..0000000 --- a/docs/assets/style.ddb68ab6.css +++ /dev/null @@ -1 +0,0 @@ -@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-cyrillic.5f2c6c8c.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-cyrillic-ext.e75737ce.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-greek.d5a6d92a.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-greek-ext.ab0619bc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-latin.2ed14f66.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-latin-ext.0030eebd.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:normal;font-named-instance:"Regular";src:url(/assets/inter-roman-vietnamese.14ce25a6.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-cyrillic.ea42a392.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-cyrillic-ext.33bd5a8e.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-greek.8f4463c4.woff2) format("woff2");unicode-range:U+0370-03FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-greek-ext.4fbe9427.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-latin.bd3b6f56.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-latin-ext.bd8920cc.woff2) format("woff2");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter var;font-weight:100 900;font-display:swap;font-style:italic;font-named-instance:"Italic";src:url(/assets/inter-italic-vietnamese.6ce511fb.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chinese Quotes;src:local("PingFang SC Regular"),local("PingFang SC"),local("SimHei"),local("Source Han Sans SC");unicode-range:U+2018,U+2019,U+201C,U+201D}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Chinese Quotes", "Inter var", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-local-nav: 10;--vp-z-index-nav: 20;--vp-z-index-layout-top: 30;--vp-z-index-backdrop: 40;--vp-z-index-sidebar: 50;--vp-z-index-footer: 60}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E")}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-green-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-green-1);--vp-code-line-diff-remove-color: var(--vp-c-red-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-red-1);--vp-code-line-warning-color: var(--vp-c-yellow-soft);--vp-code-line-error-color: var(--vp-c-red-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-brand-soft);--vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-gray-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-brand-1);--vp-badge-tip-bg: var(--vp-c-brand-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-green-1);--vp-local-search-highlight-text: var(--vp-c-black)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);direction:ltr;font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-brand-1)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code-light{display:none}html:not(.dark) .vp-code-dark{display:none}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s}.vp-doc blockquote>p{margin:0;font-size:16px;color:var(--vp-c-text-2);transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin-bottom:4px;text-align:center;letter-spacing:1px;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge[data-v-ea5b2908]{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.vp-doc h1>.VPBadge[data-v-ea5b2908]{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge[data-v-ea5b2908]{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge[data-v-ea5b2908]{vertical-align:middle}.vp-doc h4>.VPBadge[data-v-ea5b2908],.vp-doc h5>.VPBadge[data-v-ea5b2908],.vp-doc h6>.VPBadge[data-v-ea5b2908]{vertical-align:middle;line-height:18px}.VPBadge.info[data-v-ea5b2908]{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip[data-v-ea5b2908]{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning[data-v-ea5b2908]{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger[data-v-ea5b2908]{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-54a304ca]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-54a304ca],.VPBackdrop.fade-leave-to[data-v-54a304ca]{opacity:0}.VPBackdrop.fade-leave-active[data-v-54a304ca]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-54a304ca]{display:none}}.NotFound[data-v-b9c0c15a]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-b9c0c15a]{padding:96px 32px 168px}}.code[data-v-b9c0c15a]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-b9c0c15a]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-b9c0c15a]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-b9c0c15a]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-b9c0c15a]{padding-top:20px}.link[data-v-b9c0c15a]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-b9c0c15a]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-463da30f]{position:relative;z-index:1}.nested[data-v-463da30f]{padding-left:16px}.outline-link[data-v-463da30f]{display:block;line-height:28px;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s;font-weight:400}.outline-link[data-v-463da30f]:hover,.outline-link.active[data-v-463da30f]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-463da30f]{padding-left:13px}.VPDocAsideOutline[data-v-626d8d18]{display:none}.VPDocAsideOutline.has-outline[data-v-626d8d18]{display:block}.content[data-v-626d8d18]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-626d8d18]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-626d8d18]{letter-spacing:.4px;line-height:28px;font-size:13px;font-weight:600}.VPDocAside[data-v-cb998dce]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-cb998dce]{flex-grow:1}.VPDocAside[data-v-cb998dce] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-cb998dce] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-cb998dce] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-6a7fda06]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-6a7fda06]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-a2d931e4]{margin-top:64px}.edit-info[data-v-a2d931e4]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-a2d931e4]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-a2d931e4]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-a2d931e4]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-a2d931e4]{margin-right:8px;width:14px;height:14px;fill:currentColor}.prev-next[data-v-a2d931e4]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-a2d931e4]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-a2d931e4]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-a2d931e4]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-a2d931e4]{margin-left:auto;text-align:right}.desc[data-v-a2d931e4]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-a2d931e4]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDocOutlineDropdown[data-v-95bb0785]{margin-bottom:48px}.VPDocOutlineDropdown button[data-v-95bb0785]{display:block;font-size:14px;font-weight:500;line-height:24px;border:1px solid var(--vp-c-border);padding:4px 12px;color:var(--vp-c-text-2);background-color:var(--vp-c-default-soft);border-radius:8px;transition:color .5s}.VPDocOutlineDropdown button[data-v-95bb0785]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPDocOutlineDropdown button.open[data-v-95bb0785]{color:var(--vp-c-text-1)}.icon[data-v-95bb0785]{display:inline-block;vertical-align:middle;width:16px;height:16px;fill:currentColor}[data-v-95bb0785] .outline-link{font-size:14px;font-weight:400}.open>.icon[data-v-95bb0785]{transform:rotate(90deg)}.items[data-v-95bb0785]{margin-top:12px;border-left:1px solid var(--vp-c-divider)}.VPDoc[data-v-a3c25e27]{padding:32px 24px 96px;width:100%}.VPDoc .VPDocOutlineDropdown[data-v-a3c25e27]{display:none}@media (min-width: 960px) and (max-width: 1279px){.VPDoc .VPDocOutlineDropdown[data-v-a3c25e27]{display:block}}@media (min-width: 768px){.VPDoc[data-v-a3c25e27]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-a3c25e27]{padding:32px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-a3c25e27]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-a3c25e27]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-a3c25e27]{display:flex;justify-content:center}.VPDoc .aside[data-v-a3c25e27]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-a3c25e27]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-a3c25e27]{max-width:1104px}}.container[data-v-a3c25e27]{margin:0 auto;width:100%}.aside[data-v-a3c25e27]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-a3c25e27]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-a3c25e27]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 32px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-a3c25e27]::-webkit-scrollbar{display:none}.aside-curtain[data-v-a3c25e27]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-a3c25e27]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px));padding-bottom:32px}.content[data-v-a3c25e27]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-a3c25e27]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-a3c25e27]{order:1;margin:0;min-width:640px}}.content-container[data-v-a3c25e27]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-a3c25e27]{max-width:688px}.external-link-icon-enabled[data-v-a3c25e27] :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.VPButton[data-v-1e76fe75]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-1e76fe75]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-1e76fe75]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-1e76fe75]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-1e76fe75]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-1e76fe75]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-1e76fe75]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-1e76fe75]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-1e76fe75]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-1e76fe75]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-1e76fe75]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-1e76fe75]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-1e76fe75]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-ab19afbb]{display:none}.dark .VPImage.light[data-v-ab19afbb]{display:none}.VPHero[data-v-5a3e9999]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-5a3e9999]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-5a3e9999]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-5a3e9999]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-5a3e9999]{flex-direction:row}}.main[data-v-5a3e9999]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-5a3e9999]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-5a3e9999]{text-align:left}}@media (min-width: 960px){.main[data-v-5a3e9999]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-5a3e9999]{max-width:592px}}.name[data-v-5a3e9999],.text[data-v-5a3e9999]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-5a3e9999],.VPHero.has-image .text[data-v-5a3e9999]{margin:0 auto}.name[data-v-5a3e9999]{color:var(--vp-home-hero-name-color)}.clip[data-v-5a3e9999]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-5a3e9999],.text[data-v-5a3e9999]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-5a3e9999],.text[data-v-5a3e9999]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-5a3e9999],.VPHero.has-image .text[data-v-5a3e9999]{margin:0}}.tagline[data-v-5a3e9999]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-5a3e9999]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-5a3e9999]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-5a3e9999]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-5a3e9999]{margin:0}}.actions[data-v-5a3e9999]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-5a3e9999]{justify-content:center}@media (min-width: 640px){.actions[data-v-5a3e9999]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-5a3e9999]{justify-content:flex-start}}.action[data-v-5a3e9999]{flex-shrink:0;padding:6px}.image[data-v-5a3e9999]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-5a3e9999]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-5a3e9999]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-5a3e9999]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-5a3e9999]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-5a3e9999]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-5a3e9999]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-5a3e9999]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-5a3e9999]{width:320px;height:320px}}[data-v-5a3e9999] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-5a3e9999] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-5a3e9999] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-6c0c85a1]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-6c0c85a1]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-6c0c85a1]{display:flex;flex-direction:column;padding:24px;height:100%}.VPFeature[data-v-6c0c85a1] .VPImage{margin-bottom:20px}.icon[data-v-6c0c85a1]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-6c0c85a1]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-6c0c85a1]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-6c0c85a1]{padding-top:8px}.link-text-value[data-v-6c0c85a1]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-6c0c85a1]{display:inline-block;margin-left:6px;width:14px;height:14px;fill:currentColor}.VPFeatures[data-v-7e232fde]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-7e232fde]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-7e232fde]{padding:0 64px}}.container[data-v-7e232fde]{margin:0 auto;max-width:1152px}.items[data-v-7e232fde]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-7e232fde]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-7e232fde],.item.grid-4[data-v-7e232fde],.item.grid-6[data-v-7e232fde]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-7e232fde],.item.grid-4[data-v-7e232fde]{width:50%}.item.grid-3[data-v-7e232fde],.item.grid-6[data-v-7e232fde]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-7e232fde]{width:25%}}.VPHome[data-v-20eabd3a]{padding-bottom:96px}.VPHome[data-v-20eabd3a] .VPHomeSponsors{margin-top:112px;margin-bottom:-128px}@media (min-width: 768px){.VPHome[data-v-20eabd3a]{padding-bottom:128px}}.VPContent[data-v-3cf691b6]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-3cf691b6]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-3cf691b6]{margin:0}@media (min-width: 960px){.VPContent[data-v-3cf691b6]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-3cf691b6]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-3cf691b6]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-e4279f1c]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-e4279f1c]{display:none}@media (min-width: 768px){.VPFooter[data-v-e4279f1c]{padding:32px}}.container[data-v-e4279f1c]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-e4279f1c],.copyright[data-v-e4279f1c]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-24251f6f]{padding:12px 20px 11px}.VPLocalNavOutlineDropdown button[data-v-24251f6f]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-24251f6f]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-24251f6f]{color:var(--vp-c-text-1)}.icon[data-v-24251f6f]{display:inline-block;vertical-align:middle;margin-left:2px;width:14px;height:14px;fill:currentColor}[data-v-24251f6f] .outline-link{font-size:14px;padding:2px 0}.open>.icon[data-v-24251f6f]{transform:rotate(90deg)}.items[data-v-24251f6f]{position:absolute;top:64px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}.header[data-v-24251f6f]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-24251f6f]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-24251f6f]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-24251f6f]{transition:all .2s ease-out}.flyout-leave-active[data-v-24251f6f]{transition:all .15s ease-in}.flyout-enter-from[data-v-24251f6f],.flyout-leave-to[data-v-24251f6f]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-9e669cc1]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--vp-c-gutter);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-9e669cc1]{position:fixed}.VPLocalNav.reached-top[data-v-9e669cc1]{border-top-color:transparent}@media (min-width: 960px){.VPLocalNav[data-v-9e669cc1]{display:none}}.menu[data-v-9e669cc1]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-9e669cc1]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-9e669cc1]{padding:0 32px}}.menu-icon[data-v-9e669cc1]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPOutlineDropdown[data-v-9e669cc1]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-9e669cc1]{padding:12px 32px 11px}}.VPSwitch[data-v-1c29e291]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-1c29e291]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-1c29e291]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-1c29e291]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-1c29e291] svg{position:absolute;top:3px;left:3px;width:12px;height:12px;fill:var(--vp-c-text-2)}.dark .icon[data-v-1c29e291] svg{fill:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-3329432d]{opacity:1}.moon[data-v-3329432d],.dark .sun[data-v-3329432d]{opacity:0}.dark .moon[data-v-3329432d]{opacity:1}.dark .VPSwitchAppearance[data-v-3329432d] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-5e9f0637]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-5e9f0637]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-f51f088d]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-f51f088d]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-f51f088d]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-f51f088d]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-a6b0397c]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-a6b0397c]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-a6b0397c]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-a6b0397c]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-e42ed9b3]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-e42ed9b3] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-e42ed9b3] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-e42ed9b3] .group:last-child{padding-bottom:0}.VPMenu[data-v-e42ed9b3] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-e42ed9b3] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-e42ed9b3] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-e42ed9b3] .action{padding-left:24px}.VPFlyout[data-v-aa8de344]{position:relative}.VPFlyout[data-v-aa8de344]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-aa8de344]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-aa8de344]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-aa8de344]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-aa8de344]{color:var(--vp-c-brand-2)}.VPFlyout:hover .menu[data-v-aa8de344],.button[aria-expanded=true]+.menu[data-v-aa8de344]{opacity:1;visibility:visible;transform:translateY(0)}.button[aria-expanded=false]+.menu[data-v-aa8de344]{opacity:0;visibility:hidden;transform:translateY(0)}.button[data-v-aa8de344]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-aa8de344]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-aa8de344]{margin-right:0;width:16px;height:16px;fill:currentColor}.text-icon[data-v-aa8de344]{margin-left:4px;width:14px;height:14px;fill:currentColor}.icon[data-v-aa8de344]{width:20px;height:20px;fill:currentColor;transition:fill .25s}.menu[data-v-aa8de344]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-16cf740a]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-16cf740a]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-16cf740a]>svg{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-e71e869c]{display:flex;justify-content:center}.VPNavBarExtra[data-v-c8c2ae4b]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-c8c2ae4b]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-c8c2ae4b]{display:none}}.trans-title[data-v-c8c2ae4b]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-c8c2ae4b],.item.social-links[data-v-c8c2ae4b]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-c8c2ae4b]{min-width:176px}.appearance-action[data-v-c8c2ae4b]{margin-right:-2px}.social-links-list[data-v-c8c2ae4b]{margin:-4px -8px}.VPNavBarHamburger[data-v-6bee1efd]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-6bee1efd]{display:none}}.container[data-v-6bee1efd]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-6bee1efd]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-6bee1efd]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-6bee1efd]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-6bee1efd]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-6bee1efd]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-6bee1efd]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-6bee1efd],.VPNavBarHamburger.active:hover .middle[data-v-6bee1efd],.VPNavBarHamburger.active:hover .bottom[data-v-6bee1efd]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-6bee1efd],.middle[data-v-6bee1efd],.bottom[data-v-6bee1efd]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-6bee1efd]{top:0;left:0;transform:translate(0)}.middle[data-v-6bee1efd]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-6bee1efd]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-cb318fec]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-cb318fec],.VPNavBarMenuLink[data-v-cb318fec]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-f732b5d0]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-f732b5d0]{display:flex}}/*! @docsearch/css 3.5.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:rgba(0,0,0,.2);transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:1px;letter-spacing:-12px;color:transparent}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:var(--vp-meta-key);font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-ef6192dc]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-ef6192dc]{display:flex;align-items:center}}.title[data-v-2973dbb4]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-2973dbb4]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-2973dbb4]{border-bottom-color:var(--vp-c-divider)}}[data-v-2973dbb4] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-ff4524ae]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-ff4524ae]{display:flex;align-items:center}}.title[data-v-ff4524ae]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-f1abbc6e]{position:relative;border-bottom:1px solid transparent;padding:0 8px 0 24px;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap}@media (min-width: 768px){.VPNavBar[data-v-f1abbc6e]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar[data-v-f1abbc6e]{padding:0}.VPNavBar[data-v-f1abbc6e]:not(.has-sidebar):not(.top){border-bottom-color:var(--vp-c-gutter);background-color:var(--vp-nav-bg-color)}}.container[data-v-f1abbc6e]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-f1abbc6e],.container>.content[data-v-f1abbc6e]{pointer-events:none}.container[data-v-f1abbc6e] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-f1abbc6e]{max-width:100%}}.title[data-v-f1abbc6e]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-f1abbc6e]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-f1abbc6e]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-f1abbc6e]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-f1abbc6e]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-f1abbc6e]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-f1abbc6e]{display:flex;justify-content:flex-end;align-items:center;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.top) .content-body[data-v-f1abbc6e]{position:relative;background-color:var(--vp-nav-bg-color)}}@media (max-width: 767px){.content-body[data-v-f1abbc6e]{column-gap:.5rem}}.menu+.translations[data-v-f1abbc6e]:before,.menu+.appearance[data-v-f1abbc6e]:before,.menu+.social-links[data-v-f1abbc6e]:before,.translations+.appearance[data-v-f1abbc6e]:before,.appearance+.social-links[data-v-f1abbc6e]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-f1abbc6e]:before,.translations+.appearance[data-v-f1abbc6e]:before{margin-right:16px}.appearance+.social-links[data-v-f1abbc6e]:before{margin-left:16px}.social-links[data-v-f1abbc6e]{margin-right:-8px}@media (min-width: 960px){.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]{position:absolute;right:0;bottom:-31px;width:calc(100% - var(--vp-sidebar-width));height:32px}.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]:before{display:block;width:100%;height:32px;background:linear-gradient(var(--vp-c-bg),transparent 70%);content:""}}@media (min-width: 1440px){.VPNavBar.has-sidebar .curtain[data-v-f1abbc6e]{width:calc(100% - ((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)))}}.VPNavScreenAppearance[data-v-0dc5cf49]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-0dc5cf49]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-fe523e3d]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-fe523e3d]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-aea78dd1]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-aea78dd1]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-f60dbfa7]{display:block}.title[data-v-f60dbfa7]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-c2c554ed]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-c2c554ed]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-c2c554ed]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-c2c554ed]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-c2c554ed]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-c2c554ed]{transform:rotate(45deg)}.button[data-v-c2c554ed]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-c2c554ed]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-c2c554ed]{width:14px;height:14px;fill:var(--vp-c-text-2);transition:fill .5s,transform .25s}.group[data-v-c2c554ed]:first-child{padding-top:0}.group+.group[data-v-c2c554ed],.group+.item[data-v-c2c554ed]{padding-top:4px}.VPNavScreenTranslations[data-v-41505286]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-41505286]{height:auto}.title[data-v-41505286]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-41505286]{width:16px;height:16px;fill:currentColor}.icon.lang[data-v-41505286]{margin-right:8px}.icon.chevron[data-v-41505286]{margin-left:4px}.list[data-v-41505286]{padding:4px 0 0 24px}.link[data-v-41505286]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-57cce842]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 1px);right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .5s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-57cce842],.VPNavScreen.fade-leave-active[data-v-57cce842]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-57cce842],.VPNavScreen.fade-leave-active .container[data-v-57cce842]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-57cce842],.VPNavScreen.fade-leave-to[data-v-57cce842]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-57cce842],.VPNavScreen.fade-leave-to .container[data-v-57cce842]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-57cce842]{display:none}}.container[data-v-57cce842]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-57cce842],.menu+.appearance[data-v-57cce842],.translations+.appearance[data-v-57cce842]{margin-top:24px}.menu+.social-links[data-v-57cce842]{margin-top:16px}.appearance+.social-links[data-v-57cce842]{margin-top:16px}.VPNav[data-v-5bdc5df3]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-5bdc5df3]{position:fixed}}.VPSidebarItem.level-0[data-v-bd01e0d5]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-bd01e0d5]{padding-bottom:10px}.item[data-v-bd01e0d5]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-bd01e0d5]{cursor:pointer}.indicator[data-v-bd01e0d5]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-bd01e0d5],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-bd01e0d5]{background-color:var(--vp-c-brand-1)}.link[data-v-bd01e0d5]{display:flex;align-items:center;flex-grow:1}.text[data-v-bd01e0d5]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-bd01e0d5]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-bd01e0d5],.VPSidebarItem.level-2 .text[data-v-bd01e0d5],.VPSidebarItem.level-3 .text[data-v-bd01e0d5],.VPSidebarItem.level-4 .text[data-v-bd01e0d5],.VPSidebarItem.level-5 .text[data-v-bd01e0d5]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-bd01e0d5],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-bd01e0d5]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.has-active>.item>.text[data-v-bd01e0d5],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-bd01e0d5]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-bd01e0d5],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-bd01e0d5]{color:var(--vp-c-brand-1)}.caret[data-v-bd01e0d5]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-bd01e0d5]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-bd01e0d5]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-bd01e0d5]{width:18px;height:18px;fill:currentColor;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-bd01e0d5]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-bd01e0d5],.VPSidebarItem.level-2 .items[data-v-bd01e0d5],.VPSidebarItem.level-3 .items[data-v-bd01e0d5],.VPSidebarItem.level-4 .items[data-v-bd01e0d5],.VPSidebarItem.level-5 .items[data-v-bd01e0d5]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-bd01e0d5]{display:none}.VPSidebar[data-v-ee2efba5]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-ee2efba5]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-ee2efba5]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-ee2efba5]{z-index:1;padding-top:var(--vp-nav-height);padding-bottom:128px;width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-ee2efba5]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-ee2efba5]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-ee2efba5]{outline:0}.group+.group[data-v-ee2efba5]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-ee2efba5]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSkipLink[data-v-c8291ffa]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-c8291ffa]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-c8291ffa]{top:14px;left:16px}}.Layout[data-v-4064354f]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-843cc1b2]{border-top:1px solid var(--vp-c-gutter);padding:88px 24px 96px;background-color:var(--vp-c-bg)}.container[data-v-843cc1b2]{margin:0 auto;max-width:1152px}.love[data-v-843cc1b2]{margin:0 auto;width:28px;height:28px;color:var(--vp-c-text-3)}.icon[data-v-843cc1b2]{width:28px;height:28px;fill:currentColor}.message[data-v-843cc1b2]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-843cc1b2]{padding-top:32px}.action[data-v-843cc1b2]{padding-top:40px;text-align:center}.VPTeamPage[data-v-b1cfd8dc]{padding-bottom:96px}@media (min-width: 768px){.VPTeamPage[data-v-b1cfd8dc]{padding-bottom:128px}}.VPTeamPageSection+.VPTeamPageSection[data-v-b1cfd8dc-s],.VPTeamMembers+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-b1cfd8dc-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-b1cfd8dc-s],.VPTeamMembers+.VPTeamPageSection[data-v-b1cfd8dc-s]{margin-top:96px}}.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-b1cfd8dc-s]{padding:0 64px}}.VPTeamPageTitle[data-v-46c5e327]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-46c5e327]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-46c5e327]{padding:80px 64px 48px}}.title[data-v-46c5e327]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-46c5e327]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-46c5e327]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-46c5e327]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-3bf2e850]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-3bf2e850]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-3bf2e850]{padding:0 64px}}.title[data-v-3bf2e850]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-3bf2e850]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-3bf2e850]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-3bf2e850]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-3bf2e850]{padding-top:40px}.VPTeamMembersItem[data-v-3a0078bd]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-3a0078bd]{padding:32px}.VPTeamMembersItem.small .data[data-v-3a0078bd]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-3a0078bd]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-3a0078bd]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-3a0078bd]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-3a0078bd]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-3a0078bd]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-3a0078bd]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-3a0078bd]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-3a0078bd]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-3a0078bd]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-3a0078bd]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-3a0078bd]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-3a0078bd]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-3a0078bd]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-3a0078bd]{text-align:center}.avatar[data-v-3a0078bd]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-3a0078bd]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-3a0078bd]{margin:0;font-weight:600}.affiliation[data-v-3a0078bd]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-3a0078bd]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-3a0078bd]:hover{color:var(--vp-c-brand-1)}.desc[data-v-3a0078bd]{margin:0 auto}.desc[data-v-3a0078bd] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-3a0078bd]{display:flex;justify-content:center;height:56px}.sp-link[data-v-3a0078bd]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-3a0078bd]:hover,.sp .sp-link.link[data-v-3a0078bd]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-3a0078bd]{margin-right:8px;width:16px;height:16px;fill:currentColor}.VPTeamMembers.small .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-bf782009]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-bf782009]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-bf782009]{max-width:876px}.VPTeamMembers.medium .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-bf782009]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-bf782009]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-bf782009]{max-width:760px}.container[data-v-bf782009]{display:grid;gap:24px;margin:0 auto;max-width:1152px}:root{--vp-c-brand: #00e0ff;--vp-c-brand-1: #6aebfc;--vp-c-brand-2: #00e0ff;--vp-c-brand-3: #00b9d1;--vp-home-hero-name-color: transparent;--vp-home-hero-name-background: -webkit-linear-gradient( 135deg, #00e0ff 0%, #00ff57 100% )}html.dark{--vp-c-bg: #0a0a1e;--vp-c-bg-light: #141428;--vp-c-bg-lighter: #1e1e32;--vp-code-bg-color: #1e1e32;--vp-c-black-mute: #1e1e32;--vp-c-black: #1e1e32;--vp-c-bg-soft: #1e1e32} diff --git a/docs/assets/ui-helpers.md.f63f6257.js b/docs/assets/ui-helpers.md.347ffc12.js similarity index 92% rename from docs/assets/ui-helpers.md.f63f6257.js rename to docs/assets/ui-helpers.md.347ffc12.js index 2b19c16..ff304a8 100644 --- a/docs/assets/ui-helpers.md.f63f6257.js +++ b/docs/assets/ui-helpers.md.347ffc12.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"UiHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers.md","filePath":"ui-helpers.md","lastUpdated":1673177457000}'),s={name:"ui-helpers.md"},i=r('

UiHelpers

This page is about the exceptions available in PeyrSharp.UiHelpers. They are grouped by category.

Compatibility

UiHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Classes

',7),l=[i];function o(d,h,p,n,c,m){return t(),a("div",null,l)}const f=e(s,[["render",o]]);export{u as __pageData,f as default}; +import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"UiHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers.md","filePath":"ui-helpers.md","lastUpdated":1673177457000}'),s={name:"ui-helpers.md"},i=r('

UiHelpers

This page is about the exceptions available in PeyrSharp.UiHelpers. They are grouped by category.

Compatibility

UiHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Classes

',7),l=[i];function o(d,h,p,n,c,m){return t(),a("div",null,l)}const f=e(s,[["render",o]]);export{u as __pageData,f as default}; diff --git a/docs/assets/ui-helpers.md.f63f6257.lean.js b/docs/assets/ui-helpers.md.347ffc12.lean.js similarity index 68% rename from docs/assets/ui-helpers.md.f63f6257.lean.js rename to docs/assets/ui-helpers.md.347ffc12.lean.js index 836c202..fefd265 100644 --- a/docs/assets/ui-helpers.md.f63f6257.lean.js +++ b/docs/assets/ui-helpers.md.347ffc12.lean.js @@ -1 +1 @@ -import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b637c96f.js";const u=JSON.parse('{"title":"UiHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers.md","filePath":"ui-helpers.md","lastUpdated":1673177457000}'),s={name:"ui-helpers.md"},i=r("",7),l=[i];function o(d,h,p,n,c,m){return t(),a("div",null,l)}const f=e(s,[["render",o]]);export{u as __pageData,f as default}; +import{_ as e,o as t,c as a,Q as r}from"./chunks/framework.b40c9ff3.js";const u=JSON.parse('{"title":"UiHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers.md","filePath":"ui-helpers.md","lastUpdated":1673177457000}'),s={name:"ui-helpers.md"},i=r("",7),l=[i];function o(d,h,p,n,c,m){return t(),a("div",null,l)}const f=e(s,[["render",o]]);export{u as __pageData,f as default}; diff --git a/docs/assets/ui-helpers_screen.md.c277ff31.js b/docs/assets/ui-helpers_screen.md.cc96f02f.js similarity index 97% rename from docs/assets/ui-helpers_screen.md.c277ff31.js rename to docs/assets/ui-helpers_screen.md.cc96f02f.js index 0c54b6e..30dd34a 100644 --- a/docs/assets/ui-helpers_screen.md.c277ff31.js +++ b/docs/assets/ui-helpers_screen.md.cc96f02f.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"Screen","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/screen.md","filePath":"ui-helpers/screen.md","lastUpdated":1673177478000}'),o={name:"ui-helpers/screen.md"},p=l(`

Screen

This page is about the ScreenHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

ScreenHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetDpi(form)

Definition

Gets the DPI of the screen where the Windows Form is located. It returns a double value.

Arguments

TypeNameMeaning
FormformThe form to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
+import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"Screen","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/screen.md","filePath":"ui-helpers/screen.md","lastUpdated":1673177478000}'),o={name:"ui-helpers/screen.md"},p=l(`

Screen

This page is about the ScreenHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

ScreenHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetDpi(form)

Definition

Gets the DPI of the screen where the Windows Form is located. It returns a double value.

Arguments

TypeNameMeaning
FormformThe form to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
 using System.Windows.Forms;
 
@@ -6,7 +6,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -16,7 +16,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }

GetDpi(window)

Definition

Gets the DPI of the screen where the Window is located. It returns a double value.

Arguments

TypeNameMeaning
WindowwindowThe Window to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -26,7 +26,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -36,7 +36,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }

GetScreenScaling(form)

Definition

Gets the scaling of the screen where the Windows Form is located. It returns a double value.

Possible values:

  • 100
  • 125
  • 150
  • 175
  • 200

Arguments

TypeNameMeaning
FormformThe form to get the scale of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -46,7 +46,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -56,7 +56,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }

GetScreenScaling(window)

Definition

Gets the scaling of the screen where the Window is located. It returns a double value.

Possible values:

  • 100
  • 125
  • 150
  • 175
  • 200

Arguments

TypeNameMeaning
WindowwindowThe window to get the scale of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -66,7 +66,7 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -76,6 +76,6 @@ import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }
`,38),e=[p];function t(r,c,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_screen.md.c277ff31.lean.js b/docs/assets/ui-helpers_screen.md.cc96f02f.lean.js similarity index 69% rename from docs/assets/ui-helpers_screen.md.c277ff31.lean.js rename to docs/assets/ui-helpers_screen.md.cc96f02f.lean.js index 53044e1..f2a5c20 100644 --- a/docs/assets/ui-helpers_screen.md.c277ff31.lean.js +++ b/docs/assets/ui-helpers_screen.md.cc96f02f.lean.js @@ -1 +1 @@ -import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"Screen","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/screen.md","filePath":"ui-helpers/screen.md","lastUpdated":1673177478000}'),o={name:"ui-helpers/screen.md"},p=l("",38),e=[p];function t(r,c,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; +import{_ as s,o as a,c as n,Q as l}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"Screen","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/screen.md","filePath":"ui-helpers/screen.md","lastUpdated":1673177478000}'),o={name:"ui-helpers/screen.md"},p=l("",38),e=[p];function t(r,c,y,E,i,d){return a(),n("div",null,e)}const u=s(o,[["render",t]]);export{F as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowhelpers.md.a1134c53.js b/docs/assets/ui-helpers_windowhelpers.md.a1134c53.js deleted file mode 100644 index 48dc1b0..0000000 --- a/docs/assets/ui-helpers_windowhelpers.md.a1134c53.js +++ /dev/null @@ -1,25 +0,0 @@ -import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const w=JSON.parse('{"title":"WindowHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowhelpers.md","filePath":"ui-helpers/windowhelpers.md","lastUpdated":null}'),l={name:"ui-helpers/windowhelpers.md"},e=o(`

WindowHelpers

This page is about the WindowHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WindowHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetWindows()

Definition

Retrieves a list of currently visible windows.

Returns

A list of WindowInfo objects representing the visible windows.

Usage

c#
using PeyrSharp.UiHelpers;
-using System.Collections.Generic;
-
-public class MyWindowManager
-{
-    public void PrintOpenedWindows() {
-        List<WindowInfo> windows = WinFormsHelpers.GetWindows();
-        foreach (WindowInfo window in windows)
-        {
-            Console.WriteLine(window.Name);
-        }
-    }
-}
using PeyrSharp.UiHelpers;
-using System.Collections.Generic;
-
-public class MyWindowManager
-{
-    public void PrintOpenedWindows() {
-        List<WindowInfo> windows = WinFormsHelpers.GetWindows();
-        foreach (WindowInfo window in windows)
-        {
-            Console.WriteLine(window.Name);
-        }
-    }
-}
`,13),p=[e];function t(r,c,i,d,E,y){return n(),a("div",null,p)}const u=s(l,[["render",t]]);export{w as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowhelpers.md.a1134c53.lean.js b/docs/assets/ui-helpers_windowhelpers.md.a1134c53.lean.js deleted file mode 100644 index e12e19f..0000000 --- a/docs/assets/ui-helpers_windowhelpers.md.a1134c53.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const w=JSON.parse('{"title":"WindowHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowhelpers.md","filePath":"ui-helpers/windowhelpers.md","lastUpdated":null}'),l={name:"ui-helpers/windowhelpers.md"},e=o("",13),p=[e];function t(r,c,i,d,E,y){return n(),a("div",null,p)}const u=s(l,[["render",t]]);export{w as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowhelpers.md.b480d14d.js b/docs/assets/ui-helpers_windowhelpers.md.b480d14d.js new file mode 100644 index 0000000..00e5dd0 --- /dev/null +++ b/docs/assets/ui-helpers_windowhelpers.md.b480d14d.js @@ -0,0 +1,77 @@ +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const w=JSON.parse('{"title":"WindowHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowhelpers.md","filePath":"ui-helpers/windowhelpers.md","lastUpdated":1696079164000}'),l={name:"ui-helpers/windowhelpers.md"},e=o(`

WindowHelpers

This page is about the WindowHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WindowHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetWindows()

Definition

Retrieves a list of currently visible windows.

Returns

A list of WindowInfo objects representing the visible windows.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Collections.Generic;
+
+public class MyWindowManager
+{
+    public void PrintOpenedWindows() {
+        List<WindowInfo> windows = WinFormsHelpers.GetWindows();
+        foreach (WindowInfo window in windows)
+        {
+            Console.WriteLine(window.Name);
+        }
+    }
+}
using PeyrSharp.UiHelpers;
+using System.Collections.Generic;
+
+public class MyWindowManager
+{
+    public void PrintOpenedWindows() {
+        List<WindowInfo> windows = WinFormsHelpers.GetWindows();
+        foreach (WindowInfo window in windows)
+        {
+            Console.WriteLine(window.Name);
+        }
+    }
+}

CloseWindow(windowInfo)

Definition

Closes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to close.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.CloseWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.CloseWindow(w)

MaximizeWindow(windowInfo)

Definition

Maximizes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to maximize.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MaximizeWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MaximizeWindow(w)

RestoreWindow(windowInfo)

Definition

Restores a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to restore.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.RestoreWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.RestoreWindow(w)

MinimizeWindow(windowInfo)

Definition

Minimizes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to minimize.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MinimizeWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MinimizeWindow(w)

MoveWindow(windowInfo, x, y)

Definition

Moves a window to specified coordinates.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to move.
intxThe X-axis coordinates.
intyThe Y-axis coordinates.

Usage

c#
using PeyrSharp.UiHelpers;
+
+WindowHelpers.MoveWindow(w, 100, 200); // w is a WindowInfo object, see previous examples.
using PeyrSharp.UiHelpers;
+
+WindowHelpers.MoveWindow(w, 100, 200); // w is a WindowInfo object, see previous examples.

SetTopMost(windowInfo, isTopMost)

Definition

Sets the Topmost property of a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to target.
boolisTopMostThe value of the TopMost property.

Note

The isTopMost parameter can be set to true if the window should always stay on top; false otherwise.

Usage

c#
using PeyrSharp.UiHelpers;
+WindowHelpers.SetTopMost(w, true)
using PeyrSharp.UiHelpers;
+WindowHelpers.SetTopMost(w, true)

GetWindowSize(windowInfo)

Definition

Gets the width and height of a window. It returns a tuple of integers representing the width and height of the window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to get the size of.

Exceptions

TypeDescription
InvalidOperationExceptionThrown if failed to retrieve window size.

Usage

c#
using PeyrSharp.UiHelpers;
+
+var size = WindowHelpers.GetWindowSize(w); // w is a WindowInfo object, see previous examples.
+Console.WriteLine($"Width: {size.Item1}, Height: {size.Item2}");
using PeyrSharp.UiHelpers;
+
+var size = WindowHelpers.GetWindowSize(w); // w is a WindowInfo object, see previous examples.
+Console.WriteLine($"Width: {size.Item1}, Height: {size.Item2}");
`,65),p=[e];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{w as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowhelpers.md.b480d14d.lean.js b/docs/assets/ui-helpers_windowhelpers.md.b480d14d.lean.js new file mode 100644 index 0000000..a39bf6e --- /dev/null +++ b/docs/assets/ui-helpers_windowhelpers.md.b480d14d.lean.js @@ -0,0 +1 @@ +import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const w=JSON.parse('{"title":"WindowHelpers","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowhelpers.md","filePath":"ui-helpers/windowhelpers.md","lastUpdated":1696079164000}'),l={name:"ui-helpers/windowhelpers.md"},e=o("",65),p=[e];function t(r,c,i,y,d,E){return a(),n("div",null,p)}const u=s(l,[["render",t]]);export{w as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowinfo.md.7554d1cd.lean.js b/docs/assets/ui-helpers_windowinfo.md.7554d1cd.lean.js deleted file mode 100644 index e97b470..0000000 --- a/docs/assets/ui-helpers_windowinfo.md.7554d1cd.lean.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const w=JSON.parse('{"title":"WindowInfo","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowinfo.md","filePath":"ui-helpers/windowinfo.md","lastUpdated":null}'),e={name:"ui-helpers/windowinfo.md"},l=o("",25),p=[l];function t(i,c,r,d,h,y){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{w as __pageData,u as default}; diff --git a/docs/assets/ui-helpers_windowinfo.md.7554d1cd.js b/docs/assets/ui-helpers_windowinfo.md.dd0da397.js similarity index 63% rename from docs/assets/ui-helpers_windowinfo.md.7554d1cd.js rename to docs/assets/ui-helpers_windowinfo.md.dd0da397.js index acddc11..7fa2729 100644 --- a/docs/assets/ui-helpers_windowinfo.md.7554d1cd.js +++ b/docs/assets/ui-helpers_windowinfo.md.dd0da397.js @@ -1,4 +1,4 @@ -import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const w=JSON.parse('{"title":"WindowInfo","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowinfo.md","filePath":"ui-helpers/windowinfo.md","lastUpdated":null}'),e={name:"ui-helpers/windowinfo.md"},l=o(`

WindowInfo

This page is about the WindowInfo class available in PeyrSharp.UiHelpers. It represents information about a window.

Compatibility

The WindowInfo class is part of the PeyrSharp.UiHelpers module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.UiHelpers might not be available in all platforms.

Properties

Handle

Definition

c#
public IntPtr Handle { get; set; }
public IntPtr Handle { get; set; }

Gets or sets the handle of the window.

Usage

c#
// Create a new WindowInfo object
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const w=JSON.parse('{"title":"WindowInfo","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowinfo.md","filePath":"ui-helpers/windowinfo.md","lastUpdated":1693471028000}'),e={name:"ui-helpers/windowinfo.md"},l=o(`

WindowInfo

This page is about the WindowInfo class available in PeyrSharp.UiHelpers. It represents information about a window.

Compatibility

The WindowInfo class is part of the PeyrSharp.UiHelpers module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.UiHelpers might not be available in all platforms.

Properties

Handle

Definition

c#
public IntPtr Handle { get; set; }
public IntPtr Handle { get; set; }

Gets or sets the handle of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = windowInfos[0]; // Assuming you have used the GetWindows() method.
 
 // Get the handle of the window
@@ -6,7 +6,7 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const w=
 WindowInfo windowInfo = windowInfos[0]; // Assuming you have used the GetWindows() method.
 
 // Get the handle of the window
-Console.WriteLine(windowInfo.Handle); // Output: 123456

Name

Definition

c#
public string Name { get; set; }
public string Name { get; set; }

Gets or sets the name of the window.

Usage

c#
// Create a new WindowInfo object
+Console.WriteLine(windowInfo.Handle); // Output: 123456

Name

Definition

c#
public string Name { get; set; }
public string Name { get; set; }

Gets or sets the name of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = new WindowInfo();
 
 // Set the name of the window
@@ -20,7 +20,7 @@ import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b637c96f.js";const w=
 windowInfo.Name = "MyWindow";
 
 // Get the name of the window
-Console.WriteLine(windowInfo.Name); // Output: MyWindow

ClassName

Definition

c#
public string ClassName { get; set; }
public string ClassName { get; set; }

Gets or sets the class name of the window.

Usage

c#
// Create a new WindowInfo object
+Console.WriteLine(windowInfo.Name); // Output: MyWindow

ClassName

Definition

c#
public string ClassName { get; set; }
public string ClassName { get; set; }

Gets or sets the class name of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = new WindowInfo();
 
 // Set the class name of the window
diff --git a/docs/assets/ui-helpers_windowinfo.md.dd0da397.lean.js b/docs/assets/ui-helpers_windowinfo.md.dd0da397.lean.js
new file mode 100644
index 0000000..709f9de
--- /dev/null
+++ b/docs/assets/ui-helpers_windowinfo.md.dd0da397.lean.js
@@ -0,0 +1 @@
+import{_ as s,o as a,c as n,Q as o}from"./chunks/framework.b40c9ff3.js";const w=JSON.parse('{"title":"WindowInfo","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/windowinfo.md","filePath":"ui-helpers/windowinfo.md","lastUpdated":1693471028000}'),e={name:"ui-helpers/windowinfo.md"},l=o("",25),p=[l];function t(i,c,r,d,h,y){return a(),n("div",null,p)}const u=s(e,[["render",t]]);export{w as __pageData,u as default};
diff --git a/docs/assets/ui-helpers_winforms.md.fe389c98.js b/docs/assets/ui-helpers_winforms.md.caf931a7.js
similarity index 95%
rename from docs/assets/ui-helpers_winforms.md.fe389c98.js
rename to docs/assets/ui-helpers_winforms.md.caf931a7.js
index 1797900..3bcf588 100644
--- a/docs/assets/ui-helpers_winforms.md.fe389c98.js
+++ b/docs/assets/ui-helpers_winforms.md.caf931a7.js
@@ -1,4 +1,4 @@
-import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"WinForms","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/winforms.md","filePath":"ui-helpers/winforms.md","lastUpdated":1673177478000}'),l={name:"ui-helpers/winforms.md"},p=o(`

WinForms

This page is about the WinFormsHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterControl(control, form)

Definition

Centers horizontally and vertically a Control on a Form.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.

Usage

c#
using PeyrSharp.UiHelpers;
+import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"WinForms","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/winforms.md","filePath":"ui-helpers/winforms.md","lastUpdated":1673177478000}'),l={name:"ui-helpers/winforms.md"},p=o(`

WinForms

This page is about the WinFormsHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterControl(control, form)

Definition

Centers horizontally and vertically a Control on a Form.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
 using System.Windows.Forms;
 
@@ -7,7 +7,7 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
     private void HandleButton(object sender, EventArgs e)
     {
         Button button = (Button)sender;
-        WinFormsHelpers.CenterControl(button, this);
+        WinFormsHelpers.CenterControl(button, this);
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -18,7 +18,7 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
     private void HandleButton(object sender, EventArgs e)
     {
         Button button = (Button)sender;
-        WinFormsHelpers.CenterControl(button, this);
+        WinFormsHelpers.CenterControl(button, this);
     }
 }

CenterControl(control, form, controlAlignment)

Definition

Centers a Control on a Form, with a specific ControlAlignment.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.
ControlAlignmentcontrolAlignmentThe alignment of the control.

Usage

c#
using PeyrSharp.Enums;
 using PeyrSharp.UiHelpers;
@@ -31,8 +31,8 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
     {
         Button button = (Button)sender;
 
-        // Center the button vertically
-        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
+        // Center the button vertically
+        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
     }
 }
using PeyrSharp.Enums;
 using PeyrSharp.UiHelpers;
@@ -45,8 +45,8 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
     {
         Button button = (Button)sender;
 
-        // Center the button vertically
-        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
+        // Center the button vertically
+        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
     }
 }

CenterForm(form)

Definition

Centers horizontally and vertically a Form on the screen.

Arguments

TypeNameMeaning
FormformThe form to center.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -56,8 +56,8 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        // Put the current form in the middle of the screen
-        WinFormsHelpers.CenterForm(this); 
+        // Put the current form in the middle of the screen
+        WinFormsHelpers.CenterForm(this); 
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -67,7 +67,7 @@ import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        // Put the current form in the middle of the screen
-        WinFormsHelpers.CenterForm(this); 
+        // Put the current form in the middle of the screen
+        WinFormsHelpers.CenterForm(this); 
     }
 }
`,27),e=[p];function t(r,c,y,E,i,d){return n(),a("div",null,e)}const m=s(l,[["render",t]]);export{F as __pageData,m as default}; diff --git a/docs/assets/ui-helpers_winforms.md.fe389c98.lean.js b/docs/assets/ui-helpers_winforms.md.caf931a7.lean.js similarity index 70% rename from docs/assets/ui-helpers_winforms.md.fe389c98.lean.js rename to docs/assets/ui-helpers_winforms.md.caf931a7.lean.js index c17d34b..e6a2623 100644 --- a/docs/assets/ui-helpers_winforms.md.fe389c98.lean.js +++ b/docs/assets/ui-helpers_winforms.md.caf931a7.lean.js @@ -1 +1 @@ -import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b637c96f.js";const F=JSON.parse('{"title":"WinForms","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/winforms.md","filePath":"ui-helpers/winforms.md","lastUpdated":1673177478000}'),l={name:"ui-helpers/winforms.md"},p=o("",27),e=[p];function t(r,c,y,E,i,d){return n(),a("div",null,e)}const m=s(l,[["render",t]]);export{F as __pageData,m as default}; +import{_ as s,o as n,c as a,Q as o}from"./chunks/framework.b40c9ff3.js";const F=JSON.parse('{"title":"WinForms","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/winforms.md","filePath":"ui-helpers/winforms.md","lastUpdated":1673177478000}'),l={name:"ui-helpers/winforms.md"},p=o("",27),e=[p];function t(r,c,y,E,i,d){return n(),a("div",null,e)}const m=s(l,[["render",t]]);export{F as __pageData,m as default}; diff --git a/docs/assets/ui-helpers_wpf.md.91ffecbf.js b/docs/assets/ui-helpers_wpf.md.e7c4b045.js similarity index 97% rename from docs/assets/ui-helpers_wpf.md.91ffecbf.js rename to docs/assets/ui-helpers_wpf.md.e7c4b045.js index 7e79ab7..26136ca 100644 --- a/docs/assets/ui-helpers_wpf.md.91ffecbf.js +++ b/docs/assets/ui-helpers_wpf.md.e7c4b045.js @@ -1,4 +1,4 @@ -import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"WPF","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/wpf.md","filePath":"ui-helpers/wpf.md","lastUpdated":1673177430000}'),n={name:"ui-helpers/wpf.md"},o=t(`

WPF

This page is about the WpfHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterWindow(window)

Definition

Centers a Window on the primary screen.

Arguments

TypeNameMeaning
WindowwindowThe Window to center.

Usage

c#
using PeyrSharp.UiHelpers;
+import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"WPF","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/wpf.md","filePath":"ui-helpers/wpf.md","lastUpdated":1673177430000}'),n={name:"ui-helpers/wpf.md"},o=t(`

WPF

This page is about the WpfHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterWindow(window)

Definition

Centers a Window on the primary screen.

Arguments

TypeNameMeaning
WindowwindowThe Window to center.

Usage

c#
using PeyrSharp.UiHelpers;
 
 Window window = new Window();
 WpfHelpers.CenterWindow(window); // Center the window on the primary screen
using PeyrSharp.UiHelpers;
diff --git a/docs/assets/ui-helpers_wpf.md.91ffecbf.lean.js b/docs/assets/ui-helpers_wpf.md.e7c4b045.lean.js
similarity index 69%
rename from docs/assets/ui-helpers_wpf.md.91ffecbf.lean.js
rename to docs/assets/ui-helpers_wpf.md.e7c4b045.lean.js
index 467b400..d25fb53 100644
--- a/docs/assets/ui-helpers_wpf.md.91ffecbf.lean.js
+++ b/docs/assets/ui-helpers_wpf.md.e7c4b045.lean.js
@@ -1 +1 @@
-import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b637c96f.js";const E=JSON.parse('{"title":"WPF","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/wpf.md","filePath":"ui-helpers/wpf.md","lastUpdated":1673177430000}'),n={name:"ui-helpers/wpf.md"},o=t("",13),l=[o];function r(p,i,d,c,h,y){return e(),s("div",null,l)}const m=a(n,[["render",r]]);export{E as __pageData,m as default};
+import{_ as a,o as e,c as s,Q as t}from"./chunks/framework.b40c9ff3.js";const E=JSON.parse('{"title":"WPF","description":"","frontmatter":{},"headers":[],"relativePath":"ui-helpers/wpf.md","filePath":"ui-helpers/wpf.md","lastUpdated":1673177430000}'),n={name:"ui-helpers/wpf.md"},o=t("",13),l=[o];function r(p,i,d,c,h,y){return e(),s("div",null,l)}const m=a(n,[["render",r]]);export{E as __pageData,m as default};
diff --git a/docs/core.html b/docs/core.html
index 7503892..07d1704 100644
--- a/docs/core.html
+++ b/docs/core.html
@@ -5,19 +5,20 @@
     
     Core | PeyrSharp
     
-    
+    
     
-    
+    
     
-    
-    
-    
+    
+    
+    
     
-    
+    
+    
   
   
-    
Skip to content

Core

This page is about the PeyrSharp.Core module.

Compatibility

The PeyrSharp.Core module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Namespaces

The Core namespace contains other namespaces:

Classes

Released under the MIT License.

- +
Skip to content

Core

This page is about the PeyrSharp.Core module.

Compatibility

The PeyrSharp.Core module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Namespaces

The Core namespace contains other namespaces:

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters.html b/docs/core/converters.html index 72ce5d2..80345f1 100644 --- a/docs/core/converters.html +++ b/docs/core/converters.html @@ -5,19 +5,20 @@ Converters | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Converters

This page is about the Converters namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Converters namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

- +
Skip to content

Converters

This page is about the Converters namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Converters namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/angle.html b/docs/core/converters/angle.html index 38a2e65..26af54f 100644 --- a/docs/core/converters/angle.html +++ b/docs/core/converters/angle.html @@ -5,18 +5,19 @@ Angle | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Angle

This page is about the Angle class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Angle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

DegreesToRadians(degrees)

Definition

Converts degrees to radians. Returns a double value.

Arguments

TypeNameMeaning
doubledegreesNumber of degrees to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Angle

This page is about the Angle class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Angle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

DegreesToRadians(degrees)

Definition

Converts degrees to radians. Returns a double value.

Arguments

TypeNameMeaning
doubledegreesNumber of degrees to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double radians = Angle.DegreesToRadians(90);
 // radians = 1.5707963271535559
using PeyrSharp.Core.Converters;
@@ -28,8 +29,8 @@
 // deg = 68.7549354
using PeyrSharp.Core.Converters;
 
 double deg = Angle.RadiansToDegrees(1.2);
-// deg = 68.7549354

Released under the MIT License.

- +// deg = 68.7549354

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/colors/hex.html b/docs/core/converters/colors/hex.html index 4047f14..eefb612 100644 --- a/docs/core/converters/colors/hex.html +++ b/docs/core/converters/colors/hex.html @@ -5,22 +5,23 @@ HEX | PeyrSharp - + - + - - - + + + - + + -
Skip to content

HEX

This page is about the HEX class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HEX class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HEX(hex)

Initializes a hexadecimal class from a hexadecimal value.

Arguments

TypeNameMeaning
stringhexThe hexadecimal value (with or without #).

WARNING

If you specify a non-hexadecimal value, a HEXInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

HEX

This page is about the HEX class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HEX class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HEX(hex)

Initializes a hexadecimal class from a hexadecimal value.

Arguments

TypeNameMeaning
stringhexThe hexadecimal value (with or without #).

WARNING

If you specify a non-hexadecimal value, a HEXInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
 
-HEX hex = new("#FF0A17");
using PeyrSharp.Core.Converters;
+HEX hex = new("#FF0A17");
using PeyrSharp.Core.Converters;
 
-HEX hex = new("#FF0A17");

Methods

ToRgb()

Definition

Converts the HEX color to RGB. Returns a RGB class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
+HEX hex = new("#FF0A17");

Methods

ToRgb()

Definition

Converts the HEX color to RGB. Returns a RGB class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
 
 RGB rgb = new HEX("#FFFFFF").ToRgb();
using PeyrSharp.Core.Converters;
 
@@ -28,8 +29,8 @@
 
 HSV hsv = new HEX("#E1077B").ToHsv();
using PeyrSharp.Core.Converters;
 
-HSV hsv = new HEX("#E1077B").ToHsv();

Properties

Value

Definition

c#
public string Value { get; init; }
public string Value { get; init; }

The Value property contains the hexadecimal value of the HEX color. You can only get this property.

Released under the MIT License.

- +HSV hsv = new HEX("#E1077B").ToHsv();

Properties

Value

Definition

c#
public string Value { get; init; }
public string Value { get; init; }

The Value property contains the hexadecimal value of the HEX color. You can only get this property.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/colors/hsv.html b/docs/core/converters/colors/hsv.html index 1229289..c6b95bf 100644 --- a/docs/core/converters/colors/hsv.html +++ b/docs/core/converters/colors/hsv.html @@ -5,23 +5,24 @@ HSV | PeyrSharp - + - + - - - + + + - + + -
Skip to content

HSV

This page is about the HSV class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HSV class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HSV(hue, saturation, value)

Definition

Initializes a HSV color from its hue, saturation, and value.

Arguments

TypeNameMeaning
inthueThe Hue of the color.
intsaturationThe saturation percentage.
intvalueThe value/brightness percentage.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

HSV

This page is about the HSV class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The HSV class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

HSV(hue, saturation, value)

Definition

Initializes a HSV color from its hue, saturation, and value.

Arguments

TypeNameMeaning
inthueThe Hue of the color.
intsaturationThe saturation percentage.
intvalueThe value/brightness percentage.

Usage

c#
using PeyrSharp.Core.Converters;
 
-HSV hsv = new(50, 75, 100);
using PeyrSharp.Core.Converters;
+HSV hsv = new(50, 75, 100);
using PeyrSharp.Core.Converters;
 
-HSV hsv = new(50, 75, 100);

Properties

Hue

Definition

c#
public int Hue { get; init; }
public int Hue { get; init; }

The Hue property contains the hue of the HSV color. You can only get this property.

Saturation

Definition

c#
public int Saturation { get; init; }
public int Saturation { get; init; }

The Value property contains the saturation percentage of the HSV color. You can only get this property.

Value

Definition

c#
public int Value { get; init; }
public int Value { get; init; }

The Value property contains the value/brightness percentage of the HSV color. You can only get this property.

Released under the MIT License.

- +HSV hsv = new(50, 75, 100);

Properties

Hue

Definition

c#
public int Hue { get; init; }
public int Hue { get; init; }

The Hue property contains the hue of the HSV color. You can only get this property.

Saturation

Definition

c#
public int Saturation { get; init; }
public int Saturation { get; init; }

The Value property contains the saturation percentage of the HSV color. You can only get this property.

Value

Definition

c#
public int Value { get; init; }
public int Value { get; init; }

The Value property contains the value/brightness percentage of the HSV color. You can only get this property.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/colors/rgb.html b/docs/core/converters/colors/rgb.html index 5961b48..ce95e47 100644 --- a/docs/core/converters/colors/rgb.html +++ b/docs/core/converters/colors/rgb.html @@ -5,28 +5,29 @@ RGB | PeyrSharp - + - + - - - + + + - + + -
Skip to content

RGB

This page is about the RGB class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The RGB class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

RGB(color)

Definition

Initializes a RGB class from a System.Drawing.Color. Returns a RGB class.

Arguments

TypeNameMeaning
ColorcolorThe RGB color.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

RGB

This page is about the RGB class available in PeyrSharp.Core.Converters. You can find here all of its methods and properties.

Compatibility

The RGB class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

RGB(color)

Definition

Initializes a RGB class from a System.Drawing.Color. Returns a RGB class.

Arguments

TypeNameMeaning
ColorcolorThe RGB color.

Usage

c#
using PeyrSharp.Core.Converters;
 using System.Drawing;
 
-RGB rgb = new(Color.FromArgb(255, 150, 120));
using PeyrSharp.Core.Converters;
+RGB rgb = new(Color.FromArgb(255, 150, 120));
using PeyrSharp.Core.Converters;
 using System.Drawing;
 
-RGB rgb = new(Color.FromArgb(255, 150, 120));

RGB(r, g, b)

Definition

Initializes a RGB class from its r, g and b values. Returns a RGB class.

Arguments

TypeNameMeaning
intrRed.
intgGreen.
intbBlue.

WARNING

If you specify a value that is not between 0 and 255, a RGBInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
+RGB rgb = new(Color.FromArgb(255, 150, 120));

RGB(r, g, b)

Definition

Initializes a RGB class from its r, g and b values. Returns a RGB class.

Arguments

TypeNameMeaning
intrRed.
intgGreen.
intbBlue.

WARNING

If you specify a value that is not between 0 and 255, a RGBInvalidValueException will be thrown.

Usage

c#
using PeyrSharp.Core.Converters;
 
-RGB rgb = new(255, 150, 120);
using PeyrSharp.Core.Converters;
+RGB rgb = new(255, 150, 120);
using PeyrSharp.Core.Converters;
 
-RGB rgb = new(255, 150, 120);

Methods

ToHex()

Definition

Converts the RGB color to hexadecimal (HEX). Returns a HEX class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
+RGB rgb = new(255, 150, 120);

Methods

ToHex()

Definition

Converts the RGB color to hexadecimal (HEX). Returns a HEX class.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core.Converters;
 
 HEX hex = new RGB(255, 0, 0).ToHex();
using PeyrSharp.Core.Converters;
 
@@ -34,8 +35,8 @@
 
 HSV hsv = new RGB(255, 0, 0).ToHsv();
using PeyrSharp.Core.Converters;
 
-HSV hsv = new RGB(255, 0, 0).ToHsv();

Properties

Color

Definition

c#
public Color Color { get; init; }
public Color Color { get; init; }

The Color property contains the RGB color as a System.Drawing.Color. You can only get this property.

Released under the MIT License.

- +HSV hsv = new RGB(255, 0, 0).ToHsv();

Properties

Color

Definition

c#
public Color Color { get; init; }
public Color Color { get; init; }

The Color property contains the RGB color as a System.Drawing.Color. You can only get this property.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/distances.html b/docs/core/converters/distances.html index 7ad87d3..9ba358f 100644 --- a/docs/core/converters/distances.html +++ b/docs/core/converters/distances.html @@ -5,18 +5,19 @@ Distances | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Distances

This page is about the Distances class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Distances class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

MilesToKm(miles)

Definition

Converts miles to kilometers. Returns a double value.

Arguments

TypeNameMeaning
doublemilesNumber of mile(s) to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Distances

This page is about the Distances class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Distances class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

MilesToKm(miles)

Definition

Converts miles to kilometers. Returns a double value.

Arguments

TypeNameMeaning
doublemilesNumber of mile(s) to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double km = Distances.MilesToKm(10);
 // km = 16.09344
using PeyrSharp.Core.Converters;
@@ -40,8 +41,8 @@
 // feet = 12
using PeyrSharp.Core.Converters;
 
 double feet = Distances.MetersToFeet(3.657599994440448);
-// feet = 12

Released under the MIT License.

- +// feet = 12

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/energies.html b/docs/core/converters/energies.html index 0d660c2..3ad7119 100644 --- a/docs/core/converters/energies.html +++ b/docs/core/converters/energies.html @@ -5,18 +5,19 @@ Energies | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Energies

This page is about the Energies class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Energies class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CaloriesToJoules(calories)

Definition

Converts calories to joules.

Arguments

TypeNameMeaning
doublecaloriesThe amount of energy in calories to be converted.

Returns

The equivalent amount of energy in joules.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Energies

This page is about the Energies class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Energies class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CaloriesToJoules(calories)

Definition

Converts calories to joules.

Arguments

TypeNameMeaning
doublecaloriesThe amount of energy in calories to be converted.

Returns

The equivalent amount of energy in joules.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double calories = 100.0;
 double joules = Energies.CaloriesToJoules(calories);
using PeyrSharp.Core.Converters;
@@ -28,8 +29,8 @@
 double calories = Energies.JoulesToCalories(joules);
using PeyrSharp.Core.Converters;
 
 double joules = 1000.0;
-double calories = Energies.JoulesToCalories(joules);

Released under the MIT License.

- +double calories = Energies.JoulesToCalories(joules);

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/masses.html b/docs/core/converters/masses.html index dcdebd7..3b5dbd7 100644 --- a/docs/core/converters/masses.html +++ b/docs/core/converters/masses.html @@ -5,18 +5,19 @@ Masses | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Masses

This page is about the Masses class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Masses class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

PoundsToKilograms(pounds)

Definition

Converts pounds to kilograms. Returns a double value.

Arguments

TypeNameMeaning
doublepoundsNumber of pounds to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Masses

This page is about the Masses class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Masses class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

PoundsToKilograms(pounds)

Definition

Converts pounds to kilograms. Returns a double value.

Arguments

TypeNameMeaning
doublepoundsNumber of pounds to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double kg = Masses.PoundsToKilograms(10);
 // kg = 4.535923703803784
using PeyrSharp.Core.Converters;
@@ -28,8 +29,8 @@
 // pounds = 55.115565499999995
using PeyrSharp.Core.Converters;
 
 double pounds = Masses.KilogramsToPounds(25);
-// pounds = 55.115565499999995

Released under the MIT License.

- +// pounds = 55.115565499999995

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/speeds.html b/docs/core/converters/speeds.html index 9cc1842..72d46cb 100644 --- a/docs/core/converters/speeds.html +++ b/docs/core/converters/speeds.html @@ -5,18 +5,19 @@ Speeds | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Speeds

This page is about the Speeds class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Speeds class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

KnotsToKilometersPerHour(knots)

Definition

Converts knots to kilometers per hour.

Arguments

TypeNameMeaning
doubleknotsThe speed in knots.

Returns

The equivalent speed in kilometers per hour.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Speeds

This page is about the Speeds class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Speeds class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

KnotsToKilometersPerHour(knots)

Definition

Converts knots to kilometers per hour.

Arguments

TypeNameMeaning
doubleknotsThe speed in knots.

Returns

The equivalent speed in kilometers per hour.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double speedInKnots = 20.0;
 double speedInKilometersPerHour = Speeds.KnotsToKilometersPerHour(speedInKnots);
@@ -92,8 +93,8 @@
 // mph = 613.8153184
using PeyrSharp.Core.Converters;
 
 double mph = Speeds.MachToMilesPerHour(0.8);
-// mph = 613.8153184

Released under the MIT License.

- +// mph = 613.8153184

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/storage.html b/docs/core/converters/storage.html index 9a07637..f202844 100644 --- a/docs/core/converters/storage.html +++ b/docs/core/converters/storage.html @@ -5,18 +5,19 @@ Storage | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Storage

This page is about the Storage class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Storage class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToByte(value, storageUnit)

Definition

Converts a size (kb, mb, ...) to byte. Returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doublevalueThe value to convert.
StorageUnitsstorageUnitThe unit of the value. (ex: kilobyte, gigabyte...)

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Storage

This page is about the Storage class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Storage class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToByte(value, storageUnit)

Definition

Converts a size (kb, mb, ...) to byte. Returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doublevalueThe value to convert.
StorageUnitsstorageUnitThe unit of the value. (ex: kilobyte, gigabyte...)

Usage

c#
using PeyrSharp.Core.Converters;
 
 double byte = Storage.ToByte(1, StorageUnits.Kilobyte);
 // byte = 1000
using PeyrSharp.Core.Converters;
@@ -64,8 +65,8 @@
 // bits = 8192
using PeyrSharp.Core.Converters;
 
 double bits = Storage.BytesToBits(1024);
-// bits = 8192

Released under the MIT License.

- +// bits = 8192

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/temperatures.html b/docs/core/converters/temperatures.html index abb4571..8fac9ce 100644 --- a/docs/core/converters/temperatures.html +++ b/docs/core/converters/temperatures.html @@ -5,18 +5,19 @@ Temperatures | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Temperatures

This page is about the Temperatures class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Temperatures class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CelsiusToFahrenheit(celsius)

Definition

Converts Celsius (°C) to Fahrenheit (°F). Returns a double value.

Arguments

TypeNameMeaning
doublecelsiusNumber of Celsius to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Temperatures

This page is about the Temperatures class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Temperatures class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

CelsiusToFahrenheit(celsius)

Definition

Converts Celsius (°C) to Fahrenheit (°F). Returns a double value.

Arguments

TypeNameMeaning
doublecelsiusNumber of Celsius to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double f = Temperatures.CelsiusToFahrenheit(22);
 // f = 71.6
using PeyrSharp.Core.Converters;
@@ -28,8 +29,8 @@
 // c = 23.88888888888889
using PeyrSharp.Core.Converters;
 
 double c = Temperatures.FahrenheitToCelsius(75);
-// c = 23.88888888888889

Released under the MIT License.

- +// c = 23.88888888888889

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/time.html b/docs/core/converters/time.html index 234a9af..4cf7e79 100644 --- a/docs/core/converters/time.html +++ b/docs/core/converters/time.html @@ -5,18 +5,19 @@ Time | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Time

This page is about the Time class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Time class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToSeconds(d, timeUnits)

Definition

Converts a specified time unit value to seconds. For instance, you can convert days, hours or minutes to seconds. It returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doubledThe time unit to convert.
TimeUnitstimeUnitsThe unit of the time. (ex: minutes, hours...)

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Time

This page is about the Time class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Time class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

ToSeconds(d, timeUnits)

Definition

Converts a specified time unit value to seconds. For instance, you can convert days, hours or minutes to seconds. It returns a double value.

INFO

This method can also be used in PeyrSharp.Extensions.

Arguments

TypeNameMeaning
doubledThe time unit to convert.
TimeUnitstimeUnitsThe unit of the time. (ex: minutes, hours...)

Usage

c#
using PeyrSharp.Core.Converters;
 using PeyrSharp.Enums;
 
 double seconds = Time.ToSeconds(5, TimeUnits.Minutes);
@@ -54,12 +55,12 @@
 
 var date = Time.UnixTimeToDateTime(1670144268); // 12/04/2022 08:57:48

DateTimeToUnixTime(dateTime)

Available in version 1.1 and higher.

Definition

Converts DateTime to Unix Time. It returns an int value.

Arguments

TypeNameMeaning
DateTimedateTimeThe converted DateTime in Unix Time.

Usage

c#
using PeyrSharp.Core.Converters;
 
-int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
+int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
 // unix = 1670144268
using PeyrSharp.Core.Converters;
 
-int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); 
-// unix = 1670144268

Released under the MIT License.

- +int unix = Time.DateTimeToUnixTime(new(2022, 12, 4, 8, 57, 48, DateTimeKind.Utc)); +// unix = 1670144268

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/converters/volumes.html b/docs/core/converters/volumes.html index b923fdb..2ad4cea 100644 --- a/docs/core/converters/volumes.html +++ b/docs/core/converters/volumes.html @@ -5,18 +5,19 @@ Volumes | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Volumes

This page is about the Volumes class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Volumes class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

M3ToLitre(m3)

Definition

Converts Cubic Meters (m³) to Litre (L). Returns a double value.

Arguments

TypeNameMeaning
doublem3Number of cubic meters to convert.

Usage

c#
using PeyrSharp.Core.Converters;
+    
Skip to content

Volumes

This page is about the Volumes class available in PeyrSharp.Core.Converters. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Volumes class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

M3ToLitre(m3)

Definition

Converts Cubic Meters (m³) to Litre (L). Returns a double value.

Arguments

TypeNameMeaning
doublem3Number of cubic meters to convert.

Usage

c#
using PeyrSharp.Core.Converters;
 
 double litre = Volumes.M3ToLitre(10);
 // litre = 10000
using PeyrSharp.Core.Converters;
@@ -28,8 +29,8 @@
 // m3 = 0.5
using PeyrSharp.Core.Converters;
 
 double m3 = Volumes.LitreToM3(500);
-// m3 = 0.5

Released under the MIT License.

- +// m3 = 0.5

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/crypt.html b/docs/core/crypt.html index 5e5914f..f557bd2 100644 --- a/docs/core/crypt.html +++ b/docs/core/crypt.html @@ -5,18 +5,19 @@ Crypt | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Crypt

This page is about the Crypt class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Crypt class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

EncryptAes(str, key)

Definitions

Encrypts a string using AES encryption. Returns the encrypted content as a string as well.

Arguments

TypeNameMeaning
stringstrThe text to encrypt.
stringkeyThe encryption key. This is the same key that will be used to decrypt the text.

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

Crypt

This page is about the Crypt class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Crypt class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

EncryptAes(str, key)

Definitions

Encrypts a string using AES encryption. Returns the encrypted content as a string as well.

Arguments

TypeNameMeaning
stringstrThe text to encrypt.
stringkeyThe encryption key. This is the same key that will be used to decrypt the text.

Usage

c#
using PeyrSharp.Core;
 
 string text = "Hello, world!";
 string encrypted = Crypt.EncryptAes(text, "password");
@@ -80,8 +81,8 @@
 
 string encrypted = "AvuLd4LUxRU=";
 string text = Crypt.Decrypt3Des(encrypted, "123");
-// text = Hello

Released under the MIT License.

- +// text = Hello

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/guid-options.html b/docs/core/guid-options.html index edfa14f..b64eb27 100644 --- a/docs/core/guid-options.html +++ b/docs/core/guid-options.html @@ -5,18 +5,19 @@ GuidOptions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

GuidOptions

This page is about the GuidOptions class available in PeyrSharp.Core. You can find here all of its properties.

Compatibility

The GuidOptions class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

GuidOptions()

Definition

Initializes GuidOptions with default values for its properties.

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

GuidOptions

This page is about the GuidOptions class available in PeyrSharp.Core. You can find here all of its properties.

Compatibility

The GuidOptions class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

GuidOptions()

Definition

Initializes GuidOptions with default values for its properties.

Usage

c#
using PeyrSharp.Core;
 
 var options = new GuidOptions();
 /*
@@ -52,8 +53,8 @@
         - Hyphens = true
         - Braces = true
         - UpperCaseOnly = true
-*/

Properties

Length

Definition

c#
public int Length { get; set; }
public int Length { get; set; }

The Length property is an int representing the length of the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Hyphens

Definition

c#
public bool Hyphens { get; set; }
public bool Hyphens { get; set; }

The Hyphens property is a bool, which will determine if you want hyphens in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Braces

Definition

c#
public bool Braces { get; set; }
public bool Braces { get; set; }

The Braces property is a bool, which will determine if you want braces in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

UpperCaseOnly

Definition

c#
public bool UpperCaseOnly { get; set; }
public bool UpperCaseOnly { get; set; }

The UpperCaseOnly property is a bool, which will determine if you want to only have upper cases in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Released under the MIT License.

- +*/

Properties

Length

Definition

c#
public int Length { get; set; }
public int Length { get; set; }

The Length property is an int representing the length of the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Hyphens

Definition

c#
public bool Hyphens { get; set; }
public bool Hyphens { get; set; }

The Hyphens property is a bool, which will determine if you want hyphens in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Braces

Definition

c#
public bool Braces { get; set; }
public bool Braces { get; set; }

The Braces property is a bool, which will determine if you want braces in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

UpperCaseOnly

Definition

c#
public bool UpperCaseOnly { get; set; }
public bool UpperCaseOnly { get; set; }

The UpperCaseOnly property is a bool, which will determine if you want to only have upper cases in the Guid that will be generated if used with GuidGen.Generate().

INFO

This property can be initialized when using the GuidOptions(length, hyphens, braces, upperCaseOnly) constructor.

You can get and set this property after initializing the class.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/guid.html b/docs/core/guid.html index 7d40800..d24bb81 100644 --- a/docs/core/guid.html +++ b/docs/core/guid.html @@ -5,18 +5,19 @@ GuidGen | PeyrSharp - + - + - - - + + + - + + -
Skip to content

GuidGen

This page is about the GuidGen class available in PeyrSharp.Core. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The GuidGen class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Generate()

Definition

The Generate() method generates a Guid and will return it as a string.

INFO

This method has different overloads.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

GuidGen

This page is about the GuidGen class available in PeyrSharp.Core. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The GuidGen class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Generate()

Definition

The Generate() method generates a Guid and will return it as a string.

INFO

This method has different overloads.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Core;
 
 string guid = GuidGen.Generate();
 // guid = 7992acdd-1c9a-4985-92df-04599d560bbc (example)
using PeyrSharp.Core;
@@ -40,8 +41,8 @@
 // guid = {35c3ab90-7636-4d34-a439-bc65eb3c} (example)
using PeyrSharp.Core;
 
 string guid = Guid.Generate(new GuidOptions(32, true, true, false));
-// guid = {35c3ab90-7636-4d34-a439-bc65eb3c} (example)

Released under the MIT License.

- +// guid = {35c3ab90-7636-4d34-a439-bc65eb3c} (example)

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/internet.html b/docs/core/internet.html index bf8ed98..d1738fb 100644 --- a/docs/core/internet.html +++ b/docs/core/internet.html @@ -5,18 +5,19 @@ Internet | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Internet

This page is about the Internet class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Internet class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IsAvailableAsync()

Definition

Checks if a connection to the Internet is available. Returns a bool value.

INFO

This method is asynchronous and awaitable.

Arguments

This method has no arguments

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

Internet

This page is about the Internet class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Internet class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IsAvailableAsync()

Definition

Checks if a connection to the Internet is available. Returns a bool value.

INFO

This method is asynchronous and awaitable.

Arguments

This method has no arguments

Usage

c#
using PeyrSharp.Core;
 
 public static async void Main()
 {
@@ -41,25 +42,25 @@
 public static async void Main()
 {
     int status = await Internet.GetStatusCodeAsync("https://google.com");
-    // status should be 200 if everything is working
+    // status should be 200 if everything is working
 }
using PeyrSharp.Core;
 
 public static async void Main()
 {
     int status = await Internet.GetStatusCodeAsync("https://google.com");
-    // status should be 200 if everything is working
+    // status should be 200 if everything is working
 }

GetStatusDescriptionAsync(url)

Definition

Gets the status description of a specific page by making a request to it. Returns the status description as a string.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlThe URL where to send the request.

Usage

c#
using PeyrSharp.Core;
 
 public static async void Main()
 {
     string status = await Internet.GetStatusDescriptionAsync("https://google.com");
-    // status should be OK if everything is working
+    // status should be OK if everything is working
 }
using PeyrSharp.Core;
 
 public static async void Main()
 {
     string status = await Internet.GetStatusDescriptionAsync("https://google.com");
-    // status should be OK if everything is working
+    // status should be OK if everything is working
 }

GetStatusInfoAsync(url)

Definition

This method sends an HTTP GET request to a given URL and returns a Task of StatusInfo object that contains the status code, description, and type of the URL. The HTTP request method used is HttpClient.GetAsync().

Arguments

TypeNameMeaning
stringurlThe URL to get the status info from.

Returns

A Task of StatusInfo object containing the status code, description, and type of the URL.

Usage

c#
using PeyrSharp.Core;
 
 StatusInfo statusInfo = await Internet.GetStatusInfoAsync("https://www.google.com");
using PeyrSharp.Core;
@@ -72,19 +73,19 @@
     int status = await Internet.GetStatusCodeAsync("https://google.com");
     switch (Internet.GetStatusCodeType(status))
     {
-        case StatusCodes.Informational:
+        case StatusCodes.Informational:
             Console.WriteLine("An information status code has been returned.");
             break;
-        case StatusCodes.Success:
+        case StatusCodes.Success:
             Console.WriteLine("An successful status code has been returned.");
             break;
-        case StatusCodes.Redirection:
+        case StatusCodes.Redirection:
             Console.WriteLine("An redirection status code has been returned.");
             break;
-        case StatusCodes.ClientError:
+        case StatusCodes.ClientError:
             Console.WriteLine("An client error status code has been returned.");
             break;
-        case StatusCodes.ServerError:
+        case StatusCodes.ServerError:
             Console.WriteLine("An server error status code has been returned.");
             break;
     }
@@ -96,19 +97,19 @@
     int status = await Internet.GetStatusCodeAsync("https://google.com");
     switch (Internet.GetStatusCodeType(status))
     {
-        case StatusCodes.Informational:
+        case StatusCodes.Informational:
             Console.WriteLine("An information status code has been returned.");
             break;
-        case StatusCodes.Success:
+        case StatusCodes.Success:
             Console.WriteLine("An successful status code has been returned.");
             break;
-        case StatusCodes.Redirection:
+        case StatusCodes.Redirection:
             Console.WriteLine("An redirection status code has been returned.");
             break;
-        case StatusCodes.ClientError:
+        case StatusCodes.ClientError:
             Console.WriteLine("An client error status code has been returned.");
             break;
-        case StatusCodes.ServerError:
+        case StatusCodes.ServerError:
             Console.WriteLine("An server error status code has been returned.");
             break;
     }
@@ -124,8 +125,8 @@
 // valid = false
using PeyrSharp.Core;
 
 bool valid = Internet.GetUrlProtocol("a/test");
-// valid = false

Released under the MIT License.

- +// valid = false

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/json-helper.html b/docs/core/json-helper.html index 78ecca7..dd37f94 100644 --- a/docs/core/json-helper.html +++ b/docs/core/json-helper.html @@ -5,18 +5,19 @@ JsonHelper | PeyrSharp - + - + - - - + + + - + + -
Skip to content

JsonHelper

This page is about the JsonHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The JsonHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromJson<T>(fileName)

Definition

The LoadFromJson<T>() method loads an object from a JSON file.

Type Parameters

TypeMeaning
TThe type of the object to save.

Arguments

TypeNameMeaning
stringfileNameThe name of the file to load from.

Returns

The object loaded from the file.

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

JsonHelper

This page is about the JsonHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The JsonHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromJson<T>(fileName)

Definition

The LoadFromJson<T>() method loads an object from a JSON file.

Type Parameters

TypeMeaning
TThe type of the object to save.

Arguments

TypeNameMeaning
stringfileNameThe name of the file to load from.

Returns

The object loaded from the file.

Usage

c#
using PeyrSharp.Core;
 using System.IO;
 using System.Text.Json;
 
@@ -38,10 +39,10 @@
 
 public static void Main()
 {
-    // Create an object to save
+    // Create an object to save
     MyObject obj = new MyObject();
 
-    // Save the object as a JSON file
+    // Save the object as a JSON file
     JsonHelper.SaveAsJson(obj, "output.json");
 }
 
@@ -55,10 +56,10 @@
 
 public static void Main()
 {
-    // Create an object to save
+    // Create an object to save
     MyObject obj = new MyObject();
 
-    // Save the object as a JSON file
+    // Save the object as a JSON file
     JsonHelper.SaveAsJson(obj, "output.json");
 }
 
@@ -66,8 +67,8 @@
 {
     public string Name { get; set; }
     public int Age { get; set; }
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths.html b/docs/core/maths.html index 4f6e33e..fc180e1 100644 --- a/docs/core/maths.html +++ b/docs/core/maths.html @@ -5,19 +5,20 @@ Maths | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Maths

This page is about the Maths namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Maths namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

- +
Skip to content

Maths

This page is about the Maths namespace available in PeyrSharp.Core. You can find here all of its classes.

Compatibility

The Maths namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/algebra.html b/docs/core/maths/algebra.html index a31951c..3534efe 100644 --- a/docs/core/maths/algebra.html +++ b/docs/core/maths/algebra.html @@ -5,18 +5,19 @@ Algebra | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Algebra

This page is about the Algebra class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Algebra class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Sum(numbers) (double)

Definition

Returns the sum of specified double numbers. It returns a double value.

Arguments

TypeNameMeaning
params double[]numbersThe numbers to do the sum of.

Usage

c#
using PeyrSharp.Core.Maths;
+    
Skip to content

Algebra

This page is about the Algebra class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Algebra class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Sum(numbers) (double)

Definition

Returns the sum of specified double numbers. It returns a double value.

Arguments

TypeNameMeaning
params double[]numbersThe numbers to do the sum of.

Usage

c#
using PeyrSharp.Core.Maths;
 
 // Usage 1
 double sum = Algebra.Sum(12, 1.5, 45, 2.2);
@@ -92,8 +93,8 @@
 // res = double[] { 1, 4, 9, 16 }
using PeyrSharp.Core.Maths;
 
 double res = Algebra.GetResultsOf(x => x * x, 1, 2, 3, 4);
-// res = double[] { 1, 4, 9, 16 }

Released under the MIT License.

- +// res = double[] { 1, 4, 9, 16 }

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry.html b/docs/core/maths/geometry.html index 45ed025..1067371 100644 --- a/docs/core/maths/geometry.html +++ b/docs/core/maths/geometry.html @@ -5,19 +5,20 @@ Geometry | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Geometry

This page is about the Geometry namespace available in PeyrSharp.Core.Maths. This namespace includes several classes to get and calculates various aspects of different shapes, like the area, perimeter, volume and more.

Compatibility

The namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

- +
Skip to content

Geometry

This page is about the Geometry namespace available in PeyrSharp.Core.Maths. This namespace includes several classes to get and calculates various aspects of different shapes, like the area, perimeter, volume and more.

Compatibility

The namespace is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/circle.html b/docs/core/maths/geometry/circle.html index bbbbee1..0aa0578 100644 --- a/docs/core/maths/geometry/circle.html +++ b/docs/core/maths/geometry/circle.html @@ -5,43 +5,44 @@ Circle | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Circle

This page is about the Circle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Circle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Circle(radius)

Definition

Initializes a Circle class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the circle.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Circle

This page is about the Circle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Circle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Circle(radius)

Definition

Initializes a Circle class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the circle.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10); // Creates a circle with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
+Circle circle = new(10); // Creates a circle with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10); // Creates a circle with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Circle circle = new(10); // Creates a circle with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var area = circle.Area;
 // area = 314.1592653589793
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var area = circle.Area;
-// area = 314.1592653589793

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 314.1592653589793

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the circle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var perimeter = circle.Perimeter;
 // perimeter = 62.83185307179586
using PeyrSharp.Core.Maths.Geometry;
 
-Circle circle = new(10);
+Circle circle = new(10);
 
 var perimeter = circle.Perimeter;
-// perimeter = 62.83185307179586

Released under the MIT License.

- +// perimeter = 62.83185307179586

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/cone.html b/docs/core/maths/geometry/cone.html index 8e3aa73..3307b76 100644 --- a/docs/core/maths/geometry/cone.html +++ b/docs/core/maths/geometry/cone.html @@ -5,53 +5,54 @@ Cone | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Cone

This page is about the Cone class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cone class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cone(radius, height)

Definition

Initializes a Cone class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cone.
doubleheightThe height of the cone.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Cone

This page is about the Cone class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cone class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cone(radius, height)

Definition

Initializes a Cone class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cone.
doubleheightThe height of the cone.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20
using PeyrSharp.Core.Maths.Geometry;
+Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cone. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cone cone = new(10, 20); // Creates a cone with a radius of 10, and a height of 20

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cone. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20);
+Cone cone = new(10, 20);
 
 var volume = cone.Volume;
 // volume = 2094.3951023931954
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(10, 20);
+Cone cone = new(10, 20);
 
 var volume = cone.Volume;
-// volume = 2094.3951023931954

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 2094.3951023931954

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(15, 20);
+Cone cone = new(15, 20);
 
 var radius = cone.Radius;
 // radius = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Cone cone = new(15, 20);
+Cone cone = new(15, 20);
 
 var radius = cone.Radius;
-// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cone, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Circle cone = new(10, 40);
+Circle cone = new(10, 40);
 
 var height = cone.Height;
 // height = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Circle cone = new(10, 40);
+Circle cone = new(10, 40);
 
 var height = cone.Height;
-// height = 40

Released under the MIT License.

- +// height = 40

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/cube.html b/docs/core/maths/geometry/cube.html index 18917fb..356425b 100644 --- a/docs/core/maths/geometry/cube.html +++ b/docs/core/maths/geometry/cube.html @@ -5,97 +5,98 @@ Cube | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Cube

This page is about the Cube class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cube class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cube(side)

Definition

Initializes a Cube class from the length of the side of the cube.

Arguments

TypeNameMeaning
doublesideThe length of the side of the cube.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Cube

This page is about the Cube class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cube class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cube(side)

Definition

Initializes a Cube class from the length of the side of the cube.

Arguments

TypeNameMeaning
doublesideThe length of the side of the cube.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10); // Creates a 10x10x10 cube
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10); // Creates a 10x10x10 cube
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10); // Creates a 10x10x10 cube

Cube(width, length, height)

Definition

Initializes a Cube class from the width, the length and the height of the cuboidal.

Arguments

TypeNameMeaning
doublewidthThe width of the cuboidal.
doublelengthThe length of the cuboidal.
doubleheightThe height of the cuboidal.

WARNING

If width, length or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10); // Creates a 10x10x10 cube

Cube(width, length, height)

Definition

Initializes a Cube class from the width, the length and the height of the cuboidal.

Arguments

TypeNameMeaning
doublewidthThe width of the cuboidal.
doublelengthThe length of the cuboidal.
doubleheightThe height of the cuboidal.

WARNING

If width, length or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cube cube = new(10, 20, 10); // Creates a 10x20x10 cuboidal

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var area = cube.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var area = cube.Area;
-// area = 100

Edge

Definition

c#
public double Edge { get; }
public double Edge { get; }

The Edge property is a double which returns the edge of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Edge

Definition

c#
public double Edge { get; }
public double Edge { get; }

The Edge property is a double which returns the edge of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var edge = cube.Edge;
 // edge = 7.0710678118654755
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var edge = cube.Edge;
-// edge = 7.0710678118654755

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// edge = 7.0710678118654755

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var length = cube.Length;
 // length = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var length = cube.Length;
-// length = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var height = cube.Height;
 // height = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var height = cube.Height;
-// height = 10

Side

Definition

c#
public double? Side { get; init; }
public double? Side { get; init; }

The Side property is a double? which returns the length of the side of the cube. You can only get this property.

WARNING

This property can be null if not initialized with Cube(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// height = 10

Side

Definition

c#
public double? Side { get; init; }
public double? Side { get; init; }

The Side property is a double? which returns the length of the side of the cube. You can only get this property.

WARNING

This property can be null if not initialized with Cube(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var side = cube.Side ?? 0;
 // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var side = cube.Side ?? 0;
-// side = 10

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side = 10

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var volume = cube.Volume; // 10^3
 // volume = 1000
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var volume = cube.Volume; // 10^3
-// volume = 1000

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 1000

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the cube. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var width = cube.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cube cube = new(10);
+Cube cube = new(10);
 
 var width = cube.Width;
-// width = 10

Released under the MIT License.

- +// width = 10

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/cylinder.html b/docs/core/maths/geometry/cylinder.html index fc7ece0..764fdcd 100644 --- a/docs/core/maths/geometry/cylinder.html +++ b/docs/core/maths/geometry/cylinder.html @@ -5,63 +5,64 @@ Cylinder | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Cylinder

This page is about the Cylinder class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cylinder class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cylinder(radius, height)

Definition

Initializes a Cylinder class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cylinder.
doubleheightThe height of the cylinder.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Cylinder

This page is about the Cylinder class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Cylinder class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Cylinder(radius, height)

Definition

Initializes a Cylinder class from a specific radius and height.

Arguments

TypeNameMeaning
doubleradiusThe radius of the cylinder.
doubleheightThe height of the cylinder.

WARNING

If radius or height ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10
using PeyrSharp.Core.Maths.Geometry;
+Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Cylinder cylinder = new(20, 10); // Creates a cylinder with a radius of 20, and a height of 10

Properties

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var volume = cylinder.Volume;
 // volume = 6283.185307179587
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var volume = cylinder.Volume;
-// volume = 6283.185307179587

BaseArea

Definition

c#
public double BaseArea { get; }
public double BaseArea { get; }

The BaseArea property is a double which returns the area of the circle, which is the base of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 6283.185307179587

BaseArea

Definition

c#
public double BaseArea { get; }
public double BaseArea { get; }

The BaseArea property is a double which returns the area of the circle, which is the base of the cylinder. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var baseArea = cylinder.BaseArea;
 // baseArea = 314.1592653589793
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 20);
+Cylinder cylinder = new(10, 20);
 
 var baseArea = cylinder.BaseArea;
-// baseArea = 314.1592653589793

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// baseArea = 314.1592653589793

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(15, 20);
+Cylinder cylinder = new(15, 20);
 
 var radius = cylinder.Radius;
 // radius = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(15, 20);
+Cylinder cylinder = new(15, 20);
 
 var radius = cylinder.Radius;
-// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// radius = 15

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the cylinder, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 40);
+Cylinder cylinder = new(10, 40);
 
 var height = cylinder.Height;
 // height = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Cylinder cylinder = new(10, 40);
+Cylinder cylinder = new(10, 40);
 
 var height = cylinder.Height;
-// height = 40

Released under the MIT License.

- +// height = 40

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/diamond.html b/docs/core/maths/geometry/diamond.html index b9f55e0..5abcfeb 100644 --- a/docs/core/maths/geometry/diamond.html +++ b/docs/core/maths/geometry/diamond.html @@ -5,69 +5,70 @@ Diamond | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Diamond

This page is about the Diamond class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Diamond class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Diamond(side)

Definition

Initializes a Diamond class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Diamond

This page is about the Diamond class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Diamond class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Diamond(side)

Definition

Initializes a Diamond class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.

Diamond(diagonal1, diagonal2)

Definition

Initializes a Diamond class from the length of its diagonals.

Arguments

TypeNameMeaning
doublediagonal1The length of the first diagonal.
doublediagonal2The side of the second diagonal.

WARNING

If diagonal1 or diagonal2 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5); // Creates a diamond where all the sides equals to 5.

Diamond(diagonal1, diagonal2)

Definition

Initializes a Diamond class from the length of its diagonals.

Arguments

TypeNameMeaning
doublediagonal1The length of the first diagonal.
doublediagonal2The side of the second diagonal.

WARNING

If diagonal1 or diagonal2 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 // Creates a diamond where the first diagonal is equal to 5, and the second one is equal to 10.
-Diamond diamond = new(5, 10);
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5, 10);
using PeyrSharp.Core.Maths.Geometry;
 
 // Creates a diamond where the first diagonal is equal to 5, and the second one is equal to 10.
-Diamond diamond = new(5, 10);

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(diagonal1, diagonal2).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Diamond diamond = new(5, 10);

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(diagonal1, diagonal2).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5, 10);
+Diamond diamond = new(5, 10);
 
 var area = diamond.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(5, 10);
+Diamond diamond = new(5, 10);
 
 var area = diamond.Area;
-// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the diamond. You can only get this property.

WARNING

This property can be null or can return 0 if not initialized with Diamond(side).

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var perimeter = diamond.Perimeter;
 // perimeter = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var perimeter = diamond.Perimeter;
-// perimeter = 40

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of sides of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 40

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of sides of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var side = diamond.Side;
 // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10);
+Diamond diamond = new(10);
 
 var side = diamond.Side;
-// side = 10

Diagonals

Definition

c#
public double[] Diagonals { get; init; }
public double[] Diagonals { get; init; }

The Side property is a double[] array which returns the diagonals of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side = 10

Diagonals

Definition

c#
public double[] Diagonals { get; init; }
public double[] Diagonals { get; init; }

The Side property is a double[] array which returns the diagonals of the diamond, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10, 14);
+Diamond diamond = new(10, 14);
 
 var side = diamond.Diagonals;
 // side = { 10, 14 }
using PeyrSharp.Core.Maths.Geometry;
 
-Diamond diamond = new(10, 14);
+Diamond diamond = new(10, 14);
 
 var side = diamond.Diagonals;
-// side = { 10, 14 }

Released under the MIT License.

- +// side = { 10, 14 }

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/hexagon.html b/docs/core/maths/geometry/hexagon.html index f2173e4..6d50a94 100644 --- a/docs/core/maths/geometry/hexagon.html +++ b/docs/core/maths/geometry/hexagon.html @@ -5,51 +5,52 @@ Hexagon | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Hexagon

This page is about the Hexagon class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Hexagon class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Hexagon(side)

Definition

Initializes a Hexagon class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side of the hexagon.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Hexagon

This page is about the Hexagon class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Hexagon class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Hexagon(side)

Definition

Initializes a Hexagon class from the length of its side.

Arguments

TypeNameMeaning
doublesideThe length of the side of the hexagon.

WARNING

If side ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12); // Creates a hexagon with a length of 12
using PeyrSharp.Core.Maths.Geometry;
+Hexagon hexagon = new(12); // Creates a hexagon with a length of 12
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12); // Creates a hexagon with a length of 12

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Hexagon hexagon = new(12); // Creates a hexagon with a length of 12

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var area = hexagon.Area;
 // area = 374.1229744348775
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var area = hexagon.Area;
-// area = 374.1229744348775

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 374.1229744348775

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the hexagon. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var perimeter = hexagon.Perimeter;
 // perimeter = 72
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(12);
+Hexagon hexagon = new(12);
 
 var perimeter = hexagon.Perimeter;
-// perimeter = 72

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of the side of the hexagon. You can only get this property

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 72

Side

Definition

c#
public double Side { get; init; }
public double Side { get; init; }

The Side property is a double which returns the length of the side of the hexagon. You can only get this property

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(10);
+Hexagon hexagon = new(10);
 
 var side = hexagon.Side; // side = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Hexagon hexagon = new(10);
+Hexagon hexagon = new(10);
 
-var side = hexagon.Side; // side = 10

Released under the MIT License.

- +var side = hexagon.Side; // side = 10

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/pyramid.html b/docs/core/maths/geometry/pyramid.html index fd7cef7..86ce776 100644 --- a/docs/core/maths/geometry/pyramid.html +++ b/docs/core/maths/geometry/pyramid.html @@ -5,22 +5,23 @@ Pyramid | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Pyramid

This page is about the Pyramid class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors, methods and properties.

Compatibility

The Pyramid class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Pyramid(width, length, height)

Definition

Initializes a Pyramid class from a specific width, length, and height.

Arguments

TypeNameMeaning
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.
doubleheightThe height of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Pyramid

This page is about the Pyramid class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors, methods and properties.

Compatibility

The Pyramid class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Pyramid(width, length, height)

Definition

Initializes a Pyramid class from a specific width, length, and height.

Arguments

TypeNameMeaning
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.
doubleheightThe height of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15

Methods

FromVolumeAndSize(volume, width, length)

Definition

Initializes a Pyramid class from a specific volume, width, and length.

Arguments

TypeNameMeaning
doublevolumeThe volume of the pyramid.
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = new(12, 10, 15); // Creates a pyramid with a width of 12, a length of 10, and a height of 15

Methods

FromVolumeAndSize(volume, width, length)

Definition

Initializes a Pyramid class from a specific volume, width, and length.

Arguments

TypeNameMeaning
doublevolumeThe volume of the pyramid.
doublewidthThe width of the pyramid.
doublelengthThe length of the pyramid.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);
using PeyrSharp.Core.Maths.Geometry;
 
@@ -32,78 +33,78 @@
 
 Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);

Properties

AreaBase

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The AreaBase property is a double which returns the area of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Pyramid pyramid = Pyramid.FromVolumeAndSize(100, 10, 10);

Properties

AreaBase

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The AreaBase property is a double which returns the area of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var area = pyramid.AreaBase;
 // area = 120
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var area = pyramid.AreaBase;
-// area = 120

Volume

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The Volume property is a double which returns the volume of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 120

Volume

Definition

c#
public double AreaBase { get; }
public double AreaBase { get; }

The Volume property is a double which returns the volume of the pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var volume = pyramid.Volume;
 // volume = 600
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var volume = pyramid.Volume;
-// volume = 600

LengthBase

Definition

c#
public double LengthBase { get; }
public double LengthBase { get; }

The LengthBase property is a double which returns the length of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 600

LengthBase

Definition

c#
public double LengthBase { get; }
public double LengthBase { get; }

The LengthBase property is a double which returns the length of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var length = pyramid.LengthBase;
 // length = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var length = pyramid.LengthBase;
-// length = 10

WidthBase

Definition

c#
public double WidthBase { get; }
public double WidthBase { get; }

The WidthBase property is a double which returns the width of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 10

WidthBase

Definition

c#
public double WidthBase { get; }
public double WidthBase { get; }

The WidthBase property is a double which returns the width of the base of pyramid. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var width = pyramid.WidthBase;
 // width = 12
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(12, 10, 15);
+Pyramid pyramid = new(12, 10, 15);
 
 var width = pyramid.WidthBase;
-// width = 12

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 12

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var width = pyramid.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var width = pyramid.Width;
-// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var length = pyramid.Length;
 // length = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var length = pyramid.Length;
-// length = 20

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// length = 20

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the pyramid, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var height = pyramid.Height;
 // height = 30
using PeyrSharp.Core.Maths.Geometry;
 
-Pyramid pyramid = new(10, 20, 30);
+Pyramid pyramid = new(10, 20, 30);
 
 var height = pyramid.Height;
-// height = 30

Released under the MIT License.

- +// height = 30

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/rectangle.html b/docs/core/maths/geometry/rectangle.html index 21dd610..5eb04d1 100644 --- a/docs/core/maths/geometry/rectangle.html +++ b/docs/core/maths/geometry/rectangle.html @@ -5,73 +5,74 @@ Rectangle | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Rectangle

This page is about the Rectangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Rectangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Rectangle(width, length)

Definition

Initializes a Rectangle class from a specific length and width.

Arguments

TypeNameMeaning
doublewidthThe width of the rectangle.
doublelengthThe length of the rectangle.

WARNING

If width or length ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Rectangle

This page is about the Rectangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Rectangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Rectangle(width, length)

Definition

Initializes a Rectangle class from a specific length and width.

Arguments

TypeNameMeaning
doublewidthThe width of the rectangle.
doublelengthThe length of the rectangle.

WARNING

If width or length ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle
using PeyrSharp.Core.Maths.Geometry;
+Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Rectangle rectangle = new(10, 20); // Creates a 10x20 rectangle

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var area = rectangle.Area;
 // area = 150
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var area = rectangle.Area;
-// area = 150

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 150

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var perimeter = rectangle.Perimeter;
 // perimeter = 50
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var perimeter = rectangle.Perimeter;
-// perimeter = 50

Diagonal

Definition

c#
public double Diagonal { get; }
public double Diagonal { get; }

The Diagonal property is a double which returns the length of the diagonal of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 50

Diagonal

Definition

c#
public double Diagonal { get; }
public double Diagonal { get; }

The Diagonal property is a double which returns the length of the diagonal of the rectangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var diagonal = rectangle.Diagonal;
 // diagonal = 18.027756377319946
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 15);
+Rectangle rectangle = new(10, 15);
 
 var diagonal = rectangle.Diagonal;
-// diagonal = 18.027756377319946

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// diagonal = 18.027756377319946

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var width = rectangle.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var width = rectangle.Width;
-// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Length

Definition

c#
public double Length { get; init; }
public double Length { get; init; }

The Length property is a double which returns the length of the rectangle, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var length = rectangle.Length;
 // length = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Rectangle rectangle = new(10, 20);
+Rectangle rectangle = new(10, 20);
 
 var length = rectangle.Length;
-// length = 20

Released under the MIT License.

- +// length = 20

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/sphere.html b/docs/core/maths/geometry/sphere.html index e065e8b..3a5d360 100644 --- a/docs/core/maths/geometry/sphere.html +++ b/docs/core/maths/geometry/sphere.html @@ -5,53 +5,54 @@ Sphere | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Sphere

This page is about the Sphere class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Sphere class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Sphere(radius)

Definition

Initializes a Sphere class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the sphere.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Sphere

This page is about the Sphere class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Sphere class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Sphere(radius)

Definition

Initializes a Sphere class from a specific radius.

Arguments

TypeNameMeaning
doubleradiusThe radius of the sphere.

WARNING

If radius ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10); // Creates a sphere with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
+Sphere sphere = new(10); // Creates a sphere with a radius of 10
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10); // Creates a sphere with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Sphere sphere = new(10); // Creates a sphere with a radius of 10

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var area = sphere.Area;
 // area = 1256.6370614359173
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var area = sphere.Area;
-// area = 1256.6370614359173

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 1256.6370614359173

Volume

Definition

c#
public double Volume { get; }
public double Volume { get; }

The Volume property is a double which returns the volume of the sphere. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var volume = sphere.Volume;
 // volume = 2356.194490192345
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var volume = sphere.Volume;
-// volume = 2356.194490192345

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the sphere, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// volume = 2356.194490192345

Radius

Definition

c#
public double Radius { get; init; }
public double Radius { get; init; }

The Radius property is a double which returns the radius of the sphere, which was defined when initializing it. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var radius = sphere.Radius;
 // radius = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Sphere sphere = new(10);
+Sphere sphere = new(10);
 
 var radius = sphere.Radius;
-// radius = 10

Released under the MIT License.

- +// radius = 10

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/geometry/triangle.html b/docs/core/maths/geometry/triangle.html index 53bab97..f0a444a 100644 --- a/docs/core/maths/geometry/triangle.html +++ b/docs/core/maths/geometry/triangle.html @@ -5,129 +5,130 @@ Triangle | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Triangle

This page is about the Triangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Triangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Triangle(side1, side2, side3)

Definition

Initializes a Triangle class from the length of its sides.

Arguments

TypeNameMeaning
doubleside1The length of the first side of the triangle.
doubleside2The length of the second side of the triangle.
doubleside3The length of the third side of the triangle.

WARNING

If side1, side2, or side3 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+    
Skip to content

Triangle

This page is about the Triangle class available in PeyrSharp.Core.Maths.Geometry. You can find here all of its constructors and properties.

Compatibility

The Triangle class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Constructors

Triangle(side1, side2, side3)

Definition

Initializes a Triangle class from the length of its sides.

Arguments

TypeNameMeaning
doubleside1The length of the first side of the triangle.
doubleside2The length of the second side of the triangle.
doubleside3The length of the third side of the triangle.

WARNING

If side1, side2, or side3 ≤ 0, a DivideByZeroException will be thrown.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 10); // Creates a triangle
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20, 10); // Creates a triangle
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 10); // Creates a triangle

Triangle(width, height)

Definition

Initializes a Triangle class from a width and height.

Arguments

TypeNameMeaning
doublewidthThe width of the triangle.
doubleheightThe height of the triangle.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20, 10); // Creates a triangle

Triangle(width, height)

Definition

Initializes a Triangle class from a width and height.

Arguments

TypeNameMeaning
doublewidthThe width of the triangle.
doubleheightThe height of the triangle.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+Triangle triangle = new(10, 20); // Creates a triangle with a width of 10 and a height of 20

Properties

Area

Definition

c#
public double Area { get; }
public double Area { get; }

The Area property is a double which returns the area of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var area = triangle.Area;
 // area = 100
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var area = triangle.Area;
-// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// area = 100

Perimeter

Definition

c#
public double Perimeter { get; }
public double Perimeter { get; }

The Perimeter property is a double which returns the perimeter of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 10, 20);
+Triangle triangle = new(10, 10, 20);
 
 var perimeter = triangle.Perimeter;
 // perimeter = 40
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 10, 20);
+Triangle triangle = new(10, 10, 20);
 
 var perimeter = triangle.Perimeter;
-// perimeter = 40

Hypotenuse

Definition

c#
public double Hypotenuse { get; }
public double Hypotenuse { get; }

The Hypotenuse property is a double which returns the hypotenuse of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// perimeter = 40

Hypotenuse

Definition

c#
public double Hypotenuse { get; }
public double Hypotenuse { get; }

The Hypotenuse property is a double which returns the hypotenuse of the triangle. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
 // Assuming the triangle is right
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var hypotenuse = triangle.Hypotenuse;
 // hypotenuse = 5
using PeyrSharp.Core.Maths.Geometry;
 
 // Assuming the triangle is right
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var hypotenuse = triangle.Hypotenuse;
-// hypotenuse = 5

IsRight

Definition

c#
public bool IsRight { get; }
public bool IsRight { get; }

The IsRight property is a bool which returns true if the triangle is right. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// hypotenuse = 5

IsRight

Definition

c#
public bool IsRight { get; }
public bool IsRight { get; }

The IsRight property is a bool which returns true if the triangle is right. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var right = triangle.IsRight;
 // right = true
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 5);
+Triangle triangle = new(3, 4, 5);
 
 var right = triangle.IsRight;
-// right = true

CanBeBuilt

Definition

c#
public bool CanBeBuilt { get; }
public bool CanBeBuilt { get; }

The CanBeBuilt property is a bool which returns true if the triangle can be built. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// right = true

CanBeBuilt

Definition

c#
public bool CanBeBuilt { get; }
public bool CanBeBuilt { get; }

The CanBeBuilt property is a bool which returns true if the triangle can be built. You can only get this property.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 10);
+Triangle triangle = new(3, 4, 10);
 
 var canBeBuilt = triangle.CanBeBuilt;
 // canBeBuilt = false
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(3, 4, 10);
+Triangle triangle = new(3, 4, 10);
 
 var canBeBuilt = triangle.CanBeBuilt;
-// canBeBuilt = false

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// canBeBuilt = false

Width

Definition

c#
public double Width { get; init; }
public double Width { get; init; }

The Width property is a double which returns the width of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var width = triangle.Width;
 // width = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var width = triangle.Width;
-// width = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// width = 10

Height

Definition

c#
public double Height { get; init; }
public double Height { get; init; }

The Height property is a double which returns the height of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(width, height) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var height = triangle.Height;
 // height = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20);
+Triangle triangle = new(10, 20);
 
 var height = triangle.Height;
-// height = 20

Side1

Definition

c#
public double Side1 { get; init; }
public double Side1 { get; init; }

The Side1 property is a double which returns the length of the first side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// height = 20

Side1

Definition

c#
public double Side1 { get; init; }
public double Side1 { get; init; }

The Side1 property is a double which returns the length of the first side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side1 = triangle.Side1;
 // side1 = 10
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side1 = triangle.Side1;
-// side1 = 10

Side2

Definition

c#
public double Side2 { get; init; }
public double Side2 { get; init; }

The Side2 property is a double which returns the length of the second side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side1 = 10

Side2

Definition

c#
public double Side2 { get; init; }
public double Side2 { get; init; }

The Side2 property is a double which returns the length of the second side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side2 = triangle.Side2;
 // side2 = 20
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side2 = triangle.Side2;
-// side2 = 20

Side3

Definition

c#
public double Side3 { get; init; }
public double Side3 { get; init; }

The Side3 property is a double which returns the length of the third side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
+// side2 = 20

Side3

Definition

c#
public double Side3 { get; init; }
public double Side3 { get; init; }

The Side3 property is a double which returns the length of the third side of the triangle, which was defined when initializing it. You can only get this property.

WARNING

This property can be equal to double.NaN if the class was not initialized with the Triangle(side1, side2, side3) constructor.

Usage

c#
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side3 = triangle.Side3;
 // side3 = 15
using PeyrSharp.Core.Maths.Geometry;
 
-Triangle triangle = new(10, 20, 15);
+Triangle triangle = new(10, 20, 15);
 
 var side3 = triangle.Side3;
-// side3 = 15

Released under the MIT License.

- +// side3 = 15

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/percentages.html b/docs/core/maths/percentages.html index a5356c8..e436c63 100644 --- a/docs/core/maths/percentages.html +++ b/docs/core/maths/percentages.html @@ -5,18 +5,19 @@ Percentages | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Percentages

This page is about the Percentages class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Percentages class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IncreaseBy(value, increaseRate)

Definition

Returns the value after an increase of x% as a double.

Arguments

TypeNameMeaning
doublevalueThe original value.
doubleincreaseRateThe increase percentage (as x/100d).

Usage

c#
using PeyrSharp.Core.Maths;
+    
Skip to content

Percentages

This page is about the Percentages class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Percentages class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

IncreaseBy(value, increaseRate)

Definition

Returns the value after an increase of x% as a double.

Arguments

TypeNameMeaning
doublevalueThe original value.
doubleincreaseRateThe increase percentage (as x/100d).

Usage

c#
using PeyrSharp.Core.Maths;
 
 double price = Percentages.IncreaseBy(100, 10/100d); // Increase the price by 10%
 // price = 110
using PeyrSharp.Core.Maths;
@@ -40,8 +41,8 @@
 // proportion = 50%
using PeyrSharp.Core.Maths;
 
 double proportion = Percentages.ProportionToPercentageString(0.5);
-// proportion = 50%

Released under the MIT License.

- +// proportion = 50%

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/proba.html b/docs/core/maths/proba.html index b21499d..99e3f1b 100644 --- a/docs/core/maths/proba.html +++ b/docs/core/maths/proba.html @@ -5,18 +5,19 @@ Proba | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Proba

This page is about the Proba class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Proba class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetRandomValue(probabilities)

Definition

Gets a random value based on the specified probabilities. Returns a randomly selected value.

Type parameters

TypeNameMeaning
T-The type of the values to select from.

Parameters

TypeNameMeaning
Dictionary<T, double>probabilitiesA dictionary containing the probability of getting each value.

Exceptions

  • ArgumentException: Thrown if the sum of probabilities is not equal to 1.
  • Exception: Thrown if an unexpected error occurs while selecting a random value.

Usage

c#
using PeyrSharp.Core.Maths;
+    
Skip to content

Proba

This page is about the Proba class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Proba class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetRandomValue(probabilities)

Definition

Gets a random value based on the specified probabilities. Returns a randomly selected value.

Type parameters

TypeNameMeaning
T-The type of the values to select from.

Parameters

TypeNameMeaning
Dictionary<T, double>probabilitiesA dictionary containing the probability of getting each value.

Exceptions

  • ArgumentException: Thrown if the sum of probabilities is not equal to 1.
  • Exception: Thrown if an unexpected error occurs while selecting a random value.

Usage

c#
using PeyrSharp.Core.Maths;
 
 Dictionary<string, double> probabilities = new Dictionary<string, double>
 {
@@ -32,8 +33,8 @@
     { "Tails", 0.5 }
 };
 
-string result = Proba.GetRandomValue(probabilities);

Released under the MIT License.

- +string result = Proba.GetRandomValue(probabilities);

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/stats.html b/docs/core/maths/stats.html index 15f132c..32ad88e 100644 --- a/docs/core/maths/stats.html +++ b/docs/core/maths/stats.html @@ -5,18 +5,19 @@ Stats | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Stats

This page is about the Stats class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Stats class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Mean(values)

Definition

Returns the mean of a dataset as a double.

Arguments

TypeNameMeaning
List<double>valuesThe dataset to calculate.

Exceptions

TypeMeaning
ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Core.Maths;
+    
Skip to content

Stats

This page is about the Stats class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Stats class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

Mean(values)

Definition

Returns the mean of a dataset as a double.

Arguments

TypeNameMeaning
List<double>valuesThe dataset to calculate.

Exceptions

TypeMeaning
ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Core.Maths;
 
 List<double> dataset = new List<double> { 1, 2, 3, 4, 5 };
 double mean = Stats.Mean(dataset); // Calculate the mean of the dataset
@@ -64,8 +65,8 @@
 
 List<double> dataset = new List<double> { 1, 2, 3, 4, 5 };
 double sd = Stats.StandardDeviation(dataset); // Calculate the standard deviation of the dataset
-// sd = 1.5811388300841898

Released under the MIT License.

- +// sd = 1.5811388300841898

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/maths/trigonometry.html b/docs/core/maths/trigonometry.html index aefcf62..9e27118 100644 --- a/docs/core/maths/trigonometry.html +++ b/docs/core/maths/trigonometry.html @@ -5,18 +5,19 @@ Trigonometry | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Trigonometry

This page is about the Trigonometry class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Trigonometry class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetOpposedSideFrom(triangleSide, angle, value)

Definition

Gets the length of the opposed side of a specific angle, from the length of either the hypotenuse or the adjacent side of the angle.

Arguments

TypeNameMeaning
TriangleSidestriangleSideThe side of the triangle.
doubleangleThe value of the angle.
doublevalueThe length of the chosen side.

WARNING

If triangleSide is equal to TriangleSides.Opposed, an Exception will be thrown.

Usage

c#
using PeyrSharp.Core.Maths;
+    
Skip to content

Trigonometry

This page is about the Trigonometry class available in PeyrSharp.Core.Maths. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Trigonometry class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GetOpposedSideFrom(triangleSide, angle, value)

Definition

Gets the length of the opposed side of a specific angle, from the length of either the hypotenuse or the adjacent side of the angle.

Arguments

TypeNameMeaning
TriangleSidestriangleSideThe side of the triangle.
doubleangleThe value of the angle.
doublevalueThe length of the chosen side.

WARNING

If triangleSide is equal to TriangleSides.Opposed, an Exception will be thrown.

Usage

c#
using PeyrSharp.Core.Maths;
 using PeyrSharp.Enums;
 
 double opposed = Trigonometry.GetOpposedSideFrom(TriangleSides.Adjacent, 1.05, 5);
@@ -40,8 +41,8 @@
 using PeyrSharp.Enums;
 
 double hypotenuse = Trigonometry.GetHypotenuseFrom(TriangleSides.Opposed, 1.05, 8.71);
-// hypotenuse = 10.041234478169912

Released under the MIT License.

- +// hypotenuse = 10.041234478169912

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/password.html b/docs/core/password.html index 110d6e2..c4f9494 100644 --- a/docs/core/password.html +++ b/docs/core/password.html @@ -5,56 +5,57 @@ Password | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Password

This page is about the Password class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Password class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GenerateAsync(length, chars, separator)

Definition

The GenerateAsync() method generates a password of a specific length, with specific characters asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using PeyrSharp.Core;
+    
Skip to content

Password

This page is about the Password class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Password class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

GenerateAsync(length, chars, separator)

Definition

The GenerateAsync() method generates a password of a specific length, with specific characters asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate a password with 10 characters
+    // Generate a password with 10 characters
     string password = await Password.GenerateAsync(10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }
using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate a password with 10 characters
+    // Generate a password with 10 characters
     string password = await Password.GenerateAsync(10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }

GenerateAsync(length, passwordPresets)

Definition

The GenerateAsync() method generates a password of a specific length, with a specific PasswordPresets asynchronously.

Arguments

TypeNameMeaning
intlengthThe length of the password.
PasswordPresetspasswordPresetsThe password preset used when generating the password

Usage

c#
using PeyrSharp.Core;
 using PeyrSharp.Enums;
 
 private async void Main()
 {
-    // Generate a password with 10 characters, using the Complex preset
+    // Generate a password with 10 characters, using the Complex preset
     string password = await Password.GenerateAsync(10, PasswordPresets.Complex);
 }
using PeyrSharp.Core;
 using PeyrSharp.Enums;
 
 private async void Main()
 {
-    // Generate a password with 10 characters, using the Complex preset
+    // Generate a password with 10 characters, using the Complex preset
     string password = await Password.GenerateAsync(10, PasswordPresets.Complex);
 }

GenerateAsync(amount, length, chars, separator)

Definition

The GenerateAsync() method generates a specific amount of passwords with specific lengths and characters asynchronously.

Arguments

TypeNameMeaning
intamountThe amount of passwords to generate.
intlengthThe length of the password.
stringcharactersThe characters that can be included in the password. Separated with a unique separator.
stringseparatorThe separator used to separate the specified characters.

Usage

c#
using System.Collections.Generic;
 using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters
+    // Generate 10 passwords with 10 characters
     List<string> passwords = await Password.GenerateAsync(10, 10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }
using System.Collections.Generic;
 using PeyrSharp.Core;
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters
+    // Generate 10 passwords with 10 characters
     List<string> passwords = await Password.GenerateAsync(10, 10, "a,b,c,d,e,f,1,2,3,4,5", ",");
 }

GenerateAsync(amount, length, passwordPresets)

Definition

The GenerateAsync() method generates a specific amount of passwords with specific lengths and PasswordPresets asynchronously.

Arguments

TypeNameMeaning
intamountThe amount of passwords to generate.
intlengthThe length of the password.
PasswordPresetspasswordPresetsThe password preset used when generating the password

Usage

c#
using System.Collections.Generic;
 using PeyrSharp.Core;
@@ -62,7 +63,7 @@
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters with the simple preset
+    // Generate 10 passwords with 10 characters with the simple preset
     List<string> passwords = await Password.GenerateAsync(10, 10, PasswordPresets.Simple);
 }
using System.Collections.Generic;
 using PeyrSharp.Core;
@@ -70,10 +71,10 @@
 
 private async void Main()
 {
-    // Generate 10 passwords with 10 characters with the simple preset
+    // Generate 10 passwords with 10 characters with the simple preset
     List<string> passwords = await Password.GenerateAsync(10, 10, PasswordPresets.Simple);
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/statusinfo.html b/docs/core/statusinfo.html index 97b8158..d6cf7f2 100644 --- a/docs/core/statusinfo.html +++ b/docs/core/statusinfo.html @@ -5,19 +5,20 @@ StatusInfo | PeyrSharp - + - + - - - + + + - + + -
Skip to content

StatusInfo

This page is about the StatusInfo class available in PeyrSharp.Core. You can find here all of its methods.

Compatibility

The StatusInfo class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Properties

StatusCode

Definition

c#
public int StatusCode { get; set; }
public int StatusCode { get; set; }

Gets or sets the status code that indicates the outcome of the request.

StatusDescription

Definition

c#
public string StatusDescription { get; set; }
public string StatusDescription { get; set; }

Gets or sets the status description that provides a human-readable message of the status code.

StatusType

Definition

c#
public StatusCodes StatusType { get; set; }
public StatusCodes StatusType { get; set; }

Gets or sets the status type that categorizes the status code into informational, success, redirection, client error, or server error. The StatusCodes is an enumeration representing the type of HTTP status codes that can be returned.

Released under the MIT License.

- +
Skip to content

StatusInfo

This page is about the StatusInfo class available in PeyrSharp.Core. You can find here all of its methods.

Compatibility

The StatusInfo class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Properties

StatusCode

Definition

c#
public int StatusCode { get; set; }
public int StatusCode { get; set; }

Gets or sets the status code that indicates the outcome of the request.

StatusDescription

Definition

c#
public string StatusDescription { get; set; }
public string StatusDescription { get; set; }

Gets or sets the status description that provides a human-readable message of the status code.

StatusType

Definition

c#
public StatusCodes StatusType { get; set; }
public StatusCodes StatusType { get; set; }

Gets or sets the status type that categorizes the status code into informational, success, redirection, client error, or server error. The StatusCodes is an enumeration representing the type of HTTP status codes that can be returned.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/core/xml-helper.html b/docs/core/xml-helper.html index 781678a..60306cf 100644 --- a/docs/core/xml-helper.html +++ b/docs/core/xml-helper.html @@ -5,18 +5,19 @@ XmlHelper | PeyrSharp - + - + - - - + + + - + + -
Skip to content

XmlHelper

This page is about the XmlHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The XmlHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromXml<T>(path)

Definition

The LoadFromXml() method loads an object of type T from an XML file at the specified path. If the file does not exist, a new instance of type T will be created and saved to the file using the SaveToXml() method before returning it.

Type Parameters

TypeDescription
TThe type of object to be saved.

Parameters

TypeNameMeaning
stringpathThe path of the XML file to load or create.

Returns

  • The loaded object of type T if the file exists and can be deserialized successfully.
  • A new instance of type T if the file does not exist and can be created and saved successfully.
  • null if an exception occurs during loading or saving.

Exceptions

  • Exception: If an error occurs during the loading or saving process.

Usage

csharp
using PeyrSharp.Core;
+    
Skip to content

XmlHelper

This page is about the XmlHelper class available in PeyrSharp.Core. You can find here all of its methods.

INFO

This class is static.

Compatibility

The XmlHelper class is part of the PeyrSharp.Core module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Core
Framework.NET 5.NET 6.NET 7
Core

Methods

LoadFromXml<T>(path)

Definition

The LoadFromXml() method loads an object of type T from an XML file at the specified path. If the file does not exist, a new instance of type T will be created and saved to the file using the SaveToXml() method before returning it.

Type Parameters

TypeDescription
TThe type of object to be saved.

Parameters

TypeNameMeaning
stringpathThe path of the XML file to load or create.

Returns

  • The loaded object of type T if the file exists and can be deserialized successfully.
  • A new instance of type T if the file does not exist and can be created and saved successfully.
  • null if an exception occurs during loading or saving.

Exceptions

  • Exception: If an error occurs during the loading or saving process.

Usage

csharp
using PeyrSharp.Core;
 using System;
 using System.IO;
 using System.Xml.Serialization;
@@ -25,17 +26,17 @@
 {
     string path = "path/to/xml/file.xml";
 
-    // Load an object from the XML file
+    // Load an object from the XML file
     MyObject obj = XmlHelper.LoadFromXml<MyObject>(path);
 
     if (obj != null)
     {
-        // Object loaded successfully
+        // Object loaded successfully
         Console.WriteLine("Object loaded: " + obj.ToString());
     }
     else
     {
-        // Error occurred during loading or saving
+        // Error occurred during loading or saving
         Console.WriteLine("Failed to load object.");
     }
 }
@@ -59,17 +60,17 @@
 {
     string path = "path/to/xml/file.xml";
 
-    // Load an object from the XML file
+    // Load an object from the XML file
     MyObject obj = XmlHelper.LoadFromXml<MyObject>(path);
 
     if (obj != null)
     {
-        // Object loaded successfully
+        // Object loaded successfully
         Console.WriteLine("Object loaded: " + obj.ToString());
     }
     else
     {
-        // Error occurred during loading or saving
+        // Error occurred during loading or saving
         Console.WriteLine("Failed to load object.");
     }
 }
@@ -99,7 +100,7 @@
     {
         MyClass myObject = new MyClass { MyProperty = 123 };
 
-        // Save the object to an XML file
+        // Save the object to an XML file
         bool success = XmlHelper.SaveToXml(myObject, "path/to/file.xml");
     }
 }
using PeyrSharp.Core;
@@ -117,11 +118,11 @@
     {
         MyClass myObject = new MyClass { MyProperty = 123 };
 
-        // Save the object to an XML file
+        // Save the object to an XML file
         bool success = XmlHelper.SaveToXml(myObject, "path/to/file.xml");
     }
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/enumerations.html b/docs/enumerations.html index ca63650..a4f5532 100644 --- a/docs/enumerations.html +++ b/docs/enumerations.html @@ -5,18 +5,19 @@ Enumerations | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Enumerations

This page is about the enumerations available in PeyrSharp.Enums. They are grouped by category.

Compatibility

Enumerations are part of the PeyrSharp.Enums module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Enums
Framework.NET 5.NET 6.NET 7
Enums

Converters

StorageUnits

Definition

The StorageUnits enumeration represents all possible numeric storage units. It contains the following values:

ValueNameMeaning
0ByteThe byte unit. (b)
1KilobyteThe kilobyte unit. (kb)
2MegabyteThe megabyte unit. (mb)
3GigabyteThe gigabyte unit. (gb)
4TerabyteThe terabyte unit. (tb)
5PetabyteThe petabyte unit. (pb)

Example

c#
public static double ToPetabyte(double value, StorageUnits unit)
+    
Skip to content

Enumerations

This page is about the enumerations available in PeyrSharp.Enums. They are grouped by category.

Compatibility

Enumerations are part of the PeyrSharp.Enums module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Enums
Framework.NET 5.NET 6.NET 7
Enums

Converters

StorageUnits

Definition

The StorageUnits enumeration represents all possible numeric storage units. It contains the following values:

ValueNameMeaning
0ByteThe byte unit. (b)
1KilobyteThe kilobyte unit. (kb)
2MegabyteThe megabyte unit. (mb)
3GigabyteThe gigabyte unit. (gb)
4TerabyteThe terabyte unit. (tb)
5PetabyteThe petabyte unit. (pb)

Example

c#
public static double ToPetabyte(double value, StorageUnits unit)
 {
     if (unit == StorageUnits.Terabyte)
     {
@@ -58,54 +59,54 @@
 
 Logger.Log(message, filePath, date, logLevel);

More info here about the example

OperatingSystems

Definition

The OperatingSystems enumerations represents all possible operating systems that a .NET program could run on. It contains several values:

ValueNameMeaning
0WindowsThe Microsoft Windows Operating System.
1macOSThe Apple macOS Operating System.
2LinuxA Linux-based Operating System.
3UnknownAn unknown Operating System.

Example

c#
if (Env.CurrentOs == OperatingSystems.Windows)
 {
-    //Do something if the OS is Windows
+    //Do something if the OS is Windows
 }
if (Env.CurrentOs == OperatingSystems.Windows)
 {
-    //Do something if the OS is Windows
+    //Do something if the OS is Windows
 }

SystemThemes

Definition

The SystemThemes enumerations represents all themes available on a Windows device. It contains several values:

ValueNameMeaning
0DarkThe user is using dark theme.
1LightThe user is using light theme.
2UnknownThe current theme is unknown.

Example

c#
if (GetCurrentTheme() == SystemThemes.Dark)
 {
     Console.WriteLine("You have dark theme enabled!");
 }
if (GetCurrentTheme() == SystemThemes.Dark)
 {
     Console.WriteLine("You have dark theme enabled!");
-}

WindowsVersion

Definition

The WindowsVersion enumerations represents all possible Windows versions supported by .NET, which means all version from Windows 7 to 11. It contains several values:

ValueNameMeaning
0Windows7The Windows 7 (NT 6.1) Operating System.
1Windows8The Windows 8 (NT 6.2) Operating System.
2Windows81The Windows 8.1 (NT 6.3) Operating System.
3Windows10The Windows 10 (NT 10.0) Operating System.
4Windows11The Windows 11 (NT 10.0, Build 22000+) Operating System.

Example

c#
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;

Geometry

TriangleSides

Definition

The TriangleSides enumeration represents the different sides of a triangle: hypotenuse, adjacent, and opposite. It contains these values:

ValueNameMeaning
0OpposedThe opposed side of a specific angle of a triangle.
1HypotenuseThe hypotenuse of a triangle.
2AdjacentThe adjacent side of a specific angle of a triangle.

Example

c#
// Get the adjacent side from the opposed side of a specific angle.
+}

WindowsVersion

Definition

The WindowsVersion enumerations represents all possible Windows versions supported by .NET, which means all version from Windows 7 to 11. It contains several values:

ValueNameMeaning
0Windows7The Windows 7 (NT 6.1) Operating System.
1Windows8The Windows 8 (NT 6.2) Operating System.
2Windows81The Windows 8.1 (NT 6.3) Operating System.
3Windows10The Windows 10 (NT 10.0) Operating System.
4Windows11The Windows 11 (NT 10.0, Build 22000+) Operating System.

Example

c#
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;
public bool DarkThemeAvailable => Env.CurrentWindowsVersion == WindowsVersion.Windows10 || Env.CurrentWindowsVersion == WindowsVersion.Windows11;

Geometry

TriangleSides

Definition

The TriangleSides enumeration represents the different sides of a triangle: hypotenuse, adjacent, and opposite. It contains these values:

ValueNameMeaning
0OpposedThe opposed side of a specific angle of a triangle.
1HypotenuseThe hypotenuse of a triangle.
2AdjacentThe adjacent side of a specific angle of a triangle.

Example

c#
// Get the adjacent side from the opposed side of a specific angle.
 Trigonometry.GetAdjacentSideFrom(TriangleSides.Opposed, 20);
// Get the adjacent side from the opposed side of a specific angle.
 Trigonometry.GetAdjacentSideFrom(TriangleSides.Opposed, 20);

Internet

StatusCodes

Definition

The StatusCodes enumeration represents the different kinds of status codes returned by a server after a request is made to it. The following status codes are available in this enumeration:

ValueNameMeaning
0InformationalInformational responses (100-199)
1SuccessSuccessful responses (200-299)
2RedirectionRedirection messages (300-399)
3ClientErrorClient error responses (400-499)
4ServerErrorServer error responses (500-599)

Example

c#
status = GetRequestStatus();
 
 switch (status)
 {
-    case StatusCodes.Informational:
+    case StatusCodes.Informational:
         Console.WriteLine("An information status code has been returned.");
         break;
-    case StatusCodes.Success:
+    case StatusCodes.Success:
         Console.WriteLine("An successful status code has been returned.");
         break;
-    case StatusCodes.Redirection:
+    case StatusCodes.Redirection:
         Console.WriteLine("An redirection status code has been returned.");
         break;
-    case StatusCodes.ClientError:
+    case StatusCodes.ClientError:
         Console.WriteLine("An client error status code has been returned.");
         break;
-    case StatusCodes.ServerError:
+    case StatusCodes.ServerError:
         Console.WriteLine("An server error status code has been returned.");
         break;
 }
status = GetRequestStatus();
 
 switch (status)
 {
-    case StatusCodes.Informational:
+    case StatusCodes.Informational:
         Console.WriteLine("An information status code has been returned.");
         break;
-    case StatusCodes.Success:
+    case StatusCodes.Success:
         Console.WriteLine("An successful status code has been returned.");
         break;
-    case StatusCodes.Redirection:
+    case StatusCodes.Redirection:
         Console.WriteLine("An redirection status code has been returned.");
         break;
-    case StatusCodes.ClientError:
+    case StatusCodes.ClientError:
         Console.WriteLine("An client error status code has been returned.");
         break;
-    case StatusCodes.ServerError:
+    case StatusCodes.ServerError:
         Console.WriteLine("An server error status code has been returned.");
         break;
 }

Password

PasswordPresets

Definition

The PasswordPresets enumeration represents all the of the presets available when generating a password using the Password class of PeyrSharp.Core. It has two values:

ValueNameMeaning
0SimpleThe Simple preset generates a password with simple characters.
1ComplexThe Complex preset generates a password with unusual, hard and complex characters.

Example

c#
private async void Main()
@@ -116,14 +117,14 @@
     string password = Password.GenerateAsync(10, PasswordPresets.Simple); // Generate a simple password
 }

PasswordStrength

Definition

The PasswordStrength enumeration represents different strength levels of a password; if it's a strong or weak password. It contains these values:

ValueNameMeaning
0LowThe password has a low strength; you shouldn't use it.
1MediumThe password has a medium strength; don't use it on important websites.
2GoodThe password has a good strength; you can safely use it.
3VeryGoodThe password has an excellent strength, meaning it will be hard for hackers to hack it.

Example

c#
internal async void Main()
 {
-    // Check if the generated password is complex
+    // Check if the generated password is complex
     if (Password.GetStrength(await Password.GenerateAsync(15, PasswordPresets.Complex)) == PasswordStrength.Medium)
     {
         Console.WriteLine("The password isn't complex enough.");
     }
 }
internal async void Main()
 {
-    // Check if the generated password is complex
+    // Check if the generated password is complex
     if (Password.GetStrength(await Password.GenerateAsync(15, PasswordPresets.Complex)) == PasswordStrength.Medium)
     {
         Console.WriteLine("The password isn't complex enough.");
@@ -136,7 +137,7 @@
     {
         private void button1_Click(object sender, EventArgs e)
         {
-            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
+            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
         }
     }
 }
using PeyrSharp.UiHelpers;
@@ -147,11 +148,11 @@
     {
         private void button1_Click(object sender, EventArgs e)
         {
-            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
+            WinFormsHelpers.CenterControl(button1, this, ControlAlignment.Horizontal);
         }
     }
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env.html b/docs/env.html index 64ebd82..acf7ad3 100644 --- a/docs/env.html +++ b/docs/env.html @@ -5,19 +5,20 @@ Env | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Env

This page is about the PeyrSharp.Env module.

Compatibility

The PeyrSharp.Env module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Classes

Released under the MIT License.

- +
Skip to content

Env

This page is about the PeyrSharp.Env module.

Compatibility

The PeyrSharp.Env module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env/filesys.html b/docs/env/filesys.html index fa65b1e..1418855 100644 --- a/docs/env/filesys.html +++ b/docs/env/filesys.html @@ -5,18 +5,19 @@ FileSys | PeyrSharp - + - + - - - + + + - + + -
Skip to content

FileSys

This page is about the FileSys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The FileSys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetAvailableSpace(drive, unit)

Definition

Gets the amount of available storage on a specified drive. It returns double.

Arguments

TypeNameMeaning
stringdriveThe drive letter or name to get the amount of available space.
StorageUnitsunitThe unit of the returned result.

Usage

c#
using PeyrSharp.Enums;
+    
Skip to content

FileSys

This page is about the FileSys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The FileSys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetAvailableSpace(drive, unit)

Definition

Gets the amount of available storage on a specified drive. It returns double.

Arguments

TypeNameMeaning
stringdriveThe drive letter or name to get the amount of available space.
StorageUnitsunitThe unit of the returned result.

Usage

c#
using PeyrSharp.Enums;
 using PeyrSharp.Env;
 
 double space = FileSys.GetAvailableSpace("C:/", StorageUnits.Gigabyte);
using PeyrSharp.Enums;
@@ -56,26 +57,26 @@
 
 public static async Task ExampleAsync()
 {
-    // Write some text in a file
+    // Write some text in a file
     string text = "Hello, World!";
     await File.WriteAllTextAsync("Hello.txt", text);
 
-    // Count the number of characters
+    // Count the number of characters
     int chars = await FileSys.CountFileCharactersAsync("Hello.txt");
 
-    // chars = 13
+    // chars = 13
 }
using PeyrSharp.Env;
 
 public static async Task ExampleAsync()
 {
-    // Write some text in a file
+    // Write some text in a file
     string text = "Hello, World!";
     await File.WriteAllTextAsync("Hello.txt", text);
 
-    // Count the number of characters
+    // Count the number of characters
     int chars = await FileSys.CountFileCharactersAsync("Hello.txt");
 
-    // chars = 13
+    // chars = 13
 }

CanWriteFile(filePath)

Definition

Checks if your program has the permission to write a file in a specific directory. It returns a bool; true if you can write/edit the specified directory.

Arguments

TypeNameMeaning
stringfilePathThe path to the directory.

Usage

c#
using PeyrSharp.Env;
 
 if (FileSys.CanWriteFile(@"C:\Windows"))
@@ -96,12 +97,12 @@
     Console.WriteLine("You do not have permission to edit in this folder.");
 }

IsDriveOpticalDrive(driveInfo)

Available in version 1.1 and higher.

Definition

Checks if the specified drive is an optical drive, such as CD-ROM or DVD. It returns a bool; true if the drive is an optical drive.

Arguments

TypeNameMeaning
stringdriveInfoThe drive to check.

Usage

c#
using PeyrSharp.Env;
 
-if (FileSys.IsOpticalDrive(new(@"E:\")))
+if (FileSys.IsOpticalDrive(new(@"E:\")))
 {
     Console.WriteLine("Drive E:/ is an optical drive")
 }
using PeyrSharp.Env;
 
-if (FileSys.IsOpticalDrive(new(@"E:\")))
+if (FileSys.IsOpticalDrive(new(@"E:\")))
 {
     Console.WriteLine("Drive E:/ is an optical drive")
 }

GetDriveStorageUnit(driveInfo)

Available in version 1.1 and higher.

Definition

Gets the appropriate StorageUnits to use depending of the total size of the drive. It returns a StorageUnits value.

Arguments

TypeNameMeaning
stringdriveInfoThe drive to get the unit of.

Usage

c#
using PeyrSharp.Env;
@@ -110,10 +111,10 @@
 
 string message = unit switch
 {
-    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
-    StorageUnits.Terabyte => "The drive unit is in terabytes",
-    StorageUnits.Petabyte => "The drive unit is in petabytes",
-    _ => "Unknown size unit"
+    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
+    StorageUnits.Terabyte => "The drive unit is in terabytes",
+    StorageUnits.Petabyte => "The drive unit is in petabytes",
+    _ => "Unknown size unit"
 }
 
 Console.WriteLine(message);
using PeyrSharp.Env;
@@ -122,17 +123,17 @@
 
 string message = unit switch
 {
-    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
-    StorageUnits.Terabyte => "The drive unit is in terabytes",
-    StorageUnits.Petabyte => "The drive unit is in petabytes",
-    _ => "Unknown size unit"
+    StorageUnits.Gigabyte => "The drive unit is in gigabytes",
+    StorageUnits.Terabyte => "The drive unit is in terabytes",
+    StorageUnits.Petabyte => "The drive unit is in petabytes",
+    _ => "Unknown size unit"
 }
 
-Console.WriteLine(message);

Properties

AppDataPath

Definition

c#
public static string AppDataPath { get; }
public static string AppDataPath { get; }

The AppDataPath property gets the %APPDATA% path. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+Console.WriteLine(message);

Properties

AppDataPath

Definition

c#
public static string AppDataPath { get; }
public static string AppDataPath { get; }

The AppDataPath property gets the %APPDATA% path. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string appdata = FileSys.AppDataPath;
using PeyrSharp.Env;
 
-string appdata = FileSys.AppDataPath;

CurrentAppDirectory

Available in version 1.1 and higher.

Definition

c#
public static string CurrentAppDirectory { get; }
public static string CurrentAppDirectory { get; }

The CurrentAppDirectory property gets the path where is located the executable file that is currently running. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+string appdata = FileSys.AppDataPath;

CurrentAppDirectory

Available in version 1.1 and higher.

Definition

c#
public static string CurrentAppDirectory { get; }
public static string CurrentAppDirectory { get; }

The CurrentAppDirectory property gets the path where is located the executable file that is currently running. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string dir = FileSys.CurrentAppDirectory;
using PeyrSharp.Env;
 
@@ -162,8 +163,8 @@
 
 string computerName = FileSys.ComputerName;
using PeyrSharp.Env;
 
-string computerName = FileSys.ComputerName;

Released under the MIT License.

- +string computerName = FileSys.ComputerName;

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env/logger.html b/docs/env/logger.html index 21a3b71..77bbdf3 100644 --- a/docs/env/logger.html +++ b/docs/env/logger.html @@ -5,18 +5,19 @@ Logger | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Logger

This page is about the Logger class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Logger class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

Log(message, filePath, dateTime)

Definition

The Log() method logs a specific message alongside a timestamp into a file. This method does not return a value (void).

INFO

You can call this method multiple times on the same file and it will append the message to it.

Arguments

TypeNameMeaning
stringmessageThe message or text that needs to be logged.
stringfilePathThe path where the file should be written.
DateTimedateTimeThe timestamp of the log, the time when the log was made.

Usage

c#
using PeyrSharp.Env;
+    
Skip to content

Logger

This page is about the Logger class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Logger class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

Log(message, filePath, dateTime)

Definition

The Log() method logs a specific message alongside a timestamp into a file. This method does not return a value (void).

INFO

You can call this method multiple times on the same file and it will append the message to it.

Arguments

TypeNameMeaning
stringmessageThe message or text that needs to be logged.
stringfilePathThe path where the file should be written.
DateTimedateTimeThe timestamp of the log, the time when the log was made.

Usage

c#
using PeyrSharp.Env;
 
 Logger.Log("Hello", @"C:\Logs\log1.txt", DateTime.Now)
 // The line above will generate a file with the following content:
@@ -52,8 +53,8 @@
 DateTime date = DateTime.Now;
 LogLevel logLevel = LogLevel.Warning;
 
-Logger.Log(message, filePath, date, logLevel);

Released under the MIT License.

- +Logger.Log(message, filePath, date, logLevel);

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env/system.html b/docs/env/system.html index 81d9878..87df17e 100644 --- a/docs/env/system.html +++ b/docs/env/system.html @@ -5,27 +5,28 @@ Sys | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Sys

This page is about the Sys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The Sys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

ExecuteAsAdmin(process)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
ProcessprocessThe process to launch as admin.

Usage

c#
using PeyrSharp.Env;
+    
Skip to content

Sys

This page is about the Sys class available in PeyrSharp.Env. You can find here all of its methods and properties.

INFO

This class is static.

Compatibility

The Sys class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env⚠️⚠️
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

ExecuteAsAdmin(process)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
ProcessprocessThe process to launch as admin.

Usage

c#
using PeyrSharp.Env;
 
 // Define a process
-Process p = new();
+Process p = new();
 p.StartInfo.FileName = "notepad.exe";
 
 Sys.ExecuteAsAdmin(p);
using PeyrSharp.Env;
 
 // Define a process
-Process p = new();
+Process p = new();
 p.StartInfo.FileName = "notepad.exe";
 
 Sys.ExecuteAsAdmin(p);

ExecuteAsAdmin(fileName)

Definition

Executes a program in administrator mode.

WARNING

This method only works on Windows.

Arguments

TypeNameMeaning
stringfileNameThe path to the program to launch in admin mode.

Usage

c#
using PeyrSharp.Env;
@@ -114,7 +115,7 @@
 if (Sys.CurrentWindowsVersion == WindowsVersion.Windows11)
 {
     Console.WriteLine("You are on Windows 11");
-}

IsDarkThemeSupported

Definition

c#
public static bool IsDarkThemeSupported { get; }
public static bool IsDarkThemeSupported { get; }

Gets if the current Windows version supports dark theme. Returns a bool value. You can only get this property.

WARNING

This property only works on Windows.

Usage

c#
using PeyrSharp.Env;
+}

IsDarkThemeSupported

Definition

c#
public static bool IsDarkThemeSupported { get; }
public static bool IsDarkThemeSupported { get; }

Gets if the current Windows version supports dark theme. Returns a bool value. You can only get this property.

WARNING

This property only works on Windows.

Usage

c#
using PeyrSharp.Env;
 
 if (Sys.IsDarkThemeSupported)
 {
@@ -168,7 +169,7 @@
 for (int i = 0; i < procs.Length; i++)
 {
     Console.WriteLine(procs[i].ProcessName); // Print the name of all running processes
-}

RunningProcessesNames

Definition

c#
public static string[] RunningProcessesNames { get; }
public static string[] RunningProcessesNames { get; }

Gets the names of the processes that are currently running. Returns a string[] array. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+}

RunningProcessesNames

Definition

c#
public static string[] RunningProcessesNames { get; }
public static string[] RunningProcessesNames { get; }

Gets the names of the processes that are currently running. Returns a string[] array. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 string[] procs = Sys.RunningProcessesNames;
 
@@ -182,12 +183,12 @@
 for (int i = 0; i < procs.Length; i++)
 {
     Console.WriteLine(procs[i]); // Print the name of all running processes
-}

UnixTime

Definition

c#
public static int Unix { get; }
public static int Unix { get; }

Gets the current UnixTime. Returns an int. You can only get this property.

Usage

c#
using PeyrSharp.Env;
+}

UnixTime

Definition

c#
public static int Unix { get; }
public static int Unix { get; }

Gets the current UnixTime. Returns an int. You can only get this property.

Usage

c#
using PeyrSharp.Env;
 
 int unixTime = Sys.UnixTime;
using PeyrSharp.Env;
 
-int unixTime = Sys.UnixTime;

Released under the MIT License.

- +int unixTime = Sys.UnixTime;

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env/update.html b/docs/env/update.html index bb300db..7b829eb 100644 --- a/docs/env/update.html +++ b/docs/env/update.html @@ -5,29 +5,30 @@ Update | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Update

This page is about the Update class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Update class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetLastVersionAsync(url)

Definition

Downloads the content of remote file as string. The remote file should contain the last version text. Do not provide the URL of an HTML page.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlLink of the file where the latest version is stored.

Usage

c#
using PeyrSharp.Env;
+    
Skip to content

Update

This page is about the Update class available in PeyrSharp.Env. You can find here all of its methods.

INFO

This class is static.

Compatibility

The Update class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Methods

GetLastVersionAsync(url)

Definition

Downloads the content of remote file as string. The remote file should contain the last version text. Do not provide the URL of an HTML page.

INFO

This method is asynchronous and awaitable.

Arguments

TypeNameMeaning
stringurlLink of the file where the latest version is stored.

Usage

c#
using PeyrSharp.Env;
 
 private async void Main()
 {
     string lastVersion = await Update.GetLastVersionAsync("https://raw.githubusercontent.com/DevyusCode/LeoCorp-Docs/master/Liens/Update%20System/LABS%20Experimental%20Console/version.txt");
-    // lastVersion would be equal to the content of this text files
+    // lastVersion would be equal to the content of this text files
 }
using PeyrSharp.Env;
 
 private async void Main()
 {
     string lastVersion = await Update.GetLastVersionAsync("https://raw.githubusercontent.com/DevyusCode/LeoCorp-Docs/master/Liens/Update%20System/LABS%20Experimental%20Console/version.txt");
-    // lastVersion would be equal to the content of this text files
+    // lastVersion would be equal to the content of this text files
 }

IsAvailable(currentVersion, remoteVersion)

Definition

Compares two versions. Returns a bool.

INFO

It is recommended to use this method with the GetLastVersionAsync() one.

Arguments

TypeNameMeaning
stringcurrentVersionThe current version of the app.
stringremoveVersionThe latest version, stored remotely.

Usage

c#
using PeyrSharp.Env;
 
 private async void Main()
@@ -48,8 +49,8 @@
     Console.WriteLine(Update.IsAvailable(current, last)
         ? "Updates are available."
         : "You are up-to-date.");
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/env/uwpapp.html b/docs/env/uwpapp.html index 7c2f260..c295747 100644 --- a/docs/env/uwpapp.html +++ b/docs/env/uwpapp.html @@ -5,18 +5,19 @@ UwpApp | PeyrSharp - + - + - - - + + + - + + -
Skip to content

UwpApp

This page is about the UwpApp class available in PeyrSharp.Env. It Represents a simplified version of a UWP app object.

Compatibility

The UwpApp class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Properties

Name

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The name of the UWP app.

Usage

c#
// Create a UwpApp object
+    
Skip to content

UwpApp

This page is about the UwpApp class available in PeyrSharp.Env. It Represents a simplified version of a UWP app object.

Compatibility

The UwpApp class is part of the PeyrSharp.Env module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.Env might not be available in all platforms.

Properties

Name

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The name of the UWP app.

Usage

c#
// Create a UwpApp object
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
@@ -24,7 +25,7 @@
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
-Console.WriteLine(uwpApp.Name); // Output: MyApp

AppID

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The App ID in the Package Family Name property.

Usage

c#
// Create a UwpApp object
+Console.WriteLine(uwpApp.Name); // Output: MyApp

AppID

Definition

c#
public static string Name { get; init; }
public static string Name { get; init; }

The App ID in the Package Family Name property.

Usage

c#
// Create a UwpApp object
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
@@ -32,8 +33,8 @@
 UwpApp uwpApp = new UwpApp("MyApp", "com.example.myapp");
 
 // Access the properties of the UwpApp object
-Console.WriteLine(uwpApp.AppID); // Output: com.example.myapp

Released under the MIT License.

- +Console.WriteLine(uwpApp.AppID); // Output: com.example.myapp

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/exceptions.html b/docs/exceptions.html index d2156d9..dbe7d87 100644 --- a/docs/exceptions.html +++ b/docs/exceptions.html @@ -5,18 +5,19 @@ Exceptions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Exceptions

This page is about the exceptions available in PeyrSharp.Exceptions. They are grouped by category.

Compatibility

Exceptions are part of the PeyrSharp.Exceptions module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Exceptions
Framework.NET 5.NET 6.NET 7
Exceptions

Converters

RGBInvalidValueException

Definition

The RGBInvalidValueException is an exception used in the Converters class when you provide an invalid value for a RGB color.

Usage

c#
using PeyrSharp.Exceptions;
+    
Skip to content

Exceptions

This page is about the exceptions available in PeyrSharp.Exceptions. They are grouped by category.

Compatibility

Exceptions are part of the PeyrSharp.Exceptions module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Exceptions
Framework.NET 5.NET 6.NET 7
Exceptions

Converters

RGBInvalidValueException

Definition

The RGBInvalidValueException is an exception used in the Converters class when you provide an invalid value for a RGB color.

Usage

c#
using PeyrSharp.Exceptions;
 
 throw new RGBInvalidValueException("Please provide correct RGB values.");
using PeyrSharp.Exceptions;
 
@@ -40,8 +41,8 @@
 if (length <= 0 || length > 32)
 {
     throw new InvalidGuidLengthException("The length of a Guid must be between 1 and 32.");
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/extensions.html b/docs/extensions.html index 14ff0dd..a301593 100644 --- a/docs/extensions.html +++ b/docs/extensions.html @@ -5,19 +5,20 @@ Extensions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Extensions

This page is about the PeyrSharp.Extensions module.

Compatibility

The PeyrSharp.Extensions module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Classes

Released under the MIT License.

- +
Skip to content

Extensions

This page is about the PeyrSharp.Extensions module.

Compatibility

The PeyrSharp.Extensions module is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/extensions/array.html b/docs/extensions/array.html index 33ab570..c012ecc 100644 --- a/docs/extensions/array.html +++ b/docs/extensions/array.html @@ -5,18 +5,19 @@ ArrayExtensions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

ArrayExtensions

This page is about the ArrayExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The ArrayExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Append(item)

Definition

The Append<T>() method adds an item to an existing array of any type. It returns an array of the chosen type (T[]).

Arguments

TypeNameMeaning
TitemThe item to append in the array.

Usage

c#
using PeyrSharp.Extensions;
+    
Skip to content

ArrayExtensions

This page is about the ArrayExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The ArrayExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Append(item)

Definition

The Append<T>() method adds an item to an existing array of any type. It returns an array of the chosen type (T[]).

Arguments

TypeNameMeaning
TitemThe item to append in the array.

Usage

c#
using PeyrSharp.Extensions;
 
 int[] numbers = { 1, 2, 3, 4 };
 int[] appendNumbers = numbers.Append(5);
@@ -56,8 +57,8 @@
 
 string[] array = { "a", "b", "c", "d" };
 string final = array.UnSplit(", "); // Concatenate the elements of the array with a comma and a space as a separator
-// final = "a, b, c, d"

Released under the MIT License.

- +// final = "a, b, c, d"

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/extensions/double.html b/docs/extensions/double.html index 8be0f4e..252876a 100644 --- a/docs/extensions/double.html +++ b/docs/extensions/double.html @@ -5,18 +5,19 @@ DoubleExtensions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

DoubleExtensions

This page is about the DoubleExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The DoubleExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Mean(values)

Definition

Calculates the mean (average) of a dataset. Returns the mean of the dataset as double.

Exceptions

TypeCondition
System.ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Extensions;
+    
Skip to content

DoubleExtensions

This page is about the DoubleExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The DoubleExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

Mean(values)

Definition

Calculates the mean (average) of a dataset. Returns the mean of the dataset as double.

Exceptions

TypeCondition
System.ArgumentExceptionThrown if the dataset is empty.

Usage

c#
using PeyrSharp.Extensions;
 
 double[] data = new double[] { 1.0, 2.0, 3.0, 4.0, 5.0 };
 double mean = data.Mean(); // 5
using PeyrSharp.Extensions;
@@ -116,8 +117,8 @@
 // petabyte = 1
using PeyrSharp.Core.Converters;
 
 double petabyte = 1000.ToPetabyte(StorageUnits.Terabyte);
-// petabyte = 1

Released under the MIT License.

- +// petabyte = 1

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/extensions/int.html b/docs/extensions/int.html index d949069..f69ae8a 100644 --- a/docs/extensions/int.html +++ b/docs/extensions/int.html @@ -5,18 +5,19 @@ IntExtensions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

IntExtensions

This page is about the IntExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The IntExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

GetDivisors()

Definition

Gets all divisors of a specific number. Returns an array of int[].

Arguments

This method does not have any arguments.

Usage

c#
using PeyrSharp.Extensions;
+    
Skip to content

IntExtensions

This page is about the IntExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The IntExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

GetDivisors()

Definition

Gets all divisors of a specific number. Returns an array of int[].

Arguments

This method does not have any arguments.

Usage

c#
using PeyrSharp.Extensions;
 
 int[] divs = 16.GetDivisors(); // { 1, 2, 4, 8, 16 }
using PeyrSharp.Extensions;
 
@@ -54,8 +55,8 @@
 
 double d = 16.ToDouble(); // 16.0d
using PeyrSharp.Extensions;
 
-double d = 16.ToDouble(); // 16.0d

Released under the MIT License.

- +double d = 16.ToDouble(); // 16.0d

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/extensions/string.html b/docs/extensions/string.html index 5096a58..471366d 100644 --- a/docs/extensions/string.html +++ b/docs/extensions/string.html @@ -5,18 +5,19 @@ StringExtensions | PeyrSharp - + - + - - - + + + - + + -
Skip to content

StringExtensions

This page is about the StringExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The StringExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

CountWords()

Definition

Counts the number of words in a string. Returns int.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Extensions;
+    
Skip to content

StringExtensions

This page is about the StringExtensions class available in PeyrSharp.Extensions. You can find here all of its extension methods.

INFO

This class is static.

Compatibility

The StringExtensions class is part of the PeyrSharp.Extensions module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Extensions
Framework.NET 5.NET 6.NET 7
Extensions

Methods

CountWords()

Definition

Counts the number of words in a string. Returns int.

Arguments

This method has no arguments.

Usage

c#
using PeyrSharp.Extensions;
 
 int numberOfWords = "Hello, this is a test sentence!".CountWords();
 // numberOfWords = 6
using PeyrSharp.Extensions;
@@ -75,11 +76,11 @@
 // lines = { "Hello", "World" }

ToUpperAt(str, r)

Definition

Returns a new string in which the characters in a specified range of the current string are converted to uppercase. Returns a string that is equivalent to the current string, but with the characters in the specified range converted to uppercase.

Arguments

TypeNameMeaning
stringstrThe string to modify.
RangerThe range of characters to convert to uppercase.

Usage

c#
using PeyrSharp.Extensions;
 
 string str = "aBcDeFgHiJ";
-string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
+string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
 // upper = "aBCDEFGhij"
using PeyrSharp.Extensions;
 
 string str = "aBcDeFgHiJ";
-string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
+string upper = str.ToUpperAt(2..6); // Convert the characters at indexes 2 to 6 (inclusive) to uppercase
 // upper = "aBCDEFGhij"

ToUpperAt(s)

Definition

Uppercases the first letter of a string. Returns a string with the first letter uppercased.

Arguments

TypeNameMeaning
stringsThe string to capitalize.

Usage

c#
using PeyrSharp.Extensions;
 
 string str = "test";
@@ -98,8 +99,8 @@
 // Output: "!dlrow ,olleH"
using PeyrSharp.Extensions;
 
 string reversed = "Hello, world!".Reverse();
-// Output: "!dlrow ,olleH"

Released under the MIT License.

- +// Output: "!dlrow ,olleH"

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/get-started.html b/docs/get-started.html index f17db30..7f11334 100644 --- a/docs/get-started.html +++ b/docs/get-started.html @@ -5,18 +5,19 @@ Get Started | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Get Started

Packages and modules

Before installing PeyrSharp, you may want to consider what features you will actually need to use in your project. Indeed, PeyrSharp is divided in multiple modules and packages.

If you think you need all the features of PeyrSharp, you can directly install the PeyrSharp NuGet package. However, you can also install the packages that you only need in your project. Here's a list of all the packages and their features:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • LogLevel
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platforms.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

INFO

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Installation methods

PeyrShall is available on NuGet, you can install it by running the following command:

.NET CLI

You can add PeyrSharp to your project the .NET CLI.

powershell
dotnet add package PeyrSharp --version 1.0.0.2211
dotnet add package PeyrSharp --version 1.0.0.2211

Package Manager

sh
NuGet\Install-Package PeyrSharp -Version 1.0.0.2211
NuGet\Install-Package PeyrSharp -Version 1.0.0.2211

Package Reference

You can specify in your project file that it is dependent on PeyrSharp.

xml
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />

Start coding

To call methods and classes included in PeyrSharp, you will need to add the corresponding using directives in your code file.

c#
using PeyrSharp.Core;
+    
Skip to content

Get Started

Packages and modules

Before installing PeyrSharp, you may want to consider what features you will actually need to use in your project. Indeed, PeyrSharp is divided in multiple modules and packages.

If you think you need all the features of PeyrSharp, you can directly install the PeyrSharp NuGet package. However, you can also install the packages that you only need in your project. Here's a list of all the packages and their features:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • LogLevel
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platforms.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

INFO

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Installation methods

PeyrShall is available on NuGet, you can install it by running the following command:

.NET CLI

You can add PeyrSharp to your project the .NET CLI.

powershell
dotnet add package PeyrSharp --version 1.0.0.2211
dotnet add package PeyrSharp --version 1.0.0.2211

Package Manager

sh
NuGet\Install-Package PeyrSharp -Version 1.0.0.2211
NuGet\Install-Package PeyrSharp -Version 1.0.0.2211

Package Reference

You can specify in your project file that it is dependent on PeyrSharp.

xml
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />
<PackageReference Include="PeyrSharp" Version="1.0.0.2211" />

Start coding

To call methods and classes included in PeyrSharp, you will need to add the corresponding using directives in your code file.

c#
using PeyrSharp.Core;
 using PeyrSharp.Env;
 using PeyrSharp.Enums;
 using PeyrSharp.Exceptions;
@@ -26,8 +27,8 @@
 using PeyrSharp.Enums;
 using PeyrSharp.Exceptions;
 using PeyrSharp.Extensions;
-using PeyrSharp.UiHelpers; // Windows only

For more information, you can check the reference

Released under the MIT License.

- +using PeyrSharp.UiHelpers; // Windows only

For more information, you can check the reference

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/hashmap.json b/docs/hashmap.json index 75defe9..04842f5 100644 --- a/docs/hashmap.json +++ b/docs/hashmap.json @@ -1 +1 @@ -{"core_converters_masses.md":"f6cfd9f7","core_converters_temperatures.md":"8a78c1a2","core_maths.md":"3a4734f3","core_converters_colors_hsv.md":"dbe36e17","core_maths_geometry_sphere.md":"5f6f998f","core_json-helper.md":"cc60e6c2","core_converters_colors_hex.md":"33132cc5","core_converters_energies.md":"d8e42ef0","core_maths_geometry.md":"a190352c","core.md":"b893fea5","core_maths_geometry_hexagon.md":"b4c1eb61","core_converters_volumes.md":"385daf16","core_guid.md":"d28b3014","core_guid-options.md":"5c1af4b5","core_converters_distances.md":"0f400c09","core_maths_stats.md":"edb41b6a","core_converters_time.md":"7e0c9e9e","core_internet.md":"b3af24f5","intro.md":"ea3bafe7","core_converters_angle.md":"8a16953e","env_update.md":"329bcc46","core_maths_geometry_cone.md":"2492cc46","core_converters_speeds.md":"c887147e","extensions.md":"32bd4caa","core_maths_proba.md":"0aecd6a4","core_maths_geometry_circle.md":"a8461aaf","core_converters.md":"d4088611","reference.md":"cbdb1199","extensions_array.md":"ed7cfa02","ui-helpers_screen.md":"c277ff31","core_converters_colors_rgb.md":"d296121e","index.md":"541d4bbc","core_maths_geometry_cylinder.md":"6b48f4e1","env_uwpapp.md":"64413305","core_maths_geometry_triangle.md":"70ac16cf","exceptions.md":"77841f50","core_maths_trigonometry.md":"db5e4666","get-started.md":"b142ffa1","env_logger.md":"9b14c21f","core_maths_algebra.md":"8645a716","env.md":"f2ba38d6","core_maths_geometry_rectangle.md":"113c3105","core_xml-helper.md":"bb579261","ui-helpers_winforms.md":"fe389c98","ui-helpers_wpf.md":"91ffecbf","core_statusinfo.md":"a97192f6","env_filesys.md":"c01b3b78","extensions_int.md":"adc0cb07","ui-helpers_windowinfo.md":"7554d1cd","core_maths_geometry_cube.md":"0f432795","core_crypt.md":"55e86926","core_maths_percentages.md":"a68b9e85","extensions_string.md":"5d08846d","core_maths_geometry_diamond.md":"aed6072d","ui-helpers_windowhelpers.md":"a1134c53","core_converters_storage.md":"10e30c28","enumerations.md":"95d6b4f5","core_password.md":"5b330426","extensions_double.md":"4449dcb3","ui-helpers.md":"f63f6257","core_maths_geometry_pyramid.md":"88f2f589","env_system.md":"8962a7fa"} +{"core_converters_colors_hsv.md":"87c948d5","core_converters_masses.md":"0757297d","core.md":"0cd8ab6b","core_converters_temperatures.md":"0c025285","core_converters.md":"6e95d28b","core_guid.md":"8f92cc06","core_converters_distances.md":"59b74097","env.md":"02d41078","core_converters_energies.md":"8474f431","core_statusinfo.md":"cc755624","core_maths.md":"99a88ac4","core_json-helper.md":"9829d0c8","core_crypt.md":"7f709c61","core_converters_volumes.md":"80d2f015","core_maths_geometry_diamond.md":"a2f1254e","core_converters_storage.md":"bb73b7e2","core_maths_geometry_rectangle.md":"76c0dc8e","core_converters_colors_rgb.md":"5b4b7e3c","core_converters_angle.md":"ba10dc1d","core_maths_geometry_pyramid.md":"eaa0444b","env_update.md":"fb27e287","core_converters_speeds.md":"c8acd99a","core_converters_colors_hex.md":"5e02203f","intro.md":"2fca83d6","core_maths_geometry.md":"3ef6ef8d","core_guid-options.md":"65435a01","core_maths_trigonometry.md":"8d208ceb","index.md":"f3ac5971","core_internet.md":"bfab286e","core_maths_algebra.md":"a1c878ba","core_password.md":"654b1f2d","core_maths_geometry_cone.md":"9020dc2e","enumerations.md":"40715fa7","core_maths_proba.md":"dc3a3e18","core_converters_time.md":"e28d170c","extensions_int.md":"2a945211","reference.md":"f58906a7","extensions_array.md":"0304d0e7","core_maths_percentages.md":"6d1752ea","get-started.md":"739f2a95","env_system.md":"93ba6399","exceptions.md":"aa08cd73","env_uwpapp.md":"f9b9170b","core_maths_geometry_cylinder.md":"72a7f1fa","core_maths_stats.md":"175d8fdb","ui-helpers.md":"347ffc12","ui-helpers_wpf.md":"e7c4b045","core_maths_geometry_triangle.md":"fee7e420","extensions.md":"3b8d9c51","core_maths_geometry_circle.md":"cf2c0e72","core_xml-helper.md":"69991328","env_filesys.md":"47cf1218","core_maths_geometry_cube.md":"94a9ab5b","core_maths_geometry_sphere.md":"5946b618","core_maths_geometry_hexagon.md":"492358ae","ui-helpers_screen.md":"cc96f02f","ui-helpers_windowhelpers.md":"b480d14d","extensions_string.md":"7ea7ef64","env_logger.md":"09964050","extensions_double.md":"954f4d4d","ui-helpers_windowinfo.md":"dd0da397","ui-helpers_winforms.md":"caf931a7"} diff --git a/docs/index.html b/docs/index.html index 31f6455..54130a4 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,19 +5,20 @@ PeyrSharp | A C# library designed to make developers' job easier. - + - + - - - + + + - + + -
Skip to content

PeyrSharp

Made for you.

A C# library designed to make developers' job easier.

PeyrSharp

Released under the MIT License.

- +
Skip to content

PeyrSharp

Made for you.

A C# library designed to make developers' job easier.

PeyrSharp

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/intro.html b/docs/intro.html index 6ea0bb5..c8fec12 100644 --- a/docs/intro.html +++ b/docs/intro.html @@ -5,19 +5,20 @@ Introduction | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Introduction

The roots

In March 2020, we published LeoCorpLibrary, which was also a C# library that contains useful methods. When we started the development of it, we didn't know where the project will go yet. Over the releases, we've added more and more methods and new features. However, the meaning and the purpose of LeoCorpLibrary was becoming less clear for everyone; it was becoming a mess. This is why we decided to rather not release v5, but instead, we decided to make a brand new .NET Library, PeyrSharp.

Our next product

PeyrSharp is a C# written library designed to make developers' life easier. We've all written code that we wish we hadn't. PeyrSharp is here to respond to this need; by implementing useful methods in various domains: Mathematics, Web/HTTP requests, unit converters, extensions, environment-related operations, and more!

Modules

PeyrSharp is divided in multiple packages:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platform.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

NOTE

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Released under the MIT License.

- +
Skip to content

Introduction

The roots

In March 2020, we published LeoCorpLibrary, which was also a C# library that contains useful methods. When we started the development of it, we didn't know where the project will go yet. Over the releases, we've added more and more methods and new features. However, the meaning and the purpose of LeoCorpLibrary was becoming less clear for everyone; it was becoming a mess. This is why we decided to rather not release v5, but instead, we decided to make a brand new .NET Library, PeyrSharp.

Our next product

PeyrSharp is a C# written library designed to make developers' life easier. We've all written code that we wish we hadn't. PeyrSharp is here to respond to this need; by implementing useful methods in various domains: Mathematics, Web/HTTP requests, unit converters, extensions, environment-related operations, and more!

Modules

PeyrSharp is divided in multiple packages:

PeyrSharp, the main package, that contains all of the followings:

PeyrSharp.Core, the basic methods and features of C#
  • Maths
  • Password
  • Guid
  • Converters
  • Internet
  • Crypt
PeyrSharp.Env, methods related to the file system and to the current execution environment.
  • FileSys
  • Logger
  • Update
  • System
PeyrSharp.Enums, all enumerations used by PeyrSharp
  • WindowsVersion
  • TimeUnits
  • SystemThemes
  • OperatingSystems
  • StorageUnits
  • ControlAlignment
  • PasswordPresets
  • PasswordStrength
PeyrSharp.Exceptions, all exceptions used by PeyrSharp
  • RGBInvalidValueException
  • HEXInvalidValueException
  • InvalidGuidLengthException
PeyrSharp.Extensions, extension methods, that extends basic types, such as string, int, double or arrays (T[]).
  • String
  • Int
  • Double
  • Array (T[])
PeyrSharp.UiHelpers, methods related to Windows Forms or to the Windows Presentation Framework (WPF).
  • WinForms
  • Screen
  • WPF

Compatibility

Platforms

Some modules of PeyrSharp are targeting features only available in specific operating systems. Thus, some packages aren't available on all platform.

Package/PlatformWindowsmacOSLinux + others
Core
Env⚠️⚠️
Enums
Exceptions
Extensions
UiHelpers

Caption:

  • ✅ Full Support
  • ⚠️ Partial Support
  • ❌ Unsupported platform

Frameworks

PeyrSharp is available in the following frameworks

  • .NET 5
  • .NET 6
  • .NET 7

NOTE

.NET Framework and .NET Core are not targeted by PeyrSharp, since they are no longer supported.

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/reference.html b/docs/reference.html index 0331a50..6dc8272 100644 --- a/docs/reference.html +++ b/docs/reference.html @@ -5,19 +5,20 @@ Reference | PeyrSharp - + - + - - - + + + - + + - - + + \ No newline at end of file diff --git a/docs/ui-helpers.html b/docs/ui-helpers.html index a98031f..3ca31d6 100644 --- a/docs/ui-helpers.html +++ b/docs/ui-helpers.html @@ -5,19 +5,20 @@ UiHelpers | PeyrSharp - + - + - - - + + + - + + -
Skip to content

UiHelpers

This page is about the exceptions available in PeyrSharp.UiHelpers. They are grouped by category.

Compatibility

UiHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Classes

Released under the MIT License.

- +
Skip to content

UiHelpers

This page is about the exceptions available in PeyrSharp.UiHelpers. They are grouped by category.

Compatibility

UiHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Classes

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/ui-helpers/screen.html b/docs/ui-helpers/screen.html index 16e58ba..a576ad0 100644 --- a/docs/ui-helpers/screen.html +++ b/docs/ui-helpers/screen.html @@ -5,18 +5,19 @@ Screen | PeyrSharp - + - + - - - + + + - + + -
Skip to content

Screen

This page is about the ScreenHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

ScreenHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetDpi(form)

Definition

Gets the DPI of the screen where the Windows Form is located. It returns a double value.

Arguments

TypeNameMeaning
FormformThe form to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
+    
Skip to content

Screen

This page is about the ScreenHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

ScreenHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetDpi(form)

Definition

Gets the DPI of the screen where the Windows Form is located. It returns a double value.

Arguments

TypeNameMeaning
FormformThe form to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
 using System.Windows.Forms;
 
@@ -24,7 +25,7 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -34,7 +35,7 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }

GetDpi(window)

Definition

Gets the DPI of the screen where the Window is located. It returns a double value.

Arguments

TypeNameMeaning
WindowwindowThe Window to get the DPI of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -44,7 +45,7 @@
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -54,7 +55,7 @@
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetDpi(this));
+        MessageBox.Show(ScreenHelpers.GetDpi(this));
     }
 }

GetScreenScaling(form)

Definition

Gets the scaling of the screen where the Windows Form is located. It returns a double value.

Possible values:

  • 100
  • 125
  • 150
  • 175
  • 200

Arguments

TypeNameMeaning
FormformThe form to get the scale of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -64,7 +65,7 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -74,7 +75,7 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }

GetScreenScaling(window)

Definition

Gets the scaling of the screen where the Window is located. It returns a double value.

Possible values:

  • 100
  • 125
  • 150
  • 175
  • 200

Arguments

TypeNameMeaning
WindowwindowThe window to get the scale of.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -84,7 +85,7 @@
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -94,10 +95,10 @@
 {
     private void HandleButton(object sender, RoutedEventArgs e)
     {
-        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
+        MessageBox.Show(ScreenHelpers.GetScreenScaling(this));
     }
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/ui-helpers/windowhelpers.html b/docs/ui-helpers/windowhelpers.html index eafb9c9..819736c 100644 --- a/docs/ui-helpers/windowhelpers.html +++ b/docs/ui-helpers/windowhelpers.html @@ -5,18 +5,19 @@ WindowHelpers | PeyrSharp - + - + - - - + + + - + + -
Skip to content

WindowHelpers

This page is about the WindowHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WindowHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetWindows()

Definition

Retrieves a list of currently visible windows.

Returns

A list of WindowInfo objects representing the visible windows.

Usage

c#
using PeyrSharp.UiHelpers;
+    
Skip to content

WindowHelpers

This page is about the WindowHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WindowHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

GetWindows()

Definition

Retrieves a list of currently visible windows.

Returns

A list of WindowInfo objects representing the visible windows.

Usage

c#
using PeyrSharp.UiHelpers;
 using System.Collections.Generic;
 
 public class MyWindowManager
@@ -40,8 +41,60 @@
             Console.WriteLine(window.Name);
         }
     }
-}

Released under the MIT License.

- +}

CloseWindow(windowInfo)

Definition

Closes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to close.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.CloseWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.CloseWindow(w)

MaximizeWindow(windowInfo)

Definition

Maximizes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to maximize.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MaximizeWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MaximizeWindow(w)

RestoreWindow(windowInfo)

Definition

Restores a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to restore.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.RestoreWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.RestoreWindow(w)

MinimizeWindow(windowInfo)

Definition

Minimizes a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to minimize.

Usage

c#
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MinimizeWindow(w)
using PeyrSharp.UiHelpers;
+using System.Linq;
+
+var ws = WindowHelpers.GetWindows();
+var w = ws.Where(x => x.ClassName == "Notepad").First();
+WindowHelpers.MinimizeWindow(w)

MoveWindow(windowInfo, x, y)

Definition

Moves a window to specified coordinates.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to move.
intxThe X-axis coordinates.
intyThe Y-axis coordinates.

Usage

c#
using PeyrSharp.UiHelpers;
+
+WindowHelpers.MoveWindow(w, 100, 200); // w is a WindowInfo object, see previous examples.
using PeyrSharp.UiHelpers;
+
+WindowHelpers.MoveWindow(w, 100, 200); // w is a WindowInfo object, see previous examples.

SetTopMost(windowInfo, isTopMost)

Definition

Sets the Topmost property of a window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to target.
boolisTopMostThe value of the TopMost property.

Note

The isTopMost parameter can be set to true if the window should always stay on top; false otherwise.

Usage

c#
using PeyrSharp.UiHelpers;
+WindowHelpers.SetTopMost(w, true)
using PeyrSharp.UiHelpers;
+WindowHelpers.SetTopMost(w, true)

GetWindowSize(windowInfo)

Definition

Gets the width and height of a window. It returns a tuple of integers representing the width and height of the window.

Arguments

TypeNameMeaning
WindowInfowindowInfoThe window to get the size of.

Exceptions

TypeDescription
InvalidOperationExceptionThrown if failed to retrieve window size.

Usage

c#
using PeyrSharp.UiHelpers;
+
+var size = WindowHelpers.GetWindowSize(w); // w is a WindowInfo object, see previous examples.
+Console.WriteLine($"Width: {size.Item1}, Height: {size.Item2}");
using PeyrSharp.UiHelpers;
+
+var size = WindowHelpers.GetWindowSize(w); // w is a WindowInfo object, see previous examples.
+Console.WriteLine($"Width: {size.Item1}, Height: {size.Item2}");

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/ui-helpers/windowinfo.html b/docs/ui-helpers/windowinfo.html index e495ea1..0c3c069 100644 --- a/docs/ui-helpers/windowinfo.html +++ b/docs/ui-helpers/windowinfo.html @@ -5,18 +5,19 @@ WindowInfo | PeyrSharp - + - + - - - + + + - + + -
Skip to content

WindowInfo

This page is about the WindowInfo class available in PeyrSharp.UiHelpers. It represents information about a window.

Compatibility

The WindowInfo class is part of the PeyrSharp.UiHelpers module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.UiHelpers might not be available in all platforms.

Properties

Handle

Definition

c#
public IntPtr Handle { get; set; }
public IntPtr Handle { get; set; }

Gets or sets the handle of the window.

Usage

c#
// Create a new WindowInfo object
+    
Skip to content

WindowInfo

This page is about the WindowInfo class available in PeyrSharp.UiHelpers. It represents information about a window.

Compatibility

The WindowInfo class is part of the PeyrSharp.UiHelpers module, and is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
Env
Framework.NET 5.NET 6.NET 7
Env

WARNING

Some methods, classes or features of PeyrSharp.UiHelpers might not be available in all platforms.

Properties

Handle

Definition

c#
public IntPtr Handle { get; set; }
public IntPtr Handle { get; set; }

Gets or sets the handle of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = windowInfos[0]; // Assuming you have used the GetWindows() method.
 
 // Get the handle of the window
@@ -24,7 +25,7 @@
 WindowInfo windowInfo = windowInfos[0]; // Assuming you have used the GetWindows() method.
 
 // Get the handle of the window
-Console.WriteLine(windowInfo.Handle); // Output: 123456

Name

Definition

c#
public string Name { get; set; }
public string Name { get; set; }

Gets or sets the name of the window.

Usage

c#
// Create a new WindowInfo object
+Console.WriteLine(windowInfo.Handle); // Output: 123456

Name

Definition

c#
public string Name { get; set; }
public string Name { get; set; }

Gets or sets the name of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = new WindowInfo();
 
 // Set the name of the window
@@ -38,7 +39,7 @@
 windowInfo.Name = "MyWindow";
 
 // Get the name of the window
-Console.WriteLine(windowInfo.Name); // Output: MyWindow

ClassName

Definition

c#
public string ClassName { get; set; }
public string ClassName { get; set; }

Gets or sets the class name of the window.

Usage

c#
// Create a new WindowInfo object
+Console.WriteLine(windowInfo.Name); // Output: MyWindow

ClassName

Definition

c#
public string ClassName { get; set; }
public string ClassName { get; set; }

Gets or sets the class name of the window.

Usage

c#
// Create a new WindowInfo object
 WindowInfo windowInfo = new WindowInfo();
 
 // Set the class name of the window
@@ -52,8 +53,8 @@
 windowInfo.ClassName = "MyWindowClass";
 
 // Get the class name of the window
-Console.WriteLine(windowInfo.ClassName); // Output: MyWindowClass

Released under the MIT License.

- +Console.WriteLine(windowInfo.ClassName); // Output: MyWindowClass

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/ui-helpers/winforms.html b/docs/ui-helpers/winforms.html index d7864cc..6b349c1 100644 --- a/docs/ui-helpers/winforms.html +++ b/docs/ui-helpers/winforms.html @@ -5,18 +5,19 @@ WinForms | PeyrSharp - + - + - - - + + + - + + -
Skip to content

WinForms

This page is about the WinFormsHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterControl(control, form)

Definition

Centers horizontally and vertically a Control on a Form.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.

Usage

c#
using PeyrSharp.UiHelpers;
+    
Skip to content

WinForms

This page is about the WinFormsHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterControl(control, form)

Definition

Centers horizontally and vertically a Control on a Form.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
 using System.Windows.Forms;
 
@@ -25,7 +26,7 @@
     private void HandleButton(object sender, EventArgs e)
     {
         Button button = (Button)sender;
-        WinFormsHelpers.CenterControl(button, this);
+        WinFormsHelpers.CenterControl(button, this);
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -36,7 +37,7 @@
     private void HandleButton(object sender, EventArgs e)
     {
         Button button = (Button)sender;
-        WinFormsHelpers.CenterControl(button, this);
+        WinFormsHelpers.CenterControl(button, this);
     }
 }

CenterControl(control, form, controlAlignment)

Definition

Centers a Control on a Form, with a specific ControlAlignment.

Arguments

TypeNameMeaning
ControlcontrolThe control to center.
FormformThe form where the control needs to be centered.
ControlAlignmentcontrolAlignmentThe alignment of the control.

Usage

c#
using PeyrSharp.Enums;
 using PeyrSharp.UiHelpers;
@@ -49,8 +50,8 @@
     {
         Button button = (Button)sender;
 
-        // Center the button vertically
-        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
+        // Center the button vertically
+        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
     }
 }
using PeyrSharp.Enums;
 using PeyrSharp.UiHelpers;
@@ -63,8 +64,8 @@
     {
         Button button = (Button)sender;
 
-        // Center the button vertically
-        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
+        // Center the button vertically
+        WinFormsHelpers.CenterControl(button, this, ControlAlignment.Vertical);
     }
 }

CenterForm(form)

Definition

Centers horizontally and vertically a Form on the screen.

Arguments

TypeNameMeaning
FormformThe form to center.

Usage

c#
using PeyrSharp.UiHelpers;
 using System;
@@ -74,8 +75,8 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        // Put the current form in the middle of the screen
-        WinFormsHelpers.CenterForm(this); 
+        // Put the current form in the middle of the screen
+        WinFormsHelpers.CenterForm(this); 
     }
 }
using PeyrSharp.UiHelpers;
 using System;
@@ -85,11 +86,11 @@
 {
     private void HandleButton(object sender, EventArgs e)
     {
-        // Put the current form in the middle of the screen
-        WinFormsHelpers.CenterForm(this); 
+        // Put the current form in the middle of the screen
+        WinFormsHelpers.CenterForm(this); 
     }
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/docs/ui-helpers/wpf.html b/docs/ui-helpers/wpf.html index 2daf851..1b79661 100644 --- a/docs/ui-helpers/wpf.html +++ b/docs/ui-helpers/wpf.html @@ -5,25 +5,26 @@ WPF | PeyrSharp - + - + - - - + + + - + + -
Skip to content

WPF

This page is about the WpfHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterWindow(window)

Definition

Centers a Window on the primary screen.

Arguments

TypeNameMeaning
WindowwindowThe Window to center.

Usage

c#
using PeyrSharp.UiHelpers;
+    
Skip to content

WPF

This page is about the WpfHelpers class available in PeyrSharp.UiHelpers. This page is about all of its methods.

Compatibility

WinFormsHelpers are part of the PeyrSharp.UiHelpers module, which is compatible with all of these frameworks and platforms:

Package/PlatformWindowsmacOSLinux + others
UiHelpers
Framework.NET 5.NET 6.NET 7
UiHelpers

Methods

CenterWindow(window)

Definition

Centers a Window on the primary screen.

Arguments

TypeNameMeaning
WindowwindowThe Window to center.

Usage

c#
using PeyrSharp.UiHelpers;
 
 Window window = new Window();
 WpfHelpers.CenterWindow(window); // Center the window on the primary screen
using PeyrSharp.UiHelpers;
 
 Window window = new Window();
-WpfHelpers.CenterWindow(window); // Center the window on the primary screen

Released under the MIT License.

- +WpfHelpers.CenterWindow(window); // Center the window on the primary screen

Released under the MIT License.

+ \ No newline at end of file