Compare commits

...
424 Commits
Author SHA1 Message Date
Nuno Coração 8531993279 Merge pull request #991 from nunocoracao/dev
🔖 v2.42.0
2023-10-05 21:13:45 +01:00
Nuno Coração 5701c3fc12 final changes before release 2023-10-05 21:09:03 +01:00
Nuno Coração 12b608f3ca Merge pull request #985 from nunocoracao/dependabot/npm_and_yarn/dev/rimraf-5.0.5
📌 Bump rimraf from 5.0.1 to 5.0.5
2023-10-05 20:46:31 +01:00
Nuno Coração 8b96d182a8 Merge pull request #986 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.17
📌 Bump @headlessui/react from 1.7.16 to 1.7.17
2023-10-05 20:46:18 +01:00
Nuno Coração 78b87e60b9 Merge pull request #987 from nunocoracao/dependabot/npm_and_yarn/dev/tw-elements-1.0.0
📌 Bump tw-elements from 1.0.0-beta3 to 1.0.0
2023-10-05 20:46:05 +01:00
Nuno Coração 3b6817b0f8 Merge pull request #988 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/forms-0.5.6
📌 Bump @tailwindcss/forms from 0.5.4 to 0.5.6
2023-10-05 20:45:52 +01:00
Nuno Coração f3e4246db1 Merge pull request #989 from nunocoracao/dependabot/npm_and_yarn/dev/jquery-3.7.1
📌 Bump jquery from 3.7.0 to 3.7.1
2023-10-05 20:45:36 +01:00
Nuno Coração 23772af8fe Merge pull request #979 from rlan/main
Add my website
2023-10-05 20:44:30 +01:00
Nuno Coração 5af39e116e Delete exampleSite/content/users/ricklan.photography/index.md 2023-10-05 20:43:35 +01:00
Nuno Coração bd7d43561e added new arabic language entry to docs 2023-10-05 20:42:30 +01:00
Nuno Coração 32ac1de4d2 Merge pull request #975 from ajmandourah/main
🎏 Adding arabic languag + shortcodes for ltr/rtl
2023-10-05 20:39:54 +01:00
Nuno Coração 30559800cb added link to blowfish guide 2023-10-05 20:37:16 +01:00
dependabot[bot] 4baf448a5e 💄 Rebuild CSS 2023-10-04 05:11:47 +00:00
dependabot[bot] b5471d52ae 💄 Rebuild CSS 2023-10-04 05:11:35 +00:00
dependabot[bot] e434fe9c99 💄 Rebuild CSS 2023-10-04 05:11:31 +00:00
dependabot[bot] 4a660645d4 💄 Rebuild CSS 2023-10-04 05:11:22 +00:00
dependabot[bot] 870d126a8f 💄 Rebuild CSS 2023-10-04 05:11:08 +00:00
dependabot[bot] 962dbb3dd3 📌 Bump jquery from 3.7.0 to 3.7.1
Bumps [jquery](https://github.com/jquery/jquery) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.7.0...3.7.1)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 05:11:02 +00:00
dependabot[bot] 53918411a0 📌 Bump @tailwindcss/forms from 0.5.4 to 0.5.6
Bumps [@tailwindcss/forms](https://github.com/tailwindlabs/tailwindcss-forms) from 0.5.4 to 0.5.6.
- [Release notes](https://github.com/tailwindlabs/tailwindcss-forms/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss-forms/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss-forms/compare/v0.5.4...v0.5.6)

---
updated-dependencies:
- dependency-name: "@tailwindcss/forms"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 05:10:53 +00:00
dependabot[bot] ed57d748a2 📌 Bump tw-elements from 1.0.0-beta3 to 1.0.0
Bumps [tw-elements](https://github.com/mdbootstrap/Tailwind-Elements) from 1.0.0-beta3 to 1.0.0.
- [Release notes](https://github.com/mdbootstrap/Tailwind-Elements/releases)
- [Commits](https://github.com/mdbootstrap/Tailwind-Elements/compare/v1.0.0-beta3...v1.0.0)

---
updated-dependencies:
- dependency-name: tw-elements
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 05:10:44 +00:00
dependabot[bot] b5dd43eab0 📌 Bump @headlessui/react from 1.7.16 to 1.7.17
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.16 to 1.7.17.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.17/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 05:10:36 +00:00
dependabot[bot] 8b75721494 📌 Bump rimraf from 5.0.1 to 5.0.5
Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.1 to 5.0.5.
- [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/rimraf/compare/v5.0.1...v5.0.5)

---
updated-dependencies:
- dependency-name: rimraf
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 05:10:25 +00:00
Rick Lan 994f30d0fc Add website 2023-10-01 09:08:43 +09:00
ajmandourah 54a1595f2f Merge branch 'main' of https://github.com/ajmandourah/blowfish 2023-09-29 08:16:06 +03:00
ajmandourah 8557ad92bb code highlighting. 2023-09-29 08:16:02 +03:00
ajmandourah c9474e425d Merge branch 'nunocoracao:main' into main 2023-09-29 08:08:46 +03:00
ajmandourah aaa76e04d3 adding LTR/RTL shortcodes to the docs + implement Tailwind classes for the ltr/rtl shortcodes 2023-09-29 08:04:48 +03:00
Nuno Coração 4815406fe5 Merge pull request #978 from nunocoracao/dev
🔖 v2.41.1
2023-09-29 01:01:37 +01:00
Nuno Coração ea8793fac8 updated user list and changed style 2023-09-29 00:59:21 +01:00
Nuno Coração d1f6b62606 Update dependabot.yml 2023-09-29 00:38:28 +01:00
Nuno Coração d6859f6168 Merge pull request #977 from nunocoracao/961-cut-a-new-release-which-bumps-tailwindcss-typography-to-0510-for-dtdl-support
👷🏼 bumped tailwindcss/typography version
2023-09-29 00:36:11 +01:00
Nuno Coração ec3c638f20 bumped tailwindcss/typography version 2023-09-29 00:35:32 +01:00
Nuno Coração 09f5b9a55d Merge pull request #974 from ChristianHering/main
🐛 Fix tel:, ftp:, etc URLs For Author Links
2023-09-29 00:15:41 +01:00
Nuno Coração 5361f2c5df Merge pull request #969 from almazkun/main
🐛 fix: broken links in samples
2023-09-29 00:14:06 +01:00
Nuno Coração ee96370a3b Merge pull request #970 from ohdmire/main
Update users.json
2023-09-29 00:12:54 +01:00
Nuno Coração 1dae62baa7 Merge branch 'dev' into main 2023-09-29 00:12:47 +01:00
Nuno Coração 7c8aac7fb0 Merge pull request #965 from adilhyz/main
Update users.json
2023-09-29 00:11:44 +01:00
Nuno Coração d0eb74c10f Merge branch 'dev' into main 2023-09-29 00:11:36 +01:00
Nuno Coração 445b23b874 Merge pull request #962 from scottmckendry/patch-1
Add scottmckendry.tech to users
2023-09-29 00:10:22 +01:00
Nuno Coração 574d0f16a7 Merge branch 'dev' into patch-1 2023-09-29 00:10:05 +01:00
Nuno Coração c0033de00e fixed small typo 2023-09-29 00:08:41 +01:00
Nuno Coração 04a6b626c7 Merge pull request #951 from fuse314/feature/users-gma-mayer
feat: add gma.name and mayer.life to active users list
2023-09-29 00:07:25 +01:00
Nuno Coração e98c89daa7 Merge branch 'dev' into feature/users-gma-mayer 2023-09-29 00:07:16 +01:00
Nuno Coração df41cfd725 Merge pull request #950 from mtheindiecoder/mtheindiecoder-patch-1
Update users.json
2023-09-29 00:05:11 +01:00
Nuno Coração 3a0f07b0f3 Merge pull request #976 from nunocoracao/968-add-support-for-hugo-v01190
⚙️ added support for Hugo v0.119.0
2023-09-29 00:03:54 +01:00
Nuno Coração 06d9bff485 added support for Hugo v0.119.0 2023-09-29 00:02:48 +01:00
ajmandourah 06d9e18599 Adding arabic languag + shortcodes for ltr/rtl 2023-09-28 14:26:19 +03:00
Christian Hering b2a05f09cd Fix tel:, ftp:, etc URLs For Author Links
Added safeURL to author links so that ftp and phone links work correctly. See Hugo documentation for more information:
https://gohugo.io/functions/safeurl/
2023-09-28 03:11:36 -05:00
ohdmire 3fa4fbcfb5 Update users.json
add ohdmire.github.io
2023-09-26 22:02:34 +08:00
Almaz 533dfaf56a fix: broken links in samples 2023-09-26 17:41:43 +09:00
adilhyz 8b33d98f7b Fix img 2023-09-25 15:56:22 +07:00
adilhyz 749b9dac1c adding my site 2023-09-25 11:20:35 +07:00
Sanrei 5e5d77a577 Update users.json
added adilhyz user
2023-09-23 17:55:46 +07:00
Scott McKendry 54059b0e57 Add scottmckendry.tech to users 2023-09-22 14:13:04 +12:00
Gottfried Mayer c0b196834f feat: add gma.name and mayer.life to active users list 2023-09-13 22:46:41 +02:00
mtheindiecoder 0930093773 Merge branch 'main' into mtheindiecoder-patch-1 2023-09-12 22:06:05 +02:00
Nuno Coração 6a83762f12 Merge pull request #948 from nunocoracao/dev
🔖 v.2.41.0
2023-09-12 11:34:57 +01:00
Nuno Coração be3a6aa16b updated user list content 2023-09-12 11:33:43 +01:00
Nuno Coração 6a61b8f50e updated version 2023-09-12 11:31:05 +01:00
Nuno Coração e92a664196 Merge pull request #947 from nunocoracao/add-user-moccolfc
👤 Add user moccolfc
2023-09-12 11:25:00 +01:00
Nuno Coração b8548af007 add user moccolfc to user list 2023-09-12 11:24:14 +01:00
Nuno Coração 31ba51515c Merge pull request #944 from fuse314/feature/figure_nozoom
🖼️ figure with nozoom
2023-09-12 11:18:19 +01:00
Nuno Coração 19761bf3f5 Merge pull request #946 from nunocoracao/945-update-theme-to-be-compatible-with-hugo-v01182
⚙️ Added support for Hugo v0.118.2
2023-09-12 11:13:19 +01:00
Nuno Coração c69ce15924 fixed support for latest version of Hugo 2023-09-12 11:12:08 +01:00
Nuno Coração 297ab4ae45 Merge pull request #939 from nunocoracao/dependabot/github_actions/dev/actions/checkout-4
👷 Bump actions/checkout from 3 to 4
2023-09-12 11:03:19 +01:00
dependabot[bot] 05d7810940 👷 Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-10 05:25:07 +00:00
Nuno Coração a7933ea949 Merge pull request #924 from jamesbraza/removing-article-showsummary
🔧 Removed `article.showSummary`
2023-08-29 22:42:57 +01:00
Nuno Coração f94115f8b6 Merge pull request #926 from jamesbraza/sub-category-clarifications
📖 Clarifying sub-menu docs
2023-08-29 22:37:09 +01:00
Nuno Coração 03675528c2 Merge pull request #935 from JahsehJ/dev
🎨 Adjust margin-top for a more balanced look
2023-08-29 22:32:21 +01:00
JahsehJ e381e9bb03 Adjust margin-top for a more balanced look 2023-08-29 06:59:42 -07:00
Gottfried Mayer 4790d18acc feat: docs for nozoom attribute on figure shortcode 2023-08-28 21:21:06 +02:00
Gottfried Mayer ea2f848064 feat: add nozoom attribute to figure 2023-08-28 21:14:06 +02:00
mtheindiecoder 06b291dd8d Update users.json
added theindiecoder user
2023-08-21 21:45:44 +02:00
James Braza 2379ef80a2 Documented default name, fixed typo in categories and clarifies what's meant 2023-08-17 22:13:50 -07:00
James Braza ee83ed46aa Removed all article.showSummary instances 2023-08-17 22:05:18 -07:00
Nuno Coração 6e0164d0e4 Merge pull request #923 from nunocoracao/dev
🔖 v2.40.1
2023-08-17 22:16:38 +01:00
Nuno Coração 45819c5dba updated version 2023-08-17 22:16:02 +01:00
Nuno Coração b18dbe2713 Merge pull request #922 from nunocoracao/revert-920-main
Revert "🖌️ Add strava link with icon"
2023-08-17 22:13:36 +01:00
Nuno Coração f67922fc47 Revert "🖌️ Add strava link with icon" 2023-08-17 22:12:55 +01:00
Nuno Coração f55ba5bb64 updated docs 2023-08-17 22:12:46 +01:00
Nuno Coração 52bbe6ff93 Merge pull request #920 from EmilienMottet/main
🖌️ Add strava link with icon
2023-08-17 22:04:01 +01:00
Nuno Coração 55bb0db3ac Merge pull request #921 from nunocoracao/886-adding-gallery-shortcode-to-multiple-timeline-items-breaks-lay-out
🐛 updated logic for unique ids in shortcodes
2023-08-17 22:02:57 +01:00
Nuno Coração 96fdb6db8b updated logic for unique ids in shortcodes 2023-08-17 22:01:42 +01:00
Emilien Mottet 968d1ccc12 Add strava example 2023-08-17 17:58:29 +02:00
Emilien Mottet 08e80d235f Add strava svg 2023-08-17 17:57:11 +02:00
Nuno Coração dc1ff0f998 Merge pull request #917 from nunocoracao/dev
🔖 v2.40.0
2023-08-15 10:47:10 +01:00
Nuno Coração 8985243d2f final prep and version update 2023-08-15 10:39:35 +01:00
Nuno Coração 5ffa6eadea final prep and version update 2023-08-15 10:36:03 +01:00
Nuno Coração c0608aea89 Merge pull request #894 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.3.3
📌 Bump chart.js from 4.3.2 to 4.3.3
2023-08-15 10:25:59 +01:00
Nuno Coração 78e353dc90 Merge branch 'dev' into dependabot/npm_and_yarn/dev/chart.js-4.3.3 2023-08-15 10:25:29 +01:00
Nuno Coração 7b48cb1481 Merge pull request #896 from nunocoracao/dependabot/npm_and_yarn/dev/tw-elements-1.0.0-beta3
📌 Bump tw-elements from 1.0.0-beta2 to 1.0.0-beta3
2023-08-15 10:25:06 +01:00
Nuno Coração 2f08a50e5c Merge branch 'dev' into dependabot/npm_and_yarn/dev/tw-elements-1.0.0-beta3 2023-08-15 10:25:00 +01:00
Nuno Coração 2d993c911c Merge pull request #895 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-3.0.1
📌 Bump prettier from 3.0.0 to 3.0.1
2023-08-15 10:24:35 +01:00
Nuno Coração 47e5bb600d Merge branch 'dev' into dependabot/npm_and_yarn/dev/prettier-3.0.1 2023-08-15 10:24:28 +01:00
Nuno Coração f16fe7f8dc Merge pull request #912 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-21.0.3
📌 Bump puppeteer from 20.9.0 to 21.0.3
2023-08-15 10:12:17 +01:00
Nuno Coração 9dbb6fb92b Merge pull request #905 from bbagwang/patch-1
Add bbagwang.com in users.json
2023-08-15 10:11:28 +01:00
dependabot[bot] 717b514cbc 📌 Bump puppeteer from 20.9.0 to 21.0.3
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 20.9.0 to 21.0.3.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v20.9.0...puppeteer-v21.0.3)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-15 09:10:45 +00:00
Nuno Coração c02a293294 Merge pull request #910 from vkmki001/vkmki001-patch-1
Update users.json
2023-08-15 10:09:19 +01:00
Nuno Coração e038155bc8 Merge pull request #913 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.5.2
📌 Bump prettier-plugin-tailwindcss from 0.4.1 to 0.5.2
2023-08-15 10:08:36 +01:00
Nuno Coração cf73268bdd Merge pull request #903 from Henesys/ko-yaml
✨ Korean YAML File for Blowfish
2023-08-15 10:08:06 +01:00
Nuno Coração 8875f5ba7d Merge pull request #916 from nunocoracao/909-module-blowfish-is-not-compatible-with-this-hugo-version
⚙️ updated hugo version support to v0.117.0
2023-08-15 09:55:39 +01:00
Nuno Coração 87b33b461a updated hugo version support 2023-08-15 09:55:02 +01:00
Nuno Coração 7ed77a41ed Merge pull request #915 from nunocoracao/nunocoracao-patch-1
Update package.json
2023-08-15 09:52:00 +01:00
Nuno Coração 9242c1c57f Update package.json 2023-08-15 09:51:50 +01:00
Nuno Coração da623dc9cc Merge pull request #885 from nunocoracao/dev
🔖 v2.39.0
2023-08-15 09:51:19 +01:00
dependabot[bot] 45e51c93bc 📌 Bump prettier-plugin-tailwindcss from 0.4.1 to 0.5.2
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.4.1 to 0.5.2.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.4.1...v0.5.2)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-14 05:05:32 +00:00
太一Terry 086061cca0 Update users.json
Add my blowfish-themed blog
2023-08-13 16:33:59 +08:00
BBAGWANG 2535f39fb5 Add bbagwang.com in users.json 2023-08-12 17:32:13 +09:00
Henesys ee04983cda Korean YAML File for Blowfish 2023-08-10 22:12:22 -05:00
dependabot[bot] e3caa6044d 💄 Rebuild CSS 2023-08-07 05:48:22 +00:00
dependabot[bot] c15d23a264 📦 Update packaged ChartJS 2023-08-07 05:48:00 +00:00
dependabot[bot] fb35880330 📌 Bump tw-elements from 1.0.0-beta2 to 1.0.0-beta3
Bumps [tw-elements](https://github.com/mdbootstrap/Tailwind-Elements) from 1.0.0-beta2 to 1.0.0-beta3.
- [Release notes](https://github.com/mdbootstrap/Tailwind-Elements/releases)
- [Commits](https://github.com/mdbootstrap/Tailwind-Elements/compare/v1.0.0-beta2...v1.0.0-beta3)

---
updated-dependencies:
- dependency-name: tw-elements
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-07 05:47:39 +00:00
dependabot[bot] 6d100ad274 📌 Bump prettier from 3.0.0 to 3.0.1
Bumps [prettier](https://github.com/prettier/prettier) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.0.0...3.0.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-07 05:47:30 +00:00
dependabot[bot] 43695bad64 📌 Bump chart.js from 4.3.2 to 4.3.3
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.3.2...v4.3.3)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-07 05:47:24 +00:00
Nuno Coração a9ded90dca Merge pull request #861 from MaikelChan/author_images_optimization
The disableImageOptimization setting now affects author images
2023-08-05 16:36:07 +01:00
Nuno Coração b5ac2766f5 Merge pull request #884 from nunocoracao/883-add-support-for-hugo-v01161
⚙️ Updated theme to support Hugo v0.116.1
2023-08-05 16:33:09 +01:00
Nuno Coração 26900dbd93 updated version 2023-08-05 16:32:31 +01:00
MaikelChan a6263505f8 The disableImageOptimization setting now affects author images. 2023-07-30 20:42:45 +02:00
Nuno Coração 2c3cbeb0ae Merge pull request #858 from nunocoracao/dev
🔖 v2.38.3
2023-07-29 22:18:51 +01:00
Nuno Coração 126dfa720b updated version 2023-07-29 22:17:53 +01:00
Nuno Coração 585f28e293 Merge pull request #857 from nunocoracao/856-mobile-bug-in-articles
🐛 Mobile bug in articles
2023-07-29 22:17:07 +01:00
Nuno Coração e86beacb49 🐛 Mobile bug in articles 2023-07-29 22:16:28 +01:00
Nuno Coração a7998e4631 Merge pull request #855 from nunocoracao/nunocoracao-patch-1
Update menus.en.toml
2023-07-29 13:53:14 +01:00
Nuno Coração 102a9bcaa3 Update menus.en.toml 2023-07-29 13:52:34 +01:00
Nuno Coração e7a77c81b3 Merge pull request #853 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.16
📌 Bump @headlessui/react from 1.7.15 to 1.7.16
2023-07-29 13:45:20 +01:00
Nuno Coração 5c16a683d7 Merge pull request #854 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.3.2
📌 Bump chart.js from 4.3.0 to 4.3.2
2023-07-29 13:45:08 +01:00
Nuno Coração b72debb415 Merge pull request #852 from nunocoracao/dev
🔖 v2.38.2
2023-07-29 13:43:55 +01:00
dependabot[bot] fdbc2ccf24 📦 Update packaged ChartJS 2023-07-29 12:39:29 +00:00
dependabot[bot] d0af4cc90f 📌 Bump chart.js from 4.3.0 to 4.3.2
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.3.0 to 4.3.2.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.3.0...v4.3.2)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-29 12:38:55 +00:00
dependabot[bot] 48c506915a 📌 Bump @headlessui/react from 1.7.15 to 1.7.16
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.15 to 1.7.16.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.16/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-29 12:38:33 +00:00
Nuno Coração 31b2b0149f update version 2023-07-29 13:37:37 +01:00
Nuno Coração 02b9f1b27b Merge pull request #851 from nunocoracao/834-video-size-rendering-issue
🎨 Add min-w-prose to single content block
2023-07-29 13:36:08 +01:00
Nuno Coração 90f1711bf7 updated users list 2023-07-29 13:34:49 +01:00
Nuno Coração 8cb34f3deb Merge pull request #830 from fuse314/fix/js_asset
Always generate appearance.js in js folder
2023-07-29 13:16:24 +01:00
Nuno Coração 1465b90757 updated users list 2023-07-29 13:16:11 +01:00
Nuno Coração 9cc25e15bd Merge pull request #846 from jundi14/patch-2
👤 Update users.json
2023-07-29 13:10:20 +01:00
Jundi Mubarok a62dcb402c Update users.json
Add jundimubarok.com
2023-07-24 16:43:00 +07:00
Nuno Coração 50a4eda53a Merge pull request #843 from nunocoracao/dev
🔖 v2.38.1
2023-07-22 02:26:23 +01:00
Nuno Coração df3cadd320 updated version 2023-07-22 02:19:34 +01:00
Nuno Coração c827cc5c04 updated users list 2023-07-22 02:18:06 +01:00
Nuno Coração 2482ccf446 Merge pull request #841 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-20.9.0
📌 Bump puppeteer from 20.8.3 to 20.9.0
2023-07-22 02:15:00 +01:00
Nuno Coração 8f9b4d8201 Merge pull request #842 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-and-prettier-plugin-go-template-3.0.0
📌 Bump prettier and prettier-plugin-go-template
2023-07-22 02:14:46 +01:00
dependabot[bot] 532738e92c 📌 Bump prettier and prettier-plugin-go-template
Bumps [prettier](https://github.com/prettier/prettier) and [prettier-plugin-go-template](https://github.com/NiklasPor/prettier-plugin-go-template). These dependencies needed to be updated together.

Updates `prettier` from 2.8.8 to 3.0.0
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.8...3.0.0)

Updates `prettier-plugin-go-template` from 0.0.13 to 0.0.15
- [Changelog](https://github.com/NiklasPor/prettier-plugin-go-template/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NiklasPor/prettier-plugin-go-template/commits)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
- dependency-name: prettier-plugin-go-template
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-21 05:51:00 +00:00
dependabot[bot] e51b6121c5 📌 Bump puppeteer from 20.8.3 to 20.9.0
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 20.8.3 to 20.9.0.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v20.8.3...puppeteer-v20.9.0)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-21 05:50:50 +00:00
Nuno Coração 17a53b56e9 Merge pull request #840 from nunocoracao/dev
🔖 v2.38.0
2023-07-20 21:39:33 +01:00
Nuno Coração ff2b7dfa48 updated hugo version 2023-07-20 21:38:45 +01:00
Nuno Coração 044736208a updated users and package version 2023-07-20 21:34:37 +01:00
Nuno Coração 5ee491bc0a Merge pull request #839 from nunocoracao/831-fundingyml
add funding.yml
2023-07-20 21:23:10 +01:00
Nuno Coração 3eb9031b84 add funding.yml 2023-07-20 21:22:41 +01:00
Nuno Coração 045416daf1 Merge pull request #829 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.4.1
📌 Bump prettier-plugin-tailwindcss from 0.4.0 to 0.4.1
2023-07-20 21:12:57 +01:00
Nuno Coração 1c91bb6fd5 Merge branch 'dev' into dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.4.1 2023-07-20 21:12:51 +01:00
Nuno Coração cd342e8674 Merge pull request #838 from JahsehJ/patch-2
🎨 Adjust margin-top of author links for a more balanced look
2023-07-20 21:11:19 +01:00
Nuno Coração a5b20fff6c Merge pull request #828 from fuse314/fix/build_rss
fix(build): LanguageCode in rss.xml
2023-07-20 21:06:26 +01:00
Nuno Coração bb713eaaa4 Merge pull request #827 from nunocoracao/dependabot/github_actions/dev/actions/upload-pages-artifact-2
👷 Bump actions/upload-pages-artifact from 1 to 2
2023-07-20 21:05:10 +01:00
Nuno Coração 0e577e2d5c Merge pull request #836 from JahsehJ/patch-1
Add my personal site to users.json
2023-07-20 21:04:52 +01:00
Nuno Coração a640a461d1 Merge branch 'dev' into patch-1 2023-07-20 21:04:44 +01:00
Nuno Coração bfe41ff1a9 Merge pull request #826 from LITUATUI/patch-1
Add m3upt.com to users
2023-07-20 21:03:05 +01:00
Nuno Coração 22f25b912f Merge pull request #835 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-20.8.3
📌 Bump puppeteer from 20.8.2 to 20.8.3
2023-07-20 21:02:07 +01:00
Jahseh J b97bd9a0fc 🎨 Adjust margin-top of author links for a more balanced look. 2023-07-19 20:47:22 -07:00
Jahseh J dcc8821b32 Add my personal site to users.json
<3
2023-07-19 09:28:53 -07:00
dependabot[bot] 5206b02121 💄 Rebuild CSS 2023-07-19 05:44:57 +00:00
dependabot[bot] 3c1fd22fdb 📌 Bump puppeteer from 20.8.2 to 20.8.3
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 20.8.2 to 20.8.3.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v20.8.2...puppeteer-v20.8.3)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-19 05:44:07 +00:00
Gottfried Mayer cfbfc2fbc1 always generate appearance.js in js folder
depending on the basePath, the "appearance.js" was generated in an additional subfolder (i.E. /js/docs/appearance... instead of /js/appearance... ).
2023-07-17 10:36:07 +02:00
dependabot[bot] e09bb0c7ac 💄 Rebuild CSS 2023-07-17 05:50:11 +00:00
dependabot[bot] f86a95a189 📌 Bump prettier-plugin-tailwindcss from 0.4.0 to 0.4.1
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.4.0 to 0.4.1.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.4.0...v0.4.1)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-17 05:49:17 +00:00
Gottfried Mayer ada540f102 fix(build): LanguageCode in rss.xml 2023-07-16 09:09:45 +02:00
dependabot[bot] c21aac1baa 💄 Rebuild CSS 2023-07-16 05:02:46 +00:00
dependabot[bot] 9d28ff57f2 👷 Bump actions/upload-pages-artifact from 1 to 2
Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 1 to 2.
- [Release notes](https://github.com/actions/upload-pages-artifact/releases)
- [Commits](https://github.com/actions/upload-pages-artifact/compare/v1...v2)

---
updated-dependencies:
- dependency-name: actions/upload-pages-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-16 05:01:57 +00:00
Pedro Lima 1b5fb63275 Add m3upt.com to users 2023-07-15 17:45:00 +01:00
Nuno Coração ad79f8f19e update user list 2023-07-14 12:59:54 +01:00
Nuno Coração e9d43b07c1 update flows 2023-07-14 12:56:33 +01:00
Nuno Coração 3fa1bcd3e4 fixed script bug 2023-07-14 12:52:55 +01:00
Nuno Coração 7305e629da updated user list and link 2023-07-14 12:48:09 +01:00
Nuno Coração 3c7c54e3b1 full update user list 2023-07-14 12:42:07 +01:00
Nuno Coração cd28a023eb updated user list 2023-07-14 12:39:13 +01:00
Nuno Coração 2edf271084 clean up users 2023-07-14 12:37:16 +01:00
Nuno Coração 8936b4d0fc Merge pull request #824 from nunocoracao/dev
🎨 Revamp user list
2023-07-14 12:05:17 +01:00
Nuno Coração 13a7ad8ec4 Merge pull request #823 from nunocoracao/744-revamp-user-list
🎨 Revamp user list
2023-07-14 12:04:58 +01:00
Nuno Coração fef151c3eb wrapped script 2023-07-14 11:28:12 +01:00
Nuno Coração ba7d7d5a6c initial version 2023-07-14 11:12:21 +01:00
Nuno Coração 869da321a6 Merge pull request #822 from nunocoracao/dev
🔖 v2.37.0
2023-07-14 10:33:33 +01:00
Nuno Coração 02258281cf bump version 2023-07-14 10:31:20 +01:00
Nuno Coração 134d9c1179 Merge pull request #821 from nunocoracao/820-toc-moves-out-of-the-screen-because-of-related-articles
🎨 TOC moves out of the screen because of related articles
2023-07-14 10:28:53 +01:00
Nuno Coração ada2b2c99b 🎨 TOC moves out of the screen because of related articles 2023-07-14 10:28:26 +01:00
Nuno Coração 7a40cfdb11 Merge pull request #819 from nunocoracao/807-add-support-for-hugo-v01152
⚙️ Add support for Hugo v0.115.3
2023-07-14 10:12:05 +01:00
Nuno Coração afd4334cf8 ⚙️ Add support for Hugo v0.115.3 2023-07-14 10:11:38 +01:00
Nuno Coração 78108c70de Merge pull request #818 from nunocoracao/775-safari-sucks-out-nav-menu
🐛 Fix menu wrapper for Safari
2023-07-14 10:09:00 +01:00
Nuno Coração 6f06d8550a 🐛 Fix menu wrapper for Safari 2023-07-14 10:08:11 +01:00
Nuno Coração 83a2471949 Merge pull request #814 from MaikelChan/toc-position
🎨 Fix that prevents the TOC from being covered by the main menu.
2023-07-14 10:02:59 +01:00
Nuno Coração ba8045651a Merge pull request #811 from MaikelChan/rss-copyright
Fix for wrong Copyright in RSS feeds
2023-07-14 09:59:52 +01:00
Nuno Coração 93f70df482 Merge pull request #805 from fuse314/translation-de
🎏 fix German translation of related_articles
2023-07-14 09:58:53 +01:00
Nuno Coração 43cc1c7c82 Merge pull request #815 from MaikelChan/update-spanish
Update to the Spanish translation
2023-07-14 09:58:18 +01:00
Nuno Coração d9530c1dda Merge pull request #803 from Sean12697/patch-1
👤 Added seanomahoney.com as a User
2023-07-14 09:57:29 +01:00
Nuno Coração 4798c98291 Merge branch 'dev' into patch-1 2023-07-14 09:57:18 +01:00
Nuno Coração 5330bdc0bf Merge pull request #812 from MaikelChan/personal-site
👤 Add my personal site
2023-07-14 09:56:43 +01:00
Nuno Coração 154fa8caca Merge pull request #808 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.4.0
📌 Bump prettier-plugin-tailwindcss from 0.3.0 to 0.4.0
2023-07-14 09:54:42 +01:00
Nuno Coração 9c9cbef243 Merge pull request #816 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/forms-0.5.4
📌 Bump @tailwindcss/forms from 0.5.3 to 0.5.4
2023-07-14 09:54:12 +01:00
Nuno Coração a0dc9825dc Merge pull request #817 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-3.3.3
📌 Bump tailwindcss from 3.3.2 to 3.3.3
2023-07-14 09:53:59 +01:00
dependabot[bot] b51d2dd68e 💄 Rebuild CSS 2023-07-14 05:16:19 +00:00
dependabot[bot] 517c9d0ff2 💄 Rebuild CSS 2023-07-14 05:16:01 +00:00
dependabot[bot] db3cefaacb 📌 Bump tailwindcss from 3.3.2 to 3.3.3
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/v3.3.3/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.3.2...v3.3.3)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-14 05:15:47 +00:00
dependabot[bot] eae354183e 📌 Bump @tailwindcss/forms from 0.5.3 to 0.5.4
Bumps [@tailwindcss/forms](https://github.com/tailwindlabs/tailwindcss-forms) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/tailwindlabs/tailwindcss-forms/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss-forms/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss-forms/compare/v0.5.3...v0.5.4)

---
updated-dependencies:
- dependency-name: "@tailwindcss/forms"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-14 05:15:31 +00:00
MaikelChan 38f7e449bb Forgot an untranslated word. 2023-07-14 06:00:34 +02:00
MaikelChan a6e9a885ec Update to the Spanish translation: Added missing texts and some corrections. 2023-07-14 05:39:27 +02:00
MaikelChan eda728ba1d Output HTML is better formatted. 2023-07-14 05:04:41 +02:00
MaikelChan 7a7fa2bf24 Applied same fix to the TOC when shown in a list page. 2023-07-14 04:33:53 +02:00
MaikelChan 85867e3f14 Found the actual issue. 2023-07-14 04:11:24 +02:00
MaikelChan 18c163c563 Fix that prevents the toc from being covered by the main menu. 2023-07-14 03:50:45 +02:00
MaikelChan 8aa33cfdd8 Add my personal site 2023-07-13 04:11:14 +02:00
MaikelChan 61dbc60f03 Fixed wrong Copyright in RSS feeds. 2023-07-13 01:47:38 +02:00
dependabot[bot] 53bc9b922b 📌 Bump prettier-plugin-tailwindcss from 0.3.0 to 0.4.0
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-12 05:08:26 +00:00
Gottfried Mayer 8dcddb1d88 fix: German translation of related_articles 2023-07-08 23:21:33 +02:00
Sean O'Mahoney 9ccbeb696e Added seanomahoney.com as a User 2023-07-06 20:58:36 +01:00
Nuno Coração eceda27458 updated version 2023-07-05 22:18:45 +01:00
Nuno Coração d55ec148dc Merge pull request #801 from nunocoracao/dev
🔖 v2.36.1
2023-07-05 22:17:57 +01:00
Nuno Coração 97d0326417 Merge pull request #799 from nunocoracao/798-support-for-hugo-v01151
⚙️ Support for Hugo v0.115.1
2023-07-05 22:05:34 +01:00
Nuno Coração 4f1209b158 ⚙️ Support for Hugo v0.115.1 2023-07-05 22:05:05 +01:00
Nuno Coração 02c96872ba Merge pull request #791 from nunocoracao/dev
🔖 v2.36.0
2023-06-29 22:21:50 +01:00
Nuno Coração 6a4f0101c8 bump version 2023-06-29 22:21:32 +01:00
Nuno Coração b643e6f05b Merge pull request #790 from nunocoracao/771-author-on-top-of-articles
🎨 author on top of articles
2023-06-29 22:16:20 +01:00
Nuno Coração 7c6663c348 updated authors to be displayed on top of an article 2023-06-29 22:15:39 +01:00
Nuno Coração 9d8d050cd6 Merge pull request #779 from voigt/fix-fathom-regression
🐛 fix regression in fathom analytics
2023-06-29 21:43:27 +01:00
Nuno Coração 3eafcd94ce Merge pull request #773 from michaeldorner/main
⚙️ Remove and ignore .DS_Store files
2023-06-29 21:42:38 +01:00
Nuno Coração b32b2d0a07 Merge pull request #787 from MaruPandaBear/patch-1
Update index.md
2023-06-29 21:41:11 +01:00
Nuno Coração 496a45fb89 Merge pull request #785 from nunocoracao/dependabot/npm_and_yarn/dev/katex-0.16.8
📌 Bump katex from 0.16.7 to 0.16.8
2023-06-29 21:40:16 +01:00
Nuno Coração 9be10d53aa Merge pull request #782 from dky/patch-1
✍🏼 Typos + grammar tweaks
2023-06-29 21:40:03 +01:00
Nuno Coração 257f2d4928 Merge pull request #789 from nunocoracao/788-module-blowfish-is-not-compatible-with-this-hugo-version
⬆️ updated theme to support version 0.115.0 of Hugo
2023-06-29 21:37:23 +01:00
Nuno Coração f57c38018e updated theme to support version 0.115.0 of Hugo 2023-06-29 21:36:26 +01:00
MaruPandaBear 06b5f02635 Update index.md
Added personal comics site made in Blowfish to users list.
2023-06-27 10:24:44 -05:00
dependabot[bot] 3336416867 📦 Update packaged KaTeX 2023-06-26 06:03:43 +00:00
dependabot[bot] bb779204d1 📌 Bump katex from 0.16.7 to 0.16.8
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.7 to 0.16.8.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.7...v0.16.8)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-26 06:02:55 +00:00
dky 4693a07499 Update index.md
Some typos + grammar tweaks
2023-06-18 11:57:00 -04:00
Nuno Coração de90e84c6b Merge pull request #781 from nunocoracao/dependabot/npm_and_yarn/dev/commander-11.0.0
📌 Bump commander from 10.0.1 to 11.0.0
2023-06-18 14:01:07 +01:00
dependabot[bot] 93290bbb1f 📌 Bump commander from 10.0.1 to 11.0.0
Bumps [commander](https://github.com/tj/commander.js) from 10.0.1 to 11.0.0.
- [Release notes](https://github.com/tj/commander.js/releases)
- [Changelog](https://github.com/tj/commander.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tj/commander.js/compare/v10.0.1...v11.0.0)

---
updated-dependencies:
- dependency-name: commander
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-16 06:01:11 +00:00
Christoph Voigt 2fd531cfdf fix regression in fathom analytics 2023-06-15 14:30:27 +02:00
Michael Dorner d4f121f28f Add macOS generated files to gitignore 2023-06-10 16:21:53 +02:00
Michael Dorner 4d29012edb Remove all .DS_Store files 2023-06-10 16:20:01 +02:00
Nuno Coração aa03e677db Merge pull request #770 from nunocoracao/dev
🔖 release v2.35.1
2023-06-06 21:56:42 +01:00
Nuno Coração 6f08a1dba6 increase the version 2023-06-06 21:56:05 +01:00
Nuno Coração 06d2675436 Merge pull request #769 from nunocoracao/745-new-icons-graduation-cap-scale-balanced-etc
✨ New icons: graduation-cap, scale-balanced
2023-06-06 21:55:28 +01:00
Nuno Coração 4f12aa3578 add new icons 2023-06-06 21:54:00 +01:00
Nuno Coração fbc8d1e364 Merge pull request #768 from nunocoracao/766---fix-analytics-partial
🐛 Fix and refactor analytics
2023-06-06 21:44:29 +01:00
Nuno Coração c49443d765 fixed analytics 2023-06-06 21:42:12 +01:00
Nuno Coração 4ec5848594 Merge pull request #767 from voigt/766_-_fix_fathom_analytics_config
766 - fix analytics partial to make fathom analytics configurable
2023-06-06 21:25:36 +01:00
Christoph Voigt 74a09bab49 766 - fix analytics partial to make fathom analytics configurable 2023-06-06 10:31:44 +02:00
Nuno Coração 02da08de65 Merge pull request #764 from nunocoracao/dev
🔖 release v2.35.0
2023-06-05 22:59:10 +01:00
Nuno Coração 95145d4665 small updated to docs 2023-06-05 22:57:26 +01:00
Nuno Coração a9d8eee152 fixed small ui bug 2023-06-05 22:54:26 +01:00
Nuno Coração cdb84c8b0e updated version 2023-06-05 22:49:35 +01:00
Nuno Coração 384cba03cd Merge pull request #763 from nunocoracao/760-fix-deprecation-values
🚧 fix deprecation of parameters inside of languages files
2023-06-05 22:47:55 +01:00
Nuno Coração 9f741eb71d updated deprecated configs 2023-06-05 22:42:37 +01:00
Nuno Coração 3b2bf23b00 Merge pull request #756 from nunocoracao/755-increase-max-supported-version-of-hugo
⬆️ increase max supported version of Hugo
2023-06-05 21:37:56 +01:00
Nuno Coração 982d80dae6 updated support for Hugo latest version 2023-06-05 21:37:17 +01:00
Nuno Coração 14ceca7ca1 bump version 2023-06-04 21:43:20 +01:00
Nuno Coração 785b0f3ed6 Merge pull request #754 from nunocoracao/dev
🔖 Release v2.34.2
2023-06-04 21:40:29 +01:00
Nuno Coração 5409a07ee0 Merge pull request #753 from nunocoracao/752-add-support-for-hugo-v01127
increased max version to Hugo latest v0.112.7
2023-06-04 21:37:13 +01:00
Nuno Coração c40880a70b increased max version to Hugo latest v0.112.7 2023-06-04 21:35:23 +01:00
Nuno Coração b85caa20b0 Merge pull request #751 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.15
📌 Bump @headlessui/react from 1.7.14 to 1.7.15
2023-06-04 21:26:41 +01:00
dependabot[bot] fb55b339d3 📌 Bump @headlessui/react from 1.7.14 to 1.7.15
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.14 to 1.7.15.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.15/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-02 06:03:04 +00:00
Nuno Coração dcec748080 Merge pull request #750 from Sykursen/main
Add 50-nuances-octets.fr to users
2023-05-31 23:22:06 +01:00
Guillaume Assier 9952298f85 Add 50-nuances-octets.fr 2023-05-30 10:06:49 +00:00
Nuno Coração c04a56e7a2 Merge pull request #743 from nunocoracao/dev
🔖 v2.34.1
2023-05-24 22:58:01 +01:00
Nuno Coração bd603475c7 small fix 2023-05-24 22:46:46 +01:00
Nuno Coração 2b3b34fab9 fixe issue with analytics and new hugo update 2023-05-24 22:43:31 +01:00
Nuno Coração b64e7fc6d5 bump version 2023-05-24 21:55:58 +01:00
Nuno Coração ebb7e950fc Merge pull request #742 from nunocoracao/741-add-support-for-hugo-v01123
⬆️ Add support for Hugo v0.112.3
2023-05-24 21:40:48 +01:00
Nuno Coração 86c5650925 updataed version 2023-05-24 21:40:05 +01:00
Nuno Coração 9d18e3d78c updataed version 2023-05-24 21:39:52 +01:00
Nuno Coração 616ebd1cf5 Merge pull request #738 from MaikelChan/gallery-fixes
Gallery fixes.
2023-05-24 21:24:03 +01:00
Nuno Coração 4f3f908a37 Merge pull request #739 from d4rklynk/patch-fr
Update fr.yaml
2023-05-24 21:23:23 +01:00
Nuno Coração a2d5c361b4 Merge pull request #740 from tfuryan/dev
add www.halcyonstraits.com to users
2023-05-24 21:22:48 +01:00
Nuno Coração e26ede4f7a Merge branch 'dev' into dev 2023-05-24 21:22:40 +01:00
Nuno Coração 7bf971b481 Merge pull request #737 from enmanuelmoreira/main
Add blog.enmanuelmoreira.com
2023-05-24 21:21:43 +01:00
Nuno Coração b3d692bf2f Merge branch 'dev' into main 2023-05-24 21:21:36 +01:00
Nuno Coração f47c51b59e Merge pull request #729 from NikarashiHatsu/main
add (users): nikarashihatsu.github.io
2023-05-24 21:20:35 +01:00
Nuno Coração ab2b979da4 Merge branch 'dev' into main 2023-05-24 21:20:23 +01:00
tfuryan cbfe4eb570 add www.halcyonstraits.com 2023-05-24 15:01:24 -04:00
samsepi0l 6bbc2985e0 Update fr.yaml 2023-05-24 16:10:18 +02:00
MaikelChan 83eae55276 Gallery fixes.
- Fixed having multiple galleries in the same page with the same ID, which would cause the galleries after the first one not behaving correctly.
- Make sure that all images have finished loading before calling Packery, fixing some image overlapping problems.
2023-05-23 20:20:07 +02:00
Enmanuel Moreira 10b1dca2c2 Add blog.enmanuelmoreira.com
Add blog.enmanuelmoreira.com
2023-05-23 12:37:05 -04:00
Aghits Nidallah fdb4a4be14 Update index.md 2023-05-23 19:38:18 +07:00
Nuno Coração 3c0d54c41d Merge pull request #735 from nunocoracao/dev
🔖 v2.34.0
2023-05-23 12:51:03 +01:00
Nuno Coração e832e646bf updataed version 2023-05-23 12:49:20 +01:00
Nuno Coração 49bf99641e Merge pull request #734 from nunocoracao/722-getboundingclientrect-call-on-null-error-logged-on-pages-with-little-content
🐛 getBoundingClientRect() call on null error logged on pages with little content
2023-05-23 12:47:38 +01:00
Nuno Coração e015e32356 Merge pull request #733 from nunocoracao/732-add-support-for-hugo-v01120
⬆️ add support for Hugo v0.112.0
2023-05-23 12:46:34 +01:00
Nuno Coração f11c652362 fixed #722 2023-05-23 12:46:12 +01:00
Nuno Coração bb44f5b17a bumped hugo version 2023-05-23 12:35:46 +01:00
Nuno Coração bdd1c3f136 Merge pull request #726 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.3.0
📌 Bump prettier-plugin-tailwindcss from 0.2.8 to 0.3.0
2023-05-23 12:30:00 +01:00
dependabot[bot] 9bc237dc34 📌 Bump prettier-plugin-tailwindcss from 0.2.8 to 0.3.0
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.8 to 0.3.0.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.8...v0.3.0)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-23 11:29:13 +00:00
Nuno Coração 802d9369b8 Merge pull request #728 from nunocoracao/dependabot/npm_and_yarn/dev/rimraf-5.0.1
📌 Bump rimraf from 5.0.0 to 5.0.1
2023-05-23 12:28:20 +01:00
Nuno Coração 4685aff77c Merge pull request #725 from Weaxs/blog
👤 Added weaxsey.org
2023-05-23 12:28:07 +01:00
Nuno Coração 2d0f9852d8 Merge pull request #731 from MaikelChan/fix-multiple-galleries
Fixed having multiple galleries in the same page, only works the first one
2023-05-23 12:26:32 +01:00
MaikelChan 23ef06829a Fixed having multiple galleries in the same page, only works the first one. 2023-05-21 23:14:11 +02:00
Aghits Nidallah eaa5e500af add (users): nikarashihatsu.github.io 2023-05-19 00:01:28 +07:00
dependabot[bot] 92f704cd61 📌 Bump rimraf from 5.0.0 to 5.0.1
Bumps [rimraf](https://github.com/isaacs/rimraf) from 5.0.0 to 5.0.1.
- [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/rimraf/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: rimraf
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-18 06:01:41 +00:00
Weaxs 9e1fc48e96 👤 Added weaxsey.org 2023-05-16 11:03:23 +08:00
Nuno Coração a387038958 Merge pull request #721 from nunocoracao/dev
🔖 release v2.33.2
2023-05-12 14:33:16 +01:00
Nuno Coração 08d28ec1c1 updated version 2023-05-12 14:26:50 +01:00
Nuno Coração 914352f71c updated nested menus docs 2023-05-12 14:24:21 +01:00
Nuno Coração 8ca246ce31 Merge pull request #689 from schachem/main
✨ Fix missing URL for Top-level menu entry in nested menu
2023-05-12 14:18:33 +01:00
Nuno Coração 485b08193c added config secondaryLogo comment to example site 2023-05-12 14:17:38 +01:00
Nuno Coração 50e4c2b9aa Merge pull request #683 from DanWiseProgramming/feature/add_logo_dark_light_mode_switching
✨[#676] Add logo dark/light mode switching mechanism
2023-05-12 14:13:14 +01:00
Nuno Coração 34ca5acc8f Merge pull request #720 from nunocoracao/690-front-matter-description-is-not-used-for-metadata-but-summary
✨ frontmatter uses both summary and description
2023-05-12 14:11:40 +01:00
Nuno Coração 7c2ca7969e ✨ frontmatter uses both summary and description for site's meta description 2023-05-12 14:10:41 +01:00
Nuno Coração 00704d369a Merge pull request #717 from nunocoracao/dependabot/npm_and_yarn/dev/heroicons/react-2.0.18
📌 Bump @heroicons/react from 2.0.17 to 2.0.18
2023-05-12 14:02:55 +01:00
Nuno Coração 1aa41fae0f Merge pull request #719 from nunocoracao/dependabot/npm_and_yarn/dev/jquery-3.7.0
📌 Bump jquery from 3.6.4 to 3.7.0
2023-05-12 14:02:43 +01:00
dependabot[bot] 99c5fa5a00 📌 Bump jquery from 3.6.4 to 3.7.0
Bumps [jquery](https://github.com/jquery/jquery) from 3.6.4 to 3.7.0.
- [Release notes](https://github.com/jquery/jquery/releases)
- [Commits](https://github.com/jquery/jquery/compare/3.6.4...3.7.0)

---
updated-dependencies:
- dependency-name: jquery
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-12 06:01:22 +00:00
dependabot[bot] 96529363cd 📌 Bump @heroicons/react from 2.0.17 to 2.0.18
Bumps [@heroicons/react](https://github.com/tailwindlabs/heroicons) from 2.0.17 to 2.0.18.
- [Release notes](https://github.com/tailwindlabs/heroicons/releases)
- [Changelog](https://github.com/tailwindlabs/heroicons/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/heroicons/compare/v2.0.17...v2.0.18)

---
updated-dependencies:
- dependency-name: "@heroicons/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-10 06:01:44 +00:00
Daniel Odrinski cd946b93e5 Merge branch 'dev' into feature/add_logo_dark_light_mode_switching 2023-05-09 14:12:59 +01:00
Nuno Coração 8d6c5b7905 Merge pull request #714 from nunocoracao/dev
🔖 release 2.33.1
2023-05-08 22:28:54 +01:00
Nuno Coração 0b94dd1479 update theme version 2023-05-08 22:26:24 +01:00
Nuno Coração 70da7fc17a Merge pull request #715 from nunocoracao/703-links-become-white-on-hover-in-light-theme
🐛 Links become white on hover in light theme
2023-05-08 22:25:28 +01:00
Nuno Coração f8b90ea3ba 🐛 Links become white on hover in light theme 2023-05-08 22:24:36 +01:00
Nuno Coração 5cf45863cb Merge pull request #713 from nunocoracao/696-move-to-top-gap-between-content-and-icon
🐛 Move to top gap between content and icon
2023-05-08 22:12:44 +01:00
Nuno Coração 16600ee159 🐛 Move to top gap between content and icon 2023-05-08 22:11:38 +01:00
Nuno Coração a246ba2451 removed comments from pr 709 2023-05-08 21:38:10 +01:00
Nuno Coração f57b0dc2b2 Merge pull request #712 from nunocoracao/revert-711-revert-709-views-likes-error-windows
Revert "Revert "🐛 Fixed error getting views and likes on a Windows built site.""
2023-05-08 21:37:01 +01:00
Nuno Coração 9914624b84 Revert "Revert "🐛 Fixed error getting views and likes on a Windows built site."" 2023-05-08 21:36:49 +01:00
Nuno Coração cb77f886ea fixed bug in list.html likes and views 2023-05-08 21:35:02 +01:00
Nuno Coração e75be1c390 Merge pull request #711 from nunocoracao/revert-709-views-likes-error-windows
Revert "🐛 Fixed error getting views and likes on a Windows built site."
2023-05-08 21:31:39 +01:00
Nuno Coração 679f0684b5 Revert "🐛 Fixed error getting views and likes on a Windows built site." 2023-05-08 21:31:07 +01:00
Nuno Coração 740fc1763f Revert "removed comments from pr 709"
This reverts commit 5518d77c68.
2023-05-08 21:29:36 +01:00
Nuno Coração 5518d77c68 removed comments from pr 709 2023-05-08 21:27:02 +01:00
Nuno Coração 0f01a1b680 Merge pull request #709 from MaikelChan/views-likes-error-windows
🐛 Fixed error getting views and likes on a Windows built site.
2023-05-08 21:25:28 +01:00
Nuno Coração 1ae18a8c6e Merge pull request #708 from MaikelChan/zoom-fix
🔧 Fixed zoom.min.js library not being found if site is in a subfolder.
2023-05-08 21:21:26 +01:00
MaikelChan eaf4ea9270 Fixed error getting views and likes on a Windows built site. 2023-05-07 15:26:37 +02:00
MaikelChan 0427f9f5af Fixed zoom library not being found if site is in a subfolder. 2023-05-07 06:49:40 +02:00
Nuno Coração 4a428f41f4 Merge pull request #698 from DanWiseProgramming/translation/update_bulgarian_translation
🌐Update Bulgarian translation
2023-05-04 21:47:51 +01:00
Nuno Coração b579398813 Merge pull request #701 from lelouvincx/patch-1
👤 Added my website, please accept
2023-05-04 21:45:32 +01:00
Nuno Coração c92e208864 Merge branch 'dev' into patch-1 2023-05-04 21:45:26 +01:00
lelouvincx 2c3235eeac Added my website 2023-05-04 12:56:28 +07:00
Daniel Odrinski a660482b24 ♻️ [#676] Further optimise appearance.js to reduce code duplication 2023-05-02 21:16:16 +01:00
Daniel Odrinski c6869834ea ⚡️ [#676] Optimise appearance.js for no secondary logo 2023-05-02 20:46:56 +01:00
Daniel Odrinski 0e07a9f265 📝[#676] Update documentation for 'secondaryLogo' parameter 2023-05-02 11:04:13 +01:00
Daniel Odrinski 5c12f7597a Merge branch 'feature/add_logo_dark_light_mode_switching' of github.com:DanWiseProgramming/blowfish into feature/add_logo_dark_light_mode_switching 2023-05-02 03:17:40 +01:00
Daniel Odrinski e3869849bd [#676] Add accidentally un-committed files 2023-05-02 03:17:31 +01:00
Daniel Odrinski b8f23598c8 ✨[#676] Add logo dark/light mode switching mechanism 2023-05-02 03:17:31 +01:00
Daniel Odrinski e545d7403c 🌐Update Bulgarian translation
- Update language list in documentation
- Replace language code with emoji
2023-05-02 03:10:28 +01:00
Daniel Odrinski bf8f63b4a6 [#676] Add accidentally un-committed files 2023-05-01 21:50:54 +01:00
Nuno Coração 8b55912ceb Merge pull request #691 from clemsau-forks/add-one-personal-site
👤 Add clemsau.com personal site
2023-05-01 10:27:34 +01:00
Nuno Coração 6eb430368e Merge pull request #692 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.2.8
📌 Bump prettier-plugin-tailwindcss from 0.2.7 to 0.2.8
2023-05-01 10:25:48 +01:00
Nuno Coração 4f75ade0c3 Merge pull request #693 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.3.0
📌 Bump chart.js from 4.2.1 to 4.3.0
2023-05-01 10:25:35 +01:00
Nuno Coração 9b54ae3d49 Merge pull request #694 from nunocoracao/dependabot/npm_and_yarn/dev/katex-0.16.7
📌 Bump katex from 0.16.6 to 0.16.7
2023-05-01 10:25:22 +01:00
dependabot[bot] 242a0ece62 📦 Update packaged KaTeX 2023-05-01 06:07:40 +00:00
dependabot[bot] 097f5f84ad 📦 Update packaged ChartJS 2023-05-01 06:07:16 +00:00
dependabot[bot] 14b91db78f 📌 Bump katex from 0.16.6 to 0.16.7
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.6 to 0.16.7.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.6...v0.16.7)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 06:06:54 +00:00
dependabot[bot] 77c7697e25 📌 Bump chart.js from 4.2.1 to 4.3.0
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.2.1...v4.3.0)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 06:06:45 +00:00
dependabot[bot] 2a6a48ee7b 📌 Bump prettier-plugin-tailwindcss from 0.2.7 to 0.2.8
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.7 to 0.2.8.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.7...v0.2.8)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 06:06:31 +00:00
Clément Sauvage 19db5a64a9 👤 Add one personal site 2023-04-30 23:50:53 +02:00
schachem 9e7abf32cf Fix missing URL for Top-level menu entry in nested menue 2023-04-30 14:25:25 +02:00
Nuno Coração 92f26f9bdd Merge pull request #687 from nunocoracao/dev
🔖 release v2.33.0
2023-04-29 16:55:31 +01:00
Nuno Coração ad620c454b final 2023-04-29 16:55:14 +01:00
Nuno Coração e10caf4cf4 updated readme 2023-04-29 16:45:18 +01:00
Nuno Coração 04e4419c07 final polish 2023-04-29 16:42:52 +01:00
Nuno Coração 5ba7d0d9f7 Merge pull request #686 from nunocoracao/619-tabs-with-recent-and-featured-posts
✨ Related articles
2023-04-29 16:05:17 +01:00
Nuno Coração 66198da716 ✨ Related articles feature added 2023-04-29 15:56:55 +01:00
Nuno Coração 974fbf2687 Merge pull request #685 from nunocoracao/589-default-featured-image
✨ Default featured image
2023-04-29 12:09:32 +01:00
Nuno Coração 53e6a6a45b ✨ Default featured image 2023-04-29 12:08:08 +01:00
Nuno Coração ca81165e93 Merge pull request #684 from nunocoracao/681-substack-icon-link
✨ Substack icon
2023-04-29 11:54:05 +01:00
Nuno Coração bb92f916fb ✨ Substack icon 2023-04-29 11:53:24 +01:00
Nuno Coração cfa91313a3 Merge pull request #680 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-3.3.2
📌 Bump tailwindcss from 3.3.1 to 3.3.2
2023-04-29 11:34:31 +01:00
Nuno Coração 9c06a77fdf Merge branch 'dev' into dependabot/npm_and_yarn/dev/tailwindcss-3.3.2 2023-04-29 11:34:25 +01:00
Nuno Coração 495670c03a Merge pull request #682 from DanWiseProgramming/feature/add_bulgarian_translation
🌐 Add Bulgarian translation
2023-04-29 11:33:08 +01:00
Nuno Coração bfea9da5b8 Merge pull request #678 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-2.8.8
📌 Bump prettier from 2.8.7 to 2.8.8
2023-04-28 14:13:05 +01:00
Nuno Coração a974891894 Merge pull request #677 from DanWiseProgramming/fix/typo_in_english_language_file
🌐 Fix typo in English translation
2023-04-28 14:10:00 +01:00
Nuno Coração c3be8efbd6 Merge pull request #674 from hellstabber/patch-1
I added my personal website
2023-04-28 14:09:02 +01:00
Daniel Odrinski 25a60fffd1 ✨[#676] Add logo dark/light mode switching mechanism 2023-04-26 18:49:53 +01:00
Daniel Odrinski c5ce1df3a3 🌐 Add Bulgarian translation 2023-04-26 18:11:05 +01:00
dependabot[bot] f74fa4c47c 💄 Rebuild CSS 2023-04-26 06:02:22 +00:00
dependabot[bot] 19cf871962 📌 Bump tailwindcss from 3.3.1 to 3.3.2
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/v3.3.2/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.3.1...v3.3.2)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-26 06:01:48 +00:00
dependabot[bot] ac0e87102d 💄 Rebuild CSS 2023-04-24 06:05:37 +00:00
dependabot[bot] 887fe0a5c4 📌 Bump prettier from 2.8.7 to 2.8.8
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.7 to 2.8.8.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.7...2.8.8)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 06:05:04 +00:00
Daniel Odrinski 083bea8573 🌐 Fix typo in English translation 2023-04-23 14:57:42 +01:00
hellstabber 2f0151858a I added my personal website 2023-04-23 01:37:53 +03:00
Nuno Coração 02b6dc91c8 Merge pull request #673 from nunocoracao/dev
🔖 release v2.32.1
2023-04-22 13:03:24 +01:00
Nuno Coração 8cfcf441cf updated version 2023-04-22 13:01:57 +01:00
Nuno Coração 6ad2415c6d fixed tw-elements breaking changes 2023-04-22 13:01:24 +01:00
Nuno Coração 979dd97103 Merge pull request #672 from nunocoracao/663-list-hover-styling-too-bright
fixed 🎨 List hover styling too bright
2023-04-22 12:55:20 +01:00
Nuno Coração 096fa3e919 fixed 🎨 List hover styling too bright 2023-04-22 12:54:31 +01:00
Nuno Coração af93d93c23 Merge pull request #668 from nunocoracao/dependabot/npm_and_yarn/dev/tw-elements-1.0.0-beta2
📌 Bump tw-elements from 1.0.0-beta1 to 1.0.0-beta2
2023-04-22 12:35:11 +01:00
Nuno Coração 0a2854079a Merge pull request #666 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.14
📌 Bump @headlessui/react from 1.7.13 to 1.7.14
2023-04-22 12:34:58 +01:00
Nuno Coração ec9e78e3e1 Merge pull request #667 from nunocoracao/dependabot/npm_and_yarn/dev/commander-10.0.1
📌 Bump commander from 10.0.0 to 10.0.1
2023-04-22 12:34:43 +01:00
Nuno Coração 1fd4c96eb9 Merge pull request #671 from nunocoracao/dependabot/npm_and_yarn/dev/katex-0.16.6
📌 Bump katex from 0.16.4 to 0.16.6
2023-04-22 12:34:26 +01:00
dependabot[bot] 31c6cf5a14 📦 Update packaged KaTeX 2023-04-18 06:02:10 +00:00
dependabot[bot] 68a9e1f903 📌 Bump katex from 0.16.4 to 0.16.6
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.4 to 0.16.6.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.4...v0.16.6)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-18 06:01:31 +00:00
dependabot[bot] eb4fd37982 📌 Bump tw-elements from 1.0.0-beta1 to 1.0.0-beta2
Bumps [tw-elements](https://github.com/mdbootstrap/Tailwind-Elements) from 1.0.0-beta1 to 1.0.0-beta2.
- [Release notes](https://github.com/mdbootstrap/Tailwind-Elements/releases)
- [Commits](https://github.com/mdbootstrap/Tailwind-Elements/compare/v1.0.0-beta1...v1.0.0-beta2)

---
updated-dependencies:
- dependency-name: tw-elements
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 06:05:02 +00:00
dependabot[bot] 8e7037268a 📌 Bump commander from 10.0.0 to 10.0.1
Bumps [commander](https://github.com/tj/commander.js) from 10.0.0 to 10.0.1.
- [Release notes](https://github.com/tj/commander.js/releases)
- [Changelog](https://github.com/tj/commander.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tj/commander.js/compare/v10.0.0...v10.0.1)

---
updated-dependencies:
- dependency-name: commander
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 06:04:52 +00:00
dependabot[bot] 1ac7f4583e 📌 Bump @headlessui/react from 1.7.13 to 1.7.14
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.13 to 1.7.14.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.14/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 06:04:42 +00:00
Nuno Coração 04d514c06a Merge pull request #662 from nunocoracao/dev
🔖 release v2.32.0
2023-04-10 22:16:55 +01:00
Nuno Coração 9c91fc3083 bump version 2023-04-10 22:16:03 +01:00
Nuno Coração 3be3e817bc Merge pull request #661 from nunocoracao/650-external-posts-should-not-display-likes-and-views
🐛 External posts should not display likes and views
2023-04-10 22:13:41 +01:00
Nuno Coração e770bc974a 🐛 External posts should not display likes and views 2023-04-10 22:12:31 +01:00
Nuno Coração b18027c486 Merge pull request #660 from nunocoracao/658-fix-card-height-in-lists
🐛 fix card height in lists
2023-04-10 21:56:58 +01:00
Nuno Coração b2849743d6 🐛 fix card height in lists 2023-04-10 21:56:12 +01:00
Nuno Coração ae3b8d9933 Merge pull request #659 from nunocoracao/646-add-telegram-and-whatsapp-share-icon
✨ Add telegram and whatsapp share icons
2023-04-10 21:49:00 +01:00
Nuno Coração 7d8f6afab2 erge branch '646-add-telegram-and-whatsapp-share-icon' of https://github.com/nunocoracao/blowfish into 646-add-telegram-and-whatsapp-share-icon 2023-04-10 21:47:24 +01:00
Nuno Coração 088050c06f ✨ Add telegram and whatsapp share icons 2023-04-10 21:46:53 +01:00
Nuno Coração b041980cc0 Merge pull request #641 from DiogoM1/add_gitlab_shortcode
✨ Add gitlab shortcode
2023-04-10 21:37:06 +01:00
Nuno Coração 015c2955a9 Merge pull request #649 from maciejopalinski/patch-1
fix: Remove heading anchor content
2023-04-10 21:22:20 +01:00
Nuno Coração 9856cf1e3b Merge pull request #651 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.2.7
📌 Bump prettier-plugin-tailwindcss from 0.2.6 to 0.2.7
2023-04-10 21:14:56 +01:00
dependabot[bot] 56f6ee08c6 📌 Bump prettier-plugin-tailwindcss from 0.2.6 to 0.2.7
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.6 to 0.2.7.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.6...v0.2.7)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 20:12:45 +00:00
Nuno Coração a3aa70db86 Merge pull request #657 from nunocoracao/dependabot/npm_and_yarn/dev/rimraf-5.0.0
📌 Bump rimraf from 4.4.1 to 5.0.0
2023-04-10 21:11:56 +01:00
dependabot[bot] 9024af82bf 📌 Bump rimraf from 4.4.1 to 5.0.0
Bumps [rimraf](https://github.com/isaacs/rimraf) from 4.4.1 to 5.0.0.
- [Release notes](https://github.com/isaacs/rimraf/releases)
- [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/rimraf/compare/v4.4.1...v5.0.0)

---
updated-dependencies:
- dependency-name: rimraf
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 06:08:34 +00:00
Maciej Opaliński 8a892cfb68 fix: Remove heading anchor content 2023-04-05 22:22:43 +02:00
DioDuPiMa d335c7dc71 [ADD] Gitlab shortcut documentation 2023-04-05 01:02:03 +01:00
DioDuPiMa c1aca647c7 [ADD] Base URL option for short code and an appropriate default for gitlab's public instance 2023-04-05 00:47:46 +01:00
Nuno Coração 8ece6072fc Merge pull request #647 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-3.3.1
📌 Bump tailwindcss from 3.3.0 to 3.3.1
2023-03-31 10:11:49 +01:00
dependabot[bot] 347a58a504 💄 Rebuild CSS 2023-03-31 09:11:31 +00:00
dependabot[bot] 2189a0c997 📌 Bump tailwindcss from 3.3.0 to 3.3.1
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/v3.3.1/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-31 09:11:06 +00:00
Nuno Coração 45a861c56d Merge pull request #644 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.2.6
📌 Bump prettier-plugin-tailwindcss from 0.2.5 to 0.2.6
2023-03-31 10:10:59 +01:00
Nuno Coração b91d9c2d4c Merge pull request #645 from nunocoracao/dependabot/npm_and_yarn/dev/heroicons/react-2.0.17
📌 Bump @heroicons/react from 2.0.16 to 2.0.17
2023-03-31 10:10:34 +01:00
Nuno Coração 2949795cc2 Merge pull request #640 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-3.3.0
📌 Bump tailwindcss from 3.2.7 to 3.3.0
2023-03-31 10:10:05 +01:00
dependabot[bot] c45cf9b65d 📌 Bump @heroicons/react from 2.0.16 to 2.0.17
Bumps [@heroicons/react](https://github.com/tailwindlabs/heroicons) from 2.0.16 to 2.0.17.
- [Release notes](https://github.com/tailwindlabs/heroicons/releases)
- [Changelog](https://github.com/tailwindlabs/heroicons/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/heroicons/compare/v2.0.16...v2.0.17)

---
updated-dependencies:
- dependency-name: "@heroicons/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-31 06:01:51 +00:00
dependabot[bot] c5570a2e93 📌 Bump prettier-plugin-tailwindcss from 0.2.5 to 0.2.6
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.5 to 0.2.6.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.5...v0.2.6)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-30 06:02:37 +00:00
Diogo Macedo 3d9978c225 [FIX] Replace github naming 2023-03-29 22:32:46 +01:00
DioDuPiMa 242789f6d2 [add] PoC implementation of gitlab shortcut 2023-03-29 19:54:43 +01:00
dependabot[bot] 74c105c1fd 💄 Rebuild CSS 2023-03-29 06:03:33 +00:00
dependabot[bot] 36b59471eb 📌 Bump tailwindcss from 3.2.7 to 3.3.0
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.2.7 to 3.3.0.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.2.7...v3.3.0)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-29 06:03:08 +00:00
Nuno Coração b0875b040a Merge pull request #635 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-2.8.7 2023-03-27 08:43:02 +01:00
Nuno Coração ba2758b3ed Merge pull request #632 from nunocoracao/dependabot/github_actions/dev/actions/deploy-pages-2 2023-03-27 08:42:24 +01:00
Nuno Coração 96f8994866 Merge pull request #633 from nunocoracao/dependabot/github_actions/dev/actions/stale-8 2023-03-27 08:41:58 +01:00
dependabot[bot] d038fd0b33 📌 Bump prettier from 2.8.6 to 2.8.7
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.6 to 2.8.7.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.6...2.8.7)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-27 06:08:30 +00:00
dependabot[bot] 75ea2736ad 👷 Bump actions/stale from 7 to 8
Bumps [actions/stale](https://github.com/actions/stale) from 7 to 8.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-26 06:02:20 +00:00
dependabot[bot] 243100053e 👷 Bump actions/deploy-pages from 1 to 2
Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 1 to 2.
- [Release notes](https://github.com/actions/deploy-pages/releases)
- [Commits](https://github.com/actions/deploy-pages/compare/v1...v2)

---
updated-dependencies:
- dependency-name: actions/deploy-pages
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-26 06:02:14 +00:00
1314 changed files with 24187 additions and 4609 deletions

No files matched your search

+3 -2
View File
@@ -7,7 +7,8 @@ updates:
directory: "/"
target-branch: "dev"
schedule:
interval: "daily"
interval: "weekly"
day: "wednesday"
commit-message:
prefix: "📌"
labels:
@@ -17,7 +18,7 @@ updates:
target-branch: "dev"
schedule:
interval: "weekly"
day: "sunday"
day: "wednesday"
commit-message:
prefix: "👷"
labels:
+1 -1
View File
@@ -8,7 +8,7 @@ jobs:
if: ${{ github.actor == 'dependabot[bot]' }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: "${{ github.head_ref }}"
- name: Install dependencies and Build Theme
+2 -2
View File
@@ -12,7 +12,7 @@ jobs:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
@@ -23,7 +23,7 @@ jobs:
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
hugo -E -F --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
- name: Deploy preview
uses: FirebaseExtended/action-hosting-deploy@v0
+2 -2
View File
@@ -14,7 +14,7 @@ jobs:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
@@ -25,7 +25,7 @@ jobs:
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
hugo -E -F --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
- name: Deploy Production
uses: FirebaseExtended/action-hosting-deploy@v0
+3 -3
View File
@@ -37,7 +37,7 @@ jobs:
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_Linux-64bit.deb \
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Pages
@@ -51,7 +51,7 @@ jobs:
run: |
hugo --minify -s exampleSite --themesDir ../.. -d ../docs --baseURL https://nunocoracao.github.io/blowfish/
- name: Upload artifact
uses: actions/upload-pages-artifact@v1
uses: actions/upload-pages-artifact@v2
with:
path: ./docs
@@ -65,4 +65,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v1
uses: actions/deploy-pages@v2
+1 -1
View File
@@ -18,7 +18,7 @@ jobs:
pull-requests: write
steps:
- uses: actions/stale@v7
- uses: actions/stale@v8
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue will be closed since it has been stale for 60 days.'
+1 -1
View File
@@ -10,7 +10,7 @@ jobs:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 0
+7 -2
View File
@@ -16,6 +16,11 @@
#others
node_modules
.DS_Store
**/.DS_Store
.hugo_build.lock
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
+2
View File
@@ -0,0 +1,2 @@
github: [nunocoracao]
custom: ["https://www.paypal.me/nunocoracao", "https://www.buymeacoffee.com/nunocoracao"]
+5 -5
View File
@@ -29,13 +29,13 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
- Highly customisable configuration
- Firebase integration to support dynamic data
- Views count & like mechanism
- Related articles
- Multiple homepage layouts
- Support for multiple authors
- Support for series of articles
- Multiple authors
- Series of articles
- Flexible with any content types, taxonomies and menus
- Support for header and footer menus
- Support for nested menus
- Support for sub-navigation menu
- Header and footer menus
- Nested menus & sub-navigation menu
- Multilingual content support inlcuding support for RTL languages
- Ability to link to posts on third-party websites
- Support for several shortcodes like Gallery, Timeline, GitHub cards, and Carousels
BIN
View File
Binary file not shown.
+1422 -411
View File
File diff suppressed because it is too large. Load diff
+8 -1
View File
@@ -348,7 +348,14 @@ body:has(#menu-controller:checked) {
}
.thumbnail_card {
height: 250px;
height: 200px;
background-repeat:no-repeat;
background-size:cover;
background-position:center;
}
.thumbnail_card_related {
height: 150px;
background-repeat:no-repeat;
background-size:cover;
background-position:center;
+2
View File
@@ -0,0 +1,2 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512">
<path fill="currentColor" d="M320 32c-8.1 0-16.1 1.4-23.7 4.1L15.8 137.4C6.3 140.9 0 149.9 0 160s6.3 19.1 15.8 22.6l57.9 20.9C57.3 229.3 48 259.8 48 291.9v28.1c0 28.4-10.8 57.7-22.3 80.8c-6.5 13-13.9 25.8-22.5 37.6C0 442.7-.9 448.3 .9 453.4s6 8.9 11.2 10.2l64 16c4.2 1.1 8.7 .3 12.4-2s6.3-6.1 7.1-10.4c8.6-42.8 4.3-81.2-2.1-108.7C90.3 344.3 86 329.8 80 316.5V291.9c0-30.2 10.2-58.7 27.9-81.5c12.9-15.5 29.6-28 49.2-35.7l157-61.7c8.2-3.2 17.5 .8 20.7 9s-.8 17.5-9 20.7l-157 61.7c-12.4 4.9-23.3 12.4-32.2 21.6l159.6 57.6c7.6 2.7 15.6 4.1 23.7 4.1s16.1-1.4 23.7-4.1L624.2 182.6c9.5-3.4 15.8-12.5 15.8-22.6s-6.3-19.1-15.8-22.6L343.7 36.1C336.1 33.4 328.1 32 320 32zM128 408c0 35.3 86 72 192 72s192-36.7 192-72L496.7 262.6 354.5 314c-11.1 4-22.8 6-34.5 6s-23.5-2-34.5-6L143.3 262.6 128 408z"/></svg>

After

Width:  |  Height:  |  Size: 857 B

+2
View File
@@ -0,0 +1,2 @@
<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 640 512">
<path fill="currentColor" d="M384 32H512c17.7 0 32 14.3 32 32s-14.3 32-32 32H398.4c-5.2 25.8-22.9 47.1-46.4 57.3V448H512c17.7 0 32 14.3 32 32s-14.3 32-32 32H320 128c-17.7 0-32-14.3-32-32s14.3-32 32-32H288V153.3c-23.5-10.3-41.2-31.6-46.4-57.3H128c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c14.6-19.4 37.8-32 64-32s49.4 12.6 64 32zm55.6 288H584.4L512 195.8 439.6 320zM512 416c-62.9 0-115.2-34-126-78.9c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1C627.2 382 574.9 416 512 416zM126.8 195.8L54.4 320H199.3L126.8 195.8zM.9 337.1c-2.6-11 1-22.3 6.7-32.1l95.2-163.2c5-8.6 14.2-13.8 24.1-13.8s19.1 5.3 24.1 13.8l95.2 163.2c5.7 9.8 9.3 21.1 6.7 32.1C242 382 189.7 416 126.8 416S11.7 382 .9 337.1z"/></svg>

After

Width:  |  Height:  |  Size: 840 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 511.471"><path fill="currentColor" d="M0 0h448v62.804H0V0zm0 229.083h448v282.388L223.954 385.808 0 511.471V229.083zm0-114.542h448v62.804H0v-62.804z"/></svg>

After

Width:  |  Height:  |  Size: 213 B

BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+40 -6
View File
@@ -26,16 +26,19 @@ window.addEventListener("DOMContentLoaded", (event) => {
const switcher = document.getElementById("appearance-switcher");
const switcherMobile = document.getElementById("appearance-switcher-mobile");
updateMeta()
updateMeta();
this.updateLogo?.(getTargetAppearance());
if (switcher) {
switcher.addEventListener("click", () => {
document.documentElement.classList.toggle("dark");
var targetAppearance = getTargetAppearance();
localStorage.setItem(
"appearance",
document.documentElement.classList.contains("dark") ? "dark" : "light"
targetAppearance
);
updateMeta()
updateMeta();
this.updateLogo?.(targetAppearance);
});
switcher.addEventListener("contextmenu", (event) => {
event.preventDefault();
@@ -45,11 +48,13 @@ window.addEventListener("DOMContentLoaded", (event) => {
if (switcherMobile) {
switcherMobile.addEventListener("click", () => {
document.documentElement.classList.toggle("dark");
var targetAppearance = getTargetAppearance();
localStorage.setItem(
"appearance",
document.documentElement.classList.contains("dark") ? "dark" : "light"
targetAppearance
);
updateMeta()
updateMeta();
this.updateLogo?.(targetAppearance);
});
switcherMobile.addEventListener("contextmenu", (event) => {
event.preventDefault();
@@ -64,4 +69,33 @@ var updateMeta = () => {
elem = document.querySelector('body');
style = getComputedStyle(elem);
document.querySelector('meta[name="theme-color"]').setAttribute('content', style.backgroundColor);
}
}
{{ if and (.Site.Params.Logo) (.Site.Params.SecondaryLogo) }}
{{ $primaryLogo := resources.Get .Site.Params.Logo }}
{{ $secondaryLogo := resources.Get .Site.Params.SecondaryLogo }}
{{ if and ($primaryLogo) ($secondaryLogo) }}
var updateLogo = (targetAppearance) => {
var elems;
elems = document.querySelectorAll("img.logo")
targetLogoPath =
targetAppearance == "{{ .Site.Params.DefaultAppearance }}" ?
"{{ $primaryLogo.RelPermalink }}" : "{{ $secondaryLogo.RelPermalink }}"
for (const elem of elems) {
elem.setAttribute("src", targetLogoPath)
}
}
{{ end }}
{{- end }}
var getTargetAppearance = () => {
return document.documentElement.classList.contains("dark") ? "dark" : "light"
}
window.addEventListener("DOMContentLoaded", (event) => {
const scroller = document.getElementById("top-scroller");
const footer = document.getElementById("site-footer");
if(scroller && footer && scroller.getBoundingClientRect().top > footer.getBoundingClientRect().top) {
scroller.hidden = true;
}
});
+10 -13
View File
@@ -3,26 +3,23 @@ if (typeof auth !== 'undefined') {
var likesCollection = db.collection('likes');
function numberWithCommas(x) {
//return x.toString().replace(/\B(?<!\.\d*)(?=(\d{3})+(?!\d))/g, ",");
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
var update_views = function (oid, id) {
var update_views = function (node, id) {
viewsCollection.doc(id).onSnapshot(doc => {
var data = doc.data();
if (data) {
var label = document.querySelectorAll("span[id='" + oid + "']")[0].innerText.split(' ')[1]
document.querySelectorAll("span[id='" + oid + "']")[0].innerText = numberWithCommas(data.views)
node.innerText = numberWithCommas(data.views)
}
})
}
var update_likes = function (oid, id) {
var update_likes = function (node, id) {
likesCollection.doc(id).onSnapshot(doc => {
var data = doc.data();
if (data) {
var label = document.querySelectorAll("span[id='" + oid + "']")[0].innerText.split(' ')[1]
document.querySelectorAll("span[id='" + oid + "']")[0].innerText = numberWithCommas(data.likes)
node.innerText = numberWithCommas(data.likes)
}
})
}
@@ -33,20 +30,20 @@ if (typeof auth !== 'undefined') {
var views_nodes = document.querySelectorAll("span[id^='views_']")
for (var i in views_nodes) {
var oid = views_nodes[i].id
var id = oid ? oid.replaceAll("/", "-") : oid
var node = views_nodes[i]
var id = node.id ? node.id.replaceAll("/", "-") : node.id
if (id) {
update_views(oid, id)
update_views(node, id)
}
}
var likes_nodes = document.querySelectorAll("span[id^='likes_']")
for (var i in likes_nodes) {
var oid = likes_nodes[i].id
var id = oid ? oid.replaceAll("/", "-") : oid
var node = likes_nodes[i]
var id = node.id ? node.id.replaceAll("/", "-") : node.id
if (id) {
update_likes(oid, id)
update_likes(node, id)
}
}
})
BIN
View File
Binary file not shown.
+5 -5
View File
@@ -1,14 +1,14 @@
/*!
* Chart.js v4.2.1
* Chart.js v4.3.3
* https://www.chartjs.org
* (c) 2023 Chart.js Contributors
* Released under the MIT License
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return jo},get Decimation(){return Uo},get Filler(){return ha},get Legend(){return fa},get SubTitle(){return ba},get Title(){return pa},get Tooltip(){return La}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function m(t,e,i,s){if(!p(t))return;const n=e[t],a=i[t];o(n)&&o(a)?b(n,a,s):e[t]=g(a)}function b(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let e=0;e<a;++e){if(l=s[e],!o(l))continue;const n=Object.keys(l);for(let e=0,s=n.length;e<s;++e)r(n[e],t,l,i)}return t}function x(t,e){return b(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=e[t],n=i[t];o(s)&&o(n)?x(s,n):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=g(n))}const y={"":t=>t,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function B(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function N(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function W(t){return!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function Y(t){return t*(180/C)}function U(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function X(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function K(t,e){return(t-e+A)%O-C}function G(t){return(t%O+O)%O}function Z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function J(t,e,i){return Math.max(e,Math.min(i,t))}function Q(t){return J(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const ot=["push","pop","shift","splice","unshift"];function at(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),ot.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){Line truncated
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Ko},get Decimation(){return Jo},get Filler(){return pa},get Legend(){return _a},get SubTitle(){return wa},get Title(){return va},get Tooltip(){return Va}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function m(t,e,i,s){if(!p(t))return;const n=e[t],a=i[t];o(n)&&o(a)?b(n,a,s):e[t]=g(a)}function b(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let e=0;e<a;++e){if(l=s[e],!o(l))continue;const n=Object.keys(l);for(let e=0,s=n.length;e<s;++e)r(n[e],t,l,i)}return t}function x(t,e){return b(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=e[t],n=i[t];o(s)&&o(n)?x(s,n):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=g(n))}const y={"":t=>t,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function B(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function W(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function N(t){return!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function Y(t){return t*(180/C)}function U(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function X(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function K(t,e){return(t-e+A)%O-C}function G(t){return(t%O+O)%O}function Z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function J(t,e,i){return Math.max(e,Math.min(i,t))}function Q(t){return J(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const ot=["push","pop","shift","splice","unshift"];function at(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),ot.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){Line truncated
/*!
* @kurkle/color v0.3.0
* @kurkle/color v0.3.2
* https://github.com/kurkle/color#readme
* (c) 2022 Jukka Kurkela
* (c) 2023 Jukka Kurkela
* Released under the MIT License
*/function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function zt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(Mt)}function Ft(t,e,i){return zt(Lt,t,e,i)}function Vt(t){return(t%360+360)%360}function Bt(t){const e=Tt.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?vt(+e[5]):Mt(+e[5]));const n=Vt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return zt(Rt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return zt(Et,t,e,i)}(n,o,a):Ft(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Nt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Wt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Ht;function jt(t){Ht||(Ht=function(){const t={},e=Object.keys(Wt),i=Object.keys(Nt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Nt[o]);o=parseInt(Wt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
*/function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function zt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(Mt)}function Ft(t,e,i){return zt(Lt,t,e,i)}function Vt(t){return(t%360+360)%360}function Bt(t){const e=Tt.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?vt(+e[5]):Mt(+e[5]));const n=Vt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return zt(Rt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return zt(Et,t,e,i)}(n,o,a):Ft(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Wt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Nt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Ht;function jt(t){Ht||(Ht=function(){const t={},e=Object.keys(Nt),i=Object.keys(Wt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Wt[o]);o=parseInt(Nt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
//# sourceMappingURL=chart.umd.js.map
+2 -2
View File
@@ -1,2 +1,2 @@
/*! jQuery v3.6.4 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/animatedSelector,-effects/Tween | (c) OpenJS Foundation and other contributors | jquery.org/license */
!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(g,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,v=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,y=n.hasOwnProperty,a=y.toString,l=a.call(Object),m={},b=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},w=g.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function C(e,t,n){var r,i,o=(n=n||w).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function T(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.4 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/animatedSelector,-effects/Tween",E=function(e,t){return new E.fn.init(e,t)};function d(e){var t=!!e&&"length"in e&&e.length,n=T(e);return!b(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:f,constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(E.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(E.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||b(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(E.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||E.isPlainObject(n)?n:{},i=!1,a[t]=E.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},E.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=y.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){C(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(d(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(d(Object(e))?E.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(d(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return v(a)},guid:1,support:m}),"function"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var p=function(n){var e,p,x,o,i,h,f,g,w,u,l,C,T,a,E,v,s,c,y,A="sizzle"+1*new Date,d=n.document,N=0,r=0,m=ue(),b=ue(),S=ue(),k=ue(),D=function(e,t){return e===t&&(l=!0),0},L={}.hasOwnProperty,t=[],j=t.pop,q=t.push,O=t.push,P=t.slice,H=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},I="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",R="[\\x20\\t\\r\\n\\f]",B="(?:\\\\[\\da-fA-F]{1,6}"+R+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",M="\\["+R+"*("+B+")(?:"+R+"*([*^$|!~]?=)"+R+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+B+"))|)"+R+"*\\]",W=":("+B+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+M+")*)|.*)\\)|)",F=new RegExp(R+"+","g"),$=new RegExp("^"+R+"+|((?:^|[^\\\\])(?:\\\\.)*)"+R+"+$","g"),z=new RegExp("^"+R+"*,"+R+"*"),_=new RegExp("^"+R+"*([>+~]|"+R+")"+R+"*"),U=new RegExp(R+Line truncated
/*! jQuery v3.7.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/animatedSelector,-effects/Tween | (c) OpenJS Foundation and other contributors | jquery.org/license */
!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},m=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||m).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.1 -ajax,-ajax/jsonp,-ajax/load,-ajax/script,-ajax/var/location,-ajax/var/nonce,-ajax/var/rquery,-ajax/xhr,-manipulation/_evalUrl,-deprecated/ajax-event-alias,-effects,-effects/animatedSelector,-effects/Tween",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}function fe(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}ce.fn=ce.prototype={jquery:t,constructor:ce,length:0,toArray:function(){return ae.call(this)},get:function(e){return null==e?ae.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=ce.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return ce.each(this,e)},map:function(n){return this.pushStack(ce.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(ae.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(ce.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(ce.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:s,sort:oe.sort,splice:oe.splice},ce.extend=ce.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||v(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(ce.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||ce.isPlainObject(n)?n:{},i=!1,a[t]=ce.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},ce.extend({expando:"jQuery"+(t+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==i.call(e))&&(!(t=r(e))||"function"==typeof(n=ue.call(t,"constructor")&&t.constructor)&&o.call(n)===a)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(c(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},text:function(e){var t,n="",r=0,i=e.nodeType;if(!i)while(t=e[r++])n+=ce.text(t);return 1===i||11===i?e.textContent:9===i?e.documentElement.textContent:3===i||4===i?e.nodeValue:n},makeArray:function(e,t){var n=t||[];return null!=e&&(c(Object(e))?ce.merge(n,"string"==typeof e?[e]:e):s.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:se.call(t,e,n)},isXMLDoc:function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!l.test(t||n&&n.nodeName||"HTML")},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(c(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:le}),"function"==typeof Symbol&&(ce.fn[Symbol.iterator]=oe[Symbol.iterator]),ce.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var de=oe.pop,pe=oe.sort,he=oe.splice,ge="[\\x20\\t\\r\\n\\f]",ve=new RegExp("^"+ge+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ge+"+$","g");ce.contains=function(e,t){var n=t&&t.parentNode;return e===n||!(!n||1!==n.nodeType||!(e.contains?e.contains(n):e.compareDocumentPosition&&16&e.compareDocumentPosition(n)))};var f=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g;function d(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e}ce.escapeSelector=function(e){return(e+Line truncated
+1 -1
View File
@@ -1 +1 @@
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.4"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pxLine truncated
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.8"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pxLine truncated
+1 -1
View File
@@ -1 +1 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Qn}});var r=function e(t,r){this.position=void 0;var n,a="KaTeX parse error: "+t,i=r&&r.loc;if(i&&i.start<=i.end){var o=i.lexer.input;n=i.start;var s=i.end;n===o.length?a+=" at end of input: ":a+=" at position "+(n+1)+": ";var l=o.slice(n,s).replace(/[^]/g,"$&\u0332");a+=(n>15?"\u2026"+o.slice(n-15,n):o.slice(0,n))+l+(s+15<o.length?o.slice(s,s+15)+"\u2026":o.slice(s))}var h=new Error(a);return h.name="ParseError",h.__proto__=e.prototype,h.position=n,h};r.prototype.__proto__=Error.prototype;var n=r,a=/([A-Z])/g,i={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|&#0*58|&#x0*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand <n>",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var m=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,thiLine truncated
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return na}});var r=function e(t,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n,a,i="KaTeX parse error: "+t,o=r&&r.loc;if(o&&o.start<=o.end){var s=o.lexer.input;n=o.start,a=o.end,n===s.length?i+=" at end of input: ":i+=" at position "+(n+1)+": ";var l=s.slice(n,a).replace(/[^]/g,"$&\u0332");i+=(n>15?"\u2026"+s.slice(n-15,n):s.slice(0,n))+l+(a+15<s.length?s.slice(a,a+15)+"\u2026":s.slice(a))}var h=new Error(i);return h.name="ParseError",h.__proto__=e.prototype,h.position=n,null!=n&&null!=a&&(h.length=a-n),h.rawMessage=t,h};r.prototype.__proto__=Error.prototype;var n=r,a=/([A-Z])/g,i={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|&#0*58|&#x0*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand <n>",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var m=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void Line truncated
+431 -14
View File
@@ -1,18 +1,435 @@
/*!
*
* Tailwind Elements is an open-source UI kit of advanced components for TailwindCSS.
* Copyright © 2023 MDBootstrap.com
*
* Unless a custom, individually assigned license has been granted, this program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
* In addition, a custom license may be available upon request, subject to the terms and conditions of that license. Please contact tailwind@mdbootstrap.com for more information on obtaining a custom license.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
*
*/
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("te",[],e):"object"==typeof exports?exports.te=e():t.te=e()}(this,function(){return i=[function(t,e,i){var i=i(44),n=Function.prototype,s=n.call,n=i&&n.bind.bind(s,s);t.exports=i?n:function(t){return function(){return s.apply(t,arguments)}}},function(t,e,i){var i=i(72),n=i.all;t.exports=i.IS_HTMLDDA?function(t){return"function"==typeof t||t===n}:function(t){return"function"==typeof t}},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(i,t,e){!function(t){function e(t){return t&&t.Math==Math&&t}i.exports=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")()}.call(this,e(119))},function(t,e,i){var n=i(3),s=i(54),o=i(12),a=i(76),r=i(75),i=i(74),l=n.Symbol,c=s("wks"),h=i?l.for||l:l&&l.withoutSetter||a;t.exports=function(t){return o(c,t)||(c[t]=r&&o(l,t)?l[t]:h("Symbol."+t)),c[t]}},function(t,e,i){var i=i(44),n=Function.prototype.call;t.exports=i?n.bind(n):function(){return n.apply(n,arguments)}},function(t,e,i){"use strict";var n=i(31),s=i(93),o=i(38),a=i(20),r=i(14).f,l=i(96),c=i(100),h=i(19),i=i(11),d="Array Iterator",u=a.set,p=a.getterFor(d),a=(t.exports=l(Array,"Array",function(t,e){u(this,{type:d,target:n(t),index:0,kind:e})},function(){var t=p(this),e=t.target,i=t.kind,n=t.index++;return!e||n>=e.length?(t.target=void 0,c(void 0,!0)):c("keys"==i?n:"values"==i?e[n]:[n,e[n]],!1)},"values"),o.Arguments=o.Array);if(s("keys"),s("values"),s("entries"),!h&&i&&"values"!==a.name)try{r(a,"name",{value:"values"})}catch(t){}},function(t,e,i){"use strict";var n=i(10),i=i(63);n({target:"RegExp",proto:!0,forced:/./.exec!==i},{exec:i})},function(t,e,i){"use strict";var n=i(10),s=i(83).includes,o=i(2),i=i(93);n({target:"Array",proto:!0,forced:o(function(){return!Array(1).includes()})},{includes:function(t){return s(this,t,1<arguments.length?arguments[1]:void 0)}}),i("includes")},function(t,e,i){function n(e,t){if(e){if(e[h]!==u)try{c(e,h,u)}catch(t){e[h]=u}if(e[d]||c(e,d,t),a[t])for(var i in l)if(e[i]!==l[i])try{c(e,i,l[i])}catch(t){e[i]=l[i]}}}var s,o=i(3),a=i(135),r=i(136),l=i(6),c=i(26),i=i(4),h=i("iterator"),d=i("toStringTag"),u=l.values;for(s in a)n(o[s]&&o[s].prototype,s);n(r,"DOMTokenList")},function(t,e,i){var c=i(3),h=i(51).f,d=i(26),u=i(16),p=i(56),f=i(80),m=i(62);t.exports=function(t,e){var i,n,s,o=t.target,a=t.global,r=t.stat,l=a?c:r?c[o]||p(o,{}):(c[o]||{}).prototype;if(l)for(i in e){if(n=e[i],s=t.dontCallGetSet?(s=h(l,i))&&s.value:l[i],!m(a?i:o+(r?".":"#")+i,t.forced)&&void 0!==s){if(typeof n==typeof s)continue;f(n,s)}(t.sham||s&&s.sham)&&d(n,"sham",!0),u(l,i,n,t)}}},function(t,e,i){i=i(2);t.exports=!i(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})},function(t,e,i){var n=i(0),s=i(23),o=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return o(s(t),e)}},function(t,e,i){var n=i(15),s=String,o=TypeError;t.exports=function(t){if(n(t))return t;throw o(s(t)+" is not an object")}},function(t,e,i){var n=i(11),s=i(77),o=i(78),a=i(13),r=i(53),l=TypeError,c=Object.defineProperty,h=Object.getOwnPropertyDescriptor,d="enumerable",u="configurable",p="writable";e.f=n?o?function(t,e,i){var n;return a(t),e=r(e),a(i),"function"==typeof t&&"prototype"===e&&"value"in i&&p in i&&!i[p]&&(n=h(t,e))&&n[p]&&(t[e]=i.value,i={configurable:(u in i?i:n)[u],enumerable:(d in i?i:n)[d],writable:!1}),c(t,e,i)}:c:function(t,e,i){if(a(t),e=r(e),a(i),s)try{return c(t,e,i)}catch(t){}if("get"in i||"set"in i)throw l("Accessors not supported");return"value"in i&&(t[e]=i.value),t}},function(t,e,i){var n=i(1),i=i(72),s=i.all;t.exports=i.IS_HTMLDDA?function(t){return"object"==typeof t?null!==t:n(t)||t===s}:function(t){return"object"==typeof t?null!==t:n(t)}},function(t,e,i){var a=i(1),r=i(14),l=i(79),c=i(56);t.exports=function(t,e,i,n){var s=(n=n||{}).enumerable,o=void 0!==n.name?n.name:e;if(a(i)&&l(i,o,n),n.global)s?t[e]=i:c(e,i);else{try{n.unsafe?t[e]&&(s=!0):delete t[e]}catch(t){}s?t[e]=i:r.f(t,e,{value:i,enumerable:!1,configurable:!n.nonConfigurable,writable:!n.nonWritable})}return t}},function(t,e,i){var n=i(49),s=String;t.exports=function(t){if("Symbol"===n(t))throw TypeError("Cannot convert a Symbol value to a string");return s(t)}},function(t,e,i){var n=i(1),s=i(34),o=TypeError;t.exports=function(t){if(n(t))return t;throw o(s(t)+" is not a function")}},function(t,e){t.exports=!1},function(t,e,i){var n,s,o,a,r=i(122),l=i(3),c=i(15),h=i(26),d=i(12),u=i(55),p=i(59),i=i(60),f="Object already initialized",m=l.TypeError,l=l.WeakMap,g=r||u.state?((o=u.state||(u.state=new l)).get=o.get,o.has=o.has,o.set=o.set,n=function(t,e){if(o.has(t))throw m(f);return e.facade=t,o.set(t,e),e},s=function(t){return o.get(t)||{}},function(t){return o.has(t)}):(i[a=p("state")]=!0,n=function(t,e){if(d(t,a))throw m(f);return e.facade=Line truncated
/*!
* Tailwind Elements 1.0.0
*
* Tailwind Elements is an open-source UI kit of advanced components for TailwindCSS.
* Copyright © 2023 MDBootstrap.com
*
* Unless a custom, individually assigned license has been granted, this program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
* In addition, a custom license may be available upon request, subject to the terms and conditions of that license. Please contact tailwind@mdbootstrap.com for more information on obtaining a custom license.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
*
*/
(function(N,_t){typeof exports=="object"&&typeof module<"u"?_t(exports):typeof define=="function"&&define.amd?define(["exports"],_t):(N=typeof globalThis<"u"?globalThis:N||self,_t(N.te={}))})(this,function(N){"use strict";var AM=Object.defineProperty;var wM=(N,_t,D)=>_t in N?AM(N,_t,{enumerable:!0,configurable:!0,writable:!0,value:D}):N[_t]=D;var we=(N,_t,D)=>(wM(N,typeof _t!="symbol"?_t+"":_t,D),D);const _t=(()=>{const s={};let t=1;return{set(e,i,n){typeof e[i]>"u"&&(e[i]={key:i,id:t},t++),s[e[i].id]=n},get(e,i){if(!e||typeof e[i]>"u")return null;const n=e[i];return n.key===i?s[n.id]:null},delete(e,i){if(typeof e[i]>"u")return;const n=e[i];n.key===i&&(delete s[n.id],delete e[i])}}})(),D={setData(s,t,e){_t.set(s,t,e)},getData(s,t){return _t.get(s,t)},removeData(s,t){_t.delete(s,t)}},Ng=1e6,Bg=1e3,da="transitionend",Hg=s=>s==null?`${s}`:{}.toString.call(s).match(/\s([a-z]+)/i)[1].toLowerCase(),Et=s=>{do s+=Math.floor(Math.random()*Ng);while(document.getElementById(s));return s},Gc=s=>{let t=s.getAttribute("data-te-target");if(!t||t==="#"){let e=s.getAttribute("href");if(!e||!e.includes("#")&&!e.startsWith("."))return null;e.includes("#")&&!e.startsWith("#")&&(e=`#${e.split("#")[1]}`),t=e&&e!=="#"?e.trim():null}return t},ua=s=>{const t=Gc(s);return t&&document.querySelector(t)?t:null},Re=s=>{const t=Gc(s);return t?document.querySelector(t):null},Vg=s=>{if(!s)return 0;let{transitionDuration:t,transitionDelay:e}=window.getComputedStyle(s);const i=Number.parseFloat(t),n=Number.parseFloat(e);return!i&&!n?0:(t=t.split(",")[0],e=e.split(",")[0],(Number.parseFloat(t)+Number.parseFloat(e))*Bg)},qc=s=>{s.dispatchEvent(new Event(da))},Bi=s=>!s||typeof s!="object"?!1:(typeof s.jquery<"u"&&(s=s[0]),typeof s.nodeType<"u"),Ne=s=>Bi(s)?s.jquery?s[0]:s:typeof s=="string"&&s.length>0?document.querySelector(s):null,L=(s,t,e)=>{Object.keys(e).forEach(i=>{const n=e[i],o=t[i],r=o&&Bi(o)?"element":Hg(o);if(!new RegExp(n).test(r))throw new Error(`${s.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)})},re=s=>{if(!s||s.getClientRects().length===0)return!1;if(s.style&&s.parentNode&&s.parentNode.style){const t=getComputedStyle(s),e=getComputedStyle(s.parentNode);return getComputedStyle(s).getPropertyValue("visibility")==="visible"||t.display!=="none"&&e.display!=="none"&&t.visibility!=="hidden"}return!1},ai=s=>!s||s.nodeType!==Node.ELEMENT_NODE||s.classList.contains("disabled")?!0:typeof s.disabled<"u"?s.disabled:s.hasAttribute("disabled")&&s.getAttribute("disabled")!=="false",Zc=s=>{if(!document.documentElement.attachShadow)return null;if(typeof s.getRootNode=="function"){const t=s.getRootNode();return t instanceof ShadowRoot?t:null}return s instanceof ShadowRoot?s:s.parentNode?Zc(s.parentNode):null},eo=()=>function(){},Hi=s=>{s.offsetHeight},Qc=()=>{const{jQuery:s}=window;return s&&!document.body.hasAttribute("data-te-no-jquery")?s:null},pa=[],Jc=s=>{document.readyState==="loading"?(pa.length||document.addEventListener("DOMContentLoaded",()=>{pa.forEach(t=>t())}),pa.push(s)):s()},st=()=>document.documentElement.dir==="rtl",Fg=s=>Array.from(s),$=s=>document.createElement(s),li=s=>{typeof s=="function"&&s()},th=(s,t,e=!0)=>{if(!e){li(s);return}const i=5,n=Vg(t)+i;let o=!1;const r=({target:a})=>{a===t&&(o=!0,t.removeEventListener(da,r),li(s))};t.addEventListener(da,r),setTimeout(()=>{o||qc(t)},n)},eh=(s,t,e,i)=>{let n=s.indexOf(t);if(n===-1)return s[!e&&i?s.length-1:0];const o=s.length;return n+=e?1:-1,i&&(n=(n+o)%o),s[Math.max(0,Math.min(n,o-1))]},Wg=/[^.]*(?=\..*)\.|.*/,zg=/\..*/,jg=/::\d+$/,fa={};let ih=1;const Yg={mouseenter:"mouseover",mouseleave:"mouseout"},Kg=/^(mouseenter|mouseleave)/i,sh=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function nh(s,t){return t&&`${t}::${ih++}`||s.uidEvent||ih++}function oh(s){const t=nh(s);return s.uidEvent=t,fa[t]=fa[t]||{},fa[t]}function Ug(s,t){return function e(i){return i.delegateTarget=s,e.oneOff&&_.off(s,i.type,t),t.apply(s,[i])}}function Xg(s,t,e){return function i(n){const o=s.querySelectorAll(t);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;"")if(o[a]===r)return n.delegateTarget=r,i.oneOff&&_.off(s,n.type,e),e.apply(r,[n]);return null}}function rh(s,t,e=null){const i=Object.keys(s);for(let n=0,o=i.length;n<o;n++){const r=s[i[n]];if(r.originalHandler===t&&r.delegationSelector===e)return r}return null}function ah(s,t,e){const i=typeof t=="string",n=i?e:t;let o=ch(s);return sh.has(o)||(o=s),[i,n,o]}function lh(s,t,e,i,n){if(typeof t!="striLine truncated
`,'Disable the "computeStyles" modifier\'s `adaptive` option to allow',"for smooth transitions, or remove these properties from the CSS","transition declaration on the popper element if only transitioning","opacity or background-color for example.",`
`,"We recommend using the popper element as a wrapper around an inner","element that can have any CSS property transitioned for animations."].join(" "))}var h={placement:Zt(t.placement),variation:Yi(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:n,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Sh(Object.assign({},h,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Sh(Object.assign({},h,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const Ca={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:cm,data:{}};var ro={passive:!0};function hm(s){var t=s.state,e=s.instance,i=s.options,n=i.scroll,o=n===void 0?!0:n,r=i.resize,a=r===void 0?!0:r,l=Mt(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(h){h.addEventListener("scroll",e.update,ro)}),a&&l.addEventListener("resize",e.update,ro),function(){o&&c.forEach(function(h){h.removeEventListener("scroll",e.update,ro)}),a&&l.removeEventListener("resize",e.update,ro)}}const Aa={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:hm,data:{}};var dm={left:"right",right:"left",bottom:"top",top:"bottom"};function ao(s){return s.replace(/left|right|bottom|top/g,function(t){return dm[t]})}var um={start:"end",end:"start"};function Oh(s){return s.replace(/start|end/g,function(t){return um[t]})}function wa(s){var t=Mt(s),e=t.pageXOffset,i=t.pageYOffset;return{scrollLeft:e,scrollTop:i}}function ka(s){return ji(Be(s)).left+wa(s).scrollLeft}function pm(s,t){var e=Mt(s),i=Be(s),n=e.visualViewport,o=i.clientWidth,r=i.clientHeight,a=0,l=0;if(n){o=n.width,r=n.height;var c=Th();(c||!c&&t==="fixed")&&(a=n.offsetLeft,l=n.offsetTop)}return{width:o,height:r,x:a+ka(s),y:l}}function fm(s){var t,e=Be(s),i=wa(s),n=(t=s.ownerDocument)==null?void 0:t.body,o=ui(e.scrollWidth,e.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),r=ui(e.scrollHeight,e.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),a=-i.scrollLeft+ka(s),l=-i.scrollTop;return Qt(n||e).direction==="rtl"&&(a+=ui(e.clientWidth,n?n.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}function Sa(s){var t=Qt(s),e=t.overflow,i=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(e+n+i)}function Dh(s){return["html","body","#document"].indexOf(ae(s))>=0?s.ownerDocument.body:Lt(s)&&Sa(s)?s:Dh(oo(s))}function $s(s,t){var e;t===void 0&&(t=[]);var i=Dh(s),n=i===((e=s.ownerDocument)==null?void 0:e.body),o=Mt(i),r=n?[o].concat(o.visualViewport||[],Sa(i)?i:[]):i,a=t.concat(r);return n?a:a.concat($s(oo(r)))}function Oa(s){return Object.assign({},s,{left:s.x,top:s.y,right:s.x+s.width,bottom:s.y+s.height})}function _m(s,t){var e=ji(s,!1,t==="fixed");return e.top=e.top+s.clientTop,e.left=e.left+s.clientLeft,e.bottom=e.top+s.clientHeight,e.right=e.left+s.clientWidth,e.width=s.clientWidth,e.height=s.clientHeight,e.x=e.left,e.y=e.top,e}function Ih(s,t,e){return t===ga?Oa(pm(s,e)):di(t)?_m(t,e):Oa(fm(Be(s)))}function gm(s){var t=$s(oo(s)),e=["absolute","fixed"].indexOf(Qt(s).position)>=0,i=e&&Lt(s)?Ms(s):s;return di(i)?t.filter(function(n){return di(n)&&Eh(n,i)&&ae(n)!=="body"}):[]}function mm(s,t,e,i){var n=t==="clippingParents"?gm(s):[].concat(t),o=[].concat(n,[e]),r=o[0],a=o.reduce(function(l,c){var h=Ih(s,c,i);return l.top=ui(h.top,l.top),l.right=no(h.right,l.right),l.bottom=no(h.bottom,l.bottom),l.left=ui(h.left,l.left),l},Ih(s,r,i));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function Mh(s){var t=s.reference,e=s.element,i=s.placement,n=i?Zt(i):null,o=i?Yi(i):null,r=t.x+t.width/2-e.width/2,a=t.y+t.height/2-e.height/2,l;switch(n){case gt:l={x:r,y:t.y-e.height};break;case Dt:l={x:r,y:t.y+t.height};break;case It:l={x:t.x+t.width,y:a};break;case mt:l={x:t.x-e.width,y:a};break;default:l={x:t.x,y:t.y}}var c=n?xa(n):null;if(c!=null){var h=c==="y"?"height":"width";switch(o){case hi:l[c]=l[c]-(t[h]/2-e[h]/2);break;case Fi:l[c]=l[c]+(t[h]/2-e[h]/2);break}}return l}function Ki(s,t){t===void 0&&(t={});var e=t,i=e.placement,n=i===void 0?s.placement:i,o=e.strategy,r=o===void 0?s.strategy:o,a=e.boundary,l=a===void 0?hh:a,c=e.rootBoundary,h=c===void 0?ga:c,d=e.elementContext,u=d===void 0?Wi:d,p=e.altBoundary,f=p===void 0?!1:p,b=e.padding,v=b===void 0?0:b,y=Ah(typeof v!="number"?v:wh(v,Vi)),T=u===Wi?dh:Wi,x=s.rects.popper,E=s.elements[f?T:u],C=mm(di(E)?E:E.contextElement||Be(s.elements.popper),l,h,r),A=ji(s.elements.reference),w=Mh({reference:A,element:x,strategy:"absolute",placement:n}),S=Oa(Object.assign({},x,w)),k=u===Wi?S:A,I={top:C.top-k.top+y.top,bottom:k.bottom-C.bottom+y.bottom,left:C.left-k.left+y.left,right:k.right-C.right+y.right},O=s.modifiersData.offset;if(u===Wi&&O){var M=O[n] Line truncated
`)});function f(x,E,C,A){var w=C?"":A.media?"@media ".concat(A.media," {").concat(A.css,"}"):A.css;if(x.styleSheet)x.styleSheet.cssText=p(E,w);else{var S=document.createTextNode(w),k=x.childNodes;k[E]&&x.removeChild(k[E]),k.length?x.insertBefore(S,k[E]):x.appendChild(S)}}function b(x,E,C){var A=C.css,w=C.media,S=C.sourceMap;if(w?x.setAttribute("media",w):x.removeAttribute("media"),S&&typeof btoa<"u"&&(A+=`
/*# sourceMappingURL=data:application/json;base64,`.concat(btoa(unescape(encodeURIComponent(JSON.stringify(S))))," */")),x.styleSheet)x.styleSheet.cssText=A;else{for(;x.firstChild;)x.removeChild(x.firstChild);x.appendChild(document.createTextNode(A))}}var v=null,y=0;function T(x,E){var C,A,w;if(E.singleton){var S=y++;C=v||(v=d(E)),A=f.bind(null,C,S,!1),w=f.bind(null,C,S,!0)}else C=d(E),A=b.bind(null,C,E),w=function(){(function(k){if(k.parentNode===null)return!1;k.parentNode.removeChild(k)})(C)};return A(x),function(k){if(k){if(k.css===x.css&&k.media===x.media&&k.sourceMap===x.sourceMap)return;A(x=k)}else w()}}i.exports=function(x,E){(E=E||{}).singleton||typeof E.singleton=="boolean"||(E.singleton=(r===void 0&&(r=!!(window&&document&&document.all&&!window.atob)),r));var C=h(x=x||[],E);return function(A){if(A=A||[],Object.prototype.toString.call(A)==="[object Array]"){for(var w=0;w<C.length;w++){var S=c(C[w]);l[S].references--}for(var k=h(A,E),I=0;I<C.length;I++){var O=c(C[I]);l[O].references===0&&(l[O].updater(),l.splice(O,1))}C=k}}}}},t={};function e(i){var n=t[i];if(n!==void 0)return n.exports;var o=t[i]={id:i,exports:{}};return s[i](o,o.exports,e),o.exports}e.n=i=>{var n=i&&i.__esModule?()=>i.default:()=>i;return e.d(n,{a:n}),n},e.d=(i,n)=>{for(var o in n)e.o(n,o)&&!e.o(i,o)&&Object.defineProperty(i,o,{enumerable:!0,get:n[o]})},e.o=(i,n)=>Object.prototype.hasOwnProperty.call(i,n),(()=>{var i=e(379),n=e.n(i),o=e(454);function r(l){if(!l.hasAttribute("autocompleted")){l.setAttribute("autocompleted","");var c=new window.CustomEvent("onautocomplete",{bubbles:!0,cancelable:!0,detail:null});l.dispatchEvent(c)||(l.value="")}}function a(l){l.hasAttribute("autocompleted")&&(l.removeAttribute("autocompleted"),l.dispatchEvent(new window.CustomEvent("onautocomplete",{bubbles:!0,cancelable:!1,detail:null})))}n()(o.Z,{insert:"head",singleton:!1}),o.Z.locals,e(810),document.addEventListener("animationstart",function(l){l.animationName==="onautofillstart"?r(l.target):a(l.target)},!0),document.addEventListener("input",function(l){l.inputType!=="insertReplacementText"&&"data"in l?a(l.target):r(l.target)},!0)})()})();const sl="input",xo="te.input",$d="data-te-input-wrapper-init",Pd="data-te-input-notch-ref",Rd="data-te-input-notch-leading-ref",Nd="data-te-input-notch-middle-ref",I0="data-te-input-notch-trailing-ref",M0="data-te-input-helper-ref",L0="data-te-input-placeholder-active",We="data-te-input-state-active",Bd="data-te-input-focused",Hd="data-te-input-form-counter",yi=`[${$d}] input`,Ti=`[${$d}] textarea`,ts=`[${Pd}]`,Vd=`[${Rd}]`,Fd=`[${Nd}]`,$0=`[${M0}]`,P0={inputFormWhite:!1},R0={inputFormWhite:"(boolean)"},Wd={notch:"group flex absolute left-0 top-0 w-full max-w-full h-full text-left pointer-events-none",notchLeading:"pointer-events-none border border-solid box-border bg-transparent transition-all duration-200 ease-linear motion-reduce:transition-none left-0 top-0 h-full w-2 border-r-0 rounded-l-[0.25rem] group-data-[te-input-focused]:border-r-0 group-data-[te-input-state-active]:border-r-0",notchLeadingNormal:"border-neutral-300 dark:border-neutral-600 group-data-[te-input-focused]:shadow-[-1px_0_0_#3b71ca,_0_1px_0_0_#3b71ca,_0_-1px_0_0_#3b71ca] group-data-[te-input-focused]:border-primary",notchLeadingWhite:"border-neutral-200 group-data-[te-input-focused]:shadow-[-1px_0_0_#ffffff,_0_1px_0_0_#ffffff,_0_-1px_0_0_#ffffff] group-data-[te-input-focused]:border-white",notchMiddle:"pointer-events-none border border-solid box-border bg-transparent transition-all duration-200 ease-linear motion-reduce:transition-none grow-0 shrink-0 basis-auto w-auto max-w-[calc(100%-1rem)] h-full border-r-0 border-l-0 group-data-[te-input-focused]:border-x-0 group-data-[te-input-state-active]:border-x-0 group-data-[te-input-focused]:border-t group-data-[te-input-state-active]:border-t group-data-[te-input-focused]:border-solid group-data-[te-input-state-active]:border-solid group-data-[te-input-focused]:border-t-transparent group-data-[te-input-state-active]:border-t-transparent",notchMiddleNormal:"border-neutral-300 dark:border-neutral-600 group-data-[te-input-focused]:shadow-[0_1px_0_0_#3b71ca] group-data-[te-input-focused]:border-primary",notchMiddleWhite:"border-neutral-200 group-data-[te-input-focused]:shadow-[0_1px_0_0_#ffffff] group-data-[te-input-focused]:border-white",notchTrailing:"pointer-events-none border border-solid box-border bg-transparent transition-all duration-200 ease-linear motion-reduce:transition-none grow h-full border-l-0 rounded-r-[0.25rem] group-data-[te-input-focused]:border-l-0 group-data-[te-input-state-active]:border-l-0",notchTrailingNormal:"border-neutral-300 dark:border-neutral-600 group-data-[te-input-focused]:shadow-[1px_0_0_#3b71ca,_0_-1px_0_0_#3b71ca,_0_1px_0_0_#3b71ca] group-data-[te-input-focused]:border-primary",notchTrailingWhite:"border-neutral-200 group-data-[te-input-focused]:shadow-[1px_0_0_#ffffff,_0_-1px_0_0_#ffffff,_0_1px_0_0_#ffffff] group-data-[te-input-focused]:border-white",counteLine truncated
${Xd(s,h,d,t,e,i,n,o,r,a,c)}
`,v=`
${uy(u,p,h,n,c)}
${Xd(s,h,d,t,e,i,n,o,r,a,c)}
`;return n.inline?(g.addClass(f,c.datepickerDropdownContainer),f.setAttribute(ey,l),f.innerHTML=b):(g.addClass(f,c.modalContainer),f.setAttribute(ty,l),f.innerHTML=v),f}function dy(s){const t=$("div");return g.addClass(t,s),t.setAttribute(iy,""),t}function uy(s,t,e,i,n){return`
<div class="${n.datepickerHeader}" data-te-datepicker-header>
<div class="${n.datepickerTitle}">
<span class="${n.datepickerTitleText}">${i.title}</span>
</div>
<div class="${n.datepickerDate}">
<span class="${n.datepickerDateText}" ${sy} >${i.weekdaysShort[t]}, ${i.monthsShort[e]} ${s}</span>
</div>
</div>
`}function Xd(s,t,e,i,n,o,r,a,l,c,h){let d;return r.inline?d=`
<div class="${h.datepickerMain}">
${qd(t,e,r,h)}
<div class="${h.datepickerView}" ${Ud} tabindex="0">
${Gd(s,e,i,n,o,r,a,l,c,h)}
</div>
</div>
`:d=`
<div class="${h.datepickerMain}">
${qd(t,e,r,h)}
<div class="${h.datepickerView}" ${Ud} tabindex="0">
${Gd(s,e,i,n,o,r,a,l,c,h)}
</div>
${py(r,h)}
</div>
`,d}function Gd(s,t,e,i,n,o,r,a,l,c){let h;return o.view==="days"?h=Oo(s,e,o,c):o.view==="months"?h=Do(t,i,n,o,r,c):h=Io(s,i,o,a,l,c),h}function qd(s,t,e,i){return`
<div class="${i.datepickerDateControls}">
<button class="${i.datepickerViewChangeButton}" aria-label="${e.switchToMultiYearViewLabel}" ${cy}>
${e.monthsFull[s]} ${t} ${ue(e,i)}
</button>
<div class="${i.datepickerArrowControls}">
<button class="${i.datepickerPreviousButton}" aria-label="${e.prevMonthLabel}" ${ny}>${e.changeMonthIconTemplate}</button>
<button class="${i.datepickerNextButton}" aria-label="${e.nextMonthLabel}" ${oy}>${e.changeMonthIconTemplate}</button>
</div>
</div>
`}function ue(s,t){return`
<span class="${t.datepickerViewChangeIcon}">
${s.viewChangeIconTemplate}
</span>
`}function py(s,t){const e=`<button class="${t.datepickerFooterBtn}" aria-label="${s.okBtnLabel}" ${ry}>${s.okBtnText}</button>`,i=`<button class="${t.datepickerFooterBtn}" aria-label="${s.cancelBtnLabel}" ${ay}>${s.cancelBtnText}</button>`,n=`<button class="${t.datepickerFooterBtn} ${t.datepickerClearBtn}" aria-label="${s.clearBtnLabel}" ${ly}>${s.clearBtnText}</button>`;return`
<div class="${t.datepickerFooter}">
${s.removeClearBtn?"":n}
${s.removeCancelBtn?"":i}
${s.removeOkBtn?"":e}
</div>
`}function Oo(s,t,e,i){const n=fy(s,t,e),r=`
<tr>
${e.weekdaysNarrow.map((l,c)=>`<th class="${i.datepickerDayHeading}" scope="col" aria-label="${e.weekdaysFull[c]}">${l}</th>`).join("")}
</tr>
`,a=n.map(l=>`
<tr>
${l.map(c=>`
<td
class="${i.datepickerCell} ${i.datepickerCellSmall}"
data-te-date="${K(c.date)}-${ot(c.date)}-${bt(c.date)}"
aria-label="${c.date}"
aria-selected="${c.isSelected}"
${c.isSelected?"data-te-datepicker-cell-selected":""}
${!c.currentMonth||c.disabled?"data-te-datepicker-cell-disabled":""}
${c.isToday?"data-te-datepicker-cell-current":""}
>
<div
class="${i.datepickerCellContent} ${i.datepickerCellContentSmall}"
style="${c.currentMonth?"display: block":"display: none"}"
>
${c.dayNumber}
</div>
</td>
`).join("")}
</tr>
`).join("");return`
<table class="${i.datepickerTable}">
<thead>
${r}
</thead>
<tbody>
${a}
</tbody>
</table>
`}function fy(s,t,e){const i=[],n=ot(s),o=ot(Ct(s,-1)),r=ot(Ct(s,1)),a=K(s),l=U0(a,n,e),c=rl(s),h=rl(Ct(s,-1)),d=7;let u=1,p=!1;for(let f=1;f<d;f++){const b=[];if(f===1){const v=h-l+1;for(let T=v;T<=h;T++){const x=te(a,o,T);b.push({date:x,currentMonth:p,isSelected:t&&Ei(x,t),isToday:Ei(x,es()),dayNumber:bt(x)})}p=!0;const y=d-b.length;for(let T=0;T<y;T++){const x=te(a,n,u);b.push({date:x,currentMonth:p,isSelected:t&&Ei(x,t),isToday:Ei(x,es()),dayNumber:bt(x),disabled:So(x,e.min,e.max,e.filter,e.disablePast,e.disableFuture)}),u++}}else for(let v=1;v<8;v++){u>c&&(u=1,p=!1);const y=te(a,p?n:r,u);b.push({date:y,currentMonth:p,isSelected:t&&Ei(y,t),isToday:Ei(y,es()),dayNumber:bt(y),disabled:So(y,e.min,e.max,e.filter,e.disablePast,e.disableFuture)}),u++}i.push(b)}return i}function Do(s,t,e,i,n,o){const r=_y(i,n),a=ot(es()),l=K(es()),c=`
${r.map(h=>`
<tr>
${h.map(d=>{const u=i.monthsShort.indexOf(d);return`
<td class="${o.datepickerCell} ${o.datepickerCellLarge}"
${Kd(u,s,i.min,i.max,i.disablePast,i.disableFuture)?"data-te-datepicker-cell-disabled":""}
data-te-month="${u}" data-te-year="${s}" aria-label="${d}, ${s}"
${u===e&&s===t?"data-te-datepicker-cell-selected":""}
${u===a&&s===l?"data-te-datepicker-cell-current":""}" data-te-month="${u}" data-te-year="${s}" aria-label="${d}, ${s}">
<div class="${o.datepickerCellContent} ${o.datepickerCellContentLarge}">${d}</div>
</td>
`}).join("")}
</tr>
`).join("")}
`;return`
<table class="${o.datepickerTable}">
<tbody>
${c}
</tbody>
</table>
`}function _y(s,t){const e=[];let i=[];for(let n=0;n<s.monthsShort.length;n++)if(i.push(s.monthsShort[n]),i.length===t){const o=i;e.push(o),i=[]}return e}function Io(s,t,e,i,n,o){const r=gy(s,i,n),a=K(es()),l=`
${r.map(c=>`
<tr>
${c.map(h=>`
<td class="${o.datepickerCell} ${o.datepickerCellLarge}" aria-label="${h}" data-te-year="${h}"
${al(h,e.min,e.max,e.disablePast,e.disableFuture)?"data-te-datepicker-cell-disabled":""}
${h===t?"data-te-datepicker-cell-selected":""}
${h===a?"data-te-datepicker-cell-current":""}
>
<div class="${o.datepickerCellContent} ${o.datepickerCellContentLarge}">${h}</div>
</td>
`).join("")}
</tr>
`).join("")}
`;return`
<table class="${o.datepickerTable}">
<tbody>
${l}
</tbody>
</table>
`}function gy(s,t,e){const i=[],n=K(s),o=ko(s,t),r=n-o;let a=[];for(let l=0;l<t;l++)if(a.push(r+l),a.length===e){const c=a;i.push(c),a=[]}return i}function my(s,t){return`
<button id="${s}" type="button" class="${t}" data-te-datepicker-toggle-button-ref data-te-datepicker-toggle-ref>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
<path fill-rule="evenodd" d="M6.75 2.25A.75.75 0 017.5 3v1.5h9V3A.75.75 0 0118 3v1.5h.75a3 3 0 013 3v11.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V7.5a3 3 0 013-3H6V3a.75.75 0 01.75-.75zm13.5 9a1.5 1.5 0 00-1.5-1.5H5.25a1.5 1.5 0 00-1.5 1.5v7.5a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5v-7.5z" clip-rule="evenodd" />
</svg>
</button>
`}const ns=37,At=38,os=39,ut=40,rs=36,as=35,ll=33,cl=34,Pt=13,Mo=32,Ks=27,Us=9,by=8,vy=46,ee=24,Lo=4,$o=4,hl="datepicker",Po="te.datepicker",Ro=`.${Po}`,yy=".data-api",Ty=`close${Ro}`,Ey=`open${Ro}`,xy=`dateChange${Ro}`,No=`click${Ro}${yy}`,Zd="data-te-datepicker-modal-container-ref",Qd="data-te-datepicker-dropdown-container-ref",Bo="[data-te-datepicker-toggle-ref]",Cy=`[${Zd}]`,Ay=`[${Qd}]`,wy="[data-te-datepicker-view-change-button-ref]",ky="[data-te-datepicker-previous-button-ref]",Sy="[data-te-datepicker-next-button-ref]",Oy="[data-te-datepicker-ok-button-ref]",Dy="[data-te-datepicker-cancel-button-ref]",Iy="[data-te-datepicker-clear-button-ref]",My="[data-te-datepicker-view-ref]",Ly="[data-te-datepicker-toggle-button-ref]",$y="[data-te-datepicker-date-text-ref]",Py="[data-te-dropdown-backdrop-ref]",Ry="animate-[fade-in_0.3s_both] px-[auto] motion-reduce:transition-none motion-reduce:animate-none",Ny="animate-[fade-out_0.3s_both] px-[auto] motion-reduce:transition-none motion-reduce:animate-none",By="animate-[fade-in_0.15s_both] px-[auto] motion-reduce:transition-none motion-reduce:animate-none",Hy="animate-[fade-out_0.15s_both] px-[auto] motion-reduce:transition-none motion-reduce:animate-none",Vy="flex flex-col fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[328px] h-[512px] bg-white rounded-[0.6rem] shadow-lg z-[1066] xs:max-md:landscape:w-[475px] xs:max-md:landscape:h-[360px] xs:max-md:landscape:flex-row dark:bg-zinc-700",Fy="w-full h-full fixed top-0 right-0 left-0 bottom-0 bg-black/40 z-[1065]",Wy="relative h-full",zy="xs:max-md:landscape:h-full h-[120px] px-6 bg-primary flex flex-col rounded-t-lg dark:bg-zinc-800",jy="h-8 flex flex-col justify-end",Yy="text-[10px] font-normal uppercase tracking-[1.7px] text-white",Ky="xs:max-md:landscape:mt-24 h-[72px] flex flex-col justify-end",Uy="text-[34px] font-normal text-white",Xy="outline-none px-3",Gy="px-3 pt-2.5 pb-0 flex justify-between text-black/[64]",qy="flex items-center outline-none p-2.5 text-neutral-500 font-medium text-[0.9rem] rounded-xl shadow-none bg-transparent m-0 border-none hover:bg-neutral-200 focus:bg-neutral-200 dark:text-white dark:hover:bg-white/10 dark:focus:bg-white/10",Zy="mt-2.5",Qy="p-0 w-10 h-10 leading-10 border-none outline-none m-0 text-gray-600 bg-transparent mr-6 hover:bg-neutral-200 hover:rounded-[50%] focus:bg-neutral-200 focus:rounded-[50%] dark:text-white dark:hover:bg-white/10 dark:focus:bg-white/10 [&>svg]:w-4 [&>svg]:h-4 [&>svg]:mx-auto",Jy="p-0 w-10 h-10 leading-10 border-none outline-none m-0 text-gray-600 bg-transparent hover:bg-neutral-200 hover:rounded-[50%] focus:bg-neutral-200 focus:rounded-[50%] dark:text-white dark:hover:bg-white/10 dark:focus:bg-white/10 [&>svg]:w-4 [&>svg]:h-4 [&>svg]:rotate-180 [&>svg]:mx-auto",tT="h-14 flex absolute w-full bottom-0 justify-end items-center px-3",eT="outline-none bg-white text-primary border-none cursor-pointer py-0 px-2.5 uppercase text-[0.8rem] leading-10 font-medium h-10 tracking-[.1rem] rounded-[10px] mb-2.5 hover:bg-neutral-200 focus:bg-neutral-200 dark:bg-transparent dark:text-white dark:hover:bg-white/10 dark:focus:bg-white/10",iT="mr-auto",sT="w-10 h-10 text-center text-[12px] font-normal dark:text-white",nT="text-center data-[te-datepicker-cell-disabled]:text-neutral-300 data-[te-datepicker-cell-disabled]:cursor-default data-[te-datepicker-cell-disabled]:pointer-events-none data-[te-datepicker-cell-disabled]:hover:cursor-default hover:cursor-pointer group",oT="w-10 h-10 xs:max-md:landscape:w-8 xs:max-md:landscape:h-8",rT="w-[76px] h-[42px]",aT="mx-auto group-[:not([data-te-datepicker-cell-disabled]):not([data-te-datepicker-cell-selected]):hover]:bg-neutral-300 group-[[data-te-datepicker-cell-selected]]:bg-primary group-[[data-te-datepicker-cell-selected]]:text-white group-[:not([data-te-datepicker-cell-selected])[data-te-datepicker-cell-focused]]:bg-neutral-100 group-[[data-te-datepicker-cell-focused]]:data-[te-datepicker-cell-selected]:bg-primary group-[[data-te-datepicker-cell-current]]:border-solid group-[[data-te-datepicker-cell-current]]:border-black group-[[data-te-datepicker-cell-current]]:border dark:group-[:not([data-te-datepicker-cell-disabled]):not([data-te-datepicker-cell-selected]):hover]:bg-white/10 dark:group-[[data-te-datepicker-cell-current]]:border-white dark:text-white dark:group-[:not([data-te-datepicker-cell-selected])[data-te-datepicker-cell-focused]]:bg-white/10 dark:group-[[data-te-datepicker-cell-disabled]]:text-neutral-500",lT="w-9 h-9 leading-9 rounded-[50%] text-[13px]",cT="w-[72px] h-10 leading-10 py-[1px] px-0.5 rounded-[999px]",hT="mx-auto w-[304px]",dT="flex items-center justify-content-center [&>svg]:w-5 [&>svg]:h-5 absolute outline-none border-none bg-transparent right-0.5 top-1/2 -translate-x-1/2 -translate-y-1/2 hover:text-primary focus:text-primary dark:hover:text-primary-400 dark:focus:text-primary-400 dark:text-neutral-200",uT="inline-block pointer-events-none ml-[3px] [&>svg]:w-4 [&>svg]:h-4 [&>svg]:fill- Line truncated
<path stroke-linecap="round" stroke-linejoin="round" d="M15.75 19.5L8.25 12l7.5-7.5" />
</svg>
`,nextMultiYearLabel:"Next 24 years",prevMultiYearLabel:"Previous 24 years",switchToMultiYearViewLabel:"Choose year and month",switchToMonthViewLabel:"Choose date",switchToDayViewLabel:"Choose date",startDate:null,startDay:0,format:"dd/mm/yyyy",view:"days",viewChangeIconTemplate:`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="0" stroke="currentColor" class="w-6 h-6">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" />
</svg>
`,min:null,max:null,filter:null,inline:!1,toggleButton:!0,disableToggleButton:!1,disableInput:!1,animations:!0,confirmDateOnSelect:!1,removeOkBtn:!1,removeCancelBtn:!1,removeClearBtn:!1},_T={title:"string",container:"string",disablePast:"boolean",disableFuture:"boolean",monthsFull:"array",monthsShort:"array",weekdaysFull:"array",weekdaysShort:"array",weekdaysNarrow:"array",okBtnText:"string",clearBtnText:"string",cancelBtnText:"string",okBtnLabel:"string",clearBtnLabel:"string",cancelBtnLabel:"string",nextMonthLabel:"string",prevMonthLabel:"string",nextYearLabel:"string",prevYearLabel:"string",nextMultiYearLabel:"string",prevMultiYearLabel:"string",changeMonthIconTemplate:"string",switchToMultiYearViewLabel:"string",switchToMonthViewLabel:"string",switchToDayViewLabel:"string",startDate:"(null|string|date)",startDay:"number",format:"string",view:"string",viewChangeIconTemplate:"string",min:"(null|string|date)",max:"(null|string|date)",filter:"(null|function)",inline:"boolean",toggleButton:"boolean",disableToggleButton:"boolean",disableInput:"boolean",animations:"boolean",confirmDateOnSelect:"boolean",removeOkBtn:"boolean",removeCancelBtn:"boolean",removeClearBtn:"boolean"},gT={fadeIn:Ry,fadeOut:Ny,fadeInShort:By,fadeOutShort:Hy,modalContainer:Vy,datepickerBackdrop:Fy,datepickerMain:Wy,datepickerHeader:zy,datepickerTitle:jy,datepickerTitleText:Yy,datepickerDate:Ky,datepickerDateText:Uy,datepickerView:Xy,datepickerDateControls:Gy,datepickerViewChangeButton:qy,datepickerViewChangeIcon:uT,datepickerArrowControls:Zy,datepickerPreviousButton:Qy,datepickerNextButton:Jy,datepickerFooter:tT,datepickerFooterBtn:eT,datepickerClearBtn:iT,datepickerDayHeading:sT,datepickerCell:nT,datepickerCellSmall:oT,datepickerCellLarge:rT,datepickerCellContent:aT,datepickerCellContentSmall:lT,datepickerCellContentLarge:cT,datepickerTable:hT,datepickerToggleButton:dT,datepickerDropdownContainer:pT},mT={fadeIn:"string",fadeOut:"string",fadeInShort:"string",fadeOutShort:"string",modalContainer:"string",datepickerBackdrop:"string",datepickerMain:"string",datepickerHeader:"string",datepickerTitle:"string",datepickerTitleText:"string",datepickerDate:"string",datepickerDateText:"string",datepickerView:"string",datepickerDateControls:"string",datepickerViewChangeButton:"string",datepickerArrowControls:"string",datepickerPreviousButton:"string",datepickerNextButton:"string",datepickerFooter:"string",datepickerFooterBtn:"string",datepickerClearBtn:"string",datepickerDayHeading:"string",datepickerCell:"string",datepickerCellSmall:"string",datepickerCellLarge:"string",datepickerCellContent:"string",datepickerCellContentSmall:"string",datepickerCellContentLarge:"string",datepickerTable:"string",datepickerToggleButton:"string",datepickerDropdownContainer:"string"};class dl{constructor(t,e,i){this._element=t,this._input=m.findOne("input",this._element),this._options=this._getConfig(e),this._classes=this._getClasses(i),this._activeDate=new Date,this._selectedDate=null,this._selectedYear=null,this._selectedMonth=null,this._headerDate=null,this._headerYear=null,this._headerMonth=null,this._view=this._options.view,this._popper=null,this._focusTrap=null,this._isOpen=!1,this._toggleButtonId=Et("datepicker-toggle-"),this._animations=!window.matchMedia("(prefers-reduced-motion: reduce)").matches&&this._options.animations,this._scrollBar=new Xi,this._element&&D.setData(t,Po,this),this._init(),this.toggleButton&&this._options.disableToggle&&(this.toggleButton.disabled="true"),this._options.disableInput&&(this._input.disabled="true")}static get NAME(){return hl}get container(){return m.findOne(`[${Zd}='${this._toggleButtonId}']`)||m.findOne(`[${Qd}='${this._toggleButtonId}']`)}get options(){return this._options}get activeCell(){let t;return this._view==="days"&&(t=this._getActiveDayCell()),this._view==="months"&&(t=this._getActiveMonthCell()),this._view==="years"&&(t=this._getActiveYearCell()),t}get activeDay(){return bt(this._activeDate)}get activeMonth(){return ot(this._activeDate)}get activeYear(){return K(this._activeDate)}get firstYearInView(){return this.activeYear-ko(this._activeDate,ee)}get lastYearInView(){return this.firstYearInView+ee-1}get viewChangeButton(){return m.findOne(wy,this.container)}get previousButton(){return m.findOne(ky,this.container)}get nextButton(){return m.findOne(Sy,this.container)}get okButton(){return m.findOne(Oy,this.container)}get cancelButton(){return m.findOne(Dy,this.container)}get clearButton(){return m.findOne(Iy,this.container)}get datesContainer(){return m.findOne(My,this.container)}get toggleButton(){return m.findOne(Ly,this._element)}update(t={}){this._options=this._getConfig({...this._options,...t})}_getConfig(t){const e=g.getDataAttributes(this._element);if(t={...fT,...e,...t},L(hl,t,_T),t.max&&typeof t.max=="string"&&(t.max=new Date(t.max)),t.min&&typeof t.min=="string"&&(t.min=new Date(t.min)),t.startDay&&t.startDay!==0){const i=this._getNewDaysOrderArray(t);t.weekdaysNarrow=i}return t}_getClasses(t){const Line truncated
<div class="${u.timepickerContainer}">
<div class="${u.timepickerElements}" data-te-timepicker-elements-wrapper>
<div id='${i}' class='${u.timepickerHead}' style='padding-right:${s?50:10}px'>
<div class='${u.timepickerHeadContent}'>
<div class="${u.timepickerCurrentWrapper}">
<span class="${u.timepickerCurrentButtonWrapper}">
<button type='button' class='${u.timepickerCurrentButton}' tabindex="0" data-te-timepicker-active data-te-timepicker-current data-te-timepicker-hour data-te-ripple-init>21</button>
</span>
<button type='button' class='${u.timepickerDot}' disabled>:</button>
<span class="${u.timepickerCurrentButtonWrapper}">
<button type='button' class='${u.timepickerCurrentButton}' tabindex="0" data-te-timepicker-current data-te-timepicker-minute data-te-ripple-init>21</button>
</span>
</div>
${s?"":`<div class="${u.timepickerModeWrapper}">
<button type='button' class="${u.timepickerModeAm}" tabindex="0" data-te-timepicker-am data-te-timepicker-hour-mode data-te-ripple-init>${h}</button>
<button class="${u.timepickerModePm}" tabindex="0" data-te-timepicker-pm data-te-timepicker-hour-mode data-te-ripple-init>${d}</button>
</div>`}
</div>
</div>
${l?"":`<div id='${o}' class='${u.timepickerClockWrapper}' data-te-timepicker-clock-wrapper>
<div class='${u.timepickerClock}' data-te-timepicker-clock>
<span class='${u.timepickerMiddleDot}' data-te-timepicker-middle-dot></span>
<div class='${u.timepickerHandPointer}' data-te-timepicker-hand-pointer>
<div class='${u.timepickerPointerCircle}' data-te-timepicker-circle></div>
</div>
${s?'<div class="'+u.timepickerClockInner+'" data-te-timepicker-clock-inner></div>':""}
</div>
</div>`}
</div>
<div id='${n}' class='${u.timepickerFooterWrapper}'>
<div class="${u.timepickerFooter}">
${c?`<button type='button' class='${u.timepickerFooterButton}' data-te-timepicker-clear tabindex="0" data-te-ripple-init>${a}</button>`:""}
<button type='button' class='${u.timepickerFooterButton}' data-te-timepicker-cancel tabindex="0" data-te-ripple-init>${e}</button>
<button type='button' class='${u.timepickerFooterButton}' data-te-timepicker-submit tabindex="0" data-te-ripple-init>${t}</button>
</div>
</div>
</div>
</div>`,f=`<div id='${r}' class='${u.timepickerInlineWrapper}' data-te-timepicker-wrapper>
<div class="${u.timepickerInlineContainer}">
<div class="${u.timepickerInlineElements}" data-te-timepicker-elements-wrapper>
<div id='${i}' class='${u.timepickerInlineHead}'
style='padding-right:10px'>
<div class='${u.timepickerInlineHeadContent}'>
<div class="${u.timepickerCurrentWrapper}">
<span class="${u.timepickerInlineHourWrapper}" data-te-timepicker-inline-hour-icons>
<span class="${u.timepickerInlineIconUp}" data-te-timepicker-icon-up data-te-timepicker-icon-inline-hour>
<span class="${u.timepickerInlineIconSvg}">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 15.75l7.5-7.5 7.5 7.5" />
</svg>
</span>
</span>
<button type='button' class='${u.timepickerInlineCurrentButton}' data-te-timepicker-hour data-te-timepicker-current data-te-timepicker-current-inline tabindex="0" data-te-ripple-init>21</button>
<span class="${u.timepickerInlineIconDown}" data-te-timepicker-icon-inline-hour data-te-timepicker-icon-down>
<span class="${u.timepickerInlineIconSvg}">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" />
</svg>
</span>
</span>
</span>
<button type='button' class='${u.timepickerInlineDot}' data-te-timepicker-current-inline disabled>:</button>
<span class="${u.timepickerCurrentMinuteWrapper}">
<span class="${u.timepickerInlineIconUp}" data-te-timepicker-icon-up data-te-timepicker-icon-inline-minute>
<span class="${u.timepickerInlineIconSvg}">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 15.75l7.5-7.5 7.5 7.5" />
</svg>
</span>
</span>
<button type='button' class='${u.timepickerInlineCurrentButton}' data-te-timepicker-minute data-te-timepicker-current data-te-timepicker-current-inline tabindex="0" data-te-ripple-init>21</button>
<span class="${u.timepickerInlineIconDown}" data-te-timepicker-icon-inline-minute data-te-timepicker-icon-down>
<span class="${u.timepickerInlineIconSvg}">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" />
</svg>
</span>
</span>
</span>
</div>
${s?"":`<div class="${u.timepickerInlineModeWrapper}">
<button type='button' class="${u.timepickerInlineModeAm}" data-te-timepicker-am data-te-timepicker-hour-mode tabindex="0" data-te-ripple-init>${h}</button>
<button class="${u.timepickerInlineModePm}" data-te-timepicker-hour-mode data-te-timepicker-pm tabindex="0" data-te-ripple-init>${d}</button>
<button type='button' class='${u.timepickerInlineSubmitButton}' data-te-timepicker-submit tabindex="0" data-te-ripple-init>${t}</button>
</div>`}
${s?`<button class='${u.timepickerInlineSubmitButton}' data-te-timepicker-submit tabindex="0" data-te-ripple-init>${t}</button>`:""}
</div>
</div>
</div>
</div>
</div>`;return l?f:p},vT=(s,t,e)=>{const{iconSVG:i}=s;return`
<button id="${t}" tabindex="0" type="button" class="${e.timepickerToggleButton}" data-te-toggle="timepicker" data-te-timepicker-toggle-button data-te-timepicker-icon>
${i}
</button>
`},Ho="data-te-timepicker-disabled",Vo="data-te-timepicker-active",xi=s=>{if(s==="")return;let t,e,i,n;return Jd(s)?(t=s.getHours(),n=t,e=s.getMinutes(),t%=12,n===0&&t===0&&(i="AM"),t=t||12,i===void 0&&(i=Number(n)>=12?"PM":"AM"),e=e<10?`0${e}`:e):([t,e,i]=j(s,!1),n=t,t%=12,n===0&&t===0&&(i="AM"),t=t||12,i===void 0&&(i=Number(n)>=12?"PM":"AM")),{hours:t,minutes:e,amOrPm:i}},Jd=s=>s&&Object.prototype.toString.call(s)==="[object Date]"&&!Number.isNaN(s),tu=s=>{if(s==="")return;let t,e;return Jd(s)?(t=s.getHours(),e=s.getMinutes()):[t,e]=j(s,!1),e=Number(e)<10?`0${Number(e)}`:e,{hours:t,minutes:e}},yT=(s,t,e)=>_.on(document,s,t,({target:i})=>{if(i.hasAttribute(Vo))return;document.querySelectorAll(t).forEach(o=>{o.hasAttribute(Vo)&&(g.removeClass(o,e.opacity),o.removeAttribute(Vo))}),g.addClass(i,e.opacity),i.setAttribute(Vo,"")}),eu=({clientX:s,clientY:t,touches:e},i,n=!1)=>{const{left:o,top:r}=i.getBoundingClientRect();let a={};return!n||!e?a={x:s-o,y:t-r}:n&&Object.keys(e).length>0&&(a={x:e[0].clientX-o,y:e[0].clientY-r}),a},Fo=()=>navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/MacIntel/.test(navigator.platform)||/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),j=(s,t=!0)=>t?s.value.replace(/:/gi," ").split(" "):s.replace(/:/gi," ").split(" "),iu=(s,t)=>{const[e,i,n]=j(s,!1),[o,r,a]=j(t,!1);return n==="PM"&&a==="AM"||n===a&&e>o||i>r},su=()=>{const s=new Date,t=s.getHours(),e=s.getMinutes();return`${t}:${e<10?`0${e}`:e}`},je=(s,t,e)=>{if(!t)return s;let i=su();return e&&(i=`${xi(i).hours}:${xi(i).minutes} ${xi(i).amOrPm}`),(s!==""&&iu(i,s)||s==="")&&(s=i),s},Ye=(s,t,e)=>{if(!t)return s;let i=su();return e&&(i=`${xi(i).hours}:${xi(i).minutes} ${xi(i).amOrPm}`),(s!==""&&!iu(i,s)||s==="")&&(s=i),s},TT=({format12:s,maxTime:t,minTime:e,disablePast:i,disableFuture:n},o,r)=>{const a=j(o)[1];e=je(e,i,s),t=Ye(t,n,s);const[l,c,h]=j(t,!1),[d,u,p]=j(e,!1);if(h!==void 0||p!==void 0)return[r,a];if(!(l!==""&&d===""&&Number(r)>Number(l))&&!(l===""&&d!==""&&c===void 0&&u!==""&&Number(r)<Number(d)))return[r,a]},nu=(s,t,e,i)=>{s.forEach(n=>{t=t==="12"&&i?"0":t,(n.textContent==="00"||Number(n.textContent==="12"&&i?"0":n.textContent)>t)&&(g.addClass(n,e.tipsDisabled),n.setAttribute(Ho,""))})},ou=(s,t,e,i)=>{s.forEach(n=>{t=t==="12"&&i?"0":t,n.textContent!=="00"&&Number(n.textContent==="12"&&i?"0":n.textContent)<Number(t)&&(g.addClass(n,e.tipsDisabled),n.setAttribute(Ho,""))})},ru=(s,t,e,i)=>{if(t==="12"||t==="24")return;const n=e?12:24;return i==="max"?(Number(s)===n?0:Number(s))>Number(t):(Number(s)===n?0:Number(s))<Number(t)},ET=(s,t,e,i,n,o)=>{s.forEach(r=>{(ru(i,e,o,"max")||Number(r.textContent)>t&&Number(i)===Number(e))&&(g.addClass(r,n.tipsDisabled),r.setAttribute(Ho,""))})},xT=(s,t,e,i,n,o)=>{s.forEach(r=>{(ru(i,e,o,"min")||Number(r.textContent)<t&&Number(i)===Number(e))&&(g.addClass(r,n.tipsDisabled),r.setAttribute(Ho,""))})},CT=s=>s.startsWith("0")?Number(s.slice(1)):Number(s),Xs="timepicker",W=`data-te-${Xs}`,au="[data-te-toggle]",Wo=`te.${Xs}`,pe=`.${Wo}`,fe=".data-api",lu=`click${pe}${fe}`,zo=`keydown${pe}${fe}`,cu=`mousedown${pe}${fe}`,hu=`mouseup${pe}${fe}`,du=`mousemove${pe}${fe}`,uu=`mouseleave${pe}${fe}`,pu=`mouseover${pe}${fe}`,fu=`touchmove${pe}${fe}`,_u=`touchend${pe}${fe}`,gu=`touchstart${pe}${fe}`,AT=`[${W}-am]`,wT=`[${W}-pm]`,kT=`[${W}-format24]`,jo=`[${W}-current]`,Yo=`[${W}-hour-mode]`,ST=`[${W}-toggle-button]`,ul=`${W}-cancel`,mu=`${W}-clear`,pl=`${W}-submit`,OT=`${W}-icon`,fl=`${W}-icon-up`,_l=`${W}-icon-down`,DT=`${W}-icon-inline-hour`,IT=`${W}-icon-inline-minute`,bu=`${W}-inline-hour-icons`,MT=`${W}-current-inline`,LT="readonly",$T=`${W}-invalid-feedback`,gl=`${W}-is-invalid`,Ke=`${W}-disabled`,J=`${W}-active`,PT=`${W}-input`,Ci=`${W}-clock`,Gs=`${W}-clock-inner`,ml=`${W}-wrapper`,vu=`${W}-clock-wrapper`,Ko=`${W}-hour`,bl=`${W}-minute`,Uo=`${W}-tips-element`,pt=`${W}-tips-hours`,vt=`${W}-tips-minutes`,Rt=`${W}-tips-inner`,Xo=`${W}-tips-inner-element`,yu=`${W}-middle-dot`,vl=`${W}-hand-pointer`,yl=`${W}-circle`,Tu=`${W}-modal`,RT={appendValidationInfo:!0,bodyID:"",cancelLabel:"Cancel",clearLabel:"Clear",closeModalOnBackdropClick:!0,closeModalOnMinutesClick:!1,container:"body",defaultTime:"",disabled:!1,disablePast:!1,disableFuture:!1,enableValidation:!0,focusInputAfterApprove:!1,footerID:"",format12:!0,format24:!1,headID:"",increment:!1,inline:!1,invalidLabel:"Invalid Time Format",maxTime:"",minTime:"",modalID:"",okLabel:"Ok",overflowHidden:!0,pickerID:"",readOnly:!1,showClearBtn:!0,switchHoursToMinutesOnClick:!0,iconSVG:`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>`,withIcon:!0,pmLabel:"PM",amLabel:"AM",animations:!0},NT={appendValidationInfo:"boolean",bodyID:"string",cancelLabel:"string",clearLabel:"string",closeModalOnBackdropClick:"boolean",closeModalOnMinutesClick:"boolean",container:"string",disabled:"boolean",disablePast:"boolean",disableFuture:"boolean",enableValidation:"boolean",footerID:"string",format12:"boolean",format24:"boolean",headID:"string",increment:"boolean",inline:"boolean",invalidLabel:"string",modalID:"string",okLabel:"string",overflowHidden:"boolean",pickerID:"string",readOnly:"boolean",showClearBtn:"boolean",switchHoursToMinutesOnClick:"boolean",defaultTime:"(string|date|number)",iconSVG:"string",withIcon:"boolean",pmLabel:"string",amLabel:"string",animations:"boolean"},BT={tips:"absolute rounded-[100%] w-[32px] h-[32px] text-center cursor-pointer text-[1.1rem] rounded-[100%] bg-transparent flex justify-center items-center font-light focus:outline-none selection:bg-transparent",tipsActive:"text-white bg-[#3b71ca] font-normal",tipsDisabled:"text-[#b3afaf] pointer-events-none bg-transparent",transform:"transition-[transform,height] ease-in-out duration-[400ms]",modal:"z-[1065]",clockAnimation:"animate-[show-up-clock_350ms_linear]",opacity:"!opacity-100",timepickerWrapper:"touch-none opacity-100 z-[1065] inset-0 bg-[#00000066] h-full flex items-center justify-center flex-col fixed",timepickerContainer:"flex items-center justify-center flex-col max-h-[calc(100%-64px)] overflow-y-auto shadow-[0_10px_15px_-3px_rgba(0,0,0,0.07),0_4px_6px_-2px_rgba(0,0,0,0.05)] min-[320px]:max-[825px]:landscape:rounded-lg",timepickerElements:"flex flex-col min-w-[310px] min-h-[325px] bg-white rounded-t-[0.6rem] min-[320px]:max-[825px]:landscape:!flex-row min-[320px]:max-[825px]:landscape:min-w-[auto] min-[320px]:max-[825px]:landscape:min-h-[auto] min-[320px]:max-[825px]:landscape:overflow-y-auto justify-around",timepickerHead:"bg-[#3b71ca] dark:bg-zinc-700 h-[100px] rounded-t-lg pr-[24px] pl-[50px] py-[10px] min-[320px]:max-[825px]:landscape:rounded-tr-none min-[320px]:max-[825px]:landscape:rounded-bl-none min-[320px]:max-[825px]:landscape:p-[10px] min-[320px]:max-[825px]:landscape:pr-[10px] min-[320px]:max-[825px]:landscape:h-auto min-[320px]:max-[825px]:landscape:min-h-[305px] flex flex-row items-center justify-center",timepickerHeadContent:"min-[320px]:max-[825px]:landscape:flex-col flex w-full justify-evenly",timepickerCurrentWrapper:"[direction:ltr] rtl:[direction:rtl]",timepickerCurrentButtonWrapper:"relative h-full",timepickerCurrentButton:"text-[3.75rem] font-light leading-[1.2] tracking-[-0.00833em] text-white opacity-[.54] border-none bg-transparent p-0 min-[320px]:max-[825px]:landscape:text-5xl min-[320px]:max-[825px]:landscape:font-normal cursor-pointer hover:bg-[#00000026] hover:outline-none focus:bg-[#00000026] focus:outline-none ",timepickerDot:"font-light leading-[1.2] tracking-[-0.00833em] text-[3.75rem] opacity-[.54] border-none bg-transparent p-0 text-white min-[320px]:max-[825px]:landscape:text-[3rem] min-[320px]:max-[825px]:landscape:font-normal",timepickerModeWrapper:"flex flex-col justify-center text-[18px] text-[#ffffff8a] min-[320px]:max-[825px]:landscape:!justify-around min-[320px]:max-[825px]:landscape:!flex-row",timepickerModeAm:"p-0 bg-transparent border-none text-white opacity-[.54] cursor-pointer hover:bg-[#00000026] hover:outline-none focus:bg-[#00000026] focus:outline-none",timepickerModePm:"p-0 bg-transparent border-none text-white opacity-[.54] cursor-pointer hover:bg-[#00000026] hover:outline-none focus:bg-[#00000026] focus:outline-none",timepickerClockWrapper:"min-w-[310px] max-w-[325px] min-h-[305px] overflow-x-hidden h-full flex justify-center flex-col items-center dark:bg-zinc-500",timepickerClock:"relative rounded-[100%] w-[260px] h-[260px] cursor-default my-0 mx-auto bg-[#00000012] dark:bg-zinc-600/50",timepickerMiddleDot:"top-1/2 left-1/2 w-[6px] h-[6px] -translate-y-1/2 -translate-x-1/2 rounded-[50%] bg-[#3b71ca] absolute",timepickerHandPointer:"bg-[#3b71ca] bottom-1/2 h-2/5 left-[calc(50%-1px)] rtl:!left-auto origin-[center_bottom_0] rtl:!origin-[50%_50%_0] w-[2px] absolute",timepickerPointerCircle:"-top-[21px] -left-[15px] w-[4px] border-[14px] border-solid border-[#3b71ca] h-[4px] box-content rounded-[100%] absolute",timepickerClockInner:"absolute top-1/2 left-1/2 -translate-y-1/2 -translate-x-1/2 w-[160px] h-[160px] rounded-[100%]",timepickerFooterWrapper:"rounded-b-lg flex justify-between items-center w-full h-[56px] px-[12px] bg-white dark:bg-zinc-500",timepickerFooter:"w-full flex justify-between",timepickerFooterButton:"text-[0.8rem] min-w-[64px] box-border font-medium leading-[40px] rounded-[10px] tracking-[0.1rem] uppercase text-[#3b71ca] dark:text-white border-none bg-transparent transition-[background-color,box-shadow,border] duration-[250ms] ease-[cubic-bezier(0.4,0,0.2,1)] delay-[0ms] outline-none py-0 px-[10px] h-[40px] mb-[10px] hover:bg-[#00000014] focus:bg-[#00000014] focus:outline-none",timepickerInLine truncated
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" />
</svg>
`,lE=s=>{s.code==="Tab"||s.code==="Esc"||s.preventDefault()};function Jo(s,t,e,i,n){t.selectSize==="default"&&g.addClass(s,e),t.selectSize==="sm"&&g.addClass(s,i),t.selectSize==="lg"&&g.addClass(s,n)}function cE(s,t,e,i,n){const o=document.createElement("div");o.setAttribute("id",s),o.setAttribute(XT,"");const r=$("div");r.setAttribute(UT,""),g.addClass(r,i.formOutline);const a=$("input"),l=t.selectFilter?"combobox":"listbox",c=t.multiple?"true":"false",h=t.disabled?"true":"false";a.setAttribute(GT,""),g.addClass(a,i.selectInput),Jo(a,t,i.selectInputSizeDefault,i.selectInputSizeSm,i.selectInputSizeLg),t.selectFormWhite&&g.addClass(a,i.selectInputWhite),a.setAttribute("type","text"),a.setAttribute("role",l),a.setAttribute("aria-multiselectable",c),a.setAttribute("aria-disabled",h),a.setAttribute("aria-haspopup","true"),a.setAttribute("aria-expanded",!1),a.name=n,t.tabIndex&&a.setAttribute("tabIndex",t.tabIndex),t.disabled&&a.setAttribute("disabled",""),t.selectPlaceholder!==""&&a.setAttribute("placeholder",t.selectPlaceholder),t.selectValidation?(g.addStyle(a,{"pointer-events":"none","caret-color":"transparent"}),g.addStyle(r,{cursor:"pointer"})):a.setAttribute("readonly","true"),t.selectValidation&&(a.setAttribute("required","true"),a.setAttribute("aria-required","true"),a.addEventListener("keydown",lE));const d=$("div");g.addClass(d,i.selectValidationValid);const u=document.createTextNode(`${t.selectValidFeedback}`);d.appendChild(u);const p=$("div");g.addClass(p,i.selectValidationInvalid);const f=document.createTextNode(`${t.selectInvalidFeedback}`);p.appendChild(f);const b=$("span");b.setAttribute(qT,""),g.addClass(b,i.selectClearBtn),Jo(b,t,i.selectClearBtnDefault,i.selectClearBtnSm,i.selectClearBtnLg),t.selectFormWhite&&g.addClass(b,i.selectClearBtnWhite);const v=document.createTextNode("✕");b.appendChild(v),b.setAttribute("tabindex","0");const y=$("span");return g.addClass(y,i.selectArrow),Jo(y,t,i.selectArrowDefault,i.selectArrowSm,i.selectArrowLg),t.selectFormWhite&&g.addClass(y,i.selectArrowWhite),y.innerHTML=aE,r.appendChild(a),e&&(g.addClass(e,i.selectLabel),Jo(e,t,i.selectLabelSizeDefault,i.selectLabelSizeSm,i.selectLabelSizeLg),t.selectFormWhite&&g.addClass(e,i.selectLabelWhite),r.appendChild(e)),t.selectValidation&&(r.appendChild(d),r.appendChild(p)),t.selectClearButton&&r.appendChild(b),r.appendChild(y),o.appendChild(r),o}function Lu(s,t,e,i,n,o,r,a){const l=document.createElement("div");l.setAttribute(ZT,""),g.addClass(l,a.selectDropdownContainer),l.setAttribute("id",`${s}`),l.style.width=`${e}px`;const c=document.createElement("div");c.setAttribute("tabindex",0),c.setAttribute(QT,""),g.addClass(c,a.dropdown);const h=$("div");h.setAttribute(JT,""),g.addClass(h,a.optionsWrapper),g.addClass(h,a.optionsWrapperScrollbar),h.style.maxHeight=`${i}px`;const d=$u(o,n,t,a);return h.appendChild(d),t.selectFilter&&c.appendChild(hE(t.selectSearchPlaceholder,a)),c.appendChild(h),r&&c.appendChild(r),l.appendChild(c),l}function $u(s,t,e,i){const n=$("div");n.setAttribute(tE,""),g.addClass(n,i.optionsList);let o;return e.multiple?o=uE(s,t,e,i):o=dE(s,e,i),o.forEach(r=>{n.appendChild(r)}),n}function hE(s,t){const e=$("div");g.addClass(e,t.inputGroup);const i=$("input");return i.setAttribute(eE,""),g.addClass(i,t.selectFilterInput),i.placeholder=s,i.setAttribute("role","searchbox"),i.setAttribute("type","text"),e.appendChild(i),e}function dE(s,t,e){return Pu(s,t,e)}function uE(s,t,e,i){let n=null;e.selectAll&&(n=pE(t,s,e,i));const o=Pu(s,e,i);return n?[n,...o]:o}function Pu(s,t,e){const i=[];return s.forEach(n=>{if(Object.prototype.hasOwnProperty.call(n,"options")){const r=mE(n,t,e);i.push(r)}else i.push(Ru(n,t,e))}),i}function pE(s,t,e,i){const n=xl(t),o=$("div");return o.setAttribute(Iu,""),g.addClass(o,i.selectOption),o.setAttribute(iE,""),g.addStyle(o,{height:`${e.selectOptionHeight}px`}),o.setAttribute("role","option"),o.setAttribute("aria-selected",n),n&&o.setAttribute(Mu,""),o.appendChild(Nu(s,e,i)),s.setNode(o),o}function Ru(s,t,e){if(s.node)return s.node;const i=$("div");return i.setAttribute(Iu,""),g.addClass(i,e.selectOption),g.addStyle(i,{height:`${t.selectOptionHeight}px`}),g.setDataAttribute(i,"id",s.id),i.setAttribute("role","option"),i.setAttribute("aria-selected",s.selected),i.setAttribute("aria-disabled",s.disabled),s.selected&&i.setAttribute(Mu,""),s.disabled&&i.setAttribute("data-te-select-option-disabled",!0),s.hidden&&g.addClass(i,"hidden"),i.appendChild(Nu(s,t,e)),s.icon&&i.appendChild(gE(s,e)),s.setNode(i),i}function Nu(s,t,e){const i=$("span");i.setAttribute(sE,""),g.addClass(i,e.selectOptionText);const n=document.createTextNode(s.label);return t.multiple&&i.appendChild(_E(s,e)),i.appendChild(n),(s.secondaryText||typeof s.secondaryText=="number")&&i.appendChild(fE(s.secondaryText,e)),i}function fE(s,t){const e=$("span");g.addClass(e,t.selectOptionSecondaryText);const i=document.createTextNode(s);return e.appendChild(i),e}function _E(s,t){const e=$("input");e.setAttribute("type","chec Line truncated
<input
type="text"
class="${e.chipsInput}"
id="${s}"
placeholder="Example label" />
<label
for="${s}"
class="${e.chipsLabel}"
>${t}
</label>
</div>
</div>`,VE=({text:s,iconSVG:t},e)=>`<div data-te-chip-init data-te-ripple-init class="${e.chipElement}">
<span data-te-chip-text>${s}</span>
<span data-te-chip-close class="${e.chipCloseIcon}">
${t}
</span>
</div>`,tr="chip",FE=`te.${tr}`,Ku="data-te-chip-close",kl=`[${Ku}]`,WE="delete.te.chips",zE="select.te.chip",jE='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-3 h-3"> <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" /></svg>',YE={text:"string",closeIcon:"boolean",img:"object",iconSVG:"string"},KE={text:"",closeIcon:!1,img:{path:"",alt:""},iconSVG:jE},UE={icon:"float-right pl-[8px] text-[16px] opacity-[.53] cursor-pointer fill-[#afafaf] hover:text-[#8b8b8b] transition-all duration-200 ease-in-out",chipElement:"flex justify-between items-center h-[32px] leading-loose py-[5px] px-[12px] mr-4 my-[5px] text-[13px] font-normal text-[#4f4f4f] cursor-pointer bg-[#eceff1] dark:text-white dark:bg-neutral-600 rounded-[16px] transition-[opacity] duration-300 ease-linear [word-wrap: break-word] shadow-none normal-case hover:!shadow-none active:bg-[#cacfd1] inline-block font-medium leading-normal text-[#4f4f4f] text-center no-underline align-middle cursor-pointer select-none border-[.125rem] border-solid border-transparent py-1.5 px-3 text-xs rounded",chipCloseIcon:"w-4 float-right pl-[8px] text-[16px] opacity-[.53] cursor-pointer fill-[#afafaf] hover:fill-[#8b8b8b] dark:fill-gray-400 dark:hover:fill-gray-100 transition-all duration-200 ease-in-out"},XE={icon:"string",chipElement:"string",chipCloseIcon:"string"};class Ai{constructor(t,e={},i){this._element=t,this._options=this._getConfig(e),this._classes=this._getClasses(i)}static get NAME(){return tr}init(){this._appendCloseIcon(),this._handleDelete(),this._handleTextChip(),this._handleClickOnChip()}dispose(){this._element=null,this._options=null,_.off(this._element,"click")}appendChip(){const{text:t,closeIcon:e,iconSVG:i}=this._options;return VE({text:t,closeIcon:e,iconSVG:i},this._classes)}_appendCloseIcon(t=this._element){if(!(m.find(kl,this._element).length>0)&&this._options.closeIcon){const e=$("span");e.classList=this._classes.icon,e.setAttribute(Ku),e.innerHTML=this._options.iconSVG,t.insertAdjacentElement("beforeend",e)}}_handleClickOnChip(){_.on(this._element,"click",t=>{const{textContent:e}=t.target,i={};i.tag=e.trim(),_.trigger(zE,{event:t,obj:i})})}_handleDelete(){m.find(kl,this._element).length!==0&&_.on(this._element,"click",kl,()=>{_.trigger(this._element,WE),this._element.remove()})}_handleTextChip(){this._element.innerText===""&&(this._element.innerText=this._options.text)}_getConfig(t){const e={...KE,...g.getDataAttributes(this._element),...t};return L(tr,e,YE),e}_getClasses(t){const e=g.getDataClassAttributes(this._element);return t={...UE,...e,...t},L(tr,t,XE),t}static getInstance(t){return D.getData(t,FE)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,typeof e=="object"?e:null)}}const sn="chips",nn=`data-te-${sn}`,Uu=`te.${sn}`,GE=`${nn}-input-init`,Ft=`${nn}-active`,Xu=`${nn}-initial`,Gu=`${nn}-placeholder`,qE=`${nn}-input-wrapper`,Sl="data-te-chip-init",qu="data-te-chip-close",Zu="data-te-chip-text",ZE=`[${Ft}]`,Ol=`[${Sl}]`,QE=`${Ol}${ZE}`,Dl=`[${qu}]`,JE=`[${qE}]`,tx=`[${Zu}]`,ex=`[${Gu}]`,ix="data-te-input-notch-leading-ref",sx="data-te-input-notch-middle-ref",nx=`[${ix}]`,ox=`[${sx}]`,ls="data-te-input-state-active",Il="[data-te-input-notch-ref]",rx="add.te.chips",ax="arrowDown.te.chips",lx="arrowLeft.te.chips",cx="arrowRight.te.chips",hx="arrowUp.te.chips",Qu="delete.te.chips",Ju="select.te.chips",dx={inputID:"string",parentSelector:"string",initialValues:"array",editable:"boolean",labelText:"string",inputClasses:"object",inputOptions:"object"},ux={inputID:Et("chips-input-"),parentSelector:"",initialValues:[{tag:"init1"},{tag:"init2"}],editable:!1,labelText:"Example label",inputClasses:{},inputOptions:{}},px={opacity:"opacity-0",inputWrapperPadding:"p-[5px]",transition:"transition-all duration-300 ease-[cubic-bezier(0.25,0.1,0.25,1)]",contentEditable:"outline-none !border-[3px] !border-solid !border-[#b2b3b4]",chipsInputWrapper:"relative flex items-center flex-wrap transition-all duration-300 ease-[cubic-bezier(0.25,0.1,0.25,1)]",chipsInput:"peer block min-h-[auto] w-[150px] rounded border-0 bg-transparent py-[0.32rem] px-3 leading-[1.6] outline-none transition-all duration-200 ease-linear focus:placeholder:opacity-100 data-[te-input-state-active]:placeholder:opacity-100 motion-reduce:transition-none dark:text-gray-200 dark:placeholder:text-gray-200 [&:not([data-te-input-placeholder-active])]:placeholder:opacity-0",chipsLabel:"pointer-events-none absolute top-0 left-3 mb-0 max-w-[90%] origin-[0_0] truncate pt-[0.37rem] leading-[1.6] text-gray-500 transition-all duration-200 ease-out peer-focus:-translate-y-[0.9rem] peer-focus:scale-[0.8] peer-focus:text-primary peer-data-[te-input-state-active]:-translate-y-[0.9rem] peer-data-[te-input-state-active]:scale-[0.8] motion-reduce:transition-none dark:text-gray-200 dark:peer-focus:text-gray-200"},fx={opacity:"string",inputWrapperPadding:"string",transition:"string"Line truncated
* perfect-scrollbar v1.5.3
* Copyright 2021 Hyunje Jun, MDBootstrap and Contributors
* Licensed under MIT
*/
function ml(t){return getComputedStyle(t)}function p(t,e){for(var i in e){var n=e[i];"number"==typeof n&&(n+="px"),t.style[i]=n}}function gl(t){var e=document.createElement("div");return e.className=t,e}var _l="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector);function vl(t,e){if(_l)return _l.call(t,e);throw new Error("No element matching method supported")}function bl(t){t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)}function yl(t,e){return Array.prototype.filter.call(t.children,function(t){return vl(t,e)})}var B={main:"ps",rtl:"ps__rtl",element:{thumb:function(t){return"ps__thumb-"+t},rail:function(t){return"ps__rail-"+t},consuming:"ps__child--consume"},state:{focus:"ps--focus",clicking:"ps--clicking",active:function(t){return"ps--active-"+t},scrolling:function(t){return"ps--scrolling-"+t}}},wl={x:null,y:null};function xl(t,e){var t=t.element.classList,i=B.state.scrolling(e);t.contains(i)?clearTimeout(wl[e]):t.add(i)}function Cl(t,e){wl[e]=setTimeout(function(){return t.isAlive&&t.element.classList.remove(B.state.scrolling(e))},t.settings.scrollingThreshold)}function kl(t){this.element=t,this.handlers={}}function Al(){this.eventElements=[]}t={isEmpty:{configurable:!0}};kl.prototype.bind=function(t,e){void 0===this.handlers[t]&&(this.handlers[t]=[]),this.handlers[t].push(e),this.element.addEventListener(t,e,!1)},kl.prototype.unbind=function(e,i){var n=this;this.handlers[e]=this.handlers[e].filter(function(t){return!(!i||t===i)||(n.element.removeEventListener(e,t,!1),!1)})},kl.prototype.unbindAll=function(){for(var t in this.handlers)this.unbind(t)},t.isEmpty.get=function(){var e=this;return Object.keys(this.handlers).every(function(t){return 0===e.handlers[t].length})},Object.defineProperties(kl.prototype,t);function Sl(t){var e;return"function"==typeof window.CustomEvent?new CustomEvent(t):((e=document.createEvent("CustomEvent")).initCustomEvent(t,!1,!1,void 0),e)}function Tl(t,e,i,n,s){var o;if(void 0===n&&(n=!0),void 0===s&&(s=!1),"top"===e)o=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==e)throw new Error("A proper axis should be provided");o=["contentWidth","containerWidth","scrollLeft","x","left","right"]}var e=t,t=i,i=n,n=s,a=(s=o)[0],r=s[1],l=s[2],c=s[3],h=s[4],s=s[5],d=(void 0===i&&(i=!0),void 0===n&&(n=!1),e.element);e.reach[c]=null,d[l]<1&&(e.reach[c]="start"),d[l]>e[a]-e[r]-1&&(e.reach[c]="end"),t&&(d.dispatchEvent(Sl("ps-scroll-"+c)),t<0?d.dispatchEvent(Sl("ps-scroll-"+h)):0<t&&d.dispatchEvent(Sl("ps-scroll-"+s)),i)&&(xl(l=e,a=c),Cl(l,a));e.reach[c]&&(t||n)&&d.dispatchEvent(Sl("ps-"+c+"-reach-"+e.reach[c]))}function f(t){return parseInt(t,10)||0}Al.prototype.eventElement=function(e){var t=this.eventElements.filter(function(t){return t.element===e})[0];return t||(t=new kl(e),this.eventElements.push(t)),t},Al.prototype.bind=function(t,e,i){this.eventElement(t).bind(e,i)},Al.prototype.unbind=function(t,e,i){t=this.eventElement(t);t.unbind(e,i),t.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(t),1)},Al.prototype.unbindAll=function(){this.eventElements.forEach(function(t){return t.unbindAll()}),this.eventElements=[]},Al.prototype.once=function(t,e,i){var n=this.eventElement(t),s=function(t){n.unbind(e,s),i(t)};n.bind(e,s)};var Ol={isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&0<window.navigator.maxTouchPoints||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!=typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!=typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)};function El(t){var e=t.element,i=Math.floor(e.scrollTop),n=e.getBoundingClientRect(),n=(t.containerWidth=Math.round(n.width),t.containerHeight=Math.round(n.height),t.contentWidth=e.scrollWidth,t.contentHeight=e.scrollHeight,e.contains(t.scrollbarXRail)||(yl(e,B.element.rail("x")).forEach(bl),e.appendChild(t.scrollbarXRail)),e.contains(t.scrollbarYRail)||(yl(e,B.element.rail("y")).forEach(bl),e.appendChild(t.scrollbarYRail)),!t.settings.suppressScrollX&&t.containerWidth+t.settings.scrollXMarginOffset<t.contentWidth?(t.scrollbarXActive=!0,t.railXWidth=t.containerWidth-t.railXMarginWidth,t.railXRatio=t.containerWidth/t.railXWidth,t.scrollbarXWidth=Il(t,f(t.railXWidth*t.containerWidth/t.contentWidth)),t.scrollbarXLeft=f((t.negativeScrollAdjustment+e.scrollLeft)*(t.railXWidth-t.scrollbarXWidth)/(t.contentWidth-t.containerWidth))):t.scrollbarXActive=!1,!t.settings.suppressScrollY&&t.containerHeight+t.settings.scrollYMarginOffset<t.contentHeight?(t.scrollbarYActive=!0,t.railYHeight=t.containerHeight-t.railYMarginHeight,t.railYRatio=t.containerHeight/t.railYHeight,t.scrollbarYHeight=Il(t,f(t.railYHeight*t.containerHeight/t.contentHeight)),t.scrolLine truncated
//# sourceMappingURL=index.min.js.map
*/function ge(s){return getComputedStyle(s)}function kt(s,t){for(var e in t){var i=t[e];typeof i=="number"&&(i=i+"px"),s.style[e]=i}return s}function ir(s){var t=document.createElement("div");return t.className=s,t}var op=typeof Element<"u"&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector);function qe(s,t){if(!op)throw new Error("No element matching method supported");return op.call(s,t)}function hs(s){s.remove?s.remove():s.parentNode&&s.parentNode.removeChild(s)}function rp(s,t){return Array.prototype.filter.call(s.children,function(e){return qe(e,t)})}var at={main:"ps",rtl:"ps__rtl",element:{thumb:function(s){return"ps__thumb-"+s},rail:function(s){return"ps__rail-"+s},consuming:"ps__child--consume"},state:{focus:"ps--focus",clicking:"ps--clicking",active:function(s){return"ps--active-"+s},scrolling:function(s){return"ps--scrolling-"+s}}},ap={x:null,y:null};function lp(s,t){var e=s.element.classList,i=at.state.scrolling(t);e.contains(i)?clearTimeout(ap[t]):e.add(i)}function cp(s,t){ap[t]=setTimeout(function(){return s.isAlive&&s.element.classList.remove(at.state.scrolling(t))},s.settings.scrollingThreshold)}function Ix(s,t){lp(s,t),cp(s,t)}var an=function(t){this.element=t,this.handlers={}},hp={isEmpty:{configurable:!0}};an.prototype.bind=function(t,e){typeof this.handlers[t]>"u"&&(this.handlers[t]=[]),this.handlers[t].push(e),this.element.addEventListener(t,e,!1)},an.prototype.unbind=function(t,e){var i=this;this.handlers[t]=this.handlers[t].filter(function(n){return e&&n!==e?!0:(i.element.removeEventListener(t,n,!1),!1)})},an.prototype.unbindAll=function(){for(var t in this.handlers)this.unbind(t)},hp.isEmpty.get=function(){var s=this;return Object.keys(this.handlers).every(function(t){return s.handlers[t].length===0})},Object.defineProperties(an.prototype,hp);var ds=function(){this.eventElements=[]};ds.prototype.eventElement=function(t){var e=this.eventElements.filter(function(i){return i.element===t})[0];return e||(e=new an(t),this.eventElements.push(e)),e},ds.prototype.bind=function(t,e,i){this.eventElement(t).bind(e,i)},ds.prototype.unbind=function(t,e,i){var n=this.eventElement(t);n.unbind(e,i),n.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(n),1)},ds.prototype.unbindAll=function(){this.eventElements.forEach(function(t){return t.unbindAll()}),this.eventElements=[]},ds.prototype.once=function(t,e,i){var n=this.eventElement(t),o=function(r){n.unbind(e,o),i(r)};n.bind(e,o)};function sr(s){if(typeof window.CustomEvent=="function")return new CustomEvent(s);var t=document.createEvent("CustomEvent");return t.initCustomEvent(s,!1,!1,void 0),t}function nr(s,t,e,i,n){i===void 0&&(i=!0),n===void 0&&(n=!1);var o;if(t==="top")o=["contentHeight","containerHeight","scrollTop","y","up","down"];else if(t==="left")o=["contentWidth","containerWidth","scrollLeft","x","left","right"];else throw new Error("A proper axis should be provided");Mx(s,e,o,i,n)}function Mx(s,t,e,i,n){var o=e[0],r=e[1],a=e[2],l=e[3],c=e[4],h=e[5];i===void 0&&(i=!0),n===void 0&&(n=!1);var d=s.element;s.reach[l]=null,d[a]<1&&(s.reach[l]="start"),d[a]>s[o]-s[r]-1&&(s.reach[l]="end"),t&&(d.dispatchEvent(sr("ps-scroll-"+l)),t<0?d.dispatchEvent(sr("ps-scroll-"+c)):t>0&&d.dispatchEvent(sr("ps-scroll-"+h)),i&&Ix(s,l)),s.reach[l]&&(t||n)&&d.dispatchEvent(sr("ps-"+l+"-reach-"+s.reach[l]))}function it(s){return parseInt(s,10)||0}function Lx(s){return qe(s,"input,[contenteditable]")||qe(s,"select,[contenteditable]")||qe(s,"textarea,[contenteditable]")||qe(s,"button,[contenteditable]")}function $x(s){var t=ge(s);return it(t.width)+it(t.paddingLeft)+it(t.paddingRight)+it(t.borderLeftWidth)+it(t.borderRightWidth)}var us={isWebKit:typeof document<"u"&&"WebkitAppearance"in document.documentElement.style,supportsTouch:typeof window<"u"&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&window.navigator.maxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:typeof navigator<"u"&&navigator.msMaxTouchPoints,isChrome:typeof navigator<"u"&&/Chrome/i.test(navigator&&navigator.userAgent)};function ke(s){var t=s.element,e=Math.floor(t.scrollTop),i=t.getBoundingClientRect();s.containerWidth=Math.round(i.width),s.containerHeight=Math.round(i.height),s.contentWidth=t.scrollWidth,s.contentHeight=t.scrollHeight,t.contains(s.scrollbarXRail)||(rp(t,at.element.rail("x")).forEach(function(n){return hs(n)}),t.appendChild(s.scrollbarXRail)),t.contains(s.scrollbarYRail)||(rp(t,at.element.rail("y")).forEach(function(n){return hs(n)}),t.appendChild(s.scrollbarYRail)),!s.settings.suppressScrollX&&s.containerWidth+s.settings.scrollXMarginOffset<s.contentWidth?(s.scrollbarXActive=!0,s.railXWidth=s.containerWidth-s.railXMarginWidth,s.railXRatio=s.containerWidth/s.railXWidth,s.scrollbarXWidth=dp(s,it(s.railXWidth*s.containerWidth/s.contentWidth)),s.scrollbarXLeft=it((s.negativeScrollAdjustment+t.scrollLeft)*(s.railXWidth-Line truncated
`);return`
<div class="${h.pagination} ${u?`${h.paginationBordered}`:""} ${h.borderColor} ${h.color}">
<div class="${h.selectItemsWrapper}">
<p class="${h.paginationRowsText} ${d?`${h.loadingPaginationRowsText}`:""}">${n}</p>
<div class="${h.selectWrapper} ${d?`${h.loadingPaginationSelectWrapper}`:""}">
<select name="entries"
${d?"disabled":""} class="select" ${Xx}>
${p}
</select>
</div>
</div>
<div class="${h.paginationNav} ${d?`${h.loadingPaginationNav}`:""}" ${Gx}>
${s}
</div>
<div class="${h.paginationButtonsWrapper}">
${i?`<button data-te-ripple-init data-te-ripple-color="dark" class="${h.paginationStartButton}" ${Qx}>
${r}
</button>`:""}
<button data-te-ripple-init data-te-ripple-color="dark" class="${h.paginationLeftButton}" ${Zx}>
${a}
</button>
<button data-te-ripple-init data-te-ripple-color="dark" class="${h.paginationRightButton}" ${qx}>
${l}
</button>
${i?`<button data-te-ripple-init data-te-ripple-color="dark" class="${h.paginationEndButton}" ${Jx}>
${c}
</button>`:""}
</div>
</div>
`},eC="data-te-datatable-sort-icon-ref",iC="data-te-datatable-header-checkbox-ref",sC=(s,t,e,i,n,o,r,a)=>{const l=e?`
<th scope="col">
<div class="${a.checkboxHeaderWrapper}">
<input
class="${a.checkboxHeader}"
type="checkbox"
value=""
${iC}
/>
</div>
</th>
`:'<th scope="col"></th>',c=s.map((h,d)=>{const u=h.fixed?s.filter((p,f)=>p.fixed===h.fixed&&f<d).reduce((p,f)=>p+f.width,0):null;return`<th class="${a.column} ${i?`${a.tableBordered}`:""} ${a.borderColor} ${n?`${a.sm}`:""} ${h.fixed?`${a.fixedHeader} ${a.color}`:""} ${o?`${a.loadingColumn}`:""}" style="${h.fixed?`${h.fixed==="right"?"right":"left"}: ${u}px;`:""}" scope="col">${h.sort?`<div class="${a.sortIconWrapper}"><span class="${a.sortIcon} ${o?"invisible":""}" data-te-sort="${h.field}" ${eC}>${r}</span>`:""} <span class="${h.sort?"":"pl-[18px]"}">${h.label}</span></div></th>`});return[t?l:"",...c].join(`
`)},nC="data-te-datatable-row-ref",oC="data-te-datatable-row-checkbox-ref",rC="data-te-datatable-cell-ref",aC=({rows:s,columns:t,noFoundMessage:e,edit:i,selectable:n,loading:o,bordered:r,borderless:a,striped:l,hover:c,sm:h,classes:d})=>{const u=s.map(p=>{const f=`
<td data-te-field="checkbox" class="${r?`${d.tableBordered} ${d.borderColor}`:""}">
<div class="${d.checkboxRowWrapper}">
<input
class="${d.checkboxRow}"
type="checkbox"
value=""
data-te-row-index="${p.rowIndex}" ${oC}/>
</div>
</td>`,b=t.map((v,y)=>{const T={};if(v.width&&(T["min-width"]=`${v.width-1}px`,T["max-width"]=`${v.width}px`,T.width=`${v.width}px`),v.fixed){const E=t.filter((C,A)=>C.fixed===v.fixed&&A<y).reduce((C,A)=>C+A.width,0);T[v.fixed==="right"?"right":"left"]=`${E}px`}return`<td style="${Object.keys(T).map(E=>`${E}: ${T[E]}`).join("; ")}" class="${d.rowItem} ${d.borderColor} ${i?`${d.edit}`:""} ${r?`${d.tableBordered}`:""} ${h?`${d.sm}`:""} ${v.fixed?`${d.fixedHeader} ${d.color}`:""}" ${rC} data-te-field="${v.field}" ${i&&'contenteditable="true"'}>${p[v.field]}</td>`}).join("");return`<tr scope="row" class="${d.row} ${d.borderColor} ${d.rowAnimation} ${l?`${d.striped}`:""} ${a?`${d.borderless}`:""} ${c?`${d.hoverRow}`:""}" data-te-index="${p.rowIndex}" ${nC}>${n?f:""}${b}</tr>`});return s.length>0||o?u.join(`
`):`<tr class="${d.noFoundMessageWrapper} ${d.borderColor}"><td class="${d.noFoundMessage}">${e}</td></tr>`},lC="data-te-datatable-inner-ref",cC="data-te-datatable-header-ref",pp=({columns:s,rows:t,noFoundMessage:e,edit:i,multi:n,selectable:o,loading:r,loadingMessage:a,pagination:l,bordered:c,borderless:h,striped:d,hover:u,fixedHeader:p,sm:f,sortIconTemplate:b,classes:v})=>{const y=aC({rows:t,columns:s,noFoundMessage:e,edit:i,loading:r,selectable:o,bordered:c,borderless:h,striped:d,hover:u,sm:f,classes:v}),T=sC(s,o,n,c,f,r,b,v);return{table:`
<div class="${v.color}" ${lC}>
<table class="${v.table}">
<thead class="${v.tableHeader} ${c?`${v.tableBordered}`:""} ${h?`${v.borderless}`:""} ${v.borderColor}" ${cC}>
<tr>
${T}
</tr>
</thead>
<tbody class="${p?`${v.fixedHeaderBody}`:""}">
${r?"":y}
</tbody>
</table>
</div>
${r?`
<div class="${v.loadingItemsWrapper}">
<div class="${v.loadingProgressBarWrapper}">
<div class="${v.loadingProgressBar}"></div>
</div>
</div>
<p class="${v.loadingMessage}">${a}</p>
`:""}
${l.enable?tC(l,r,c):""}
`,rows:y,column:T}},hC=({rows:s,field:t,order:e})=>s.sort((n,o)=>{let r=n[t],a=o[t];return typeof r=="string"&&(r=r.toLowerCase()),typeof a=="string"&&(a=a.toLowerCase()),r<a?e==="desc"?1:-1:r>a?e==="desc"?-1:1:0}),dC=(s,t,e)=>{if(!t)return s;const i=n=>{const o=document.createElement("div");return o.innerHTML=n,n=o.textContent||o.innerText||"",n.toString().toLowerCase().match(t.toLowerCase())};return s.filter(n=>{if(e&&typeof e=="string")return i(n[e]);let o=Object.values(n);return e&&Array.isArray(e)&&(o=Object.keys(n).filter(r=>e.includes(r)).map(r=>n[r])),o.filter(r=>i(r)).length>0})},fp=({rows:s,entries:t,activePage:e})=>{const i=e*t;return s.slice(i,i+Number(t))},cn="datatable",Nt=`data-te-${cn}`,hn=`te.${cn}`,rr=`.${hn}`,uC=`[${Nt}-inner-ref]`,Rl=`[${Nt}-cell-ref]`,pC=`[${Nt}-header-ref]`,fC=`[${Nt}-header-checkbox-ref]`,_C=`[${Nt}-pagination-right-ref]`,gC=`[${Nt}-pagination-left-ref]`,mC=`[${Nt}-pagination-start-ref]`,bC=`[${Nt}-pagination-end-ref]`,vC=`[${Nt}-pagination-nav-ref]`,yC=`[${Nt}-select-ref]`,Nl=`[${Nt}-sort-icon-ref]`,dn=`[${Nt}-row-ref]`,Bl=`[${Nt}-row-checkbox-ref]`,TC=`selectRows${rr}`,_p=`render${rr}`,EC=`rowClick${rr}`,xC=`update${rr}`,CC=`<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 10.5L12 3m0 0l7.5 7.5M12 3v18" />
</svg>`,AC=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M18.75 19.5l-7.5-7.5 7.5-7.5m-6 15L5.25 12l7.5-7.5" />
</svg>`,wC=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M15.75 19.5L8.25 12l7.5-7.5" />
</svg>`,kC=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5" />
</svg>`,SC=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M11.25 4.5l7.5 7.5-7.5 7.5m-6-15l7.5 7.5-7.5 7.5"/>
</svg>`,OC="border-neutral-200 dark:border-neutral-500",DC="border-none",IC="relative float-left -ml-[1.5rem] mr-[6px] mt-[0.15rem] h-[1.125rem] w-[1.125rem] appearance-none rounded-[0.25rem] border-[0.125rem] border-solid border-neutral-300 outline-none before:pointer-events-none before:absolute before:h-[0.875rem] before:w-[0.875rem] before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-[0px_0px_0px_13px_transparent] before:content-[''] checked:border-primary checked:bg-primary checked:before:opacity-[0.16] checked:after:absolute checked:after:-mt-px checked:after:ml-[0.25rem] checked:after:block checked:after:h-[0.8125rem] checked:after:w-[0.375rem] checked:after:rotate-45 checked:after:border-[0.125rem] checked:after:border-l-0 checked:after:border-t-0 checked:after:border-solid checked:after:border-white checked:after:bg-transparent checked:after:content-[''] hover:cursor-pointer hover:before:opacity-[0.04] hover:before:shadow-[0px_0px_0px_13px_rgba(0,0,0,0.6)] focus:shadow-none focus:transition-[border-color_0.2s] focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-[0px_0px_0px_13px_rgba(0,0,0,0.6)] focus:before:transition-[box-shadow_0.2s,transform_0.2s] focus:after:absolute focus:after:z-[1] focus:after:block focus:after:h-[0.875rem] focus:after:w-[0.875rem] focus:after:rounded-[0.125rem] focus:after:content-[''] checked:focus:before:scale-100 checked:focus:before:shadow-[0px_0px_0px_13px_#3b71ca] checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:after:-mt-px checked:focus:after:ml-[0.25rem] checked:focus:after:h-[0.8125rem] checked:focus:after:w-[0.375rem] checked:focus:after:rotate-45 checked:focus:after:rounded-none checked:focus:after:border-[0.125rem] checked:focus:after:border-l-0 checked:focus:after:border-t-0 checked:focus:after:border-solid checked:focus:after:border-white checked:focus:after:bg-transparent dark:border-neutral-600 dark:checked:border-primary dark:checked:bg-primary dark:focus:before:shadow-[0px_0px_0px_13px_rgba(255,255,255,0.4)] dark:checked:focus:before:shadow-[0px_0px_0px_13px_#3b71ca] dark:border-neutral-400",MC="mb-[0.125rem] min-h-[1.5rem] pl-[1.5rem] ml-3 flex items-center",LC="relative float-left -ml-[1.5rem] mr-[6px] mt-[0.15rem] h-[1.125rem] w-[1.125rem] appearance-none rounded-[0.25rem] border-[0.125rem] border-solid border-neutral-300 outline-none before:pointer-events-none before:absolute before:h-[0.875rem] before:w-[0.875rem] before:scale-0 before:rounded-full before:bg-transparent before:opacity-0 before:shadow-[0px_0px_0px_13px_transparent] before:content-[''] checked:border-primary checked:bg-primary checked:before:opacity-[0.16] checked:after:absolute checked:after:-mt-px checked:after:ml-[0.25rem] checked:after:block checked:after:h-[0.8125rem] checked:after:w-[0.375rem] checked:after:rotate-45 checked:after:border-[0.125rem] checked:after:border-l-0 checked:after:border-t-0 checked:after:border-solid checked:after:border-white checked:after:bg-transparent checked:after:content-[''] hover:cursor-pointer hover:before:opacity-[0.04] hover:before:shadow-[0px_0px_0px_13px_rgba(0,0,0,0.6)] focus:shadow-none focus:transition-[border-color_0.2s] focus:before:scale-100 focus:before:opacity-[0.12] focus:before:shadow-[0px_0px_0px_13px_rgba(0,0,0,0.6)] focus:before:transition-[box-shadow_0.2s,transform_0.2s] focus:after:absolute focus:after:z-[1] focus:after:block focus:after:h-[0.875rem] focus:after:w-[0.875rem] focus:after:rounded-[0.125rem] focus:after:content-[''] checked:focus:before:scale-100 checked:focus:before:shadow-[0px_0px_0px_13px_#3b71ca] checked:focus:before:transition-[box-shadow_0.2s,transform_0.2s] checked:focus:after:-mt-px checked:focus:after:ml-[0.25rem] checked:focus:after:h-[0.8125rem] checked:focus:after:w-[0.375rem] checked:focus:after:rotate-45 checked:focus:after:rounded-none checked:focus:after:border-[0.125rem] checked:focus:after:border-l-0 checked:focus:after:border-t-0 checked:focus:after:border-solid checked:focus:after:border-white checked:focus:after:bg-transparent dark:border-neutral-600 dark:checked:border-primary dark:checked:bg-primary dark:focus:before:shadow-[0px_0px_0px_13px_rgba(255,255,255,0.4)] dark:checked:focus:before:shadow-[0px_0px_0px_13px_#3b71ca] dark:border-neutral-400",$C="mb-[0.125rem] min-h-[1.5rem] pl-[1.5rem] ml-3 flex items-center",PC="bg-white dark:bg-neutral-800",RC="py-4 pl-1 text-clip overflow-hidden text-[#212529] dark:text-white",NC="focus:outline-none",BC="sticky top-0 z-30",HC="sticky z-10 bg-inherit",VC="hover:bg-neutral-100 dark:hover:bg-neutral-700",FC="pointer-events-none cursor-none text-neutral-400 dark:text-neutral-300",WC="h-[2px] relative w-full overflow-hidden",zC="text-center text-neutral-500 font-ligh text-sm my-4 dark:text-neutral-400",jC="text-neutral-500 dark:text-neutral-300",YC="text-neutral-500 dark:text-neutral-300",KC="pointer-events-none cursor-none",UC="h-full w-[45%] bg-primary-400 dark:bg-primLine truncated
<p class="${this._classes.message}">
${this._options.popconfirmIconTemplate?`<span class="${this._classes.icon}">${this._options.popconfirmIconTemplate}</span>`:""}
<span class="${this._classes.messageText}">${this._options.message}</span>
</p>
<div class="${this._classes.btnsContainer}">
${this._options.cancelText?`<button type="button" data-te-ripple-init data-te-ripple-color="light" id="popconfirm-button-cancel" aria-label="${this._options.cancelLabel}"
class="${this._classes.btnCancel}">${this._options.cancelText}</button>`:""}
<button type="button" data-te-ripple-init data-te-ripple-color="light" id="popconfirm-button-confirm"
aria-label="${this._options.confirmLabel}"
class="${this._classes.btnConfirm}">${this._options.okText?this._options.okText:"Ok"}</button>
</div>
</div>`}_getConfig(t){return t={...BA,...g.getDataAttributes(this._element),...t},L(Hl,t,NA),t}_getClasses(t){const e=g.getDataClassAttributes(this._element);return t={...VA,...e,...t},L(Hl,t,HA),t}_openPopover(t){this._popper=fi(this._element,t,{placement:this._translatePositionValue(),modifiers:[{name:"offset",options:{offset:[0,5]}}]}),document.body.appendChild(t),setTimeout(()=>{g.addClass(this.popconfirmBody,`${this._classes.fade} opacity-100`),this._isOpen=!0},0)}_openModal(t){const e=$("div");e.setAttribute(Cp,""),g.addClass(e,this._classes.backdrop),document.body.appendChild(e),e.appendChild(t),g.addClass(this.popconfirmBody,"opacity-100"),this._isOpen=!0}_handleCancelButtonClick(){const t=this.container;this._cancelButton=m.findOne("#popconfirm-button-cancel",t),ze.getOrCreateInstance(this._cancelButton,{rippleColor:"light"}),this._cancelButton!==null&&_.on(this._cancelButton,"click",()=>{this.close(),_.trigger(this._element,LA)})}_handleConfirmButtonClick(){const t=this.container;this._confirmButton=m.findOne("#popconfirm-button-confirm",t),ze.getOrCreateInstance(this._confirmButton,{rippleColor:"light"}),_.on(this._confirmButton,"click",()=>{this.close(),_.trigger(this._element,$A)})}_listenToEscapeKey(){_.on(document,"keydown",this._handleEscapeKey.bind(this))}_handleEscapeKey(t){t.keyCode===Ks&&this.close()}_listenToOutsideClick(){_.on(document,"click",this._handleOutsideClick.bind(this))}_handleOutsideClick(t){const e=this.container,i=t.target===e,n=e&&e.contains(t.target),o=t.target===this._element,r=this._element&&this._element.contains(t.target);!i&&!n&&!o&&!r&&this.close()}_translatePositionValue(){switch(this._options.position){case"top left":return"top-end";case"top":return"top";case"top right":return"top-start";case"bottom left":return"bottom-end";case"bottom":return"bottom";case"bottom right":return"bottom-start";case"left":return"left";case"left top":return"left-end";case"left bottom":return"left-start";case"right":return"right";case"right top":return"right-end";case"right bottom":return"right-start";case void 0:return"bottom";default:return"bottom"}}static jQueryInterface(t,e){return this.each(function(){const i=D.getData(this,un),n=typeof t=="object"&&t;if(!(!i&&/dispose/.test(t))){if(!i)return new cr(this,n);if(typeof t=="string"){if(typeof i[t]>"u")throw new TypeError(`No method named "${t}"`);i[t](e)}}})}static getInstance(t){return D.getData(t,un)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,typeof e=="object"?e:null)}}const Fl="lightbox",pn="te.lightbox",_s=`click${`.${pn}`}.data-api`,Ap="[data-te-lightbox-init]",FA=`${Ap} img:not([data-te-lightbox-disabled])`,wp="data-te-lightbox-caption",WA="data-te-lightbox-disabled",ve="data-te-lightbox-active",zA=`<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 12h-15m0 0l6.75 6.75M4.5 12l6.75-6.75" />
</svg>
`,jA=`<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 12h15m0 0l-6.75-6.75M19.5 12l-6.75 6.75" />
</svg>
`,YA=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M3.75 3.75v4.5m0-4.5h4.5m-4.5 0L9 9M3.75 20.25v-4.5m0 4.5h4.5m-4.5 0L9 15M20.25 3.75h-4.5m4.5 0v4.5m0-4.5L15 9m5.25 11.25h-4.5m4.5 0v-4.5m0 4.5L15 15" />
</svg>
`,KA=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M9 9V4.5M9 9H4.5M9 9L3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5l5.25 5.25" />
</svg>
`,UA=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607zM10.5 7.5v6m3-3h-6" />
</svg>
`,XA=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607zM13.5 10.5h-6" />
</svg>
`,GA=`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="3" stroke="currentColor" class="w-4 h-4">
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
</svg>
`,qA={container:"string",zoomLevel:"(number|string)",prevIconTemplate:"string",nextIconTemplate:"string",showFullscreenIconTemplate:"string",hideFullscreenIconTemplate:"string",zoomInIconTemplate:"string",closeIconTemplate:"string",zoomOutIconTemplate:"string",spinnerContent:"string"},ZA={container:"body",zoomLevel:1,prevIconTemplate:zA,nextIconTemplate:jA,showFullscreenIconTemplate:YA,hideFullscreenIconTemplate:KA,zoomInIconTemplate:UA,zoomOutIconTemplate:XA,closeIconTemplate:GA,spinnerContent:"Loading..."},QA={caption:"text-white text-ellipsis overflow-hidden whitespace-nowrap mx-[10px] text-center",captionWrapper:"fixed left-0 bottom-0 w-full h-[50px] flex justify-center items-center",closeBtn:"border-none bg-transparent w-[50px] h-[50px] px-4 text-[#b3b3b3] transition-colors duration-200 ease-in-out hover:text-white focus:text-white motion-reduce:transition-none outline-none",fullscreenBtn:"border-none bg-transparent w-[50px] h-[50px] px-4 text-[#b3b3b3] transition-colors duration-200 ease-in-out hover:text-white focus:text-white motion-reduce:transition-none outline-none",gallery:"invisible fixed left-0 top-0 w-full h-full z-[1100] pointer-events-none opacity-0 bg-[#000000e6] transition-all duration-[400ms] motion-reduce:transition-none",galleryContent:"fixed top-[50px] left-[50px] w-[calc(100%-100px)] h-[calc(100%-100px)]",galleryCounter:"flex justify-center items-center px-[10px] mb-0 h-full text-[#b3b3b3]",img:"absolute left-0 top-0 w-full max-h-full h-auto cursor-pointer pointer-events-auto",imgWrapper:"absolute top-0 left-0 w-full h-full opacity-0 transform scale-[0.25] transition-all duration-[400ms] ease-out pointer-events-none motion-reduce:transition-none motion-reduce:transform-none",leftTools:"float-left h-full",loader:"fixed left-0 top-0 z-[2] w-full h-full text-neutral-50 opacity-1 flex justify-center items-center pointer-events-none transition-opacity duration-[1000ms] motion-reduce:transition-none",nextBtn:"border-none bg-transparent w-full h-[50px] flex justify-center items-center text-[#b3b3b3] transition-colors duration-200 ease-in-out hover:text-white focus:text-white motion-reduce:transition-none outline-none",nextBtnWrapper:"fixed right-0 top-0 w-[50px] h-full flex justify-center items-center transition-opacity duration-[400ms] motion-reduce:transition-none",prevBtn:"border-none bg-transparent w-full h-[50px] flex justify-center items-center text-[#b3b3b3] transition-colors duration-200 ease-in-out hover:text-white focus:text-white motion-reduce:transition-none outline-none",prevBtnWrapper:"fixed left-0 top-0 w-[50px] h-full flex justify-center items-center transition-opacity duration-[400ms] motion-reduce:transition-none",rightTools:"float-right",spinner:"inline-block h-8 w-8 animate-[spinner-grow_0.75s_linear_infinite] rounded-full bg-current align-[-0.125em] motion-reduce:animate-[spinner-grow_1.5s_linear_infinite]",spinnerContent:"!absolute !-m-px !h-px !w-px !overflow-hidden !whitespace-nowrap !border-0 !p-0 ![clip:rect(0,0,0,0)]",toolbar:"absolute top-0 left-0 w-full h-[50px] z-20 transition-opacity duration-[400ms] motion-reduce:transition-none",vertical:"h-full max-h-full w-auto",zoomBtn:"border-none bg-transparent w-[50px] h-[50px] px-4 text-[#b3b3b3] transition-colors duration-200 ease-in-out hover:text-white focus:text-white motion-reduce:transition-none outline-none"},JA={caption:"string",captionWrapper:"string",closeBtn:"string",fullscreenBtn:"string",gallery:"string",galleryContent:"string",galleryCounter:"string",img:"string",imgWrapper:"string",leftTools:"string",loader:"string",nextBtn:"string",nextBtnWrapper:"string",prevBtn:"string",prevBtnWrapper:"string",rightTools:"string",spinner:"string",spinnerContent:"string",toolbar:"string",vertical:"string",zoomBtn:"string"};class gs{constructor(t,e={},i){this._element=t,this._options=e,this._classes=this._getClasses(i),this._getContainer(),this._id=`lightbox-${Math.random().toString(36).substr(2,9)}`,this._activeImg=0,this._images=[],this._zoom=1,this._gallery=null,this._galleryToolbar=null,this._galleryContent=null,this._loader=null,this._imgCounter=null,this._animating=!1,this._fullscreen=!1,this._zoomBtn=null,this._fullscreenBtn=null,this._toolsToggleTimer=0,this._mousedown=!1,this._mousedownPositionX=0,this._mousedownPositionY=0,this._originalPositionX=0,this._originalPositionY=0,this._positionX=0,this._positionY=0,this._zoomTimer=0,this._tapCounter=0,this._tapTime=0,this._rightArrow=null,this._leftArrowWrapper=null,this._rightArrowWrapper=null,this._initiated=!1,this._multitouch=!1,this._touchZoomPosition=[],this._element&&(D.setData(t,pn,this),this.init())}static get NAME(){return Fl}get activeImg(){return this._activeImg}get currentImg(){return m.findOne(`[${ve}]`,this._galleryContent)}get options(){const t={...ZA,...g.getDataAttributes(this._element),...this._options};return L(Fl,t,qA),t}init(){this._initiated||(this._appendTemplate(),this._initiated=!0)}open(t=0){this._getImages(),this._setActiveImg(t),this._ Line truncated
<button type="button" class="${e.pickerIcon}" data-te-datepicker-toggle-button-ref>
${s}
</button>
<button type="button" class="${e.pickerIcon}" data-te-timepicker-toggle-button-ref>
${t}
</button>
`,xk=(s,t)=>`
<button type="button" class="${t.toggleButton}" data-te-date-timepicker-toggle-ref>
${s}
</button>
`,Cr="datetimepicker",yn=`te.${Cr}`,Ql=`.${yn}`,$p="data-te-datepicker-init",Pp="data-te-timepicker-init",Ck="data-te-datepicker-header",Ak="data-te-datepicker-cancel-button-ref",wk="data-te-datepicker-ok-button-ref",Jl="data-te-timepicker-wrapper",Rp="data-te-timepicker-cancel",kk="data-te-timepicker-submit",Sk="data-te-timepicker-clear",Np="data-te-buttons-timepicker",Ok="data-te-date-timepicker-toggle-ref",Dk="data-te-datepicker-toggle-button-ref",Ik="data-te-timepicker-toggle-button-ref",Mk=`[${Pp}]`,Lk=`[${$p}]`,$k=`[${Ok}]`,Pk=`[${Ik}]`,Rk="[data-te-input-notch-ref]",Nk="[data-te-date-timepicker-toggle-ref]",Bk="[data-te-timepicker-elements-wrapper]",Hk="[data-te-timepicker-clock-wrapper]",Vk=`open${Ql}`,Fk=`close${Ql}`,Wk=`datetimeChange${Ql}`,Bp="close.te.datepicker",Hp="input.te.timepicker",bs=$("div"),Vp={inline:!1,toggleButton:!0,container:"body",disabled:!1,disablePast:!1,disableFuture:!1,defaultTime:"",defaultDate:"",timepicker:{},datepicker:{},showFormat:!1,dateTimepickerToggleIconTemplate:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
<path fill-rule="evenodd" d="M6.75 2.25A.75.75 0 017.5 3v1.5h9V3A.75.75 0 0118 3v1.5h.75a3 3 0 013 3v11.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V7.5a3 3 0 013-3H6V3a.75.75 0 01.75-.75zm13.5 9a1.5 1.5 0 00-1.5-1.5H5.25a1.5 1.5 0 00-1.5 1.5v7.5a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5v-7.5z" clip-rule="evenodd" />
</svg>`,datepickerToggleIconTemplate:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
<path fill-rule="evenodd" d="M6.75 2.25A.75.75 0 017.5 3v1.5h9V3A.75.75 0 0118 3v1.5h.75a3 3 0 013 3v11.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V7.5a3 3 0 013-3H6V3a.75.75 0 01.75-.75zm13.5 9a1.5 1.5 0 00-1.5-1.5H5.25a1.5 1.5 0 00-1.5 1.5v7.5a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5v-7.5z" clip-rule="evenodd" />
</svg>`,timepickerToggleIconTemplate:`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" d="M12 6v6h4.5m4.5 0a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>`},zk={inline:"boolean",toggleButton:"boolean",container:"string",disabled:"boolean",disablePast:"boolean",disableFuture:"boolean",defaultTime:"(string|date|number)",defaultDate:"(string|date|number)",timepicker:"object",datepicker:"object",showFormat:"boolean",dateTimepickerToggleIconTemplate:"string",datepickerToggleIconTemplate:"string",timepickerToggleIconTemplate:"string"},jk={toggleButton:"flex items-center justify-content-center [&>svg]:w-5 [&>svg]:h-5 absolute outline-none border-none bg-transparent right-0.5 top-1/2 -translate-x-1/2 -translate-y-1/2 hover:text-primary focus:text-primary dark:hover:text-primary-400 dark:focus:text-primary-400 dark:text-neutral-200",pickerIcon:"[&>svg]:w-6 [&>svg]:h-6 [&>svg]:mx-auto [&>svg]:pointer-events-none w-1/2 px-1.5 py-[1px] rounded-[10px] min-h-[40px] cursor-pointer outline-none border-none text-white hover:bg-primary-600 dark:hover:bg-neutral-600",buttonsContainer:"flex justify-evenly items-end bg-primary dark:bg-zinc-800 dark:data-[te-buttons-timepicker]:bg-zinc-700",timepicker:{},datepicker:{}},Yk={toggleButton:"string",pickerIcon:"string",buttonsContainer:"string",timepicker:"object",datepicker:"object"};class Ar{constructor(t,e,i){this._element=t,this._input=m.findOne("input",this._element),this._options=this._getConfig(e),this._classes=this._getClasses(i),this._timepicker=null,this._datepicker=null,this._dateValue=this._options.defaultDate?this._options.defaultDate:"",this._timeValue=this._options.defaultTime?this._options.defaultTime:"",this._isInvalidTimeFormat=!1,this._format=this._options.datepicker.format?this._options.datepicker.format:"dd/mm/yyyy",this._cancel=!1,this._scrollBar=new Xi,this._element&&D.setData(t,yn,this),this._init()}static get NAME(){return Cr}get toggleButton(){return m.findOne($k,this._element)}get notch(){return m.findOne(Rk,this._element)}dispose(){_.off(this._element,"click",this._openDatePicker),_.off(this._input,"input",this._handleInput),_.off(this._element,"click"),D.removeData(this._element,yn),this._removeTimePicker(),this._removeDatepicker(),this.toggleButton.remove(),this._options=Vp,this._timepicker=null,this._datepicker=null,this._dateValue=null,this._timeValue=null,this._isInvalidTimeFormat=null}update(t={}){const e=this._getConfig({...this._options,...t});this.dispose(),this._options=e,this._init()}_init(){this._addDatepicker(),this._addTimePicker(),this._appendToggleButton(),this._listenToToggleClick(),this._listenToUserInput(),this._disableInput(),this._setInitialDefaultInput(),this._applyFormatPlaceholder(),this._options.disablePast&&this._handleTimepickerDisablePast(),this._options.disableFuture&&this._handleTimepickerDisableFuture()}_removeDatepicker(){const t=this._element.querySelector(Lk);t&&t.remove()}_addDatepicker(){const t=$("div");t.id=this._element.id?`datepicker-${this._element.id}`:Et("datepicker-");const e='<input type="text">';t.innerHTML=e,t.setAttribute($p,""),this._element.appendChild(t),g.addClass(t,"hidden");let i={...this._options.datepicker,container:this._options.container,disablePast:this._options.disablePast,disableFuture:this._options.disableFuture};(this._options.inline||this._options.datepicker.inline)&&(i={...i,inline:!0}),this._datepicker=new dl(t,i,{...this._classes.datepicker}),this._datepicker._input.value=this._dateValue}_removeTimePicker(){const t=this._element.querySelector(Mk);t&&(t.remove(),this._scrollBar.reset())}_addTimePicker(){const t=$("div");t.id=this._element.id?`timepicker-${this._element.id}`:Et("timepicker-");const e='<input type="text">';t.innerHTML=e,t.setAttribute(Pp,""),this._element.appendChild(t),g.addClass(t,"hidden");let i={...this._options.timepicker,container:this._options.container};(this._options.inline||this._options.timepicker.inline)&&(i={timepickerOptions:i,inline:!0}),this._timepicker=new Tl(t,i,{...this._classes.timepicker}),this._timepicker.input.value=this._timeValue}_addIconButtons(){if(g.addClass(bs,this._classes.buttonsContainer),bs.innerHTML=Ek(this._options.datepickerToggleIconTemplate,this._options.timepickerToggleIconTemplate,this._classes),bs.removeAttribute(Np),!(this._options.inline||this._options.datepicker.inline)){if(this._scrollBar.hide(),this._datepicker._isOpen)m.findOne(`[${Ck}]`,document.body).appendChild(bs);else if(this._timepicker._modal&&!this._options.timepicker.inline){const t=m.findOne(Bk,document.body),e=m.findOne(Hk,document.body);bs.setAttribute(Np,""),t.insertBefore(bs,e)}}}_enableOrDisableToggleButton(){this._options.disabled?(this.toggleButton.disabled=!0,g.addClass(this.toggleButton,"pointer-events-none")):(this.toggleButton.disabled=!1,g.removeClass(this.toggleButton,"pointer-events-none"))}_appendToggleButton(){this._options.toggleButton&&(this._element.insertAdjacentHTML("beforeend",xk(this._options.dateTimepickerToggleIconTemplate,this._classes)),this._enableOrDisableToggleButton())}_applyFormatPlaceholder(){this._options.showFormat&&(this._input.placeholder=this._format)}_listenToCancelClick(){cLine truncated
* Chart.js v3.9.1
* https://www.chartjs.org
* (c) 2022 Chart.js Contributors
* Released under the MIT License
*/function Se(){}const CS=function(){let s=0;return function(){return s++}}();function H(s){return s===null||typeof s>"u"}function Q(s){if(Array.isArray&&Array.isArray(s))return!0;const t=Object.prototype.toString.call(s);return t.slice(0,7)==="[object"&&t.slice(-6)==="Array]"}function V(s){return s!==null&&Object.prototype.toString.call(s)==="[object Object]"}const rt=s=>(typeof s=="number"||s instanceof Number)&&isFinite(+s);function Wt(s,t){return rt(s)?s:t}function B(s,t){return typeof s>"u"?t:s}const AS=(s,t)=>typeof s=="string"&&s.endsWith("%")?parseFloat(s)/100:s/t,jp=(s,t)=>typeof s=="string"&&s.endsWith("%")?parseFloat(s)/100*t:+s;function G(s,t,e){if(s&&typeof s.call=="function")return s.apply(e,t)}function U(s,t,e,i){let n,o,r;if(Q(s))if(o=s.length,i)for(n=o-1;n>=0;n--)t.call(e,s[n],n);else for(n=0;n<o;n++)t.call(e,s[n],n);else if(V(s))for(r=Object.keys(s),o=r.length,n=0;n<o;n++)t.call(e,s[r[n]],r[n])}function Or(s,t){let e,i,n,o;if(!s||!t||s.length!==t.length)return!1;for(e=0,i=s.length;e<i;++e)if(n=s[e],o=t[e],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function Dr(s){if(Q(s))return s.map(Dr);if(V(s)){const t=Object.create(null),e=Object.keys(s),i=e.length;let n=0;for(;n<i;++n)t[e[n]]=Dr(s[e[n]]);return t}return s}function Yp(s){return["__proto__","prototype","constructor"].indexOf(s)===-1}function wS(s,t,e,i){if(!Yp(s))return;const n=t[s],o=e[s];V(n)&&V(o)?ye(n,o,i):t[s]=Dr(o)}function ye(s,t,e){const i=Q(t)?t:[t],n=i.length;if(!V(s))return s;e=e||{};const o=e.merger||wS;for(let r=0;r<n;++r){if(t=i[r],!V(t))continue;const a=Object.keys(t);for(let l=0,c=a.length;l<c;++l)o(a[l],s,t,e)}return s}function Cn(s,t){return ye(s,t,{merger:kS})}function kS(s,t,e){if(!Yp(s))return;const i=t[s],n=e[s];V(i)&&V(n)?Cn(i,n):Object.prototype.hasOwnProperty.call(t,s)||(t[s]=Dr(n))}const Kp={"":s=>s,x:s=>s.x,y:s=>s.y};function Qe(s,t){return(Kp[t]||(Kp[t]=SS(t)))(s)}function SS(s){const t=OS(s);return e=>{for(const i of t){if(i==="")break;e=e&&e[i]}return e}}function OS(s){const t=s.split("."),e=[];let i="";for(const n of t)i+=n,i.endsWith("\\")?i=i.slice(0,-1)+".":(e.push(i),i="");return e}function ic(s){return s.charAt(0).toUpperCase()+s.slice(1)}const zt=s=>typeof s<"u",Je=s=>typeof s=="function",Up=(s,t)=>{if(s.size!==t.size)return!1;for(const e of s)if(!t.has(e))return!1;return!0};function DS(s){return s.type==="mouseup"||s.type==="click"||s.type==="contextmenu"}const et=Math.PI,q=2*et,IS=q+et,Ir=Number.POSITIVE_INFINITY,MS=et/180,nt=et/2,An=et/4,Xp=et*2/3,jt=Math.log10,Te=Math.sign;function Gp(s){const t=Math.round(s);s=wn(s,t,s/1e3)?t:s;const e=Math.pow(10,Math.floor(jt(s))),i=s/e;return(i<=1?1:i<=2?2:i<=5?5:10)*e}function LS(s){const t=[],e=Math.sqrt(s);let i;for(i=1;i<e;i++)s%i===0&&(t.push(i),t.push(s/i));return e===(e|0)&&t.push(e),t.sort((n,o)=>n-o).pop(),t}function ys(s){return!isNaN(parseFloat(s))&&isFinite(s)}function wn(s,t,e){return Math.abs(s-t)<e}function $S(s,t){const e=Math.round(s);return e-t<=s&&e+t>=s}function qp(s,t,e){let i,n,o;for(i=0,n=s.length;i<n;i++)o=s[i][e],isNaN(o)||(t.min=Math.min(t.min,o),t.max=Math.max(t.max,o))}function ie(s){return s*(et/180)}function sc(s){return s*(180/et)}function Zp(s){if(!rt(s))return;let t=1,e=0;for(;Math.round(s*t)/t!==s;)t*=10,e++;return e}function Qp(s,t){const e=t.x-s.x,i=t.y-s.y,n=Math.sqrt(e*e+i*i);let o=Math.atan2(i,e);return o<-.5*et&&(o+=q),{angle:o,distance:n}}function nc(s,t){return Math.sqrt(Math.pow(t.x-s.x,2)+Math.pow(t.y-s.y,2))}function PS(s,t){return(s-t+IS)%q-et}function Bt(s){return(s%q+q)%q}function kn(s,t,e,i){const n=Bt(s),o=Bt(t),r=Bt(e),a=Bt(o-n),l=Bt(r-n),c=Bt(n-o),h=Bt(n-r);return n===o||n===r||i&&o===r||a>l&&c<h}function ct(s,t,e){return Math.max(t,Math.min(e,s))}function RS(s){return ct(s,-32768,32767)}function Oe(s,t,e,i=1e-6){return s>=Math.min(t,e)-i&&s<=Math.max(t,e)+i}function oc(s,t,e){e=e||(r=>s[r]<t);let i=s.length-1,n=0,o;for(;i-n>1;)o=n+i>>1,e(o)?n=o:i=o;return{lo:n,hi:i}}const De=(s,t,e,i)=>oc(s,e,i?n=>s[n][t]<=e:n=>s[n][t]<e),NS=(s,t,e)=>oc(s,e,i=>s[i][t]>=e);function BS(s,t,e){let i=0,n=s.length;for(;i<n&&s[i]<t;)i++;for(;n>i&&s[n-1]>e;)n--;return i>0||n<s.length?s.slice(i,n):s}const Jp=["push","pop","shift","splice","unshift"];function HS(s,t){if(s._chartjs){s._chartjs.listeners.push(t);return}Object.defineProperty(s,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[t]}}),Jp.forEach(e=>{const i="_onData"+ic(e),n=s[e];Object.defineProperty(s,e,{configurable:!0,enumerable:!1,value(...o){const r=n.apply(this,o);return s._chartjs.listeners.forEach(a=>{typeof a[i]=="function"&&a[i](...o)}),r}})})}function tf(s,t){const e=s._chartjs;if(!e)return;const i=e.listeners,n=i.indexOf(t);n!==-1&&i.splice(n,1),!(i.length>0)&&(Jp.forEach(o=>{delete s[o]}),delete s._chartjs)}function ef(s){const t=new Set;let e,i;for(e=0,i=s.length;e<i;++e)t.add(s[e]);return t.size===i?s:Array.from(t)}const sf=function(){return typeof window>"u"?function(s){return s()}:window.requestAnimationFrame}();functiLine truncated
* @kurkle/color v0.2.1
* https://github.com/kurkle/color#readme
* (c) 2022 Jukka Kurkela
* Released under the MIT License
*/function On(s){return s+.5|0}const ti=(s,t,e)=>Math.max(Math.min(s,e),t);function Dn(s){return ti(On(s*2.55),0,255)}function ei(s){return ti(On(s*255),0,255)}function Ie(s){return ti(On(s/2.55)/100,0,1)}function cf(s){return ti(On(s*100),0,100)}const Yt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},ac=[..."0123456789ABCDEF"],WS=s=>ac[s&15],zS=s=>ac[(s&240)>>4]+ac[s&15],Lr=s=>(s&240)>>4===(s&15),jS=s=>Lr(s.r)&&Lr(s.g)&&Lr(s.b)&&Lr(s.a);function YS(s){var t=s.length,e;return s[0]==="#"&&(t===4||t===5?e={r:255&Yt[s[1]]*17,g:255&Yt[s[2]]*17,b:255&Yt[s[3]]*17,a:t===5?Yt[s[4]]*17:255}:(t===7||t===9)&&(e={r:Yt[s[1]]<<4|Yt[s[2]],g:Yt[s[3]]<<4|Yt[s[4]],b:Yt[s[5]]<<4|Yt[s[6]],a:t===9?Yt[s[7]]<<4|Yt[s[8]]:255})),e}const KS=(s,t)=>s<255?t(s):"";function US(s){var t=jS(s)?WS:zS;return s?"#"+t(s.r)+t(s.g)+t(s.b)+KS(s.a,t):void 0}const XS=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function hf(s,t,e){const i=t*Math.min(e,1-e),n=(o,r=(o+s/30)%12)=>e-i*Math.max(Math.min(r-3,9-r,1),-1);return[n(0),n(8),n(4)]}function GS(s,t,e){const i=(n,o=(n+s/60)%6)=>e-e*t*Math.max(Math.min(o,4-o,1),0);return[i(5),i(3),i(1)]}function qS(s,t,e){const i=hf(s,1,.5);let n;for(t+e>1&&(n=1/(t+e),t*=n,e*=n),n=0;n<3;n++)i[n]*=1-t-e,i[n]+=t;return i}function ZS(s,t,e,i,n){return s===n?(t-e)/i+(t<e?6:0):t===n?(e-s)/i+2:(s-t)/i+4}function lc(s){const e=s.r/255,i=s.g/255,n=s.b/255,o=Math.max(e,i,n),r=Math.min(e,i,n),a=(o+r)/2;let l,c,h;return o!==r&&(h=o-r,c=a>.5?h/(2-o-r):h/(o+r),l=ZS(e,i,n,h,o),l=l*60+.5),[l|0,c||0,a]}function cc(s,t,e,i){return(Array.isArray(t)?s(t[0],t[1],t[2]):s(t,e,i)).map(ei)}function hc(s,t,e){return cc(hf,s,t,e)}function QS(s,t,e){return cc(qS,s,t,e)}function JS(s,t,e){return cc(GS,s,t,e)}function df(s){return(s%360+360)%360}function tO(s){const t=XS.exec(s);let e=255,i;if(!t)return;t[5]!==i&&(e=t[6]?Dn(+t[5]):ei(+t[5]));const n=df(+t[2]),o=+t[3]/100,r=+t[4]/100;return t[1]==="hwb"?i=QS(n,o,r):t[1]==="hsv"?i=JS(n,o,r):i=hc(n,o,r),{r:i[0],g:i[1],b:i[2],a:e}}function eO(s,t){var e=lc(s);e[0]=df(e[0]+t),e=hc(e),s.r=e[0],s.g=e[1],s.b=e[2]}function iO(s){if(!s)return;const t=lc(s),e=t[0],i=cf(t[1]),n=cf(t[2]);return s.a<255?`hsla(${e}, ${i}%, ${n}%, ${Ie(s.a)})`:`hsl(${e}, ${i}%, ${n}%)`}const uf={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},pf={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function sO(){const s={},t=Object.keys(pf),e=Object.keys(uf);let i,n,o,r,a;for(i=0;i<t.length;i++){for(r=a=t[i],n=0;n<e.length;n++)o=e[n]Line truncated
* Chart.js v3.9.1
* https://www.chartjs.org
* (c) 2022 Chart.js Contributors
* Released under the MIT License
*/class iD{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,n){const o=e.listeners[n],r=e.duration;o.forEach(a=>a({chart:t,initial:e.initial,numSteps:r,currentStep:Math.min(i-e.start,r)}))}_refresh(){this._request||(this._running=!0,this._request=sf.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((i,n)=>{if(!i.running||!i.items.length)return;const o=i.items;let r=o.length-1,a=!1,l;for(;r>=0;--r)l=o[r],l._active?(l._total>i.duration&&(i.duration=l._total),l.tick(t),a=!0):(o[r]=o[o.length-1],o.pop());a&&(n.draw(),this._notify(n,i,t,"progress")),o.length||(i.running=!1,this._notify(n,i,t,"complete"),i.initial=!1),e+=o.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){!e||!e.length||this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce((i,n)=>Math.max(i,n._duration),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!(!e||!e.running||!e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let n=i.length-1;for(;n>=0;--n)i[n].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var Ee=new iD;const Wf="transparent",sD={boolean(s,t,e){return e>.5?t:s},color(s,t,e){const i=bf(s||Wf),n=i.valid&&bf(t||Wf);return n&&n.valid?n.mix(i,e).hexString():t},number(s,t,e){return s+(t-s)*e}};class zf{constructor(t,e,i,n){const o=e[i];n=tt([t.to,n,o,t.from]);const r=tt([t.from,o,n]);this._active=!0,this._fn=t.fn||sD[t.type||typeof r],this._easing=Sn[t.easing]||Sn.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=r,this._to=n,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const n=this._target[this._prop],o=i-this._start,r=this._duration-o;this._start=i,this._duration=Math.floor(Math.max(r,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=tt([t.to,e,n,t.from]),this._from=tt([t.from,n,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,n=this._prop,o=this._from,r=this._loop,a=this._to;let l;if(this._active=o!==a&&(r||e<i),!this._active){this._target[n]=a,this._notify(!0);return}if(e<0){this._target[n]=o;return}l=e/i%2,l=r&&l>1?2-l:l,l=this._easing(Math.min(1,Math.max(0,l))),this._target[n]=this._fn(o,a,l)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,i)=>{t.push({res:e,rej:i})})}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let n=0;n<i.length;n++)i[n][e]()}}const nD=["x","y","borderWidth","radius","tension"],oD=["color","borderColor","backgroundColor"];F.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0});const rD=Object.keys(F.animation);F.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:s=>s!=="onProgress"&&s!=="onComplete"&&s!=="fn"}),F.set("animations",{colors:{type:"color",properties:oD},numbers:{type:"number",properties:nD}}),F.describe("animations",{_fallback:"animation"}),F.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:s=>s|0}}}});class Ec{constructor(t,e){this._chart=t,this._properties=new Map,this.configure(e)}configure(t){if(!V(t))return;const e=this._properties;Object.getOwnPropertyNames(t).forEach(i=>{const n=t[i];if(!V(n))return;const o={};for(const r of rD)o[r]=n[r];(Q(n.properties)&&n.properties||[i]).forEach(r=>{(r===i||!e.has(r))&&e.set(r,o)})})}_animateOptions(t,e){const i=e.options,n=lD(t,i);if(!n)return[];const o=this._createAnimations(n,i);return i.$shared&&aD(t.options.$animations,i).then(()=>{t.options=i},()=>{}),o}_createAnimations(t,e){const i=this._properties,n=[],o=t.$animations||(t.$animations={}),r=Object.keys(e),a=Date.now();let l;for(l=r.length-1;l>=0;--l){const c=r[l];if(c.charAt(0)==="$")continue;if(c==="options"){n.push(...this._animateOptions(t,e));continue}const h=e[c];let d=o[c];const u=i.get(c);if(d)if(u&&d.active()){d.update(u,h,a);continue}else d.cancel();if(!u||!u.duration){t[c]=h;continue}o[c]=d=new zf(u,t,c,h),n.push(d)}return n}update(t,e){if(this._properties.size===0){Object.assign(t,e);return}const i=this._createAnimations(t,e);if(i.length)return Ee.add(this._chart,i),!0}}function aD(s,t){const e=[],i=Object.Line truncated
`)>-1?s.split(`
`):s}function x1(s,t){const{element:e,datasetIndex:i,index:n}=t,o=s.getDatasetMeta(i).controller,{label:r,value:a}=o.getLabelAndValue(n);return{chart:s,label:r,parsed:o.getParsed(n),raw:s.data.datasets[i].data[n],formattedValue:a,dataset:o.getDataset(),dataIndex:n,datasetIndex:i,element:e}}function tg(s,t){const e=s.chart.ctx,{body:i,footer:n,title:o}=s,{boxWidth:r,boxHeight:a}=t,l=lt(t.bodyFont),c=lt(t.titleFont),h=lt(t.footerFont),d=o.length,u=n.length,p=i.length,f=ht(t.padding);let b=f.height,v=0,y=i.reduce((E,C)=>E+C.before.length+C.lines.length+C.after.length,0);if(y+=s.beforeBody.length+s.afterBody.length,d&&(b+=d*c.lineHeight+(d-1)*t.titleSpacing+t.titleMarginBottom),y){const E=t.displayColors?Math.max(a,l.lineHeight):l.lineHeight;b+=p*E+(y-p)*l.lineHeight+(y-1)*t.bodySpacing}u&&(b+=t.footerMarginTop+u*h.lineHeight+(u-1)*t.footerSpacing);let T=0;const x=function(E){v=Math.max(v,e.measureText(E).width+T)};return e.save(),e.font=c.string,U(s.title,x),e.font=l.string,U(s.beforeBody.concat(s.afterBody),x),T=t.displayColors?r+2+t.boxPadding:0,U(i,E=>{U(E.before,x),U(E.lines,x),U(E.after,x)}),T=0,e.font=h.string,U(s.footer,x),e.restore(),v+=f.width,{width:v,height:b}}function C1(s,t){const{y:e,height:i}=t;return e<i/2?"top":e>s.height-i/2?"bottom":"center"}function A1(s,t,e,i){const{x:n,width:o}=i,r=e.caretSize+e.caretPadding;if(s==="left"&&n+o+r>t.width||s==="right"&&n-o-r<0)return!0}function w1(s,t,e,i){const{x:n,width:o}=e,{width:r,chartArea:{left:a,right:l}}=s;let c="center";return i==="center"?c=n<=(a+l)/2?"left":"right":n<=o/2?c="left":n>=r-o/2&&(c="right"),A1(c,s,t,e)&&(c="center"),c}function eg(s,t,e){const i=e.yAlign||t.yAlign||C1(s,e);return{xAlign:e.xAlign||t.xAlign||w1(s,t,e,i),yAlign:i}}function k1(s,t){let{x:e,width:i}=s;return t==="right"?e-=i:t==="center"&&(e-=i/2),e}function S1(s,t,e){let{y:i,height:n}=s;return t==="top"?i+=e:t==="bottom"?i-=n+e:i-=n/2,i}function ig(s,t,e,i){const{caretSize:n,caretPadding:o,cornerRadius:r}=s,{xAlign:a,yAlign:l}=e,c=n+o,{topLeft:h,topRight:d,bottomLeft:u,bottomRight:p}=Di(r);let f=k1(t,a);const b=S1(t,l,c);return l==="center"?a==="left"?f+=c:a==="right"&&(f-=c):a==="left"?f-=Math.max(h,u)+n:a==="right"&&(f+=Math.max(d,p)+n),{x:ct(f,0,i.width-t.width),y:ct(b,0,i.height-t.height)}}function Qr(s,t,e){const i=ht(e.padding);return t==="center"?s.x+s.width/2:t==="right"?s.x+s.width-i.right:s.x+i.left}function sg(s){return xe([],Le(s))}function O1(s,t,e){return ii(s,{tooltip:t,tooltipItems:e,type:"tooltip"})}function ng(s,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?s.override(e):s}class Wc extends Ut{constructor(t){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=t.chart||t._chart,this._chart=this.chart,this.options=t.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this.chart,i=this.options.setContext(this.getContext()),n=i.enabled&&e.options.animation&&i.animations,o=new Ec(this.chart,n);return n._cacheable&&(this._cachedAnimations=Object.freeze(o)),o}getContext(){return this.$context||(this.$context=O1(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:i}=e,n=i.beforeTitle.apply(this,[t]),o=i.title.apply(this,[t]),r=i.afterTitle.apply(this,[t]);let a=[];return a=xe(a,Le(n)),a=xe(a,Le(o)),a=xe(a,Le(r)),a}getBeforeBody(t,e){return sg(e.callbacks.beforeBody.apply(this,[t]))}getBody(t,e){const{callbacks:i}=e,n=[];return U(t,o=>{const r={before:[],lines:[],after:[]},a=ng(i,o);xe(r.before,Le(a.beforeLabel.call(this,o))),xe(r.lines,a.label.call(this,o)),xe(r.after,Le(a.afterLabel.call(this,o))),n.push(r)}),n}getAfterBody(t,e){return sg(e.callbacks.afterBody.apply(this,[t]))}getFooter(t,e){const{callbacks:i}=e,n=i.beforeFooter.apply(this,[t]),o=i.footer.apply(this,[t]),r=i.afterFooter.apply(this,[t]);let a=[];return a=xe(a,Le(n)),a=xe(a,Le(o)),a=xe(a,Le(r)),a}_createItems(t){const e=this._active,i=this.chart.data,n=[],o=[],r=[];let a=[],l,c;for(l=0,c=e.length;l<c;++l)a.push(x1(this.chart,e[l]));return t.filter&&(a=a.filter((h,d,u)=>t.filter(h,d,u,i))),t.itemSort&&(a=a.sort((h,d)=>t.itemSort(h,d,i))),U(a,h=>{const d=ng(t.callbacks,h);n.push(d.labelColor.call(this,h)),o.push(d.labelPointStyle.call(this,h)),r.push(d.labelTextColor.call(this,h))}),this.labelColors=n,this.labelPointStyles=o,this.labelTextColors=r,this.dataPoints=a,a}update(t,e){const i=this.options.setContext(this.getContext()),n=this._active;let o,r=[] Line truncated
* chartjs-plugin-datalabels v2.2.0
* https://chartjs-plugin-datalabels.netlify.app
* (c) 2017-2022 chartjs-plugin-datalabels contributors
* Released under the MIT license
*/var gg=function(){if(typeof window<"u"){if(window.devicePixelRatio)return window.devicePixelRatio;var s=window.screen;if(s)return(s.deviceXDPI||1)/(s.logicalXDPI||1)}return 1}(),Qn={toTextLines:function(s){var t=[],e;for(s=[].concat(s);s.length;)e=s.pop(),typeof e=="string"?t.unshift.apply(t,e.split(`
`)):Array.isArray(e)?s.push.apply(s,e):H(s)||t.unshift(""+e);return t},textSize:function(s,t,e){var i=[].concat(t),n=i.length,o=s.font,r=0,a;for(s.font=e.string,a=0;a<n;++a)r=Math.max(s.measureText(i[a]).width,r);return s.font=o,{height:n*e.lineHeight,width:r}},bound:function(s,t,e){return Math.max(s,Math.min(t,e))},arrayDiff:function(s,t){var e=s.slice(),i=[],n,o,r,a;for(n=0,r=t.length;n<r;++n)a=t[n],o=e.indexOf(a),o===-1?i.push([a,1]):e.splice(o,1);for(n=0,r=e.length;n<r;++n)i.push([e[n],-1]);return i},rasterize:function(s){return Math.round(s*gg)/gg}};function jc(s,t){var e=t.x,i=t.y;if(e===null)return{x:0,y:-1};if(i===null)return{x:1,y:0};var n=s.x-e,o=s.y-i,r=Math.sqrt(n*n+o*o);return{x:r?n/r:0,y:r?o/r:-1}}function q1(s,t,e,i,n){switch(n){case"center":e=i=0;break;case"bottom":e=0,i=1;break;case"right":e=1,i=0;break;case"left":e=-1,i=0;break;case"top":e=0,i=-1;break;case"start":e=-e,i=-i;break;case"end":break;default:n*=Math.PI/180,e=Math.cos(n),i=Math.sin(n);break}return{x:s,y:t,vx:e,vy:i}}var Z1=0,mg=1,bg=2,vg=4,yg=8;function oa(s,t,e){var i=Z1;return s<e.left?i|=mg:s>e.right&&(i|=bg),t<e.top?i|=yg:t>e.bottom&&(i|=vg),i}function Q1(s,t){for(var e=s.x0,i=s.y0,n=s.x1,o=s.y1,r=oa(e,i,t),a=oa(n,o,t),l,c,h;!(!(r|a)||r&a);)l=r||a,l&yg?(c=e+(n-e)*(t.top-i)/(o-i),h=t.top):l&vg?(c=e+(n-e)*(t.bottom-i)/(o-i),h=t.bottom):l&bg?(h=i+(o-i)*(t.right-e)/(n-e),c=t.right):l&mg&&(h=i+(o-i)*(t.left-e)/(n-e),c=t.left),l===r?(e=c,i=h,r=oa(e,i,t)):(n=c,o=h,a=oa(n,o,t));return{x0:e,x1:n,y0:i,y1:o}}function ra(s,t){var e=t.anchor,i=s,n,o;return t.clamp&&(i=Q1(i,t.area)),e==="start"?(n=i.x0,o=i.y0):e==="end"?(n=i.x1,o=i.y1):(n=(i.x0+i.x1)/2,o=(i.y0+i.y1)/2),q1(n,o,s.vx,s.vy,t.align)}var aa={arc:function(s,t){var e=(s.startAngle+s.endAngle)/2,i=Math.cos(e),n=Math.sin(e),o=s.innerRadius,r=s.outerRadius;return ra({x0:s.x+i*o,y0:s.y+n*o,x1:s.x+i*r,y1:s.y+n*r,vx:i,vy:n},t)},point:function(s,t){var e=jc(s,t.origin),i=e.x*s.options.radius,n=e.y*s.options.radius;return ra({x0:s.x-i,y0:s.y-n,x1:s.x+i,y1:s.y+n,vx:e.x,vy:e.y},t)},bar:function(s,t){var e=jc(s,t.origin),i=s.x,n=s.y,o=0,r=0;return s.horizontal?(i=Math.min(s.x,s.base),o=Math.abs(s.base-s.x)):(n=Math.min(s.y,s.base),r=Math.abs(s.base-s.y)),ra({x0:i,y0:n+r,x1:i+o,y1:n,vx:e.x,vy:e.y},t)},fallback:function(s,t){var e=jc(s,t.origin);return ra({x0:s.x,y0:s.y,x1:s.x+(s.width||0),y1:s.y+(s.height||0),vx:e.x,vy:e.y},t)}},$e=Qn.rasterize;function J1(s){var t=s.borderWidth||0,e=s.padding,i=s.size.height,n=s.size.width,o=-n/2,r=-i/2;return{frame:{x:o-e.left-t,y:r-e.top-t,w:n+e.width+t*2,h:i+e.height+t*2},text:{x:o,y:r,w:n,h:i}}}function tM(s,t){var e=t.chart.getDatasetMeta(t.datasetIndex).vScale;if(!e)return null;if(e.xCenter!==void 0&&e.yCenter!==void 0)return{x:e.xCenter,y:e.yCenter};var i=e.getBasePixel();return s.horizontal?{x:i,y:null}:{x:null,y:i}}function eM(s){return s instanceof ws?aa.arc:s instanceof ks?aa.point:s instanceof Ss?aa.bar:aa.fallback}function iM(s,t,e,i,n,o){var r=Math.PI/2;if(o){var a=Math.min(o,n/2,i/2),l=t+a,c=e+a,h=t+i-a,d=e+n-a;s.moveTo(t,c),l<h&&c<d?(s.arc(l,c,a,-Math.PI,-r),s.arc(h,c,a,-r,0),s.arc(h,d,a,0,r),s.arc(l,d,a,r,Math.PI)):l<h?(s.moveTo(l,e),s.arc(h,c,a,-r,r),s.arc(l,c,a,r,Math.PI+r)):c<d?(s.arc(l,c,a,-Math.PI,0),s.arc(l,d,a,0,Math.PI)):s.arc(l,c,a,-Math.PI,Math.PI),s.closePath(),s.moveTo(t,e)}else s.rect(t,e,i,n)}function sM(s,t,e){var i=e.backgroundColor,n=e.borderColor,o=e.borderWidth;!i&&(!n||!o)||(s.beginPath(),iM(s,$e(t.x)+o/2,$e(t.y)+o/2,$e(t.w)-o,$e(t.h)-o,e.borderRadius),s.closePath(),i&&(s.fillStyle=i,s.fill()),n&&o&&(s.strokeStyle=n,s.lineWidth=o,s.lineJoin="miter",s.stroke()))}function nM(s,t,e){var i=e.lineHeight,n=s.w,o=s.x,r=s.y+i/2;return t==="center"?o+=n/2:(t==="end"||t==="right")&&(o+=n),{h:i,w:n,x:o,y:r}}function oM(s,t,e){var i=s.shadowBlur,n=e.stroked,o=$e(e.x),r=$e(e.y),a=$e(e.w);n&&s.strokeText(t,o,r,a),e.filled&&(i&&n&&(s.shadowBlur=0),s.fillText(t,o,r,a),i&&n&&(s.shadowBlur=i))}function rM(s,t,e,i){var n=i.textAlign,o=i.color,r=!!o,a=i.font,l=t.length,c=i.textStrokeColor,h=i.textStrokeWidth,d=c&&h,u;if(!(!l||!r&&!d))for(e=nM(e,n,a),s.font=a.string,s.textAlign=n,s.textBaseline="middle",s.shadowBlur=i.textShadowBlur,s.shadowColor=i.textShadowColor,r&&(s.fillStyle=o),d&&(s.lineJoin="round",s.lineWidth=h,s.strokeStyle=c),u=0,l=t.length;u<l;++u)oM(s,t[u],{stroked:d,filled:r,w:e.w,x:e.x,y:e.y+e.h*u})}var Tg=function(s,t,e,i){var n=this;n._config=s,n._index=i,n._model=null,n._rects=null,n._ctx=t,n._el=e};ye(Tg.prototype,{_modelize:function(s,t,e,i){var n=this,o=n._index,r=lt(tt([e.font,{}],i,o)),a=tt([e.color,F.color],i,o);return{align:tt([e.align,"center"],i,o),anchor:tt([e.anchor,"center"],i,o),area:i.chart.chartArea,backgroundColor:tt([e.backgroundColor,null],i,o),borderColor:tt([e.borderColor,null],i,o),borderRadius:tt([e.borderRadius,0],i,o),borderWidth:tt([e.borderWidth,0],i,o),clamp:tt([e.clamp,!1],i,o),clip:tt([e.clip,!1],i,o),color:a,display:s,font:r,lines:t,offset:tt([e.offset,4],i,o),opacity:tt([e.opacity,1],i,o),orig Line truncated
//# sourceMappingURL=tw-elements.umd.min.js.map
+2 -2
View File
@@ -1,5 +1,5 @@
[module]
[module.hugoVersion]
extended = true
min = "0.87.0 "
max = "0.111.3"
min = "0.87.0"
max = "0.119.0"
+30
View File
@@ -33,3 +33,33 @@ buildFuture = false
[outputs]
home = ["HTML", "RSS", "JSON"]
[related]
threshold = 0
toLower = false
[[related.indices]]
name = "tags"
weight = 100
[[related.indices]]
name = "categories"
weight = 100
[[related.indices]]
name = "series"
weight = 50
[[related.indices]]
name = "authors"
weight = 20
[[related.indices]]
name = "date"
weight = 10
[[related.indices]]
applyFilter = false
name = 'fragmentrefs'
type = 'fragments'
weight = 10
+9 -8
View File
@@ -1,16 +1,17 @@
languageCode = "en"
languageName = "English"
displayName = "EN"
isoCode = "en"
weight = 1
rtl = false
title = "Blowfish"
# logo = "img/logo.png"
# description = "My awesome website"
# copyright = "Copy, _right?_ :thinking_face:"
dateFormat = "2 January 2006"
[params]
displayName = "EN"
isoCode = "en"
rtl = false
dateFormat = "2 January 2006"
# logo = "img/logo.png"
# secondaryLogo = "img/secondary-logo.png"
# description = "My awesome website"
# copyright = "Copy, _right?_ :thinking_face:"
# [author]
# name = "Your name here"
+7 -5
View File
@@ -9,15 +9,16 @@ colorScheme = "blowfish"
defaultAppearance = "light" # valid options: light or dark
autoSwitchAppearance = true
enableSearch = false
enableSearch = true
enableCodeCopy = false
# mainSections = ["section1", "section2"]
# robots = ""
disableImageOptimization = false
disableImageOptimization = true
# defaultBackgroundImage = "IMAGE.jpg" # used as default for background images
# defaultFeaturedImage = "IMAGE.jpg" # used as default for featured images in all articles
# highlightCurrentMenuArea = true
# smartTOC = true
@@ -30,7 +31,7 @@ disableImageOptimization = false
showMenu = true
showCopyright = true
showThemeAttribution = true
showAppearanceSwitcher = false
showAppearanceSwitcher = true
showScrollToTop = true
[homepage]
@@ -65,11 +66,12 @@ disableImageOptimization = false
invertPagination = false
showReadingTime = true
showTableOfContents = false
# showRelatedContent = false
# relatedContentLimit = 3
showTaxonomies = false
showAuthorsBadges = false
showWordCount = true
showSummary = true
# sharingLinks = [ "linkedin", "twitter", "reddit", "pinterest", "facebook", "email"]
# sharingLinks = [ "linkedin", "twitter", "reddit", "pinterest", "facebook", "email", "whatsapp", "telegram"]
[list]
showHero = false
+10
View File
@@ -28,5 +28,15 @@
"icon": "twitter",
"title": "sharing.twitter",
"url": "https://twitter.com/intent/tweet/?url=%s&text=%s"
},
"whatsapp": {
"icon": "whatsapp",
"title": "sharing.whatsapp",
"url": "https://api.whatsapp.com/send?text=%s&resubmit=true&title=%s"
},
"telegram": {
"icon": "telegram",
"title": "sharing.telegram",
"url": "https://t.me/share/url?url=%s&resubmit=true&title=%s"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 MiB

+1 -1
View File
@@ -35,8 +35,8 @@ window.addEventListener("DOMContentLoaded", (event) => {
});
var list_config = [
"CardViewScreenWidth",
"CardViewProse",
"CardViewScreenWidth",
"NormalView"
]
+31 -1
View File
@@ -9,7 +9,7 @@ defaultContentLanguage = "en"
# pluralizeListTitles = "true" # hugo function useful for non-english languages, find out more in https://gohugo.io/getting-started/configuration/#pluralizelisttitles
enableRobotsTXT = true
paginate = 20
paginate = 100
summaryLength = 30
buildDrafts = false
@@ -33,3 +33,33 @@ googleAnalytics = "G-PEDMYR1V0K"
[outputs]
home = ["HTML", "RSS", "JSON"]
[related]
threshold = 0
toLower = false
[[related.indices]]
name = "tags"
weight = 100
[[related.indices]]
name = "categories"
weight = 100
[[related.indices]]
name = "series"
weight = 50
[[related.indices]]
name = "authors"
weight = 20
[[related.indices]]
name = "date"
weight = 10
[[related.indices]]
applyFilter = false
name = 'fragmentrefs'
type = 'fragments'
weight = 10
+11 -8
View File
@@ -1,16 +1,17 @@
languageCode = "en"
languageName = "English"
displayName = "EN"
isoCode = "en"
weight = 1
rtl = false
title = "Blowfish"
logo = "img/blowfish_logo_transparent.png"
description = "A powerful, lightweight theme for Hugo built with Tailwind CSS."
# copyright = "Copy, _right?_ :thinking_face:"
dateFormat = "2 January 2006"
[params]
displayName = "EN"
isoCode = "en"
rtl = false
dateFormat = "2 January 2006"
logo = "img/blowfish_logo_transparent.png"
# secondaryLogo = "PATH"
description = "A powerful, lightweight theme for Hugo built with Tailwind CSS."
# copyright = "Copy, _right?_ :thinking_face:"
[author]
name = "Blowfish"
@@ -22,3 +23,5 @@ dateFormat = "2 January 2006"
{ mastodon = "https://masto.ai/@blowfish" },
{ github = "https://github.com/nunocoracao/blowfish" },
]
+22 -18
View File
@@ -16,19 +16,17 @@
weight = 10
[[main]]
name = "Examples"
weight = 20
[[main]]
name = "Recipes"
parent = "Examples"
pageRef = "guides"
weight = 10
name = "Shortcodes"
pageRef = "docs/shortcodes"
weight = 15
[[main]]
name = "Samples"
parent = "Examples"
pageRef = "samples"
weight = 16
[[main]]
name = "Examples"
weight = 20
[[main]]
@@ -38,14 +36,20 @@
weight = 30
[[main]]
name = "Users"
pageRef = "users"
name = "Recipes"
parent = "Examples"
pageRef = "guides"
weight = 40
[[main]]
name = "Merch"
url = "http://tee.pub/lic/qwSlWVBL5zc"
weight = 50
name = "Users"
pageRef = "users"
weight = 90
#[[main]]
# name = "Merch"
# url = "http://tee.pub/lic/qwSlWVBL5zc"
# weight = 100
#[[main]]
# name = "Test"
@@ -56,19 +60,19 @@
identifier = "twitter"
pre = "twitter"
url = "https://twitter.com/burufugu"
weight = 60
weight = 200
[[main]]
identifier = "mastodon"
pre = "mastodon"
url = "https://masto.ai/@blowfish"
weight = 70
weight = 300
[[main]]
identifier = "github"
pre = "github"
url = "https://github.com/nunocoracao/blowfish"
weight = 80
weight = 400
# -- Footer Menu --
@@ -83,4 +87,4 @@
[[footer]]
name = "Authors"
pageRef = "authors"
weight = 20
weight = 20
+7 -6
View File
@@ -17,11 +17,12 @@ mainSections = ["docs"]
disableImageOptimization = false
defaultBackgroundImage = "/img/bg.jpg"
defaultBackgroundImage = "/img/ocean.jpg"
defaultFeaturedImage = "/img/ocean.jpg"
highlightCurrentMenuArea = true
smartTOC = true
smartTOCHideUnfocusedChildren = true
smartTOCHideUnfocusedChildren = false
[header]
layout = "fixed" # valid options: basic, fixed, fixed-fill, fixed-fill-blur
@@ -37,7 +38,7 @@ smartTOCHideUnfocusedChildren = true
layout = "custom" # valid options: page, profile, hero, card, background, custom
# homepageImage = "/img/iceland.jpg" # used in: hero, and card
showRecent = false
showRecentItems = 10
showRecentItems = 12
showMoreLink = true
showMoreLinkDest = "docs"
cardView = false
@@ -64,11 +65,12 @@ smartTOCHideUnfocusedChildren = true
invertPagination = false
showReadingTime = true
showTableOfContents = true
showRelatedContent = true
relatedContentLimit = 6
showTaxonomies = true
showAuthorsBadges = true
showWordCount = false
showSummary = true
sharingLinks = [ "linkedin", "twitter", "reddit", "pinterest", "facebook", "email"]
sharingLinks = [ "linkedin", "twitter", "reddit", "whatsapp", "telegram", "pinterest", "facebook", "email"]
[list]
showHero = true
@@ -110,7 +112,6 @@ smartTOCHideUnfocusedChildren = true
cardView = true
cardViewScreenWidth = false
[firebase]
apiKey = "AIzaSyB5tqlqDky77Vb4Tc4apiHV4hRZI18KGiY"
authDomain = "blowfish-21fff.firebaseapp.com"
BIN
View File
Binary file not shown.
Binary file not shown.
+72 -49
View File
@@ -57,6 +57,8 @@ The theme currently supports the following languages by default:
| Language | Code |
| ------------------------------ | ------- |
| 🇦🇪 Arabic | `ar` |
| 🇧🇬 Bulgarian | `bg` |
| 🇧🇩 Bengali | `bn` |
| 🇨🇿 Czech | `cs` |
| 🇩🇪 German | `de` |
@@ -70,6 +72,7 @@ The theme currently supports the following languages by default:
| 🇮🇩 Indonesian | `id` |
| 🇮🇹 Italian | `it` |
| 🇯🇵 Japanese | `ja` |
| 🇰🇷 Korean | `ko` |
| 🇵🇱 Polish | `pl` |
| 🇧🇷 Portuguese (Brazil) | `pt-br` |
| 🇵🇹 Portuguese (Portugal) | `pt-pt` |
@@ -94,24 +97,43 @@ The default file can be used as a template to create additional languages, or re
**Note:** Ensure the `defaultContentLanguage` parameter in the [site configuration](#site-configuration) matches the language code in your language config filename.
{{< /alert >}}
#### Global
<!-- prettier-ignore-start -->
| Name | Default | Description |
| ----------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `languageCode` | `"en"` | The Hugo language code for this file. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-au`) and should match the language code in the filename. Hugo expects this value to always be in lowercase. For proper HTML compliance, set the `isoCode` parameter which is case-sensitive. |
| `languageName` | `"English"` | The name of the language. |
| `displayName` | `"EN"` | The name used when the language appears on the website. |
| `isoCode` | `"en"` | The ISO language code for HTML metadata purposes. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-AU`). |
| `weight` | `1` | The weight determines the order of languages when building multilingual sites. |
| `rtl` | `false` | Whether or not this is a RTL language. Set to `true` to reflow content from right-to-left. Blowfish fully supports using RTL and LTR languages at the same time and will dynamically adjust to both. |
| `dateFormat` | `"2 January 2006"` | How dates are formatted in this language. Refer to the [Hugo docs](https://gohugo.io/functions/format/#gos-layout-string) for acceptable formats. |
| `title` | `"Blowfish"` | The title of the website. This will be displayed in the site header and footer. |
| `description` | _Not set_ | The website description. This will be used in the site metadata. |
| `copyright` | _Not set_ | A Markdown string for the site footer copyright message can include the placeholder { year } to dynamically insert the current year. If none is provided, Blowfish will automatically generate a copyright string using the site `title`. |
| `author.name` | _Not set_ | The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used. |
| `author.image` | _Not set_ | Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's `assets/` folder. |
| `author.headline` | _Not set_ | A Markdown string containing the author's headline. It will be displayed on the profile homepage under the author's name. |
| `author.bio` | _Not set_ | A Markdown string containing the author's bio. It will be displayed in article footers. |
| `author.links` | _Not set_ | The links to display alongside the author's details. The config file contains example links which can simply be uncommented to enable. The order that the links are displayed is determined by the order they appear in the array. Custom links can be added by providing corresponding SVG icon assets in `assets/icons/`. |
| Name | Default | Description |
| -------------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `languageCode` | `"en"` | The Hugo language code for this file. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-au`) and should match the language code in the filename. Hugo expects this value to always be in lowercase. For proper HTML compliance, set the `isoCode` parameter which is case-sensitive. |
| `languageName` | `"English"` | The name of the language. |
| `weight` | `1` | The weight determines the order of languages when building multilingual sites. |
| `title` | `"Blowfish"` | The title of the website. This will be displayed in the site header and footer. |
<!-- prettier-ignore-end -->
#### Params
<!-- prettier-ignore-start -->
| Name | Default | Description |
| ---------------------- | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `params.displayName` | `"EN"` | The name used when the language appears on the website. |
| `params.isoCode` | `"en"` | The ISO language code for HTML metadata purposes. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-AU`). |
| `params.rtl` | `false` | Whether or not this is a RTL language. Set to `true` to reflow content from right-to-left. Blowfish fully supports using RTL and LTR languages at the same time and will dynamically adjust to both. |
| `params.dateFormat` | `"2 January 2006"` | How dates are formatted in this language. Refer to the [Hugo docs](https://gohugo.io/functions/format/#gos-layout-string) for acceptable formats. |
| `params.logo` | _Not set_ | The relative path to the site logo file within the `assets/` folder. The logo file should be provided at 2x resolution and supports any image dimensions. |
| `params.secondaryLogo` | _Not set_ | The relative path to the secondary site logo file within the `assets/` folder. The logo file should be provided at 2x resolution and supports any image dimensions. This should have an inverted/contrasting colour scheme to `logo`. If set, this logo will be shown when users toggle from the `defaultAppearance` mode. |
| `params.description` | _Not set_ | The website description. This will be used in the site metadata. |
| `params.copyright` | _Not set_ | A Markdown string for the site footer copyright message can include the placeholder { year } to dynamically insert the current year. If none is provided, Blowfish will automatically generate a copyright string using the site `title`. |
<!-- prettier-ignore-end -->
#### Author
| Name | Default | Description |
| ----------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `author.name` | _Not set_ | The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used. |
| `author.image` | _Not set_ | Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's `assets/` folder. |
| `author.headline` | _Not set_ | A Markdown string containing the author's headline. It will be displayed on the profile homepage under the author's name. |
| `author.bio` | _Not set_ | A Markdown string containing the author's bio. It will be displayed in article footers. |
| `author.links` | _Not set_ | The links to display alongside the author's details. The config file contains example links which can simply be uncommented to enable. The order that the links are displayed is determined by the order they appear in the array. Custom links can be added by providing corresponding SVG icon assets in `assets/icons/`. |
<!-- prettier-ignore-end -->
### Menus
@@ -139,7 +161,6 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `autoSwitchAppearance` | `true` | Whether the theme appearance automatically switches based upon the visitor's operating system preference. Set to `false` to force the site to always use the `defaultAppearance`. |
| `enableSearch` | `false` | Whether site search is enabled. Set to `true` to enable search functionality. Note that the search feature depends on the `outputs.home` setting in the [site configuration](#site-configuration) being set correctly. |
| `enableCodeCopy` | `false` | Whether copy-to-clipboard buttons are enabled for `<code>` blocks. The `highlight.noClasses` parameter must be set to `false` for code copy to function correctly. Read more about [other configuration files](#other-configuration-files) below. |
| `logo` | _Not set_ | The relative path to the site logo file within the `assets/` folder. The logo file should be provided at 2x resolution and supports any image dimensions. |
| `mainSections` | _Not set_ | The sections that should be displayed in the recent articles list. If not provided the section with the greatest number of articles is used. |
| `showViews` | _Not set_ | Whether or not articles and list views are displayed. This requires firebase integrations to be enabled, look below. |
| `showLikes` | _Not set_ | Whether or not articles and list likes are displayed. This requires firebase integrations to be enabled, look below. |
@@ -147,14 +168,15 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site. |
| `defaultBackgroundImage` | _Not set_ | Default background image for both `background` homepage layout and `background` hero style |
| `defaultBackgrouclearndImage` | _Not set_ | Marks menu entries in the main manu when selected |
| `defaultFeaturedImage` | _Not set_ | Default background image for all `featured` images across articles, will be overriden by a local `featured` image. |
| `highlightCurrentMenuArea` | _Not set_ | Marks menu entries in the main manu when selected |
| `smartTOC` | _Not set_ | Activate smart Table of Contents, items in view will be highlighted. |
| `smartTOCHideUnfocusedChildren` | _Not set_ | When smart Table of Contents is turned on, this will hide deeper levels of the table when they are not in focus. |
### Header
| Name | Default | Description |
| --------------- | --------- | --------------------------------------------------------------------------------- |
| Name | Default | Description |
| --------------- | --------- | ------------------------------------------------------------------------------------------------------------------- |
| `header.layout` | `"basic"` | Defines the header for the entire site, supported values are `basic`, `fixed`, `fixed-fill`, and `fixed-fill-blur`. |
### Footer
@@ -180,34 +202,35 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `homepage.layoutBackgroundBlur` | `false` | Makes the background image in the homepage layout blur with the scroll |
### Article
| Name | Default | Description |
| ------------------------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `article.showDate` | `true` | Whether or not article dates are displayed. |
| `article.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showDateUpdated` | `false` | Whether or not the dates articles were updated are displayed. |
| `article.showAuthor` | `true` | Whether or not the author box is displayed in the article footer. |
| `article.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each article page. |
| `article.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `article.layoutBackgroundBlur` | `true` | Makes the background image in the background article heroStyle blur with the scroll |
| `article.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
| `article.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the article header. |
| `article.showDraftLabel` | `true` | Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`. |
| `article.showEdit` | `false` | Whether or not the link to edit the article content should be displayed. |
| `article.editURL` | _Not set_ | When `article.showEdit` is active, the URL for the edit link. |
| `article.editAppendPath` | `true` | When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`. |
| `article.seriesOpened` | `false` | Whether or not the series module will be displayed open by default or not. |
| `article.showHeadingAnchors` | `true` | Whether or not heading anchor links are displayed alongside headings within articles. |
| `article.showPagination` | `true` | Whether or not the next/previous article links are displayed in the article footer. |
| `article.invertPagination` | `false` | Whether or not to flip the direction of the next/previous article links. |
| `article.showReadingTime` | `true` | Whether or not article reading times are displayed. |
| `article.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. |
| `article.showTaxonomies` | `false` | Whether or not the taxonomies related to this article are displayed. |
| `article.showAuthorsBadges` | `false` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. |
| `article.showWordCount` | `false` | Whether or not article word counts are displayed. |
| `article.showComments` | `false` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. |
| `article.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration). |
| `article.sharingLinks` | _Not set_ | Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed. |
| Name | Default | Description |
| ------------------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `article.showDate` | `true` | Whether or not article dates are displayed. |
| `article.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showDateUpdated` | `false` | Whether or not the dates articles were updated are displayed. |
| `article.showAuthor` | `true` | Whether or not the author box is displayed in the article footer. |
| `article.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each article page. |
| `article.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `article.layoutBackgroundBlur` | `true` | Makes the background image in the background article heroStyle blur with the scroll |
| `article.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
| `article.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the article header. |
| `article.showDraftLabel` | `true` | Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`. |
| `article.showEdit` | `false` | Whether or not the link to edit the article content should be displayed. |
| `article.editURL` | _Not set_ | When `article.showEdit` is active, the URL for the edit link. |
| `article.editAppendPath` | `true` | When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`. |
| `article.seriesOpened` | `false` | Whether or not the series module will be displayed open by default or not. |
| `article.showHeadingAnchors` | `true` | Whether or not heading anchor links are displayed alongside headings within articles. |
| `article.showPagination` | `true` | Whether or not the next/previous article links are displayed in the article footer. |
| `article.invertPagination` | `false` | Whether or not to flip the direction of the next/previous article links. |
| `article.showReadingTime` | `true` | Whether or not article reading times are displayed. |
| `article.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. |
| `article.showRelatedContent` | `false` | Display related content for each post. Might required additional configuration to your `config.toml`. Please check the theme `config.toml` if you want to enable this feature and copy all the relevant *related* entries. Also check [Hugo's docs](https://gohugo.io/content-management/related/) on related content. |
| `article.relatedContentLimit` | `3` | Limit of related articles to display if ` showRelatedContent` is turned on. |
| `article.showTaxonomies` | `false` | Whether or not the taxonomies related to this article are displayed. |
| `article.showAuthorsBadges` | `false` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. |
| `article.showWordCount` | `false` | Whether or not article word counts are displayed. |
| `article.showComments` | `false` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. |
| `article.sharingLinks` | _Not set_ | Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed. Available values are: "linkedin", "twitter", "reddit", "pinterest", "facebook", "email", "whatsapp", and "telegram" |
### List
@@ -197,7 +197,7 @@ Both menus are completely optional and can be commented out if not required. Use
### Nested menus
The theme also supports nested menus. In order to use them you just need to define a parent entry in `menu.toml` and its sub-menus using the `parent` parameter to reference the parent. All properties can be used for sub-menus. Note that `pageRef` and `url` will be ignored for the parent entry. Nested menus is only available in the main menu not for the footer.
The theme also supports nested menus. In order to use them you just need to define a parent entry in `menu.toml` and its sub-menus using the `parent` parameter to reference the parent. All properties can be used for sub-menus. `pageRef` and `url` can also be used in the parent entry. Nested menus are only available in the main menu not for the footer.
```toml
# config/_default/menus.toml
@@ -228,7 +228,8 @@ The theme also supports nested menus. In order to use them you just need to defi
### Sub-Navigation menu
Additionally, you can also configure a sub-navigation menu. Just define new menu entries as `subnavigation` in `menu.toml`. This will render a second line with caregories below the main header menu.
Additionally, you can also configure a sub-navigation menu. Just define new menu entries as `subnavigation` in `menus.toml`.
This will render a second line with sub-categories below the main header menu.
```toml
# config/_default/menus.toml
@@ -244,7 +245,7 @@ Additionally, you can also configure a sub-navigation menu. Just define new menu
weight = 20
```
The default `name` is the `pageRef` title cased.
## Thumbnails & Backgrounds
@@ -4,7 +4,7 @@ date: 2020-08-07
draft: false
description: "Learn how to deploy a Blowfish site."
slug: "hosting-deployment"
tags: ["hosting", "deployment", "docs", "github", "netlify", "render"]
tags: ["docs", "hosting", "deployment", "github", "netlify", "render"]
series: ["Documentation"]
series_order: 14
---
+50 -1
View File
@@ -204,6 +204,7 @@ The `figure` shortcode accepts six parameters:
| `caption` | Markdown for the image caption, which will be displayed below the image. |
| `class` | Additional CSS classes to apply to the image. |
| `href` | URL that the image should be linked to. |
| `nozoom` | `nozoom=true` disables the image "zoom" functionality. This is most useful in combination with a `href` link. |
| `default` | Special parameter to revert to default Hugo `figure` behaviour. Simply provide `default=true` and then use normal [Hugo shortcode syntax](https://gohugo.io/content-management/shortcodes/#figure). |
<!-- prettier-ignore-end -->
@@ -296,7 +297,7 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
<!-- prettier-ignore-start -->
| Parameter | Description |
| --------- | ----------------------------------------------------- |
|-----------|-------------------------------------------------------|
| `repo` | [String] github repo in the format of `username/repo` |
<!-- prettier-ignore-end -->
@@ -310,6 +311,30 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
<br/><br/><br/>
## GitLab Card
`gitlab` allows you to quickly link a GitLab Project (GitLab's jargon for repo).
It displays realtime stats about it, such as the number of stars and forks it has.
Unlike `github` it can't display the main programming language of a project.
Finaly custom GitLab instace URL can be provided, as long as the `api/v4/projects/` endpoint is available, making this shortcode compatible with most self-hosted / entreprise deployments.
<!-- prettier-ignore-start -->
| Parameter | Description |
|-------------|------------------------------------------------------------------------|
| `projectID` | [String] gitlab numeric ProjectID |
| `baseURL` | [String] optional gitlab instace URL, default is `https://gitlab.com/` |
<!-- prettier-ignore-end -->
**Example 1:**
```md
{{</* gitlab projectID="278964" */>}}
```
{{< gitlab projectID="278964" >}}
<br/><br/><br/>
## Icon
`icon` outputs an SVG icon and takes the icon name as its only parameter. The icon is scaled to match the current text size.
@@ -406,6 +431,30 @@ The `where` and `value` values are used in the following query `where .Site.Regu
<br/><br/><br/>
## LTR/RTL
`ltr` and `rtl` allows you to mix your contents. Many RTL language users want to include parts of the content in LTR. Using this shortcode will let you do so, and by leveraging `%` as the outer-most dilemeter in the shortcode [Hugo shortcodes](https://gohugo.io/content-management/shortcodes/#shortcodes-with-markdown), any markdown inside will be rendered normally.
**Example:**
```md
- This is an markdown list.
- Its per default a LTR direction
{{%/* rtl */%}}
- هذه القائمة باللغة العربية
- من اليمين الى اليسار
{{%/* /rtl */%}}
```
- This is an markdown list.
- Its per default a LTR direction
{{% rtl %}}
- هذه القائمة باللغة العربية
- من اليمين الى اليسار
{{% /rtl %}}
<br/><br/><br/>
## Mermaid
`mermaid` allows you to draw detailed diagrams and visualisations using text. It uses Mermaid under the hood and supports a wide variety of diagrams, charts and other output formats.
+4 -4
View File
@@ -11,7 +11,7 @@ series_order: 6
## Thumbnails
Blowfish was enhanced in order to make it easy to add visual support to your posts. To do so, you just need to place an image file (almost all formats are supported bue we recommend `.png` or `.jpg`) that starts with `feature*` inside your article main directory as shown in the example below.
Blowfish was enhanced in order to make it easy to add visual support to your posts. To do so, you just need to place an image file (almost all formats are supported but we recommend `.png` or `.jpg`) that starts with `feature*` inside your article's main directory, as shown in the example below.
```shell
content
@@ -22,7 +22,7 @@ content
This will tell Blowfish that this article has a feature image that can be used both as a thumbnail across your website as well as for <a target="_blank" href="https://oembed.com/">oEmbed</a> cards across social platforms.
## Folder Strucutre
## Folder Structure
If you are using single `.md` files for your articles and have a file structure similar to this:
@@ -38,8 +38,8 @@ content
└── awesome_article
└── featured.png
```
The you just need to add an image like explain earlier. If you want to see a sample of this you can consult [this sample]({{< ref "thumbnail_sample" >}}).
Then you just need to add an image like explained earlier. If you want to see a sample of this, you can consult [this sample]({{< ref "thumbnail_sample" >}}).
## Hero Images
Thumbnails will be used by default as hero images withing each article. Use the global `article.showHero` or the front-matter parameter `showHero` to control this feature across the entire site or for each specific post. If you want to override the style of the hero image you can create a file called `hero.html` in `./layouts/partials/` that will override the original partial from the theme.
Thumbnails will be used by default as hero images within each article. Use the global `article.showHero` or the front-matter parameter `showHero` to control this feature across the entire site or for each specific post. If you want to override the style of the hero image, you can create a file called `hero.html` in `./layouts/partials/` that will override the original partial from the theme.
+5
View File
@@ -0,0 +1,5 @@
---
title: "Blowfish Tutorial"
date: 2023-10-02
externalUrl: "hhttps://blowfish-tutorial.web.app/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

@@ -0,0 +1,5 @@
---
title: "Blowfish Tutorial - Repo"
date: 2023-10-01
externalUrl: "https://github.com/nunocoracao/blowfish-tutorial"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>defaultPathExtensions</key>
<string>md</string>
<key>enforceFencedCodeBlocks</key>
<false/>
<key>sheetFormat</key>
<string>foreign</string>
<key>useInlineLinks</key>
<true/>
</dict>
</plist>
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 850 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 KiB

@@ -0,0 +1,410 @@
---
title: "Build your homepage using Blowfish and Hugo"
summary: "Just one year ago, I created Blowfish, a Hugo theme crafted to build my unique vision for my personal homepage. I also decided to make it an open-source project. Fast-forward to today, and Blowfish has transformed into a thriving open-source project with over 600 stars on GitHub and a user base of hundreds. In this tutorial, I’ll show you how to get started and have your website running in a couple of minutes."
description: "Just one year ago, I created Blowfish, a Hugo theme crafted to build my unique vision for my personal homepage. I also decided to make it an open-source project. Fast-forward to today, and Blowfish has transformed into a thriving open-source project with over 600 stars on GitHub and a user base of hundreds. In this tutorial, I’ll show you how to get started and have your website running in a couple of minutes."
categories: ["Open-Source", "Blowfish"]
tags: ["tutorial", "blowfish", "hugo"]
externalUrl: "https://nunocoracao.com/posts/202310-blowfish-tutorial/"
date: 2023-10-04
draft: false
showauthor: false
authors:
- nunocoracao
---
Just one year ago, I created[Blowfish](https://blowfish.page/), a [Hugo](https://gohugo.io/) theme crafted to build my unique vision for my personal homepage. I also decided to make it an open-source project. Fast-forward to today, and Blowfish has transformed into a thriving open-source project with over 600 stars on GitHub and a user base of hundreds. In this tutorial, I’ll show you how to get started and have your website running in a couple of minutes.
{{< github repo="nunocoracao/blowfish" >}}
## TL;DR
The goal of this guide is to walk a newcomer to Hugo on how to install, manage, and publish your own website. The final version of the code is available in this [repo](https://github.com/nunocoracao/blowfish-tutorial/tree/main) - for those that would like to jump to the end.
![Tutorial example](img/01.png)
The visual style is just one of the many possibilities available in Blowfish. Users are encouraged to check the [documentation page](https://blowfish.page/) and learn how to customize the theme to their needs. Additionally, there are already [great examples](https://blowfish.page/users/) of the theme from other users available for inspiration. Blowfish also offers several extra features in the form of `shortcodes` available out of the box in the theme - check them out [here](https://blowfish.page/docs/shortcodes/) and get inspired.
## Setup your environment
Let’s begin by installing all the tools you need. This guide will cover the steps for Mac so these instructions might not apply to your hardware and OS. If you are on Windows or Linux, please consult the guides on how to [install Hugo](https://gohugo.io/installation/), and [GitHub’s CLI](https://cli.github.com/) for your OS.
Anyway, if you are using MacOS let’s install `brew` - a package manager for mac - as that will help installing and managing the other tools.
```bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
Once `brew` is installed let’s install Git, Hugo and GitHub’s CLI.
```bash
brew install git
brew install hugo
brew install gh
```
Create a folder for your code and open a terminal session into it (I chose _blowfish-tutorial_ in the commands below, feel free to call the folder whatever you want).
```bash
mkdir blowfish-tutorial
cd blowfish-tutorial
```
Once inside the folder, the next step is to initialize your local `git` repo.
```bash
git init -b main
```
Now, let’s create and sync the local repo to a GitHub repo so that your code is stored remotely.
```bash
gh auth login
gh repo create
git push --set-upstream origin main
```
Check the image below for the options I selected for this guide, again feel free to change names and description to your use-case.
![gh repo create example](img/ghcreate.png)
Finally, create a **.gitignore** file which allows you to exclude certain files from your repo automatically. I would start with something like the example below.
```bash
#others
node_modules
.hugo_build.lock
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
# Hugo
public
```
The last step is to save all the changes to the repo.
```bash
git add .
git commit -m “initial commit”
git push
```
## Create site and configure it
With all the tools ready, creating and configuring your site will be easy. Still within the folder you created in the last section, let’s create an empty Hugo website (_with no theme_).
```bash
hugo new site --force .
```
Once the scaffolding finishes, try the command below to run your page. Open a browser on _[https://localhost:1313](https://localhost:1313)_ to see your site…
```bash
hugo server
```
Ups… Page not found – right?
This was expected, even though you created a website, Hugo doesn’t give any default experience – aka your site doesn’t have any page to show.
Next step, let's install Blowfish using `git submodules` which will make it easier to manage and upgrade to new versions in the future.
```bash
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
Next, create the following folder structure at the root of your code directory - `config/_default/`. Now you will need to download [these files](https://minhaskamal.github.io/DownGit/#/home?url=https:%2F%2Fgithub.com%2Fnunocoracao%2Fblowfish%2Ftree%2Fmain%2Fconfig%2F%5C_default) and place them in _\_default_ folder you just created. The final structure should look something like this.
```md
config/_default/
├─ config.toml
├─ languages.en.toml
├─ markup.toml
├─ menus.en.toml
└─ params.toml
`
```
Open the **config.toml** and uncomment the line **theme = "blowfish”** and you are ready to go. Try the running the site again and check the result at _[https://localhost:1313](https://localhost:1313)_
```bash
hugo server
```
You should see something like the image below. Not much yet as we didn’t add any content, but the main skeleton for Blowfish is already in place - just requires configuration.
![blowfish empty site](img/blowfishempty.png)
Now let’s configure the theme.
{{< alert d>}}
**FYI** This guide will not cover in detail what each parameter available in Blowfish does – for everything available and how to use it, check [Blowfish documentation](https://blowfish.page/docs/configuration/#theme-parameters) for every option in every file.
{{< /alert >}}
### menus.en.toml
This file defines your menu structure, for the top banner and the footer. For this guide, let’s create two menu sections: one for _Posts_ and one for _Tags_.
- **Posts** - will display the full list of entries
- **Tags** - automatically generated based on tags placed on each article
To achieve this, make sure the following entries exist in the **menus.en.toml** file. Once the changes are done, you should see the menus appearing by re-running **hugo server**.
```toml
[[main]]
name = "Posts"
pageRef = "posts"
weight = 10
[[main]]
name = "Tags"
pageRef = "tags"
weight = 30
```
### languages.en.toml
This file will configure your main details as the author of the website. Change the section below to reflect your details.
```bash
[author]
name = "Your name here"
image = "profile.jpg"
headline = "I'm only human"
bio = "A little bit about you" # appears in author card for each article
```
The images for the website should be placed in the _assets_ folder. For this step, please add a profile picture to that folder named _profile.jpg_ or change the configuration above to the filename you chose. If you don’t have a profile image available, you can use the one below for the tutorial.
![profile](img/profile.jpg "assets/profile.jpg")
The last step is configuring your links – social media, GitHub, etc. The file includes all the supported options, but they are commented. You are welcome to uncomment everything and delete the ones you would rather not use. Replace the right links on the ones you decided to keep. You can also change the order.
### params.toml
This is the main configuration file for Blowfish. Most of the visual options or customization available can be configured using it, and it covers several areas of the theme. For this tutorial, I decided to use a **background** layout - [check other layouts for Blowfish’s landing page](https://blowfish.page/) - with the **Neon** color scheme - you can pick a different color scheme if you want to - check [this list](https://blowfish.page/docs/getting-started/#colour-schemes) or [create your own](https://blowfish.page/docs/advanced-customisation/#colour-schemes).
Add an **image.jpg** to the assets folder which will be the background for the site. You can also download the examples I am using in this tutorial.
![background](img/background.jpg "assets/image.jpg")
Now let’s jump into the _params.toml_ and start configuring the file. I will focus only on the values that need to be changed, don’t delete the rest of the file without reading the docs. Let’s begin by making sure that we have the right color scheme, that image optimization is on, and configure the default background image.
```bash
colorScheme = "neon"
disableImageOptimization = false
defaultBackgroundImage = "image.jpg" # used as default for background images
```
Next, let's configure our homepage. We’re going with the _background_ layout, configuring the homepage image and recent items. Furthermore, we are using the **card view** for items in the recent category. Finally, let’s configure the header to be fixed.
```bash
[homepage]
layout = "background" # valid options: page, profile, hero, card, background, custom
homepageImage = "image.jpg" # used in: hero, and card
showRecent = true
showRecentItems = 6
showMoreLink = true
showMoreLinkDest = "/posts"
cardView = true
cardViewScreenWidth = false
layoutBackgroundBlur = true # only used when layout equals background
[header]
layout = "fixed"
```
Now configure how the article and list pages will look. Here are the configurations for those.
```bash
[article]
showHero = true
heroStyle = "background"
showSummary = true
showTableOfContents = true
showRelatedContent = true
relatedContentLimit = 3
[list]
showCards = true
groupByYear = false
cardView = true
```
If you run **hugo server** again, you should see something like the image below.
![blowfish no articles](img/blowfishnoarticles.png)
## Adding content to your site
Create a folder to place your posts in `/content/posts`. This was also the directory configured in your menu to list all the articles. Within that folder, let’s create a new directory and give it the name **myfirstpost**. Within it create an **index.md** file – your article and place a featured.jpg or .png for in the same directory as the thumbnail for the article. Use the example below to get started. The first lines in the file are the Front Matter, which tell Hugo what the look and experience of the article will be – different themes support different params for this. Check the [docs](https://blowfish.page/docs/front-matter/) for more info.
```md
---
title: "My first post"
date: 2023-08-14
draft: false
summary: "This is my first post on my site"
tags: ["space"]
---
## A sub-title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi nibh nisl, vulputate eu lacus vitae, maximus molestie libero. Vestibulum laoreet, odio et sollicitudin sollicitudin, quam ligula tempus urna, sed sagittis eros eros ac felis. In tristique tortor vitae lacinia commodo. Mauris venenatis ultrices purus nec fermentum. Nunc sit amet aliquet metus. Morbi nisl felis, gravida ac consequat vitae, blandit eu libero. Curabitur porta est in dui elementum porttitor. Maecenas fermentum, tortor ac feugiat fringilla, orci sem sagittis massa, a congue risus ipsum vel massa. Aliquam sit amet nunc vulputate, facilisis neque in, faucibus nisl.
```
You can create additional articles to see what your site will look like once there is content in it. Your site should look like the images below. The main page shows the recent articles, each article is connected through others automatically via related section, you have tag aggregation, and full-text search.
{{< gallery >}}
<img src="img/blowfishrecent.png" class="grid-w50" />
<img src="img/article.png" class="grid-w50" />
<img src="img/search.png" class="grid-w50" />
<img src="img/tag.png" class="grid-w50" />
{{< /gallery >}}
## Ship it
The only thing missing is to ship your site. I will be using [Firebase](https://firebase.google.com/) for hosting - it’s a free alternative and provides more advanced features if you are creating something more complex. Go to firebase and create a new project. Once that is done, let’s switch to the CLI as it will make it easier to configure everything.
Let’s install firebase’s CLI - if not on Mac check [install instructions on Firebase](https://firebase.google.com/docs/cli).
```bash
brew install firebase
```
Now log in and init firebase hosting for the project.
```bash
firebase login
firebase init
```
Select hosting and proceed.
![firebase init](img/firebasecli.png)
Follow the image below for the options I recommend. Make sure to set up the workflow files for GitHub actions. These will guarantee that your code will be deployed once there is a change to the repo.
![firebase options](img/firebaseoptions.png)
However, those files will not work out-of-box, as Hugo requires extra steps for the build to work. Please copy and paste the code blocks below to the respective files within the **.github** folder, but keep the original **projectId** in the files generated by firebase.
### firebase-hosting-merge.yml
```yaml
# This file was auto-generated by the Firebase CLI
# https://github.com/firebase/firebase-tools
name: Deploy to Firebase Hosting on merge
'on':
push:
branches:
- main
jobs:
build_and_deploy:
runs-on: ubuntu-latest
steps:
- name: Hugo setup
uses: peaceiris/actions-hugo@v2.6.0
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: hugo -E -F --minify -d public
- name: Deploy Production
uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_TUTORIAL }}'
channelId: live
projectId: blowfish-tutorial
```
### firebase-hosting-pull-request.yml
```yaml
# This file was auto-generated by the Firebase CLI
# https://github.com/firebase/firebase-tools
name: Deploy to Firebase Hosting on PR
'on': pull_request
jobs:
build_and_preview:
if: '${{ github.event.pull_request.head.repo.full_name == github.repository }}'
runs-on: ubuntu-latest
steps:
- name: Hugo setup
uses: peaceiris/actions-hugo@v2.6.0
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: hugo -E -F --minify -d public
- name: Deploy preview
uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_TUTORIAL }}'
expires: 30d
channelId: preview-${{ github.event.number }}
projectId: blowfish-tutorial
```
The last step is committing your code to GitHub and let the workflows you created take care of deploying your site. Since we configured GitHub actions, this will trigger a job that will configure and deploy your site automatically.
```bash
git add .
git commit -m "add github actions workflows"
git push
```
If the actions tab for your repo, you should see something like this.
![gh actions](img/githubactions.png)
Once all the steps finish, your Firebase console should show something like the image below - including the links to see your app – I got a version of this tutorial running on [https://blowfish-tutorial.web.app/](https://blowfish-tutorial.web.app/).
![firebase console](img/firebaseconsole.png)
## Conclusion and Next Steps
Now you have your first version of your homepage. You can make changes locally and once you commit your code they will automatically be reflected online. What shall you do next? I’ll leave you with some useful links to get you inspired and learn more about Blowfish and Hugo.
- https://blowfish.page/docs/
- https://blowfish.page/docs/configuration/
- https://blowfish.page/docs/shortcodes/
- https://blowfish.page/examples/
- https://blowfish.page/users/
- https://gohugo.io/documentation/
![blowfish final](img/01.png)
+1
View File
@@ -5,6 +5,7 @@ description: "See what's possible with Blowfish."
cascade:
showEdit: false
showSummary: false
hideFeatureImage: false
---
{{< lead >}}
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

@@ -12,7 +12,7 @@ Blowfish includes support for Chart.js using the `chart` shortcode. Simply wrap
Refer to the [chart shortcode]({{< ref "docs/shortcodes#chart" >}}) docs for more details.
The examples below are a small selection taken from the [official Chart.js docs](https://www.chartjs.org/docs/latest/samples). You can also [view the page source](https://raw.githubusercontent.com/nunocoracao/blowfish/main/exampleSite/content/samples/charts.md) on GitHub to see the markup.
The examples below are a small selection taken from the [official Chart.js docs](https://www.chartjs.org/docs/latest/samples). You can also [view the page source](https://raw.githubusercontent.com/nunocoracao/blowfish/main/exampleSite/content/samples/charts/index.md) on GitHub to see the markup.
## Bar chart
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 MiB

@@ -11,7 +11,7 @@ Mermaid diagrams are supported in Blowfish using the `mermaid` shortcode. Simply
Refer to the [mermaid shortcode]({{< ref "docs/shortcodes#mermaid" >}}) docs for more details.
The examples below are a small selection taken from the [official Mermaid docs](https://mermaid-js.github.io/mermaid/). You can also [view the page source](https://raw.githubusercontent.com/nunocoracao/blowfish/main/exampleSite/content/samples/diagrams-flowcharts.md) on GitHub to see the markup.
The examples below are a small selection taken from the [official Mermaid docs](https://mermaid-js.github.io/mermaid/). You can also [view the page source](https://raw.githubusercontent.com/nunocoracao/blowfish/main/exampleSite/content/samples/diagrams-flowcharts/index.md) on GitHub to see the markup.
## Flowchart
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

@@ -4,8 +4,6 @@ date: 2019-01-24
externalUrl: "https://nunocoracao.com/projects/"
summary: "The `externalUrl` front matter parameter can link to any URL."
showReadingTime: true
showLikes: false
showViews: false
_build:
render: "false"
list: "local"
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

@@ -49,6 +49,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| globe | {{< icon globe >}} |
| goodreads | {{< icon goodreads >}} |
| google | {{< icon google >}} |
| graduation-cap | {{< icon graduation-cap >}} |
| hackernews | {{< icon hackernews >}} |
| hashnode | {{< icon hashnode >}} |
| heart-empty | {{< icon heart-empty >}} |
@@ -83,6 +84,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| researchgate | {{< icon researchgate >}} |
| rss | {{< icon rss >}} |
| rss-square | {{< icon rss-square >}} |
| scale-balanced | {{< icon scale-balanced >}} |
| search | {{< icon search >}} |
| shield | {{< icon shield >}} |
| skull-crossbones | {{< icon skull-crossbones >}} |
@@ -93,6 +95,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| star | {{< icon star >}} |
| steam | {{< icon steam >}} |
| stripe | {{< icon stripe >}} |
| substack | {{< icon substack >}} |
| sun | {{< icon sun >}} |
| tag | {{< icon tag >}} |
| telegram | {{< icon telegram >}} |
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 871 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 560 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

@@ -0,0 +1,13 @@
---
title: "50-nuances-octets.fr"
tags: [Organization site]
externalUrl: "https://www.50-nuances-octets.fr/"
date: 9950-08-08
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
+27
View File
@@ -0,0 +1,27 @@
---
title: "Users"
date: 2020-08-14
draft: false
description: "Some real-life Blowfish examples."
slug: "users"
tags: ["users", "sample"]
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
layoutBackgroundHeaderSpace: false
cardViewScreenWidth: true
---
Real websites that are built with Blowfish. Check the full list in [JSON format](/users/users.json).
{{< alert >}}
**Blowfish user?** To add your site to this list, [submit a pull request](https://github.com/nunocoracao/blowfish/blob/main/exampleSite/content/users/users.json).
{{</ alert >}}
</BR>
Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

@@ -0,0 +1,13 @@
---
title: "adilhyz.github.io"
tags: [Personal site]
externalUrl: "https://adilhyz.github.io"
date: 9936-08-08
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

@@ -0,0 +1,13 @@
---
title: "adir1.com"
tags: [Personal site]
externalUrl: "https://adir1.com/"
date: 9971-08-08
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

@@ -0,0 +1,13 @@
---
title: "alanctanner.com"
tags: [Personal site]
externalUrl: "https://alanctanner.com/"
date: 9960-08-08
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

@@ -0,0 +1,13 @@
---
title: "albertolvera.com"
tags: [Personal site]
externalUrl: "https://albertolvera.com"
date: 9989-08-08
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
Loaded 100 of 1314 files, more files were not shown because too many files have changed in this diff. Show more