diff --git a/public/404.html b/public/404.html deleted file mode 100644 index 12e77eb..0000000 --- a/public/404.html +++ /dev/null @@ -1,27 +0,0 @@ -
-
- -

404

-
-

This page could not be found.

-
-
-
diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png deleted file mode 100644 index 7f0493c..0000000 Binary files a/public/android-chrome-192x192.png and /dev/null differ diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png deleted file mode 100644 index faea4c2..0000000 Binary files a/public/android-chrome-512x512.png and /dev/null differ diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png deleted file mode 100644 index eb281cb..0000000 Binary files a/public/apple-touch-icon.png and /dev/null differ diff --git a/public/categories/index.html b/public/categories/index.html deleted file mode 100644 index 8935eea..0000000 --- a/public/categories/index.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - - - - - - - - - Categories – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
-

Categories

- -
-
-
- -
-
-
- - - - - - - - - - - - diff --git a/public/categories/index.xml b/public/categories/index.xml deleted file mode 100644 index 4ae7331..0000000 --- a/public/categories/index.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - PacViewer Documentation – Categories - http://localhost:1313/categories/ - Recent content in Categories on PacViewer Documentation - Hugo -- gohugo.io - en - - - - - - - - - - - diff --git a/public/css/compiled/main.css b/public/css/compiled/main.css deleted file mode 100644 index 48aef6d..0000000 --- a/public/css/compiled/main.css +++ /dev/null @@ -1,3477 +0,0 @@ -/* -! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com -*//* -1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) -2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116) -*/ - -*, -::before, -::after { - box-sizing: border-box; /* 1 */ - border-width: 0; /* 2 */ - border-style: solid; /* 2 */ - border-color: #e5e7eb; /* 2 */ -} - -::before, -::after { - --tw-content: ''; -} - -/* -1. Use a consistent sensible line-height in all browsers. -2. Prevent adjustments of font size after orientation changes in iOS. -3. Use a more readable tab size. -4. Use the user's configured `sans` font-family by default. -5. Use the user's configured `sans` font-feature-settings by default. -6. Use the user's configured `sans` font-variation-settings by default. -*/ - -html { - line-height: 1.5; /* 1 */ - -webkit-text-size-adjust: 100%; /* 2 */ - -moz-tab-size: 4; /* 3 */ - -o-tab-size: 4; - tab-size: 4; /* 3 */ - font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */ - font-feature-settings: normal; /* 5 */ - font-variation-settings: normal; /* 6 */ -} - -/* -1. Remove the margin in all browsers. -2. Inherit line-height from `html` so users can set them as a class directly on the `html` element. -*/ - -body { - margin: 0; /* 1 */ - line-height: inherit; /* 2 */ -} - -/* -1. Add the correct height in Firefox. -2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655) -3. Ensure horizontal rules are visible by default. -*/ - -hr { - height: 0; /* 1 */ - color: inherit; /* 2 */ - border-top-width: 1px; /* 3 */ -} - -/* -Add the correct text decoration in Chrome, Edge, and Safari. -*/ - -abbr:where([title]) { - -webkit-text-decoration: underline dotted; - text-decoration: underline dotted; -} - -/* -Remove the default font size and weight for headings. -*/ - -h1, -h2, -h3, -h4, -h5, -h6 { - font-size: inherit; - font-weight: inherit; -} - -/* -Reset links to optimize for opt-in styling instead of opt-out. -*/ - -a { - color: inherit; - text-decoration: inherit; -} - -/* -Add the correct font weight in Edge and Safari. -*/ - -b, -strong { - font-weight: bolder; -} - -/* -1. Use the user's configured `mono` font family by default. -2. Correct the odd `em` font sizing in all browsers. -*/ - -code, -kbd, -samp, -pre { - font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */ - font-size: 1em; /* 2 */ -} - -/* -Add the correct font size in all browsers. -*/ - -small { - font-size: 80%; -} - -/* -Prevent `sub` and `sup` elements from affecting the line height in all browsers. -*/ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.5em; -} - -/* -1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297) -2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016) -3. Remove gaps between table borders by default. -*/ - -table { - text-indent: 0; /* 1 */ - border-color: inherit; /* 2 */ - border-collapse: collapse; /* 3 */ -} - -/* -1. Change the font styles in all browsers. -2. Remove the margin in Firefox and Safari. -3. Remove default padding in all browsers. -*/ - -button, -input, -optgroup, -select, -textarea { - font-family: inherit; /* 1 */ - font-feature-settings: inherit; /* 1 */ - font-variation-settings: inherit; /* 1 */ - font-size: 100%; /* 1 */ - font-weight: inherit; /* 1 */ - line-height: inherit; /* 1 */ - color: inherit; /* 1 */ - margin: 0; /* 2 */ - padding: 0; /* 3 */ -} - -/* -Remove the inheritance of text transform in Edge and Firefox. -*/ - -button, -select { - text-transform: none; -} - -/* -1. Correct the inability to style clickable types in iOS and Safari. -2. Remove default button styles. -*/ - -button, -[type='button'], -[type='reset'], -[type='submit'] { - -webkit-appearance: button; /* 1 */ - background-color: transparent; /* 2 */ - background-image: none; /* 2 */ -} - -/* -Use the modern Firefox focus style for all focusable elements. -*/ - -:-moz-focusring { - outline: auto; -} - -/* -Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737) -*/ - -:-moz-ui-invalid { - box-shadow: none; -} - -/* -Add the correct vertical alignment in Chrome and Firefox. -*/ - -progress { - vertical-align: baseline; -} - -/* -Correct the cursor style of increment and decrement buttons in Safari. -*/ - -::-webkit-inner-spin-button, -::-webkit-outer-spin-button { - height: auto; -} - -/* -1. Correct the odd appearance in Chrome and Safari. -2. Correct the outline style in Safari. -*/ - -[type='search'] { - -webkit-appearance: textfield; /* 1 */ - outline-offset: -2px; /* 2 */ -} - -/* -Remove the inner padding in Chrome and Safari on macOS. -*/ - -::-webkit-search-decoration { - -webkit-appearance: none; -} - -/* -1. Correct the inability to style clickable types in iOS and Safari. -2. Change font properties to `inherit` in Safari. -*/ - -::-webkit-file-upload-button { - -webkit-appearance: button; /* 1 */ - font: inherit; /* 2 */ -} - -/* -Add the correct display in Chrome and Safari. -*/ - -summary { - display: list-item; -} - -/* -Removes the default spacing and border for appropriate elements. -*/ - -blockquote, -dl, -dd, -h1, -h2, -h3, -h4, -h5, -h6, -hr, -figure, -p, -pre { - margin: 0; -} - -fieldset { - margin: 0; - padding: 0; -} - -legend { - padding: 0; -} - -ol, -ul, -menu { - list-style: none; - margin: 0; - padding: 0; -} - -/* -Reset default styling for dialogs. -*/ -dialog { - padding: 0; -} - -/* -Prevent resizing textareas horizontally by default. -*/ - -textarea { - resize: vertical; -} - -/* -1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300) -2. Set the default placeholder color to the user's configured gray 400 color. -*/ - -input::-moz-placeholder, textarea::-moz-placeholder { - opacity: 1; /* 1 */ - color: #9ca3af; /* 2 */ -} - -input::placeholder, -textarea::placeholder { - opacity: 1; /* 1 */ - color: #9ca3af; /* 2 */ -} - -/* -Set the default cursor for buttons. -*/ - -button, -[role="button"] { - cursor: pointer; -} - -/* -Make sure disabled buttons don't get the pointer cursor. -*/ -:disabled { - cursor: default; -} - -/* -1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14) -2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) - This can trigger a poorly considered lint error in some tools but is included by design. -*/ - -img, -svg, -video, -canvas, -audio, -iframe, -embed, -object { - display: block; /* 1 */ - vertical-align: middle; /* 2 */ -} - -/* -Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14) -*/ - -img, -video { - max-width: 100%; - height: auto; -} - -/* Make elements with the HTML hidden attribute stay hidden by default */ -[hidden] { - display: none; -} - -*, ::before, ::after { - --tw-border-spacing-x: 0; - --tw-border-spacing-y: 0; - --tw-translate-x: 0; - --tw-translate-y: 0; - --tw-rotate: 0; - --tw-skew-x: 0; - --tw-skew-y: 0; - --tw-scale-x: 1; - --tw-scale-y: 1; - --tw-pan-x: ; - --tw-pan-y: ; - --tw-pinch-zoom: ; - --tw-scroll-snap-strictness: proximity; - --tw-gradient-from-position: ; - --tw-gradient-via-position: ; - --tw-gradient-to-position: ; - --tw-ordinal: ; - --tw-slashed-zero: ; - --tw-numeric-figure: ; - --tw-numeric-spacing: ; - --tw-numeric-fraction: ; - --tw-ring-inset: ; - --tw-ring-offset-width: 0px; - --tw-ring-offset-color: #fff; - --tw-ring-color: rgb(59 130 246 / 0.5); - --tw-ring-offset-shadow: 0 0 #0000; - --tw-ring-shadow: 0 0 #0000; - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - --tw-blur: ; - --tw-brightness: ; - --tw-contrast: ; - --tw-grayscale: ; - --tw-hue-rotate: ; - --tw-invert: ; - --tw-saturate: ; - --tw-sepia: ; - --tw-drop-shadow: ; - --tw-backdrop-blur: ; - --tw-backdrop-brightness: ; - --tw-backdrop-contrast: ; - --tw-backdrop-grayscale: ; - --tw-backdrop-hue-rotate: ; - --tw-backdrop-invert: ; - --tw-backdrop-opacity: ; - --tw-backdrop-saturate: ; - --tw-backdrop-sepia: ; -} - -::backdrop { - --tw-border-spacing-x: 0; - --tw-border-spacing-y: 0; - --tw-translate-x: 0; - --tw-translate-y: 0; - --tw-rotate: 0; - --tw-skew-x: 0; - --tw-skew-y: 0; - --tw-scale-x: 1; - --tw-scale-y: 1; - --tw-pan-x: ; - --tw-pan-y: ; - --tw-pinch-zoom: ; - --tw-scroll-snap-strictness: proximity; - --tw-gradient-from-position: ; - --tw-gradient-via-position: ; - --tw-gradient-to-position: ; - --tw-ordinal: ; - --tw-slashed-zero: ; - --tw-numeric-figure: ; - --tw-numeric-spacing: ; - --tw-numeric-fraction: ; - --tw-ring-inset: ; - --tw-ring-offset-width: 0px; - --tw-ring-offset-color: #fff; - --tw-ring-color: rgb(59 130 246 / 0.5); - --tw-ring-offset-shadow: 0 0 #0000; - --tw-ring-shadow: 0 0 #0000; - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - --tw-blur: ; - --tw-brightness: ; - --tw-contrast: ; - --tw-grayscale: ; - --tw-hue-rotate: ; - --tw-invert: ; - --tw-saturate: ; - --tw-sepia: ; - --tw-drop-shadow: ; - --tw-backdrop-blur: ; - --tw-backdrop-brightness: ; - --tw-backdrop-contrast: ; - --tw-backdrop-grayscale: ; - --tw-backdrop-hue-rotate: ; - --tw-backdrop-invert: ; - --tw-backdrop-opacity: ; - --tw-backdrop-saturate: ; - --tw-backdrop-sepia: ; -} -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - white-space: nowrap; - border-width: 0; -} -.pointer-events-none { - pointer-events: none; -} -.fixed { - position: fixed; -} -.absolute { - position: absolute; -} -.relative { - position: relative; -} -.sticky { - position: sticky; -} -.inset-0 { - inset: 0px; -} -.inset-x-0 { - left: 0px; - right: 0px; -} -.inset-y-0 { - top: 0px; - bottom: 0px; -} -.bottom-0 { - bottom: 0px; -} -.left-\[24px\] { - left: 24px; -} -.left-\[36px\] { - left: 36px; -} -.right-0 { - right: 0px; -} -.top-0 { - top: 0px; -} -.top-16 { - top: 4rem; -} -.top-8 { - top: 2rem; -} -.top-\[40\%\] { - top: 40%; -} -.top-full { - top: 100%; -} -.z-10 { - z-index: 10; -} -.z-20 { - z-index: 20; -} -.z-\[-1\] { - z-index: -1; -} -.order-last { - order: 9999; -} -.m-\[11px\] { - margin: 11px; -} -.mx-1 { - margin-left: 0.25rem; - margin-right: 0.25rem; -} -.mx-2 { - margin-left: 0.5rem; - margin-right: 0.5rem; -} -.mx-4 { - margin-left: 1rem; - margin-right: 1rem; -} -.mx-auto { - margin-left: auto; - margin-right: auto; -} -.my-1 { - margin-top: 0.25rem; - margin-bottom: 0.25rem; -} -.my-1\.5 { - margin-top: 0.375rem; - margin-bottom: 0.375rem; -} -.my-2 { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} -.-mb-0 { - margin-bottom: -0px; -} -.-mb-0\.5 { - margin-bottom: -0.125rem; -} -.-ml-2 { - margin-left: -0.5rem; -} -.-mr-2 { - margin-right: -0.5rem; -} -.-mt-20 { - margin-top: -5rem; -} -.mb-10 { - margin-bottom: 2.5rem; -} -.mb-12 { - margin-bottom: 3rem; -} -.mb-16 { - margin-bottom: 4rem; -} -.mb-2 { - margin-bottom: 0.5rem; -} -.mb-4 { - margin-bottom: 1rem; -} -.mb-6 { - margin-bottom: 1.5rem; -} -.mb-8 { - margin-bottom: 2rem; -} -.ml-1 { - margin-left: 0.25rem; -} -.ml-4 { - margin-left: 1rem; -} -.mr-1 { - margin-right: 0.25rem; -} -.mr-2 { - margin-right: 0.5rem; -} -.mt-1 { - margin-top: 0.25rem; -} -.mt-1\.5 { - margin-top: 0.375rem; -} -.mt-12 { - margin-top: 3rem; -} -.mt-16 { - margin-top: 4rem; -} -.mt-2 { - margin-top: 0.5rem; -} -.mt-4 { - margin-top: 1rem; -} -.mt-5 { - margin-top: 1.25rem; -} -.mt-6 { - margin-top: 1.5rem; -} -.mt-8 { - margin-top: 2rem; -} -.line-clamp-3 { - overflow: hidden; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 3; -} -.block { - display: block; -} -.inline-block { - display: inline-block; -} -.inline { - display: inline; -} -.flex { - display: flex; -} -.inline-flex { - display: inline-flex; -} -.table { - display: table; -} -.grid { - display: grid; -} -.hidden { - display: none; -} -.aspect-auto { - aspect-ratio: auto; -} -.h-0 { - height: 0px; -} -.h-16 { - height: 4rem; -} -.h-2 { - height: 0.5rem; -} -.h-3 { - height: 0.75rem; -} -.h-3\.5 { - height: 0.875rem; -} -.h-4 { - height: 1rem; -} -.h-5 { - height: 1.25rem; -} -.h-7 { - height: 1.75rem; -} -.h-\[18px\] { - height: 18px; -} -.h-full { - height: 100%; -} -.max-h-64 { - max-height: 16rem; -} -.max-h-\[calc\(100vh-var\(--navbar-height\)-env\(safe-area-inset-bottom\)\)\] { - max-height: calc(100vh - var(--navbar-height) - env(safe-area-inset-bottom)); -} -.max-h-\[min\(calc\(50vh-11rem-env\(safe-area-inset-bottom\)\)\2c 400px\)\] { - max-height: min(calc(50vh - 11rem - env(safe-area-inset-bottom)),400px); -} -.min-h-\[100px\] { - min-height: 100px; -} -.min-h-\[calc\(100vh-var\(--navbar-height\)\)\] { - min-height: calc(100vh - var(--navbar-height)); -} -.w-2 { - width: 0.5rem; -} -.w-3 { - width: 0.75rem; -} -.w-3\.5 { - width: 0.875rem; -} -.w-4 { - width: 1rem; -} -.w-64 { - width: 16rem; -} -.w-\[110\%\] { - width: 110%; -} -.w-\[180\%\] { - width: 180%; -} -.w-full { - width: 100%; -} -.w-max { - width: -moz-max-content; - width: max-content; -} -.w-screen { - width: 100vw; -} -.min-w-0 { - min-width: 0px; -} -.min-w-\[18px\] { - min-width: 18px; -} -.min-w-\[24px\] { - min-width: 24px; -} -.min-w-full { - min-width: 100%; -} -.max-w-6xl { - max-width: 72rem; -} -.max-w-\[50\%\] { - max-width: 50%; -} -.max-w-\[90rem\] { - max-width: 90rem; -} -.max-w-\[min\(calc\(100vw-2rem\)\2c calc\(100\%\+20rem\)\)\] { - max-width: min(calc(100vw - 2rem),calc(100% + 20rem)); -} -.max-w-full { - max-width: 100%; -} -.max-w-none { - max-width: none; -} -.max-w-screen-xl { - max-width: 1280px; -} -.shrink-0 { - flex-shrink: 0; -} -.grow { - flex-grow: 1; -} -.origin-center { - transform-origin: center; -} -.cursor-default { - cursor: default; -} -.cursor-pointer { - cursor: pointer; -} -.select-none { - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; -} -.scroll-my-6 { - scroll-margin-top: 1.5rem; - scroll-margin-bottom: 1.5rem; -} -.scroll-py-6 { - scroll-padding-top: 1.5rem; - scroll-padding-bottom: 1.5rem; -} -.list-none { - list-style-type: none; -} -.appearance-none { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} -.grid-cols-1 { - grid-template-columns: repeat(1, minmax(0, 1fr)); -} -.flex-col { - flex-direction: column; -} -.flex-wrap { - flex-wrap: wrap; -} -.items-start { - align-items: flex-start; -} -.items-center { - align-items: center; -} -.justify-start { - justify-content: flex-start; -} -.justify-end { - justify-content: flex-end; -} -.justify-center { - justify-content: center; -} -.justify-between { - justify-content: space-between; -} -.justify-items-start { - justify-items: start; -} -.gap-1 { - gap: 0.25rem; -} -.gap-2 { - gap: 0.5rem; -} -.gap-4 { - gap: 1rem; -} -.gap-x-1 { - -moz-column-gap: 0.25rem; - column-gap: 0.25rem; -} -.gap-x-1\.5 { - -moz-column-gap: 0.375rem; - column-gap: 0.375rem; -} -.gap-y-2 { - row-gap: 0.5rem; -} -.overflow-auto { - overflow: auto; -} -.overflow-hidden { - overflow: hidden; -} -.overflow-x-auto { - overflow-x: auto; -} -.overflow-y-auto { - overflow-y: auto; -} -.overflow-x-hidden { - overflow-x: hidden; -} -.overscroll-contain { - overscroll-behavior: contain; -} -.text-ellipsis { - text-overflow: ellipsis; -} -.whitespace-nowrap { - white-space: nowrap; -} -.break-words { - overflow-wrap: break-word; -} -.rounded { - border-radius: 0.25rem; -} -.rounded-3xl { - border-radius: 1.5rem; -} -.rounded-full { - border-radius: 9999px; -} -.rounded-lg { - border-radius: 0.5rem; -} -.rounded-md { - border-radius: 0.375rem; -} -.rounded-sm { - border-radius: 0.125rem; -} -.rounded-xl { - border-radius: 0.75rem; -} -.rounded-t { - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.border { - border-width: 1px; -} -.border-b { - border-bottom-width: 1px; -} -.border-b-2 { - border-bottom-width: 2px; -} -.border-l { - border-left-width: 1px; -} -.border-t { - border-top-width: 1px; -} -.border-black\/5 { - border-color: rgb(0 0 0 / 0.05); -} -.border-blue-200 { - --tw-border-opacity: 1; - border-color: rgb(191 219 254 / var(--tw-border-opacity)); -} -.border-gray-200 { - --tw-border-opacity: 1; - border-color: rgb(229 231 235 / var(--tw-border-opacity)); -} -.border-gray-500 { - --tw-border-opacity: 1; - border-color: rgb(107 114 128 / var(--tw-border-opacity)); -} -.border-orange-100 { - --tw-border-opacity: 1; - border-color: rgb(255 237 213 / var(--tw-border-opacity)); -} -.border-red-200 { - --tw-border-opacity: 1; - border-color: rgb(254 202 202 / var(--tw-border-opacity)); -} -.border-transparent { - border-color: transparent; -} -.border-yellow-100 { - --tw-border-opacity: 1; - border-color: rgb(254 249 195 / var(--tw-border-opacity)); -} -.bg-black\/80 { - background-color: rgb(0 0 0 / 0.8); -} -.bg-black\/\[\.05\] { - background-color: rgb(0 0 0 / .05); -} -.bg-blue-100 { - --tw-bg-opacity: 1; - background-color: rgb(219 234 254 / var(--tw-bg-opacity)); -} -.bg-gray-100 { - --tw-bg-opacity: 1; - background-color: rgb(243 244 246 / var(--tw-bg-opacity)); -} -.bg-neutral-50 { - --tw-bg-opacity: 1; - background-color: rgb(250 250 250 / var(--tw-bg-opacity)); -} -.bg-orange-50 { - --tw-bg-opacity: 1; - background-color: rgb(255 247 237 / var(--tw-bg-opacity)); -} -.bg-primary-100 { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 94% / var(--tw-bg-opacity)); -} -.bg-primary-400 { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 66% / var(--tw-bg-opacity)); -} -.bg-primary-600 { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-bg-opacity)); -} -.bg-primary-700\/5 { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / 0.05); -} -.bg-red-100 { - --tw-bg-opacity: 1; - background-color: rgb(254 226 226 / var(--tw-bg-opacity)); -} -.bg-transparent { - background-color: transparent; -} -.bg-white { - --tw-bg-opacity: 1; - background-color: rgb(255 255 255 / var(--tw-bg-opacity)); -} -.bg-yellow-50 { - --tw-bg-opacity: 1; - background-color: rgb(254 252 232 / var(--tw-bg-opacity)); -} -.bg-gradient-to-r { - background-image: linear-gradient(to right, var(--tw-gradient-stops)); -} -.from-gray-900 { - --tw-gradient-from: #111827 var(--tw-gradient-from-position); - --tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position); - --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); -} -.to-gray-600 { - --tw-gradient-to: #4b5563 var(--tw-gradient-to-position); -} -.bg-clip-text { - -webkit-background-clip: text; - background-clip: text; -} -.p-0 { - padding: 0px; -} -.p-0\.5 { - padding: 0.125rem; -} -.p-1 { - padding: 0.25rem; -} -.p-1\.5 { - padding: 0.375rem; -} -.p-2 { - padding: 0.5rem; -} -.p-4 { - padding: 1rem; -} -.p-6 { - padding: 1.5rem; -} -.px-1 { - padding-left: 0.25rem; - padding-right: 0.25rem; -} -.px-1\.5 { - padding-left: 0.375rem; - padding-right: 0.375rem; -} -.px-2 { - padding-left: 0.5rem; - padding-right: 0.5rem; -} -.px-3 { - padding-left: 0.75rem; - padding-right: 0.75rem; -} -.px-4 { - padding-left: 1rem; - padding-right: 1rem; -} -.px-6 { - padding-left: 1.5rem; - padding-right: 1.5rem; -} -.py-1 { - padding-top: 0.25rem; - padding-bottom: 0.25rem; -} -.py-1\.5 { - padding-top: 0.375rem; - padding-bottom: 0.375rem; -} -.py-12 { - padding-top: 3rem; - padding-bottom: 3rem; -} -.py-2 { - padding-top: 0.5rem; - padding-bottom: 0.5rem; -} -.py-2\.5 { - padding-top: 0.625rem; - padding-bottom: 0.625rem; -} -.py-3 { - padding-top: 0.75rem; - padding-bottom: 0.75rem; -} -.py-4 { - padding-top: 1rem; - padding-bottom: 1rem; -} -.pb-8 { - padding-bottom: 2rem; -} -.pb-\[env\(safe-area-inset-bottom\)\] { - padding-bottom: env(safe-area-inset-bottom); -} -.pb-px { - padding-bottom: 1px; -} -.pl-5 { - padding-left: 1.25rem; -} -.pl-6 { - padding-left: 1.5rem; -} -.pl-\[max\(env\(safe-area-inset-left\)\2c 1\.5rem\)\] { - padding-left: max(env(safe-area-inset-left),1.5rem); -} -.pr-2 { - padding-right: 0.5rem; -} -.pr-4 { - padding-right: 1rem; -} -.pr-\[calc\(env\(safe-area-inset-right\)-1\.5rem\)\] { - padding-right: calc(env(safe-area-inset-right) - 1.5rem); -} -.pr-\[max\(env\(safe-area-inset-left\)\2c 1\.5rem\)\] { - padding-right: max(env(safe-area-inset-left),1.5rem); -} -.pr-\[max\(env\(safe-area-inset-right\)\2c 1\.5rem\)\] { - padding-right: max(env(safe-area-inset-right),1.5rem); -} -.pt-4 { - padding-top: 1rem; -} -.pt-6 { - padding-top: 1.5rem; -} -.pt-8 { - padding-top: 2rem; -} -.text-left { - text-align: left; -} -.text-center { - text-align: center; -} -.align-text-bottom { - vertical-align: text-bottom; -} -.align-\[-2\.5px\] { - vertical-align: -2.5px; -} -.font-mono { - font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; -} -.text-2xl { - font-size: 1.5rem; -} -.text-4xl { - font-size: 2.25rem; -} -.text-\[10px\] { - font-size: 10px; -} -.text-base { - font-size: 1rem; -} -.text-lg { - font-size: 1.125rem; -} -.text-sm { - font-size: .875rem; -} -.text-xl { - font-size: 1.25rem; -} -.text-xs { - font-size: .75rem; -} -.font-bold { - font-weight: 700; -} -.font-extrabold { - font-weight: 800; -} -.font-medium { - font-weight: 500; -} -.font-normal { - font-weight: 400; -} -.font-semibold { - font-weight: 600; -} -.capitalize { - text-transform: capitalize; -} -.leading-5 { - line-height: 1.25rem; -} -.leading-6 { - line-height: 1.5rem; -} -.leading-7 { - line-height: 1.75rem; -} -.leading-none { - line-height: 1; -} -.leading-tight { - line-height: 1.25; -} -.tracking-tight { - letter-spacing: -0.015em; -} -.text-\[color\:hsl\(var\(--primary-hue\)\2c 100\%\2c 50\%\)\] { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) 100% 50% / var(--tw-text-opacity)); -} -.text-blue-900 { - --tw-text-opacity: 1; - color: rgb(30 58 138 / var(--tw-text-opacity)); -} -.text-current { - color: currentColor; -} -.text-gray-100 { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); -} -.text-gray-500 { - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); -} -.text-gray-600 { - --tw-text-opacity: 1; - color: rgb(75 85 99 / var(--tw-text-opacity)); -} -.text-gray-700 { - --tw-text-opacity: 1; - color: rgb(55 65 81 / var(--tw-text-opacity)); -} -.text-gray-800 { - --tw-text-opacity: 1; - color: rgb(31 41 55 / var(--tw-text-opacity)); -} -.text-gray-900 { - --tw-text-opacity: 1; - color: rgb(17 24 39 / var(--tw-text-opacity)); -} -.text-orange-800 { - --tw-text-opacity: 1; - color: rgb(154 52 18 / var(--tw-text-opacity)); -} -.text-primary-800 { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 32% / var(--tw-text-opacity)); -} -.text-red-900 { - --tw-text-opacity: 1; - color: rgb(127 29 29 / var(--tw-text-opacity)); -} -.text-slate-900 { - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -.text-transparent { - color: transparent; -} -.text-white { - --tw-text-opacity: 1; - color: rgb(255 255 255 / var(--tw-text-opacity)); -} -.text-yellow-900 { - --tw-text-opacity: 1; - color: rgb(113 63 18 / var(--tw-text-opacity)); -} -.underline { - text-decoration-line: underline; -} -.no-underline { - text-decoration-line: none; -} -.decoration-from-font { - text-decoration-thickness: from-font; -} -.underline-offset-2 { - text-underline-offset: 2px; -} -.opacity-0 { - opacity: 0; -} -.opacity-50 { - opacity: 0.5; -} -.opacity-80 { - opacity: 0.8; -} -.shadow { - --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); - --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-\[0_-12px_16px_\#fff\] { - --tw-shadow: 0 -12px 16px #fff; - --tw-shadow-colored: 0 -12px 16px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-\[0_-12px_16px_white\] { - --tw-shadow: 0 -12px 16px white; - --tw-shadow-colored: 0 -12px 16px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-\[0_2px_4px_rgba\(0\2c 0\2c 0\2c \.02\)\2c 0_1px_0_rgba\(0\2c 0\2c 0\2c \.06\)\] { - --tw-shadow: 0 2px 4px rgba(0,0,0,.02),0 1px 0 rgba(0,0,0,.06); - --tw-shadow-colored: 0 2px 4px var(--tw-shadow-color), 0 1px 0 var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-lg { - --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); - --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-sm { - --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); - --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-xl { - --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); - --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-gray-100 { - --tw-shadow-color: #f3f4f6; - --tw-shadow: var(--tw-shadow-colored); -} -.ring-1 { - --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); - --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); - box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); -} -.ring-black\/5 { - --tw-ring-color: rgb(0 0 0 / 0.05); -} -.transition { - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.transition-all { - transition-property: all; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.transition-colors { - transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.transition-opacity { - transition-property: opacity; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.transition-transform { - transition-property: transform; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.duration-200 { - transition-duration: 200ms; -} -.duration-75 { - transition-duration: 75ms; -} -.ease-in { - transition-timing-function: cubic-bezier(0.4, 0, 1, 1); -} -.\[-webkit-tap-highlight-color\:transparent\] { - -webkit-tap-highlight-color: transparent; -} -.\[-webkit-touch-callout\:none\] { - -webkit-touch-callout: none; -} -.\[counter-reset\:step\] { - counter-reset: step; -} -.\[hyphens\:auto\] { - -webkit-hyphens: auto; - hyphens: auto; -} -.\[transition\:background-color_1\.5s_ease\] { - transition: background-color 1.5s ease; -} -.\[word-break\:break-word\] { - word-break: break-word; -} -.content :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 0.5rem; - font-size: 2.25rem; - font-weight: 700; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(h1):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -.content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 2.5rem; - border-bottom-width: 1px; - border-color: rgb(229 229 229 / 0.7); - padding-bottom: 0.25rem; - font-size: 1.875rem; - font-weight: 600; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -@media (prefers-contrast: more) { - - .content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)) { - --tw-border-opacity: 1; - border-color: rgb(163 163 163 / var(--tw-border-opacity)); - } -} -:is(html[class~="dark"] .content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *))) { - border-color: hsl(var(--primary-hue) var(--primary-saturation) 94% / 0.1); - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-border-opacity: 1; - border-color: rgb(163 163 163 / var(--tw-border-opacity)); - } -} -.content :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 2rem; - font-size: 1.5rem; - font-weight: 600; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(h3):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -.content :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 2rem; - font-size: 1.25rem; - font-weight: 600; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(h4):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -.content :where(h5):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 2rem; - font-size: 1.125rem; - font-weight: 600; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(h5):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -.content :where(h6):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 2rem; - font-size: 1rem; - font-weight: 600; - letter-spacing: -0.015em; - --tw-text-opacity: 1; - color: rgb(15 23 42 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(h6):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -.content :where(p):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 1.5rem; - line-height: 1.75rem; -} -.content :where(p):not(:where([class~=not-prose],[class~=not-prose] *)):first-child { - margin-top: 0px; -} -.content :where(a):not(:where([class~=not-prose],[class~=not-prose] *)) { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); - text-decoration-line: underline; - text-decoration-thickness: from-font; - text-underline-position: from-font; -} -.content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 1.5rem; - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); - font-style: italic; - --tw-text-opacity: 1; - color: rgb(55 65 81 / var(--tw-text-opacity)); -} -.content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)):first-child { - margin-top: 0px; -} -:is([dir="ltr"] .content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *))) { - border-left-width: 2px; - padding-left: 1.5rem; -} -:is([dir="rtl"] .content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *))) { - border-right-width: 2px; - padding-right: 1.5rem; -} -:is(html[class~="dark"] .content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *))) { - --tw-border-opacity: 1; - border-color: rgb(55 65 81 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -.content :where(pre):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *)) { - margin-bottom: 1rem; - overflow-x: auto; - border-radius: 0.75rem; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / 0.05); - padding-top: 1rem; - padding-bottom: 1rem; - font-size: .9em; - font-weight: 500; - -webkit-font-smoothing: auto; - -moz-osx-font-smoothing: auto; -} -@media (prefers-contrast: more) { - - .content :where(pre):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *)) { - border-width: 1px; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 24% / 0.2); - --tw-contrast: contrast(1.5); - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); - } -} -:is(html[class~="dark"] .content :where(pre):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *))) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 77% / 0.1); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .content :where(pre):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *))) { - border-color: hsl(var(--primary-hue) var(--primary-saturation) 94% / 0.4); - } -} -.content :where(code):not(:where(.code-block code, [class~=not-prose],[class~=not-prose] *)) { - overflow-wrap: break-word; - border-radius: 0.375rem; - border-width: 1px; - border-color: rgb(0 0 0 / var(--tw-border-opacity)); - --tw-border-opacity: 0.04; - background-color: rgb(0 0 0 / var(--tw-bg-opacity)); - --tw-bg-opacity: 0.03; - padding-top: 0.125rem; - padding-bottom: 0.125rem; - padding-left: .25em; - padding-right: .25em; - font-size: .9em; -} -:is(html[class~="dark"] .content :where(code):not(:where(.code-block code, [class~=not-prose],[class~=not-prose] *))) { - border-color: rgb(255 255 255 / 0.1); - background-color: rgb(255 255 255 / 0.1); -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) { - margin-top: 1.5rem; - display: block; - overflow-x: auto; - padding: 0px; -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)):first-child { - margin-top: 0px; -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) tr { - margin: 0px; - border-top-width: 1px; - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); - padding: 0px; -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) tr:nth-child(even) { - --tw-bg-opacity: 1; - background-color: rgb(243 244 246 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) tr) { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) tr):nth-child(even) { - background-color: rgb(75 85 99 / 0.2); -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) th { - margin: 0px; - border-width: 1px; - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); - padding-left: 1rem; - padding-right: 1rem; - padding-top: 0.5rem; - padding-bottom: 0.5rem; - font-weight: 600; -} -:is(html[class~="dark"] .content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) th) { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); -} -.content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) td { - margin: 0px; - border-width: 1px; - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); - padding-left: 1rem; - padding-right: 1rem; - padding-top: 0.5rem; - padding-bottom: 0.5rem; -} -:is(html[class~="dark"] .content :where(table):not(:where(.code-block table, [class~=not-prose],[class~=not-prose] *)) td) { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); -} -.content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 1.5rem; - list-style-type: decimal; -} -.content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)):first-child { - margin-top: 0px; -} -:is([dir="ltr"] .content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *))) { - margin-left: 1.5rem; -} -:is([dir="rtl"] .content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *))) { - margin-right: 1.5rem; -} -.content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)) li { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} -.content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 1.5rem; - list-style-type: disc; -} -.content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)):first-child { - margin-top: 0px; -} -:is([dir="ltr"] .content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *))) { - margin-left: 1.5rem; -} -:is([dir="rtl"] .content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *))) { - margin-right: 1.5rem; -} -.content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)) li { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} -/* This CSS rule targets the first nested unordered (ul) or ordered (ol) list - inside the list item (li) of any parent ul or ol. - The rule sets the top margin of the selected list to zero. */ -.content :where(ul, ol) > li > :where(ul, ol):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-top: 0px; -} -.content :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)) { - overflow-wrap: break-word; - border-radius: 0.375rem; - border-width: 1px; - border-color: rgb(0 0 0 / var(--tw-border-opacity)); - --tw-border-opacity: 0.04; - background-color: rgb(0 0 0 / var(--tw-bg-opacity)); - --tw-bg-opacity: 0.03; - padding-top: 0.125rem; - padding-bottom: 0.125rem; - padding-left: .25em; - padding-right: .25em; - font-size: .9em; -} -:is(html[class~="dark"] .content :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *))) { - border-color: rgb(255 255 255 / 0.1); - background-color: rgb(255 255 255 / 0.1); -} -.content :where(pre.mermaid):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *)) { - border-radius: 0px; - background-color: transparent; -} -:is(html[class~="dark"] .content :where(pre.mermaid):not(:where(.code-block pre, [class~=not-prose],[class~=not-prose] *))) { - background-color: transparent; -} -.content :where(img):not(:where([class~=not-prose],[class~=not-prose] *)) { - margin-left: auto; - margin-right: auto; - margin-top: 1rem; - margin-bottom: 1rem; - border-radius: 0.375rem; -} -.content :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)) figcaption { - margin-top: 0.5rem; - display: block; - text-align: center; - font-size: .875rem; - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .content :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)) figcaption) { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -.content .footnotes { - margin-top: 3rem; - font-size: .875rem; -} -.subheading-anchor { - opacity: 0; - transition-property: opacity; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -:is([dir="ltr"] .subheading-anchor) { - margin-left: 0.25rem; -} -:is([dir="rtl"] .subheading-anchor) { - margin-right: 0.25rem; -} -span:target + .subheading-anchor, - :hover > .subheading-anchor, - .subheading-anchor:focus { - opacity: 1; -} -span + .subheading-anchor, - :hover > .subheading-anchor { - text-decoration-line: none !important; -} -.subheading-anchor:after { - padding-left: 0.25rem; - padding-right: 0.25rem; - --tw-content: '#'; - content: var(--tw-content); - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .subheading-anchor):after { - --tw-text-opacity: 1; - color: rgb(64 64 64 / var(--tw-text-opacity)); -} -span:target + .subheading-anchor:after { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] span:target + .subheading-anchor):after { - --tw-text-opacity: 1; - color: rgb(115 115 115 / var(--tw-text-opacity)); -} -article details > summary::-webkit-details-marker { - display: none; -} -article details > summary::before { - background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='h-5 w-5' viewBox='0 0 20 20' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z' clip-rule='evenodd' /%3E%3C/svg%3E"); - height: 1.2em; - width: 1.2em; - vertical-align: -4px; - padding: 0 0.6em; - } -/* Code syntax highlight */ -/* Light theme for syntax highlight */ -/* Generated using `hugo gen chromastyles --style=github` */ -.highlight { - /* Background .bg { background-color: #ffffff; } */ - /* PreWrapper .chroma { background-color: #ffffff; } */ - /* Other .chroma .x { } */ - /* CodeLine .chroma .cl { } */ - /* LineTableTD .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } */ - /* LineTable .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } */ - /* LineHighlight .chroma .hl { background-color: #ffffcc } */ - /* LineNumbersTable .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } */ - /* LineNumbers .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #7f7f7f } */ - /* Name .chroma .n { } */ - /* NameFunctionMagic .chroma .fm { } */ - /* NameOther .chroma .nx { } */ - /* NameProperty .chroma .py { } */ - /* NameVariableMagic .chroma .vm { } */ - /* Literal .chroma .l { } */ - /* LiteralDate .chroma .ld { } */ - /* Punctuation .chroma .p { } */ - /* Generic .chroma .g { } */ -} -/* Error */ -.highlight .chroma .err { color: #a61717; background-color: #e3d2d2 } -/* LineLink */ -.highlight .chroma .lnlinks { outline: none; text-decoration: none; color: inherit } -/* Line */ -.highlight .chroma .line { display: flex; } -/* Keyword */ -.highlight .chroma .k { color: #000000; font-weight: bold } -/* KeywordConstant */ -.highlight .chroma .kc { color: #000000; font-weight: bold } -/* KeywordDeclaration */ -.highlight .chroma .kd { color: #000000; font-weight: bold } -/* KeywordNamespace */ -.highlight .chroma .kn { color: #000000; font-weight: bold } -/* KeywordPseudo */ -.highlight .chroma .kp { color: #000000; font-weight: bold } -/* KeywordReserved */ -.highlight .chroma .kr { color: #000000; font-weight: bold } -/* KeywordType */ -.highlight .chroma .kt { color: #445588; font-weight: bold } -/* NameAttribute */ -.highlight .chroma .na { color: #008080 } -/* NameBuiltin */ -.highlight .chroma .nb { color: #0086b3 } -/* NameBuiltinPseudo */ -.highlight .chroma .bp { color: #999999 } -/* NameClass */ -.highlight .chroma .nc { color: #445588; font-weight: bold } -/* NameConstant */ -.highlight .chroma .no { color: #008080 } -/* NameDecorator */ -.highlight .chroma .nd { color: #3c5d5d; font-weight: bold } -/* NameEntity */ -.highlight .chroma .ni { color: #800080 } -/* NameException */ -.highlight .chroma .ne { color: #990000; font-weight: bold } -/* NameFunction */ -.highlight .chroma .nf { color: #990000; font-weight: bold } -/* NameLabel */ -.highlight .chroma .nl { color: #990000; font-weight: bold } -/* NameNamespace */ -.highlight .chroma .nn { color: #555555 } -/* NameTag */ -.highlight .chroma .nt { color: #000080 } -/* NameVariable */ -.highlight .chroma .nv { color: #008080 } -/* NameVariableClass */ -.highlight .chroma .vc { color: #008080 } -/* NameVariableGlobal */ -.highlight .chroma .vg { color: #008080 } -/* NameVariableInstance */ -.highlight .chroma .vi { color: #008080 } -/* LiteralString */ -.highlight .chroma .s { color: #dd1144 } -/* LiteralStringAffix */ -.highlight .chroma .sa { color: #dd1144 } -/* LiteralStringBacktick */ -.highlight .chroma .sb { color: #dd1144 } -/* LiteralStringChar */ -.highlight .chroma .sc { color: #dd1144 } -/* LiteralStringDelimiter */ -.highlight .chroma .dl { color: #dd1144 } -/* LiteralStringDoc */ -.highlight .chroma .sd { color: #dd1144 } -/* LiteralStringDouble */ -.highlight .chroma .s2 { color: #dd1144 } -/* LiteralStringEscape */ -.highlight .chroma .se { color: #dd1144 } -/* LiteralStringHeredoc */ -.highlight .chroma .sh { color: #dd1144 } -/* LiteralStringInterpol */ -.highlight .chroma .si { color: #dd1144 } -/* LiteralStringOther */ -.highlight .chroma .sx { color: #dd1144 } -/* LiteralStringRegex */ -.highlight .chroma .sr { color: #009926 } -/* LiteralStringSingle */ -.highlight .chroma .s1 { color: #dd1144 } -/* LiteralStringSymbol */ -.highlight .chroma .ss { color: #990073 } -/* LiteralNumber */ -.highlight .chroma .m { color: #009999 } -/* LiteralNumberBin */ -.highlight .chroma .mb { color: #009999 } -/* LiteralNumberFloat */ -.highlight .chroma .mf { color: #009999 } -/* LiteralNumberHex */ -.highlight .chroma .mh { color: #009999 } -/* LiteralNumberInteger */ -.highlight .chroma .mi { color: #009999 } -/* LiteralNumberIntegerLong */ -.highlight .chroma .il { color: #009999 } -/* LiteralNumberOct */ -.highlight .chroma .mo { color: #009999 } -/* Operator */ -.highlight .chroma .o { color: #000000; font-weight: bold } -/* OperatorWord */ -.highlight .chroma .ow { color: #000000; font-weight: bold } -/* Comment */ -.highlight .chroma .c { color: #999988; font-style: italic } -/* CommentHashbang */ -.highlight .chroma .ch { color: #999988; font-style: italic } -/* CommentMultiline */ -.highlight .chroma .cm { color: #999988; font-style: italic } -/* CommentSingle */ -.highlight .chroma .c1 { color: #999988; font-style: italic } -/* CommentSpecial */ -.highlight .chroma .cs { color: #999999; font-weight: bold; font-style: italic } -/* CommentPreproc */ -.highlight .chroma .cp { color: #999999; font-weight: bold; font-style: italic } -/* CommentPreprocFile */ -.highlight .chroma .cpf { color: #999999; font-weight: bold; font-style: italic } -/* GenericDeleted */ -.highlight .chroma .gd { color: #000000; background-color: #ffdddd } -/* GenericEmph */ -.highlight .chroma .ge { color: #000000; font-style: italic } -/* GenericError */ -.highlight .chroma .gr { color: #aa0000 } -/* GenericHeading */ -.highlight .chroma .gh { color: #999999 } -/* GenericInserted */ -.highlight .chroma .gi { color: #000000; background-color: #ddffdd } -/* GenericOutput */ -.highlight .chroma .go { color: #888888 } -/* GenericPrompt */ -.highlight .chroma .gp { color: #555555 } -/* GenericStrong */ -.highlight .chroma .gs { font-weight: bold } -/* GenericSubheading */ -.highlight .chroma .gu { color: #aaaaaa } -/* GenericTraceback */ -.highlight .chroma .gt { color: #aa0000 } -/* GenericUnderline */ -.highlight .chroma .gl { text-decoration: underline } -/* TextWhitespace */ -.highlight .chroma .w { color: #bbbbbb } -.dark .highlight { - /* Background .bg { color: #c9d1d9; background-color: #0d1117; } - /* PreWrapper .chroma { color: #c9d1d9; background-color: #0d1117; } */ - /* LineTableTD .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } */ - /* LineTable .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } */ - /* LineHighlight .chroma .hl { background-color: #ffffcc } */ - /* LineNumbersTable .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #64686c } */ - /* LineNumbers .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #6e7681 } */ -} -/* Other */ -.dark .highlight .chroma .x { } -/* Error */ -.dark .highlight .chroma .err { color: #f85149 } -/* CodeLine */ -.dark .highlight .chroma .cl { } -/* LineLink */ -.dark .highlight .chroma .lnlinks { outline: none; text-decoration: none; color: inherit } -/* Line */ -.dark .highlight .chroma .line { display: flex; } -/* Keyword */ -.dark .highlight .chroma .k { color: #ff7b72 } -/* KeywordConstant */ -.dark .highlight .chroma .kc { color: #79c0ff } -/* KeywordDeclaration */ -.dark .highlight .chroma .kd { color: #ff7b72 } -/* KeywordNamespace */ -.dark .highlight .chroma .kn { color: #ff7b72 } -/* KeywordPseudo */ -.dark .highlight .chroma .kp { color: #79c0ff } -/* KeywordReserved */ -.dark .highlight .chroma .kr { color: #ff7b72 } -/* KeywordType */ -.dark .highlight .chroma .kt { color: #ff7b72 } -/* Name */ -.dark .highlight .chroma .n { } -/* NameAttribute */ -.dark .highlight .chroma .na { } -/* NameBuiltin */ -.dark .highlight .chroma .nb { } -/* NameBuiltinPseudo */ -.dark .highlight .chroma .bp { } -/* NameClass */ -.dark .highlight .chroma .nc { color: #f0883e; font-weight: bold } -/* NameConstant */ -.dark .highlight .chroma .no { color: #79c0ff; font-weight: bold } -/* NameDecorator */ -.dark .highlight .chroma .nd { color: #d2a8ff; font-weight: bold } -/* NameEntity */ -.dark .highlight .chroma .ni { color: #ffa657 } -/* NameException */ -.dark .highlight .chroma .ne { color: #f0883e; font-weight: bold } -/* NameFunction */ -.dark .highlight .chroma .nf { color: #d2a8ff; font-weight: bold } -/* NameFunctionMagic */ -.dark .highlight .chroma .fm { } -/* NameLabel */ -.dark .highlight .chroma .nl { color: #79c0ff; font-weight: bold } -/* NameNamespace */ -.dark .highlight .chroma .nn { color: #ff7b72 } -/* NameOther */ -.dark .highlight .chroma .nx { } -/* NameProperty */ -.dark .highlight .chroma .py { color: #79c0ff } -/* NameTag */ -.dark .highlight .chroma .nt { color: #7ee787 } -/* NameVariable */ -.dark .highlight .chroma .nv { color: #79c0ff } -/* NameVariableClass */ -.dark .highlight .chroma .vc { } -/* NameVariableGlobal */ -.dark .highlight .chroma .vg { } -/* NameVariableInstance */ -.dark .highlight .chroma .vi { } -/* NameVariableMagic */ -.dark .highlight .chroma .vm { } -/* Literal */ -.dark .highlight .chroma .l { color: #a5d6ff } -/* LiteralDate */ -.dark .highlight .chroma .ld { color: #79c0ff } -/* LiteralString */ -.dark .highlight .chroma .s { color: #a5d6ff } -/* LiteralStringAffix */ -.dark .highlight .chroma .sa { color: #79c0ff } -/* LiteralStringBacktick */ -.dark .highlight .chroma .sb { color: #a5d6ff } -/* LiteralStringChar */ -.dark .highlight .chroma .sc { color: #a5d6ff } -/* LiteralStringDelimiter */ -.dark .highlight .chroma .dl { color: #79c0ff } -/* LiteralStringDoc */ -.dark .highlight .chroma .sd { color: #a5d6ff } -/* LiteralStringDouble */ -.dark .highlight .chroma .s2 { color: #a5d6ff } -/* LiteralStringEscape */ -.dark .highlight .chroma .se { color: #79c0ff } -/* LiteralStringHeredoc */ -.dark .highlight .chroma .sh { color: #79c0ff } -/* LiteralStringInterpol */ -.dark .highlight .chroma .si { color: #a5d6ff } -/* LiteralStringOther */ -.dark .highlight .chroma .sx { color: #a5d6ff } -/* LiteralStringRegex */ -.dark .highlight .chroma .sr { color: #79c0ff } -/* LiteralStringSingle */ -.dark .highlight .chroma .s1 { color: #a5d6ff } -/* LiteralStringSymbol */ -.dark .highlight .chroma .ss { color: #a5d6ff } -/* LiteralNumber */ -.dark .highlight .chroma .m { color: #a5d6ff } -/* LiteralNumberBin */ -.dark .highlight .chroma .mb { color: #a5d6ff } -/* LiteralNumberFloat */ -.dark .highlight .chroma .mf { color: #a5d6ff } -/* LiteralNumberHex */ -.dark .highlight .chroma .mh { color: #a5d6ff } -/* LiteralNumberInteger */ -.dark .highlight .chroma .mi { color: #a5d6ff } -/* LiteralNumberIntegerLong */ -.dark .highlight .chroma .il { color: #a5d6ff } -/* LiteralNumberOct */ -.dark .highlight .chroma .mo { color: #a5d6ff } -/* Operator */ -.dark .highlight .chroma .o { color: #ff7b72; font-weight: bold } -/* OperatorWord */ -.dark .highlight .chroma .ow { color: #ff7b72; font-weight: bold } -/* Punctuation */ -.dark .highlight .chroma .p { } -/* Comment */ -.dark .highlight .chroma .c { color: #8b949e; font-style: italic } -/* CommentHashbang */ -.dark .highlight .chroma .ch { color: #8b949e; font-style: italic } -/* CommentMultiline */ -.dark .highlight .chroma .cm { color: #8b949e; font-style: italic } -/* CommentSingle */ -.dark .highlight .chroma .c1 { color: #8b949e; font-style: italic } -/* CommentSpecial */ -.dark .highlight .chroma .cs { color: #8b949e; font-weight: bold; font-style: italic } -/* CommentPreproc */ -.dark .highlight .chroma .cp { color: #8b949e; font-weight: bold; font-style: italic } -/* CommentPreprocFile */ -.dark .highlight .chroma .cpf { color: #8b949e; font-weight: bold; font-style: italic } -/* Generic */ -.dark .highlight .chroma .g { } -/* GenericDeleted */ -.dark .highlight .chroma .gd { color: #ffa198; background-color: #490202 } -/* GenericEmph */ -.dark .highlight .chroma .ge { font-style: italic } -/* GenericError */ -.dark .highlight .chroma .gr { color: #ffa198 } -/* GenericHeading */ -.dark .highlight .chroma .gh { color: #79c0ff; font-weight: bold } -/* GenericInserted */ -.dark .highlight .chroma .gi { color: #56d364; background-color: #0f5323 } -/* GenericOutput */ -.dark .highlight .chroma .go { color: #8b949e } -/* GenericPrompt */ -.dark .highlight .chroma .gp { color: #8b949e } -/* GenericStrong */ -.dark .highlight .chroma .gs { font-weight: bold } -/* GenericSubheading */ -.dark .highlight .chroma .gu { color: #79c0ff } -/* GenericTraceback */ -.dark .highlight .chroma .gt { color: #ff7b72 } -/* GenericUnderline */ -.dark .highlight .chroma .gl { text-decoration: underline } -/* TextWhitespace */ -.dark .highlight .chroma .w { color: #6e7681 } -.code-block { - font-size: .9em; - line-height: 1.25rem; -} -.code-block pre { - overflow-x: auto; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / 0.05); - font-size: .9em; - font-weight: 500; - -webkit-font-smoothing: auto; - -moz-osx-font-smoothing: auto; -} -@media (prefers-contrast: more) { - - .code-block pre { - border-width: 1px; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 24% / 0.2); - --tw-contrast: contrast(1.5); - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); - } -} -:is(html[class~="dark"] .code-block pre) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 77% / 0.1); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .code-block pre) { - border-color: hsl(var(--primary-hue) var(--primary-saturation) 94% / 0.4); - } -} -.code-block .filename { - position: absolute; - top: 0px; - z-index: 1; - width: 100%; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - border-top-left-radius: 0.75rem; - border-top-right-radius: 0.75rem; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / 0.05); - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 1rem; - padding-right: 1rem; - font-size: .75rem; - --tw-text-opacity: 1; - color: rgb(55 65 81 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .code-block .filename) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 77% / 0.1); - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); -} -.code-block .filename + pre:not(.lntable pre) { - /* Override padding for code blocks with filename but no highlight */ - padding-top: 3rem; - } -.code-block pre:not(.lntable pre) { - margin-bottom: 1rem; - border-radius: 0.75rem; - padding-left: 1rem; - padding-right: 1rem; - padding-top: 1rem; - padding-bottom: 1rem; -} -.code-block div:nth-of-type(2) pre { - padding-top: 3rem; - padding-bottom: 1rem; -} -.chroma .lntable { - margin: 0px; - display: block; - width: auto; - overflow: auto; - border-radius: 0.75rem; -} -.chroma .lntable pre { - padding-top: 1rem; - padding-bottom: 1rem; -} -.chroma .ln, - .chroma .lnt:not(.hl > .lnt), - .chroma .hl:not(.line) { - min-width: 2.6rem; - padding-left: 1rem; - padding-right: 1rem; - --tw-text-opacity: 1; - color: rgb(82 82 82 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .chroma .ln),:is(html[class~="dark"] - .chroma .lnt:not(.hl > .lnt)),:is(html[class~="dark"] - .chroma .hl:not(.line)) { - --tw-text-opacity: 1; - color: rgb(212 212 212 / var(--tw-text-opacity)); -} -.chroma .lntd { - padding: 0px; - vertical-align: top; -} -.chroma .lntd:last-of-type { - width: 100%; -} -/* LineHighlight */ -.chroma .hl { - display: block; - width: 100%; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 32% / 0.1); -} -.hextra-cards { - grid-template-columns: repeat(auto-fill, minmax(max(250px, calc((100% - 1rem * 2) / var(--rows))), 1fr)); -} -.hextra-card img { - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; -} -.hextra-card:hover svg { - color: currentColor; -} -.hextra-card svg { - width: 1.5rem; - color: #00000033; - transition: color 0.3s ease; -} -.hextra-card p { - margin-top: 0.5rem; -} -.dark .hextra-card svg { - color: #ffffff66; -} -.dark .hextra-card:hover svg { - color: currentColor; -} -.steps h3 { - counter-increment: step; -} -.steps h3:before { - position: absolute; - height: 33px; - width: 33px; - border-width: 4px; - --tw-border-opacity: 1; - border-color: rgb(255 255 255 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(243 244 246 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .steps h3):before { - --tw-border-opacity: 1; - border-color: rgb(17 17 17 / var(--tw-border-opacity)); - --tw-bg-opacity: 1; - background-color: rgb(38 38 38 / var(--tw-bg-opacity)); -} -.steps h3:before { - border-radius: 9999px; - text-align: center; - text-indent: -1px; - font-size: 1rem; - font-weight: 400; - --tw-text-opacity: 1; - color: rgb(163 163 163 / var(--tw-text-opacity)); - margin-top: 3px; - margin-left: -41px; - content: counter(step); -} -.search-wrapper li { - margin-left: 0.625rem; - margin-right: 0.625rem; - overflow-wrap: break-word; - border-radius: 0.375rem; - --tw-text-opacity: 1; - color: rgb(31 41 55 / var(--tw-text-opacity)); -} -@media (prefers-contrast: more) { - - .search-wrapper li { - border-width: 1px; - border-color: transparent; - } -} -:is(html[class~="dark"] .search-wrapper li) { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); -} -.search-wrapper li a { - display: block; - scroll-margin: 3rem; - padding-left: 0.625rem; - padding-right: 0.625rem; - padding-top: 0.5rem; - padding-bottom: 0.5rem; -} -.search-wrapper li .title { - font-size: 1rem; - font-weight: 600; - line-height: 1.25rem; -} -.search-wrapper li .active { - border-radius: 0.375rem; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / 0.1); -} -@media (prefers-contrast: more) { - - .search-wrapper li .active { - --tw-border-opacity: 1; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / var(--tw-border-opacity)); - } -} -.search-wrapper .no-result { - display: block; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - padding: 2rem; - text-align: center; - font-size: .875rem; - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -.search-wrapper .prefix { - margin-left: 0.625rem; - margin-right: 0.625rem; - margin-bottom: 0.5rem; - margin-top: 1.5rem; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - border-bottom-width: 1px; - border-color: rgb(0 0 0 / 0.1); - padding-left: 0.625rem; - padding-right: 0.625rem; - padding-bottom: 0.375rem; - font-size: .75rem; - font-weight: 600; - text-transform: uppercase; - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); -} -.search-wrapper .prefix:first-child { - margin-top: 0px; -} -@media (prefers-contrast: more) { - - .search-wrapper .prefix { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(17 24 39 / var(--tw-text-opacity)); - } -} -:is(html[class~="dark"] .search-wrapper .prefix) { - border-color: rgb(255 255 255 / 0.2); - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .search-wrapper .prefix) { - --tw-border-opacity: 1; - border-color: rgb(249 250 251 / var(--tw-border-opacity)); - --tw-text-opacity: 1; - color: rgb(249 250 251 / var(--tw-text-opacity)); - } -} -.search-wrapper .excerpt { - margin-top: 0.25rem; - overflow: hidden; - text-overflow: ellipsis; - font-size: .875rem; - line-height: 1.35rem; - --tw-text-opacity: 1; - color: rgb(75 85 99 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .search-wrapper .excerpt) { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .search-wrapper .excerpt) { - --tw-text-opacity: 1; - color: rgb(249 250 251 / var(--tw-text-opacity)); - } -} -.search-wrapper .excerpt { - display: -webkit-box; - line-clamp: 1; - -webkit-line-clamp: 1; - -webkit-box-orient: vertical; - } -.search-wrapper .match { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); -} -@media (max-width: 767px) { - .sidebar-container { - position: fixed; - top: 0px; - bottom: 0px; - z-index: 15; - width: 100%; - overscroll-behavior: contain; - --tw-bg-opacity: 1; - background-color: rgb(255 255 255 / var(--tw-bg-opacity)); - padding-top: calc(var(--navbar-height)); - } - :is(html[class~="dark"] .sidebar-container) { - --tw-bg-opacity: 1; - background-color: rgb(17 17 17 / var(--tw-bg-opacity)); - } - .sidebar-container { - transition: transform 0.8s cubic-bezier(0.52, 0.16, 0.04, 1); - will-change: transform, opacity; - contain: layout style; - backface-visibility: hidden; - } -} -.sidebar-container li > div { - height: 0px; -} -.sidebar-container li.open > div { - height: auto; - padding-top: 0.25rem; -} -.sidebar-container li.open > a > span > svg > path { - --tw-rotate: 90deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -nav .search-wrapper { - display: none; -} -@media (min-width: 768px) { - - nav .search-wrapper { - display: inline-block; - } -} -@supports ( - ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) -) { - .nav-container-blur { - background-color: rgb(255 255 255 / .85); - --tw-backdrop-blur: blur(12px); - -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); - backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); - } - :is(html[class~="dark"] .nav-container-blur) { - background-color: rgb(17 17 17 / 0.8) !important; - } -} -.hamburger-menu svg g { - transform-origin: center; - transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1); -} -.hamburger-menu svg path { - opacity: 1; - transition: - transform 0.2s cubic-bezier(0.25, 1, 0.5, 1) 0.2s, - opacity 0.2s ease 0.2s; - } -.hamburger-menu svg.open path { - transition: - transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), - opacity 0s ease 0.2s; - } -.hamburger-menu svg.open g { - transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1) 0.2s; - } -.hamburger-menu svg.open > path { - opacity: 0; -} -.hamburger-menu svg.open > g:nth-of-type(1) { - --tw-rotate: 45deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -.hamburger-menu svg.open > g:nth-of-type(1) path { - transform: translate3d(0, 4px, 0); - } -.hamburger-menu svg.open > g:nth-of-type(2) { - --tw-rotate: -45deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -.hamburger-menu svg.open > g:nth-of-type(2) path { - transform: translate3d(0, -4px, 0); - } -.hextra-scrollbar { - scrollbar-width: thin; /* Firefox */ - scrollbar-color: oklch(55.55% 0 0 / 40%) transparent; /* Firefox */ - - scrollbar-gutter: stable; -} -.hextra-scrollbar::-webkit-scrollbar { - height: 0.75rem; - width: 0.75rem; -} -.hextra-scrollbar::-webkit-scrollbar-track { - background-color: transparent; -} -.hextra-scrollbar::-webkit-scrollbar-thumb { - border-radius: 10px; -} -.hextra-scrollbar:hover::-webkit-scrollbar-thumb { - border: 3px solid transparent; - background-color: var(--tw-shadow-color); - background-clip: content-box; - --tw-shadow-color: rgb(115 115 115 / 0.2); - --tw-shadow: var(--tw-shadow-colored); - } -.hextra-scrollbar:hover::-webkit-scrollbar-thumb:hover { - --tw-shadow-color: rgb(115 115 115 / 0.4); - --tw-shadow: var(--tw-shadow-colored); -} -@supports ( - ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) -) { - .code-copy-btn { - --tw-bg-opacity: .85; - --tw-backdrop-blur: blur(12px); - -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); - backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); - } - :is(html[class~="dark"] .code-copy-btn) { - --tw-bg-opacity: 0.8; - } -} -html { - font-size: 1rem; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - font-feature-settings: "rlig" 1, "calt" 1, "ss01" 1; - -webkit-tap-highlight-color: transparent; -} -body { - width: 100%; - --tw-bg-opacity: 1; - background-color: rgb(255 255 255 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] body) { - --tw-bg-opacity: 1; - background-color: rgb(17 17 17 / var(--tw-bg-opacity)); - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); -} -:root { - --primary-hue: 212deg; - --primary-saturation: 100%; - --navbar-height: 4rem; - --menu-height: 3.75rem; -} -.dark { - --primary-hue: 204deg; - --primary-saturation: 100%; -} -.placeholder\:text-gray-500::-moz-placeholder { - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); -} -.placeholder\:text-gray-500::placeholder { - --tw-text-opacity: 1; - color: rgb(107 114 128 / var(--tw-text-opacity)); -} -.before\:pointer-events-none::before { - content: var(--tw-content); - pointer-events: none; -} -.before\:absolute::before { - content: var(--tw-content); - position: absolute; -} -.before\:inset-0::before { - content: var(--tw-content); - inset: 0px; -} -.before\:inset-y-1::before { - content: var(--tw-content); - top: 0.25rem; - bottom: 0.25rem; -} -.before\:mr-1::before { - content: var(--tw-content); - margin-right: 0.25rem; -} -.before\:inline-block::before { - content: var(--tw-content); - display: inline-block; -} -.before\:w-px::before { - content: var(--tw-content); - width: 1px; -} -.before\:bg-gray-200::before { - content: var(--tw-content); - --tw-bg-opacity: 1; - background-color: rgb(229 231 235 / var(--tw-bg-opacity)); -} -.before\:opacity-25::before { - content: var(--tw-content); - opacity: 0.25; -} -.before\:transition-transform::before { - content: var(--tw-content); - transition-property: transform; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 150ms; -} -.before\:content-\[\'\#\'\]::before { - --tw-content: '#'; - content: var(--tw-content); -} -.before\:content-\[\'\'\]::before { - --tw-content: ''; - content: var(--tw-content); -} -.before\:content-\[\\\"\\\"\]::before { - --tw-content: \"\"; - content: var(--tw-content); -} -.first\:mt-0:first-child { - margin-top: 0px; -} -.last-of-type\:mb-0:last-of-type { - margin-bottom: 0px; -} -.hover\:border-gray-200:hover { - --tw-border-opacity: 1; - border-color: rgb(229 231 235 / var(--tw-border-opacity)); -} -.hover\:border-gray-300:hover { - --tw-border-opacity: 1; - border-color: rgb(209 213 219 / var(--tw-border-opacity)); -} -.hover\:border-gray-400:hover { - --tw-border-opacity: 1; - border-color: rgb(156 163 175 / var(--tw-border-opacity)); -} -.hover\:border-gray-900:hover { - --tw-border-opacity: 1; - border-color: rgb(17 24 39 / var(--tw-border-opacity)); -} -.hover\:bg-gray-100:hover { - --tw-bg-opacity: 1; - background-color: rgb(243 244 246 / var(--tw-bg-opacity)); -} -.hover\:bg-gray-800\/5:hover { - background-color: rgb(31 41 55 / 0.05); -} -.hover\:bg-primary-50:hover { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 97% / var(--tw-bg-opacity)); -} -.hover\:bg-primary-700:hover { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / var(--tw-bg-opacity)); -} -.hover\:bg-slate-50:hover { - --tw-bg-opacity: 1; - background-color: rgb(248 250 252 / var(--tw-bg-opacity)); -} -.hover\:text-black:hover { - --tw-text-opacity: 1; - color: rgb(0 0 0 / var(--tw-text-opacity)); -} -.hover\:text-gray-800:hover { - --tw-text-opacity: 1; - color: rgb(31 41 55 / var(--tw-text-opacity)); -} -.hover\:text-gray-900:hover { - --tw-text-opacity: 1; - color: rgb(17 24 39 / var(--tw-text-opacity)); -} -.hover\:text-primary-600:hover { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); -} -.hover\:opacity-60:hover { - opacity: 0.6; -} -.hover\:opacity-75:hover { - opacity: 0.75; -} -.hover\:shadow-lg:hover { - --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); - --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.hover\:shadow-md:hover { - --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); - --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.hover\:shadow-gray-100:hover { - --tw-shadow-color: #f3f4f6; - --tw-shadow: var(--tw-shadow-colored); -} -.focus\:bg-white:focus { - --tw-bg-opacity: 1; - background-color: rgb(255 255 255 / var(--tw-bg-opacity)); -} -.focus\:outline-none:focus { - outline: 2px solid transparent; - outline-offset: 2px; -} -.focus\:ring-4:focus { - --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); - --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color); - box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); -} -.focus\:ring-primary-300:focus { - --tw-ring-opacity: 1; - --tw-ring-color: hsl(var(--primary-hue) var(--primary-saturation) 77% / var(--tw-ring-opacity)); -} -.active\:bg-gray-400\/20:active { - background-color: rgb(156 163 175 / 0.2); -} -.active\:opacity-50:active { - opacity: 0.5; -} -.active\:shadow-sm:active { - --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); - --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.active\:shadow-gray-200:active { - --tw-shadow-color: #e5e7eb; - --tw-shadow: var(--tw-shadow-colored); -} -.group[open] .group-open\:before\:rotate-90::before { - content: var(--tw-content); - --tw-rotate: 90deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -.group:hover .group-hover\:underline { - text-decoration-line: underline; -} -.group\/code:hover .group-hover\/code\:opacity-100 { - opacity: 1; -} -.group\/copybtn.copied .group-\[\.copied\]\/copybtn\:block { - display: block; -} -.group\/copybtn.copied .group-\[\.copied\]\/copybtn\:hidden { - display: none; -} -.data-\[state\=selected\]\:block[data-state=selected] { - display: block; -} -.data-\[state\=closed\]\:hidden[data-state=closed] { - display: none; -} -.data-\[state\=open\]\:hidden[data-state=open] { - display: none; -} -.data-\[state\=selected\]\:border-primary-500[data-state=selected] { - --tw-border-opacity: 1; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / var(--tw-border-opacity)); -} -.data-\[state\=selected\]\:text-primary-600[data-state=selected] { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); -} -.group[data-theme=dark] .group-data-\[theme\=dark\]\:hidden { - display: none; -} -.group[data-theme=light] .group-data-\[theme\=light\]\:hidden { - display: none; -} -:is([dir="ltr"] .ltr\:right-1) { - right: 0.25rem; -} -:is([dir="ltr"] .ltr\:right-1\.5) { - right: 0.375rem; -} -:is([dir="ltr"] .ltr\:right-3) { - right: 0.75rem; -} -:is([dir="ltr"] .ltr\:-mr-4) { - margin-right: -1rem; -} -:is([dir="ltr"] .ltr\:ml-3) { - margin-left: 0.75rem; -} -:is([dir="ltr"] .ltr\:ml-auto) { - margin-left: auto; -} -:is([dir="ltr"] .ltr\:mr-auto) { - margin-right: auto; -} -:is([dir="ltr"] .ltr\:rotate-180) { - --tw-rotate: 180deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -:is([dir="ltr"] .ltr\:pl-12) { - padding-left: 3rem; -} -:is([dir="ltr"] .ltr\:pl-16) { - padding-left: 4rem; -} -:is([dir="ltr"] .ltr\:pl-3) { - padding-left: 0.75rem; -} -:is([dir="ltr"] .ltr\:pl-4) { - padding-left: 1rem; -} -:is([dir="ltr"] .ltr\:pl-8) { - padding-left: 2rem; -} -:is([dir="ltr"] .ltr\:pr-0) { - padding-right: 0px; -} -:is([dir="ltr"] .ltr\:pr-2) { - padding-right: 0.5rem; -} -:is([dir="ltr"] .ltr\:pr-4) { - padding-right: 1rem; -} -:is([dir="ltr"] .ltr\:pr-9) { - padding-right: 2.25rem; -} -:is([dir="ltr"] .ltr\:text-right) { - text-align: right; -} -:is([dir="ltr"] .ltr\:before\:left-0)::before { - content: var(--tw-content); - left: 0px; -} -:is([dir="rtl"] .rtl\:left-1) { - left: 0.25rem; -} -:is([dir="rtl"] .rtl\:left-1\.5) { - left: 0.375rem; -} -:is([dir="rtl"] .rtl\:left-3) { - left: 0.75rem; -} -:is([dir="rtl"] .rtl\:-ml-4) { - margin-left: -1rem; -} -:is([dir="rtl"] .rtl\:ml-auto) { - margin-left: auto; -} -:is([dir="rtl"] .rtl\:mr-3) { - margin-right: 0.75rem; -} -:is([dir="rtl"] .rtl\:mr-auto) { - margin-right: auto; -} -:is([dir="rtl"] .rtl\:-rotate-180) { - --tw-rotate: -180deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -:is([dir="rtl"] .rtl\:pl-2) { - padding-left: 0.5rem; -} -:is([dir="rtl"] .rtl\:pl-4) { - padding-left: 1rem; -} -:is([dir="rtl"] .rtl\:pl-9) { - padding-left: 2.25rem; -} -:is([dir="rtl"] .rtl\:pr-12) { - padding-right: 3rem; -} -:is([dir="rtl"] .rtl\:pr-16) { - padding-right: 4rem; -} -:is([dir="rtl"] .rtl\:pr-3) { - padding-right: 0.75rem; -} -:is([dir="rtl"] .rtl\:pr-4) { - padding-right: 1rem; -} -:is([dir="rtl"] .rtl\:pr-8) { - padding-right: 2rem; -} -:is([dir="rtl"] .rtl\:text-left) { - text-align: left; -} -:is([dir="rtl"] .rtl\:before\:right-0)::before { - content: var(--tw-content); - right: 0px; -} -:is([dir="rtl"] .rtl\:before\:rotate-180)::before { - content: var(--tw-content); - --tw-rotate: 180deg; - transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -@media (prefers-contrast: more) { - - .contrast-more\:border { - border-width: 1px; - } - - .contrast-more\:border-t { - border-top-width: 1px; - } - - .contrast-more\:border-current { - border-color: currentColor; - } - - .contrast-more\:border-gray-800 { - --tw-border-opacity: 1; - border-color: rgb(31 41 55 / var(--tw-border-opacity)); - } - - .contrast-more\:border-gray-900 { - --tw-border-opacity: 1; - border-color: rgb(17 24 39 / var(--tw-border-opacity)); - } - - .contrast-more\:border-neutral-400 { - --tw-border-opacity: 1; - border-color: rgb(163 163 163 / var(--tw-border-opacity)); - } - - .contrast-more\:border-primary-500 { - --tw-border-opacity: 1; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / var(--tw-border-opacity)); - } - - .contrast-more\:border-transparent { - border-color: transparent; - } - - .contrast-more\:font-bold { - font-weight: 700; - } - - .contrast-more\:text-current { - color: currentColor; - } - - .contrast-more\:text-gray-700 { - --tw-text-opacity: 1; - color: rgb(55 65 81 / var(--tw-text-opacity)); - } - - .contrast-more\:text-gray-800 { - --tw-text-opacity: 1; - color: rgb(31 41 55 / var(--tw-text-opacity)); - } - - .contrast-more\:text-gray-900 { - --tw-text-opacity: 1; - color: rgb(17 24 39 / var(--tw-text-opacity)); - } - - .contrast-more\:underline { - text-decoration-line: underline; - } - - .contrast-more\:shadow-\[0_0_0_1px_\#000\] { - --tw-shadow: 0 0 0 1px #000; - --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } - - .contrast-more\:shadow-none { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } - - .contrast-more\:hover\:border-gray-900:hover { - --tw-border-opacity: 1; - border-color: rgb(17 24 39 / var(--tw-border-opacity)); - } -} -:is(html[class~="dark"] .dark\:block) { - display: block; -} -:is(html[class~="dark"] .dark\:hidden) { - display: none; -} -:is(html[class~="dark"] .dark\:border-blue-200\/30) { - border-color: rgb(191 219 254 / 0.3); -} -:is(html[class~="dark"] .dark\:border-gray-100\/20) { - border-color: rgb(243 244 246 / 0.2); -} -:is(html[class~="dark"] .dark\:border-gray-400) { - --tw-border-opacity: 1; - border-color: rgb(156 163 175 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:border-neutral-700) { - --tw-border-opacity: 1; - border-color: rgb(64 64 64 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:border-neutral-800) { - --tw-border-opacity: 1; - border-color: rgb(38 38 38 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:border-orange-400\/30) { - border-color: rgb(251 146 60 / 0.3); -} -:is(html[class~="dark"] .dark\:border-red-200\/30) { - border-color: rgb(254 202 202 / 0.3); -} -:is(html[class~="dark"] .dark\:border-white\/10) { - border-color: rgb(255 255 255 / 0.1); -} -:is(html[class~="dark"] .dark\:border-yellow-200\/30) { - border-color: rgb(254 240 138 / 0.3); -} -:is(html[class~="dark"] .dark\:bg-black\/60) { - background-color: rgb(0 0 0 / 0.6); -} -:is(html[class~="dark"] .dark\:bg-blue-900\/30) { - background-color: rgb(30 58 138 / 0.3); -} -:is(html[class~="dark"] .dark\:bg-dark) { - --tw-bg-opacity: 1; - background-color: rgb(17 17 17 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:bg-dark\/50) { - background-color: rgb(17 17 17 / 0.5); -} -:is(html[class~="dark"] .dark\:bg-gray-50\/10) { - background-color: rgb(249 250 251 / 0.1); -} -:is(html[class~="dark"] .dark\:bg-neutral-800) { - --tw-bg-opacity: 1; - background-color: rgb(38 38 38 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:bg-neutral-900) { - --tw-bg-opacity: 1; - background-color: rgb(23 23 23 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:bg-orange-400\/20) { - background-color: rgb(251 146 60 / 0.2); -} -:is(html[class~="dark"] .dark\:bg-primary-300\/10) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 77% / 0.1); -} -:is(html[class~="dark"] .dark\:bg-primary-400\/10) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 66% / 0.1); -} -:is(html[class~="dark"] .dark\:bg-primary-600) { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:bg-red-900\/30) { - background-color: rgb(127 29 29 / 0.3); -} -:is(html[class~="dark"] .dark\:bg-yellow-700\/30) { - background-color: rgb(161 98 7 / 0.3); -} -:is(html[class~="dark"] .dark\:from-gray-100) { - --tw-gradient-from: #f3f4f6 var(--tw-gradient-from-position); - --tw-gradient-to: rgb(243 244 246 / 0) var(--tw-gradient-to-position); - --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); -} -:is(html[class~="dark"] .dark\:to-gray-400) { - --tw-gradient-to: #9ca3af var(--tw-gradient-to-position); -} -:is(html[class~="dark"] .dark\:text-blue-200) { - --tw-text-opacity: 1; - color: rgb(191 219 254 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-gray-100) { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-gray-200) { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-gray-300) { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-gray-400) { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-gray-50) { - --tw-text-opacity: 1; - color: rgb(249 250 251 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-neutral-200) { - --tw-text-opacity: 1; - color: rgb(229 229 229 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-neutral-400) { - --tw-text-opacity: 1; - color: rgb(163 163 163 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-orange-300) { - --tw-text-opacity: 1; - color: rgb(253 186 116 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-primary-600) { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-red-200) { - --tw-text-opacity: 1; - color: rgb(254 202 202 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-slate-100) { - --tw-text-opacity: 1; - color: rgb(241 245 249 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:text-yellow-200) { - --tw-text-opacity: 1; - color: rgb(254 240 138 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:opacity-80) { - opacity: 0.8; -} -:is(html[class~="dark"] .dark\:shadow-\[0_-12px_16px_\#111\]) { - --tw-shadow: 0 -12px 16px #111; - --tw-shadow-colored: 0 -12px 16px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -:is(html[class~="dark"] .dark\:shadow-\[0_-1px_0_rgba\(255\2c 255\2c 255\2c \.1\)_inset\]) { - --tw-shadow: 0 -1px 0 rgba(255,255,255,.1) inset; - --tw-shadow-colored: inset 0 -1px 0 var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -:is(html[class~="dark"] .dark\:shadow-none) { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -:is(html[class~="dark"] .dark\:ring-white\/20) { - --tw-ring-color: rgb(255 255 255 / 0.2); -} -:is(html[class~="dark"] .dark\:placeholder\:text-gray-400)::-moz-placeholder { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:placeholder\:text-gray-400)::placeholder { - --tw-text-opacity: 1; - color: rgb(156 163 175 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:before\:bg-neutral-800)::before { - content: var(--tw-content); - --tw-bg-opacity: 1; - background-color: rgb(38 38 38 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:before\:invert)::before { - content: var(--tw-content); - --tw-invert: invert(100%); - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); -} -:is(html[class~="dark"] .dark\:hover\:border-gray-100:hover) { - --tw-border-opacity: 1; - border-color: rgb(243 244 246 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:border-gray-600:hover) { - --tw-border-opacity: 1; - border-color: rgb(75 85 99 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:border-neutral-500:hover) { - --tw-border-opacity: 1; - border-color: rgb(115 115 115 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:border-neutral-700:hover) { - --tw-border-opacity: 1; - border-color: rgb(64 64 64 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:border-neutral-800:hover) { - --tw-border-opacity: 1; - border-color: rgb(38 38 38 / var(--tw-border-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:bg-gray-100\/5:hover) { - background-color: rgb(243 244 246 / 0.05); -} -:is(html[class~="dark"] .dark\:hover\:bg-neutral-700:hover) { - --tw-bg-opacity: 1; - background-color: rgb(64 64 64 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:bg-neutral-800:hover) { - --tw-bg-opacity: 1; - background-color: rgb(38 38 38 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:bg-neutral-900:hover) { - --tw-bg-opacity: 1; - background-color: rgb(23 23 23 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:bg-primary-100\/5:hover) { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 94% / 0.05); -} -:is(html[class~="dark"] .dark\:hover\:bg-primary-700:hover) { - --tw-bg-opacity: 1; - background-color: hsl(var(--primary-hue) var(--primary-saturation) 39% / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .hover\:dark\:bg-primary-500\/10):hover { - background-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / 0.1); -} -:is(html[class~="dark"] .dark\:hover\:text-gray-100:hover) { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:text-gray-200:hover) { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:text-gray-300:hover) { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:text-gray-50:hover) { - --tw-text-opacity: 1; - color: rgb(249 250 251 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:text-neutral-50:hover) { - --tw-text-opacity: 1; - color: rgb(250 250 250 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:text-white:hover) { - --tw-text-opacity: 1; - color: rgb(255 255 255 / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .hover\:dark\:text-primary-600):hover { - --tw-text-opacity: 1; - color: hsl(var(--primary-hue) var(--primary-saturation) 45% / var(--tw-text-opacity)); -} -:is(html[class~="dark"] .dark\:hover\:shadow-none:hover) { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -:is(html[class~="dark"] .dark\:focus\:bg-dark:focus) { - --tw-bg-opacity: 1; - background-color: rgb(17 17 17 / var(--tw-bg-opacity)); -} -:is(html[class~="dark"] .dark\:focus\:ring-primary-800:focus) { - --tw-ring-opacity: 1; - --tw-ring-color: hsl(var(--primary-hue) var(--primary-saturation) 32% / var(--tw-ring-opacity)); -} -@media (prefers-contrast: more) { - - :is(html[class~="dark"] .contrast-more\:dark\:border-current) { - border-color: currentColor; - } - - :is(html[class~="dark"] .contrast-more\:dark\:border-gray-50) { - --tw-border-opacity: 1; - border-color: rgb(249 250 251 / var(--tw-border-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:border-neutral-400) { - --tw-border-opacity: 1; - border-color: rgb(163 163 163 / var(--tw-border-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:border-primary-500) { - --tw-border-opacity: 1; - border-color: hsl(var(--primary-hue) var(--primary-saturation) 50% / var(--tw-border-opacity)); - } - - :is(html[class~="dark"] .dark\:contrast-more\:border-neutral-400) { - --tw-border-opacity: 1; - border-color: rgb(163 163 163 / var(--tw-border-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:text-current) { - color: currentColor; - } - - :is(html[class~="dark"] .contrast-more\:dark\:text-gray-100) { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:text-gray-300) { - --tw-text-opacity: 1; - color: rgb(209 213 219 / var(--tw-text-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:text-gray-50) { - --tw-text-opacity: 1; - color: rgb(249 250 251 / var(--tw-text-opacity)); - } - - :is(html[class~="dark"] .contrast-more\:dark\:shadow-\[0_0_0_1px_\#fff\]) { - --tw-shadow: 0 0 0 1px #fff; - --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } - - :is(html[class~="dark"] .contrast-more\:dark\:shadow-none) { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } - - :is(html[class~="dark"] .contrast-more\:dark\:hover\:border-gray-50:hover) { - --tw-border-opacity: 1; - border-color: rgb(249 250 251 / var(--tw-border-opacity)); - } -} -@media print { - - .print\:hidden { - display: none; - } - - .print\:bg-transparent { - background-color: transparent; - } -} -@media not all and (min-width: 1280px) { - - .max-xl\:hidden { - display: none; - } -} -@media not all and (min-width: 1024px) { - - .max-lg\:min-h-\[340px\] { - min-height: 340px; - } -} -@media not all and (min-width: 768px) { - - .max-md\:hidden { - display: none; - } - - .max-md\:min-h-\[340px\] { - min-height: 340px; - } - - .max-md\:\[transform\:translate3d\(0\2c -100\%\2c 0\)\] { - transform: translate3d(0,-100%,0); - } -} -@media (min-width: 640px) { - - .sm\:block { - display: block; - } - - .sm\:flex { - display: flex; - } - - .sm\:w-\[110\%\] { - width: 110%; - } - - .sm\:grid-cols-2 { - grid-template-columns: repeat(2, minmax(0, 1fr)); - } - - .sm\:items-start { - align-items: flex-start; - } - - .sm\:text-xl { - font-size: 1.25rem; - } -} -@media (min-width: 768px) { - - .md\:sticky { - position: sticky; - } - - .md\:top-16 { - top: 4rem; - } - - .md\:inline-block { - display: inline-block; - } - - .md\:hidden { - display: none; - } - - .md\:aspect-\[1\.1\/1\] { - aspect-ratio: 1.1/1; - } - - .md\:h-\[calc\(100vh-var\(--navbar-height\)-var\(--menu-height\)\)\] { - height: calc(100vh - var(--navbar-height) - var(--menu-height)); - } - - .md\:max-h-\[min\(calc\(100vh-5rem-env\(safe-area-inset-bottom\)\)\2c 400px\)\] { - max-height: min(calc(100vh - 5rem - env(safe-area-inset-bottom)),400px); - } - - .md\:w-64 { - width: 16rem; - } - - .md\:shrink-0 { - flex-shrink: 0; - } - - .md\:justify-start { - justify-content: flex-start; - } - - .md\:self-start { - align-self: flex-start; - } - - .md\:px-12 { - padding-left: 3rem; - padding-right: 3rem; - } - - .md\:pt-12 { - padding-top: 3rem; - } - - .md\:text-5xl { - font-size: 3rem; - } - - .md\:text-lg { - font-size: 1.125rem; - } - - .md\:text-sm { - font-size: .875rem; - } - - :is([dir="ltr"] .ltr\:md\:left-auto) { - left: auto; - } - - :is([dir="rtl"] .rtl\:md\:right-auto) { - right: auto; - } -} -@media (min-width: 1024px) { - - .lg\:grid-cols-3 { - grid-template-columns: repeat(3, minmax(0, 1fr)); - } -} -@media (min-width: 1280px) { - - .xl\:block { - display: block; - } -} diff --git a/public/css/custom.css b/public/css/custom.css deleted file mode 100644 index e69de29..0000000 diff --git a/public/docs/apiendpoints/blockchain/index.html b/public/docs/apiendpoints/blockchain/index.html deleted file mode 100644 index 6065210..0000000 --- a/public/docs/apiendpoints/blockchain/index.html +++ /dev/null @@ -1,641 +0,0 @@ - - - - - - - - - - - - - - Blockchain Information – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
- -
Blockchain Information
-
- -
-

Blockchain Information

-

List of endpoints for get current details of Pactus blockchain.

-

Get Circulation Supply (free, no auth) -

Returns current circulation supply.

- - - - - - - - - - - - - - - - - - -
-
- ℹ️ -
- -
-
-

Circulation Supply formula (Pactus FAQs):

-

Circulation supply = (Foundation out + VC Allocation out + Team and Operations out + Community out + Team and Operations (Hot) Wallet out + Community (Hot) Wallet out) + Minted - Staked - (Hot)

- -
-
-
- -
https://api.pacviewer.com/v1/circulation_supply
- -
-
-
-
- - - - - - - -
- - -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/apiendpoints/index.html b/public/docs/apiendpoints/index.html deleted file mode 100644 index ceb1380..0000000 --- a/public/docs/apiendpoints/index.html +++ /dev/null @@ -1,424 +0,0 @@ - - - - - - - - - - - - - - 🚀 API Endpoints – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
-
🚀 API Endpoints
-
- -
-

🚀 API Endpoints

-

Explore the following sections to API Endpoints:

- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/apiendpoints/index.xml b/public/docs/apiendpoints/index.xml deleted file mode 100644 index 9bf4d74..0000000 --- a/public/docs/apiendpoints/index.xml +++ /dev/null @@ -1,216 +0,0 @@ - - - PacViewer Documentation – 🚀 API Endpoints - http://localhost:1313/docs/apiendpoints/ - Recent content in 🚀 API Endpoints on PacViewer Documentation - Hugo -- gohugo.io - en - - - - - - - - - - - Blockchain Information - http://localhost:1313/docs/apiendpoints/blockchain/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/apiendpoints/blockchain/ - - - - <p>List of endpoints for get current details of Pactus blockchain.</p> -<h3>Get Circulation Supply (free, no auth)<span class="absolute -mt-20" id="get-circulation-supply-free-no-auth"></span> - <a href="#get-circulation-supply-free-no-auth" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Returns current circulation supply.</p> - - - - - - - - - - - - - - - - - - -<div class="overflow-x-auto mt-6 flex rounded-lg border py-2 ltr:pr-4 rtl:pl-4 contrast-more:border-current contrast-more:dark:border-current border-blue-200 bg-blue-100 text-blue-900 dark:border-blue-200/30 dark:bg-blue-900/30 dark:text-blue-200"> - <div class="ltr:pl-3 ltr:pr-2 rtl:pr-3 rtl:pl-2"><div class="select-none text-xl" style="font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"> - ℹ️ - </div></div> - - <div class="w-full min-w-0 leading-7"> - <div class="mt-6 leading-7 first:mt-0"> - <p>Circulation Supply formula (<a href="https://pactus.org/about/faq/#genesis_allocation" target="_blank" rel="noopener">Pactus FAQs</a>):</p> -<p><strong>Circulation supply =</strong> (Foundation out + VC Allocation out + Team and Operations out + Community out + Team and Operations (Hot) Wallet out + Community (Hot) Wallet out) + Minted - Staked - (Hot)</p> - - </div> - </div> -</div> - -<div class="code-block relative mt-6 first:mt-0 group/code"><pre><code>https://api.pacviewer.com/v1/circulation_supply</code></pre><div class="opacity-0 transition group-hover/code:opacity-100 flex gap-1 absolute m-[11px] right-0 top-0"> - <button - class="code-copy-btn group/copybtn transition-all active:opacity-50 bg-primary-700/5 border border-black/5 text-gray-600 hover:text-gray-900 rounded-md p-1.5 dark:bg-primary-300/10 dark:border-white/10 dark:text-gray-400 dark:hover:text-gray-50" - title="Copy code" - > - <div class="group-[.copied]/copybtn:hidden copy-icon pointer-events-none h-4 w-4"></div> - <div class="hidden group-[.copied]/copybtn:block success-icon pointer-events-none h-4 w-4"></div> - </button> - </div> -</div> -<div class="mt-4 flex w-max min-w-full border-b border-gray-200 pb-px dark:border-neutral-800"><button - class="tabs-toggle data-[state=selected]:border-primary-500 data-[state=selected]:text-primary-600 mr-2 rounded-t p-2 font-medium leading-5 transition-colors -mb-0.5 select-none border-b-2 border-transparent text-gray-600 hover:border-gray-200 hover:text-black dark:text-gray-200 dark:hover:border-neutral-800 dark:hover:text-white" - role="tab" - type="button" - aria-controls="tabs-panel-0" - aria-selected="true" - tabindex="0" - data-state="selected" - >Request</button><button - class="tabs-toggle data-[state=selected]:border-primary-500 data-[state=selected]:text-primary-600 mr-2 rounded-t p-2 font-medium leading-5 transition-colors -mb-0.5 select-none border-b-2 border-transparent text-gray-600 hover:border-gray-200 hover:text-black dark:text-gray-200 dark:hover:border-neutral-800 dark:hover:text-white" - role="tab" - type="button" - aria-controls="tabs-panel-1" - - - - > Response</button></div> -<div> - - <div - class="tabs-panel rounded pt-6 hidden data-[state=selected]:block" - id="tabs-panel-0" - role="tabpanel" - tabindex="0" - data-state="selected" -> - <p><strong>Query Params</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> -<p><strong>Headers</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> -<p><strong>Body</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> - -</div> - - <div - class="tabs-panel rounded pt-6 hidden data-[state=selected]:block" - id="tabs-panel-1" - role="tabpanel" - - -> - <p><strong>Status ok 200</strong></p> -<div class="code-block relative mt-6 first:mt-0 group/code"><div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="p">{</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;status&#34;</span><span class="p">:</span> <span class="mi">200</span><span class="p">,</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;message&#34;</span><span class="p">:</span> <span class="s2">&#34;OK&#34;</span><span class="p">,</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;data&#34;</span><span class="p">:</span> <span class="p">{</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;value&#34;</span><span class="p">:</span> <span class="mf">222983.605938173</span> -</span></span><span class="line"><span class="cl"> <span class="p">}</span> -</span></span><span class="line"><span class="cl"><span class="p">}</span></span></span></code></pre></div></div><div class="opacity-0 transition group-hover/code:opacity-100 flex gap-1 absolute m-[11px] right-0 top-0"> - <button - class="code-copy-btn group/copybtn transition-all active:opacity-50 bg-primary-700/5 border border-black/5 text-gray-600 hover:text-gray-900 rounded-md p-1.5 dark:bg-primary-300/10 dark:border-white/10 dark:text-gray-400 dark:hover:text-gray-50" - title="Copy code" - > - <div class="group-[.copied]/copybtn:hidden copy-icon pointer-events-none h-4 w-4"></div> - <div class="hidden group-[.copied]/copybtn:block success-icon pointer-events-none h-4 w-4"></div> - </button> - </div> -</div> -</div> - - - -</div> - - - - - - - diff --git a/public/docs/gettingstarted/create-account/index.html b/public/docs/gettingstarted/create-account/index.html deleted file mode 100644 index 5b283fe..0000000 --- a/public/docs/gettingstarted/create-account/index.html +++ /dev/null @@ -1,429 +0,0 @@ - - - - - - - - - - - - - - Create Account – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
- -
Create Account
-
- -
-

Create Account

-

coming soon…

- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/gettingstarted/endpoints/index.html b/public/docs/gettingstarted/endpoints/index.html deleted file mode 100644 index 0ef9213..0000000 --- a/public/docs/gettingstarted/endpoints/index.html +++ /dev/null @@ -1,456 +0,0 @@ - - - - - - - - - - - - - - API Endpoints – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
- -
API Endpoints
-
- -
-

API Endpoints

-

An API key 🚀 generated on PacViewer​ can be used across all mainnet and testnet explorers.

-

Similarly, all endpoints and parameter formatting remain the same across testnet explorers, you are only required to change the relevant API endpoint URL as follows.

- - - - - - - - - - - - - - - - - -
NetworkEndpoint
Mainnethttps://api.pacviewer.com
Testnet-
- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/gettingstarted/getting-api-key/index.html b/public/docs/gettingstarted/getting-api-key/index.html deleted file mode 100644 index 8a00357..0000000 --- a/public/docs/gettingstarted/getting-api-key/index.html +++ /dev/null @@ -1,433 +0,0 @@ - - - - - - - - - - - - - - Getting API Key – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
- -
Getting API Key
-
- -
-

Getting API Key

-

coming soon…

- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/gettingstarted/index.html b/public/docs/gettingstarted/index.html deleted file mode 100644 index 60b4831..0000000 --- a/public/docs/gettingstarted/index.html +++ /dev/null @@ -1,428 +0,0 @@ - - - - - - - - - - - - - - 🏃 Getting Started – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
-
🏃 Getting Started
-
- -
-

🏃 Getting Started

-

Explore the following sections to create account, API key and see endpoints:

- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/gettingstarted/index.xml b/public/docs/gettingstarted/index.xml deleted file mode 100644 index 4d6ecb4..0000000 --- a/public/docs/gettingstarted/index.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - PacViewer Documentation – 🏃 Getting Started - http://localhost:1313/docs/gettingstarted/ - Recent content in 🏃 Getting Started on PacViewer Documentation - Hugo -- gohugo.io - en - - - - - - - - - - - Create Account - http://localhost:1313/docs/gettingstarted/create-account/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/create-account/ - - - - <p>coming soon&hellip;</p> - - - - - - Getting API Key - http://localhost:1313/docs/gettingstarted/getting-api-key/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/getting-api-key/ - - - - <p>coming soon&hellip;</p> - - - - - - API Endpoints - http://localhost:1313/docs/gettingstarted/endpoints/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/endpoints/ - - - - <p>An API key 🚀 generated on PacViewer​ can be used across all mainnet and testnet explorers.</p> -<p>Similarly, all endpoints and parameter formatting remain the same across testnet explorers, you are only required to change the relevant API endpoint URL as follows.</p> -<table> -<thead> -<tr> -<th>Network</th> -<th>Endpoint</th> -</tr> -</thead> -<tbody> -<tr> -<td>Mainnet</td> -<td><a href="https://api.pacviewer.com" target="_blank" rel="noopener">https://api.pacviewer.com</a></td> -</tr> -<tr> -<td>Testnet</td> -<td>-</td> -</tr> -</tbody> -</table> - - - - - - diff --git a/public/docs/index.html b/public/docs/index.html deleted file mode 100644 index 2a0a5c8..0000000 --- a/public/docs/index.html +++ /dev/null @@ -1,422 +0,0 @@ - - - - - - - - - - - - - - Introduction – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -
-
-
Documentation
-
- -
-

Introduction

-

👋 Hello! Welcome to the PacViewer documentation!

- -
- -
Last updated on
- - -
-
-
- - - - - - - - - - - - diff --git a/public/docs/index.xml b/public/docs/index.xml deleted file mode 100644 index a05c099..0000000 --- a/public/docs/index.xml +++ /dev/null @@ -1,277 +0,0 @@ - - - PacViewer Documentation – Introduction - http://localhost:1313/docs/ - Recent content in Introduction on PacViewer Documentation - Hugo -- gohugo.io - en - - - - - - - - - - - Create Account - http://localhost:1313/docs/gettingstarted/create-account/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/create-account/ - - - - <p>coming soon&hellip;</p> - - - - - - Getting API Key - http://localhost:1313/docs/gettingstarted/getting-api-key/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/getting-api-key/ - - - - <p>coming soon&hellip;</p> - - - - - - API Endpoints - http://localhost:1313/docs/gettingstarted/endpoints/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/gettingstarted/endpoints/ - - - - <p>An API key 🚀 generated on PacViewer​ can be used across all mainnet and testnet explorers.</p> -<p>Similarly, all endpoints and parameter formatting remain the same across testnet explorers, you are only required to change the relevant API endpoint URL as follows.</p> -<table> -<thead> -<tr> -<th>Network</th> -<th>Endpoint</th> -</tr> -</thead> -<tbody> -<tr> -<td>Mainnet</td> -<td><a href="https://api.pacviewer.com" target="_blank" rel="noopener">https://api.pacviewer.com</a></td> -</tr> -<tr> -<td>Testnet</td> -<td>-</td> -</tr> -</tbody> -</table> - - - - - - Blockchain Information - http://localhost:1313/docs/apiendpoints/blockchain/ - Mon, 01 Jan 0001 00:00:00 +0000 - - http://localhost:1313/docs/apiendpoints/blockchain/ - - - - <p>List of endpoints for get current details of Pactus blockchain.</p> -<h3>Get Circulation Supply (free, no auth)<span class="absolute -mt-20" id="get-circulation-supply-free-no-auth"></span> - <a href="#get-circulation-supply-free-no-auth" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Returns current circulation supply.</p> - - - - - - - - - - - - - - - - - - -<div class="overflow-x-auto mt-6 flex rounded-lg border py-2 ltr:pr-4 rtl:pl-4 contrast-more:border-current contrast-more:dark:border-current border-blue-200 bg-blue-100 text-blue-900 dark:border-blue-200/30 dark:bg-blue-900/30 dark:text-blue-200"> - <div class="ltr:pl-3 ltr:pr-2 rtl:pr-3 rtl:pl-2"><div class="select-none text-xl" style="font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';"> - ℹ️ - </div></div> - - <div class="w-full min-w-0 leading-7"> - <div class="mt-6 leading-7 first:mt-0"> - <p>Circulation Supply formula (<a href="https://pactus.org/about/faq/#genesis_allocation" target="_blank" rel="noopener">Pactus FAQs</a>):</p> -<p><strong>Circulation supply =</strong> (Foundation out + VC Allocation out + Team and Operations out + Community out + Team and Operations (Hot) Wallet out + Community (Hot) Wallet out) + Minted - Staked - (Hot)</p> - - </div> - </div> -</div> - -<div class="code-block relative mt-6 first:mt-0 group/code"><pre><code>https://api.pacviewer.com/v1/circulation_supply</code></pre><div class="opacity-0 transition group-hover/code:opacity-100 flex gap-1 absolute m-[11px] right-0 top-0"> - <button - class="code-copy-btn group/copybtn transition-all active:opacity-50 bg-primary-700/5 border border-black/5 text-gray-600 hover:text-gray-900 rounded-md p-1.5 dark:bg-primary-300/10 dark:border-white/10 dark:text-gray-400 dark:hover:text-gray-50" - title="Copy code" - > - <div class="group-[.copied]/copybtn:hidden copy-icon pointer-events-none h-4 w-4"></div> - <div class="hidden group-[.copied]/copybtn:block success-icon pointer-events-none h-4 w-4"></div> - </button> - </div> -</div> -<div class="mt-4 flex w-max min-w-full border-b border-gray-200 pb-px dark:border-neutral-800"><button - class="tabs-toggle data-[state=selected]:border-primary-500 data-[state=selected]:text-primary-600 mr-2 rounded-t p-2 font-medium leading-5 transition-colors -mb-0.5 select-none border-b-2 border-transparent text-gray-600 hover:border-gray-200 hover:text-black dark:text-gray-200 dark:hover:border-neutral-800 dark:hover:text-white" - role="tab" - type="button" - aria-controls="tabs-panel-0" - aria-selected="true" - tabindex="0" - data-state="selected" - >Request</button><button - class="tabs-toggle data-[state=selected]:border-primary-500 data-[state=selected]:text-primary-600 mr-2 rounded-t p-2 font-medium leading-5 transition-colors -mb-0.5 select-none border-b-2 border-transparent text-gray-600 hover:border-gray-200 hover:text-black dark:text-gray-200 dark:hover:border-neutral-800 dark:hover:text-white" - role="tab" - type="button" - aria-controls="tabs-panel-1" - - - - > Response</button></div> -<div> - - <div - class="tabs-panel rounded pt-6 hidden data-[state=selected]:block" - id="tabs-panel-0" - role="tabpanel" - tabindex="0" - data-state="selected" -> - <p><strong>Query Params</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> -<p><strong>Headers</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> -<p><strong>Body</strong></p> -<table> -<thead> -<tr> -<th>Key</th> -<th>Description</th> -<th>Example</th> -</tr> -</thead> -<tbody> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -<tr> -<td></td> -<td></td> -<td></td> -</tr> -</tbody> -</table> - -</div> - - <div - class="tabs-panel rounded pt-6 hidden data-[state=selected]:block" - id="tabs-panel-1" - role="tabpanel" - - -> - <p><strong>Status ok 200</strong></p> -<div class="code-block relative mt-6 first:mt-0 group/code"><div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="p">{</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;status&#34;</span><span class="p">:</span> <span class="mi">200</span><span class="p">,</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;message&#34;</span><span class="p">:</span> <span class="s2">&#34;OK&#34;</span><span class="p">,</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;data&#34;</span><span class="p">:</span> <span class="p">{</span> -</span></span><span class="line"><span class="cl"> <span class="nt">&#34;value&#34;</span><span class="p">:</span> <span class="mf">222983.605938173</span> -</span></span><span class="line"><span class="cl"> <span class="p">}</span> -</span></span><span class="line"><span class="cl"><span class="p">}</span></span></span></code></pre></div></div><div class="opacity-0 transition group-hover/code:opacity-100 flex gap-1 absolute m-[11px] right-0 top-0"> - <button - class="code-copy-btn group/copybtn transition-all active:opacity-50 bg-primary-700/5 border border-black/5 text-gray-600 hover:text-gray-900 rounded-md p-1.5 dark:bg-primary-300/10 dark:border-white/10 dark:text-gray-400 dark:hover:text-gray-50" - title="Copy code" - > - <div class="group-[.copied]/copybtn:hidden copy-icon pointer-events-none h-4 w-4"></div> - <div class="hidden group-[.copied]/copybtn:block success-icon pointer-events-none h-4 w-4"></div> - </button> - </div> -</div> -</div> - - - -</div> - - - - - - - diff --git a/public/en.search-data.json b/public/en.search-data.json deleted file mode 100644 index be263a4..0000000 --- a/public/en.search-data.json +++ /dev/null @@ -1 +0,0 @@ -{"/docs/":{"data":{"":"👋 Hello! Welcome to the PacViewer documentation!"},"title":"Documentation"},"/docs/apiendpoints/":{"data":{"":"Explore the following sections to API Endpoints:\nBlockchain Information "},"title":"🚀 API Endpoints"},"/docs/apiendpoints/blockchain/":{"data":{"":"","#":"List of endpoints for get current details of Pactus blockchain.\nGet Circulation Supply (free, no auth) Returns current circulation supply.\nℹ️ Circulation supply = (Foundation out + VC Allocation out + Team and Operations out + Community out + Team and Operations (Hot) Wallet out + Community (Hot) Wallet out) + Minted - Staked - (Hot) https://api.pacviewer.com/v1/circulation_supply Request Response Query Params\nKey Description Example Headers\nKey Description Example Body\nKey Description Example Status ok 200\n{ \"status\": 200, \"message\": \"OK\", \"data\": { \"value\": 222983.605938173 } } "},"title":"Blockchain Information"},"/docs/gettingstarted/":{"data":{"":"Explore the following sections to create account, API key and see endpoints:\nCreate Account Getting API Key API Endpoints "},"title":"🏃 Getting Started"},"/docs/gettingstarted/create-account/":{"data":{"":"coming soon…"},"title":"Create Account"},"/docs/gettingstarted/endpoints/":{"data":{"":"An API key 🚀 generated on PacViewer​ can be used across all mainnet and testnet explorers.\nSimilarly, all endpoints and parameter formatting remain the same across testnet explorers, you are only required to change the relevant API endpoint URL as follows.\nNetwork Endpoint Mainnet https://api.pacviewer.com Testnet - "},"title":"API Endpoints"},"/docs/gettingstarted/getting-api-key/":{"data":{"":"coming soon…"},"title":"Getting API Key"}} \ No newline at end of file diff --git a/public/en.search.js b/public/en.search.js deleted file mode 100644 index f26669c..0000000 --- a/public/en.search.js +++ /dev/null @@ -1,365 +0,0 @@ -// Search functionality using FlexSearch. - -// Change shortcut key to cmd+k on Mac, iPad or iPhone. -document.addEventListener("DOMContentLoaded", function () { - if (/iPad|iPhone|Macintosh/.test(navigator.userAgent)) { - // select the kbd element under the .search-wrapper class - const keys = document.querySelectorAll(".search-wrapper kbd"); - keys.forEach(key => { - key.innerHTML = 'K'; - }); - } -}); - -// Render the search data as JSON. -// -// -// -// - -(function () { - const searchDataURL = '/en.search-data.json'; - - const inputElements = document.querySelectorAll('.search-input'); - for (const el of inputElements) { - el.addEventListener('focus', init); - el.addEventListener('keyup', search); - el.addEventListener('keydown', handleKeyDown); - } - - // Get the search wrapper, input, and results elements. - function getActiveSearchElement() { - const inputs = Array.from(document.querySelectorAll('.search-wrapper')).filter(el => el.clientHeight > 0); - if (inputs.length === 1) { - return { - wrapper: inputs[0], - inputElement: inputs[0].querySelector('.search-input'), - resultsElement: inputs[0].querySelector('.search-results') - }; - } - return undefined; - } - - const INPUTS = ['input', 'select', 'button', 'textarea'] - - // Focus the search input when pressing ctrl+k/cmd+k or /. - document.addEventListener('keydown', function (e) { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - - const activeElement = document.activeElement; - const tagName = activeElement && activeElement.tagName; - if ( - inputElement === activeElement || - !tagName || - INPUTS.includes(tagName) || - (activeElement && activeElement.isContentEditable)) - return; - - if ( - e.key === '/' || - (e.key === 'k' && - (e.metaKey /* for Mac */ || /* for non-Mac */ e.ctrlKey)) - ) { - e.preventDefault(); - inputElement.focus(); - } else if (e.key === 'Escape' && inputElement.value) { - inputElement.blur(); - } - }); - - // Dismiss the search results when clicking outside the search box. - document.addEventListener('mousedown', function (e) { - const { inputElement, resultsElement } = getActiveSearchElement(); - if (!inputElement || !resultsElement) return; - if ( - e.target !== inputElement && - e.target !== resultsElement && - !resultsElement.contains(e.target) - ) { - hideSearchResults(); - } - }); - - // Get the currently active result and its index. - function getActiveResult() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return { result: undefined, index: -1 }; - - const result = resultsElement.querySelector('.active'); - if (!result) return { result: undefined, index: -1 }; - - const index = parseInt(result.dataset.index, 10); - return { result, index }; - } - - // Set the active result by index. - function setActiveResult(index) { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - - const { result: activeResult } = getActiveResult(); - activeResult && activeResult.classList.remove('active'); - const result = resultsElement.querySelector(`[data-index="${index}"]`); - if (result) { - result.classList.add('active'); - result.focus(); - } - } - - // Get the number of search results from the DOM. - function getResultsLength() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return 0; - return resultsElement.dataset.count; - } - - // Finish the search by hiding the results and clearing the input. - function finishSearch() { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - hideSearchResults(); - inputElement.value = ''; - inputElement.blur(); - } - - function hideSearchResults() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - resultsElement.classList.add('hidden'); - } - - // Handle keyboard events. - function handleKeyDown(e) { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - - const resultsLength = getResultsLength(); - const { result: activeResult, index: activeIndex } = getActiveResult(); - - switch (e.key) { - case 'ArrowUp': - e.preventDefault(); - if (activeIndex > 0) setActiveResult(activeIndex - 1); - break; - case 'ArrowDown': - e.preventDefault(); - if (activeIndex + 1 < resultsLength) setActiveResult(activeIndex + 1); - break; - case 'Enter': - e.preventDefault(); - if (activeResult) { - activeResult.click(); - } - finishSearch(); - case 'Escape': - e.preventDefault(); - hideSearchResults(); - inputElement.blur(); - break; - } - } - - // Initializes the search. - function init(e) { - e.target.removeEventListener('focus', init); - if (!(window.pageIndex && window.sectionIndex)) { - preloadIndex(); - } - } - - // Preload the search index. - async function preloadIndex() { - window.pageIndex = new FlexSearch.Document({ - tokenize: 'forward', - cache: 100, - document: { - id: 'id', - store: ['title'], - index: "content" - } - }); - - window.sectionIndex = new FlexSearch.Document({ - tokenize: 'forward', - cache: 100, - document: { - id: 'id', - store: ['title', 'content', 'url', 'display'], - index: "content", - tag: 'pageId' - } - }); - - const resp = await fetch(searchDataURL); - const data = await resp.json(); - let pageId = 0; - for (const route in data) { - let pageContent = ''; - ++pageId; - - for (const heading in data[route].data) { - const [hash, text] = heading.split('#'); - const url = route.trimEnd('/') + (hash ? '#' + hash : ''); - const title = text || data[route].title; - - const content = data[route].data[heading] || ''; - const paragraphs = content.split('\n').filter(Boolean); - - sectionIndex.add({ - id: url, - url, - title, - pageId: `page_${pageId}`, - content: title, - ...(paragraphs[0] && { display: paragraphs[0] }) - }); - - for (let i = 0; i < paragraphs.length; i++) { - sectionIndex.add({ - id: `${url}_${i}`, - url, - title, - pageId: `page_${pageId}`, - content: paragraphs[i] - }); - } - - pageContent += ` ${title} ${content}`; - } - - window.pageIndex.add({ - id: pageId, - title: data[route].title, - content: pageContent - }); - - } - } - - function search(e) { - const query = e.target.value; - if (!e.target.value) { - hideSearchResults(); - return; - } - - const { resultsElement } = getActiveSearchElement(); - while (resultsElement.firstChild) { - resultsElement.removeChild(resultsElement.firstChild); - } - resultsElement.classList.remove('hidden'); - - const pageResults = window.pageIndex.search(query, 5, { enrich: true, suggest: true })[0]?.result || []; - - const results = []; - const pageTitleMatches = {}; - - for (let i = 0; i < pageResults.length; i++) { - const result = pageResults[i]; - pageTitleMatches[i] = 0; - - // Show the top 5 results for each page - const sectionResults = window.sectionIndex.search(query, 5, { enrich: true, suggest: true, tag: `page_${result.id}` })[0]?.result || []; - let isFirstItemOfPage = true - const occurred = {} - - for (let j = 0; j < sectionResults.length; j++) { - const { doc } = sectionResults[j] - const isMatchingTitle = doc.display !== undefined - if (isMatchingTitle) { - pageTitleMatches[i]++ - } - const { url, title } = doc - const content = doc.display || doc.content - - if (occurred[url + '@' + content]) continue - occurred[url + '@' + content] = true - results.push({ - _page_rk: i, - _section_rk: j, - route: url, - prefix: isFirstItemOfPage ? result.doc.title : undefined, - children: { title, content } - }) - isFirstItemOfPage = false - } - } - const sortedResults = results - .sort((a, b) => { - // Sort by number of matches in the title. - if (a._page_rk === b._page_rk) { - return a._section_rk - b._section_rk - } - if (pageTitleMatches[a._page_rk] !== pageTitleMatches[b._page_rk]) { - return pageTitleMatches[b._page_rk] - pageTitleMatches[a._page_rk] - } - return a._page_rk - b._page_rk - }) - .map(res => ({ - id: `${res._page_rk}_${res._section_rk}`, - route: res.route, - prefix: res.prefix, - children: res.children - })); - displayResults(sortedResults, query); - } - - function displayResults(results, query) { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - - if (!results.length) { - resultsElement.innerHTML = `No results found.`; - return; - } - - // Highlight the query in the result text. - function highlightMatches(text, query) { - const escapedQuery = query.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&'); - const regex = new RegExp(escapedQuery, 'gi'); - return text.replace(regex, (match) => `${match}`); - } - - // Create a DOM element from the HTML string. - function createElement(str) { - const div = document.createElement('div'); - div.innerHTML = str.trim(); - return div.firstChild; - } - - function handleMouseMove(e) { - const target = e.target.closest('a'); - if (target) { - const active = resultsElement.querySelector('a.active'); - if (active) { - active.classList.remove('active'); - } - target.classList.add('active'); - } - } - - const fragment = document.createDocumentFragment(); - for (let i = 0; i < results.length; i++) { - const result = results[i]; - if (result.prefix) { - fragment.appendChild(createElement(` -
${result.prefix}
`)); - } - let li = createElement(` -
  • - -
    `+ highlightMatches(result.children.title, query) + `
    ` + - (result.children.content ? - `
    ` + highlightMatches(result.children.content, query) + `
    ` : '') + ` -
    -
  • `); - li.addEventListener('mousemove', handleMouseMove); - li.addEventListener('keydown', handleKeyDown); - li.querySelector('a').addEventListener('click', finishSearch); - fragment.appendChild(li); - } - resultsElement.appendChild(fragment); - resultsElement.dataset.count = results.length; - } -})(); diff --git a/public/en/index.html b/public/en/index.html deleted file mode 100644 index 1cf6932..0000000 --- a/public/en/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - http://localhost:1313/ - - - - - - diff --git a/public/en/sitemap.xml b/public/en/sitemap.xml deleted file mode 100644 index 3f5880c..0000000 --- a/public/en/sitemap.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - http://localhost:1313/docs/gettingstarted/create-account/ - 2024-04-12T16:19:45+03:30 - - http://localhost:1313/docs/gettingstarted/ - 2024-04-12T16:19:45+03:30 - - http://localhost:1313/docs/gettingstarted/getting-api-key/ - 2024-04-12T16:19:45+03:30 - - http://localhost:1313/docs/gettingstarted/endpoints/ - 2024-04-12T16:31:58+03:30 - - http://localhost:1313/docs/apiendpoints/ - 2024-04-12T16:19:45+03:30 - - http://localhost:1313/docs/apiendpoints/blockchain/ - 2024-04-12T16:19:45+03:30 - - http://localhost:1313/categories/ - - - - http://localhost:1313/docs/ - 2024-04-12T16:19:45+03:30 - - - - http://localhost:1313/ - 2024-04-12T16:19:45+03:30 - - - - http://localhost:1313/tags/ - - - - diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png deleted file mode 100644 index 0f2dd2b..0000000 Binary files a/public/favicon-16x16.png and /dev/null differ diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png deleted file mode 100644 index 5c1aea5..0000000 Binary files a/public/favicon-32x32.png and /dev/null differ diff --git a/public/favicon-dark.svg b/public/favicon-dark.svg deleted file mode 100644 index 3b49e35..0000000 --- a/public/favicon-dark.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 553fa15..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/favicon.svg b/public/favicon.svg deleted file mode 100644 index 6a08d10..0000000 --- a/public/favicon.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/public/images/logo-dark.svg b/public/images/logo-dark.svg deleted file mode 100644 index 2857264..0000000 --- a/public/images/logo-dark.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/public/images/logo.svg b/public/images/logo.svg deleted file mode 100644 index 131757c..0000000 --- a/public/images/logo.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/public/index.html b/public/index.html deleted file mode 100644 index 89073c2..0000000 --- a/public/index.html +++ /dev/null @@ -1,495 +0,0 @@ - - - - - - - - - - - - - - - PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - -
    -
    -
    -

    - Welcome to the PacViewer APIs documentation 🚀 -

    - -
    -
    -

    - PacViewer is the leading blockchain explorer, search, API 
    and analytics platform for Pactus Blockchain. -

    - -
    -
    - -
    -
    -
    - - -
    -

    - - Blockchain Data Querying -

    -

    Allow users to query blockchain data, such as transactions, blocks, and addresses, via your API. This feature enables businesses to retrieve specific data they need from the blockchain efficiently.

    -
    - - -
    -

    - - Real-Time Transaction Monitoring -

    -

    Provide real-time updates on transactions as they occur on the blockchain. This feature is essential for businesses that require instant notification of transactions relevant to their operations.

    -
    - - -
    -

    - - Address Balances and Transaction History -

    -

    Enable users to check the balance of any address on the blockchain and retrieve its transaction history. This feature is beneficial for businesses managing multiple addresses and monitoring their transaction activities.

    -
    - - -
    -

    - - Block Information Retrieval -

    -

    Offer detailed information about individual blocks on the blockchain, including timestamps, block height, and the number of transactions. This feature helps businesses track the progress of the blockchain and analyze its performance.

    -
    - - -
    -

    - - API Rate Limiting -

    -

    Implement rate limiting to ensure fair usage of the API by limiting the number of requests users can make within a specified time frame. This feature prevents abuse of the API resources and ensures its availability for all users.

    -
    - - -
    -

    - - Security and Authentication -

    -

    Implement robust security measures, including API key authentication, to ensure that only authorized users can access the API. This feature helps protect sensitive blockchain data and prevents unauthorized access.

    -
    - - -
    -

    - - Documentation and Support -

    -

    Provide comprehensive documentation for the API, including usage examples and code snippets, to help users integrate it into their applications easily. Additionally, offer responsive customer support to assist users with any issues or questions they may have.

    -
    - - -
    -

    - - Customizable Data Filters -

    -

    Extend support for multiple blockchains, allowing users to access data from different blockchain networks through a single API. This feature enables businesses to work with various blockchain platforms without needing to integrate separate APIs for each.

    -
    - - -
    - - -
    -
    -
    - - - - - - - - - - - - diff --git a/public/js/main.js b/public/js/main.js deleted file mode 100644 index 006ebd6..0000000 --- a/public/js/main.js +++ /dev/null @@ -1,275 +0,0 @@ -// Light / Dark theme toggle -(function () { - const defaultTheme = 'system' - - const themeToggleButtons = document.querySelectorAll(".theme-toggle"); - - // Change the icons of the buttons based on previous settings or system theme - if ( - localStorage.getItem("color-theme") === "dark" || - (!("color-theme" in localStorage) && - ((window.matchMedia("(prefers-color-scheme: dark)").matches && defaultTheme === "system") || defaultTheme === "dark")) - ) { - themeToggleButtons.forEach((el) => el.dataset.theme = "dark"); - } else { - themeToggleButtons.forEach((el) => el.dataset.theme = "light"); - } - - // Add click event handler to the buttons - themeToggleButtons.forEach((el) => { - el.addEventListener("click", function () { - if (localStorage.getItem("color-theme")) { - if (localStorage.getItem("color-theme") === "light") { - setDarkTheme(); - localStorage.setItem("color-theme", "dark"); - } else { - setLightTheme(); - localStorage.setItem("color-theme", "light"); - } - } else { - if (document.documentElement.classList.contains("dark")) { - setLightTheme(); - localStorage.setItem("color-theme", "light"); - } else { - setDarkTheme(); - localStorage.setItem("color-theme", "dark"); - } - } - el.dataset.theme = document.documentElement.classList.contains("dark") ? "dark" : "light"; - }); - }); - - // Listen for system theme changes - window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", (e) => { - if (defaultTheme === "system" && !("color-theme" in localStorage)) { - e.matches ? setDarkTheme() : setLightTheme(); - themeToggleButtons.forEach((el) => - el.dataset.theme = document.documentElement.classList.contains("dark") ? "dark" : "light" - ); - } - }); -})(); - -; -// Hamburger menu for mobile navigation - -document.addEventListener('DOMContentLoaded', function () { - const menu = document.querySelector('.hamburger-menu'); - const overlay = document.querySelector('.mobile-menu-overlay'); - const sidebarContainer = document.querySelector('.sidebar-container'); - - // Initialize the overlay - const overlayClasses = ['fixed', 'inset-0', 'z-10', 'bg-black/80', 'dark:bg-black/60']; - overlay.classList.add('bg-transparent'); - overlay.classList.remove("hidden", ...overlayClasses); - - function toggleMenu() { - // Toggle the hamburger menu - menu.querySelector('svg').classList.toggle('open'); - - // When the menu is open, we want to show the navigation sidebar - sidebarContainer.classList.toggle('max-md:[transform:translate3d(0,-100%,0)]'); - sidebarContainer.classList.toggle('max-md:[transform:translate3d(0,0,0)]'); - - // When the menu is open, we want to prevent the body from scrolling - document.body.classList.toggle('overflow-hidden'); - document.body.classList.toggle('md:overflow-auto'); - } - - menu.addEventListener('click', (e) => { - e.preventDefault(); - toggleMenu(); - - if (overlay.classList.contains('bg-transparent')) { - // Show the overlay - overlay.classList.add(...overlayClasses); - overlay.classList.remove('bg-transparent'); - } else { - // Hide the overlay - overlay.classList.remove(...overlayClasses); - overlay.classList.add('bg-transparent'); - } - }); - - overlay.addEventListener('click', (e) => { - e.preventDefault(); - toggleMenu(); - - // Hide the overlay - overlay.classList.remove(...overlayClasses); - overlay.classList.add('bg-transparent'); - }); -}); - -; -// Copy button for code blocks - -document.addEventListener('DOMContentLoaded', function () { - const getCopyIcon = () => { - const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg'); - svg.innerHTML = ` - - `; - svg.setAttribute('fill', 'none'); - svg.setAttribute('viewBox', '0 0 24 24'); - svg.setAttribute('stroke', 'currentColor'); - svg.setAttribute('stroke-width', '2'); - return svg; - } - - const getSuccessIcon = () => { - const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg'); - svg.innerHTML = ` - - `; - svg.setAttribute('fill', 'none'); - svg.setAttribute('viewBox', '0 0 24 24'); - svg.setAttribute('stroke', 'currentColor'); - svg.setAttribute('stroke-width', '2'); - return svg; - } - - document.querySelectorAll('.code-copy-btn').forEach(function (button) { - // Add copy and success icons - button.querySelector('.copy-icon')?.appendChild(getCopyIcon()); - button.querySelector('.success-icon')?.appendChild(getSuccessIcon()); - - // Add click event listener for copy button - button.addEventListener('click', function (e) { - e.preventDefault(); - // Get the code target - const target = button.parentElement.previousElementSibling; - let codeElement; - if (target.tagName === 'CODE') { - codeElement = target; - } else { - // Select the last code element in case line numbers are present - const codeElements = target.querySelectorAll('code'); - codeElement = codeElements[codeElements.length - 1]; - } - if (codeElement) { - let code = codeElement.innerText; - // Replace double newlines with single newlines in the innerText - // as each line inside has trailing newline '\n' - if ("lang" in codeElement.dataset) { - code = code.replace(/\n\n/g, '\n'); - } - navigator.clipboard.writeText(code).then(function () { - button.classList.add('copied'); - setTimeout(function () { - button.classList.remove('copied'); - }, 1000); - }).catch(function (err) { - console.error('Failed to copy text: ', err); - }); - } else { - console.error('Target element not found'); - } - }); - }); -}); - -; -document.querySelectorAll('.tabs-toggle').forEach(function (button) { - button.addEventListener('click', function (e) { - // set parent tabs to unselected - const tabs = Array.from(e.target.parentElement.querySelectorAll('.tabs-toggle')); - tabs.map(tab => tab.dataset.state = ''); - - // set current tab to selected - e.target.dataset.state = 'selected'; - - // set all panels to unselected - const panelsContainer = e.target.parentElement.nextElementSibling; - Array.from(panelsContainer.children).forEach(function (panel) { - panel.dataset.state = ''; - }); - - const panelId = e.target.getAttribute('aria-controls'); - const panel = panelsContainer.querySelector(`#${panelId}`); - panel.dataset.state = 'selected'; - }); -}); - -; -(function () { - const languageSwitchers = document.querySelectorAll('.language-switcher'); - languageSwitchers.forEach((switcher) => { - switcher.addEventListener('click', (e) => { - e.preventDefault(); - switcher.dataset.state = switcher.dataset.state === 'open' ? 'closed' : 'open'; - const optionsElement = switcher.nextElementSibling; - optionsElement.classList.toggle('hidden'); - - // Calculate position of language options element - const switcherRect = switcher.getBoundingClientRect(); - const translateY = switcherRect.top - window.innerHeight - 15; - optionsElement.style.transform = `translate3d(${switcherRect.left}px, ${translateY}px, 0)`; - optionsElement.style.minWidth = `${Math.max(switcherRect.width, 50)}px`; - }); - }); - - // Dismiss language switcher when clicking outside - document.addEventListener('click', (e) => { - if (e.target.closest('.language-switcher') === null) { - languageSwitchers.forEach((switcher) => { - switcher.dataset.state = 'closed'; - const optionsElement = switcher.nextElementSibling; - optionsElement.classList.add('hidden'); - }); - } - }); -})(); - -; -// Script for filetree shortcode collapsing/expanding folders used in the theme -// ====================================================================== -document.addEventListener("DOMContentLoaded", function () { - const folders = document.querySelectorAll(".hextra-filetree-folder"); - folders.forEach(function (folder) { - folder.addEventListener("click", function () { - Array.from(folder.children).forEach(function (el) { - el.dataset.state = el.dataset.state === "open" ? "closed" : "open"; - }); - folder.nextElementSibling.dataset.state = folder.nextElementSibling.dataset.state === "open" ? "closed" : "open"; - }); - }); -}); - -; -document.addEventListener("DOMContentLoaded", function () { - const buttons = document.querySelectorAll(".hextra-sidebar-collapsible-button"); - buttons.forEach(function (button) { - button.addEventListener("click", function (e) { - e.preventDefault(); - const list = button.parentElement.parentElement; - if (list) { - list.classList.toggle("open") - } - }); - }); -}); - -; -// Back to top button - -document.addEventListener("DOMContentLoaded", function () { - const backToTop = document.querySelector("#backToTop"); - if (backToTop) { - document.addEventListener("scroll", (e) => { - if (window.scrollY > 300) { - backToTop.classList.remove("opacity-0"); - } else { - backToTop.classList.add("opacity-0"); - } - }); - } -}); - -function scrollUp() { - window.scroll({ - top: 0, - left: 0, - behavior: "smooth", - }); -} diff --git a/public/lib/flexsearch/flexsearch.bundle.min.0425860527cc9968f9f049421c7a56b39327d475e2e3a8f550416be3a9134327.js b/public/lib/flexsearch/flexsearch.bundle.min.0425860527cc9968f9f049421c7a56b39327d475e2e3a8f550416be3a9134327.js deleted file mode 100644 index 4ebf76e..0000000 --- a/public/lib/flexsearch/flexsearch.bundle.min.0425860527cc9968f9f049421c7a56b39327d475e2e3a8f550416be3a9134327.js +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Skipped minification because the original files appears to be already minified. - * Original file: /npm/flexsearch@0.7.31/dist/flexsearch.bundle.js - * - * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files - */ -/**! - * FlexSearch.js v0.7.31 (Bundle) - * Copyright 2018-2022 Nextapps GmbH - * Author: Thomas Wilkerling - * Licence: Apache-2.0 - * https://github.com/nextapps-de/flexsearch - */ -(function _f(self){'use strict';try{if(module)self=module}catch(e){}self._factory=_f;var t;function u(a){return"undefined"!==typeof a?a:!0}function aa(a){const b=Array(a);for(let c=0;c=this.B&&(w||!n[l])){var f=L(q,d,r),g="";switch(this.G){case "full":if(2f;h--)if(h-f>=this.B){var k=L(q,d,r,e,f);g=l.substring(f,h);M(this,n,g,k,a,c)}break}case "reverse":if(1=this.B&&M(this,n, -g,L(q,d,r,e,h),a,c);g=""}case "forward":if(1=this.B&&M(this,n,g,f,a,c);break}default:if(this.C&&(f=Math.min(f/this.C(b,l,r)|0,q-1)),M(this,n,l,f,a,c),w&&1=this.B&&!e[l]){e[l]=1;const p=this.l&&l>f;M(this,m,p?f:l,L(g+(d/2>g?0:1),d,r,h-1,k-1),a,c,p?l:f)}}}}this.m||(this.register[a]=1)}}return this}; -function L(a,b,c,d,e){return c&&1=this.B&&!c[q])if(this.s||f||this.map[q])k[w++]=q,c[q]=1;else return d;a=k;e=a.length}if(!e)return d;b||(b=100);h=this.depth&&1=d)))break;if(n){if(f)return ta(k,d,0);b[b.length]=k;return}}return!c&&k}function ta(a,b,c){a=1===a.length?a[0]:[].concat.apply([],a);return c||a.length>b?a.slice(c,c+b):a} -function ua(a,b,c,d){c?(d=d&&b>c,a=(a=a[d?b:c])&&a[d?c:b]):a=a[b];return a}t.contain=function(a){return!!this.register[a]};t.update=function(a,b){return this.remove(a).add(a,b)}; -t.remove=function(a,b){const c=this.register[a];if(c){if(this.m)for(let d=0,e;db||c)e=e.slice(c,c+b);d&&(e=za.call(this,e));return{tag:a,result:e}}}function za(a){const b=Array(a.length);for(let c=0,d;c - - - - http://localhost:1313/en/sitemap.xml - - 2024-04-12T16:31:58+03:30 - - - - - http://localhost:1313/zh-cn/sitemap.xml - - 2024-04-12T16:19:45+03:30 - - - - diff --git a/public/tags/index.html b/public/tags/index.html deleted file mode 100644 index c499638..0000000 --- a/public/tags/index.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - - - - - - - - - Tags – PacViewer Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - -
    -
    -
    -

    Tags

    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/public/tags/index.xml b/public/tags/index.xml deleted file mode 100644 index 719c7f7..0000000 --- a/public/tags/index.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - PacViewer Documentation – Tags - http://localhost:1313/tags/ - Recent content in Tags on PacViewer Documentation - Hugo -- gohugo.io - en - - - - - - - - - - - diff --git a/public/zh-cn.search-data.json b/public/zh-cn.search-data.json deleted file mode 100644 index a07d60f..0000000 --- a/public/zh-cn.search-data.json +++ /dev/null @@ -1 +0,0 @@ -{"/zh-cn/docs/":{"data":{"":"👋 Hello! Welcome to the PacViewer documentation!"},"title":"文档"}} \ No newline at end of file diff --git a/public/zh-cn.search.js b/public/zh-cn.search.js deleted file mode 100644 index 86ca3fa..0000000 --- a/public/zh-cn.search.js +++ /dev/null @@ -1,365 +0,0 @@ -// Search functionality using FlexSearch. - -// Change shortcut key to cmd+k on Mac, iPad or iPhone. -document.addEventListener("DOMContentLoaded", function () { - if (/iPad|iPhone|Macintosh/.test(navigator.userAgent)) { - // select the kbd element under the .search-wrapper class - const keys = document.querySelectorAll(".search-wrapper kbd"); - keys.forEach(key => { - key.innerHTML = 'K'; - }); - } -}); - -// Render the search data as JSON. -// -// -// -// - -(function () { - const searchDataURL = '/zh-cn.search-data.json'; - - const inputElements = document.querySelectorAll('.search-input'); - for (const el of inputElements) { - el.addEventListener('focus', init); - el.addEventListener('keyup', search); - el.addEventListener('keydown', handleKeyDown); - } - - // Get the search wrapper, input, and results elements. - function getActiveSearchElement() { - const inputs = Array.from(document.querySelectorAll('.search-wrapper')).filter(el => el.clientHeight > 0); - if (inputs.length === 1) { - return { - wrapper: inputs[0], - inputElement: inputs[0].querySelector('.search-input'), - resultsElement: inputs[0].querySelector('.search-results') - }; - } - return undefined; - } - - const INPUTS = ['input', 'select', 'button', 'textarea'] - - // Focus the search input when pressing ctrl+k/cmd+k or /. - document.addEventListener('keydown', function (e) { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - - const activeElement = document.activeElement; - const tagName = activeElement && activeElement.tagName; - if ( - inputElement === activeElement || - !tagName || - INPUTS.includes(tagName) || - (activeElement && activeElement.isContentEditable)) - return; - - if ( - e.key === '/' || - (e.key === 'k' && - (e.metaKey /* for Mac */ || /* for non-Mac */ e.ctrlKey)) - ) { - e.preventDefault(); - inputElement.focus(); - } else if (e.key === 'Escape' && inputElement.value) { - inputElement.blur(); - } - }); - - // Dismiss the search results when clicking outside the search box. - document.addEventListener('mousedown', function (e) { - const { inputElement, resultsElement } = getActiveSearchElement(); - if (!inputElement || !resultsElement) return; - if ( - e.target !== inputElement && - e.target !== resultsElement && - !resultsElement.contains(e.target) - ) { - hideSearchResults(); - } - }); - - // Get the currently active result and its index. - function getActiveResult() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return { result: undefined, index: -1 }; - - const result = resultsElement.querySelector('.active'); - if (!result) return { result: undefined, index: -1 }; - - const index = parseInt(result.dataset.index, 10); - return { result, index }; - } - - // Set the active result by index. - function setActiveResult(index) { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - - const { result: activeResult } = getActiveResult(); - activeResult && activeResult.classList.remove('active'); - const result = resultsElement.querySelector(`[data-index="${index}"]`); - if (result) { - result.classList.add('active'); - result.focus(); - } - } - - // Get the number of search results from the DOM. - function getResultsLength() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return 0; - return resultsElement.dataset.count; - } - - // Finish the search by hiding the results and clearing the input. - function finishSearch() { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - hideSearchResults(); - inputElement.value = ''; - inputElement.blur(); - } - - function hideSearchResults() { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - resultsElement.classList.add('hidden'); - } - - // Handle keyboard events. - function handleKeyDown(e) { - const { inputElement } = getActiveSearchElement(); - if (!inputElement) return; - - const resultsLength = getResultsLength(); - const { result: activeResult, index: activeIndex } = getActiveResult(); - - switch (e.key) { - case 'ArrowUp': - e.preventDefault(); - if (activeIndex > 0) setActiveResult(activeIndex - 1); - break; - case 'ArrowDown': - e.preventDefault(); - if (activeIndex + 1 < resultsLength) setActiveResult(activeIndex + 1); - break; - case 'Enter': - e.preventDefault(); - if (activeResult) { - activeResult.click(); - } - finishSearch(); - case 'Escape': - e.preventDefault(); - hideSearchResults(); - inputElement.blur(); - break; - } - } - - // Initializes the search. - function init(e) { - e.target.removeEventListener('focus', init); - if (!(window.pageIndex && window.sectionIndex)) { - preloadIndex(); - } - } - - // Preload the search index. - async function preloadIndex() { - window.pageIndex = new FlexSearch.Document({ - tokenize: 'forward', - cache: 100, - document: { - id: 'id', - store: ['title'], - index: "content" - } - }); - - window.sectionIndex = new FlexSearch.Document({ - tokenize: 'forward', - cache: 100, - document: { - id: 'id', - store: ['title', 'content', 'url', 'display'], - index: "content", - tag: 'pageId' - } - }); - - const resp = await fetch(searchDataURL); - const data = await resp.json(); - let pageId = 0; - for (const route in data) { - let pageContent = ''; - ++pageId; - - for (const heading in data[route].data) { - const [hash, text] = heading.split('#'); - const url = route.trimEnd('/') + (hash ? '#' + hash : ''); - const title = text || data[route].title; - - const content = data[route].data[heading] || ''; - const paragraphs = content.split('\n').filter(Boolean); - - sectionIndex.add({ - id: url, - url, - title, - pageId: `page_${pageId}`, - content: title, - ...(paragraphs[0] && { display: paragraphs[0] }) - }); - - for (let i = 0; i < paragraphs.length; i++) { - sectionIndex.add({ - id: `${url}_${i}`, - url, - title, - pageId: `page_${pageId}`, - content: paragraphs[i] - }); - } - - pageContent += ` ${title} ${content}`; - } - - window.pageIndex.add({ - id: pageId, - title: data[route].title, - content: pageContent - }); - - } - } - - function search(e) { - const query = e.target.value; - if (!e.target.value) { - hideSearchResults(); - return; - } - - const { resultsElement } = getActiveSearchElement(); - while (resultsElement.firstChild) { - resultsElement.removeChild(resultsElement.firstChild); - } - resultsElement.classList.remove('hidden'); - - const pageResults = window.pageIndex.search(query, 5, { enrich: true, suggest: true })[0]?.result || []; - - const results = []; - const pageTitleMatches = {}; - - for (let i = 0; i < pageResults.length; i++) { - const result = pageResults[i]; - pageTitleMatches[i] = 0; - - // Show the top 5 results for each page - const sectionResults = window.sectionIndex.search(query, 5, { enrich: true, suggest: true, tag: `page_${result.id}` })[0]?.result || []; - let isFirstItemOfPage = true - const occurred = {} - - for (let j = 0; j < sectionResults.length; j++) { - const { doc } = sectionResults[j] - const isMatchingTitle = doc.display !== undefined - if (isMatchingTitle) { - pageTitleMatches[i]++ - } - const { url, title } = doc - const content = doc.display || doc.content - - if (occurred[url + '@' + content]) continue - occurred[url + '@' + content] = true - results.push({ - _page_rk: i, - _section_rk: j, - route: url, - prefix: isFirstItemOfPage ? result.doc.title : undefined, - children: { title, content } - }) - isFirstItemOfPage = false - } - } - const sortedResults = results - .sort((a, b) => { - // Sort by number of matches in the title. - if (a._page_rk === b._page_rk) { - return a._section_rk - b._section_rk - } - if (pageTitleMatches[a._page_rk] !== pageTitleMatches[b._page_rk]) { - return pageTitleMatches[b._page_rk] - pageTitleMatches[a._page_rk] - } - return a._page_rk - b._page_rk - }) - .map(res => ({ - id: `${res._page_rk}_${res._section_rk}`, - route: res.route, - prefix: res.prefix, - children: res.children - })); - displayResults(sortedResults, query); - } - - function displayResults(results, query) { - const { resultsElement } = getActiveSearchElement(); - if (!resultsElement) return; - - if (!results.length) { - resultsElement.innerHTML = `无结果`; - return; - } - - // Highlight the query in the result text. - function highlightMatches(text, query) { - const escapedQuery = query.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&'); - const regex = new RegExp(escapedQuery, 'gi'); - return text.replace(regex, (match) => `${match}`); - } - - // Create a DOM element from the HTML string. - function createElement(str) { - const div = document.createElement('div'); - div.innerHTML = str.trim(); - return div.firstChild; - } - - function handleMouseMove(e) { - const target = e.target.closest('a'); - if (target) { - const active = resultsElement.querySelector('a.active'); - if (active) { - active.classList.remove('active'); - } - target.classList.add('active'); - } - } - - const fragment = document.createDocumentFragment(); - for (let i = 0; i < results.length; i++) { - const result = results[i]; - if (result.prefix) { - fragment.appendChild(createElement(` -
    ${result.prefix}
    `)); - } - let li = createElement(` -
  • - -
    `+ highlightMatches(result.children.title, query) + `
    ` + - (result.children.content ? - `
    ` + highlightMatches(result.children.content, query) + `
    ` : '') + ` -
    -
  • `); - li.addEventListener('mousemove', handleMouseMove); - li.addEventListener('keydown', handleKeyDown); - li.querySelector('a').addEventListener('click', finishSearch); - fragment.appendChild(li); - } - resultsElement.appendChild(fragment); - resultsElement.dataset.count = results.length; - } -})(); diff --git a/public/zh-cn/404.html b/public/zh-cn/404.html deleted file mode 100644 index 12e77eb..0000000 --- a/public/zh-cn/404.html +++ /dev/null @@ -1,27 +0,0 @@ -
    -
    - -

    404

    -
    -

    This page could not be found.

    -
    -
    -
    diff --git a/public/zh-cn/categories/index.html b/public/zh-cn/categories/index.html deleted file mode 100644 index 392c3cd..0000000 --- a/public/zh-cn/categories/index.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - - - - Categories – PacViewer 文档 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - -
    -
    -
    -

    Categories

    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/public/zh-cn/categories/index.xml b/public/zh-cn/categories/index.xml deleted file mode 100644 index 0bf8157..0000000 --- a/public/zh-cn/categories/index.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - PacViewer 文档 – Categories - http://localhost:1313/zh-cn/categories/ - Recent content in Categories on PacViewer 文档 - Hugo -- gohugo.io - zh-CN - - - - - - - - - - - diff --git a/public/zh-cn/docs/index.html b/public/zh-cn/docs/index.html deleted file mode 100644 index ba82c28..0000000 --- a/public/zh-cn/docs/index.html +++ /dev/null @@ -1,305 +0,0 @@ - - - - - - - - - - - - - - 介绍 – PacViewer 文档 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - -
    -
    -
    文档
    -
    - -
    -

    介绍

    -

    👋 Hello! Welcome to the PacViewer documentation!

    - -
    - -
    最后更新于
    - - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/public/zh-cn/docs/index.xml b/public/zh-cn/docs/index.xml deleted file mode 100644 index c4fc044..0000000 --- a/public/zh-cn/docs/index.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - PacViewer 文档 – 介绍 - http://localhost:1313/zh-cn/docs/ - Recent content in 介绍 on PacViewer 文档 - Hugo -- gohugo.io - zh-CN - - - - - - - - - - - diff --git a/public/zh-cn/index.html b/public/zh-cn/index.html deleted file mode 100644 index 8a9f351..0000000 --- a/public/zh-cn/index.html +++ /dev/null @@ -1,438 +0,0 @@ - - - - - - - - - - - - - - - PacViewer 文档 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - -
    -
    -
    -

    - Welcome to the PacViewer APIs documentation 🚀 -

    - -
    -
    -

    - PacViewer is the leading blockchain explorer, search, API 
    and analytics platform for Pactus Blockchain. -

    - -
    -
    - -
    -
    -
    - - -
    -

    - - Blockchain Data Querying -

    -

    Allow users to query blockchain data, such as transactions, blocks, and addresses, via your API. This feature enables businesses to retrieve specific data they need from the blockchain efficiently.

    -
    - - -
    -

    - - Real-Time Transaction Monitoring -

    -

    Provide real-time updates on transactions as they occur on the blockchain. This feature is essential for businesses that require instant notification of transactions relevant to their operations.

    -
    - - -
    -

    - - Address Balances and Transaction History -

    -

    Enable users to check the balance of any address on the blockchain and retrieve its transaction history. This feature is beneficial for businesses managing multiple addresses and monitoring their transaction activities.

    -
    - - -
    -

    - - Block Information Retrieval -

    -

    Offer detailed information about individual blocks on the blockchain, including timestamps, block height, and the number of transactions. This feature helps businesses track the progress of the blockchain and analyze its performance.

    -
    - - -
    -

    - - API Rate Limiting -

    -

    Implement rate limiting to ensure fair usage of the API by limiting the number of requests users can make within a specified time frame. This feature prevents abuse of the API resources and ensures its availability for all users.

    -
    - - -
    -

    - - Security and Authentication -

    -

    Implement robust security measures, including API key authentication, to ensure that only authorized users can access the API. This feature helps protect sensitive blockchain data and prevents unauthorized access.

    -
    - - -
    -

    - - Documentation and Support -

    -

    Provide comprehensive documentation for the API, including usage examples and code snippets, to help users integrate it into their applications easily. Additionally, offer responsive customer support to assist users with any issues or questions they may have.

    -
    - - -
    -

    - - Customizable Data Filters -

    -

    Extend support for multiple blockchains, allowing users to access data from different blockchain networks through a single API. This feature enables businesses to work with various blockchain platforms without needing to integrate separate APIs for each.

    -
    - - -
    - - -
    -
    -
    - - - - - - - - - - - - diff --git a/public/zh-cn/sitemap.xml b/public/zh-cn/sitemap.xml deleted file mode 100644 index c03e2e8..0000000 --- a/public/zh-cn/sitemap.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - http://localhost:1313/zh-cn/categories/ - - - - http://localhost:1313/zh-cn/ - 2024-04-12T16:19:45+03:30 - - - - http://localhost:1313/zh-cn/tags/ - - - - http://localhost:1313/zh-cn/docs/ - 2024-04-12T16:19:45+03:30 - - - - diff --git a/public/zh-cn/tags/index.html b/public/zh-cn/tags/index.html deleted file mode 100644 index 858d123..0000000 --- a/public/zh-cn/tags/index.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - - - - Tags – PacViewer 文档 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - -
    -
    -
    -

    Tags

    - -
    -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    - - - - - - - - - - diff --git a/public/zh-cn/tags/index.xml b/public/zh-cn/tags/index.xml deleted file mode 100644 index 929da08..0000000 --- a/public/zh-cn/tags/index.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - PacViewer 文档 – Tags - http://localhost:1313/zh-cn/tags/ - Recent content in Tags on PacViewer 文档 - Hugo -- gohugo.io - zh-CN - - - - - - - - - - -