From 7599a5795097cf912ba6fcc47e6a6577566b29be Mon Sep 17 00:00:00 2001 From: Arghya Ghosh <71373838+uiuxarghya@users.noreply.github.com> Date: Wed, 21 Apr 2021 17:33:08 +0530 Subject: [PATCH 1/5] Create codeql-analysis.yml --- .github/workflows/codeql-analysis.yml | 67 +++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 .github/workflows/codeql-analysis.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml new file mode 100644 index 0000000..4a3d14e --- /dev/null +++ b/.github/workflows/codeql-analysis.yml @@ -0,0 +1,67 @@ +# For most projects, this workflow file will not need changing; you simply need +# to commit it to your repository. +# +# You may wish to alter this file to override the set of languages analyzed, +# or to provide custom queries or build logic. +# +# ******** NOTE ******** +# We have attempted to detect the languages in your repository. Please check +# the `language` matrix defined below to confirm you have the correct set of +# supported CodeQL languages. +# +name: "CodeQL" + +on: + push: + branches: [ master ] + pull_request: + # The branches below must be a subset of the branches above + branches: [ master ] + schedule: + - cron: '27 23 * * 3' + +jobs: + analyze: + name: Analyze + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + language: [ 'javascript' ] + # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] + # Learn more: + # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: ${{ matrix.language }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. + # queries: ./path/to/local/query, your-org/your-repo/queries@main + + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v1 + + # â„šī¸ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + + # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines + # and modify them (or add more) to build your code if your project + # uses a compiled language + + #- run: | + # make bootstrap + # make release + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1 From 4c8ce1b7ab1f86801e92fdd9b765afa07e731fa6 Mon Sep 17 00:00:00 2001 From: Arghya Ghosh <71373838+uiuxarghya@users.noreply.github.com> Date: Wed, 21 Apr 2021 17:34:59 +0530 Subject: [PATCH 2/5] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ae3f6bc..3cac475 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "@types/prismic-dom": "^2.1.1", "archiver": "^4.0.1", "fs-extra": "^9.0.1", - "highlight.js": "^10.1.1", + "highlight.js": "^10.4.1", "ionicons": "5.4.0", "prismic-dom": "^2.2.3", "prismic-javascript": "^2.7.1" From 9466d427b7fb09a95b0203db112acfb32f13fa7a Mon Sep 17 00:00:00 2001 From: Arghya Ghosh Date: Wed, 21 Apr 2021 12:12:18 +0000 Subject: [PATCH 3/5] update lock file --- package-lock.json | 151 +++++++++++++++++++++++----------------------- 1 file changed, 77 insertions(+), 74 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4dca1b6..5d24497 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,13 +15,25 @@ "stencil-router-v2": "^0.5.0" } }, + "@prismicio/helpers": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@prismicio/helpers/-/helpers-1.0.5.tgz", + "integrity": "sha512-TPpuAFHNxlCTrEihHnRKcq6zc0oZV0sfz5/iHoSpl5vorwPbwZWiF88JGeflNdefW4A69b5A3x3mfptKPdpoxg==", + "dev": true + }, + "@prismicio/richtext": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@prismicio/richtext/-/richtext-1.1.0.tgz", + "integrity": "sha512-925JuFiZiIkwu9jmlR9O/U8xCSZk/Y6BQDXKpavoVsKo+n90ml1hGdtWkglIupX+ITQO1ZINyDgUgiY1oG9dsA==", + "dev": true + }, "@stencil/core": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-1.15.0.tgz", - "integrity": "sha512-aWTagMDQtKTyNFCpAC98mYRDGDEp6ZfIuEO11RUxha2lqwwVjsXsn9HChr8k3XVPszb9azbmLoWrjT7b+2OKog==", + "version": "1.17.4", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-1.17.4.tgz", + "integrity": "sha512-dmuNYM6fnHPvE2ptHoUBQtjcpXqrHnkDtdyUD6/JrZWcJt6jBtrykewObOxzpDCMLs+NT7668ussRagdVL03gQ==", "dev": true, "requires": { - "typescript": "3.9.5" + "typescript": "3.9.7" } }, "@stencil/router": { @@ -34,9 +46,9 @@ } }, "@stencil/sass": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-1.3.2.tgz", - "integrity": "sha512-w6rkOsRIPY1rBa/13Wf+rMZrOzc6z86/Mkp3inzaYGsxBmLkf4PeP1rfaUB4SFDVRfMduP7FTd4ZJi/+FVrsMw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@stencil/sass/-/sass-1.4.1.tgz", + "integrity": "sha512-aFKoqtxZ/8BRbvNFiWRycGiqvMI22Ifn5qsKfq0U23j43XD81jT6d7K0WQd55ejNpoSpdxJcbOuFgQy3mXizfA==", "dev": true }, "@stencil/state-tunnel": { @@ -46,9 +58,9 @@ "dev": true }, "@stencil/store": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@stencil/store/-/store-1.3.0.tgz", - "integrity": "sha512-e1/Ru/q8P5BkqUYMF+kW54rFWyH9XRABLcxFLruUlbw+ZIGN5OwKe6Rf1vw1wQSa/6vMy0EQq5IrkRYNhENpOA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@stencil/store/-/store-1.4.1.tgz", + "integrity": "sha512-kAtMblucNnDNfTpSqhN9jccExgFWmOe+4U98cXZJrg/6nozNtEd92pY6s3Jko7KUrZ+1MQJU2oLwwS8VuyK3Zg==", "dev": true }, "@types/highlight.js": { @@ -64,13 +76,13 @@ "dev": true }, "archiver": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-4.0.1.tgz", - "integrity": "sha512-/YV1pU4Nhpf/rJArM23W6GTUjT0l++VbjykrCRua1TSXrn+yM8Qs7XvtwSiRse0iCe49EPNf7ktXnPsWuSb91Q==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-4.0.2.tgz", + "integrity": "sha512-B9IZjlGwaxF33UN4oPbfBkyA4V1SxNLeIhR1qY8sRXSsbdUkEHrrOvwlYFPx+8uQeCe9M+FG6KgO+imDmQ79CQ==", "dev": true, "requires": { "archiver-utils": "^2.1.0", - "async": "^2.6.3", + "async": "^3.2.0", "buffer-crc32": "^0.2.1", "glob": "^7.1.6", "readable-stream": "^3.6.0", @@ -114,13 +126,10 @@ } }, "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", + "dev": true }, "at-least-node": { "version": "1.0.0", @@ -129,21 +138,21 @@ "dev": true }, "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, "bl": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", - "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "requires": { "buffer": "^5.5.0", @@ -162,13 +171,13 @@ } }, "buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "dev": true, "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, "buffer-crc32": { @@ -269,15 +278,15 @@ "dev": true }, "fs-extra": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", - "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "requires": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", - "universalify": "^1.0.0" + "universalify": "^2.0.0" } }, "fs.realpath": { @@ -301,21 +310,21 @@ } }, "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "dev": true }, "highlight.js": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.1.1.tgz", - "integrity": "sha512-b4L09127uVa+9vkMgPpdUQP78ickGbHEQTWeBrQFTJZ4/n2aihWOGS0ZoUqAwjVmfjhq/C76HRzkqwZhK4sBbg==", + "version": "10.7.2", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.2.tgz", + "integrity": "sha512-oFLl873u4usRM9K63j4ME9u3etNF0PLiJhSQ8rdfuL51Wn3zkD6drf9ZW0dOzjnZI22YYG24z30JcmfCZjMgYg==", "dev": true }, "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "inflight": { @@ -347,13 +356,13 @@ "dev": true }, "jsonfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz", - "integrity": "sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "requires": { "graceful-fs": "^4.1.6", - "universalify": "^1.0.0" + "universalify": "^2.0.0" } }, "lazystream": { @@ -382,12 +391,6 @@ } } }, - "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", - "dev": true - }, "lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", @@ -455,14 +458,14 @@ "dev": true }, "prismic-dom": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/prismic-dom/-/prismic-dom-2.2.3.tgz", - "integrity": "sha512-7jwRBbqkll9BPkS4QAQttRaENmAWR9s4PWGGmi7ifobs1J0kYDCrn8PxJ99cywQJQea0jWgAVzOfJhkMmIF8wQ==", + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/prismic-dom/-/prismic-dom-2.2.5.tgz", + "integrity": "sha512-GafsY6sGet5EAWNG2w/qXaxgitU74yhEu/0vZEnwOt6PJgCClLmMkDzJHBpdl+wuEWqUhvkFMDUFPHSPwSVmKQ==", "dev": true, "requires": { - "escape-html": "1.0.3", - "prismic-helpers": "^1.0.3", - "prismic-richtext": "^1.0.3" + "@prismicio/helpers": "^1.0.4", + "@prismicio/richtext": "^1.1.0", + "escape-html": "1.0.3" } }, "prismic-helpers": { @@ -545,12 +548,12 @@ } }, "tar-stream": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.2.tgz", - "integrity": "sha512-UaF6FoJ32WqALZGOIAApXx+OdxhekNMChu6axLJR85zMMjXKWFGjbIRe+J6P4UnRGg9rAwWvbTT0oI7hD/Un7Q==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, "requires": { - "bl": "^4.0.1", + "bl": "^4.0.3", "end-of-stream": "^1.4.1", "fs-constants": "^1.0.0", "inherits": "^2.0.3", @@ -558,15 +561,15 @@ } }, "typescript": { - "version": "3.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.5.tgz", - "integrity": "sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ==", + "version": "3.9.7", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz", + "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==", "dev": true }, "universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", "dev": true }, "util-deprecate": { From 226a0b51148c055c6a230d1adeebdf8c40f62b37 Mon Sep 17 00:00:00 2001 From: Arghya Ghosh Date: Wed, 21 Apr 2021 12:31:17 +0000 Subject: [PATCH 4/5] update hightlight js and fixed broken links --- archived/v4/build/p-i2s3rn6x.entry.js | 2 +- docs/build/Button-36d57e33.js | 30 + docs/build/_commonjsHelpers-8f072dc7.js | 25 + docs/build/active-router-4c192dee.js | 73 + docs/build/announcement-bar.entry.js | 31 + docs/build/app-globals-e0181ab0.js | 150 + docs/build/context-consumer.entry.js | 25 + docs/build/css-shim-5ce2b5c4.js | 4 + docs/build/disqus-comments.entry.js | 49 + docs/build/dom-91ed8d21.js | 73 + docs/build/dom-utils-8e73e88b.js | 55 + docs/build/footer-bar.entry.js | 20 + docs/build/header-bar.entry.js | 67 + docs/build/icon-list.entry.js | 104 + docs/build/icon-search.entry.js | 50 + docs/build/index-5421a3d1.js | 264 + docs/build/index-93b10a2a.js | 2830 + docs/build/index-ff62d206.js | 879 + docs/build/index.esm.js | 6 +- docs/build/internal-ad.entry.js | 120 + docs/build/ionicons-site.css | 405 +- docs/build/ionicons-site.entry.js | 88 + docs/build/ionicons-site.esm.js | 8 +- docs/build/ionicons-site.js | 166 +- docs/build/landing-page.entry.js | 21 + docs/build/location-utils-fea12957.js | 229 + docs/build/match-path-760e1797.js | 343 + docs/build/more-resources.entry.js | 300 + docs/build/notfound-page.entry.js | 19 + docs/build/p-080e086e.entry.js | 1 - docs/build/p-0d48883e.system.entry.js | 1 - docs/build/p-0f98851d.system.entry.js | 1 - docs/build/p-100a7938.js | 1 - docs/build/p-10804099.entry.js | 1 - docs/build/p-22e300c7.system.js | 1 - docs/build/p-2349aa9f.system.entry.js | 1 - docs/build/p-29f86ea6.system.entry.js | 1 - docs/build/p-36079f80.system.entry.js | 1 - docs/build/p-37223a45.entry.js | 1 - docs/build/p-39d02345.system.js | 1 - docs/build/p-3aff2a2f.system.entry.js | 1 - docs/build/p-3bf0c210.system.entry.js | 1 - docs/build/p-3d1218d8.js | 1 - docs/build/p-3e1ac0a2.entry.js | 1 - docs/build/p-3ec33283.entry.js | 1 - docs/build/p-44b73d8a.js | 1 - docs/build/p-4dd7e3f2.system.js | 1 - docs/build/p-4ecea039.system.entry.js | 1 - docs/build/p-4ff03b85.entry.js | 1 - docs/build/p-52fc1aca.entry.js | 1 - docs/build/p-53d41866.system.entry.js | 1 - docs/build/p-58aeb905.system.js | 1 - docs/build/p-5ca5e847.js | 1 - docs/build/p-5d07a0db.entry.js | 1 - docs/build/p-657c9abf.system.js | 1 - docs/build/p-660a81d1.js | 1 - docs/build/p-6693dbf1.js | 1 - docs/build/p-682833ff.entry.js | 1 - docs/build/p-6a70a423.system.entry.js | 1 - docs/build/p-6ec80afd.system.js | 1 - docs/build/p-73a0c297.entry.js | 1 - docs/build/p-73a136a1.system.js | 1 - docs/build/p-7df15670.system.entry.js | 1 - docs/build/p-7ed6835f.js | 1 - docs/build/p-833dd6b3.system.entry.js | 1 - docs/build/p-881faac7.system.entry.js | 1 - docs/build/p-89519618.js | 1 - docs/build/p-8d977083.system.js | 1 - docs/build/p-9b5c5029.system.entry.js | 1 - docs/build/p-9fb0334b.js | 1 - docs/build/p-a32ddb35.js | 1 - docs/build/p-a41addb1.system.js | 1 - docs/build/p-acf45f22.system.entry.js | 1 - docs/build/p-b18ab5ec.js | 1 - docs/build/p-b1aa8839.system.entry.js | 1 - docs/build/p-b3d0c963.js | 9 - docs/build/p-b9590c7b.entry.js | 1 - docs/build/p-b9a49567.system.entry.js | 1 - docs/build/p-b9a934ba.entry.js | 1 - docs/build/p-bb508a3b.system.js | 1 - docs/build/p-bea43937.js | 19 - docs/build/p-cf14d368.entry.js | 1 - docs/build/p-d0d55fdf.entry.js | 1 - docs/build/p-d4602444.system.js | 1 - docs/build/p-d803edb2.js | 1 - docs/build/p-df7f07a9.system.js | 1 - docs/build/p-e0e372be.entry.js | 1 - docs/build/p-e4297691.system.js | 21 - docs/build/p-e4f1fa4a.entry.js | 1 - docs/build/p-e6f71f8f.entry.js | 1 - docs/build/p-e86cdcff.entry.js | 1 - docs/build/p-ea521598.js | 1 - docs/build/p-ecf232e1.css | 1 - docs/build/p-f0b94863.system.js | 1 - docs/build/p-f44f4eef.system.js | 1 - docs/build/p-f89c6571.system.entry.js | 1 - docs/build/p-fcbdff97.system.js | 1 - docs/build/prismic-dom.min-c7c2ccaa.js | 17 + docs/build/prismic-javascript.min-e8451ed1.js | 480 + docs/build/shadow-css-fb1c6168.js | 383 + docs/build/shared-demo.entry.js | 62 + docs/build/site-modal.entry.js | 81 + docs/build/site-platform-bar.entry.js | 17 + docs/build/site-root.entry.js | 15 + docs/build/stencil-async-content.entry.js | 28 + docs/build/stencil-route-link.entry.js | 74 + docs/build/stencil-route-switch.entry.js | 100 + docs/build/stencil-route-title.entry.js | 28 + docs/build/stencil-route.entry.js | 93 + docs/build/stencil-router-prompt.entry.js | 55 + docs/build/stencil-router-redirect.entry.js | 28 + docs/build/stencil-router.entry.js | 636 + docs/build/toast-bar.entry.js | 106 + docs/build/usage-page.entry.js | 45938 ++++++++++++++++ docs/index.html | 4479 +- docs/ionicons.designerpack.zip | Bin 588886 -> 0 bytes docs/robots.txt | 3 - docs/sitemap.xml | 5 - docs/usage/index.html | 5497 +- docs/v4/build/p-i2s3rn6x.entry.js | 2 +- 120 files changed, 55958 insertions(+), 8719 deletions(-) create mode 100644 docs/build/Button-36d57e33.js create mode 100644 docs/build/_commonjsHelpers-8f072dc7.js create mode 100644 docs/build/active-router-4c192dee.js create mode 100644 docs/build/announcement-bar.entry.js create mode 100644 docs/build/app-globals-e0181ab0.js create mode 100644 docs/build/context-consumer.entry.js create mode 100644 docs/build/css-shim-5ce2b5c4.js create mode 100644 docs/build/disqus-comments.entry.js create mode 100644 docs/build/dom-91ed8d21.js create mode 100644 docs/build/dom-utils-8e73e88b.js create mode 100644 docs/build/footer-bar.entry.js create mode 100644 docs/build/header-bar.entry.js create mode 100644 docs/build/icon-list.entry.js create mode 100644 docs/build/icon-search.entry.js create mode 100644 docs/build/index-5421a3d1.js create mode 100644 docs/build/index-93b10a2a.js create mode 100644 docs/build/index-ff62d206.js create mode 100644 docs/build/internal-ad.entry.js create mode 100644 docs/build/ionicons-site.entry.js create mode 100644 docs/build/landing-page.entry.js create mode 100644 docs/build/location-utils-fea12957.js create mode 100644 docs/build/match-path-760e1797.js create mode 100644 docs/build/more-resources.entry.js create mode 100644 docs/build/notfound-page.entry.js delete mode 100644 docs/build/p-080e086e.entry.js delete mode 100644 docs/build/p-0d48883e.system.entry.js delete mode 100644 docs/build/p-0f98851d.system.entry.js delete mode 100644 docs/build/p-100a7938.js delete mode 100644 docs/build/p-10804099.entry.js delete mode 100644 docs/build/p-22e300c7.system.js delete mode 100644 docs/build/p-2349aa9f.system.entry.js delete mode 100644 docs/build/p-29f86ea6.system.entry.js delete mode 100644 docs/build/p-36079f80.system.entry.js delete mode 100644 docs/build/p-37223a45.entry.js delete mode 100644 docs/build/p-39d02345.system.js delete mode 100644 docs/build/p-3aff2a2f.system.entry.js delete mode 100644 docs/build/p-3bf0c210.system.entry.js delete mode 100644 docs/build/p-3d1218d8.js delete mode 100644 docs/build/p-3e1ac0a2.entry.js delete mode 100644 docs/build/p-3ec33283.entry.js delete mode 100644 docs/build/p-44b73d8a.js delete mode 100644 docs/build/p-4dd7e3f2.system.js delete mode 100644 docs/build/p-4ecea039.system.entry.js delete mode 100644 docs/build/p-4ff03b85.entry.js delete mode 100644 docs/build/p-52fc1aca.entry.js delete mode 100644 docs/build/p-53d41866.system.entry.js delete mode 100644 docs/build/p-58aeb905.system.js delete mode 100644 docs/build/p-5ca5e847.js delete mode 100644 docs/build/p-5d07a0db.entry.js delete mode 100644 docs/build/p-657c9abf.system.js delete mode 100644 docs/build/p-660a81d1.js delete mode 100644 docs/build/p-6693dbf1.js delete mode 100644 docs/build/p-682833ff.entry.js delete mode 100644 docs/build/p-6a70a423.system.entry.js delete mode 100644 docs/build/p-6ec80afd.system.js delete mode 100644 docs/build/p-73a0c297.entry.js delete mode 100644 docs/build/p-73a136a1.system.js delete mode 100644 docs/build/p-7df15670.system.entry.js delete mode 100644 docs/build/p-7ed6835f.js delete mode 100644 docs/build/p-833dd6b3.system.entry.js delete mode 100644 docs/build/p-881faac7.system.entry.js delete mode 100644 docs/build/p-89519618.js delete mode 100644 docs/build/p-8d977083.system.js delete mode 100644 docs/build/p-9b5c5029.system.entry.js delete mode 100644 docs/build/p-9fb0334b.js delete mode 100644 docs/build/p-a32ddb35.js delete mode 100644 docs/build/p-a41addb1.system.js delete mode 100644 docs/build/p-acf45f22.system.entry.js delete mode 100644 docs/build/p-b18ab5ec.js delete mode 100644 docs/build/p-b1aa8839.system.entry.js delete mode 100644 docs/build/p-b3d0c963.js delete mode 100644 docs/build/p-b9590c7b.entry.js delete mode 100644 docs/build/p-b9a49567.system.entry.js delete mode 100644 docs/build/p-b9a934ba.entry.js delete mode 100644 docs/build/p-bb508a3b.system.js delete mode 100644 docs/build/p-bea43937.js delete mode 100644 docs/build/p-cf14d368.entry.js delete mode 100644 docs/build/p-d0d55fdf.entry.js delete mode 100644 docs/build/p-d4602444.system.js delete mode 100644 docs/build/p-d803edb2.js delete mode 100644 docs/build/p-df7f07a9.system.js delete mode 100644 docs/build/p-e0e372be.entry.js delete mode 100644 docs/build/p-e4297691.system.js delete mode 100644 docs/build/p-e4f1fa4a.entry.js delete mode 100644 docs/build/p-e6f71f8f.entry.js delete mode 100644 docs/build/p-e86cdcff.entry.js delete mode 100644 docs/build/p-ea521598.js delete mode 100644 docs/build/p-ecf232e1.css delete mode 100644 docs/build/p-f0b94863.system.js delete mode 100644 docs/build/p-f44f4eef.system.js delete mode 100644 docs/build/p-f89c6571.system.entry.js delete mode 100644 docs/build/p-fcbdff97.system.js create mode 100644 docs/build/prismic-dom.min-c7c2ccaa.js create mode 100644 docs/build/prismic-javascript.min-e8451ed1.js create mode 100644 docs/build/shadow-css-fb1c6168.js create mode 100644 docs/build/shared-demo.entry.js create mode 100644 docs/build/site-modal.entry.js create mode 100644 docs/build/site-platform-bar.entry.js create mode 100644 docs/build/site-root.entry.js create mode 100644 docs/build/stencil-async-content.entry.js create mode 100644 docs/build/stencil-route-link.entry.js create mode 100644 docs/build/stencil-route-switch.entry.js create mode 100644 docs/build/stencil-route-title.entry.js create mode 100644 docs/build/stencil-route.entry.js create mode 100644 docs/build/stencil-router-prompt.entry.js create mode 100644 docs/build/stencil-router-redirect.entry.js create mode 100644 docs/build/stencil-router.entry.js create mode 100644 docs/build/toast-bar.entry.js create mode 100644 docs/build/usage-page.entry.js delete mode 100644 docs/ionicons.designerpack.zip delete mode 100644 docs/robots.txt delete mode 100644 docs/sitemap.xml diff --git a/archived/v4/build/p-i2s3rn6x.entry.js b/archived/v4/build/p-i2s3rn6x.entry.js index a3ff42c..3cc77fe 100644 --- a/archived/v4/build/p-i2s3rn6x.entry.js +++ b/archived/v4/build/p-i2s3rn6x.entry.js @@ -1 +1 @@ -import{r as s,c as i,h as t,g as o}from"./p-5f00bf62.js";const a=class{constructor(t){s(this,t),this.hadIconOnce=!1,this.clearToast=i(this,"clearToast",7),this.toggleHeaderSearch=i(this,"toggleHeaderSearch",7)}handleCodeClick(s){const i=this.el.querySelector(".toast-bar__section:first-child"),t=document.createElement("textarea");t.value=``,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),this.showCopiedConfirm&&(window.clearTimeout(this.showCopiedConfirm),this.showCopiedConfirm=0),i.classList.add("copied"),this.showCopiedConfirm=window.setTimeout(()=>{i.classList.remove("copied"),this.showCopiedConfirm=0},1500)}componentDidLoad(){this.el.addEventListener("touchstart",this.handleTouchStart.bind(this),!1),this.el.addEventListener("touchend",this.handleTouchEnd.bind(this),!1)}handleTouchStart(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchStartY=s.changedTouches[0].screenY)}handleTouchEnd(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchEndY=s.changedTouches[0].screenY,this.touchEndY>this.touchStartY&&this.clearToast.emit())}render(){let s,i,o,a=null;return this.selectedIcon&&(this.hadIconOnce||(this.hadIconOnce=!0),o=this.selectedIcon.name,"logo"===(i=this.selectedIcon.icons[0].startsWith("logo-")?"logo":this.selectedIconType)&&(o="logo-"+o),s=8*``.length+32,a=this.selectedIcon.icons.map(s=>{let i;switch(s.substr(0,s.indexOf("-"))){case"ios":i="iOS STYLE";break;case"md":i="MATERIAL STYLE";break;case"logo":i="LOGO"}return t("div",{class:"toast-bar__section"},t("div",{class:"toast-bar__section-header"},t("h6",null,i)),t("div",{class:"btn-group"},t("div",{class:"btn btn--gray btn--small btn--icon"},t("i",{class:"ion ion-"+s})),t("a",{class:"btn btn--gray btn--small",download:`/ionicons/svg/${s}.svg`,href:`/ionicons/svg/${s}.svg`},t("i",{class:"ion ion-md-download"}),"SVG")))})),t("div",{class:`toast-bar ${this.selectedIcon?"isVisible":""} ${!this.selectedIcon&&this.hadIconOnce?"isHidden":""} ${this.hadIconOnce?"":"preload"}`,onClick:s=>s.stopPropagation()},t("div",{class:"container"},t("div",{class:"toast-bar--inner"},this.selectedIcon&&t("h4",null,this.selectedIcon.name),this.selectedIcon&&t("div",{class:"toast-bar__details"},t("div",{class:"toast-bar__section",style:{maxWidth:s+"px"}},t("div",{class:"toast-bar__section-header"},t("div",null,t("h6",null,"Web component code"),t("span",{class:"confirmation"},t("i",{class:"ion ion-md-checkmark"}),"Copied")),t("stencil-route-link",{url:`/usage#${i}-${this.selectedIcon.name}`,onClick:()=>this.toggleHeaderSearch.emit("hide")},"Usage",t("i",{class:"ion ion-ios-arrow-forward"}))),t("code",null,t("span",{class:"hover-highlight",onClick:()=>this.handleCodeClick(o)},"<",t("span",{class:"yellow"},"ion-icon")," ",t("span",{class:"orange"},"name"),"=",t("span",{class:"green"},`"${o}"`),">",""))),a))))}get el(){return o(this)}static get style(){return"toast-bar .toast-bar{position:fixed;padding:12px 0;left:0;bottom:0;width:100%;-webkit-transform:translateY(100%);transform:translateY(100%)}toast-bar .toast-bar.isVisible{-webkit-animation-name:slideIn;animation-name:slideIn;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;opacity:1}\@-webkit-keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}\@keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}toast-bar .toast-bar.isHidden{-webkit-animation-name:slideOut;animation-name:slideOut;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}\@keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}toast-bar .toast-bar.preload{opacity:0}toast-bar .toast-bar--inner{background-color:var(--color-shark);height:80px;border-radius:15px;padding:0 20px 0 30px;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08);box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08)}toast-bar .toast-bar--inner h4{color:#fff;margin:0;white-space:nowrap;margin-right:30px}toast-bar .toast-bar__details{-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}toast-bar .toast-bar__section-header,toast-bar .toast-bar__section-header>div{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}toast-bar .toast-bar__section-header{height:10px;margin-bottom:7px}toast-bar .toast-bar__section-header h6{display:inline-block}toast-bar .toast-bar__section-header a{-webkit-transition:border .3s;transition:border .3s;color:var(--color-melrose);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid transparent}toast-bar .toast-bar__section-header a:hover{border-bottom-color:var(--color-melrose-dark)}toast-bar .toast-bar__section-header i{margin-left:3px}toast-bar .toast-bar__section:not(:first-child){margin-left:20px}toast-bar .toast-bar__section:first-child{position:relative;max-width:none}toast-bar .toast-bar__details code{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:14px;line-height:14px;height:32px;padding:0 12px;cursor:text;overflow:hidden}\@supports (display:grid){toast-bar .toast-bar__section:not(:first-child){-ms-flex:0;flex:0}toast-bar .toast-bar__section:first-child{-ms-flex:1;flex:1}toast-bar .toast-bar__details code{overflow-x:auto}}toast-bar .toast-bar__details code>span{position:absolute;white-space:nowrap}toast-bar .toast-bar__section .confirmation{font-size:11px;font-family:Eina;font-weight:600;color:#aec6ff;display:-ms-flexbox;display:flex;opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px);margin-left:12px}toast-bar .toast-bar__section .confirmation .ion{color:#aec6ff;font-size:14px;margin-right:4px}toast-bar .toast-bar__section.copied .confirmation{-webkit-animation-name:slideInOut;animation-name:slideInOut;-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}\@keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}toast-bar .toast-bar__details code:hover .hover-highlight{background-color:#5882b2}\@media screen and (max-width:768px){toast-bar .toast-bar__section:not(:first-child){display:none}}\@media screen and (max-width:540px){toast-bar .toast-bar--inner{padding:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;height:auto}toast-bar .toast-bar--inner h4{margin:0 0 16px}toast-bar .toast-bar__section{max-width:100%!important}toast-bar .toast-bar__details{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}}"}};export{a as toast_bar}; \ No newline at end of file +import{r as s,c as i,h as t,g as o}from"./p-5f00bf62.js";const a=class{constructor(t){s(this,t),this.hadIconOnce=!1,this.clearToast=i(this,"clearToast",7),this.toggleHeaderSearch=i(this,"toggleHeaderSearch",7)}handleCodeClick(s){const i=this.el.querySelector(".toast-bar__section:first-child"),t=document.createElement("textarea");t.value=``,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),this.showCopiedConfirm&&(window.clearTimeout(this.showCopiedConfirm),this.showCopiedConfirm=0),i.classList.add("copied"),this.showCopiedConfirm=window.setTimeout(()=>{i.classList.remove("copied"),this.showCopiedConfirm=0},1500)}componentDidLoad(){this.el.addEventListener("touchstart",this.handleTouchStart.bind(this),!1),this.el.addEventListener("touchend",this.handleTouchEnd.bind(this),!1)}handleTouchStart(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchStartY=s.changedTouches[0].screenY)}handleTouchEnd(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchEndY=s.changedTouches[0].screenY,this.touchEndY>this.touchStartY&&this.clearToast.emit())}render(){let s,i,o,a=null;return this.selectedIcon&&(this.hadIconOnce||(this.hadIconOnce=!0),o=this.selectedIcon.name,"logo"===(i=this.selectedIcon.icons[0].startsWith("logo-")?"logo":this.selectedIconType)&&(o="logo-"+o),s=8*``.length+32,a=this.selectedIcon.icons.map(s=>{let i;switch(s.substr(0,s.indexOf("-"))){case"ios":i="iOS STYLE";break;case"md":i="MATERIAL STYLE";break;case"logo":i="LOGO"}return t("div",{class:"toast-bar__section"},t("div",{class:"toast-bar__section-header"},t("h6",null,i)),t("div",{class:"btn-group"},t("div",{class:"btn btn--gray btn--small btn--icon"},t("i",{class:"ion ion-"+s})),t("a",{class:"btn btn--gray btn--small",download:`/v4/ionicons/svg/${s}.svg`,href:`/v4/ionicons/svg/${s}.svg`},t("i",{class:"ion ion-md-download"}),"SVG")))})),t("div",{class:`toast-bar ${this.selectedIcon?"isVisible":""} ${!this.selectedIcon&&this.hadIconOnce?"isHidden":""} ${this.hadIconOnce?"":"preload"}`,onClick:s=>s.stopPropagation()},t("div",{class:"container"},t("div",{class:"toast-bar--inner"},this.selectedIcon&&t("h4",null,this.selectedIcon.name),this.selectedIcon&&t("div",{class:"toast-bar__details"},t("div",{class:"toast-bar__section",style:{maxWidth:s+"px"}},t("div",{class:"toast-bar__section-header"},t("div",null,t("h6",null,"Web component code"),t("span",{class:"confirmation"},t("i",{class:"ion ion-md-checkmark"}),"Copied")),t("stencil-route-link",{url:`/usage#${i}-${this.selectedIcon.name}`,onClick:()=>this.toggleHeaderSearch.emit("hide")},"Usage",t("i",{class:"ion ion-ios-arrow-forward"}))),t("code",null,t("span",{class:"hover-highlight",onClick:()=>this.handleCodeClick(o)},"<",t("span",{class:"yellow"},"ion-icon")," ",t("span",{class:"orange"},"name"),"=",t("span",{class:"green"},`"${o}"`),">",""))),a))))}get el(){return o(this)}static get style(){return"toast-bar .toast-bar{position:fixed;padding:12px 0;left:0;bottom:0;width:100%;-webkit-transform:translateY(100%);transform:translateY(100%)}toast-bar .toast-bar.isVisible{-webkit-animation-name:slideIn;animation-name:slideIn;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;opacity:1}\@-webkit-keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}\@keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}toast-bar .toast-bar.isHidden{-webkit-animation-name:slideOut;animation-name:slideOut;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}\@keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}toast-bar .toast-bar.preload{opacity:0}toast-bar .toast-bar--inner{background-color:var(--color-shark);height:80px;border-radius:15px;padding:0 20px 0 30px;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08);box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08)}toast-bar .toast-bar--inner h4{color:#fff;margin:0;white-space:nowrap;margin-right:30px}toast-bar .toast-bar__details{-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}toast-bar .toast-bar__section-header,toast-bar .toast-bar__section-header>div{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}toast-bar .toast-bar__section-header{height:10px;margin-bottom:7px}toast-bar .toast-bar__section-header h6{display:inline-block}toast-bar .toast-bar__section-header a{-webkit-transition:border .3s;transition:border .3s;color:var(--color-melrose);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid transparent}toast-bar .toast-bar__section-header a:hover{border-bottom-color:var(--color-melrose-dark)}toast-bar .toast-bar__section-header i{margin-left:3px}toast-bar .toast-bar__section:not(:first-child){margin-left:20px}toast-bar .toast-bar__section:first-child{position:relative;max-width:none}toast-bar .toast-bar__details code{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:14px;line-height:14px;height:32px;padding:0 12px;cursor:text;overflow:hidden}\@supports (display:grid){toast-bar .toast-bar__section:not(:first-child){-ms-flex:0;flex:0}toast-bar .toast-bar__section:first-child{-ms-flex:1;flex:1}toast-bar .toast-bar__details code{overflow-x:auto}}toast-bar .toast-bar__details code>span{position:absolute;white-space:nowrap}toast-bar .toast-bar__section .confirmation{font-size:11px;font-family:Eina;font-weight:600;color:#aec6ff;display:-ms-flexbox;display:flex;opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px);margin-left:12px}toast-bar .toast-bar__section .confirmation .ion{color:#aec6ff;font-size:14px;margin-right:4px}toast-bar .toast-bar__section.copied .confirmation{-webkit-animation-name:slideInOut;animation-name:slideInOut;-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}\@keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}toast-bar .toast-bar__details code:hover .hover-highlight{background-color:#5882b2}\@media screen and (max-width:768px){toast-bar .toast-bar__section:not(:first-child){display:none}}\@media screen and (max-width:540px){toast-bar .toast-bar--inner{padding:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;height:auto}toast-bar .toast-bar--inner h4{margin:0 0 16px}toast-bar .toast-bar__section{max-width:100%!important}toast-bar .toast-bar__details{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}}"}};export{a as toast_bar}; \ No newline at end of file diff --git a/docs/build/Button-36d57e33.js b/docs/build/Button-36d57e33.js new file mode 100644 index 0000000..05535e3 --- /dev/null +++ b/docs/build/Button-36d57e33.js @@ -0,0 +1,30 @@ +import { h } from './index-93b10a2a.js'; + +// Given a set of provided props and extra props, +// merge to two except for the class prop which is concated +const applyProps = (props, extra = {}) => { + const allKeys = new Set(Object.keys(props).concat(Object.keys(extra))); + return Array.from(allKeys).reduce((v, k) => { + if (k in extra) { + if (k === 'class') { + if (typeof extra[k] === 'string') { + v[k] = `${extra[k]} ${props[k] ? props[k] : ''}`; + } + else { + v[k] = Object.assign(Object.assign({}, props[k]), extra[k]); + } + } + else { + v[k] = extra[k]; + } + } + else if (k in props) { + v[k] = props[k]; + } + return v; + }, {}); +}; + +const Button = (props, children) => (h("button", Object.assign({}, applyProps(props, { class: 'ui-button' })), children)); + +export { Button as B, applyProps as a }; diff --git a/docs/build/_commonjsHelpers-8f072dc7.js b/docs/build/_commonjsHelpers-8f072dc7.js new file mode 100644 index 0000000..a80c915 --- /dev/null +++ b/docs/build/_commonjsHelpers-8f072dc7.js @@ -0,0 +1,25 @@ +var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; + +function unwrapExports (x) { + return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x; +} + +function createCommonjsModule(fn, basedir, module) { + return module = { + path: basedir, + exports: {}, + require: function (path, base) { + return commonjsRequire(path, (base === undefined || base === null) ? module.path : base); + } + }, fn(module, module.exports), module.exports; +} + +function getCjsExportFromNamespace (n) { + return n && n['default'] || n; +} + +function commonjsRequire () { + throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs'); +} + +export { commonjsGlobal as a, createCommonjsModule as c, unwrapExports as u }; diff --git a/docs/build/active-router-4c192dee.js b/docs/build/active-router-4c192dee.js new file mode 100644 index 0000000..0846714 --- /dev/null +++ b/docs/build/active-router-4c192dee.js @@ -0,0 +1,73 @@ +import { h } from './index-93b10a2a.js'; + +const createProviderConsumer = (defaultState, consumerRender) => { + let listeners = new Map(); + let currentState = defaultState; + const updateListener = (fields, instance) => { + if (Array.isArray(fields)) { + [...fields].forEach(fieldName => { + instance[fieldName] = currentState[fieldName]; + }); + } + else { + instance[fields] = Object.assign({}, currentState); + } + }; + const subscribe = (instance, propList) => { + if (!listeners.has(instance)) { + listeners.set(instance, propList); + updateListener(propList, instance); + } + return () => { + if (listeners.has(instance)) { + listeners.delete(instance); + } + }; + }; + const Provider = ({ state }, children) => { + currentState = state; + listeners.forEach(updateListener); + return children; + }; + const Consumer = (props, children) => { + // The casting on subscribe is to allow for crossover through the stencil compiler + // In the future we should allow for generics in components. + return consumerRender(subscribe, children[0]); + }; + const injectProps = (Cstr, fieldList) => { + const CstrPrototype = Cstr.prototype; + const cstrConnectedCallback = CstrPrototype.connectedCallback; + const cstrDisconnectedCallback = CstrPrototype.disconnectedCallback; + CstrPrototype.connectedCallback = function () { + subscribe(this, fieldList); + if (cstrConnectedCallback) { + return cstrConnectedCallback.call(this); + } + }; + CstrPrototype.disconnectedCallback = function () { + listeners.delete(this); + if (cstrDisconnectedCallback) { + cstrDisconnectedCallback.call(this); + } + }; + }; + return { + Provider, + Consumer, + injectProps + }; +}; + +const ActiveRouter = createProviderConsumer({ + historyType: 'browser', + location: { + pathname: '', + query: {}, + key: '' + }, + titleSuffix: '', + root: '/', + routeViewsUpdated: () => { } +}, (subscribe, child) => (h("context-consumer", { subscribe: subscribe, renderer: child }))); + +export { ActiveRouter as A }; diff --git a/docs/build/announcement-bar.entry.js b/docs/build/announcement-bar.entry.js new file mode 100644 index 0000000..8fa6b78 --- /dev/null +++ b/docs/build/announcement-bar.entry.js @@ -0,0 +1,31 @@ +import { r as registerInstance, h } from './index-93b10a2a.js'; +import './_commonjsHelpers-8f072dc7.js'; +import './index-ff62d206.js'; +import './Button-36d57e33.js'; +import { R as ResponsiveContainer } from './index-5421a3d1.js'; +import { P as Prismic } from './prismic-javascript.min-e8451ed1.js'; +import { P as PrismicDom } from './prismic-dom.min-c7c2ccaa.js'; + +const announcementBarCss = "@charset \"UTF-8\";announcement-bar{background:#F8FAFC;box-shadow:0 1px 0px 0 rgba(0, 20, 56, 0.06);position:relative;z-index:999;padding:6px 0 7px;text-align:center;color:#73849A}announcement-bar .container{position:relative;font-size:11px;line-height:1.8em;font-weight:400;letter-spacing:-0.01em;display:flex;flex-wrap:wrap;justify-content:center;align-content:center}announcement-bar .container:before,announcement-bar .container:after{display:none}announcement-bar p{display:inline;margin:4px 0 0;color:#73849A}announcement-bar strong{font-weight:600;color:#020814}announcement-bar a{background-color:var(--color-dodger-blue);color:#fff;border-radius:16px;margin-left:12px;padding:6px 8px 5px;font-weight:600;font-size:9px;line-height:1em;text-decoration:none;text-transform:uppercase;vertical-align:0;white-space:pre;letter-spacing:0.02em;transition:0.2s background-color, 0.2s box-shadow}announcement-bar a::after{font-family:\"Ionicons\";content:\"ī‘\";margin-left:3px}announcement-bar a:hover{background-color:--color-dodger-blue-light;box-shadow:0 1px 2px rgba(0, 0, 0, 0.1)}@media (max-width: 768px){announcement-bar{display:none}}.announcement-bar--studio{background-color:#0B0C10;background-image:url(\"https://ionicframework.com/img/products/studio/preheader-bg-2.png\");background-repeat:no-repeat;background-size:1224px 49px;background-position:center;color:#B2BECD;padding:10px 0 12px}.announcement-bar--studio .container{font-size:13px}.announcement-bar--studio .container>div{display:flex;align-items:center;justify-content:center}.announcement-bar--studio .container>div::before{display:block;content:\"\";background-image:url(\"https://ionicframework.com/img/products/studio/studio-logo.svg\");width:78px;height:21px;margin-right:24px}.announcement-bar--studio .container p{margin-bottom:0;color:#b2becd}.announcement-bar--studio a{font-size:11px;padding:10px;margin-left:24px}.announcement-bar--studio a:hover{background-color:#5290ff}"; + +const AnnouncementBar = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.apiURL = 'https://ionicframeworkcom.prismic.io/api/v2'; + this.getLatest(); + } + async getLatest() { + const api = await Prismic.getApi(this.apiURL); + const single = await api.getSingle('ionicons_announcement_bar'); + // console.log(single) + this.data = single.data; + } + render() { + if (!this.data || Object.keys(this.data).length === 0) + return; + return (h("nav", { class: this.data.theme === 'Studio' ? 'announcement-bar--studio' : '' }, h(ResponsiveContainer, null, h("div", { innerHTML: PrismicDom.RichText.asHtml(this.data.text) }), h("a", { href: this.data.link.url, target: "_blank" }, this.data.button_text)))); + } +}; +AnnouncementBar.style = announcementBarCss; + +export { AnnouncementBar as announcement_bar }; diff --git a/docs/build/app-globals-e0181ab0.js b/docs/build/app-globals-e0181ab0.js new file mode 100644 index 0000000..8622a32 --- /dev/null +++ b/docs/build/app-globals-e0181ab0.js @@ -0,0 +1,150 @@ +import { B as BUILD, C as CSS, p as plt, w as win, a as promiseResolve, c as consoleDevInfo, H, d as doc, N as NAMESPACE } from './index-93b10a2a.js'; + +/* + Stencil Client Patch v1.17.4 | MIT Licensed | https://stenciljs.com + */ +const noop = () => { + /* noop*/ +}; +const IS_DENO_ENV = typeof Deno !== 'undefined'; +const IS_NODE_ENV = !IS_DENO_ENV && + typeof global !== 'undefined' && + typeof require === 'function' && + !!global.process && + typeof __filename === 'string' && + (!global.origin || typeof global.origin !== 'string'); +const IS_DENO_WINDOWS_ENV = IS_DENO_ENV && Deno.build.os === 'windows'; +const getCurrentDirectory = IS_NODE_ENV ? process.cwd : IS_DENO_ENV ? Deno.cwd : () => '/'; +const exit = IS_NODE_ENV ? process.exit : IS_DENO_ENV ? Deno.exit : noop; +const getDynamicImportFunction = (namespace) => `__sc_import_${namespace.replace(/\s|-/g, '_')}`; +const patchEsm = () => { + // NOTE!! This fn cannot use async/await! + // @ts-ignore + if (BUILD.cssVarShim && !(CSS && CSS.supports && CSS.supports('color', 'var(--c)'))) { + // @ts-ignore + return __sc_import_ionicons_site(/* webpackChunkName: "polyfills-css-shim" */ './css-shim-5ce2b5c4.js').then(() => { + if ((plt.$cssShim$ = win.__cssshim)) { + return plt.$cssShim$.i(); + } + else { + // for better minification + return 0; + } + }); + } + return promiseResolve(); +}; +const patchBrowser = () => { + // NOTE!! This fn cannot use async/await! + if (BUILD.isDev && !BUILD.isTesting) { + consoleDevInfo('Running in development mode.'); + } + if (BUILD.cssVarShim) { + // shim css vars + plt.$cssShim$ = win.__cssshim; + } + if (BUILD.cloneNodeFix) { + // opted-in to polyfill cloneNode() for slot polyfilled components + patchCloneNodeFix(H.prototype); + } + if (BUILD.profile && !performance.mark) { + // not all browsers support performance.mark/measure (Safari 10) + performance.mark = performance.measure = () => { + /*noop*/ + }; + performance.getEntriesByName = () => []; + } + // @ts-ignore + const scriptElm = BUILD.scriptDataOpts || BUILD.safari10 || BUILD.dynamicImportShim + ? Array.from(doc.querySelectorAll('script')).find(s => new RegExp(`\/${NAMESPACE}(\\.esm)?\\.js($|\\?|#)`).test(s.src) || s.getAttribute('data-stencil-namespace') === NAMESPACE) + : null; + const importMeta = ""; + const opts = BUILD.scriptDataOpts ? scriptElm['data-opts'] || {} : {}; + if (BUILD.safari10 && 'onbeforeload' in scriptElm && !history.scrollRestoration /* IS_ESM_BUILD */) { + // Safari < v11 support: This IF is true if it's Safari below v11. + // This fn cannot use async/await since Safari didn't support it until v11, + // however, Safari 10 did support modules. Safari 10 also didn't support "nomodule", + // so both the ESM file and nomodule file would get downloaded. Only Safari + // has 'onbeforeload' in the script, and "history.scrollRestoration" was added + // to Safari in v11. Return a noop then() so the async/await ESM code doesn't continue. + // IS_ESM_BUILD is replaced at build time so this check doesn't happen in systemjs builds. + return { + then() { + /* promise noop */ + }, + }; + } + if (!BUILD.safari10 && importMeta !== '') { + opts.resourcesUrl = new URL('.', importMeta).href; + } + else if (BUILD.dynamicImportShim || BUILD.safari10) { + opts.resourcesUrl = new URL('.', new URL(scriptElm.getAttribute('data-resources-url') || scriptElm.src, win.location.href)).href; + if (BUILD.dynamicImportShim) { + patchDynamicImport(opts.resourcesUrl, scriptElm); + } + if (BUILD.dynamicImportShim && !win.customElements) { + // module support, but no custom elements support (Old Edge) + // @ts-ignore + return __sc_import_ionicons_site(/* webpackChunkName: "polyfills-dom" */ './dom-91ed8d21.js').then(() => opts); + } + } + return promiseResolve(opts); +}; +const patchDynamicImport = (base, orgScriptElm) => { + const importFunctionName = getDynamicImportFunction(NAMESPACE); + try { + // test if this browser supports dynamic imports + // There is a caching issue in V8, that breaks using import() in Function + // By generating a random string, we can workaround it + // Check https://bugs.chromium.org/p/chromium/issues/detail?id=990810 for more info + win[importFunctionName] = new Function('w', `return import(w);//${Math.random()}`); + } + catch (e) { + // this shim is specifically for browsers that do support "esm" imports + // however, they do NOT support "dynamic" imports + // basically this code is for old Edge, v18 and below + const moduleMap = new Map(); + win[importFunctionName] = (src) => { + const url = new URL(src, base).href; + let mod = moduleMap.get(url); + if (!mod) { + const script = doc.createElement('script'); + script.type = 'module'; + script.crossOrigin = orgScriptElm.crossOrigin; + script.src = URL.createObjectURL(new Blob([`import * as m from '${url}'; window.${importFunctionName}.m = m;`], { type: 'application/javascript' })); + mod = new Promise(resolve => { + script.onload = () => { + resolve(win[importFunctionName].m); + script.remove(); + }; + }); + moduleMap.set(url, mod); + doc.head.appendChild(script); + } + return mod; + }; + } +}; +const patchCloneNodeFix = (HTMLElementPrototype) => { + const nativeCloneNodeFn = HTMLElementPrototype.cloneNode; + HTMLElementPrototype.cloneNode = function (deep) { + if (this.nodeName === 'TEMPLATE') { + return nativeCloneNodeFn.call(this, deep); + } + const clonedNode = nativeCloneNodeFn.call(this, false); + const srcChildNodes = this.childNodes; + if (deep) { + for (let i = 0; i < srcChildNodes.length; i++) { + // Node.ATTRIBUTE_NODE === 2, and checking because IE11 + if (srcChildNodes[i].nodeType !== 2) { + clonedNode.appendChild(srcChildNodes[i].cloneNode(true)); + } + } + } + return clonedNode; + }; +}; + +const globalScripts = () => {}; + +export { patchEsm as a, globalScripts as g, patchBrowser as p }; diff --git a/docs/build/context-consumer.entry.js b/docs/build/context-consumer.entry.js new file mode 100644 index 0000000..753fe9b --- /dev/null +++ b/docs/build/context-consumer.entry.js @@ -0,0 +1,25 @@ +import { r as registerInstance, i as getElement } from './index-93b10a2a.js'; + +const ContextConsumer = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.context = {}; + this.renderer = () => null; + } + connectedCallback() { + if (this.subscribe != null) { + this.unsubscribe = this.subscribe(this.el, 'context'); + } + } + disconnectedCallback() { + if (this.unsubscribe != null) { + this.unsubscribe(); + } + } + render() { + return this.renderer(Object.assign({}, this.context)); + } + get el() { return getElement(this); } +}; + +export { ContextConsumer as context_consumer }; diff --git a/docs/build/css-shim-5ce2b5c4.js b/docs/build/css-shim-5ce2b5c4.js new file mode 100644 index 0000000..7e231d0 --- /dev/null +++ b/docs/build/css-shim-5ce2b5c4.js @@ -0,0 +1,4 @@ +/* + Stencil Client Patch v1.17.4 | MIT Licensed | https://stenciljs.com + */ +var StyleNode=function(){this.start=0,this.end=0,this.previous=null,this.parent=null,this.rules=null,this.parsedCssText="",this.cssText="",this.atRule=!1,this.type=0,this.keyframesName="",this.selector="",this.parsedSelector="";};function parse(e){return parseCss(lex(e=clean(e)),e)}function clean(e){return e.replace(RX.comments,"").replace(RX.port,"")}function lex(e){var t=new StyleNode;t.start=0,t.end=e.length;for(var r=t,n=0,s=e.length;n0?a.join(",").trim():void 0}}function compileVar(e,t,r){var n=parseVar(e,r);if(!n)return t.push(e.substring(r,e.length)),e.length;var s=n.propName,o=null!=n.fallback?compileTemplate(n.fallback):void 0;return t.push(e.substring(r,n.start),(function(e){return resolveVar(e,s,o)})),n.end}function executeTemplate(e,t){for(var r="",n=0;n0&&e.parsedSelector.split(",").forEach((function(e){e=e.trim(),r.push({selector:e,declarations:n,specificity:computeSpecificity(),nu:t});})),t++;})),r}function computeSpecificity(e){return 1}var IMPORTANT="!important",FIND_DECLARATIONS=/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};{])+)|\{([^}]*)\}(?:(?=[;\s}])|$))/gm;function getDeclarations(e){for(var t,r=[];t=FIND_DECLARATIONS.exec(e.trim());){var n=normalizeValue(t[2]),s=n.value,o=n.important;r.push({prop:t[1].trim(),value:compileTemplate(s),important:o});}return r}function normalizeValue(e){var t=(e=e.replace(/\s+/gim," ").trim()).endsWith(IMPORTANT);return t&&(e=e.substr(0,e.length-IMPORTANT.length).trim()),{value:e,important:t}}function getActiveSelectors(e,t,r){var n=[],s=getScopesForElement(t,e);return r.forEach((function(e){return n.push(e)})),s.forEach((function(e){return n.push(e)})),sortSelectors(getSelectorsForScopes(n).filter((function(t){return matches(e,t.selector)})))}function getScopesForElement(e,t){for(var r=[];t;){var n=e.get(t);n&&r.push(n),t=t.parentElement;}return r}function getSelectorsForScopes(e){var t=[];return e.forEach((function(e){t.push.apply(t,e.selectors);})),t}function sortSelectors(e){return e.sort((function(e,t){return e.specificity===t.specificity?e.nu-t.nu:e.specificity-t.specificity})),e}function matches(e,t){return ":root"===t||"html"===t||e.matches(t)}function parseCSS(e){var t=parse(e),r=compileTemplate(e);return {original:e,template:r,selectors:getSelectors(t),usesCssVars:r.length>1}}function addGlobalStyle(e,t){if(e.some((function(e){return e.styleEl===t})))return !1;var r=parseCSS(t.textContent);return r.styleEl=t,e.push(r),!0}function updateGlobalScopes(e){var t=resolveValues(getSelectorsForScopes(e));e.forEach((function(e){e.usesCssVars&&(e.styleEl.textContent=executeTemplate(e.template,t));}));}function reScope(e,t){var r=e.template.map((function(r){return "string"==typeof r?replaceScope(r,e.scopeId,t):r})),n=e.selectors.map((function(r){return Object.assign(Object.assign({},r),{selector:replaceScope(r.selector,e.scopeId,t)})}));return Object.assign(Object.assign({},e),{template:r,selectors:n,scopeId:t})}function replaceScope(e,t,r){return e=replaceAll(e,"\\."+t,"."+r)}function replaceAll(e,t,r){return e.replace(new RegExp(t,"g"),r)}function loadDocument(e,t){return loadDocumentStyles(e,t),loadDocumentLinks(e,t).then((function(){updateGlobalScopes(t);}))}function startWatcher(e,t){"undefined"!=typeof MutationObserver&&new MutationObserver((function(){loadDocumentStyles(e,t)&&updateGlobalScopes(t);})).observe(document.head,{childList:!0});}function loadDocumentLinks(e,t){for(var r=[],n=e.querySelectorAll('link[rel="stylesheet"][href]:not([data-no-shim])'),s=0;s-1||CSS_VARIABLE_REGEXP.test(e)}var CSS_URL_REGEXP=/url[\s]*\([\s]*['"]?(?!(?:https?|data)\:|\/)([^\'\"\)]*)[\s]*['"]?\)[\s]*/gim;function hasRelativeUrls(e){return CSS_URL_REGEXP.lastIndex=0,CSS_URL_REGEXP.test(e)}function fixRelativeUrls(e,t){var r=t.replace(/[^/]*$/,"");return e.replace(CSS_URL_REGEXP,(function(e,t){var n=r+t;return e.replace(t,n)}))}var CustomStyle=function(){function e(e,t){this.win=e,this.doc=t,this.count=0,this.hostStyleMap=new WeakMap,this.hostScopeMap=new WeakMap,this.globalScopes=[],this.scopesMap=new Map,this.didInit=!1;}return e.prototype.i=function(){var e=this;return this.didInit||!this.win.requestAnimationFrame?Promise.resolve():(this.didInit=!0,new Promise((function(t){e.win.requestAnimationFrame((function(){startWatcher(e.doc,e.globalScopes),loadDocument(e.doc,e.globalScopes).then((function(){return t()}));}));})))},e.prototype.addLink=function(e){var t=this;return addGlobalLink(this.doc,this.globalScopes,e).then((function(){t.updateGlobal();}))},e.prototype.addGlobalStyle=function(e){addGlobalStyle(this.globalScopes,e)&&this.updateGlobal();},e.prototype.createHostStyle=function(e,t,r,n){if(this.hostScopeMap.has(e))throw new Error("host style already created");var s=this.registerHostTemplate(r,t,n),o=this.doc.createElement("style");return o.setAttribute("data-no-shim",""),s.usesCssVars?n?(o["s-sc"]=t=s.scopeId+"-"+this.count,o.textContent="/*needs update*/",this.hostStyleMap.set(e,o),this.hostScopeMap.set(e,reScope(s,t)),this.count++):(s.styleEl=o,s.usesCssVars||(o.textContent=executeTemplate(s.template,{})),this.globalScopes.push(s),this.updateGlobal(),this.hostScopeMap.set(e,s)):o.textContent=r,o},e.prototype.removeHost=function(e){var t=this.hostStyleMap.get(e);t&&t.remove(),this.hostStyleMap.delete(e),this.hostScopeMap.delete(e);},e.prototype.updateHost=function(e){var t=this.hostScopeMap.get(e);if(t&&t.usesCssVars&&t.isScoped){var r=this.hostStyleMap.get(e);if(r){var n=resolveValues(getActiveSelectors(e,this.hostScopeMap,this.globalScopes));r.textContent=executeTemplate(t.template,n);}}},e.prototype.updateGlobal=function(){updateGlobalScopes(this.globalScopes);},e.prototype.registerHostTemplate=function(e,t,r){var n=this.scopesMap.get(t);return n||((n=parseCSS(e)).scopeId=t,n.isScoped=r,this.scopesMap.set(t,n)),n},e}();!function(e){!e||e.__cssshim||e.CSS&&e.CSS.supports&&e.CSS.supports("color","var(--c)")||(e.__cssshim=new CustomStyle(e,e.document));}("undefined"!=typeof window&&window); diff --git a/docs/build/disqus-comments.entry.js b/docs/build/disqus-comments.entry.js new file mode 100644 index 0000000..2ba61d2 --- /dev/null +++ b/docs/build/disqus-comments.entry.js @@ -0,0 +1,49 @@ +import { r as registerInstance, h, j as Host } from './index-93b10a2a.js'; + +const disqusCommentsCss = ":host{display:block}"; + +const DisqusComments = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.setScriptEl = (el) => { + this.targetEl = el; + }; + } + componentDidLoad() { + var _a; + const script = ` + var disqus_config = function () { + this.page.url = '${this.url}'; // Replace PAGE_URL with your page's canonical URL variable + this.page.identifier = '${this.siteId}'; // Replace PAGE_IDENTIFIER with your page's unique identifier variable + }; + + (function() { + var d = document, s = d.createElement('script'); + s.src = 'https://${this.siteId}.disqus.com/embed.js'; + s.setAttribute('data-timestamp', +new Date()); + (d.head || d.body).appendChild(s); + })(); + `; + this.scriptEl = document.createElement('script'); + this.scriptEl.type = 'text/javascript'; + this.scriptEl.innerHTML = script; + (_a = this.targetEl) === null || _a === void 0 ? void 0 : _a.appendChild(this.scriptEl); + const disqusScript = document.createElement('script'); + disqusScript.id = 'dsq-count-scr'; + disqusScript.async = true; + disqusScript.src = `//${this.siteId}.disqus.com/count.js`; + this.disqusScriptEl = disqusScript; + document.body.appendChild(disqusScript); + } + componentDidUnload() { + var _a, _b, _c, _d; + (_b = (_a = this.scriptEl) === null || _a === void 0 ? void 0 : _a.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(this.scriptEl); + (_d = (_c = this.disqusScriptEl) === null || _c === void 0 ? void 0 : _c.parentNode) === null || _d === void 0 ? void 0 : _d.removeChild(this.disqusScriptEl); + } + render() { + return (h(Host, null, h("div", { id: "disqus_thread" }), h("div", { ref: (e) => this.setScriptEl(e) }), h("noscript", null, "Please enable JavaScript to view the", ' ', h("a", { href: "https://disqus.com/?ref_noscript" }, "comments powered by Disqus.")))); + } +}; +DisqusComments.style = disqusCommentsCss; + +export { DisqusComments as disqus_comments }; diff --git a/docs/build/dom-91ed8d21.js b/docs/build/dom-91ed8d21.js new file mode 100644 index 0000000..7c2772b --- /dev/null +++ b/docs/build/dom-91ed8d21.js @@ -0,0 +1,73 @@ +/* + Stencil Client Patch v1.17.4 | MIT Licensed | https://stenciljs.com + */ +(function(){ +var aa=new Set("annotation-xml color-profile font-face font-face-src font-face-uri font-face-format font-face-name missing-glyph".split(" "));function g(a){var b=aa.has(a);a=/^[a-z][.0-9_a-z]*-[\-.0-9_a-z]*$/.test(a);return !b&&a}function l(a){var b=a.isConnected;if(void 0!==b)return b;for(;a&&!(a.__CE_isImportDocument||a instanceof Document);)a=a.parentNode||(window.ShadowRoot&&a instanceof ShadowRoot?a.host:void 0);return !(!a||!(a.__CE_isImportDocument||a instanceof Document))} + function n(a,b){for(;b&&b!==a&&!b.nextSibling;)b=b.parentNode;return b&&b!==a?b.nextSibling:null} + function p(a,b,d){d=void 0===d?new Set:d;for(var c=a;c;){if(c.nodeType===Node.ELEMENT_NODE){var e=c;b(e);var f=e.localName;if("link"===f&&"import"===e.getAttribute("rel")){c=e.import;if(c instanceof Node&&!d.has(c))for(d.add(c),c=c.firstChild;c;c=c.nextSibling)p(c,b,d);c=n(a,e);continue}else if("template"===f){c=n(a,e);continue}if(e=e.__CE_shadowRoot)for(e=e.firstChild;e;e=e.nextSibling)p(e,b,d);}c=c.firstChild?c.firstChild:n(a,c);}}function r(a,b,d){a[b]=d;}function u(){this.a=new Map;this.g=new Map;this.c=[];this.f=[];this.b=!1;}function ba(a,b,d){a.a.set(b,d);a.g.set(d.constructorFunction,d);}function ca(a,b){a.b=!0;a.c.push(b);}function da(a,b){a.b=!0;a.f.push(b);}function v(a,b){a.b&&p(b,function(b){return w(a,b)});}function w(a,b){if(a.b&&!b.__CE_patched){b.__CE_patched=!0;for(var d=0;d0?e.setAttribute("class",t.join(" ")):e.removeAttribute("class");}return ""===t[0]&&t.splice(0,1),t.toggle=function(e,i){void 0!==i?i?t.add(e):t.remove(e):-1!==t.indexOf(e)?t.splice(t.indexOf(e),1):t.push(e),n();},t.add=function(){for(var e=[].slice.call(arguments),i=0,s=e.length;i (callback(win.confirm(message))); +const isModifiedEvent = (ev) => (ev.metaKey || ev.altKey || ev.ctrlKey || ev.shiftKey); +/** + * Returns true if the HTML5 history API is supported. Taken from Modernizr. + * + * https://github.com/Modernizr/Modernizr/blob/master/LICENSE + * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js + * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586 + */ +const supportsHistory = (win) => { + const ua = win.navigator.userAgent; + if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && + ua.indexOf('Mobile Safari') !== -1 && + ua.indexOf('Chrome') === -1 && + ua.indexOf('Windows Phone') === -1) { + return false; + } + return win.history && 'pushState' in win.history; +}; +/** + * Returns true if browser fires popstate on hash change. + * IE10 and IE11 do not. + */ +const supportsPopStateOnHashChange = (nav) => (nav.userAgent.indexOf('Trident') === -1); +/** + * Returns false if using go(n) with hash history causes a full page reload. + */ +const supportsGoWithoutReloadUsingHash = (nav) => (nav.userAgent.indexOf('Firefox') === -1); +const isExtraneousPopstateEvent = (nav, event) => (event.state === undefined && + nav.userAgent.indexOf('CriOS') === -1); +const storageAvailable = (win, type) => { + const storage = win[type]; + const x = '__storage_test__'; + try { + storage.setItem(x, x); + storage.removeItem(x); + return true; + } + catch (e) { + return e instanceof DOMException && ( + // everything except Firefox + e.code === 22 || + // Firefox + e.code === 1014 || + // test name field too, because code might not be present + // everything except Firefox + e.name === 'QuotaExceededError' || + // Firefox + e.name === 'NS_ERROR_DOM_QUOTA_REACHED') && + // acknowledge QuotaExceededError only if there's something already stored + storage.length !== 0; + } +}; + +export { supportsHistory as a, supportsPopStateOnHashChange as b, supportsGoWithoutReloadUsingHash as c, isModifiedEvent as d, getConfirmation as g, isExtraneousPopstateEvent as i, storageAvailable as s }; diff --git a/docs/build/footer-bar.entry.js b/docs/build/footer-bar.entry.js new file mode 100644 index 0000000..a2a75d3 --- /dev/null +++ b/docs/build/footer-bar.entry.js @@ -0,0 +1,20 @@ +import { r as registerInstance, h } from './index-93b10a2a.js'; +import './_commonjsHelpers-8f072dc7.js'; +import './index-ff62d206.js'; +import './Button-36d57e33.js'; +import { R as ResponsiveContainer } from './index-5421a3d1.js'; + +const footerBarCss = "footer-bar footer{width:100%;background:var(--color-white-lilac);flex:0 0 8em;}footer-bar .ui-container{display:flex;justify-content:space-between;align-items:center;padding-top:40px;padding-bottom:40px}footer-bar img{width:50%}footer-bar p{margin-top:0;margin-bottom:0;color:var(--color-cadet-blue);font-size:10px;letter-spacing:0}footer-bar .footer-menu a{transition:color 0.3s;font-size:11px;font-weight:600;text-decoration:none;color:var(--color-gull-gray)}footer-bar .footer-menu a:hover{color:var(--color-shark)}footer-bar .footer-menu a+a{margin-left:18px}@media screen and (max-width: 768px){footer-bar .ui-container{flex-direction:column-reverse;text-align:center}footer-bar .footer-menu{margin-bottom:36px}}"; + +const FooterBar = class { + constructor(hostRef) { + registerInstance(this, hostRef); + } + render() { + const cheatsheetUrl = `https://unpkg.com/ionicons@${this.version}/dist/cheatsheet.html`; + return (h("footer", null, h(ResponsiveContainer, null, h("div", { class: "footer__open-source" }, h("a", { href: "http://ionicframework.com/", title: "IonicFramework.com", rel: "noopener" }, h("img", { src: "/assets/img/ionic-os-logo.png", alt: "Ionic Open Source Logo" })), h("p", null, "Released under ", h("span", { id: "mit" }, "MIT License"), " | Copyright @", " ", new Date().getFullYear())), h("div", { class: "footer-menu" }, h("a", { href: cheatsheetUrl, target: "_blank", rel: "noopener noreferrer" }, "Cheatsheet"), h("a", { href: "https://github.com/ionic-team/ionicons/releases", target: "_blank", rel: "noopener noreferrer" }, "Release Notes"), h("a", { href: "/v1" }, "v1"), h("a", { href: "/v2" }, "v2"), h("a", { href: "https://ionicframework.com/docs/v3/ionicons/" }, "v3"), h("a", { href: "/v4/" }, "v4"), h("a", { href: "https://ionicframework.com/" }, "Ionic Framework"))))); + } +}; +FooterBar.style = footerBarCss; + +export { FooterBar as footer_bar }; diff --git a/docs/build/header-bar.entry.js b/docs/build/header-bar.entry.js new file mode 100644 index 0000000..6b7e3a7 --- /dev/null +++ b/docs/build/header-bar.entry.js @@ -0,0 +1,67 @@ +import { r as registerInstance, k as createEvent, h, i as getElement } from './index-93b10a2a.js'; +import './_commonjsHelpers-8f072dc7.js'; +import './index-ff62d206.js'; +import './Button-36d57e33.js'; +import { R as ResponsiveContainer } from './index-5421a3d1.js'; + +const headerBarCss = "header-bar{display:block;position:sticky;top:0;z-index:999}header-bar header{transition:border 0.6s;width:100%;left:0;right:0;background:#fff;border-bottom:1px solid transparent;height:64px}header-bar header.overlay{border-bottom:1px solid rgba(0, 0, 0, 0.05)}header-bar .ui-container,header-bar .logo,header-bar .logo a,header-bar nav{display:flex;align-items:center}header-bar .logo,header-bar nav{flex:0 0 auto}header-bar nav{align-items:baseline}header-bar icon-search{transition:opacity 0.5s;flex:1;padding-left:60px;padding-right:60px;opacity:0;pointer-events:none}header-bar .visible-search icon-search{opacity:1;pointer-events:auto}header-bar .ui-container{justify-content:space-between;padding-top:12px;padding-bottom:12px}header-bar .logo a{font-weight:700;font-size:16px;color:var(--color-shark)}header-bar .logo svg{margin-right:10px}header-bar .logo .version{margin-left:10px;font-size:10px;font-weight:600;color:var(--color-oslo-gray);background-color:var(--color-catskill-white);border-radius:4px;padding:1px 5px;position:relative;top:2px}header-bar a{text-decoration:none}header-bar nav+.btn,header-bar .nav__item+.nav__item{margin-left:30px}header-bar .nav__item{font-size:13px;font-weight:600}header-bar .nav__item,header-bar .nav__item a{transition:color 0.3s;color:var(--color-pale-sky)}header-bar .nav__item:hover,header-bar .nav__item a:not(.link-active):hover{color:var(--color-shark)}header-bar .nav__item .link-active{color:var(--color-heather);cursor:default}header-bar .nav__item svg{margin-left:6px}header-bar .nav__item svg #arrow{transition:0.2s transform}header-bar .nav__item:hover svg #arrow{transform:translate(1px, -1px)}header-bar .btn svg{margin-right:6px}header-bar .btn:hover svg #arrow{transform:translate(0, 1px)}header-bar .more{padding:0 8px;font-size:28px;line-height:28px;color:var(--color-dodger-blue);cursor:pointer;display:none}header-bar nav span.close{display:none;font-size:28px}@media screen and (max-width: 992px){header-bar nav>*+*{margin-left:18px}header-bar icon-search{padding-left:30px;padding-right:30px}}@media screen and (max-width: 768px){header-bar .btn.sm-hide{display:none}header-bar .more,header-bar .close{cursor:pointer}header-bar .more{display:block}header-bar nav+.btn,header-bar .nav__item+.nav__item{margin-left:0;margin-top:30px}header-bar nav{transition:opacity 0.3s;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:99999;background-image:linear-gradient(-223deg, #363e49 0%, #1c1e21 100%);display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;display:none}header-bar nav .close{margin:0;position:absolute;top:14px;right:18px;color:#fff;cursor:pointer}header-bar .nav__item{transition:transform 0.4s;transform:translateY(8px)}header-bar .nav__item,header-bar .nav__item a{font-size:28px;color:rgba(255, 255, 255, 0.9)}header-bar .nav__item .link-active{color:rgba(255, 255, 255, 0.3)}header-bar .nav__item:hover,header-bar .nav__item a:not(.link-active):hover{color:rgba(255, 255, 255, 0.9)}header-bar .nav__item svg #bg{opacity:0.2}header-bar nav.show-mobile-menu{opacity:1}header-bar nav.show-mobile-menu .nav__item{transform:translateY(0)}header-bar nav.show-mobile-menu .close{display:block}header-bar icon-search{padding-left:20px;padding-right:15px}}@media screen and (max-width: 520px){header-bar .version{display:none}}"; + +const HeaderBar = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.toggleHeaderSearch = createEvent(this, "toggleHeaderSearch", 7); + this.isSticky = false; + this.query = ''; + this.isSearchVisible = false; + } + handleScroll() { + requestAnimationFrame(this.checkScroll.bind(this)); + } + handleResize() { + requestAnimationFrame(() => { + if (window.innerWidth > 768) { + const menu = this.el.querySelector('nav'); + menu.style.display = ''; + this.el.classList.remove('show-mobile-menu'); + document.body.classList.remove('no-scroll'); + this.isMobileMenuShown = false; + } + }); + } + checkScroll() { + const scrollTop = document.documentElement.scrollTop || document.body.scrollTop; + this.isSticky = (scrollTop > 30); + } + showNav() { + if (this.isMobileMenuShown) + return; + this.isMobileMenuShown = true; + const menu = this.el.querySelector('nav'); + menu.style.display = 'flex'; + setTimeout(() => { + menu.classList.add('show-mobile-menu'); + document.body.classList.add('no-scroll'); + }, 1); + } + hideNav() { + if (!this.isMobileMenuShown) + return; + this.isMobileMenuShown = false; + const menu = this.el.querySelector('nav'); + menu.classList.remove('show-mobile-menu'); + setTimeout(() => { + menu.style.display = 'none'; + document.body.classList.remove('no-scroll'); + }, 300); + } + render() { + return (h("header", { class: `${this.isSearchVisible ? 'visible-search' : ''} ${this.isSticky ? 'overlay' : ''}` }, h(ResponsiveContainer, null, h("div", { class: "logo" }, h("stencil-route-link", { url: "/", exact: true }, h("svg", { width: "117", height: "32", viewBox: "0 0 117 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M42.2832 11.6686C43.3555 11.6686 44.1276 10.9177 44.1276 9.84502C44.1276 8.77233 43.3555 8 42.2832 8C41.2108 8 40.4387 8.77233 40.4387 9.84502C40.4387 10.9177 41.2108 11.6686 42.2832 11.6686ZM40.7604 23.7427H43.8059V12.5009H40.7604V23.7427Z", fill: "#03060B" }), h("path", { d: "M60.2522 12.5009H57.4427V23.7427H60.4882V17.3065C60.4882 15.8048 61.3031 14.8608 62.783 14.8608C64.1341 14.8608 64.6918 15.7619 64.6918 17.0705V23.7427H67.7372V16.7273C67.7372 14.0456 66.3003 12.2435 63.598 12.2435C61.9251 12.2435 60.767 12.9085 60.2522 13.8739V12.5009Z", fill: "#03060B" }), h("path", { d: "M70.2976 11.6687C71.37 11.6687 72.142 10.9178 72.142 9.84512C72.142 8.77244 71.37 8.0001 70.2976 8.0001C69.2253 8.0001 68.4532 8.77244 68.4532 9.84512C68.4532 10.9178 69.2253 11.6687 70.2976 11.6687ZM68.7749 23.7427H71.8204V12.5009H68.7749V23.7427Z", fill: "#03060B" }), h("path", { d: "M72.7047 18.1218C72.7047 21.4686 75.0854 24.0001 78.3453 24.0001C81.8412 24.0001 83.4926 21.5329 83.707 19.6235H80.5758C80.3399 20.589 79.4391 21.2969 78.3239 21.2969C76.6939 21.2969 75.7502 20.0097 75.7502 18.1218C75.7502 16.2339 76.6939 14.9466 78.3239 14.9466C79.4391 14.9466 80.3399 15.6546 80.5758 16.62H83.707C83.4926 14.7106 81.8412 12.2435 78.3453 12.2435C75.0854 12.2435 72.7047 14.775 72.7047 18.1218Z", fill: "#03060B" }), h("path", { d: "M99.268 12.5009H96.4585V23.7427H99.5039V17.3065C99.5039 15.8048 100.319 14.8608 101.799 14.8608C103.15 14.8608 103.708 15.7619 103.708 17.0705V23.7427H106.753V16.7273C106.753 14.0456 105.316 12.2435 102.614 12.2435C100.941 12.2435 99.7827 12.9085 99.268 13.8739V12.5009Z", fill: "#03060B" }), h("path", { d: "M112.177 24.0001C115.223 24.0001 116.939 22.4125 116.939 20.3959C116.939 15.7833 110.719 17.6712 110.719 15.7833C110.719 15.1612 111.277 14.6892 112.263 14.6892C113.357 14.6892 113.893 15.3328 113.958 16.0408H116.896C116.81 14.3888 115.652 12.2435 112.285 12.2435C109.518 12.2435 107.781 13.9168 107.781 15.955C107.781 20.4173 114.022 18.6367 114.022 20.5246C114.022 21.1468 113.421 21.5544 112.263 21.5544C110.998 21.5544 110.44 20.8464 110.397 20.0955H107.309C107.459 22.198 108.66 24.0001 112.177 24.0001Z", fill: "#03060B" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M50.6194 21.1354C52.2808 21.1354 53.6277 19.7885 53.6277 18.1271C53.6277 16.4656 52.2808 15.1188 50.6194 15.1188C48.958 15.1188 47.6111 16.4656 47.6111 18.1271C47.6111 19.7885 48.958 21.1354 50.6194 21.1354ZM50.6194 24.0001C53.863 24.0001 56.4925 21.3707 56.4925 18.1271C56.4925 14.8835 53.863 12.254 50.6194 12.254C47.3758 12.254 44.7463 14.8835 44.7463 18.1271C44.7463 21.3707 47.3758 24.0001 50.6194 24.0001Z", fill: "#03060B" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M89.8251 21.1354C91.4866 21.1354 92.8334 19.7885 92.8334 18.1271C92.8334 16.4656 91.4866 15.1188 89.8251 15.1188C88.1637 15.1188 86.8168 16.4656 86.8168 18.1271C86.8168 19.7885 88.1637 21.1354 89.8251 21.1354ZM89.8251 24.0001C93.0687 24.0001 95.6982 21.3707 95.6982 18.1271C95.6982 14.8835 93.0687 12.254 89.8251 12.254C86.5815 12.254 83.9521 14.8835 83.9521 18.1271C83.9521 21.3707 86.5815 24.0001 89.8251 24.0001Z", fill: "#03060B" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M16 3.5C9.09644 3.5 3.5 9.09644 3.5 16C3.5 22.9036 9.09644 28.5 16 28.5C22.9036 28.5 28.5 22.9036 28.5 16C28.5 15.0785 28.4005 14.182 28.2123 13.32L31.1433 12.68C31.3771 13.7509 31.5 14.862 31.5 16C31.5 24.5604 24.5604 31.5 16 31.5C7.43959 31.5 0.5 24.5604 0.5 16C0.5 7.43959 7.43959 0.5 16 0.5C19.793 0.5 23.2712 1.86431 25.9649 4.12727L24.0351 6.42427C21.8618 4.59841 19.0611 3.5 16 3.5Z", fill: "#3880FF" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M27 4.66664C25.7114 4.66664 24.6667 5.71131 24.6667 6.99998C24.6667 8.28864 25.7114 9.33331 27 9.33331C28.2887 9.33331 29.3334 8.28864 29.3334 6.99998C29.3334 5.71131 28.2887 4.66664 27 4.66664ZM24 7.49998C24 3.63398 23.134 5 27 5C30.866 5 34 3.13398 34 6.99998C34 10.866 30.866 14 27 14C23.134 14 24 11.366 24 7.49998Z", fill: "white" }), h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M27 5.5C26.1716 5.5 25.5 6.17157 25.5 7C25.5 7.82843 26.1716 8.5 27 8.5C27.8284 8.5 28.5 7.82843 28.5 7C28.5 6.17157 27.8284 5.5 27 5.5ZM22.5 7C22.5 4.51472 24.5147 2.5 27 2.5C29.4853 2.5 31.5 4.51472 31.5 7C31.5 9.48528 29.4853 11.5 27 11.5C24.5147 11.5 22.5 9.48528 22.5 7Z", fill: "#194BFD" }), h("circle", { cx: "16", cy: "16", r: "6", stroke: "#0CADFF", "stroke-width": "3" }))), h("span", { class: "version" }, this.version)), h("icon-search", { query: this.query, size: "small" }), h("nav", null, h("stencil-route-link", { class: "nav__item", url: "/", exact: true, onClick: this.hideNav.bind(this) }, "Icons"), h("stencil-route-link", { class: "nav__item", url: "/usage", onClick: () => { + this.toggleHeaderSearch.emit('hide'); + this.hideNav(); + } }, "Usage"), h("a", { class: "nav__item", href: "https://github.com/ionic-team/ionicons" }, "GitHub", h("svg", { width: "12px", height: "12px", viewBox: "0 0 12 12", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, h("g", { transform: "translate(0,1)" }, h("rect", { id: "bg", fill: "#e3e8f1", x: "0", y: "2", width: "9", height: "9", rx: "1.5" }), h("path", { d: "M9.18198052,1 L6.5,1 L6.5,0 L11,0 L11,1 L11,4.5 L10,4.5 L10,1.59619408 L4.02512627,7.57106781 L3.31801948,6.86396103 L9.18198052,1 Z", id: "arrow", fill: "#A4AEC3" })))), h("span", { class: "close", onClick: this.hideNav.bind(this) }, h("i", { class: "ion ion-md-close" }))), h("a", { class: "btn sm-hide download-link", href: "/ionicons.designerpack.zip", download: `ionicons-${this.version}.designerpack.zip` }, h("svg", { width: "9px", height: "11px", viewBox: "0 0 9 11", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, h("g", null, h("rect", { id: "bg", fill: "#BAC3D1", x: "0", y: "9", width: "9", height: "2", rx: "1" }), h("path", { d: "M5,6.26776695 L7.26776695,4 L7.97487373,4.70710678 L4.70710678,7.97487373 L4.48743687,7.75520382 L4.26776695,7.97487373 L1,4.70710678 L1.70710678,4 L4,6.29289322 L4,0 L5,0 L5,6.26776695 Z", id: "arrow", fill: "#94A0B8" }))), "Designer pack"), h("span", { class: "more", onClick: this.showNav.bind(this) }, h("i", { class: "ion ion-md-more" }))))); + } + get el() { return getElement(this); } +}; +HeaderBar.style = headerBarCss; + +export { HeaderBar as header_bar }; diff --git a/docs/build/icon-list.entry.js b/docs/build/icon-list.entry.js new file mode 100644 index 0000000..7c7abd7 --- /dev/null +++ b/docs/build/icon-list.entry.js @@ -0,0 +1,104 @@ +import { r as registerInstance, h, i as getElement } from './index-93b10a2a.js'; + +const iconListCss = "icon-list .icon-list{margin-bottom:100px}icon-list .icon-list__search+.icon-list__wrapper{padding-top:90px}icon-list .icon-list__header-bar{transition:box-shadow 0.6s;margin-bottom:14px;height:52px;background-color:#fff;box-shadow:0;z-index:99}icon-list .icon-list__header-bar.sticky{position:sticky;top:58px;box-shadow:0px 2px 4px 0px rgba(0, 0, 0, 0.06)}icon-list .icon-list__header-bar .container--small{display:flex;justify-content:space-between}icon-list .icon-list__header-bar h4{margin-top:21px;margin-bottom:0}icon-list .icon-results{display:grid;grid-template-columns:repeat(auto-fill, minmax(70px, 1fr));grid-auto-rows:minmax(70px, auto);grid-gap:0.5em;padding-bottom:60px;margin-left:-20px;margin-right:-20px}icon-list .icon-results__cell,icon-list .icon-results .ion{display:inline-flex;align-items:center;justify-content:center}icon-list .icon-results__cell{transition:background-color 0.4s;cursor:pointer;border-radius:8px;border:2px solid transparent;box-sizing:border-box;-webkit-tap-highlight-color:rgba(236, 240, 246, 0.4)}icon-list .icon-results__cell svg{width:32px;height:32px;color:#373737}icon-list .icon-results__cell:not(.active).mouseOver{animation-name:shadowIn;animation-duration:0.3s;animation-fill-mode:forwards}@keyframes shadowIn{from{box-shadow:0}to{box-shadow:0px 3px 6px 0px rgba(0, 0, 0, 0.1), 0px 1px 3px 0px rgba(0, 0, 0, 0.08)}}icon-list .icon-results__cell:not(.active).mouseOff,icon-list .icon-results__cell.active{animation-name:shadowOut;animation-duration:0.6s;animation-fill-mode:forwards}icon-list .icon-results__cell.active{animation-duration:0.3s}@keyframes shadowOut{from{box-shadow:0px 3px 6px 0px rgba(0, 0, 0, 0.1), 0px 1px 3px 0px rgba(0, 0, 0, 0.08)}to{box-shadow:0}}icon-list .icon-results__cell.active{background-color:var(--color-catskill-white);cursor:default}icon-list .icon-results--empty{text-align:center;padding-top:70px}icon-list .icon-results--empty h2{margin-top:0}icon-list .toggle{list-style-type:none;display:flex;margin-right:-4px;position:relative;bottom:-3px;margin-top:18px}icon-list .toggle__item{transition:opacity 0.3s, padding-bottom 0.1s;opacity:0.5;text-decoration:none;font-size:13px;font-weight:600;color:var(--color-dodger-blue);border-bottom:2px solid transparent}icon-list .toggle__item:not(.active){cursor:pointer}icon-list .toggle__item:hover,icon-list .toggle__item.active{opacity:1}icon-list .toggle__item.active{border-bottom:2px solid var(--color-dodger-blue);padding-bottom:2px}icon-list .toggle__item+.toggle__item{margin-left:20px}icon-list .icon-list__header-bar.sticky .toggle__item{padding-bottom:11px}@media screen and (max-width: 768px){icon-list .icon-results{margin-left:0;margin-right:0}icon-list .icon-list__search+.icon-list__wrapper{padding-top:40px}}@media screen and (max-width: 560px){icon-list .icon-results__cell:not(.active).mouseOver,icon-list .icon-results__cell:not(.active).mouseOff,icon-list .icon-results__cell.active{animation-name:none;box-shadow:0}}"; + +const LandingPage = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.selectedIcon = ''; + this.selectedIconType = 'outline'; + this.isHeaderSearchVisible = false; + this.query = ''; + } + escListener(ev) { + if (ev.code === 'Escape' && this.selectedIcon.length) + this.selectedIcon = ''; + } + handleBodyClicked() { + if (this.selectedIcon.length) + this.selectedIcon = ''; + } + handleClearToast() { + this.selectedIcon = ''; + } + handleScroll() { + requestAnimationFrame(this.checkScroll.bind(this)); + } + checkScroll() { + const headerBars = this.el.querySelectorAll('.icon-list__header-bar'); + for (let i = 0; i < headerBars.length; i++) { + const bar = headerBars[i]; + if (bar.getBoundingClientRect().top < 67) { + bar.classList.add('sticky'); + } + else { + bar.classList.remove('sticky'); + } + } + } + filterIcons() { + const search = this.query.trim().toLowerCase(); + const results = { + icon: [], + logo: [] + }; + this.data.icons.forEach((iconData) => { + if (search === '' || iconData.tags.some((t) => t.indexOf(search) > -1)) { + const iconType = iconData.name.substr(0, iconData.name.indexOf('-')); + switch (iconType) { + case 'logo': + results['logo'].push({ name: iconData.name }); + break; + default: + results['icon'].push({ name: iconData.name }); + return; + } + } + }); + return results; + } + handleIconMouseEnter(ev) { + ev.target.classList.remove('mouseOff'); + ev.target.classList.add('mouseOver'); + } + handleIconMouseLeave(ev) { + ev.target.classList.remove('mouseOver'); + ev.target.classList.add('mouseOff'); + } + handleIconClick(ev, name) { + ev.stopPropagation(); + this.selectedIcon = name; + } + handleToggleClick(ev, type) { + ev.stopPropagation(); + this.selectedIconType = type; + } + render() { + const results = this.filterIcons(); + const selectedIcon = this.data.icons.find(o => o.name === this.selectedIcon); + let typeSuffix; + switch (this.selectedIconType) { + case 'outline': + typeSuffix = '-outline'; + break; + case 'sharp': + typeSuffix = '-sharp'; + break; + default: + typeSuffix = ''; + } + if (!results.icon.length && !results.logo.length && this.isHeaderSearchVisible) + document.documentElement.scrollTop = 0; + return (h("div", { class: "icon-list" }, h("div", { class: "icon-list__search container--small" }, h("icon-search", { query: this.query, size: "large", autoFocus: "autofocus" })), results.icon.length ? + h("div", { class: "icon-list__wrapper" }, h("div", { class: "icon-list__header-bar" }, h("div", { class: "container--small" }, h("h4", null, "App icons"), h("ul", { class: "toggle" }, h("li", { class: `toggle__item ${(this.selectedIconType === 'outline') ? 'active' : ''}`, onClick: ev => this.handleToggleClick(ev, 'outline') }, "Outline"), h("li", { class: `toggle__item ${(this.selectedIconType === 'filled') ? 'active' : ''}`, onClick: ev => this.handleToggleClick(ev, 'filled') }, "Filled"), h("li", { class: `toggle__item ${(this.selectedIconType === 'sharp') ? 'active' : ''}`, onClick: ev => this.handleToggleClick(ev, 'sharp') }, "Sharp")))), h("div", { class: "container--small" }, h("div", { class: "icon-results" }, results.icon.map(icon => (h("span", { class: `icon-results__cell ${(this.selectedIcon === icon.name) ? 'active' : ''}`, onClick: (ev) => this.handleIconClick(ev, icon.name), onMouseEnter: (ev) => this.handleIconMouseEnter(ev), onMouseLeave: (ev) => this.handleIconMouseLeave(ev) }, h("svg", null, h("use", { xlinkHref: `#${icon.name + typeSuffix}` })))))))) + : '', results.logo.length ? + h("div", { class: "icon-list__wrapper" }, h("div", { class: "icon-list__header-bar" }, h("div", { class: "container--small" }, h("h4", null, "Logos"))), h("div", { class: "container--small" }, h("div", { class: "icon-results" }, results.logo.map(icon => (h("span", { class: `icon-results__cell ${(this.selectedIcon === icon.name) ? 'active' : ''}`, onClick: (ev) => this.handleIconClick(ev, icon.name), onMouseEnter: (ev) => this.handleIconMouseEnter(ev), onMouseLeave: (ev) => this.handleIconMouseLeave(ev) }, h("svg", null, h("use", { xlinkHref: `#${icon.name}` })))))))) + : '', (!results.icon.length && !results.logo.length) ? + h("div", { class: "icon-results--empty container--small" }, h("h2", null, "No results for \"", this.query, "\""), h("p", null, "Not finding an icon that you want? ", h("a", { href: "https://github.com/ionic-team/ionicons/issues" }, "File an issue"), " and suggest a new icon.")) + : '', h("toast-bar", { selectedIcon: selectedIcon, selectedIconType: this.selectedIconType, typeSuffix: typeSuffix, version: this.data.version }))); + } + get el() { return getElement(this); } +}; +LandingPage.style = iconListCss; + +export { LandingPage as icon_list }; diff --git a/docs/build/icon-search.entry.js b/docs/build/icon-search.entry.js new file mode 100644 index 0000000..15ddf57 --- /dev/null +++ b/docs/build/icon-search.entry.js @@ -0,0 +1,50 @@ +import { r as registerInstance, k as createEvent, e as Build, h } from './index-93b10a2a.js'; + +const iconSearchCss = "icon-search .search-input{position:relative}icon-search .search-input input{width:100%;font-weight:400;font-family:\"Eina\";font-size:16px;border:0;outline:0;border-radius:6px;box-sizing:border-box;display:block;-webkit-appearance:none;vertical-align:middle}icon-search .search-input__clear{transition:background 0.3s, opacity 0.3s;position:absolute;top:50%;transform:translateY(-50%);right:16px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-pale-sky);opacity:0;background-color:var(--color-catskill-white);border-radius:100px}icon-search .search-input__clear svg{width:16px;height:16px}icon-search .search-input__clear--active{opacity:0.8}icon-search .search-input__clear--active:hover{opacity:1;background-color:#e3e9f3}icon-search .search-input--small .search-input__clear{width:18px;height:18px;background-color:#e3e9f3;right:12px}icon-search .search-input--small .search-input__clear svg{width:14px;height:14px}icon-search .search-input--small .search-input__clear--active:hover{background-color:#dce3f0}icon-search .search-input__icon svg{color:var(--color-heather);position:absolute;height:20px;width:20px;top:50%;transform:translateY(-50%);left:16px}icon-search .search-input--small .search-input__icon svg{width:16px;height:16px;left:8px}icon-search .search-input--small input{font-size:13px;line-height:18px;padding:10px;padding-left:30px;padding-right:30px;background-color:#f6f7f9;height:39px;text-indent:0}icon-search .search-input--large input{transition:box-shadow 0.3s;font-size:16px;line-height:22px;padding:20px;padding-left:50px;padding-right:50px;background-color:white;box-shadow:0px 3px 6px 0px rgba(0, 0, 0, 0.1), 0px 1px 3px 0px rgba(0, 0, 0, 0.08)}icon-search .search-input--large input:focus{box-shadow:0px 6px 12px 0px rgba(0, 0, 0, 0.1), 0px 1px 3px 0px rgba(0, 0, 0, 0.08)}icon-search .search-input--large:before{font-size:22px;left:20px}icon-search .search-input input::placeholder{color:var(--color-heather)}"; + +const IconSearch = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.hasSearched = createEvent(this, "hasSearched", 7); + this.query = ''; + this.size = 'small'; + this.autoFocus = 'none'; + this.showClearCtrl = false; + this.handleKeyUp = (e) => { + if (e.keyCode === 27) { + this.handleClear(); + return; + } + }; + this.handleInput = (e) => { + const value = e.target.value; + this.hasSearched.emit(value); + }; + } + watchQuery() { + this.showClearCtrl = (this.query.length > 0) ? true : false; + } + componentDidLoad() { + if (Build.isBrowser) { + this.searchRef && this.searchRef.focus(); + } + } + handleClear() { + this.hasSearched.emit(''); + } + componentWillLoad() { + this.watchQuery(); + } + render() { + return (h("div", { class: `search-input search-input--${this.size}` }, h("i", { class: "search-input__icon" }, h("svg", null, h("use", { xlinkHref: `#search-outline` }))), h("input", { ref: e => this.searchRef = e, type: "text", placeholder: "Search icons...", value: this.query, onKeyUp: this.handleKeyUp, onInput: this.handleInput, autofocus: this.autoFocus === 'autofocus' ? 'autofocus' : '' }), h("i", { class: { + 'search-input__clear': true, + 'search-input__clear--active': this.showClearCtrl, + }, onClick: this.handleClear.bind(this) }, h("svg", null, h("use", { xlinkHref: `#close-outline` }))))); + } + static get watchers() { return { + "query": ["watchQuery"] + }; } +}; +IconSearch.style = iconSearchCss; + +export { IconSearch as icon_search }; diff --git a/docs/build/index-5421a3d1.js b/docs/build/index-5421a3d1.js new file mode 100644 index 0000000..3dc867f --- /dev/null +++ b/docs/build/index-5421a3d1.js @@ -0,0 +1,264 @@ +import { h } from './index-93b10a2a.js'; +import { a as applyProps } from './Button-36d57e33.js'; + +const Blockquote = (props, children) => (h("blockquote", Object.assign({}, applyProps(props, { class: 'ui-blockquote' })), children)); + +const Breadcrumbs = (props, children) => (h("ul", Object.assign({}, applyProps(props, { class: 'ui-breadcrumbs' })), children)); + +var __rest = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const Breakpoint = (_a, children) => { + var { xs, sm, md, lg, xl, display = 'block' } = _a, props = __rest(_a, ["xs", "sm", "md", "lg", "xl", "display"]); + const Tag = display === 'inline' ? 'span' : 'div'; + //cascade values up breakpoints + xs = xs !== undefined ? xs : false; + sm = sm !== undefined ? sm : xs; + md = md !== undefined ? md : sm; + lg = lg !== undefined ? lg : md; + xl = xl !== undefined ? xl : lg; + const breakpoints = [['xs', xs], ['sm', sm], ['md', md], ['lg', lg], ['xl', xl]]; + //Combine classes into string based on breakpoint values + const className = breakpoints.reduce((acc, cur) => `${acc} ${cur[1] ? `ui-breakpoint-${cur[0]}` : ``}`, 'ui-breakpoint'); + return (h(Tag, Object.assign({}, applyProps(props, { class: className }), { style: { '--display': display } }), children)); +}; + +const AnchorButton = (props, children) => h("a", Object.assign({}, applyProps(props, { class: 'ui-button' })), children); + +const Card = (props, children) => (h("div", Object.assign({}, applyProps(props, { + class: `ui-card${props.embelish !== false ? ' ui-card--embelish' : ''}`, +})), children)); + +const CardContent = (props, children) => (h("div", Object.assign({}, applyProps(props, { class: 'ui-card-content' })), children)); + +var __rest$1 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const DateTime = (_a) => { + var { date, format = { + weekday: 'short', + year: 'numeric', + month: 'long', + day: 'numeric', + } } = _a, props = __rest$1(_a, ["date", "format"]); + const formatter = new Intl.DateTimeFormat('en-US', Object.assign({}, format)); + return h("time", Object.assign({}, applyProps(props, { class: 'ui-date' })), formatter.format(date)); +}; + +var __rest$2 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const applyClasses = (cols, xs, sm, md, lg) => { + const classes = []; + // General class, doesn't apply column behavior but + // can be useful for selectors + classes.push('ui-col'); + if (cols) { + classes.push(`ui-col-${cols}`); + } + else { + // If no "cols" is specified, add a default 12 to make content go full width + // in the smallest viewport sizes + classes.push(`ui-col-12`); + } + if (xs) { + classes.push(`ui-col-xs-${xs}`); + } + if (sm) { + classes.push(`ui-col-sm-${sm}`); + } + if (md) { + classes.push(`ui-col-md-${md}`); + } + if (lg) { + classes.push(`ui-col-lg-${lg}`); + } + return classes.join(' '); +}; +const Col = (_a, children) => { + var { cols, xs, sm, md, lg } = _a, props = __rest$2(_a, ["cols", "xs", "sm", "md", "lg"]); + return (h("div", Object.assign({}, applyProps(props, { class: applyClasses(cols, xs, sm, md, lg) })), children)); +}; + +var __rest$3 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +/* +interface GridProps { + bordered?: boolean; + + xsCols?: number | null; + smCols?: number | null; + mdCols?: number | null; + lgCols?: number | null; + + cols?: number; + [key: string]: any; +} + +const getColClasses = ( + xsCols: number | null, + smCols: number | null, + mdCols: number | null, + lgCols: number | null) => ( + [ ['xs', xsCols], ['sm', smCols], ['md', mdCols], ['lg', lgCols] ].reduce((str, c) => { + const ct = c[0]; + const cn = c[1]; + if (cn) { + return `${str} ui-grid-cols-${ct}-${cn}`; + } + return str; + }, '') + ); +*/ +const Grid = (_a, children) => { + var props = __rest$3(_a, []); + return h("div", Object.assign({}, applyProps(props, { class: `ui-grid` })), children); +}; + +// import { h } from '@stencil/core'; +const listeners = []; +const visible = []; +const observer = new IntersectionObserver((entries, observer) => { + entries.forEach((e) => { + if (e.intersectionRatio > 0) { + if (visible.indexOf(e.target) < 0) { + visible.push(e.target); + } + } + else { + visible.splice(visible.indexOf(e.target), 1); + } + }); + listeners.forEach((l) => l({ entries, observer, visible })); +}, { threshold: [0, 1] }); +const addListener = (listener) => listeners.push(listener); +const removeListener = (listener) => listeners.splice(listeners.indexOf(listener), 1); +const observe = (el) => el && observer.observe(el); + +var __rest$4 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const Heading = (_a, children) => { + var { level = 3, poster = false, as } = _a, props = __rest$4(_a, ["level", "poster", "as"]); + const Tag = as ? as : (poster ? 'h1' : `h${level}`); + const classes = [ + `ui-heading`, + `${poster ? `ui-poster-${level}` : `ui-heading-${level}`}` + ]; + return (h(Tag, Object.assign({}, applyProps(props, { class: classes.join(' ') }), { ref: (e) => observe(e) }), children)); +}; + +var __rest$5 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const Paragraph = (_a, children) => { + var { level = 3, leading = 'body' } = _a, props = __rest$5(_a, ["level", "leading"]); + const classes = [ + `ui-paragraph`, + `ui-paragraph-${level}`, + `ui-paragraph--${leading}`, + ]; + return (h("p", Object.assign({}, applyProps(props, { class: classes.join(' ') })), children)); +}; + +var __rest$6 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const ResponsiveContainer = (_a, children) => { + var { as = 'div' } = _a, props = __rest$6(_a, ["as"]); + const Tag = as; + return h(Tag, Object.assign({}, applyProps(props, { class: 'ui-container' })), children); +}; + +var __rest$7 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const Skeleton = (_a, children) => { + var { animated = true } = _a, props = __rest$7(_a, ["animated"]); + return (h("div", Object.assign({}, applyProps(props, { class: `ui-skeleton${animated ? ` ui-skeleton--animated` : ``}` })), children)); +}; + +const Text = (props, children) => h("p", Object.assign({}, applyProps(props, { class: 'ui-text' })), children); + +var __rest$8 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const ThemeProvider = (_a, children) => { + var { type = 'base' } = _a, props = __rest$8(_a, ["type"]); + return (h("div", Object.assign({}, applyProps(props, { class: `ui-theme--${type}` })), children)); +}; + +export { Blockquote as B, Col as C, Grid as G, Heading as H, Paragraph as P, ResponsiveContainer as R, ThemeProvider as T, Card as a, CardContent as b, Breakpoint as c }; diff --git a/docs/build/index-93b10a2a.js b/docs/build/index-93b10a2a.js new file mode 100644 index 0000000..a429a8c --- /dev/null +++ b/docs/build/index-93b10a2a.js @@ -0,0 +1,2830 @@ +const NAMESPACE = 'ionicons-site'; +const BUILD = /* ionicons-site */ { allRenderFn: false, appendChildSlotFix: false, asyncLoading: true, asyncQueue: true, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: true, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: false, cssAnnotations: true, cssVarShim: true, devTools: true, disconnectedCallback: true, dynamicImportShim: true, element: false, event: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: true, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, initializeNextTick: true, isDebug: false, isDev: true, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: true, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, safari10: true, scoped: true, scriptDataOpts: true, shadowDelegatesFocus: false, shadowDom: false, shadowDomShim: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true }; + +let scopeId; +let contentRef; +let hostTagName; +let i = 0; +let useNativeShadowDom = false; +let checkSlotFallbackVisibility = false; +let checkSlotRelocate = false; +let isSvgMode = false; +let renderingRef = null; +let queueCongestion = 0; +let queuePending = false; +const win = typeof window !== 'undefined' ? window : {}; +const CSS = BUILD.cssVarShim ? win.CSS : null; +const doc = win.document || { head: {} }; +const H = (win.HTMLElement || class { +}); +const plt = { + $flags$: 0, + $resourcesUrl$: '', + jmp: h => h(), + raf: h => requestAnimationFrame(h), + ael: (el, eventName, listener, opts) => el.addEventListener(eventName, listener, opts), + rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts), + ce: (eventName, opts) => new CustomEvent(eventName, opts), +}; +const supportsShadow = BUILD.shadowDomShim && BUILD.shadowDom ? /*@__PURE__*/ (() => (doc.head.attachShadow + '').indexOf('[native') > -1)() : true; +const supportsListenerOptions = /*@__PURE__*/ (() => { + let supportsListenerOptions = false; + try { + doc.addEventListener('e', null, Object.defineProperty({}, 'passive', { + get() { + supportsListenerOptions = true; + }, + })); + } + catch (e) { } + return supportsListenerOptions; +})(); +const promiseResolve = (v) => Promise.resolve(v); +const supportsConstructibleStylesheets = BUILD.constructableCSS + ? /*@__PURE__*/ (() => { + try { + new CSSStyleSheet(); + return true; + } + catch (e) { } + return false; + })() + : false; +const Context = {}; +const addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => { + if (BUILD.hostListener && listeners) { + // this is called immediately within the element's constructor + // initialize our event listeners on the host element + // we do this now so that we can listen to events that may + // have fired even before the instance is ready + if (BUILD.hostListenerTargetParent) { + // this component may have event listeners that should be attached to the parent + if (attachParentListeners) { + // this is being ran from within the connectedCallback + // which is important so that we know the host element actually has a parent element + // filter out the listeners to only have the ones that ARE being attached to the parent + listeners = listeners.filter(([flags]) => flags & 16 /* TargetParent */); + } + else { + // this is being ran from within the component constructor + // everything BUT the parent element listeners should be attached at this time + // filter out the listeners that are NOT being attached to the parent + listeners = listeners.filter(([flags]) => !(flags & 16 /* TargetParent */)); + } + } + listeners.map(([flags, name, method]) => { + const target = BUILD.hostListenerTarget ? getHostListenerTarget(elm, flags) : elm; + const handler = hostListenerProxy(hostRef, method); + const opts = hostListenerOpts(flags); + plt.ael(target, name, handler, opts); + (hostRef.$rmListeners$ = hostRef.$rmListeners$ || []).push(() => plt.rel(target, name, handler, opts)); + }); + } +}; +const hostListenerProxy = (hostRef, methodName) => (ev) => { + if (BUILD.lazyLoad) { + if (hostRef.$flags$ & 256 /* isListenReady */) { + // instance is ready, let's call it's member method for this event + hostRef.$lazyInstance$[methodName](ev); + } + else { + (hostRef.$queuedListeners$ = hostRef.$queuedListeners$ || []).push([methodName, ev]); + } + } + else { + hostRef.$hostElement$[methodName](ev); + } +}; +const getHostListenerTarget = (elm, flags) => { + if (BUILD.hostListenerTargetDocument && flags & 4 /* TargetDocument */) + return doc; + if (BUILD.hostListenerTargetWindow && flags & 8 /* TargetWindow */) + return win; + if (BUILD.hostListenerTargetBody && flags & 32 /* TargetBody */) + return doc.body; + if (BUILD.hostListenerTargetParent && flags & 16 /* TargetParent */) + return elm.parentElement; + return elm; +}; +// prettier-ignore +const hostListenerOpts = (flags) => supportsListenerOptions + ? ({ + passive: (flags & 1 /* Passive */) !== 0, + capture: (flags & 2 /* Capture */) !== 0, + }) + : (flags & 2 /* Capture */) !== 0; +const CONTENT_REF_ID = 'r'; +const ORG_LOCATION_ID = 'o'; +const SLOT_NODE_ID = 's'; +const TEXT_NODE_ID = 't'; +const HYDRATE_ID = 's-id'; +const HYDRATED_STYLE_ID = 'sty-id'; +const HYDRATE_CHILD_ID = 'c-id'; +const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}'; +const XLINK_NS = 'http://www.w3.org/1999/xlink'; +const createTime = (fnName, tagName = '') => { + if (BUILD.profile && performance.mark) { + const key = `st:${fnName}:${tagName}:${i++}`; + // Start + performance.mark(key); + // End + return () => performance.measure(`[Stencil] ${fnName}() <${tagName}>`, key); + } + else { + return () => { + return; + }; + } +}; +const uniqueTime = (key, measureText) => { + if (BUILD.profile && performance.mark) { + if (performance.getEntriesByName(key).length === 0) { + performance.mark(key); + } + return () => { + if (performance.getEntriesByName(measureText).length === 0) { + performance.measure(measureText, key); + } + }; + } + else { + return () => { + return; + }; + } +}; +const inspect = (ref) => { + const hostRef = getHostRef(ref); + if (!hostRef) { + return undefined; + } + const flags = hostRef.$flags$; + const hostElement = hostRef.$hostElement$; + return { + renderCount: hostRef.$renderCount$, + flags: { + hasRendered: !!(flags & 2 /* hasRendered */), + hasConnected: !!(flags & 1 /* hasConnected */), + isWaitingForChildren: !!(flags & 4 /* isWaitingForChildren */), + isConstructingInstance: !!(flags & 8 /* isConstructingInstance */), + isQueuedForUpdate: !!(flags & 16 /* isQueuedForUpdate */), + hasInitializedComponent: !!(flags & 32 /* hasInitializedComponent */), + hasLoadedComponent: !!(flags & 64 /* hasLoadedComponent */), + isWatchReady: !!(flags & 128 /* isWatchReady */), + isListenReady: !!(flags & 256 /* isListenReady */), + needsRerender: !!(flags & 512 /* needsRerender */), + }, + instanceValues: hostRef.$instanceValues$, + ancestorComponent: hostRef.$ancestorComponent$, + hostElement, + lazyInstance: hostRef.$lazyInstance$, + vnode: hostRef.$vnode$, + modeName: hostRef.$modeName$, + onReadyPromise: hostRef.$onReadyPromise$, + onReadyResolve: hostRef.$onReadyResolve$, + onInstancePromise: hostRef.$onInstancePromise$, + onInstanceResolve: hostRef.$onInstanceResolve$, + onRenderResolve: hostRef.$onRenderResolve$, + queuedListeners: hostRef.$queuedListeners$, + rmListeners: hostRef.$rmListeners$, + ['s-id']: hostElement['s-id'], + ['s-cr']: hostElement['s-cr'], + ['s-lr']: hostElement['s-lr'], + ['s-p']: hostElement['s-p'], + ['s-rc']: hostElement['s-rc'], + ['s-sc']: hostElement['s-sc'], + }; +}; +const installDevTools = () => { + if (BUILD.devTools) { + const stencil = (win.stencil = win.stencil || {}); + const originalInspect = stencil.inspect; + stencil.inspect = (ref) => { + let result = inspect(ref); + if (!result && typeof originalInspect === 'function') { + result = originalInspect(ref); + } + return result; + }; + } +}; +const rootAppliedStyles = new WeakMap(); +const registerStyle = (scopeId, cssText, allowCS) => { + let style = styles.get(scopeId); + if (supportsConstructibleStylesheets && allowCS) { + style = (style || new CSSStyleSheet()); + style.replace(cssText); + } + else { + style = cssText; + } + styles.set(scopeId, style); +}; +const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => { + let scopeId = getScopeId(cmpMeta, mode); + let style = styles.get(scopeId); + if (!BUILD.attachStyles) { + return scopeId; + } + // if an element is NOT connected then getRootNode() will return the wrong root node + // so the fallback is to always use the document for the root node in those cases + styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc; + if (style) { + if (typeof style === 'string') { + styleContainerNode = styleContainerNode.head || styleContainerNode; + let appliedStyles = rootAppliedStyles.get(styleContainerNode); + let styleElm; + if (!appliedStyles) { + rootAppliedStyles.set(styleContainerNode, (appliedStyles = new Set())); + } + if (!appliedStyles.has(scopeId)) { + if (BUILD.hydrateClientSide && styleContainerNode.host && (styleElm = styleContainerNode.querySelector(`[${HYDRATED_STYLE_ID}="${scopeId}"]`))) { + // This is only happening on native shadow-dom, do not needs CSS var shim + styleElm.innerHTML = style; + } + else { + if (BUILD.cssVarShim && plt.$cssShim$) { + styleElm = plt.$cssShim$.createHostStyle(hostElm, scopeId, style, !!(cmpMeta.$flags$ & 10 /* needsScopedEncapsulation */)); + const newScopeId = styleElm['s-sc']; + if (newScopeId) { + scopeId = newScopeId; + // we don't want to add this styleID to the appliedStyles Set + // since the cssVarShim might need to apply several different + // stylesheets for the same component + appliedStyles = null; + } + } + else { + styleElm = doc.createElement('style'); + styleElm.innerHTML = style; + } + if (BUILD.hydrateServerSide || BUILD.hotModuleReplacement) { + styleElm.setAttribute(HYDRATED_STYLE_ID, scopeId); + } + styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link')); + } + if (appliedStyles) { + appliedStyles.add(scopeId); + } + } + } + else if (BUILD.constructableCSS && !styleContainerNode.adoptedStyleSheets.includes(style)) { + styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, style]; + } + } + return scopeId; +}; +const attachStyles = (hostRef) => { + const cmpMeta = hostRef.$cmpMeta$; + const elm = hostRef.$hostElement$; + const flags = cmpMeta.$flags$; + const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$); + const scopeId = addStyle(BUILD.shadowDom && supportsShadow && elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta, hostRef.$modeName$, elm); + if ((BUILD.shadowDom || BUILD.scoped) && BUILD.cssAnnotations && flags & 10 /* needsScopedEncapsulation */) { + // only required when we're NOT using native shadow dom (slot) + // or this browser doesn't support native shadow dom + // and this host element was NOT created with SSR + // let's pick out the inner content for slot projection + // create a node to represent where the original + // content was first placed, which is useful later on + // DOM WRITE!! + elm['s-sc'] = scopeId; + elm.classList.add(scopeId + '-h'); + if (BUILD.scoped && flags & 2 /* scopedCssEncapsulation */) { + elm.classList.add(scopeId + '-s'); + } + } + endAttachStyles(); +}; +const getScopeId = (cmp, mode) => 'sc-' + (BUILD.mode && mode && cmp.$flags$ & 32 /* hasMode */ ? cmp.$tagName$ + '-' + mode : cmp.$tagName$); +const convertScopedToShadow = (css) => css.replace(/\/\*!@([^\/]+)\*\/[^\{]+\{/g, '$1{'); +// Private +const computeMode = (elm) => modeResolutionChain.map(h => h(elm)).find(m => !!m); +// Public +const setMode = (handler) => modeResolutionChain.push(handler); +const getMode = (ref) => getHostRef(ref).$modeName$; +/** + * Default style mode id + */ +/** + * Reusable empty obj/array + * Don't add values to these!! + */ +const EMPTY_OBJ = {}; +/** + * Namespaces + */ +const SVG_NS = 'http://www.w3.org/2000/svg'; +const HTML_NS = 'http://www.w3.org/1999/xhtml'; +const isDef = (v) => v != null; +const noop = () => { + /* noop*/ +}; +const isComplexType = (o) => { + // https://jsperf.com/typeof-fn-object/5 + o = typeof o; + return o === 'object' || o === 'function'; +}; +const IS_DENO_ENV = typeof Deno !== 'undefined'; +const IS_NODE_ENV = !IS_DENO_ENV && + typeof global !== 'undefined' && + typeof require === 'function' && + !!global.process && + typeof __filename === 'string' && + (!global.origin || typeof global.origin !== 'string'); +const IS_DENO_WINDOWS_ENV = IS_DENO_ENV && Deno.build.os === 'windows'; +const getCurrentDirectory = IS_NODE_ENV ? process.cwd : IS_DENO_ENV ? Deno.cwd : () => '/'; +const exit = IS_NODE_ENV ? process.exit : IS_DENO_ENV ? Deno.exit : noop; +/** + * Production h() function based on Preact by + * Jason Miller (@developit) + * Licensed under the MIT License + * https://github.com/developit/preact/blob/master/LICENSE + * + * Modified for Stencil's compiler and vdom + */ +// const stack: any[] = []; +// export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, child?: d.ChildType): d.VNode; +// export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, ...children: d.ChildType[]): d.VNode; +const h = (nodeName, vnodeData, ...children) => { + let child = null; + let key = null; + let slotName = null; + let simple = false; + let lastSimple = false; + let vNodeChildren = []; + const walk = (c) => { + for (let i = 0; i < c.length; i++) { + child = c[i]; + if (Array.isArray(child)) { + walk(child); + } + else if (child != null && typeof child !== 'boolean') { + if ((simple = typeof nodeName !== 'function' && !isComplexType(child))) { + child = String(child); + } + else if (BUILD.isDev && typeof nodeName !== 'function' && child.$flags$ === undefined) { + consoleDevError(`vNode passed as children has unexpected type. +Make sure it's using the correct h() function. +Empty objects can also be the cause, look for JSX comments that became objects.`); + } + if (simple && lastSimple) { + // If the previous child was simple (string), we merge both + vNodeChildren[vNodeChildren.length - 1].$text$ += child; + } + else { + // Append a new vNode, if it's text, we create a text vNode + vNodeChildren.push(simple ? newVNode(null, child) : child); + } + lastSimple = simple; + } + } + }; + walk(children); + if (vnodeData) { + if (BUILD.isDev && nodeName === 'input') { + validateInputProperties(vnodeData); + } + // normalize class / classname attributes + if (BUILD.vdomKey && vnodeData.key) { + key = vnodeData.key; + } + if (BUILD.slotRelocation && vnodeData.name) { + slotName = vnodeData.name; + } + if (BUILD.vdomClass) { + const classData = vnodeData.className || vnodeData.class; + if (classData) { + vnodeData.class = + typeof classData !== 'object' + ? classData + : Object.keys(classData) + .filter(k => classData[k]) + .join(' '); + } + } + } + if (BUILD.isDev && vNodeChildren.some(isHost)) { + consoleDevError(`The must be the single root component. Make sure: +- You are NOT using hostData() and in the same component. +- is used once, and it's the single root component of the render() function.`); + } + if (BUILD.vdomFunctional && typeof nodeName === 'function') { + // nodeName is a functional component + return nodeName(vnodeData === null ? {} : vnodeData, vNodeChildren, vdomFnUtils); + } + const vnode = newVNode(nodeName, null); + vnode.$attrs$ = vnodeData; + if (vNodeChildren.length > 0) { + vnode.$children$ = vNodeChildren; + } + if (BUILD.vdomKey) { + vnode.$key$ = key; + } + if (BUILD.slotRelocation) { + vnode.$name$ = slotName; + } + return vnode; +}; +const newVNode = (tag, text) => { + const vnode = { + $flags$: 0, + $tag$: tag, + $text$: text, + $elm$: null, + $children$: null, + }; + if (BUILD.vdomAttribute) { + vnode.$attrs$ = null; + } + if (BUILD.vdomKey) { + vnode.$key$ = null; + } + if (BUILD.slotRelocation) { + vnode.$name$ = null; + } + return vnode; +}; +const Host = {}; +const isHost = (node) => node && node.$tag$ === Host; +const vdomFnUtils = { + forEach: (children, cb) => children.map(convertToPublic).forEach(cb), + map: (children, cb) => children + .map(convertToPublic) + .map(cb) + .map(convertToPrivate), +}; +const convertToPublic = (node) => ({ + vattrs: node.$attrs$, + vchildren: node.$children$, + vkey: node.$key$, + vname: node.$name$, + vtag: node.$tag$, + vtext: node.$text$, +}); +const convertToPrivate = (node) => { + if (typeof node.vtag === 'function') { + const vnodeData = Object.assign({}, node.vattrs); + if (node.vkey) { + vnodeData.key = node.vkey; + } + if (node.vname) { + vnodeData.name = node.vname; + } + return h(node.vtag, vnodeData, ...node.vchildren || []); + } + const vnode = newVNode(node.vtag, node.vtext); + vnode.$attrs$ = node.vattrs; + vnode.$children$ = node.vchildren; + vnode.$key$ = node.vkey; + vnode.$name$ = node.vname; + return vnode; +}; +const validateInputProperties = (vnodeData) => { + const props = Object.keys(vnodeData); + const typeIndex = props.indexOf('type'); + const minIndex = props.indexOf('min'); + const maxIndex = props.indexOf('max'); + const stepIndex = props.indexOf('min'); + const value = props.indexOf('value'); + if (value === -1) { + return; + } + if (value < typeIndex || value < minIndex || value < maxIndex || value < stepIndex) { + consoleDevWarn(`The "value" prop of should be set after "min", "max", "type" and "step"`); + } +}; +/** + * Production setAccessor() function based on Preact by + * Jason Miller (@developit) + * Licensed under the MIT License + * https://github.com/developit/preact/blob/master/LICENSE + * + * Modified for Stencil's compiler and vdom + */ +const setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => { + if (oldValue !== newValue) { + let isProp = isMemberInElement(elm, memberName); + let ln = memberName.toLowerCase(); + if (BUILD.vdomClass && memberName === 'class') { + const classList = elm.classList; + const oldClasses = parseClassList(oldValue); + const newClasses = parseClassList(newValue); + classList.remove(...oldClasses.filter(c => c && !newClasses.includes(c))); + classList.add(...newClasses.filter(c => c && !oldClasses.includes(c))); + } + else if (BUILD.vdomStyle && memberName === 'style') { + // update style attribute, css properties and values + if (BUILD.updatable) { + for (const prop in oldValue) { + if (!newValue || newValue[prop] == null) { + if (!BUILD.hydrateServerSide && prop.includes('-')) { + elm.style.removeProperty(prop); + } + else { + elm.style[prop] = ''; + } + } + } + } + for (const prop in newValue) { + if (!oldValue || newValue[prop] !== oldValue[prop]) { + if (!BUILD.hydrateServerSide && prop.includes('-')) { + elm.style.setProperty(prop, newValue[prop]); + } + else { + elm.style[prop] = newValue[prop]; + } + } + } + } + else if (BUILD.vdomKey && memberName === 'key') + ; + else if (BUILD.vdomRef && memberName === 'ref') { + // minifier will clean this up + if (newValue) { + newValue(elm); + } + } + else if (BUILD.vdomListener && (BUILD.lazyLoad ? !isProp : !elm.__lookupSetter__(memberName)) && memberName[0] === 'o' && memberName[1] === 'n') { + // Event Handlers + // so if the member name starts with "on" and the 3rd characters is + // a capital letter, and it's not already a member on the element, + // then we're assuming it's an event listener + if (memberName[2] === '-') { + // on- prefixed events + // allows to be explicit about the dom event to listen without any magic + // under the hood: + // // listens for "click" + // // listens for "Click" + // // listens for "ionChange" + // // listens for "EVENTS" + memberName = memberName.slice(3); + } + else if (isMemberInElement(win, ln)) { + // standard event + // the JSX attribute could have been "onMouseOver" and the + // member name "onmouseover" is on the window's prototype + // so let's add the listener "mouseover", which is all lowercased + memberName = ln.slice(2); + } + else { + // custom event + // the JSX attribute could have been "onMyCustomEvent" + // so let's trim off the "on" prefix and lowercase the first character + // and add the listener "myCustomEvent" + // except for the first character, we keep the event name case + memberName = ln[2] + memberName.slice(3); + } + if (oldValue) { + plt.rel(elm, memberName, oldValue, false); + } + if (newValue) { + plt.ael(elm, memberName, newValue, false); + } + } + else if (BUILD.vdomPropOrAttr) { + // Set property if it exists and it's not a SVG + const isComplex = isComplexType(newValue); + if ((isProp || (isComplex && newValue !== null)) && !isSvg) { + try { + if (!elm.tagName.includes('-')) { + let n = newValue == null ? '' : newValue; + // Workaround for Safari, moving the caret when re-assigning the same valued + if (memberName === 'list') { + isProp = false; + // tslint:disable-next-line: triple-equals + } + else if (oldValue == null || elm[memberName] != n) { + elm[memberName] = n; + } + } + else { + elm[memberName] = newValue; + } + } + catch (e) { } + } + /** + * Need to manually update attribute if: + * - memberName is not an attribute + * - if we are rendering the host element in order to reflect attribute + * - if it's a SVG, since properties might not work in + * - if the newValue is null/undefined or 'false'. + */ + let xlink = false; + if (BUILD.vdomXlink) { + if (ln !== (ln = ln.replace(/^xlink\:?/, ''))) { + memberName = ln; + xlink = true; + } + } + if (newValue == null || newValue === false) { + if (newValue !== false || elm.getAttribute(memberName) === '') { + if (BUILD.vdomXlink && xlink) { + elm.removeAttributeNS(XLINK_NS, memberName); + } + else { + elm.removeAttribute(memberName); + } + } + } + else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) { + newValue = newValue === true ? '' : newValue; + if (BUILD.vdomXlink && xlink) { + elm.setAttributeNS(XLINK_NS, memberName, newValue); + } + else { + elm.setAttribute(memberName, newValue); + } + } + } + } +}; +const parseClassListRegex = /\s/; +const parseClassList = (value) => (!value ? [] : value.split(parseClassListRegex)); +const updateElement = (oldVnode, newVnode, isSvgMode, memberName) => { + // if the element passed in is a shadow root, which is a document fragment + // then we want to be adding attrs/props to the shadow root's "host" element + // if it's not a shadow root, then we add attrs/props to the same element + const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$; + const oldVnodeAttrs = (oldVnode && oldVnode.$attrs$) || EMPTY_OBJ; + const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ; + if (BUILD.updatable) { + // remove attributes no longer present on the vnode by setting them to undefined + for (memberName in oldVnodeAttrs) { + if (!(memberName in newVnodeAttrs)) { + setAccessor(elm, memberName, oldVnodeAttrs[memberName], undefined, isSvgMode, newVnode.$flags$); + } + } + } + // add new & update changed attributes + for (memberName in newVnodeAttrs) { + setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode, newVnode.$flags$); + } +}; +const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => { + // tslint:disable-next-line: prefer-const + let newVNode = newParentVNode.$children$[childIndex]; + let i = 0; + let elm; + let childNode; + let oldVNode; + if (BUILD.slotRelocation && !useNativeShadowDom) { + // remember for later we need to check to relocate nodes + checkSlotRelocate = true; + if (newVNode.$tag$ === 'slot') { + if (scopeId) { + // scoped css needs to add its scoped id to the parent element + parentElm.classList.add(scopeId + '-s'); + } + newVNode.$flags$ |= newVNode.$children$ + ? // slot element has fallback content + 2 /* isSlotFallback */ + : // slot element does not have fallback content + 1 /* isSlotReference */; + } + } + if (BUILD.isDev && newVNode.$elm$) { + consoleError(`The JSX ${newVNode.$text$ !== null ? `"${newVNode.$text$}" text` : `"${newVNode.$tag$}" element`} node should not be shared within the same renderer. The renderer caches element lookups in order to improve performance. However, a side effect from this is that the exact same JSX node should not be reused. For more information please see https://stenciljs.com/docs/templating-jsx#avoid-shared-jsx-nodes`); + } + if (BUILD.vdomText && newVNode.$text$ !== null) { + // create text node + elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$); + } + else if (BUILD.slotRelocation && newVNode.$flags$ & 1 /* isSlotReference */) { + // create a slot reference node + elm = newVNode.$elm$ = BUILD.isDebug || BUILD.hydrateServerSide ? slotReferenceDebugNode(newVNode) : doc.createTextNode(''); + } + else { + if (BUILD.svg && !isSvgMode) { + isSvgMode = newVNode.$tag$ === 'svg'; + } + // create element + elm = newVNode.$elm$ = (BUILD.svg + ? doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, BUILD.slotRelocation && newVNode.$flags$ & 2 /* isSlotFallback */ ? 'slot-fb' : newVNode.$tag$) + : doc.createElement(BUILD.slotRelocation && newVNode.$flags$ & 2 /* isSlotFallback */ ? 'slot-fb' : newVNode.$tag$)); + if (BUILD.svg && isSvgMode && newVNode.$tag$ === 'foreignObject') { + isSvgMode = false; + } + // add css classes, attrs, props, listeners, etc. + if (BUILD.vdomAttribute) { + updateElement(null, newVNode, isSvgMode); + } + if ((BUILD.shadowDom || BUILD.scoped) && isDef(scopeId) && elm['s-si'] !== scopeId) { + // if there is a scopeId and this is the initial render + // then let's add the scopeId as a css class + elm.classList.add((elm['s-si'] = scopeId)); + } + if (newVNode.$children$) { + for (i = 0; i < newVNode.$children$.length; ++i) { + // create the node + childNode = createElm(oldParentVNode, newVNode, i, elm); + // return node could have been null + if (childNode) { + // append our new node + elm.appendChild(childNode); + } + } + } + if (BUILD.svg) { + if (newVNode.$tag$ === 'svg') { + // Only reset the SVG context when we're exiting element + isSvgMode = false; + } + else if (elm.tagName === 'foreignObject') { + // Reenter SVG context when we're exiting element + isSvgMode = true; + } + } + } + if (BUILD.slotRelocation) { + elm['s-hn'] = hostTagName; + if (newVNode.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) { + // remember the content reference comment + elm['s-sr'] = true; + // remember the content reference comment + elm['s-cr'] = contentRef; + // remember the slot name, or empty string for default slot + elm['s-sn'] = newVNode.$name$ || ''; + // check if we've got an old vnode for this slot + oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex]; + if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) { + // we've got an old slot vnode and the wrapper is being replaced + // so let's move the old slot content back to it's original location + putBackInOriginalLocation(oldParentVNode.$elm$, false); + } + } + } + return elm; +}; +const putBackInOriginalLocation = (parentElm, recursive) => { + plt.$flags$ |= 1 /* isTmpDisconnected */; + const oldSlotChildNodes = parentElm.childNodes; + for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) { + const childNode = oldSlotChildNodes[i]; + if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) { + // // this child node in the old element is from another component + // // remove this node from the old slot's parent + // childNode.remove(); + // and relocate it back to it's original location + parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode)); + // remove the old original location comment entirely + // later on the patch function will know what to do + // and move this to the correct spot in need be + childNode['s-ol'].remove(); + childNode['s-ol'] = undefined; + checkSlotRelocate = true; + } + if (recursive) { + putBackInOriginalLocation(childNode, recursive); + } + } + plt.$flags$ &= ~1 /* isTmpDisconnected */; +}; +const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => { + let containerElm = ((BUILD.slotRelocation && parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm); + let childNode; + if (BUILD.shadowDom && containerElm.shadowRoot && containerElm.tagName === hostTagName) { + containerElm = containerElm.shadowRoot; + } + for (; startIdx <= endIdx; ++startIdx) { + if (vnodes[startIdx]) { + childNode = createElm(null, parentVNode, startIdx, parentElm); + if (childNode) { + vnodes[startIdx].$elm$ = childNode; + containerElm.insertBefore(childNode, BUILD.slotRelocation ? referenceNode(before) : before); + } + } + } +}; +const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => { + for (; startIdx <= endIdx; ++startIdx) { + if ((vnode = vnodes[startIdx])) { + elm = vnode.$elm$; + callNodeRefs(vnode); + if (BUILD.slotRelocation) { + // we're removing this element + // so it's possible we need to show slot fallback content now + checkSlotFallbackVisibility = true; + if (elm['s-ol']) { + // remove the original location comment + elm['s-ol'].remove(); + } + else { + // it's possible that child nodes of the node + // that's being removed are slot nodes + putBackInOriginalLocation(elm, true); + } + } + // remove the vnode's element from the dom + elm.remove(); + } + } +}; +const updateChildren = (parentElm, oldCh, newVNode, newCh) => { + let oldStartIdx = 0; + let newStartIdx = 0; + let idxInOld = 0; + let i = 0; + let oldEndIdx = oldCh.length - 1; + let oldStartVnode = oldCh[0]; + let oldEndVnode = oldCh[oldEndIdx]; + let newEndIdx = newCh.length - 1; + let newStartVnode = newCh[0]; + let newEndVnode = newCh[newEndIdx]; + let node; + let elmToMove; + while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) { + if (oldStartVnode == null) { + // Vnode might have been moved left + oldStartVnode = oldCh[++oldStartIdx]; + } + else if (oldEndVnode == null) { + oldEndVnode = oldCh[--oldEndIdx]; + } + else if (newStartVnode == null) { + newStartVnode = newCh[++newStartIdx]; + } + else if (newEndVnode == null) { + newEndVnode = newCh[--newEndIdx]; + } + else if (isSameVnode(oldStartVnode, newStartVnode)) { + patch(oldStartVnode, newStartVnode); + oldStartVnode = oldCh[++oldStartIdx]; + newStartVnode = newCh[++newStartIdx]; + } + else if (isSameVnode(oldEndVnode, newEndVnode)) { + patch(oldEndVnode, newEndVnode); + oldEndVnode = oldCh[--oldEndIdx]; + newEndVnode = newCh[--newEndIdx]; + } + else if (isSameVnode(oldStartVnode, newEndVnode)) { + // Vnode moved right + if (BUILD.slotRelocation && (oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) { + putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false); + } + patch(oldStartVnode, newEndVnode); + parentElm.insertBefore(oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling); + oldStartVnode = oldCh[++oldStartIdx]; + newEndVnode = newCh[--newEndIdx]; + } + else if (isSameVnode(oldEndVnode, newStartVnode)) { + // Vnode moved left + if (BUILD.slotRelocation && (oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) { + putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false); + } + patch(oldEndVnode, newStartVnode); + parentElm.insertBefore(oldEndVnode.$elm$, oldStartVnode.$elm$); + oldEndVnode = oldCh[--oldEndIdx]; + newStartVnode = newCh[++newStartIdx]; + } + else { + // createKeyToOldIdx + idxInOld = -1; + if (BUILD.vdomKey) { + for (i = oldStartIdx; i <= oldEndIdx; ++i) { + if (oldCh[i] && oldCh[i].$key$ !== null && oldCh[i].$key$ === newStartVnode.$key$) { + idxInOld = i; + break; + } + } + } + if (BUILD.vdomKey && idxInOld >= 0) { + elmToMove = oldCh[idxInOld]; + if (elmToMove.$tag$ !== newStartVnode.$tag$) { + node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld, parentElm); + } + else { + patch(elmToMove, newStartVnode); + oldCh[idxInOld] = undefined; + node = elmToMove.$elm$; + } + newStartVnode = newCh[++newStartIdx]; + } + else { + // new element + node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm); + newStartVnode = newCh[++newStartIdx]; + } + if (node) { + if (BUILD.slotRelocation) { + parentReferenceNode(oldStartVnode.$elm$).insertBefore(node, referenceNode(oldStartVnode.$elm$)); + } + else { + oldStartVnode.$elm$.parentNode.insertBefore(node, oldStartVnode.$elm$); + } + } + } + } + if (oldStartIdx > oldEndIdx) { + addVnodes(parentElm, newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].$elm$, newVNode, newCh, newStartIdx, newEndIdx); + } + else if (BUILD.updatable && newStartIdx > newEndIdx) { + removeVnodes(oldCh, oldStartIdx, oldEndIdx); + } +}; +const isSameVnode = (vnode1, vnode2) => { + // compare if two vnode to see if they're "technically" the same + // need to have the same element tag, and same key to be the same + if (vnode1.$tag$ === vnode2.$tag$) { + if (BUILD.slotRelocation && vnode1.$tag$ === 'slot') { + return vnode1.$name$ === vnode2.$name$; + } + if (BUILD.vdomKey) { + return vnode1.$key$ === vnode2.$key$; + } + return true; + } + return false; +}; +const referenceNode = (node) => { + // this node was relocated to a new location in the dom + // because of some other component's slot + // but we still have an html comment in place of where + // it's original location was according to it's original vdom + return (node && node['s-ol']) || node; +}; +const parentReferenceNode = (node) => (node['s-ol'] ? node['s-ol'] : node).parentNode; +const patch = (oldVNode, newVNode) => { + const elm = (newVNode.$elm$ = oldVNode.$elm$); + const oldChildren = oldVNode.$children$; + const newChildren = newVNode.$children$; + const tag = newVNode.$tag$; + const text = newVNode.$text$; + let defaultHolder; + if (!BUILD.vdomText || text === null) { + if (BUILD.svg) { + // test if we're rendering an svg element, or still rendering nodes inside of one + // only add this to the when the compiler sees we're using an svg somewhere + isSvgMode = tag === 'svg' ? true : tag === 'foreignObject' ? false : isSvgMode; + } + // element node + if (BUILD.vdomAttribute || BUILD.reflect) { + if (BUILD.slot && tag === 'slot') + ; + else { + // either this is the first render of an element OR it's an update + // AND we already know it's possible it could have changed + // this updates the element's css classes, attrs, props, listeners, etc. + updateElement(oldVNode, newVNode, isSvgMode); + } + } + if (BUILD.updatable && oldChildren !== null && newChildren !== null) { + // looks like there's child vnodes for both the old and new vnodes + updateChildren(elm, oldChildren, newVNode, newChildren); + } + else if (newChildren !== null) { + // no old child vnodes, but there are new child vnodes to add + if (BUILD.updatable && BUILD.vdomText && oldVNode.$text$ !== null) { + // the old vnode was text, so be sure to clear it out + elm.textContent = ''; + } + // add the new vnode children + addVnodes(elm, null, newVNode, newChildren, 0, newChildren.length - 1); + } + else if (BUILD.updatable && oldChildren !== null) { + // no new child vnodes, but there are old child vnodes to remove + removeVnodes(oldChildren, 0, oldChildren.length - 1); + } + if (BUILD.svg && isSvgMode && tag === 'svg') { + isSvgMode = false; + } + } + else if (BUILD.vdomText && BUILD.slotRelocation && (defaultHolder = elm['s-cr'])) { + // this element has slotted content + defaultHolder.parentNode.textContent = text; + } + else if (BUILD.vdomText && oldVNode.$text$ !== text) { + // update the text content for the text only vnode + // and also only if the text is different than before + elm.data = text; + } +}; +const updateFallbackSlotVisibility = (elm) => { + // tslint:disable-next-line: prefer-const + let childNodes = elm.childNodes; + let childNode; + let i; + let ilen; + let j; + let slotNameAttr; + let nodeType; + for (i = 0, ilen = childNodes.length; i < ilen; i++) { + childNode = childNodes[i]; + if (childNode.nodeType === 1 /* ElementNode */) { + if (childNode['s-sr']) { + // this is a slot fallback node + // get the slot name for this slot reference node + slotNameAttr = childNode['s-sn']; + // by default always show a fallback slot node + // then hide it if there are other slots in the light dom + childNode.hidden = false; + for (j = 0; j < ilen; j++) { + if (childNodes[j]['s-hn'] !== childNode['s-hn']) { + // this sibling node is from a different component + nodeType = childNodes[j].nodeType; + if (slotNameAttr !== '') { + // this is a named fallback slot node + if (nodeType === 1 /* ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) { + childNode.hidden = true; + break; + } + } + else { + // this is a default fallback slot node + // any element or text node (with content) + // should hide the default fallback slot node + if (nodeType === 1 /* ElementNode */ || (nodeType === 3 /* TextNode */ && childNodes[j].textContent.trim() !== '')) { + childNode.hidden = true; + break; + } + } + } + } + } + // keep drilling down + updateFallbackSlotVisibility(childNode); + } + } +}; +const relocateNodes = []; +const relocateSlotContent = (elm) => { + // tslint:disable-next-line: prefer-const + let childNode; + let node; + let hostContentNodes; + let slotNameAttr; + let relocateNodeData; + let j; + let i = 0; + let childNodes = elm.childNodes; + let ilen = childNodes.length; + for (; i < ilen; i++) { + childNode = childNodes[i]; + if (childNode['s-sr'] && (node = childNode['s-cr'])) { + // first got the content reference comment node + // then we got it's parent, which is where all the host content is in now + hostContentNodes = node.parentNode.childNodes; + slotNameAttr = childNode['s-sn']; + for (j = hostContentNodes.length - 1; j >= 0; j--) { + node = hostContentNodes[j]; + if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) { + // let's do some relocating to its new home + // but never relocate a content reference node + // that is suppose to always represent the original content location + if (isNodeLocatedInSlot(node, slotNameAttr)) { + // it's possible we've already decided to relocate this node + relocateNodeData = relocateNodes.find(r => r.$nodeToRelocate$ === node); + // made some changes to slots + // let's make sure we also double check + // fallbacks are correctly hidden or shown + checkSlotFallbackVisibility = true; + node['s-sn'] = node['s-sn'] || slotNameAttr; + if (relocateNodeData) { + // previously we never found a slot home for this node + // but turns out we did, so let's remember it now + relocateNodeData.$slotRefNode$ = childNode; + } + else { + // add to our list of nodes to relocate + relocateNodes.push({ + $slotRefNode$: childNode, + $nodeToRelocate$: node, + }); + } + if (node['s-sr']) { + relocateNodes.map(relocateNode => { + if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node['s-sn'])) { + relocateNodeData = relocateNodes.find(r => r.$nodeToRelocate$ === node); + if (relocateNodeData && !relocateNode.$slotRefNode$) { + relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$; + } + } + }); + } + } + else if (!relocateNodes.some(r => r.$nodeToRelocate$ === node)) { + // so far this element does not have a slot home, not setting slotRefNode on purpose + // if we never find a home for this element then we'll need to hide it + relocateNodes.push({ + $nodeToRelocate$: node, + }); + } + } + } + } + if (childNode.nodeType === 1 /* ElementNode */) { + relocateSlotContent(childNode); + } + } +}; +const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => { + if (nodeToRelocate.nodeType === 1 /* ElementNode */) { + if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') { + return true; + } + if (nodeToRelocate.getAttribute('slot') === slotNameAttr) { + return true; + } + return false; + } + if (nodeToRelocate['s-sn'] === slotNameAttr) { + return true; + } + return slotNameAttr === ''; +}; +const callNodeRefs = (vNode) => { + if (BUILD.vdomRef) { + vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null); + vNode.$children$ && vNode.$children$.map(callNodeRefs); + } +}; +const renderVdom = (hostRef, renderFnResults) => { + const hostElm = hostRef.$hostElement$; + const cmpMeta = hostRef.$cmpMeta$; + const oldVNode = hostRef.$vnode$ || newVNode(null, null); + const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults); + hostTagName = hostElm.tagName; + // runtime check + if (BUILD.isDev && Array.isArray(renderFnResults) && renderFnResults.some(isHost)) { + throw new Error(`The must be the single root component. +Looks like the render() function of "${hostTagName.toLowerCase()}" is returning an array that contains the . + +The render() function should look like this instead: + +render() { + // Do not return an array + return ( + {content} + ); +} + `); + } + if (BUILD.reflect && cmpMeta.$attrsToReflect$) { + rootVnode.$attrs$ = rootVnode.$attrs$ || {}; + cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName])); + } + rootVnode.$tag$ = null; + rootVnode.$flags$ |= 4 /* isHost */; + hostRef.$vnode$ = rootVnode; + rootVnode.$elm$ = oldVNode.$elm$ = (BUILD.shadowDom ? hostElm.shadowRoot || hostElm : hostElm); + if (BUILD.scoped || BUILD.shadowDom) { + scopeId = hostElm['s-sc']; + } + if (BUILD.slotRelocation) { + contentRef = hostElm['s-cr']; + useNativeShadowDom = supportsShadow && (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0; + // always reset + checkSlotFallbackVisibility = false; + } + // synchronous patch + patch(oldVNode, rootVnode); + if (BUILD.slotRelocation) { + // while we're moving nodes around existing nodes, temporarily disable + // the disconnectCallback from working + plt.$flags$ |= 1 /* isTmpDisconnected */; + if (checkSlotRelocate) { + relocateSlotContent(rootVnode.$elm$); + let relocateData; + let nodeToRelocate; + let orgLocationNode; + let parentNodeRef; + let insertBeforeNode; + let refNode; + let i = 0; + for (; i < relocateNodes.length; i++) { + relocateData = relocateNodes[i]; + nodeToRelocate = relocateData.$nodeToRelocate$; + if (!nodeToRelocate['s-ol']) { + // add a reference node marking this node's original location + // keep a reference to this node for later lookups + orgLocationNode = BUILD.isDebug || BUILD.hydrateServerSide ? originalLocationDebugNode(nodeToRelocate) : doc.createTextNode(''); + orgLocationNode['s-nr'] = nodeToRelocate; + nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate); + } + } + for (i = 0; i < relocateNodes.length; i++) { + relocateData = relocateNodes[i]; + nodeToRelocate = relocateData.$nodeToRelocate$; + if (relocateData.$slotRefNode$) { + // by default we're just going to insert it directly + // after the slot reference node + parentNodeRef = relocateData.$slotRefNode$.parentNode; + insertBeforeNode = relocateData.$slotRefNode$.nextSibling; + orgLocationNode = nodeToRelocate['s-ol']; + while ((orgLocationNode = orgLocationNode.previousSibling)) { + refNode = orgLocationNode['s-nr']; + if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) { + refNode = refNode.nextSibling; + if (!refNode || !refNode['s-nr']) { + insertBeforeNode = refNode; + break; + } + } + } + if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) || nodeToRelocate.nextSibling !== insertBeforeNode) { + // we've checked that it's worth while to relocate + // since that the node to relocate + // has a different next sibling or parent relocated + if (nodeToRelocate !== insertBeforeNode) { + if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) { + // probably a component in the index.html that doesn't have it's hostname set + nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName; + } + // add it back to the dom but in its new home + parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode); + } + } + } + else { + // this node doesn't have a slot home to go to, so let's hide it + if (nodeToRelocate.nodeType === 1 /* ElementNode */) { + nodeToRelocate.hidden = true; + } + } + } + } + if (checkSlotFallbackVisibility) { + updateFallbackSlotVisibility(rootVnode.$elm$); + } + // done moving nodes around + // allow the disconnect callback to work again + plt.$flags$ &= ~1 /* isTmpDisconnected */; + // always reset + relocateNodes.length = 0; + } +}; +// slot comment debug nodes only created with the `--debug` flag +// otherwise these nodes are text nodes w/out content +const slotReferenceDebugNode = (slotVNode) => doc.createComment(` (host=${hostTagName.toLowerCase()})`); +const originalLocationDebugNode = (nodeToRelocate) => doc.createComment(`org-location for ` + (nodeToRelocate.localName ? `<${nodeToRelocate.localName}> (host=${nodeToRelocate['s-hn']})` : `[${nodeToRelocate.textContent}]`)); +const getElement = (ref) => (BUILD.lazyLoad ? getHostRef(ref).$hostElement$ : ref); +const createEvent = (ref, name, flags) => { + const elm = getElement(ref); + return { + emit: (detail) => { + if (BUILD.isDev && !elm.isConnected) { + consoleDevWarn(`The "${name}" event was emitted, but the dispatcher node is no longer connected to the dom.`); + } + return emitEvent(elm, name, { + bubbles: !!(flags & 4 /* Bubbles */), + composed: !!(flags & 2 /* Composed */), + cancelable: !!(flags & 1 /* Cancellable */), + detail, + }); + }, + }; +}; +const emitEvent = (elm, name, opts) => { + const ev = plt.ce(name, opts); + elm.dispatchEvent(ev); + return ev; +}; +const attachToAncestor = (hostRef, ancestorComponent) => { + if (BUILD.asyncLoading && ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent['s-p']) { + ancestorComponent['s-p'].push(new Promise(r => (hostRef.$onRenderResolve$ = r))); + } +}; +const scheduleUpdate = (hostRef, isInitialLoad) => { + if (BUILD.taskQueue && BUILD.updatable) { + hostRef.$flags$ |= 16 /* isQueuedForUpdate */; + } + if (BUILD.asyncLoading && hostRef.$flags$ & 4 /* isWaitingForChildren */) { + hostRef.$flags$ |= 512 /* needsRerender */; + return; + } + attachToAncestor(hostRef, hostRef.$ancestorComponent$); + // there is no ancestorc omponent or the ancestor component + // has already fired off its lifecycle update then + // fire off the initial update + const dispatch = () => dispatchHooks(hostRef, isInitialLoad); + return BUILD.taskQueue ? writeTask(dispatch) : dispatch; +}; +const dispatchHooks = (hostRef, isInitialLoad) => { + const elm = hostRef.$hostElement$; + const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$); + const instance = BUILD.lazyLoad ? hostRef.$lazyInstance$ : elm; + let promise; + if (isInitialLoad) { + if (BUILD.lazyLoad && BUILD.hostListener) { + hostRef.$flags$ |= 256 /* isListenReady */; + if (hostRef.$queuedListeners$) { + hostRef.$queuedListeners$.map(([methodName, event]) => safeCall(instance, methodName, event)); + hostRef.$queuedListeners$ = null; + } + } + emitLifecycleEvent(elm, 'componentWillLoad'); + if (BUILD.cmpWillLoad) { + promise = safeCall(instance, 'componentWillLoad'); + } + } + else { + emitLifecycleEvent(elm, 'componentWillUpdate'); + if (BUILD.cmpWillUpdate) { + promise = safeCall(instance, 'componentWillUpdate'); + } + } + emitLifecycleEvent(elm, 'componentWillRender'); + if (BUILD.cmpWillRender) { + promise = then(promise, () => safeCall(instance, 'componentWillRender')); + } + endSchedule(); + return then(promise, () => updateComponent(hostRef, instance, isInitialLoad)); +}; +const updateComponent = (hostRef, instance, isInitialLoad) => { + // updateComponent + const elm = hostRef.$hostElement$; + const endUpdate = createTime('update', hostRef.$cmpMeta$.$tagName$); + const rc = elm['s-rc']; + if (BUILD.style && isInitialLoad) { + // DOM WRITE! + attachStyles(hostRef); + } + const endRender = createTime('render', hostRef.$cmpMeta$.$tagName$); + if (BUILD.isDev) { + hostRef.$flags$ |= 1024 /* devOnRender */; + } + if (BUILD.hasRenderFn || BUILD.reflect) { + if (BUILD.vdomRender || BUILD.reflect) { + // looks like we've got child nodes to render into this host element + // or we need to update the css class/attrs on the host element + // DOM WRITE! + renderVdom(hostRef, callRender(hostRef, instance)); + } + else { + elm.textContent = callRender(hostRef, instance); + } + } + if (BUILD.cssVarShim && plt.$cssShim$) { + plt.$cssShim$.updateHost(elm); + } + if (BUILD.isDev) { + hostRef.$renderCount$++; + hostRef.$flags$ &= ~1024 /* devOnRender */; + } + if (BUILD.hydrateServerSide) { + try { + // manually connected child components during server-side hydrate + serverSideConnected(elm); + if (isInitialLoad) { + // using only during server-side hydrate + if (hostRef.$cmpMeta$.$flags$ & 1 /* shadowDomEncapsulation */) { + elm['s-en'] = ''; + } + else if (hostRef.$cmpMeta$.$flags$ & 2 /* scopedCssEncapsulation */) { + elm['s-en'] = 'c'; + } + } + } + catch (e) { + consoleError(e); + } + } + if (BUILD.asyncLoading && rc) { + // ok, so turns out there are some child host elements + // waiting on this parent element to load + // let's fire off all update callbacks waiting + rc.map(cb => cb()); + elm['s-rc'] = undefined; + } + endRender(); + endUpdate(); + if (BUILD.asyncLoading) { + const childrenPromises = elm['s-p']; + const postUpdate = () => postUpdateComponent(hostRef); + if (childrenPromises.length === 0) { + postUpdate(); + } + else { + Promise.all(childrenPromises).then(postUpdate); + hostRef.$flags$ |= 4 /* isWaitingForChildren */; + childrenPromises.length = 0; + } + } + else { + postUpdateComponent(hostRef); + } +}; +const callRender = (hostRef, instance) => { + // in order for bundlers to correctly treeshake the BUILD object + // we need to ensure BUILD is not deoptimized within a try/catch + // https://rollupjs.org/guide/en/#treeshake tryCatchDeoptimization + const allRenderFn = BUILD.allRenderFn ? true : false; + const lazyLoad = BUILD.lazyLoad ? true : false; + const taskQueue = BUILD.taskQueue ? true : false; + const updatable = BUILD.updatable ? true : false; + try { + renderingRef = instance; + instance = allRenderFn ? instance.render() : instance.render && instance.render(); + if (updatable && taskQueue) { + hostRef.$flags$ &= ~16 /* isQueuedForUpdate */; + } + if (updatable || lazyLoad) { + hostRef.$flags$ |= 2 /* hasRendered */; + } + } + catch (e) { + consoleError(e); + } + renderingRef = null; + return instance; +}; +const getRenderingRef = () => renderingRef; +const postUpdateComponent = (hostRef) => { + const tagName = hostRef.$cmpMeta$.$tagName$; + const elm = hostRef.$hostElement$; + const endPostUpdate = createTime('postUpdate', tagName); + const instance = BUILD.lazyLoad ? hostRef.$lazyInstance$ : elm; + const ancestorComponent = hostRef.$ancestorComponent$; + if (BUILD.cmpDidRender) { + if (BUILD.isDev) { + hostRef.$flags$ |= 1024 /* devOnRender */; + } + safeCall(instance, 'componentDidRender'); + if (BUILD.isDev) { + hostRef.$flags$ &= ~1024 /* devOnRender */; + } + } + emitLifecycleEvent(elm, 'componentDidRender'); + if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) { + hostRef.$flags$ |= 64 /* hasLoadedComponent */; + if (BUILD.asyncLoading && BUILD.cssAnnotations) { + // DOM WRITE! + addHydratedFlag(elm); + } + if (BUILD.cmpDidLoad) { + if (BUILD.isDev) { + hostRef.$flags$ |= 2048 /* devOnDidLoad */; + } + safeCall(instance, 'componentDidLoad'); + if (BUILD.isDev) { + hostRef.$flags$ &= ~2048 /* devOnDidLoad */; + } + } + emitLifecycleEvent(elm, 'componentDidLoad'); + endPostUpdate(); + if (BUILD.asyncLoading) { + hostRef.$onReadyResolve$(elm); + if (!ancestorComponent) { + appDidLoad(tagName); + } + } + } + else { + if (BUILD.cmpDidUpdate) { + // we've already loaded this component + // fire off the user's componentDidUpdate method (if one was provided) + // componentDidUpdate runs AFTER render() has been called + // and all child components have finished updating + if (BUILD.isDev) { + hostRef.$flags$ |= 1024 /* devOnRender */; + } + safeCall(instance, 'componentDidUpdate'); + if (BUILD.isDev) { + hostRef.$flags$ &= ~1024 /* devOnRender */; + } + } + emitLifecycleEvent(elm, 'componentDidUpdate'); + endPostUpdate(); + } + if (BUILD.hotModuleReplacement) { + elm['s-hmr-load'] && elm['s-hmr-load'](); + } + if (BUILD.method && BUILD.lazyLoad) { + hostRef.$onInstanceResolve$(elm); + } + // load events fire from bottom to top + // the deepest elements load first then bubbles up + if (BUILD.asyncLoading) { + if (hostRef.$onRenderResolve$) { + hostRef.$onRenderResolve$(); + hostRef.$onRenderResolve$ = undefined; + } + if (hostRef.$flags$ & 512 /* needsRerender */) { + nextTick(() => scheduleUpdate(hostRef, false)); + } + hostRef.$flags$ &= ~(4 /* isWaitingForChildren */ | 512 /* needsRerender */); + } + // ( â€ĸ_â€ĸ) + // ( â€ĸ_â€ĸ)>⌐■-■ + // (⌐■_■) +}; +const forceUpdate = (ref) => { + if (BUILD.updatable) { + const hostRef = getHostRef(ref); + const isConnected = hostRef.$hostElement$.isConnected; + if (isConnected && (hostRef.$flags$ & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) { + scheduleUpdate(hostRef, false); + } + // Returns "true" when the forced update was successfully scheduled + return isConnected; + } + return false; +}; +const appDidLoad = (who) => { + // on appload + // we have finish the first big initial render + if (BUILD.cssAnnotations) { + addHydratedFlag(doc.documentElement); + } + if (BUILD.asyncQueue) { + plt.$flags$ |= 2 /* appLoaded */; + } + nextTick(() => emitEvent(win, 'appload', { detail: { namespace: NAMESPACE } })); + if (BUILD.profile && performance.measure) { + performance.measure(`[Stencil] ${NAMESPACE} initial load (by ${who})`, 'st:app:start'); + } +}; +const safeCall = (instance, method, arg) => { + if (instance && instance[method]) { + try { + return instance[method](arg); + } + catch (e) { + consoleError(e); + } + } + return undefined; +}; +const then = (promise, thenFn) => { + return promise && promise.then ? promise.then(thenFn) : thenFn(); +}; +const emitLifecycleEvent = (elm, lifecycleName) => { + if (BUILD.lifecycleDOMEvents) { + emitEvent(elm, 'stencil_' + lifecycleName, { + bubbles: true, + composed: true, + detail: { + namespace: NAMESPACE, + }, + }); + } +}; +const addHydratedFlag = (elm) => (BUILD.hydratedClass ? elm.classList.add('hydrated') : BUILD.hydratedAttribute ? elm.setAttribute('hydrated', '') : undefined); +const serverSideConnected = (elm) => { + const children = elm.children; + if (children != null) { + for (let i = 0, ii = children.length; i < ii; i++) { + const childElm = children[i]; + if (typeof childElm.connectedCallback === 'function') { + childElm.connectedCallback(); + } + serverSideConnected(childElm); + } + } +}; +const initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => { + const endHydrate = createTime('hydrateClient', tagName); + const shadowRoot = hostElm.shadowRoot; + const childRenderNodes = []; + const slotNodes = []; + const shadowRootNodes = BUILD.shadowDom && shadowRoot ? [] : null; + const vnode = (hostRef.$vnode$ = newVNode(tagName, null)); + if (!plt.$orgLocNodes$) { + initializeDocumentHydrate(doc.body, (plt.$orgLocNodes$ = new Map())); + } + hostElm[HYDRATE_ID] = hostId; + hostElm.removeAttribute(HYDRATE_ID); + clientHydrate(vnode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, hostElm, hostId); + childRenderNodes.map(c => { + const orgLocationId = c.$hostId$ + '.' + c.$nodeId$; + const orgLocationNode = plt.$orgLocNodes$.get(orgLocationId); + const node = c.$elm$; + if (orgLocationNode && supportsShadow && orgLocationNode['s-en'] === '') { + orgLocationNode.parentNode.insertBefore(node, orgLocationNode.nextSibling); + } + if (!shadowRoot) { + node['s-hn'] = tagName; + if (orgLocationNode) { + node['s-ol'] = orgLocationNode; + node['s-ol']['s-nr'] = node; + } + } + plt.$orgLocNodes$.delete(orgLocationId); + }); + if (BUILD.shadowDom && shadowRoot) { + shadowRootNodes.map(shadowRootNode => { + if (shadowRootNode) { + shadowRoot.appendChild(shadowRootNode); + } + }); + } + endHydrate(); +}; +const clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node, hostId) => { + let childNodeType; + let childIdSplt; + let childVNode; + let i; + if (node.nodeType === 1 /* ElementNode */) { + childNodeType = node.getAttribute(HYDRATE_CHILD_ID); + if (childNodeType) { + // got the node data from the element's attribute + // `${hostId}.${nodeId}.${depth}.${index}` + childIdSplt = childNodeType.split('.'); + if (childIdSplt[0] === hostId || childIdSplt[0] === '0') { + childVNode = { + $flags$: 0, + $hostId$: childIdSplt[0], + $nodeId$: childIdSplt[1], + $depth$: childIdSplt[2], + $index$: childIdSplt[3], + $tag$: node.tagName.toLowerCase(), + $elm$: node, + $attrs$: null, + $children$: null, + $key$: null, + $name$: null, + $text$: null, + }; + childRenderNodes.push(childVNode); + node.removeAttribute(HYDRATE_CHILD_ID); + // this is a new child vnode + // so ensure its parent vnode has the vchildren array + if (!parentVNode.$children$) { + parentVNode.$children$ = []; + } + // add our child vnode to a specific index of the vnode's children + parentVNode.$children$[childVNode.$index$] = childVNode; + // this is now the new parent vnode for all the next child checks + parentVNode = childVNode; + if (shadowRootNodes && childVNode.$depth$ === '0') { + shadowRootNodes[childVNode.$index$] = childVNode.$elm$; + } + } + } + // recursively drill down, end to start so we can remove nodes + for (i = node.childNodes.length - 1; i >= 0; i--) { + clientHydrate(parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node.childNodes[i], hostId); + } + if (node.shadowRoot) { + // keep drilling down through the shadow root nodes + for (i = node.shadowRoot.childNodes.length - 1; i >= 0; i--) { + clientHydrate(parentVNode, childRenderNodes, slotNodes, shadowRootNodes, hostElm, node.shadowRoot.childNodes[i], hostId); + } + } + } + else if (node.nodeType === 8 /* CommentNode */) { + // `${COMMENT_TYPE}.${hostId}.${nodeId}.${depth}.${index}` + childIdSplt = node.nodeValue.split('.'); + if (childIdSplt[1] === hostId || childIdSplt[1] === '0') { + // comment node for either the host id or a 0 host id + childNodeType = childIdSplt[0]; + childVNode = { + $flags$: 0, + $hostId$: childIdSplt[1], + $nodeId$: childIdSplt[2], + $depth$: childIdSplt[3], + $index$: childIdSplt[4], + $elm$: node, + $attrs$: null, + $children$: null, + $key$: null, + $name$: null, + $tag$: null, + $text$: null, + }; + if (childNodeType === TEXT_NODE_ID) { + childVNode.$elm$ = node.nextSibling; + if (childVNode.$elm$ && childVNode.$elm$.nodeType === 3 /* TextNode */) { + childVNode.$text$ = childVNode.$elm$.textContent; + childRenderNodes.push(childVNode); + // remove the text comment since it's no longer needed + node.remove(); + if (!parentVNode.$children$) { + parentVNode.$children$ = []; + } + parentVNode.$children$[childVNode.$index$] = childVNode; + if (shadowRootNodes && childVNode.$depth$ === '0') { + shadowRootNodes[childVNode.$index$] = childVNode.$elm$; + } + } + } + else if (childVNode.$hostId$ === hostId) { + // this comment node is specifcally for this host id + if (childNodeType === SLOT_NODE_ID) { + // `${SLOT_NODE_ID}.${hostId}.${nodeId}.${depth}.${index}.${slotName}`; + childVNode.$tag$ = 'slot'; + if (childIdSplt[5]) { + node['s-sn'] = childVNode.$name$ = childIdSplt[5]; + } + else { + node['s-sn'] = ''; + } + node['s-sr'] = true; + if (BUILD.shadowDom && shadowRootNodes) { + // browser support shadowRoot and this is a shadow dom component + // create an actual slot element + childVNode.$elm$ = doc.createElement(childVNode.$tag$); + if (childVNode.$name$) { + // add the slot name attribute + childVNode.$elm$.setAttribute('name', childVNode.$name$); + } + // insert the new slot element before the slot comment + node.parentNode.insertBefore(childVNode.$elm$, node); + // remove the slot comment since it's not needed for shadow + node.remove(); + if (childVNode.$depth$ === '0') { + shadowRootNodes[childVNode.$index$] = childVNode.$elm$; + } + } + slotNodes.push(childVNode); + if (!parentVNode.$children$) { + parentVNode.$children$ = []; + } + parentVNode.$children$[childVNode.$index$] = childVNode; + } + else if (childNodeType === CONTENT_REF_ID) { + // `${CONTENT_REF_ID}.${hostId}`; + if (BUILD.shadowDom && shadowRootNodes) { + // remove the content ref comment since it's not needed for shadow + node.remove(); + } + else if (BUILD.slotRelocation) { + hostElm['s-cr'] = node; + node['s-cn'] = true; + } + } + } + } + } + else if (parentVNode && parentVNode.$tag$ === 'style') { + const vnode = newVNode(null, node.textContent); + vnode.$elm$ = node; + vnode.$index$ = '0'; + parentVNode.$children$ = [vnode]; + } +}; +const initializeDocumentHydrate = (node, orgLocNodes) => { + if (node.nodeType === 1 /* ElementNode */) { + let i = 0; + for (; i < node.childNodes.length; i++) { + initializeDocumentHydrate(node.childNodes[i], orgLocNodes); + } + if (node.shadowRoot) { + for (i = 0; i < node.shadowRoot.childNodes.length; i++) { + initializeDocumentHydrate(node.shadowRoot.childNodes[i], orgLocNodes); + } + } + } + else if (node.nodeType === 8 /* CommentNode */) { + const childIdSplt = node.nodeValue.split('.'); + if (childIdSplt[0] === ORG_LOCATION_ID) { + orgLocNodes.set(childIdSplt[1] + '.' + childIdSplt[2], node); + node.nodeValue = ''; + // useful to know if the original location is + // the root light-dom of a shadow dom component + node['s-en'] = childIdSplt[3]; + } + } +}; +const parsePropertyValue = (propValue, propType) => { + // ensure this value is of the correct prop type + if (propValue != null && !isComplexType(propValue)) { + if (BUILD.propBoolean && propType & 4 /* Boolean */) { + // per the HTML spec, any string value means it is a boolean true value + // but we'll cheat here and say that the string "false" is the boolean false + return propValue === 'false' ? false : propValue === '' || !!propValue; + } + if (BUILD.propNumber && propType & 2 /* Number */) { + // force it to be a number + return parseFloat(propValue); + } + if (BUILD.propString && propType & 1 /* String */) { + // could have been passed as a number or boolean + // but we still want it as a string + return String(propValue); + } + // redundant return here for better minification + return propValue; + } + // not sure exactly what type we want + // so no need to change to a different type + return propValue; +}; +const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName); +const setValue = (ref, propName, newVal, cmpMeta) => { + // check our new property value against our internal value + const hostRef = getHostRef(ref); + const elm = BUILD.lazyLoad ? hostRef.$hostElement$ : ref; + const oldVal = hostRef.$instanceValues$.get(propName); + const flags = hostRef.$flags$; + const instance = BUILD.lazyLoad ? hostRef.$lazyInstance$ : elm; + newVal = parsePropertyValue(newVal, cmpMeta.$members$[propName][0]); + if ((!BUILD.lazyLoad || !(flags & 8 /* isConstructingInstance */) || oldVal === undefined) && newVal !== oldVal) { + // gadzooks! the property's value has changed!! + // set our new value! + hostRef.$instanceValues$.set(propName, newVal); + if (BUILD.isDev) { + if (hostRef.$flags$ & 1024 /* devOnRender */) { + consoleDevWarn(`The state/prop "${propName}" changed during rendering. This can potentially lead to infinite-loops and other bugs.`, '\nElement', elm, '\nNew value', newVal, '\nOld value', oldVal); + } + else if (hostRef.$flags$ & 2048 /* devOnDidLoad */) { + consoleDevWarn(`The state/prop "${propName}" changed during "componentDidLoad()", this triggers extra re-renders, try to setup on "componentWillLoad()"`, '\nElement', elm, '\nNew value', newVal, '\nOld value', oldVal); + } + } + if (!BUILD.lazyLoad || instance) { + // get an array of method names of watch functions to call + if (BUILD.watchCallback && cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) { + const watchMethods = cmpMeta.$watchers$[propName]; + if (watchMethods) { + // this instance is watching for when this property changed + watchMethods.map(watchMethodName => { + try { + // fire off each of the watch methods that are watching this property + instance[watchMethodName](newVal, oldVal, propName); + } + catch (e) { + consoleError(e); + } + }); + } + } + if (BUILD.updatable && (flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) { + if (BUILD.cmpShouldUpdate && instance.componentShouldUpdate) { + if (instance.componentShouldUpdate(newVal, oldVal, propName) === false) { + return; + } + } + // looks like this value actually changed, so we've got work to do! + // but only if we've already rendered, otherwise just chill out + // queue that we need to do an update, but don't worry about queuing + // up millions cuz this function ensures it only runs once + scheduleUpdate(hostRef, false); + } + } + } +}; +const proxyComponent = (Cstr, cmpMeta, flags) => { + if (BUILD.member && cmpMeta.$members$) { + if (BUILD.watchCallback && Cstr.watchers) { + cmpMeta.$watchers$ = Cstr.watchers; + } + // It's better to have a const than two Object.entries() + const members = Object.entries(cmpMeta.$members$); + const prototype = Cstr.prototype; + members.map(([memberName, [memberFlags]]) => { + if ((BUILD.prop || BUILD.state) && (memberFlags & 31 /* Prop */ || ((!BUILD.lazyLoad || flags & 2 /* proxyState */) && memberFlags & 32 /* State */))) { + // proxyComponent - prop + Object.defineProperty(prototype, memberName, { + get() { + // proxyComponent, get value + return getValue(this, memberName); + }, + set(newValue) { + if ( + // only during dev time + BUILD.isDev && + // we are proxing the instance (not element) + (flags & 1 /* isElementConstructor */) === 0 && + // the member is a non-mutable prop + (memberFlags & (31 /* Prop */ | 1024 /* Mutable */)) === 31 /* Prop */) { + consoleDevWarn(`@Prop() "${memberName}" on "${cmpMeta.$tagName$}" cannot be modified.\nFurther information: https://stenciljs.com/docs/properties#prop-mutability`); + } + // proxyComponent, set value + setValue(this, memberName, newValue, cmpMeta); + }, + configurable: true, + enumerable: true, + }); + } + else if (BUILD.lazyLoad && BUILD.method && flags & 1 /* isElementConstructor */ && memberFlags & 64 /* Method */) { + // proxyComponent - method + Object.defineProperty(prototype, memberName, { + value(...args) { + const ref = getHostRef(this); + return ref.$onInstancePromise$.then(() => ref.$lazyInstance$[memberName](...args)); + }, + }); + } + }); + if (BUILD.observeAttribute && (!BUILD.lazyLoad || flags & 1 /* isElementConstructor */)) { + const attrNameToPropName = new Map(); + prototype.attributeChangedCallback = function (attrName, _oldValue, newValue) { + plt.jmp(() => { + const propName = attrNameToPropName.get(attrName); + this[propName] = newValue === null && typeof this[propName] === 'boolean' ? false : newValue; + }); + }; + // create an array of attributes to observe + // and also create a map of html attribute name to js property name + Cstr.observedAttributes = members + .filter(([_, m]) => m[0] & 15 /* HasAttribute */) // filter to only keep props that should match attributes + .map(([propName, m]) => { + const attrName = m[1] || propName; + attrNameToPropName.set(attrName, propName); + if (BUILD.reflect && m[0] & 512 /* ReflectAttr */) { + cmpMeta.$attrsToReflect$.push([propName, attrName]); + } + return attrName; + }); + } + } + return Cstr; +}; +const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => { + // initializeComponent + if ((BUILD.lazyLoad || BUILD.hydrateServerSide || BUILD.style) && (hostRef.$flags$ & 32 /* hasInitializedComponent */) === 0) { + if (BUILD.lazyLoad || BUILD.hydrateClientSide) { + // we haven't initialized this element yet + hostRef.$flags$ |= 32 /* hasInitializedComponent */; + // lazy loaded components + // request the component's implementation to be + // wired up with the host element + Cstr = loadModule(cmpMeta, hostRef, hmrVersionId); + if (Cstr.then) { + // Await creates a micro-task avoid if possible + const endLoad = uniqueTime(`st:load:${cmpMeta.$tagName$}:${hostRef.$modeName$}`, `[Stencil] Load module for <${cmpMeta.$tagName$}>`); + Cstr = await Cstr; + endLoad(); + } + if ((BUILD.isDev || BUILD.isDebug) && !Cstr) { + throw new Error(`Constructor for "${cmpMeta.$tagName$}#${hostRef.$modeName$}" was not found`); + } + if (BUILD.member && !Cstr.isProxied) { + // we'eve never proxied this Constructor before + // let's add the getters/setters to its prototype before + // the first time we create an instance of the implementation + if (BUILD.watchCallback) { + cmpMeta.$watchers$ = Cstr.watchers; + } + proxyComponent(Cstr, cmpMeta, 2 /* proxyState */); + Cstr.isProxied = true; + } + const endNewInstance = createTime('createInstance', cmpMeta.$tagName$); + // ok, time to construct the instance + // but let's keep track of when we start and stop + // so that the getters/setters don't incorrectly step on data + if (BUILD.member) { + hostRef.$flags$ |= 8 /* isConstructingInstance */; + } + // construct the lazy-loaded component implementation + // passing the hostRef is very important during + // construction in order to directly wire together the + // host element and the lazy-loaded instance + try { + new Cstr(hostRef); + } + catch (e) { + consoleError(e); + } + if (BUILD.member) { + hostRef.$flags$ &= ~8 /* isConstructingInstance */; + } + if (BUILD.watchCallback) { + hostRef.$flags$ |= 128 /* isWatchReady */; + } + endNewInstance(); + fireConnectedCallback(hostRef.$lazyInstance$); + } + else { + // sync constructor component + Cstr = elm.constructor; + hostRef.$flags$ |= 128 /* isWatchReady */ | 32 /* hasInitializedComponent */; + } + if (BUILD.style && Cstr.style) { + // this component has styles but we haven't registered them yet + let style = Cstr.style; + if (BUILD.mode && typeof style !== 'string') { + style = style[(hostRef.$modeName$ = computeMode(elm))]; + if (BUILD.hydrateServerSide && hostRef.$modeName$) { + elm.setAttribute('s-mode', hostRef.$modeName$); + } + } + const scopeId = getScopeId(cmpMeta, hostRef.$modeName$); + if (!styles.has(scopeId)) { + const endRegisterStyles = createTime('registerStyles', cmpMeta.$tagName$); + if (!BUILD.hydrateServerSide && BUILD.shadowDom && BUILD.shadowDomShim && cmpMeta.$flags$ & 8 /* needsShadowDomShim */) { + style = await __sc_import_ionicons_site('./shadow-css-fb1c6168.js').then(m => m.scopeCss(style, scopeId, false)); + } + registerStyle(scopeId, style, !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)); + endRegisterStyles(); + } + } + } + // we've successfully created a lazy instance + const ancestorComponent = hostRef.$ancestorComponent$; + const schedule = () => scheduleUpdate(hostRef, true); + if (BUILD.asyncLoading && ancestorComponent && ancestorComponent['s-rc']) { + // this is the intial load and this component it has an ancestor component + // but the ancestor component has NOT fired its will update lifecycle yet + // so let's just cool our jets and wait for the ancestor to continue first + // this will get fired off when the ancestor component + // finally gets around to rendering its lazy self + // fire off the initial update + ancestorComponent['s-rc'].push(schedule); + } + else { + schedule(); + } +}; +const fireConnectedCallback = (instance) => { + if (BUILD.lazyLoad && BUILD.connectedCallback) { + safeCall(instance, 'connectedCallback'); + } +}; +const connectedCallback = (elm) => { + if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) { + const hostRef = getHostRef(elm); + const cmpMeta = hostRef.$cmpMeta$; + const endConnected = createTime('connectedCallback', cmpMeta.$tagName$); + if (BUILD.hostListenerTargetParent) { + // only run if we have listeners being attached to a parent + addHostEventListeners(elm, hostRef, cmpMeta.$listeners$, true); + } + if (!(hostRef.$flags$ & 1 /* hasConnected */)) { + // first time this component has connected + hostRef.$flags$ |= 1 /* hasConnected */; + let hostId; + if (BUILD.hydrateClientSide) { + hostId = elm.getAttribute(HYDRATE_ID); + if (hostId) { + if (BUILD.shadowDom && supportsShadow && cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) { + const scopeId = BUILD.mode ? addStyle(elm.shadowRoot, cmpMeta, elm.getAttribute('s-mode')) : addStyle(elm.shadowRoot, cmpMeta); + elm.classList.remove(scopeId + '-h', scopeId + '-s'); + } + initializeClientHydrate(elm, cmpMeta.$tagName$, hostId, hostRef); + } + } + if (BUILD.slotRelocation && !hostId) { + // initUpdate + // if the slot polyfill is required we'll need to put some nodes + // in here to act as original content anchors as we move nodes around + // host element has been connected to the DOM + if (BUILD.hydrateServerSide || ((BUILD.slot || BUILD.shadowDom) && cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */))) { + setContentReference(elm); + } + } + if (BUILD.asyncLoading) { + // find the first ancestor component (if there is one) and register + // this component as one of the actively loading child components for its ancestor + let ancestorComponent = elm; + while ((ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host)) { + // climb up the ancestors looking for the first + // component that hasn't finished its lifecycle update yet + if ((BUILD.hydrateClientSide && ancestorComponent.nodeType === 1 /* ElementNode */ && ancestorComponent.hasAttribute('s-id') && ancestorComponent['s-p']) || + ancestorComponent['s-p']) { + // we found this components first ancestor component + // keep a reference to this component's ancestor component + attachToAncestor(hostRef, (hostRef.$ancestorComponent$ = ancestorComponent)); + break; + } + } + } + // Lazy properties + // https://developers.google.com/web/fundamentals/web-components/best-practices#lazy-properties + if (BUILD.prop && BUILD.lazyLoad && !BUILD.hydrateServerSide && cmpMeta.$members$) { + Object.entries(cmpMeta.$members$).map(([memberName, [memberFlags]]) => { + if (memberFlags & 31 /* Prop */ && elm.hasOwnProperty(memberName)) { + const value = elm[memberName]; + delete elm[memberName]; + elm[memberName] = value; + } + }); + } + if (BUILD.initializeNextTick) { + // connectedCallback, taskQueue, initialLoad + // angular sets attribute AFTER connectCallback + // https://github.com/angular/angular/issues/18909 + // https://github.com/angular/angular/issues/19940 + nextTick(() => initializeComponent(elm, hostRef, cmpMeta)); + } + else { + initializeComponent(elm, hostRef, cmpMeta); + } + } + else { + // not the first time this has connected + // reattach any event listeners to the host + // since they would have been removed when disconnected + addHostEventListeners(elm, hostRef, cmpMeta.$listeners$, false); + // fire off connectedCallback() on component instance + fireConnectedCallback(hostRef.$lazyInstance$); + } + endConnected(); + } +}; +const setContentReference = (elm) => { + // only required when we're NOT using native shadow dom (slot) + // or this browser doesn't support native shadow dom + // and this host element was NOT created with SSR + // let's pick out the inner content for slot projection + // create a node to represent where the original + // content was first placed, which is useful later on + const contentRefElm = (elm['s-cr'] = doc.createComment(BUILD.isDebug ? `content-ref (host=${elm.localName})` : '')); + contentRefElm['s-cn'] = true; + elm.insertBefore(contentRefElm, elm.firstChild); +}; +const disconnectedCallback = (elm) => { + if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) { + const hostRef = getHostRef(elm); + const instance = BUILD.lazyLoad ? hostRef.$lazyInstance$ : elm; + if (BUILD.hostListener) { + if (hostRef.$rmListeners$) { + hostRef.$rmListeners$.map(rmListener => rmListener()); + hostRef.$rmListeners$ = undefined; + } + } + // clear CSS var-shim tracking + if (BUILD.cssVarShim && plt.$cssShim$) { + plt.$cssShim$.removeHost(elm); + } + if (BUILD.lazyLoad && BUILD.disconnectedCallback) { + safeCall(instance, 'disconnectedCallback'); + } + if (BUILD.cmpDidUnload) { + safeCall(instance, 'componentDidUnload'); + } + } +}; +const defineCustomElement = (Cstr, compactMeta) => { + customElements.define(compactMeta[1], proxyCustomElement(Cstr, compactMeta)); +}; +const proxyCustomElement = (Cstr, compactMeta) => { + const cmpMeta = { + $flags$: compactMeta[0], + $tagName$: compactMeta[1], + }; + if (BUILD.member) { + cmpMeta.$members$ = compactMeta[2]; + } + if (BUILD.hostListener) { + cmpMeta.$listeners$ = compactMeta[3]; + } + if (BUILD.watchCallback) { + cmpMeta.$watchers$ = Cstr.$watchers$; + } + if (BUILD.reflect) { + cmpMeta.$attrsToReflect$ = []; + } + if (BUILD.shadowDom && !supportsShadow && cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) { + cmpMeta.$flags$ |= 8 /* needsShadowDomShim */; + } + const originalConnectedCallback = Cstr.prototype.connectedCallback; + const originalDisconnectedCallback = Cstr.prototype.disconnectedCallback; + Object.assign(Cstr.prototype, { + __registerHost() { + registerHost(this, cmpMeta); + }, + connectedCallback() { + connectedCallback(this); + if (BUILD.connectedCallback && originalConnectedCallback) { + originalConnectedCallback.call(this); + } + }, + disconnectedCallback() { + disconnectedCallback(this); + if (BUILD.disconnectedCallback && originalDisconnectedCallback) { + originalDisconnectedCallback.call(this); + } + }, + }); + Cstr.is = cmpMeta.$tagName$; + return proxyComponent(Cstr, cmpMeta, 1 /* isElementConstructor */ | 2 /* proxyState */); +}; +const forceModeUpdate = (elm) => { + if (BUILD.style && BUILD.mode && !BUILD.lazyLoad) { + const mode = computeMode(elm); + const hostRef = getHostRef(elm); + if (hostRef.$modeName$ !== mode) { + const cmpMeta = hostRef.$cmpMeta$; + const oldScopeId = elm['s-sc']; + const scopeId = getScopeId(cmpMeta, mode); + const style = elm.constructor.style[mode]; + const flags = cmpMeta.$flags$; + if (style) { + if (!styles.has(scopeId)) { + registerStyle(scopeId, style, !!(flags & 1 /* shadowDomEncapsulation */)); + } + hostRef.$modeName$ = mode; + elm.classList.remove(oldScopeId + '-h', oldScopeId + '-s'); + attachStyles(hostRef); + forceUpdate(elm); + } + } + } +}; +const attachShadow = (el) => { + if (supportsShadow) { + el.attachShadow({ mode: 'open' }); + } + else { + el.shadowRoot = el; + } +}; +const hmrStart = (elm, cmpMeta, hmrVersionId) => { + // ¯\_(ツ)_/¯ + const hostRef = getHostRef(elm); + // reset state flags to only have been connected + hostRef.$flags$ = 1 /* hasConnected */; + // TODO + // detatch any event listeners that may have been added + // because we're not passing an exact event name it'll + // remove all of this element's event, which is good + // create a callback for when this component finishes hmr + elm['s-hmr-load'] = () => { + // finished hmr for this element + delete elm['s-hmr-load']; + }; + // re-initialize the component + initializeComponent(elm, hostRef, cmpMeta, hmrVersionId); +}; +const patchCloneNode = (HostElementPrototype) => { + const orgCloneNode = HostElementPrototype.cloneNode; + HostElementPrototype.cloneNode = function (deep) { + const srcNode = this; + const isShadowDom = BUILD.shadowDom ? srcNode.shadowRoot && supportsShadow : false; + const clonedNode = orgCloneNode.call(srcNode, isShadowDom ? deep : false); + if (BUILD.slot && !isShadowDom && deep) { + let i = 0; + let slotted, nonStencilNode; + let stencilPrivates = ['s-id', 's-cr', 's-lr', 's-rc', 's-sc', 's-p', 's-cn', 's-sr', 's-sn', 's-hn', 's-ol', 's-nr', 's-si']; + for (; i < srcNode.childNodes.length; i++) { + slotted = srcNode.childNodes[i]['s-nr']; + nonStencilNode = stencilPrivates.every((privateField) => !srcNode.childNodes[i][privateField]); + if (slotted) { + if (BUILD.appendChildSlotFix && clonedNode.__appendChild) { + clonedNode.__appendChild(slotted.cloneNode(true)); + } + else { + clonedNode.appendChild(slotted.cloneNode(true)); + } + } + if (nonStencilNode) { + clonedNode.appendChild(srcNode.childNodes[i].cloneNode(true)); + } + } + } + return clonedNode; + }; +}; +const patchSlotAppendChild = (HostElementPrototype) => { + HostElementPrototype.__appendChild = HostElementPrototype.appendChild; + HostElementPrototype.appendChild = function (newChild) { + const slotName = (newChild['s-sn'] = getSlotName(newChild)); + const slotNode = getHostSlotNode(this.childNodes, slotName); + if (slotNode) { + const slotChildNodes = getHostSlotChildNodes(slotNode, slotName); + const appendAfter = slotChildNodes[slotChildNodes.length - 1]; + return appendAfter.parentNode.insertBefore(newChild, appendAfter.nextSibling); + } + return this.__appendChild(newChild); + }; +}; +const patchChildSlotNodes = (elm, cmpMeta) => { + class FakeNodeList extends Array { + item(n) { + return this[n]; + } + } + if (cmpMeta.$flags$ & 8 /* needsShadowDomShim */) { + const childNodesFn = elm.__lookupGetter__('childNodes'); + Object.defineProperty(elm, 'children', { + get() { + return this.childNodes.map((n) => n.nodeType === 1); + }, + }); + Object.defineProperty(elm, 'childElementCount', { + get() { + return elm.children.length; + }, + }); + Object.defineProperty(elm, 'childNodes', { + get() { + const childNodes = childNodesFn.call(this); + if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0 && getHostRef(this).$flags$ & 2 /* hasRendered */) { + const result = new FakeNodeList(); + for (let i = 0; i < childNodes.length; i++) { + const slot = childNodes[i]['s-nr']; + if (slot) { + result.push(slot); + } + } + return result; + } + return FakeNodeList.from(childNodes); + }, + }); + } +}; +const getSlotName = (node) => node['s-sn'] || (node.nodeType === 1 && node.getAttribute('slot')) || ''; +const getHostSlotNode = (childNodes, slotName) => { + let i = 0; + let childNode; + for (; i < childNodes.length; i++) { + childNode = childNodes[i]; + if (childNode['s-sr'] && childNode['s-sn'] === slotName) { + return childNode; + } + childNode = getHostSlotNode(childNode.childNodes, slotName); + if (childNode) { + return childNode; + } + } + return null; +}; +const getHostSlotChildNodes = (n, slotName) => { + const childNodes = [n]; + while ((n = n.nextSibling) && n['s-sn'] === slotName) { + childNodes.push(n); + } + return childNodes; +}; +const bootstrapLazy = (lazyBundles, options = {}) => { + if (BUILD.profile && performance.mark) { + performance.mark('st:app:start'); + } + installDevTools(); + const endBootstrap = createTime('bootstrapLazy'); + const cmpTags = []; + const exclude = options.exclude || []; + const customElements = win.customElements; + const head = doc.head; + const metaCharset = /*@__PURE__*/ head.querySelector('meta[charset]'); + const visibilityStyle = /*@__PURE__*/ doc.createElement('style'); + const deferredConnectedCallbacks = []; + const styles = /*@__PURE__*/ doc.querySelectorAll(`[${HYDRATED_STYLE_ID}]`); + let appLoadFallback; + let isBootstrapping = true; + let i = 0; + Object.assign(plt, options); + plt.$resourcesUrl$ = new URL(options.resourcesUrl || './', doc.baseURI).href; + if (BUILD.asyncQueue) { + if (options.syncQueue) { + plt.$flags$ |= 4 /* queueSync */; + } + } + if (BUILD.hydrateClientSide) { + // If the app is already hydrated there is not point to disable the + // async queue. This will improve the first input delay + plt.$flags$ |= 2 /* appLoaded */; + } + if (BUILD.hydrateClientSide && BUILD.shadowDom) { + for (; i < styles.length; i++) { + registerStyle(styles[i].getAttribute(HYDRATED_STYLE_ID), convertScopedToShadow(styles[i].innerHTML), true); + } + } + lazyBundles.map(lazyBundle => lazyBundle[1].map(compactMeta => { + const cmpMeta = { + $flags$: compactMeta[0], + $tagName$: compactMeta[1], + $members$: compactMeta[2], + $listeners$: compactMeta[3], + }; + if (BUILD.member) { + cmpMeta.$members$ = compactMeta[2]; + } + if (BUILD.hostListener) { + cmpMeta.$listeners$ = compactMeta[3]; + } + if (BUILD.reflect) { + cmpMeta.$attrsToReflect$ = []; + } + if (BUILD.watchCallback) { + cmpMeta.$watchers$ = {}; + } + if (BUILD.shadowDom && !supportsShadow && cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) { + cmpMeta.$flags$ |= 8 /* needsShadowDomShim */; + } + const tagName = BUILD.transformTagName && options.transformTagName ? options.transformTagName(cmpMeta.$tagName$) : cmpMeta.$tagName$; + const HostElement = class extends HTMLElement { + // StencilLazyHost + constructor(self) { + // @ts-ignore + super(self); + self = this; + registerHost(self, cmpMeta); + if (BUILD.shadowDom && cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) { + // this component is using shadow dom + // and this browser supports shadow dom + // add the read-only property "shadowRoot" to the host element + // adding the shadow root build conditionals to minimize runtime + if (supportsShadow) { + if (BUILD.shadowDelegatesFocus) { + self.attachShadow({ + mode: 'open', + delegatesFocus: !!(cmpMeta.$flags$ & 16 /* shadowDelegatesFocus */), + }); + } + else { + self.attachShadow({ mode: 'open' }); + } + } + else if (!BUILD.hydrateServerSide && !('shadowRoot' in self)) { + self.shadowRoot = self; + } + } + if (BUILD.slotChildNodesFix) { + patchChildSlotNodes(self, cmpMeta); + } + } + connectedCallback() { + if (appLoadFallback) { + clearTimeout(appLoadFallback); + appLoadFallback = null; + } + if (isBootstrapping) { + // connectedCallback will be processed once all components have been registered + deferredConnectedCallbacks.push(this); + } + else { + plt.jmp(() => connectedCallback(this)); + } + } + disconnectedCallback() { + plt.jmp(() => disconnectedCallback(this)); + } + forceUpdate() { + if (BUILD.isDev) { + consoleDevWarn(`element.forceUpdate() is deprecated, use the "forceUpdate" function from "@stencil/core" instead: + + import { forceUpdate } from ‘@stencil/core’; + + forceUpdate(this); + forceUpdate(element);`); + } + forceUpdate(this); + } + componentOnReady() { + return getHostRef(this).$onReadyPromise$; + } + }; + if (BUILD.cloneNodeFix) { + patchCloneNode(HostElement.prototype); + } + if (BUILD.appendChildSlotFix) { + patchSlotAppendChild(HostElement.prototype); + } + if (BUILD.hotModuleReplacement) { + HostElement.prototype['s-hmr'] = function (hmrVersionId) { + hmrStart(this, cmpMeta, hmrVersionId); + }; + } + cmpMeta.$lazyBundleId$ = lazyBundle[0]; + if (!exclude.includes(tagName) && !customElements.get(tagName)) { + cmpTags.push(tagName); + customElements.define(tagName, proxyComponent(HostElement, cmpMeta, 1 /* isElementConstructor */)); + } + })); + if (BUILD.hydratedClass || BUILD.hydratedAttribute) { + visibilityStyle.innerHTML = cmpTags + HYDRATED_CSS; + visibilityStyle.setAttribute('data-styles', ''); + head.insertBefore(visibilityStyle, metaCharset ? metaCharset.nextSibling : head.firstChild); + } + // Process deferred connectedCallbacks now all components have been registered + isBootstrapping = false; + if (deferredConnectedCallbacks.length) { + deferredConnectedCallbacks.map(host => host.connectedCallback()); + } + else { + if (BUILD.profile) { + plt.jmp(() => (appLoadFallback = setTimeout(appDidLoad, 30, 'timeout'))); + } + else { + plt.jmp(() => (appLoadFallback = setTimeout(appDidLoad, 30))); + } + } + // Fallback appLoad event + endBootstrap(); +}; +const getAssetPath = (path) => { + const assetUrl = new URL(path, plt.$resourcesUrl$); + return assetUrl.origin !== win.location.origin ? assetUrl.href : assetUrl.pathname; +}; +const setAssetPath = (path) => (plt.$resourcesUrl$ = path); +const getConnect = (_ref, tagName) => { + const componentOnReady = () => { + let elm = doc.querySelector(tagName); + if (!elm) { + elm = doc.createElement(tagName); + doc.body.appendChild(elm); + } + return typeof elm.componentOnReady === 'function' ? elm.componentOnReady() : Promise.resolve(elm); + }; + const create = (...args) => { + return componentOnReady().then(el => el.create(...args)); + }; + return { + create, + componentOnReady, + }; +}; +const getContext = (_elm, context) => { + if (context in Context) { + return Context[context]; + } + else if (context === 'window') { + return win; + } + else if (context === 'document') { + return doc; + } + else if (context === 'isServer' || context === 'isPrerender') { + return BUILD.hydrateServerSide ? true : false; + } + else if (context === 'isClient') { + return BUILD.hydrateServerSide ? false : true; + } + else if (context === 'resourcesUrl' || context === 'publicPath') { + return getAssetPath('.'); + } + else if (context === 'queue') { + return { + write: writeTask, + read: readTask, + tick: { + then(cb) { + return nextTick(cb); + }, + }, + }; + } + return undefined; +}; +const insertVdomAnnotations = (doc, staticComponents) => { + if (doc != null) { + const docData = { + hostIds: 0, + rootLevelIds: 0, + staticComponents: new Set(staticComponents), + }; + const orgLocationNodes = []; + parseVNodeAnnotations(doc, doc.body, docData, orgLocationNodes); + orgLocationNodes.forEach(orgLocationNode => { + if (orgLocationNode != null) { + const nodeRef = orgLocationNode['s-nr']; + let hostId = nodeRef['s-host-id']; + let nodeId = nodeRef['s-node-id']; + let childId = `${hostId}.${nodeId}`; + if (hostId == null) { + hostId = 0; + docData.rootLevelIds++; + nodeId = docData.rootLevelIds; + childId = `${hostId}.${nodeId}`; + if (nodeRef.nodeType === 1 /* ElementNode */) { + nodeRef.setAttribute(HYDRATE_CHILD_ID, childId); + } + else if (nodeRef.nodeType === 3 /* TextNode */) { + if (hostId === 0) { + const textContent = nodeRef.nodeValue.trim(); + if (textContent === '') { + // useless whitespace node at the document root + orgLocationNode.remove(); + return; + } + } + const commentBeforeTextNode = doc.createComment(childId); + commentBeforeTextNode.nodeValue = `${TEXT_NODE_ID}.${childId}`; + nodeRef.parentNode.insertBefore(commentBeforeTextNode, nodeRef); + } + } + let orgLocationNodeId = `${ORG_LOCATION_ID}.${childId}`; + const orgLocationParentNode = orgLocationNode.parentElement; + if (orgLocationParentNode) { + if (orgLocationParentNode['s-en'] === '') { + // ending with a "." means that the parent element + // of this node's original location is a SHADOW dom element + // and this node is apart of the root level light dom + orgLocationNodeId += `.`; + } + else if (orgLocationParentNode['s-en'] === 'c') { + // ending with a ".c" means that the parent element + // of this node's original location is a SCOPED element + // and this node is apart of the root level light dom + orgLocationNodeId += `.c`; + } + } + orgLocationNode.nodeValue = orgLocationNodeId; + } + }); + } +}; +const parseVNodeAnnotations = (doc, node, docData, orgLocationNodes) => { + if (node == null) { + return; + } + if (node['s-nr'] != null) { + orgLocationNodes.push(node); + } + if (node.nodeType === 1 /* ElementNode */) { + node.childNodes.forEach(childNode => { + const hostRef = getHostRef(childNode); + if (hostRef != null && !docData.staticComponents.has(childNode.nodeName.toLowerCase())) { + const cmpData = { + nodeIds: 0, + }; + insertVNodeAnnotations(doc, childNode, hostRef.$vnode$, docData, cmpData); + } + parseVNodeAnnotations(doc, childNode, docData, orgLocationNodes); + }); + } +}; +const insertVNodeAnnotations = (doc, hostElm, vnode, docData, cmpData) => { + if (vnode != null) { + const hostId = ++docData.hostIds; + hostElm.setAttribute(HYDRATE_ID, hostId); + if (hostElm['s-cr'] != null) { + hostElm['s-cr'].nodeValue = `${CONTENT_REF_ID}.${hostId}`; + } + if (vnode.$children$ != null) { + const depth = 0; + vnode.$children$.forEach((vnodeChild, index) => { + insertChildVNodeAnnotations(doc, vnodeChild, cmpData, hostId, depth, index); + }); + } + if (hostElm && vnode && vnode.$elm$ && !hostElm.hasAttribute('c-id')) { + const parent = hostElm.parentElement; + if (parent && parent.childNodes) { + const parentChildNodes = Array.from(parent.childNodes); + const comment = parentChildNodes.find(node => node.nodeType === 8 /* CommentNode */ && node['s-sr']); + if (comment) { + const index = parentChildNodes.indexOf(hostElm) - 1; + vnode.$elm$.setAttribute(HYDRATE_CHILD_ID, `${comment['s-host-id']}.${comment['s-node-id']}.0.${index}`); + } + } + } + } +}; +const insertChildVNodeAnnotations = (doc, vnodeChild, cmpData, hostId, depth, index) => { + const childElm = vnodeChild.$elm$; + if (childElm == null) { + return; + } + const nodeId = cmpData.nodeIds++; + const childId = `${hostId}.${nodeId}.${depth}.${index}`; + childElm['s-host-id'] = hostId; + childElm['s-node-id'] = nodeId; + if (childElm.nodeType === 1 /* ElementNode */) { + childElm.setAttribute(HYDRATE_CHILD_ID, childId); + } + else if (childElm.nodeType === 3 /* TextNode */) { + const parentNode = childElm.parentNode; + if (parentNode.nodeName !== 'STYLE') { + const textNodeId = `${TEXT_NODE_ID}.${childId}`; + const commentBeforeTextNode = doc.createComment(textNodeId); + parentNode.insertBefore(commentBeforeTextNode, childElm); + } + } + else if (childElm.nodeType === 8 /* CommentNode */) { + if (childElm['s-sr']) { + const slotName = childElm['s-sn'] || ''; + const slotNodeId = `${SLOT_NODE_ID}.${childId}.${slotName}`; + childElm.nodeValue = slotNodeId; + } + } + if (vnodeChild.$children$ != null) { + const childDepth = depth + 1; + vnodeChild.$children$.forEach((vnode, index) => { + insertChildVNodeAnnotations(doc, vnode, cmpData, hostId, childDepth, index); + }); + } +}; +const hostRefs = new WeakMap(); +const getHostRef = (ref) => hostRefs.get(ref); +const registerInstance = (lazyInstance, hostRef) => hostRefs.set((hostRef.$lazyInstance$ = lazyInstance), hostRef); +const registerHost = (elm, cmpMeta) => { + const hostRef = { + $flags$: 0, + $hostElement$: elm, + $cmpMeta$: cmpMeta, + $instanceValues$: new Map(), + }; + if (BUILD.isDev) { + hostRef.$renderCount$ = 0; + } + if (BUILD.method && BUILD.lazyLoad) { + hostRef.$onInstancePromise$ = new Promise(r => (hostRef.$onInstanceResolve$ = r)); + } + if (BUILD.asyncLoading) { + hostRef.$onReadyPromise$ = new Promise(r => (hostRef.$onReadyResolve$ = r)); + elm['s-p'] = []; + elm['s-rc'] = []; + } + addHostEventListeners(elm, hostRef, cmpMeta.$listeners$, false); + return hostRefs.set(elm, hostRef); +}; +const isMemberInElement = (elm, memberName) => memberName in elm; +const STENCIL_DEV_MODE = BUILD.isTesting + ? ['STENCIL:'] // E2E testing + : ['%cstencil', 'color: white;background:#4c47ff;font-weight: bold; font-size:10px; padding:2px 6px; border-radius: 5px']; +const consoleDevError = (...m) => console.error(...STENCIL_DEV_MODE, ...m); +const consoleDevWarn = (...m) => console.warn(...STENCIL_DEV_MODE, ...m); +const consoleDevInfo = (...m) => console.info(...STENCIL_DEV_MODE, ...m); +const consoleError = (e) => console.error(e); +const cmpModules = /*@__PURE__*/ new Map(); +const loadModule = (cmpMeta, hostRef, hmrVersionId) => { + // loadModuleImport + const exportName = cmpMeta.$tagName$.replace(/-/g, '_'); + const bundleId = cmpMeta.$lazyBundleId$; + if (BUILD.isDev && typeof bundleId !== 'string') { + consoleDevError(`Trying to lazily load component <${cmpMeta.$tagName$}> with style mode "${hostRef.$modeName$}", but it does not exist.`); + return undefined; + } + const module = !BUILD.hotModuleReplacement ? cmpModules.get(bundleId) : false; + if (module) { + return module[exportName]; + } + return __sc_import_ionicons_site( + /* webpackInclude: /\.entry\.js$/ */ + /* webpackExclude: /\.system\.entry\.js$/ */ + /* webpackMode: "lazy" */ + `./${bundleId}.entry.js${BUILD.hotModuleReplacement && hmrVersionId ? '?s-hmr=' + hmrVersionId : ''}`).then(importedModule => { + if (!BUILD.hotModuleReplacement) { + cmpModules.set(bundleId, importedModule); + } + return importedModule[exportName]; + }, consoleError); +}; +const styles = new Map(); +const modeResolutionChain = []; +const queueDomReads = []; +const queueDomWrites = []; +const queueDomWritesLow = []; +const queueTask = (queue, write) => (cb) => { + queue.push(cb); + if (!queuePending) { + queuePending = true; + if (write && plt.$flags$ & 4 /* queueSync */) { + nextTick(flush); + } + else { + plt.raf(flush); + } + } +}; +const consume = (queue) => { + for (let i = 0; i < queue.length; i++) { + try { + queue[i](performance.now()); + } + catch (e) { + consoleError(e); + } + } + queue.length = 0; +}; +const consumeTimeout = (queue, timeout) => { + let i = 0; + let ts = 0; + while (i < queue.length && (ts = performance.now()) < timeout) { + try { + queue[i++](ts); + } + catch (e) { + consoleError(e); + } + } + if (i === queue.length) { + queue.length = 0; + } + else if (i !== 0) { + queue.splice(0, i); + } +}; +const flush = () => { + if (BUILD.asyncQueue) { + queueCongestion++; + } + // always force a bunch of medium callbacks to run, but still have + // a throttle on how many can run in a certain time + // DOM READS!!! + consume(queueDomReads); + // DOM WRITES!!! + if (BUILD.asyncQueue) { + const timeout = (plt.$flags$ & 6 /* queueMask */) === 2 /* appLoaded */ ? performance.now() + 14 * Math.ceil(queueCongestion * (1.0 / 10.0)) : Infinity; + consumeTimeout(queueDomWrites, timeout); + consumeTimeout(queueDomWritesLow, timeout); + if (queueDomWrites.length > 0) { + queueDomWritesLow.push(...queueDomWrites); + queueDomWrites.length = 0; + } + if ((queuePending = queueDomReads.length + queueDomWrites.length + queueDomWritesLow.length > 0)) { + // still more to do yet, but we've run out of time + // let's let this thing cool off and try again in the next tick + plt.raf(flush); + } + else { + queueCongestion = 0; + } + } + else { + consume(queueDomWrites); + if ((queuePending = queueDomReads.length > 0)) { + // still more to do yet, but we've run out of time + // let's let this thing cool off and try again in the next tick + plt.raf(flush); + } + } +}; +const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb); +const readTask = /*@__PURE__*/ queueTask(queueDomReads, false); +const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true); +const Build = { + isDev: BUILD.isDev ? true : false, + isBrowser: true, + isServer: false, + isTesting: BUILD.isTesting ? true : false, +}; + +export { BUILD as B, CSS as C, H, NAMESPACE as N, promiseResolve as a, bootstrapLazy as b, consoleDevInfo as c, doc as d, Build as e, forceUpdate as f, getRenderingRef as g, h, getElement as i, Host as j, createEvent as k, getContext as l, plt as p, registerInstance as r, win as w }; diff --git a/docs/build/index-ff62d206.js b/docs/build/index-ff62d206.js new file mode 100644 index 0000000..1a6cf7a --- /dev/null +++ b/docs/build/index-ff62d206.js @@ -0,0 +1,879 @@ +import { g as getRenderingRef, f as forceUpdate, e as Build, h } from './index-93b10a2a.js'; +import { c as createCommonjsModule, a as commonjsGlobal, u as unwrapExports } from './_commonjsHelpers-8f072dc7.js'; +import { a as applyProps } from './Button-36d57e33.js'; +import { P as Paragraph, H as Heading, B as Blockquote } from './index-5421a3d1.js'; + +var prismicRichtext_min = createCommonjsModule(function (module, exports) { +!function(e,t){"object"=='object'&&"object"=='object'?module.exports=t():"function"==typeof undefined&&undefined.amd?undefined("PrismicRichtext",[],t):"object"=='object'?exports.PrismicRichtext=t():e.PrismicRichtext=t();}("undefined"!=typeof self?self:commonjsGlobal,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r});},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0});},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=9)}([function(e,t,n){var r=n(3);e.exports=function(e){return function t(n){return 0===arguments.length||r(n)?t:e.apply(this,arguments)}};},function(e,t,n){var r=n(0),o=n(3);e.exports=function(e){return function t(n,i){switch(arguments.length){case 0:return t;case 1:return o(n)?t:r(function(t){return e(n,t)});default:return o(n)&&o(i)?t:o(n)?r(function(t){return e(t,i)}):o(i)?r(function(t){return e(n,t)}):e(n,i)}}};},function(e,t,n){"use strict";var r;function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Object.defineProperty(t,"__esModule",{value:!0}),t.PRIORITIES=t.NODE_TYPES=void 0;var i={heading1:"heading1",heading2:"heading2",heading3:"heading3",heading4:"heading4",heading5:"heading5",heading6:"heading6",paragraph:"paragraph",preformatted:"preformatted",strong:"strong",em:"em",listItem:"list-item",oListItem:"o-list-item",list:"group-list-item",oList:"group-o-list-item",image:"image",embed:"embed",hyperlink:"hyperlink",label:"label",span:"span"};t.NODE_TYPES=i;var u=(o(r={},i.heading1,4),o(r,i.heading2,4),o(r,i.heading3,4),o(r,i.heading4,4),o(r,i.heading5,4),o(r,i.heading6,4),o(r,i.paragraph,3),o(r,i.preformatted,5),o(r,i.strong,6),o(r,i.em,6),o(r,i.oList,1),o(r,i.list,1),o(r,i.listItem,1),o(r,i.oListItem,1),o(r,i.image,1),o(r,i.embed,1),o(r,i.hyperlink,3),o(r,i.label,4),o(r,i.span,7),r);t.PRIORITIES=u;},function(e,t){e.exports=function(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]};},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=d(n(12)),o=d(n(15)),i=d(n(16)),u=d(n(17)),c=d(n(21)),a=d(n(7)),l=n(23),f=n(2),s=n(8);function d(e){return e&&e.__esModule?e:{default:e}}function p(e,t){for(var n=0;nt.end?{inner:s.SpanNode.slice(n,n.start,t.end,e),outer:s.SpanNode.slice(n,t.end,n.end,e)}:{inner:n}}(e,t.elected,r);return {inner:o.concat(u.inner),outer:u.outer?i.concat(u.outer):i}},{inner:[],outer:[]}),r=n.inner,o=n.outer;return [t.elected.setChildren(x(e,r,t.elected.boundaries()))].concat(b(e,o))}function v(e){return function(e,t){return t.reduce(function(t,n){var r=(0,c.default)(t);if(r){if(r.some(function(e){return e.isParentOf(n)}))return (0,u.default)(t).concat([r.concat(n)]);var o=(0,c.default)(r);return o&&e(o,n)?(0,u.default)(t).concat([r.concat(n)]):t.concat([[n]])}return [[n]]},[])}(function(e,t){return e.end>=t.start},(0,i.default)([function(e,t){return e.start-t.start},function(e,t){return e.end-t.end}],e))}function m(e){if(0===e.length)throw new Error("Unable to elect node on empty list");var t=h(e.sort(function(e,t){if(e.isParentOf(t))return -1;if(t.isParentOf(e))return 1;var n=f.PRIORITIES[e.type]-f.PRIORITIES[t.type];return 0===n?e.text.length-t.text.length:n}));return {elected:t[0],others:t.slice(1)}}function x(e,t,n){if(t.length>0)return function(e,t,n){return t.reduce(function(r,o,i){var u=[],c=0===i&&o.start>n.lower,a=i===t.length-1&&n.upper>o.end;if(c){var l=new s.TextNode(n.lower,o.start,e.slice(n.lower,o.start));u=u.concat(l);}else {var f=t[i-1];if(f&&o.start>f.end){var d=e.slice(f.end,o.start),p=new s.TextNode(f.end,o.start,d);u=u.concat(p);}}if(u=u.concat(o),a){var h=new s.TextNode(o.end,n.upper,e.slice(o.end,n.upper));u=u.concat(h);}return r.concat(u)},[])}(e,b(e,t),n);var r=e.slice(n.lower,n.upper);return [new s.TextNode(n.lower,n.upper,r)]}function b(e,t){var n=v((0,o.default)(function(e){return e.start},t)).map(m),i=(0,r.default)(n.map(function(t){return y(e,t)}));return (0,o.default)(function(e){return e.start},i)}var g=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);}var t,n,r;return t=e,r=[{key:"fromRichText",value:function(e){return {key:(0,a.default)(),children:e.reduce(function(e,t,n){if(l.RichTextBlock.isEmbedBlock(t.type)||l.RichTextBlock.isImageBlock(t.type))return e.concat(new s.BlockNode(t.type,t));var r=function(e){var t=e.spans.map(function(t){var n=e.text.slice(t.start,t.end);return new s.SpanNode(t.start,t.end,t.type,n,[],t)}),n={lower:0,upper:e.text.length};return x(e.text,t,n)}(t),o=e[e.length-1];if(l.RichTextBlock.isListItem(t.type)&&o&&o instanceof s.ListBlockNode){var i=new s.ListItemBlockNode(t,r),c=o.addChild(i);return (0,u.default)(e).concat(c)}if(l.RichTextBlock.isOrderedListItem(t.type)&&o&&o instanceof s.OrderedListBlockNode){var a=new s.OrderedListItemBlockNode(t,r),f=o.addChild(a);return (0,u.default)(e).concat(f)}if(l.RichTextBlock.isListItem(t.type)){var d=new s.ListItemBlockNode(t,r),p=new s.ListBlockNode(l.RichTextBlock.emptyList(),[d]);return e.concat(p)}if(l.RichTextBlock.isOrderedListItem(t.type)){var h=new s.OrderedListItemBlockNode(t,r),y=new s.OrderedListBlockNode(l.RichTextBlock.emptyOrderedList(),[h]);return e.concat(y)}return e.concat(new s.BlockNode(t.type,t,r))},[])}}}],(n=null)&&p(t.prototype,n),r&&p(t,r),e}();t.default=g;},function(e,t){e.exports=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)};},function(e,t){e.exports=function(e){return "[object String]"===Object.prototype.toString.call(e)};},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=(new Date).getTime();return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var n=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?n:3&n|8).toString(16)})};},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListBlockNode=t.OrderedListBlockNode=t.OrderedListItemBlockNode=t.ListItemBlockNode=t.BlockNode=t.TextNode=t.SpanNode=t.Node=void 0;var r,o=(r=n(7))&&r.__esModule?r:{default:r},i=n(2);function u(e){return (u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n=e.end}},{key:"setChildren",value:function(e){return new t(this.start,this.end,this.type,this.text,e,this.element)}}],[{key:"slice",value:function(e,n,r,o){return new t(n,r,e.type,o.slice(n,r),e.children,e.element)}}]),t}();t.SpanNode=y;var v=function(e){function t(e,n,r){p(this,t);var o={type:i.NODE_TYPES.span,start:e,end:n,text:r};return l(this,f(t).call(this,e,n,i.NODE_TYPES.span,r,[],o))}return s(t,y),t}();t.TextNode=v;var m=function(e){function t(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return p(this,t),l(this,f(t).call(this,e,n,r))}return s(t,h),t}();t.BlockNode=m;var x=function(e){function t(e,n){return p(this,t),l(this,f(t).call(this,i.NODE_TYPES.listItem,e,n))}return s(t,m),t}();t.ListItemBlockNode=x;var b=function(e){function t(e,n){return p(this,t),l(this,f(t).call(this,i.NODE_TYPES.oListItem,e,n))}return s(t,m),t}();t.OrderedListItemBlockNode=b;var g=function(e){function t(e,n){return p(this,t),l(this,f(t).call(this,i.NODE_TYPES.oList,e,n))}return s(t,m),a(t,[{key:"addChild",value:function(e){var n=this.children.concat(e);return new t(this.element,n)}}]),t}();t.OrderedListBlockNode=g;var O=function(e){function t(e,n){return p(this,t),l(this,f(t).call(this,i.NODE_TYPES.list,e,n))}return s(t,m),a(t,[{key:"addChild",value:function(e){var n=this.children.concat(e);return new t(this.element,n)}}]),t}();t.ListBlockNode=O;},function(e,t,n){e.exports=n(10);},function(e,t,n){"use strict";var r=c(n(11)),o=c(n(4)),i=c(n(24)),u=n(2);function c(e){return e&&e.__esModule?e:{default:e}}e.exports={asText:r.default,asTree:o.default.fromRichText,serialize:i.default,Elements:u.NODE_TYPES};},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){var n="string"==typeof t?t:" ";return e.map(function(e){return e.text}).join(n)};t.default=r;},function(e,t,n){var r=n(0)(n(13)(!0));e.exports=r;},function(e,t,n){var r=n(14);e.exports=function(e){return function t(n){for(var o,i,u,c=[],a=0,l=n.length;a0&&(e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1)))))});e.exports=u;},function(e,t,n){var r=n(1)(function(e,t){return Array.prototype.slice.call(t,0).sort(function(t,n){var r=e(t),o=e(n);return ro?1:0})});e.exports=r;},function(e,t,n){var r=n(1)(function(e,t){return Array.prototype.slice.call(t,0).sort(function(t,n){for(var r=0,o=0;0===r&&o { + const items = map.get(propName); + if (!items) { + map.set(propName, [value]); + } + else if (!items.includes(value)) { + items.push(value); + } +}; +const debounce = (fn, ms) => { + let timeoutId; + return (...args) => { + if (timeoutId) { + clearTimeout(timeoutId); + } + timeoutId = setTimeout(() => { + timeoutId = 0; + fn(...args); + }, ms); + }; +}; + +/** + * Check if a possible element isConnected. + * The property might not be there, so we check for it. + * + * We want it to return true if isConnected is not a property, + * otherwise we would remove these elements and would not update. + * + * Better leak in Edge than to be useless. + */ +const isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected; +const cleanupElements = debounce((map) => { + for (let key of map.keys()) { + map.set(key, map.get(key).filter(isConnected)); + } +}, 2000); +const stencilSubscription = ({ on }) => { + const elmsToUpdate = new Map(); + if (typeof getRenderingRef === 'function') { + // If we are not in a stencil project, we do nothing. + // This function is not really exported by @stencil/core. + on('dispose', () => { + elmsToUpdate.clear(); + }); + on('get', (propName) => { + const elm = getRenderingRef(); + if (elm) { + appendToMap(elmsToUpdate, propName, elm); + } + }); + on('set', (propName) => { + const elements = elmsToUpdate.get(propName); + if (elements) { + elmsToUpdate.set(propName, elements.filter(forceUpdate)); + } + cleanupElements(elmsToUpdate); + }); + on('reset', () => { + elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate)); + cleanupElements(elmsToUpdate); + }); + } +}; + +const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => { + let states = new Map(Object.entries(defaultState !== null && defaultState !== void 0 ? defaultState : {})); + const handlers = { + dispose: [], + get: [], + set: [], + reset: [], + }; + const reset = () => { + states = new Map(Object.entries(defaultState !== null && defaultState !== void 0 ? defaultState : {})); + handlers.reset.forEach((cb) => cb()); + }; + const dispose = () => { + // Call first dispose as resetting the state would + // cause less updates ;) + handlers.dispose.forEach((cb) => cb()); + reset(); + }; + const get = (propName) => { + handlers.get.forEach((cb) => cb(propName)); + return states.get(propName); + }; + const set = (propName, value) => { + const oldValue = states.get(propName); + if (shouldUpdate(value, oldValue, propName)) { + states.set(propName, value); + handlers.set.forEach((cb) => cb(propName, value, oldValue)); + } + }; + const state = (typeof Proxy === 'undefined' + ? {} + : new Proxy(defaultState, { + get(_, propName) { + return get(propName); + }, + ownKeys(_) { + return Array.from(states.keys()); + }, + getOwnPropertyDescriptor() { + return { + enumerable: true, + configurable: true, + }; + }, + has(_, propName) { + return states.has(propName); + }, + set(_, propName, value) { + set(propName, value); + return true; + }, + })); + const on = (eventName, callback) => { + handlers[eventName].push(callback); + return () => { + removeFromArray(handlers[eventName], callback); + }; + }; + const onChange = (propName, cb) => { + const unSet = on('set', (key, newValue) => { + if (key === propName) { + cb(newValue); + } + }); + const unReset = on('reset', () => cb(defaultState[propName])); + return () => { + unSet(); + unReset(); + }; + }; + const use = (...subscriptions) => subscriptions.forEach((subscription) => { + if (subscription.set) { + on('set', subscription.set); + } + if (subscription.get) { + on('get', subscription.get); + } + if (subscription.reset) { + on('reset', subscription.reset); + } + }); + const forceUpdate = (key) => { + const oldValue = states.get(key); + handlers.set.forEach((cb) => cb(key, oldValue, oldValue)); + }; + return { + state, + get, + set, + on, + onChange, + use, + dispose, + reset, + forceUpdate, + }; +}; +const removeFromArray = (array, item) => { + const index = array.indexOf(item); + if (index >= 0) { + array[index] = array[array.length - 1]; + array.length--; + } +}; + +const createStore = (defaultState, shouldUpdate) => { + const map = createObservableMap(defaultState, shouldUpdate); + stencilSubscription(map); + return map; +}; + +let defaultRouter; +const createRouter = (opts) => { + var _a; + const win = window; + const url = new URL(win.location.href); + const parseURL = (_a = opts === null || opts === void 0 ? void 0 : opts.parseURL) !== null && _a !== void 0 ? _a : DEFAULT_PARSE_URL; + const { state, onChange, dispose } = createStore({ + url, + activePath: parseURL(url) + }, (newV, oldV, prop) => { + if (prop === 'url') { + return newV.href !== oldV.href; + } + return newV !== oldV; + }); + const push = (href) => { + history.pushState(null, null, href); + const url = new URL(href, document.baseURI); + state.url = url; + state.activePath = parseURL(url); + }; + const match = (routes) => { + const { activePath } = state; + for (let route of routes) { + const params = matchPath(activePath, route.path); + if (params) { + if (route.to != null) { + push(route.to); + return match(routes); + } + else { + return { params, route }; + } + } + } + return undefined; + }; + const navigationChanged = () => { + const url = new URL(win.location.href); + state.url = url; + state.activePath = parseURL(url); + }; + const Switch = (_, childrenRoutes) => { + const result = match(childrenRoutes); + if (result) { + if (typeof result.route.jsx === 'function') { + return result.route.jsx(result.params); + } + else { + return result.route.jsx; + } + } + }; + const disposeRouter = () => { + defaultRouter = undefined; + win.removeEventListener('popstate', navigationChanged); + dispose(); + }; + const router = defaultRouter = { + Switch, + get url() { + return state.url; + }, + get activePath() { + return state.activePath; + }, + push, + onChange: onChange, + dispose: disposeRouter, + }; + // Initial update + navigationChanged(); + // Listen URL changes + win.addEventListener('popstate', navigationChanged); + return router; +}; +const Route = (props, children) => { + var _a; + if ('to' in props) { + return { + path: props.path, + to: props.to, + }; + } + if (Build.isDev && props.render && children.length > 0) { + console.warn('Route: if `render` is provided, the component should not have any childreen'); + } + return { + path: props.path, + id: props.id, + jsx: (_a = props.render) !== null && _a !== void 0 ? _a : children, + }; +}; +const href = (href, router = defaultRouter) => { + if (Build.isDev && !router) { + throw new Error('Router must be defined in href'); + } + return { + href, + onClick: (ev) => { + ev.preventDefault(); + router.push(href); + }, + }; +}; +const matchPath = (pathname, path) => { + if (typeof path === 'string') { + if (path === pathname) { + return {}; + } + } + else if (typeof path === 'function') { + const params = path(pathname); + if (params) { + return params === true + ? {} + : { ...params }; + } + } + else { + const results = path.exec(pathname); + if (results) { + path.lastIndex = 0; + return { ...results }; + } + } + return undefined; +}; +const DEFAULT_PARSE_URL = (url) => { + return url.pathname.toLowerCase(); +}; +const NotFound = () => ({}); + +/** + * TS adaption of https://github.com/pillarjs/path-to-regexp/blob/master/index.js + */ +/** + * Default configs. + */ +const DEFAULT_DELIMITER = '/'; +const DEFAULT_DELIMITERS = './'; +/** + * The main path matching regexp utility. + */ +const PATH_REGEXP = new RegExp([ + // Match escaped characters that would otherwise appear in future matches. + // This allows the user to escape special characters that won't transform. + '(\\\\.)', + // Match Express-style parameters and un-named parameters with a prefix + // and optional suffixes. Matches appear as: + // + // "/:test(\\d+)?" => ["/", "test", "\d+", undefined, "?"] + // "/route(\\d+)" => [undefined, undefined, undefined, "\d+", undefined] + '(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?' +].join('|'), 'g'); +/** + * Parse a string for the raw tokens. + */ +const parse = (str, options) => { + var tokens = []; + var key = 0; + var index = 0; + var path = ''; + var defaultDelimiter = (options && options.delimiter) || DEFAULT_DELIMITER; + var delimiters = (options && options.delimiters) || DEFAULT_DELIMITERS; + var pathEscaped = false; + var res; + while ((res = PATH_REGEXP.exec(str)) !== null) { + var m = res[0]; + var escaped = res[1]; + var offset = res.index; + path += str.slice(index, offset); + index = offset + m.length; + // Ignore already escaped sequences. + if (escaped) { + path += escaped[1]; + pathEscaped = true; + continue; + } + var prev = ''; + var next = str[index]; + var name = res[2]; + var capture = res[3]; + var group = res[4]; + var modifier = res[5]; + if (!pathEscaped && path.length) { + var k = path.length - 1; + if (delimiters.indexOf(path[k]) > -1) { + prev = path[k]; + path = path.slice(0, k); + } + } + // Push the current path onto the tokens. + if (path) { + tokens.push(path); + path = ''; + pathEscaped = false; + } + var partial = prev !== '' && next !== undefined && next !== prev; + var repeat = modifier === '+' || modifier === '*'; + var optional = modifier === '?' || modifier === '*'; + var delimiter = prev || defaultDelimiter; + var pattern = capture || group; + tokens.push({ + name: name || key++, + prefix: prev, + delimiter: delimiter, + optional: optional, + repeat: repeat, + partial: partial, + pattern: pattern ? escapeGroup(pattern) : '[^' + escapeString(delimiter) + ']+?' + }); + } + // Push any remaining characters. + if (path || index < str.length) { + tokens.push(path + str.substr(index)); + } + return tokens; +}; +/** + * Escape a regular expression string. + */ +const escapeString = (str) => { + return str.replace(/([.+*?=^!:${}()[\]|/\\])/g, '\\$1'); +}; +/** + * Escape the capturing group by escaping special characters and meaning. + */ +const escapeGroup = (group) => { + return group.replace(/([=!:$/()])/g, '\\$1'); +}; +/** + * Get the flags for a regexp from the options. + */ +const flags = (options) => { + return options && options.sensitive ? '' : 'i'; +}; +/** + * Pull out keys from a regexp. + */ +const regexpToRegexp = (path, keys) => { + if (!keys) + return path; + // Use a negative lookahead to match only capturing groups. + var groups = path.source.match(/\((?!\?)/g); + if (groups) { + for (var i = 0; i < groups.length; i++) { + keys.push({ + name: i, + prefix: null, + delimiter: null, + optional: false, + repeat: false, + partial: false, + pattern: null + }); + } + } + return path; +}; +/** + * Transform an array into a regexp. + */ +const arrayToRegexp = (path, keys, options) => { + var parts = []; + for (var i = 0; i < path.length; i++) { + parts.push(pathToRegexp(path[i], keys, options).source); + } + return new RegExp('(?:' + parts.join('|') + ')', flags(options)); +}; +/** + * Create a path regexp from string input. + */ +const stringToRegexp = (path, keys, options) => { + return tokensToRegExp(parse(path, options), keys, options); +}; +/** + * Expose a function for taking tokens and returning a RegExp. + */ +const tokensToRegExp = (tokens, keys, options) => { + options = options || {}; + var strict = options.strict; + var end = options.end !== false; + var delimiter = escapeString(options.delimiter || DEFAULT_DELIMITER); + var delimiters = options.delimiters || DEFAULT_DELIMITERS; + var endsWith = [].concat(options.endsWith || []).map(escapeString).concat('$').join('|'); + var route = ''; + var isEndDelimited = false; + // Iterate over the tokens and create our regexp string. + for (var i = 0; i < tokens.length; i++) { + var token = tokens[i]; + if (typeof token === 'string') { + route += escapeString(token); + isEndDelimited = i === tokens.length - 1 && delimiters.indexOf(token[token.length - 1]) > -1; + } + else { + var prefix = escapeString(token.prefix || ''); + var capture = token.repeat + ? '(?:' + token.pattern + ')(?:' + prefix + '(?:' + token.pattern + '))*' + : token.pattern; + if (keys) + keys.push(token); + if (token.optional) { + if (token.partial) { + route += prefix + '(' + capture + ')?'; + } + else { + route += '(?:' + prefix + '(' + capture + '))?'; + } + } + else { + route += prefix + '(' + capture + ')'; + } + } + } + if (end) { + if (!strict) + route += '(?:' + delimiter + ')?'; + route += endsWith === '$' ? '$' : '(?=' + endsWith + ')'; + } + else { + if (!strict) + route += '(?:' + delimiter + '(?=' + endsWith + '))?'; + if (!isEndDelimited) + route += '(?=' + delimiter + '|' + endsWith + ')'; + } + return new RegExp('^' + route, flags(options)); +}; +/** + * Normalize the given path string, returning a regular expression. + * + * An empty array can be passed in for the keys, which will hold the + * placeholder key descriptions. For example, using `/user/:id`, `keys` will + * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`. + */ +const pathToRegexp = (path, keys, options) => { + if (path instanceof RegExp) { + return regexpToRegexp(path, keys); + } + if (Array.isArray(path)) { + return arrayToRegexp(path, keys, options); + } + return stringToRegexp(path, keys, options); +}; + +let cacheCount = 0; +const patternCache = {}; +const cacheLimit = 10000; +// Memoized function for creating the path match regex +const compilePath = (pattern, options) => { + const cacheKey = `${options.end}${options.strict}`; + const cache = patternCache[cacheKey] || (patternCache[cacheKey] = {}); + const cachePattern = JSON.stringify(pattern); + if (cache[cachePattern]) { + return cache[cachePattern]; + } + const keys = []; + const re = pathToRegexp(pattern, keys, options); + const compiledPattern = { re, keys }; + if (cacheCount < cacheLimit) { + cache[cachePattern] = compiledPattern; + cacheCount += 1; + } + return compiledPattern; +}; +const match = (pathname, options = {}) => { + const { exact = false, strict = false } = options; + const { re, keys } = compilePath(pathname, { end: exact, strict }); + return (path) => { + const match = re.exec(path); + if (!match) { + return undefined; + } + const [url, ...values] = match; + const isExact = path === url; + if (exact && !isExact) { + return undefined; + } + return keys.reduce((memo, key, index) => { + memo[key.name] = values[index]; + return memo; + }, {}); + }; +}; + +function createScript({ property, src, id }) { + if (!window) { + return; + } + (function (src, id) { + var js, fjs = document.getElementsByTagName('script')[0], t = window[property] || {}; + if (document.getElementById(id)) { + return t; + } + js = document.createElement('script'); + js.id = id; + js.src = src; + fjs.parentNode.insertBefore(js, fjs); + t._e = []; + t.ready = function (f) { + t._e.push(f); + }; + return t; + })(src, id); +} +const embeds = { + Twitter: { + property: 'twttr', + src: 'https://platform.twitter.com/widgets.js', + id: 'twitter-wjs', + load: function () { + if (window && window.twttr) { + window.twttr.widgets.load(); + } + }, + }, + Facebook: { + property: 'FB', + src: 'https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.3', + id: 'fb-wjs', + load: (ref) => { + if (window && window.FB) { + window.FB.XFBML.parse(ref); + } + }, + }, + Instagram: { + property: 'instgrm', + src: 'https://www.instagram.com/embed.js', + id: 'insta-wjs', + load: () => { + if (window && window.instgrm) { + window.instgrm.Embeds.process(); + } + }, + }, +}; + +function slugify(text) { + if (!text) { + return ''; + } + return text + .toString() + .toLowerCase() + .replace(/\s+/g, '-') // Replace spaces with - + .replace(/\.+/g, '-') // Replace periods with - + .replace(/[^\w\-]+/g, '') // Remove all non-word chars + .replace(/\-\-+/g, '-') // Replace multiple - with single - + .replace(/^-+/, '') // Trim - from start of text + .replace(/-+$/, ''); // Trim - from end of text +} + +var __rest = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +function htmlSerializer(type, element, _content, children) { + // give headings an ID + switch (type) { + case 'heading1': + case 'heading2': + case 'heading3': + case 'heading4': + case 'heading5': + case 'heading6': + const level = parseInt(type[type.length - 1], 10); + const id = slugify(element.text); + return (h(Heading, { level: level, id: id }, children)); + case 'paragraph': + return h(Paragraph, null, children); + case 'preformatted': + return (h("pre", null, + h("code", null, children))); + // Return null to stick with the default behavior for all other elements + default: + return null; + } +} +function slugifyHeading(children) { + return children.reduce((id, c) => { + return id + slugify(c[0]); + }, ''); +} +function serialize(linkResolver, elements, type, element, content, children, index, routerLink = false, router = null) { + if (elements[type]) { + return serializeElement(elements[type], type, element, content, children, index); + } + const Elements = PrismicRichTextLib.Elements; + switch (type) { + case Elements.heading1: + return serializeStandardTag('h1', element, children, index, { id: slugifyHeading(children) }); + case Elements.heading2: + return serializeStandardTag('h2', element, children, index, { id: slugifyHeading(children) }); + case Elements.heading3: + return serializeStandardTag('h3', element, children, index, { id: slugifyHeading(children) }); + case Elements.heading4: + return serializeStandardTag('h4', element, children, index, { id: slugifyHeading(children) }); + case Elements.heading5: + return serializeStandardTag('h5', element, children, index, { id: slugifyHeading(children) }); + case Elements.heading6: + return serializeStandardTag('h6', element, children, index, { id: slugifyHeading(children) }); + case Elements.paragraph: + return serializeStandardTag('p', element, children, index); + case Elements.preformatted: + return serializeStandardTag('pre', element, children, index); + case Elements.strong: + return serializeStandardTag('strong', element, children, index); + case Elements.em: + return serializeStandardTag('em', element, children, index); + case Elements.listItem: + return serializeStandardTag('li', element, children, index); + case Elements.oListItem: + return serializeStandardTag('li', element, children, index); + case Elements.list: + return serializeStandardTag('ul', element, children, index); + case Elements.oList: + return serializeStandardTag('ol', element, children, index); + case Elements.image: + return serializeImage(linkResolver, element, index); + case Elements.embed: + return serializeEmbed(element, index); + case Elements.hyperlink: + return serializeHyperlink(linkResolver, element, children, index, routerLink, router); + case Elements.label: + return serializeLabel(element, children, index); + case Elements.span: + return serializeSpan(content); + default: + return null; + } +} +function propsWithUniqueKey(props = {}, key) { + return Object.assign(props, { key }); +} +function serializeElement(Element, type, props, _content, children, index) { + return (h(Element, Object.assign({ key: `element-${type}-${index + 1}` }, props, (type === 'image' ? { src: props.url, url: undefined } : null)), children && children.length ? children : undefined)); +} +function serializeStandardTag(Tag, element, children, key, extra = {}) { + const props = element.label ? Object.assign(extra, { className: element.label }) : extra; + return h(Tag, Object.assign({}, propsWithUniqueKey(props, key)), children); +} +function serializeHyperlink(linkResolver, element, children, key, routerLink = false, router = null) { + const targetAttr = element.data.target ? { target: element.data.target } : {}; + const relAttr = element.data.target ? { rel: 'noopener' } : {}; + let href$1 = PrismicHelpers.Link.url(element.data, linkResolver); + if (element.data.url) { + const parsed = new URL(element.data.url); + if (parsed.hostname.indexOf('.') < 0) { + // Allow relative links + href$1 = `/${parsed.hostname}${parsed.pathname + parsed.search + parsed.hash}`; + } + } + const props = Object.assign({ href: href$1 }, targetAttr, relAttr); + if (routerLink) { + return h("a", Object.assign({}, propsWithUniqueKey(props, key), href(props.href, router)), children); + } + else { + return h("a", Object.assign({}, propsWithUniqueKey(props, key)), children); + } +} +function serializeLabel(element, children, key) { + const props = element.data ? Object.assign({}, { className: element.data.label }) : {}; + return h("span", Object.assign({}, propsWithUniqueKey(props, key)), children); +} +function serializeSpan(content) { + if (content) { + return content.split('\n').reduce((acc, p) => { + if (acc.length === 0) { + return [p]; + } + else { + const brIndex = (acc.length + 1) / 2 - 1; + const br = h("br", Object.assign({}, propsWithUniqueKey({}, brIndex))); + return acc.concat([br, p]); + } + }, []); + } + else { + return null; + } +} +function serializeImage(linkResolver, element, key) { + const linkUrl = element.linkTo ? PrismicHelpers.Link.url(element.linkTo, linkResolver) : null; + const linkTarget = element.linkTo && element.linkTo.target ? { target: element.linkTo.target } : {}; + const relAttr = linkTarget.target ? { rel: 'noopener' } : {}; + const img = h("img", { loading: 'lazy', src: element.url, alt: element.alt || '' }); + return (h("p", Object.assign({}, propsWithUniqueKey({ className: [element.label || '', 'block-img'].join(' ') }, key)), linkUrl ? h("a", Object.assign({}, Object.assign({ href: linkUrl }, linkTarget, relAttr)), img) : img)); +} +function serializeEmbed(element, key) { + if (embeds[element.oembed.provider_name]) { + createScript(embeds[element.oembed.provider_name]); + } + const className = `embed embed-${element.oembed.provider_name.toLowerCase()}`; + const props = Object.assign({ + 'data-oembed': element.oembed.embed_url, + 'data-oembed-type': element.oembed.type, + 'data-oembed-provider': element.oembed.provider_name, + ref: (ref) => { + if (embeds[element.oembed.provider_name]) { + embeds[element.oembed.provider_name].load(ref); + } + }, + }, element.label ? { className: `${className} ${element.label}` } : { className }); + const embedHtml = h("div", { innerHTML: element.oembed.html }); + return h("div", Object.assign({}, propsWithUniqueKey(props, key)), embedHtml); +} +const asText = (structuredText) => PrismicRichTextLib.asText(structuredText, null); +const PrismicRichText = (_a, _, utils) => { + var { richText, linkResolver, htmlSerializerProp = htmlSerializer, routerLink, router } = _a, props = __rest(_a, ["richText", "linkResolver", "htmlSerializerProp", "routerLink", "router"]); + const serializedChildren = PrismicRichTextLib.serialize(richText, (...args) => serialize.apply(null, [linkResolver, {}, ...args, routerLink, router]), + // serialize.bind(null, linkResolver, {}), + htmlSerializerProp); + return utils.map(serializedChildren, Child => { + Child.vattrs = applyProps(props, Child.vattrs); + return Child; + }); +}; + +const SliceNormalText = ({ slice }) => (h(PrismicRichText, { richText: slice.primary.content, htmlSerializer: htmlSerializer })); +const SliceRawHtml = ({ slice }) => (h("div", { class: "prismic-raw-html", innerHTML: slice.primary.html_content.map((c) => c.text).join('') })); +const SliceQuote = ({ slice }) => (h(Blockquote, null, + h("div", null, + h(PrismicRichText, { richText: slice.primary.quote })), + slice.primary.name ? (h("cite", null, + slice.primary.name, + h("span", null, slice.primary.description))) : null)); +const SliceFloatingImage = ({ slice }) => (h("figure", null, + h("img", { loading: 'lazy', src: slice.primary.illustration.url, alt: slice.primary.illustration.alt }))); +const SliceAd = ({ slice }) => (h("aside", null, + h("a", { href: slice.primary.link.url, target: slice.primary.link.target }, slice.primary.text[0].text))); +const PrismicBodySlice = ({ slice, key }) => { + switch (slice.slice_type) { + case 'normal_text': + return h(SliceNormalText, { slice: slice, key: key }); + case 'raw_html': + return h(SliceRawHtml, { slice: slice, key: key }); + case 'quote': + return h(SliceQuote, { slice: slice, key: key }); + case 'floating_image': + return h(SliceFloatingImage, { slice: slice, key: key }); + case 'ad': + return h(SliceAd, { slice: slice, key: key }); + } + return null; +}; + +const PrismicContent = ({ content }) => content.map((c, i) => h(PrismicBodySlice, { slice: c, key: i })); + +var __rest$1 = (undefined && undefined.__rest) || function (s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +}; +const PrismicResponsiveImage = (_a) => { + var { image, loading = 'lazy', params, width, height } = _a, props = __rest$1(_a, ["image", "loading", "params", "width", "height"]); + const paramString = params ? + Object.entries(params).reduce((acc, cur) => { + const regex = new RegExp(`\\?.*${cur[0]}=`); + if (!image.url.match(regex)) { + return `${acc}${acc.match(/^\?$/) ? '' : '&'}${cur.join('=')}`; + } + return acc; + }, image.url.match(/\?/) ? '' : '?') : ''; + const imageUrl = new URL(image.url + paramString); + const dimensions = { + 'width': width ? width : imageUrl.searchParams.get('w'), + 'height': height ? height : imageUrl.searchParams.get('h'), + }; + return (h("img", Object.assign({}, applyProps(props), { loading: loading, src: `${imageUrl}` }, { 'srcset': image['1x'] ? `${image['1x'].url}${paramString} 1x, ${imageUrl} 2x` : undefined }, dimensions, { alt: image.alt }))); +}; diff --git a/docs/build/index.esm.js b/docs/build/index.esm.js index 089dba2..2a8c86f 100644 --- a/docs/build/index.esm.js +++ b/docs/build/index.esm.js @@ -1 +1,5 @@ -import"./p-b18ab5ec.js";import"./p-89519618.js";import"./p-660a81d1.js"; \ No newline at end of file +import './index-93b10a2a.js'; +import './_commonjsHelpers-8f072dc7.js'; +import './index-ff62d206.js'; +import './Button-36d57e33.js'; +import './index-5421a3d1.js'; diff --git a/docs/build/internal-ad.entry.js b/docs/build/internal-ad.entry.js new file mode 100644 index 0000000..8d3f6fb --- /dev/null +++ b/docs/build/internal-ad.entry.js @@ -0,0 +1,120 @@ +import { r as registerInstance, h } from './index-93b10a2a.js'; +import './_commonjsHelpers-8f072dc7.js'; +import { P as Prismic } from './prismic-javascript.min-e8451ed1.js'; +import { P as PrismicDom } from './prismic-dom.min-c7c2ccaa.js'; + +const apiURL = 'https://ionicframeworkcom.prismic.io/api/v2'; +const cacheLife = 20 * 60 * 1000; // 20 mins +let ads; +let lastFetch = null; +const getLatest = async () => { + const api = await Prismic.getApi(apiURL); + const response = await api.query(Prismic.Predicates.at('document.type', 'docs_ad'), {}); + ads = response.results; + lastFetch = Date.now(); +}; +const getAd = async () => { + if (lastFetch === null || (Date.now() - lastFetch) > cacheLife) { + await getLatest(); + } + return chooseAdByWeight(); +}; +const chooseAdByWeight = () => { + var _a; + const weightList = []; // Just Checking... + for (const ad of ads) { + if (ad['data']) { // Safety + if (!ad['data'].ad_weight) { + ad['data'].ad_weight = 1; + } + for (let i = 0; i < ad['data'].ad_weight; i++) { + weightList.push(ad); + } + } + } + // Probability Fun + return ((_a = weightList[Math.floor(Math.random() * weightList.length)]) === null || _a === void 0 ? void 0 : _a.data) || null; +}; + +const trackView = (adId) => { + hubspotTrack('View', adId); + googleAnalyticsTrack('View', adId); +}; +const trackClick = (adId, event) => { + const timeForTrackingRequests = 150; // ms + if (event) { + event.preventDefault(); + } + hubspotTrack('Click', adId); + googleAnalyticsTrack('Click', adId); + // give tracking request time to complete + setTimeout(() => { + const link = hrefClimber(event === null || event === void 0 ? void 0 : event.target); + if (link.target && link.target.toLowerCase() === '_blank') { + window.open(link.href); + } + else if (link.href) { + document.location = link.href; + } + }, timeForTrackingRequests); +}; +const hubspotTrack = (type, adId) => { + if (!window['_hsq']) { + console.warn('Unable to track Hubspot event, _hsq not found', type, adId); + return; + } + window['_hsq'].push(['trackEvent', { + id: `Docs ad - ${type} - ${adId}` + }]); +}; +const googleAnalyticsTrack = (type, adId) => { + if (!window['gtag']) { + console.warn('Unable to track Google Analytics event, gtag not found', type, adId); + return; + } + window['gtag']('event', `Docs ad - ${type} - ${adId}`, { + 'event_category': `Docs ad - ${type}`, + 'event_label': adId + }); +}; +// recursive function to climb the DOM looking for href tags +const hrefClimber = (el) => { + if (el['href']) { + return el; + } + else if (el.parentNode) { + return hrefClimber(el.parentNode); + } +}; + +const internalAdCss = "internal-ad{max-width:148px;display:block;margin:48px 0 0}internal-ad p{font-size:13px;line-height:19px;font-weight:400;letter-spacing:0.02em;color:var(--text-color--dark);transition:.2s color}internal-ad a:hover p{color:var(--text-color)}@media (max-width: 1233px){internal-ad{display:none}}"; + +const InternalAd = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.update(); + } + async update() { + this.ad = await getAd(); + if (!this.ad) { + return; + } + // give the page a chance to reflow + this.timeout = setTimeout(() => { + trackView(this.ad.ad_id); + }, 50); + } + disconnectedCallback() { + // if the reflowed page doesn't have an ad, don't fire view events + clearTimeout(this.timeout); + } + render() { + if (!this.ad || Object.keys(this.ad).length === 0) { + return; + } + return (h("a", { href: this.ad.ad_url.url, target: this.ad.ad_url.target, onClick: e => trackClick(this.ad.ad_id, e) }, h("picture", null, h("source", { media: "(min-width: 37.5em)", src: this.ad.ad_image.url }), h("source", { src: this.ad.ad_image['1x'].url }), h("img", { src: this.ad.ad_image.url, alt: this.ad.ad_image.alt, height: this.ad.ad_image['1x'].dimensions.height, width: this.ad.ad_image['1x'].dimensions.width }), h("p", null, this.ad.ad_image.alt)), h("div", { innerHTML: PrismicDom.RichText.asHtml(this.ad.ad_copy) }))); + } +}; +InternalAd.style = internalAdCss; + +export { InternalAd as internal_ad }; diff --git a/docs/build/ionicons-site.css b/docs/build/ionicons-site.css index 1cb8063..c18c215 100644 --- a/docs/build/ionicons-site.css +++ b/docs/build/ionicons-site.css @@ -1 +1,404 @@ -:root{--color-mirage:#171c24;--color-shark:#272a2f;--color-oslo-gray:#868b95;--color-pale-sky:#697384;--color-melrose:#aec6ff;--color-melrose-dark:#4c5873;--color-gull-gray:#a1aab8;--color-bright-gray:#363e49;--color-bright-gray-light:#3d4650;--color-heather:#bec7d5;--color-catskill-white:#ecf0f6;--color-dodger-blue:#3880ff;--color-dodger-blue-light:#5a96ff;--color-periwinkle:#c6dbff;--color-cadet-blue:#abb2bf;--color-white-lilac:#f8f8fc;--easeOutExpo:cubic-bezier(0.19, 1, 0.22, 1)}html,body{height:auto;margin:0;padding:0;font-family:var(--f-family-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;letter-spacing:-0.015em;color:var(--color-shark)}body.no-scroll{overflow:hidden}main{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-height:100%;padding-top:96px;-webkit-box-sizing:border-box;box-sizing:border-box}main>.wrapper{-ms-flex:1 0 auto;flex:1 0 auto}stencil-router-scroll-top>div{height:100%}@media screen and (max-width: 460px){main{padding-top:95px}}.content{max-width:650px;margin:0 auto}.container,.container--small{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0 auto;padding-left:30px;padding-right:30px}.container{max-width:1140px;-ms-flex:1;flex:1}.container--small{max-width:650px}h1{font-family:var(--f-family-display);font-size:48px;line-height:54px;font-weight:700;letter-spacing:-0.03em;color:var(--color-mirage)}h2{font-size:24px;margin-top:60px;margin-bottom:0;letter-spacing:-0.03em;color:var(--color-shark)}h3{font-size:18px;line-height:28px;margin-top:40px;margin-bottom:0;letter-spacing:-0.03em;color:var(--color-shark)}h4{font-size:16px;line-height:16px;font-weight:600;color:var(--color-gull-gray)}h6{font-size:10px;line-height:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-heather);margin:0}p{color:#3c4b62;font-size:14px;line-height:28px;margin-top:10px;letter-spacing:0}p a{-webkit-transition:border-color 0.3s;transition:border-color 0.3s;text-decoration:none;color:var(--color-dodger-blue);border-bottom:1px solid transparent}p a:hover{border-bottom-color:var(--color-dodger-blue-light)}p.lead{font-size:18px;line-height:32px;font-weight:400}.btn{-webkit-transition:0.3s background, 0.3s -webkit-box-shadow;transition:0.3s background, 0.3s -webkit-box-shadow;transition:0.3s box-shadow, 0.3s background;transition:0.3s box-shadow, 0.3s background, 0.3s -webkit-box-shadow;background-color:var(--color-catskill-white);color:var(--color-pale-sky);font-size:13px;line-height:13px;font-weight:600;padding:9px 10px;border-radius:8px;text-decoration:none;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;cursor:pointer}.btn:hover{background-color:#e3e9f3}.btn--gray{background:var(--color-bright-gray);color:var(--color-melrose)}.btn--gray:hover{background-color:var(--color-bright-gray-light)}.btn--large{font-size:14px;padding:13px 15px}.btn--small{font-size:9px;text-transform:uppercase;letter-spacing:0.05em}.btn--small svg{width:14px;height:14px;margin-right:4px}.btn--icon{width:36px;height:32px;padding:0;pointer-events:none;-ms-flex-pack:center;justify-content:center;color:#fff}.btn--icon svg{width:26px;height:26px;margin:0}.btn-group{display:-ms-flexbox;display:flex}.btn-group .btn+.btn{margin-left:1px}.btn-group .btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group .btn:last-child{border-top-left-radius:0;border-bottom-left-radius:0}@media screen and (max-width: 460px){h3{font-size:16px;line-height:28px}.container{padding-left:15px;padding-right:15px}}@media screen and (max-width: 768px){.container{padding-left:15px;padding-right:15px}}.hljs-comment,.hljs-quote{color:#998;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-subst{color:#333}.hljs-number,.hljs-literal,.hljs-variable,.hljs-template-variable,.hljs-tag .hljs-attr{color:#008080}.hljs-string,.hljs-doctag{color:#d14}.hljs-title,.hljs-section,.hljs-selector-id{color:#900}.hljs-subst{font-weight:normal}.hljs-type,.hljs-class .hljs-title{color:#458}.hljs-tag,.hljs-name,.hljs-attribute{color:#000080;font-weight:normal}.hljs-regexp,.hljs-link{color:#009926}.hljs-symbol,.hljs-bullet{color:#990073}.hljs-built_in,.hljs-builtin-name{color:#0086b3}.hljs-meta{color:#999}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}code,pre{font-family:"Roboto Mono", monospace}code{background-color:var(--color-bright-gray);color:#97a1b6;padding:8px 12px;border-radius:5px}code .yellow{color:#ffc866}code .orange{color:#e48d26}code .green{color:#a4dd5b}p code{font-size:13px;font-weight:500;padding:2px 5px;color:#f06332;background-color:#f5f7fa}.styled-code{-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#f5f7fa;padding:16px 14px;width:100%;border-radius:5px;display:block;overflow-x:auto;margin:18px 0px}.styled-code+.styled-code{margin-top:12px}pre{margin:0;font-size:14px;line-height:20px;color:var(--color-pale-sky)}.download-link svg #arrow{-webkit-transition:0.2s -webkit-transform;transition:0.2s -webkit-transform;transition:0.2s transform;transition:0.2s transform, 0.2s -webkit-transform;-webkit-transform:translate(0, 0px);transform:translate(0, 0px)}.download-link:hover svg #arrow{-webkit-transform:translate(0, 1px);transform:translate(0, 1px)}.loading-animation{-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:1000ms;animation-duration:1000ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform-origin:center center;transform-origin:center center}@-webkit-keyframes spin{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spin{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}} \ No newline at end of file +:root { + --color-mirage: #171c24; + --color-shark: #272a2f; + --color-oslo-gray: #868b95; + --color-pale-sky: #697384; + --color-melrose: #aec6ff; + --color-melrose-dark: #4c5873; + --color-gull-gray: #a1aab8; + --color-bright-gray: #363e49; + --color-bright-gray-light: #3d4650; + --color-heather: #bec7d5; + --color-catskill-white: #ecf0f6; + --color-dodger-blue: #3880ff; + --color-dodger-blue-light: #5a96ff; + --color-periwinkle: #c6dbff; + --color-cadet-blue: #abb2bf; + --color-white-lilac: #f8f8fc; + + --easeOutExpo: cubic-bezier(0.19, 1, 0.22, 1); +} + +html, +body { + height: auto; + margin: 0; + padding: 0; + font-family: var(--f-family-text); + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + letter-spacing: -0.015em; + color: var(--color-shark); +} + +body.no-scroll { + overflow: hidden; +} + +main { + display: flex; + flex-direction: column; + min-height: 100%; + padding-top: 96px; + box-sizing: border-box; +} + +main > .wrapper { + flex: 1 0 auto; +} + +stencil-router-scroll-top > div { + height: 100%; +} + +@media screen and (max-width: 460px) { + main { + padding-top: 95px; + } +} + +.content { + max-width: 650px; + margin: 0 auto; +} + +.container, +.container--small { + box-sizing: border-box; + margin: 0 auto; + padding-left: 30px; + padding-right: 30px; +} + +.container { + max-width: 1140px; + flex: 1; +} + +.container--small { + max-width: 650px; +} + +h1 { + font-family: var(--f-family-display); + font-size: 48px; + line-height: 54px; + font-weight: 700; + letter-spacing: -0.03em; + color: var(--color-mirage); +} + +h2 { + font-size: 24px; + margin-top: 60px; + margin-bottom: 0; + letter-spacing: -0.03em; + color: var(--color-shark); +} + +h3 { + font-size: 18px; + line-height: 28px; + margin-top: 40px; + margin-bottom: 0; + letter-spacing: -0.03em; + color: var(--color-shark); +} + +h4 { + font-size: 16px; + line-height: 16px; + font-weight: 600; + color: var(--color-gull-gray); +} + +h6 { + font-size: 10px; + line-height: 10px; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.05em; + color: var(--color-heather); + margin: 0; +} + +p { + color: #3c4b62; + font-size: 14px; + line-height: 28px; + margin-top: 10px; + letter-spacing: 0; +} + +p a { + transition: border-color 0.3s; + text-decoration: none; + color: var(--color-dodger-blue); + border-bottom: 1px solid transparent; +} + +p a:hover { + border-bottom-color: var(--color-dodger-blue-light); +} + +p.lead { + font-size: 18px; + line-height: 32px; + font-weight: 400; +} + +.btn { + transition: 0.3s box-shadow, 0.3s background; + background-color: var(--color-catskill-white); + color: var(--color-pale-sky); + font-size: 13px; + line-height: 13px; + font-weight: 600; + padding: 9px 10px; + border-radius: 8px; + text-decoration: none; + display: inline-flex; + align-items: center; + cursor: pointer; +} + +.btn:hover { + background-color: #e3e9f3; +} + +.btn--gray { + background: var(--color-bright-gray); + color: var(--color-melrose); +} + +.btn--gray:hover { + background-color: var(--color-bright-gray-light); +} + +.btn--large { + font-size: 14px; + padding: 13px 15px; +} + +.btn--small { + font-size: 9px; + text-transform: uppercase; + letter-spacing: 0.05em; +} + +.btn--small svg { + width: 14px; + height: 14px; + margin-right: 4px; +} + +.btn--icon { + width: 36px; + height: 32px; + padding: 0; + pointer-events: none; + justify-content: center; + color: #fff; +} + +.btn--icon svg { + width: 26px; + height: 26px; + margin: 0; +} + +.btn-group { + display: flex; +} + +.btn-group .btn + .btn { + margin-left: 1px; +} + +.btn-group .btn:first-child { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group .btn:last-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +@media screen and (max-width: 460px) { + h3 { + font-size: 16px; + line-height: 28px; + } + .container { + padding-left: 15px; + padding-right: 15px; + } +} + +@media screen and (max-width: 768px) { + .container { + padding-left: 15px; + padding-right: 15px; + } +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +code, +pre { + font-family: "Roboto Mono", monospace; +} + +code { + background-color: var(--color-bright-gray); + color: #97a1b6; + padding: 8px 12px; + border-radius: 5px; +} + +code .yellow { + color: #ffc866; +} +code .orange { + color: #e48d26; +} +code .green { + color: #a4dd5b; +} + +p code { + font-size: 13px; + font-weight: 500; + padding: 2px 5px; + color: #f06332; + background-color: #f5f7fa; +} + +.styled-code { + box-sizing: border-box; + background-color: #f5f7fa; + padding: 16px 14px; + width: 100%; + border-radius: 5px; + display: block; + overflow-x: auto; + margin: 18px 0px; +} + +.styled-code + .styled-code { + margin-top: 12px; +} + +pre { + margin: 0; + font-size: 14px; + line-height: 20px; + color: var(--color-pale-sky); +} + +.download-link svg #arrow { + transition: 0.2s transform; + transform: translate(0, 0px); +} + +.download-link:hover svg #arrow { + transform: translate(0, 1px); +} + +.loading-animation { + animation-name: spin; + animation-duration: 1000ms; + animation-iteration-count: infinite; + animation-timing-function: linear; + transform-origin: center center; +} + +@keyframes spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} diff --git a/docs/build/ionicons-site.entry.js b/docs/build/ionicons-site.entry.js new file mode 100644 index 0000000..a0a4174 --- /dev/null +++ b/docs/build/ionicons-site.entry.js @@ -0,0 +1,88 @@ +import { r as registerInstance, h } from './index-93b10a2a.js'; + +const ioniconsSiteCss = "stencil-router>div{height:100%}"; + +const IoniconsSite = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.data = { + version: undefined, + icons: [] + }; + this.query = ''; + this.isHeaderSearchVisible = false; + } + handleScroll() { + requestAnimationFrame(this.checkScroll.bind(this)); + } + searchHandler(event) { + this.query = event.detail; + } + toggleHandler(event) { + this.isHeaderSearchVisible = (event.detail === 'show') ? true : false; + } + componentWillLoad() { + return this.loadData(); + } + async loadData() { + const res = await fetch('/ionicons.json'); + const json = await res.json(); + this.data = json; + let dat = []; + json.icons.forEach((icon) => { + if (!icon.name.includes('-outline') && !icon.name.includes('-sharp') && !dat.find((o) => o.name === icon.name)) { + dat.push({ + name: icon.name, + icons: [icon.name], + tags: icon.tags + }); + } + }); + insertVariants('-outline'); + insertVariants('-sharp'); + function insertVariants(variantSuffix) { + json.icons.forEach((icon) => { + if (icon.name.includes('logo-')) + return; + if (icon.name.includes(variantSuffix)) { + const baseName = icon.name.replace(variantSuffix, ''); + const datIndex = dat.findIndex((icon => icon.name === baseName)); + if (datIndex < 0) + return; + dat[datIndex].icons.push(icon.name); + } + }); + } + this.data.icons = dat; + } + checkScroll() { + // show/hide header searchbar + const headerSearchEl = document.querySelector('header .search-input'); + const bodySearchEl = document.querySelector('icon-list .search-input'); + if (!bodySearchEl || !headerSearchEl) { + return; + } + const headerInput = headerSearchEl.querySelector('input'); + const bodyInput = bodySearchEl.querySelector('input'); + if (bodySearchEl.getBoundingClientRect().top < (bodySearchEl.scrollHeight / 2)) { + if (this.isHeaderSearchVisible) + return; + this.isHeaderSearchVisible = true; + if (bodyInput === document.activeElement) + headerInput.focus(); + } + else { + if (!this.isHeaderSearchVisible) + return; + this.isHeaderSearchVisible = false; + if (headerInput === document.activeElement) + bodyInput.focus(); + } + } + render() { + return (h("site-root", null, h("site-platform-bar", { productName: "Ionicons" }), h("header-bar", { version: this.data.version, query: this.query, isSearchVisible: this.isHeaderSearchVisible }), h("stencil-router", null, h("stencil-router-scroll-top", null, h("stencil-route-switch", { scrollTopOffset: 0 }, h("stencil-route", { url: "/", component: "landing-page", exact: true, componentProps: { 'query': this.query, 'data': this.data } }), h("stencil-route", { url: "/usage", component: "usage-page", componentProps: { 'data': this.data } }), h("stencil-route", { component: "notfound-page" })))))); + } +}; +IoniconsSite.style = ioniconsSiteCss; + +export { IoniconsSite as ionicons_site }; diff --git a/docs/build/ionicons-site.esm.js b/docs/build/ionicons-site.esm.js index 10a4dac..f5f1280 100644 --- a/docs/build/ionicons-site.esm.js +++ b/docs/build/ionicons-site.esm.js @@ -1 +1,7 @@ -import{b as e}from"./p-7ed6835f.js";import{p as o}from"./p-3d1218d8.js";o().then(o=>e([["p-3e1ac0a2",[[0,"landing-page",{query:[1],data:[8]}]]],["p-b9590c7b",[[0,"notfound-page"]]],["p-4ff03b85",[[0,"shared-demo",{data:[32]}]]],["p-d0d55fdf",[[0,"usage-page",{match:[16],data:[8],exampleName:[32],exampleSuffix:[32]}]]],["p-080e086e",[[0,"announcement-bar",{data:[32]}]]],["p-3ec33283",[[0,"context-consumer",{context:[16],renderer:[16],subscribe:[16],unsubscribe:[32]}]]],["p-73a0c297",[[0,"disqus-comments",{url:[1],siteId:[1,"site-id"]}]]],["p-e4f1fa4a",[[0,"internal-ad",{ad:[32],update:[64]}]]],["p-682833ff",[[4,"site-modal",{open:[1028],modalClose:[16],visible:[32]},[[8,"keyup","handleKeyUp"]]]]],["p-e86cdcff",[[0,"stencil-async-content",{documentLocation:[1,"document-location"],content:[32]}]]],["p-b9a934ba",[[0,"stencil-route-title",{titleSuffix:[1,"title-suffix"],pageTitle:[1,"page-title"]}]]],["p-e0e372be",[[0,"stencil-router-prompt",{when:[4],message:[1],history:[16],unblock:[32]}]]],["p-37223a45",[[0,"stencil-router-redirect",{history:[16],root:[1],url:[1]}]]],["p-5d07a0db",[[2,"more-resources",{resources:[16],showAuthor:[4,"show-author"],showDescription:[4,"show-description"],prismicEndpoint:[1,"prismic-endpoint"],docs:[32]}]]],["p-e6f71f8f",[[0,"ionicons-site",{data:[32],query:[32],isHeaderSearchVisible:[32]},[[9,"scroll","handleScroll"],[0,"hasSearched","searchHandler"],[0,"toggleHeaderSearch","toggleHandler"]]],[0,"header-bar",{query:[1],version:[1],isSearchVisible:[4,"is-search-visible"],isSticky:[32],isMobileMenuShown:[32]},[[9,"scroll","handleScroll"],[9,"resize","handleResize"]]],[4,"site-root"],[0,"stencil-route",{group:[513],componentUpdated:[16],match:[1040],url:[1],component:[1],componentProps:[16],exact:[4],routeRender:[16],scrollTopOffset:[2,"scroll-top-offset"],routeViewsUpdated:[16],location:[16],history:[16],historyType:[1,"history-type"]}],[4,"stencil-route-switch",{group:[513],scrollTopOffset:[2,"scroll-top-offset"],location:[16],routeViewsUpdated:[16]}],[4,"stencil-router",{root:[1],historyType:[1,"history-type"],titleSuffix:[1,"title-suffix"],scrollTopOffset:[2,"scroll-top-offset"],location:[32],history:[32]}],[2,"site-platform-bar",{productName:[1,"product-name"]}],[0,"icon-search",{query:[1],size:[1],autoFocus:[1,"auto-focus"],showClearCtrl:[32]}],[4,"stencil-route-link",{url:[1],urlMatch:[1,"url-match"],activeClass:[1,"active-class"],exact:[4],strict:[4],custom:[1],anchorClass:[1,"anchor-class"],anchorRole:[1,"anchor-role"],anchorTitle:[1,"anchor-title"],anchorTabIndex:[1,"anchor-tab-index"],anchorId:[1,"anchor-id"],history:[16],location:[16],root:[1],ariaHaspopup:[1,"aria-haspopup"],ariaPosinset:[1,"aria-posinset"],ariaSetsize:[2,"aria-setsize"],ariaLabel:[1,"aria-label"],match:[32]}]]],["p-cf14d368",[[0,"toast-bar",{selectedIcon:[16],selectedIconType:[1,"selected-icon-type"],typeSuffix:[1,"type-suffix"],version:[1],showCopiedConfirm:[32],isSVGDownloading:[32],hadIconOnce:[32],touchStartY:[32],touchEndY:[32]}]]],["p-52fc1aca",[[0,"icon-list",{query:[1],data:[8],selectedIcon:[32],selectedIconType:[32],isHeaderSearchVisible:[32]},[[32,"keyup","escListener"],[32,"click","handleBodyClicked"],[0,"clearToast","handleClearToast"],[9,"scroll","handleScroll"]]]]],["p-10804099",[[0,"footer-bar",{version:[1]}]]]],o)); \ No newline at end of file +import { b as bootstrapLazy } from './index-93b10a2a.js'; +import { p as patchBrowser, g as globalScripts } from './app-globals-e0181ab0.js'; + +patchBrowser().then(options => { + globalScripts(); + return bootstrapLazy([["ionicons-site",[[0,"ionicons-site",{"data":[32],"query":[32],"isHeaderSearchVisible":[32]},[[9,"scroll","handleScroll"],[0,"hasSearched","searchHandler"],[0,"toggleHeaderSearch","toggleHandler"]]]]],["landing-page",[[0,"landing-page",{"query":[1],"data":[8]}]]],["notfound-page",[[0,"notfound-page"]]],["shared-demo",[[0,"shared-demo",{"data":[32]}]]],["usage-page",[[0,"usage-page",{"match":[16],"data":[8],"exampleName":[32],"exampleSuffix":[32]}]]],["announcement-bar",[[0,"announcement-bar",{"data":[32]}]]],["context-consumer",[[0,"context-consumer",{"context":[16],"renderer":[16],"subscribe":[16],"unsubscribe":[32]}]]],["disqus-comments",[[0,"disqus-comments",{"url":[1],"siteId":[1,"site-id"]}]]],["internal-ad",[[0,"internal-ad",{"ad":[32],"update":[64]}]]],["site-modal",[[4,"site-modal",{"open":[1028],"modalClose":[16],"visible":[32]},[[8,"keyup","handleKeyUp"]]]]],["stencil-async-content",[[0,"stencil-async-content",{"documentLocation":[1,"document-location"],"content":[32]}]]],["stencil-route-title",[[0,"stencil-route-title",{"titleSuffix":[1,"title-suffix"],"pageTitle":[1,"page-title"]}]]],["stencil-router-prompt",[[0,"stencil-router-prompt",{"when":[4],"message":[1],"history":[16],"unblock":[32]}]]],["stencil-router-redirect",[[0,"stencil-router-redirect",{"history":[16],"root":[1],"url":[1]}]]],["icon-list",[[0,"icon-list",{"query":[1],"data":[8],"selectedIcon":[32],"selectedIconType":[32],"isHeaderSearchVisible":[32]},[[32,"keyup","escListener"],[32,"click","handleBodyClicked"],[0,"clearToast","handleClearToast"],[9,"scroll","handleScroll"]]]]],["header-bar",[[0,"header-bar",{"query":[1],"version":[1],"isSearchVisible":[4,"is-search-visible"],"isSticky":[32],"isMobileMenuShown":[32]},[[9,"scroll","handleScroll"],[9,"resize","handleResize"]]]]],["more-resources",[[2,"more-resources",{"resources":[16],"showAuthor":[4,"show-author"],"showDescription":[4,"show-description"],"prismicEndpoint":[1,"prismic-endpoint"],"docs":[32]}]]],["site-root",[[4,"site-root"]]],["stencil-route",[[0,"stencil-route",{"group":[513],"componentUpdated":[16],"match":[1040],"url":[1],"component":[1],"componentProps":[16],"exact":[4],"routeRender":[16],"scrollTopOffset":[2,"scroll-top-offset"],"routeViewsUpdated":[16],"location":[16],"history":[16],"historyType":[1,"history-type"]}]]],["stencil-route-switch",[[4,"stencil-route-switch",{"group":[513],"scrollTopOffset":[2,"scroll-top-offset"],"location":[16],"routeViewsUpdated":[16]}]]],["stencil-router",[[4,"stencil-router",{"root":[1],"historyType":[1,"history-type"],"titleSuffix":[1,"title-suffix"],"scrollTopOffset":[2,"scroll-top-offset"],"location":[32],"history":[32]}]]],["toast-bar",[[0,"toast-bar",{"selectedIcon":[16],"selectedIconType":[1,"selected-icon-type"],"typeSuffix":[1,"type-suffix"],"version":[1],"showCopiedConfirm":[32],"isSVGDownloading":[32],"hadIconOnce":[32],"touchStartY":[32],"touchEndY":[32]}]]],["site-platform-bar",[[2,"site-platform-bar",{"productName":[1,"product-name"]}]]],["footer-bar",[[0,"footer-bar",{"version":[1]}]]],["icon-search",[[0,"icon-search",{"query":[1],"size":[1],"autoFocus":[1,"auto-focus"],"showClearCtrl":[32]}]]],["stencil-route-link",[[4,"stencil-route-link",{"url":[1],"urlMatch":[1,"url-match"],"activeClass":[1,"active-class"],"exact":[4],"strict":[4],"custom":[1],"anchorClass":[1,"anchor-class"],"anchorRole":[1,"anchor-role"],"anchorTitle":[1,"anchor-title"],"anchorTabIndex":[1,"anchor-tab-index"],"anchorId":[1,"anchor-id"],"history":[16],"location":[16],"root":[1],"ariaHaspopup":[1,"aria-haspopup"],"ariaPosinset":[1,"aria-posinset"],"ariaSetsize":[2,"aria-setsize"],"ariaLabel":[1,"aria-label"],"match":[32]}]]]], options); +}); diff --git a/docs/build/ionicons-site.js b/docs/build/ionicons-site.js index 6963f7a..84a0f5c 100644 --- a/docs/build/ionicons-site.js +++ b/docs/build/ionicons-site.js @@ -1,141 +1,33 @@ -'use strict'; -(function () { - var currentScript = document.currentScript; - - // Safari 10 support type="module" but still download and executes the nomodule script - if (!currentScript || !currentScript.hasAttribute('nomodule') || !('onbeforeload' in currentScript)) { - - /*! -es6-promise - a tiny implementation of Promises/A+. -Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) -Licensed under MIT license -See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE -https://cdn.jsdelivr.net/npm/es6-promise/dist/es6-promise.auto.min.js -v4.2.8 -*/ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.ES6Promise=e()}(this,function(){"use strict";function t(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}function e(t){return"function"==typeof t}function n(t){W=t}function r(t){z=t}function o(){return function(){return process.nextTick(a)}}function i(){return"undefined"!=typeof U?function(){U(a)}:c()}function s(){var t=0,e=new H(a),n=document.createTextNode("");return e.observe(n,{characterData:!0}),function(){n.data=t=++t%2}}function u(){var t=new MessageChannel;return t.port1.onmessage=a,function(){return t.port2.postMessage(0)}}function c(){var t=setTimeout;return function(){return t(a,1)}}function a(){for(var t=0;t0?o(e(t),9007199254740991):0}},function(t,r,n){var e=n(2);t.exports=function(t){if(!e(t))throw TypeError(String(t)+" is not an object");return t}},function(t,r,n){var e=n(9);t.exports=function(t){return Object(e(t))}},function(t,r){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,r,n){var e=n(5),o=n(75),i=n(7),u=n(24),a=Object.defineProperty;r.f=e?a:function(t,r,n){if(i(t),r=u(r,!0),i(n),o)try{return a(t,r,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[r]=n.value),t}},function(t,r){var n={}.hasOwnProperty;t.exports=function(t,r){return n.call(t,r)}},function(t,r,n){var e=n(9),o=/"/g;t.exports=function(t,r,n,i){var u=String(e(t)),a="<"+r;return""!==n&&(a+=" "+n+'="'+String(i).replace(o,""")+'"'),a+">"+u+""}},function(t,r,n){var e=n(1);t.exports=function(t){return e(function(){var r=""[t]('"');return r!==r.toLowerCase()||r.split('"').length>3})}},function(t,r,n){var e=n(39),o=n(9);t.exports=function(t){return e(o(t))}},function(t,r,n){var e=n(4),o=n(40),i=n(16),u=n(11),a=n(60),c=n(77),s=n(17),f=s.get,l=s.enforce,h=String(c).split("toString");o("inspectSource",function(t){return c.call(t)}),(t.exports=function(t,r,n,o){var c=!!o&&!!o.unsafe,s=!!o&&!!o.enumerable,f=!!o&&!!o.noTargetGet;"function"==typeof n&&("string"!=typeof r||u(n,"name")||i(n,"name",r),l(n).source=h.join("string"==typeof r?r:"")),t!==e?(c?!f&&t[r]&&(s=!0):delete t[r],s?t[r]=n:i(t,r,n)):s?t[r]=n:a(r,n)})(Function.prototype,"toString",function(){return"function"==typeof this&&f(this).source||c.call(this)})},function(t,r,n){var e=n(5),o=n(10),i=n(38);t.exports=e?function(t,r,n){return o.f(t,r,i(1,n))}:function(t,r,n){return t[r]=n,t}},function(t,r,n){var e,o,i,u=n(78),a=n(4),c=n(2),s=n(16),f=n(11),l=n(61),h=n(41),p=a.WeakMap;if(u){var v=new p,g=v.get,d=v.has,y=v.set;e=function(t,r){return y.call(v,t,r),r},o=function(t){return g.call(v,t)||{}},i=function(t){return d.call(v,t)}}else{var x=l("state");h[x]=!0,e=function(t,r){return s(t,x,r),r},o=function(t){return f(t,x)?t[x]:{}},i=function(t){return f(t,x)}}t.exports={set:e,get:o,has:i,enforce:function(t){return i(t)?o(t):e(t,{})},getterFor:function(t){return function(r){var n;if(!c(r)||(n=o(r)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},function(t,r){var n=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:n)(t)}},function(t,r,n){var e=n(3),o=n(46),i=n(16),u=e("unscopables"),a=Array.prototype;null==a[u]&&i(a,u,o(null)),t.exports=function(t){a[u][t]=!0}},function(t,r,n){var e=n(5),o=n(59),i=n(38),u=n(14),a=n(24),c=n(11),s=n(75),f=Object.getOwnPropertyDescriptor;r.f=e?f:function(t,r){if(t=u(t),r=a(r,!0),s)try{return f(t,r)}catch(t){}if(c(t,r))return i(!o.f.call(t,r),t[r])}},function(t,r){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,r,n){"use strict";var e=n(24),o=n(10),i=n(38);t.exports=function(t,r,n){var u=e(r);u in t?o.f(t,u,i(0,n)):t[u]=n}},function(t,r,n){var e=n(41),o=n(2),i=n(11),u=n(10).f,a=n(62),c=n(50),s=a("meta"),f=0,l=Object.isExtensible||function(){return!0},h=function(t){u(t,s,{value:{objectID:"O"+ ++f,weakData:{}}})},p=t.exports={REQUIRED:!1,fastKey:function(t,r){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,s)){if(!l(t))return"F";if(!r)return"E";h(t)}return t[s].objectID},getWeakData:function(t,r){if(!i(t,s)){if(!l(t))return!0;if(!r)return!1;h(t)}return t[s].weakData},onFreeze:function(t){return c&&p.REQUIRED&&l(t)&&!i(t,s)&&h(t),t}};e[s]=!0},function(t,r,n){var e=n(2);t.exports=function(t,r){if(!e(t))return t;var n,o;if(r&&"function"==typeof(n=t.toString)&&!e(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!e(o=n.call(t)))return o;if(!r&&"function"==typeof(n=t.toString)&&!e(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,r){t.exports=!1},function(t,r,n){var e=n(18),o=Math.max,i=Math.min;t.exports=function(t,r){var n=e(t);return n<0?o(n+r,0):i(n,r)}},function(t,r,n){var e=n(28),o=n(39),i=n(8),u=n(6),a=n(33),c=[].push,s=function(t){var r=1==t,n=2==t,s=3==t,f=4==t,l=6==t,h=5==t||l;return function(p,v,g,d){for(var y,x,m=i(p),b=o(m),S=e(v,g,3),w=u(b.length),E=0,O=d||a,A=r?O(p,w):n?O(p,0):void 0;w>E;E++)if((h||E in b)&&(x=S(y=b[E],E,m),t))if(r)A[E]=x;else if(x)switch(t){case 3:return!0;case 5:return y;case 6:return E;case 2:c.call(A,y)}else if(f)return!1;return l?-1:s||f?f:A}};t.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6)}},function(t,r,n){var e=n(29);t.exports=function(t,r,n){if(e(t),void 0===r)return t;switch(n){case 0:return function(){return t.call(r)};case 1:return function(n){return t.call(r,n)};case 2:return function(n,e){return t.call(r,n,e)};case 3:return function(n,e,o){return t.call(r,n,e,o)}}return function(){return t.apply(r,arguments)}}},function(t,r){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},function(t,r,n){var e=n(11),o=n(8),i=n(61),u=n(91),a=i("IE_PROTO"),c=Object.prototype;t.exports=u?Object.getPrototypeOf:function(t){return t=o(t),e(t,a)?t[a]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,r,n){var e=n(10).f,o=n(11),i=n(3)("toStringTag");t.exports=function(t,r,n){t&&!o(t=n?t:t.prototype,i)&&e(t,i,{configurable:!0,value:r})}},function(t,r,n){var e=n(9),o="["+n(53)+"]",i=RegExp("^"+o+o+"*"),u=RegExp(o+o+"*$"),a=function(t){return function(r){var n=String(e(r));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(u,"")),n}};t.exports={start:a(1),end:a(2),trim:a(3)}},function(t,r,n){var e=n(2),o=n(45),i=n(3)("species");t.exports=function(t,r){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?e(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===r?0:r)}},function(t,r,n){var e=n(1),o=n(3)("species");t.exports=function(t){return!e(function(){var r=[];return(r.constructor={})[o]=function(){return{foo:1}},1!==r[t](Boolean).foo})}},function(t,r){t.exports={}},function(t,r){t.exports=function(t,r,n){if(!(t instanceof r))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},function(t,r,n){"use strict";var e=n(7);t.exports=function(){var t=e(this),r="";return t.global&&(r+="g"),t.ignoreCase&&(r+="i"),t.multiline&&(r+="m"),t.dotAll&&(r+="s"),t.unicode&&(r+="u"),t.sticky&&(r+="y"),r}},function(t,r){t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},function(t,r,n){var e=n(1),o=n(21),i="".split;t.exports=e(function(){return!Object("z").propertyIsEnumerable(0)})?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},function(t,r,n){var e=n(4),o=n(60),i=n(25),u=e["__core-js_shared__"]||o("__core-js_shared__",{});(t.exports=function(t,r){return u[t]||(u[t]=void 0!==r?r:{})})("versions",[]).push({version:"3.2.0",mode:i?"pure":"global",copyright:"Š 2019 Denis Pushkarev (zloirock.ru)"})},function(t,r){t.exports={}},function(t,r,n){var e=n(109),o=n(4),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,r){return arguments.length<2?i(e[t])||i(o[t]):e[t]&&e[t][r]||o[t]&&o[t][r]}},function(t,r,n){var e=n(80),o=n(63).concat("length","prototype");r.f=Object.getOwnPropertyNames||function(t){return e(t,o)}},function(t,r,n){var e=n(1),o=/#|\.prototype\./,i=function(t,r){var n=a[u(t)];return n==s||n!=c&&("function"==typeof r?e(r):!!r)},u=i.normalize=function(t){return String(t).replace(o,".").toLowerCase()},a=i.data={},c=i.NATIVE="N",s=i.POLYFILL="P";t.exports=i},function(t,r,n){var e=n(21);t.exports=Array.isArray||function(t){return"Array"==e(t)}},function(t,r,n){var e=n(7),o=n(83),i=n(63),u=n(41),a=n(113),c=n(76),s=n(61)("IE_PROTO"),f=function(){},l=function(){var t,r=c("iframe"),n=i.length;for(r.style.display="none",a.appendChild(r),r.src=String("javascript:"),(t=r.contentWindow.document).open(),t.write("`), + h("h3", { id: "basic-usage" }, "Basic usage"), + h("p", null, + "To use a built-in icon from the Ionicons package, populate the", + " ", + h("code", null, "name"), + " attribute on the ", + h("code", null, "ion-icon"), + " component:"), + highlight$1(``), + h("h3", { id: "basic-usage" }, "Custom icons"), + h("p", null, + "To use a custom SVG, provide its url in the ", + h("code", null, "src"), + " attribute to request the external SVG file. The ", + h("code", null, "src"), + " attribute works the same as ", + h("code", null, ""), + " in that the url must be accessible from the webpage that's making a request for the image. Additionally, the external file can only be a valid ", + h("code", null, "svg"), + " and does not allow scripts or events within the ", + h("code", null, "svg"), + " element."), + highlight$1(``), + h("h2", null, "Variants"), + h("p", null, + "Each app icon in Ionicons has a ", + h("code", null, "filled"), + ",", + " ", + h("code", null, "outline"), + " and ", + h("code", null, "sharp"), + " variant. These different variants are provided to make your app feel native to a variety of platforms. The filled variant uses the default name without a suffix. Note: Logo icons do not have outline or sharp variants."), + highlight$1(` + + `), + h("h3", null, "Platform specificity"), + h("p", null, + "When using icons in Ionic Framework you can specify different icons per platform. Use the ", + h("code", null, "md"), + " and ", + h("code", null, "ios"), + " attributes and provide the platform specific icon/variant name."), + highlight$1(``), + h("h2", null, "Size"), + h("p", null, + "To specify the icon size, you can use the ", + h("code", null, "size"), + " attribute for our pre-defined font sizes."), + highlight$1(` +`), + h("p", null, + "Or you can set a specific size by applying the ", + h("code", null, "font-size"), + " ", + "CSS property on the ", + h("code", null, "ion-icon"), + " component. It's recommended to use pixel sizes that are a multiple of 8 (8, 16, 32, 64, etc.)"), + highlight$1(`ion-icon { + font-size: 64px; +}`), + h("h2", null, "Color"), + h("p", null, + "Specify the icon color by applying the ", + h("code", null, "color"), + " CSS property on the ", + h("code", null, "ion-icon"), + " component."), + highlight$1(`ion-icon { + color: blue; +}`), + h("h2", null, "Stroke weight"), + h("p", null, + "When using an ", + h("code", null, "outline"), + " icon variant it is possible to adjust the stroke weight, for improved visual balance relative to the icon's size or relative to the weight of adjacent text. You can set a specific size by applying the ", + h("code", null, "--ionicon-stroke-weight"), + " CSS custom property to the ", + h("code", null, "ion-icon"), + " component. The default value is", + " ", + h("code", null, "32px")), + highlight$1(``), + highlight$1(`ion-icon { + --ionicon-stroke-width: 16px; +}`), + h("h2", null, "Migrating from v4"), + h("p", null, + "See the", + " ", + h("a", { href: "https://github.com/ionic-team/ionicons/releases/tag/5.0.0" }, "5.0 release notes"), + " ", + "for a list of icon deletions/renames. You can find an archived version of the v4 site ", + h("a", { href: "/v4/" }, "here"), + "."))); +} +function highlight$1(text) { + return (h("div", { class: "styled-code" }, + h("pre", { innerHTML: lib.highlightAuto(text).value }))); +} + +const usagePageCss = "usage-page{height:100%}usage-page .wrapper{padding-bottom:160px}usage-page .lead{color:#6e7f99}"; + +const UsagePage = class { + constructor(hostRef) { + registerInstance(this, hostRef); + this.exampleName = "heart"; + this.exampleSuffix = ""; + this.queue = getContext(this, "queue"); + } + componentWillLoad() { + if (!window.location.hash) + return; + let iconNames = []; + this.data.icons.map((o) => { + iconNames = iconNames.concat(o.icons); + }); + let hash = window.location.hash.replace("#", ""); + if (hash.includes("logo-")) { + this.exampleName = hash; + return; + } + if (iconNames.includes(hash)) { + ["-outline", "-sharp"].forEach((suffix) => { + if (hash.includes(suffix)) { + hash = hash.replace(suffix, ""); + this.exampleSuffix = suffix; + } + }); + this.exampleName = hash; + } + } + componentDidLoad() { + if (window.location.hash) { + setTimeout(() => { + const offset = document.getElementById("basic-usage").offsetTop - 100; + window.scrollTo({ left: 0, top: offset, behavior: "smooth" }); + }, 50); + } + } + render() { + return (h("main", null, h("div", { class: "wrapper" }, h(ResponsiveContainer, null, h("div", { class: "content" }, content(this.data.version, this.exampleName, this.exampleSuffix)))), h("footer-bar", { version: this.data.version }))); + } +}; +UsagePage.style = usagePageCss; + +export { UsagePage as usage_page }; diff --git a/docs/index.html b/docs/index.html index 07b0db8..88555d0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4456 +1,31 @@ - -Ionicons: The premium icon pack for Ionic Framework - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
See how Ionicons fits into the entire Ionic Ecosystem -->
Ionicons is part of the -Ionic Ecosystem ->

Open source icons.
Lovingly hand-crafted.

Premium designed icons for use in web, iOS, Android, and desktop apps. Support for SVG and web font. Completely open source, MIT licensed and built by -Ionic.

App icons

  • Outline
  • Filled
  • Sharp

Logos

- - Accessibility - -Accessibility - Accessibility - -Add - -Add Circle - -Add Circle - Add Circle - -Add - -Add - -Airplane - -Airplane - Airplane - -Alarm - -Alarm - -Alarm - -Albums - -Albums - -Albums - Alert - -Alert Circle - -Alert Circle - -Alert Circle - -Alert - -Alert - American Football - -American Football - American Football - -Analytics - -Analytics - -Analytics - -Aperture - -Aperture - Aperture - -Apps - -Apps - -Apps - Archive - Archive - -Archive - -Arrow Back - Arrow Back Circle - -Arrow Back Circle - Arrow Back Circle - -Arrow Back - Arrow Back - Arrow Down - Arrow Down Circle - -Arrow Down Circle - Arrow Down Circle - -Arrow Down - Arrow Down - Arrow Forward - Arrow Forward Circle - -Arrow Forward Circle - Arrow Forward Circle - -Arrow Forward - Arrow Forward - Arrow Redo - -Arrow Redo Circle - -Arrow Redo Circle - Arrow Redo Circle - -Arrow Redo - Arrow Redo - -Arrow Undo - -Arrow Undo Circle - -Arrow Undo Circle - Arrow Undo Circle - -Arrow Undo - Arrow Undo - -Arrow Up - Arrow Up Circle - -Arrow Up Circle - Arrow Up Circle - -Arrow Up - Arrow Up - At - At Circle - -At Circle - At Circle - -At - At - -Attach - Attach - Attach - Backspace - -Backspace - Backspace - -Bag - -Bag Add - -Bag Add - Bag Add - -Bag Check - -Bag Check - Bag Check - -Bag Handle - -Bag Handle - Bag Handle - -Bag - Bag Remove - -Bag Remove - Bag Remove - -Bag - -Balloon - -Balloon - -Balloon - -Ban - Ban - -Ban - -Bandage - -Bandage - -Bandage - -Bar Chart - -Bar Chart - -Bar Chart - -Barbell - -Barbell - -Barbell - -Barcode - -Barcode - Barcode - Baseball - -Baseball - Baseball - -Basket - -Basket - Basket - -Basketball - -Basketball - Basketball - -Battery Charging - -Battery Charging - -Battery Charging - -Battery Dead - Battery Dead - Battery Dead - -Battery Full - -Battery Full - -Battery Full - -Battery Half - -Battery Half - -Battery Half - -Beaker - -Beaker - Beaker - -Bed - -Bed - Bed - -Beer - -Beer - Beer - -Bicycle - -Bicycle - -Bicycle - -Bluetooth - -Bluetooth - Bluetooth - -Boat - -Boat - Boat - -Body - -Body - Body - -Bonfire - -Bonfire - Bonfire - -Book - -Book - Book - -Bookmark - -Bookmark - Bookmark - Bookmarks - -Bookmarks - Bookmarks - -Bowling Ball - -Bowling Ball - -Bowling Ball - -Briefcase - -Briefcase - Briefcase - -Browsers - -Browsers - -Browsers - -Brush - -Brush - Brush - -Bug - -Bug - Bug - -Build - -Build - Build - -Bulb - -Bulb - Bulb - -Bus - -Bus - -Bus - -Business - -Business - -Business - Cafe - -Cafe - Cafe - -Calculator - -Calculator - Calculator - -Calendar - -Calendar Clear - -Calendar Clear - -Calendar Clear - -Calendar Number - -Calendar Number - Calendar Number - -Calendar - Calendar - -Call - -Call - Call - -Camera - -Camera - -Camera Reverse - -Camera Reverse - Camera Reverse - -Camera - -Car - -Car - -Car - -Car Sport - -Car Sport - -Car Sport - -Card - -Card - -Card - -Caret Back - -Caret Back Circle - -Caret Back Circle - Caret Back Circle - -Caret Back - -Caret Back - Caret Down - -Caret Down Circle - -Caret Down Circle - Caret Down Circle - -Caret Down - -Caret Down - Caret Forward - -Caret Forward Circle - -Caret Forward Circle - Caret Forward Circle - -Caret Forward - -Caret Forward - Caret Up - -Caret Up Circle - -Caret Up Circle - Caret Up Circle - -Caret Up - -Caret Up - Cart - -Cart - Cart - -Cash - -Cash - Cash - Cellular - -Cellular - -Cellular - -Chatbox - -Chatbox Ellipses - -Chatbox Ellipses - Chatbox Ellipses - -Chatbox - Chatbox - -Chatbubble - -Chatbubble Ellipses - -Chatbubble Ellipses - Chatbubble Ellipses - -Chatbubble - Chatbubble - -Chatbubbles - -Chatbubbles - Chatbubbles - -Checkbox - -Checkbox - -Checkbox - -Checkmark - -Checkmark Circle - -Checkmark Circle - Checkmark Circle - -Checkmark Done - Checkmark Done Circle - -Checkmark Done Circle - -Checkmark Done Circle - -Checkmark Done - Checkmark Done - Checkmark - -Checkmark - -Chevron Back - -Chevron Back Circle - -Chevron Back Circle - Chevron Back Circle - -Chevron Back - -Chevron Back - -Chevron Down - -Chevron Down Circle - -Chevron Down Circle - Chevron Down Circle - -Chevron Down - -Chevron Down - -Chevron Forward - -Chevron Forward Circle - -Chevron Forward Circle - Chevron Forward Circle - -Chevron Forward - -Chevron Forward - -Chevron Up - -Chevron Up Circle - -Chevron Up Circle - Chevron Up Circle - -Chevron Up - -Chevron Up - -Clipboard - -Clipboard - Clipboard - -Close - -Close Circle - -Close Circle - Close Circle - -Close - -Close - -Cloud - -Cloud Circle - -Cloud Circle - Cloud Circle - -Cloud Done - -Cloud Done - -Cloud Done - -Cloud Download - -Cloud Download - Cloud Download - -Cloud Offline - -Cloud Offline - -Cloud Offline - -Cloud - Cloud - -Cloud Upload - -Cloud Upload - -Cloud Upload - -Cloudy - -Cloudy Night - -Cloudy Night - Cloudy Night - -Cloudy - Cloudy - -Code - -Code Download - Code Download - Code Download - Code - Code - -Code Slash - -Code Slash - Code Slash - -Code Working - Code Working - -Code Working - -Cog - -Cog - -Cog - -Color Fill - -Color Fill - Color Fill - -Color Filter - -Color Filter - -Color Filter - -Color Palette - -Color Palette - Color Palette - -Color Wand - -Color Wand - Color Wand - -Compass - -Compass - -Compass - -Construct - -Construct - Construct - -Contract - Contract - Contract - Contrast - -Contrast - Contrast - -Copy - -Copy - Copy - -Create - -Create - -Create - Crop - -Crop - Crop - -Cube - -Cube - -Cube - -Cut - -Cut - Cut - Desktop - -Desktop - -Desktop - -Diamond - -Diamond - Diamond - -Dice - -Dice - Dice - -Disc - -Disc - Disc - -Document - -Document Attach - -Document Attach - Document Attach - -Document Lock - -Document Lock - Document Lock - -Document - Document - -Document Text - -Document Text - Document Text - -Documents - -Documents - Documents - -Download - -Download - -Download - -Duplicate - -Duplicate - Duplicate - -Ear - -Ear - Ear - -Earth - -Earth - -Earth - -Easel - -Easel - -Easel - Egg - -Egg - Egg - -Ellipse - -Ellipse - -Ellipse - -Ellipsis Horizontal - -Ellipsis Horizontal Circle - Ellipsis Horizontal Circle - Ellipsis Horizontal Circle - -Ellipsis Horizontal - -Ellipsis Horizontal - -Ellipsis Vertical - -Ellipsis Vertical Circle - Ellipsis Vertical Circle - Ellipsis Vertical Circle - -Ellipsis Vertical - -Ellipsis Vertical - -Enter - -Enter - -Enter - -Exit - -Exit - Exit - -Expand - Expand - Expand - Extension Puzzle - -Extension Puzzle - Extension Puzzle - -Eye - -Eye Off - -Eye Off - -Eye Off - -Eye - Eye - -Eyedrop - -Eyedrop - Eyedrop - -Fast Food - -Fast Food - -Fast Food - -Female - -Female - -Female - -File Tray - -File Tray Full - -File Tray Full - -File Tray Full - -File Tray - -File Tray - -File Tray Stacked - -File Tray Stacked - -File Tray Stacked - -Film - -Film - -Film - -Filter - -Filter Circle - -Filter Circle - Filter Circle - -Filter - -Filter - Finger Print - -Finger Print - -Finger Print - -Fish - -Fish - -Fish - -Fitness - -Fitness - -Fitness - -Flag - -Flag - Flag - -Flame - -Flame - Flame - -Flash - -Flash Off - -Flash Off - -Flash Off - -Flash - Flash - Flashlight - -Flashlight - -Flashlight - -Flask - -Flask - Flask - -Flower - -Flower - -Flower - -Folder - -Folder Open - -Folder Open - Folder Open - -Folder - Folder - -Football - -Football - Football - -Footsteps - -Footsteps - Footsteps - -Funnel - -Funnel - Funnel - Game Controller - -Game Controller - Game Controller - -Gift - -Gift - Gift - -Git Branch - -Git Branch - -Git Branch - -Git Commit - -Git Commit - -Git Commit - -Git Compare - -Git Compare - Git Compare - -Git Merge - -Git Merge - -Git Merge - -Git Network - -Git Network - Git Network - -Git Pull Request - -Git Pull Request - -Git Pull Request - -Glasses - -Glasses - Glasses - -Globe - -Globe - Globe - Golf - -Golf - Golf - -Grid - -Grid - -Grid - -Hammer - -Hammer - Hammer - -Hand Left - -Hand Left - Hand Left - -Hand Right - -Hand Right - Hand Right - -Happy - -Happy - -Happy - -Hardware Chip - -Hardware Chip - Hardware Chip - -Headset - -Headset - Headset - -Heart - -Heart Circle - -Heart Circle - -Heart Circle - -Heart Dislike - -Heart Dislike Circle - -Heart Dislike Circle - -Heart Dislike Circle - -Heart Dislike - -Heart Dislike - -Heart Half - -Heart Half - -Heart Half - -Heart - Heart - -Help - Help Buoy - -Help Buoy - Help Buoy - -Help Circle - -Help Circle - -Help Circle - -Help - Help - Home - -Home - Home - -Hourglass - -Hourglass - -Hourglass - -Ice Cream - -Ice Cream - Ice Cream - -Id Card - -Id Card - -Id Card - -Image - -Image - Image - -Images - -Images - Images - -Infinite - Infinite - Infinite - -Information - Information Circle - -Information Circle - -Information Circle - -Information - Information - Invert Mode - -Invert Mode - -Invert Mode - Journal - -Journal - Journal - -Key - -Key - Key - -Keypad - -Keypad - -Keypad - -Language - -Language - Language - -Laptop - -Laptop - Laptop - -Layers - -Layers - Layers - Leaf - -Leaf - Leaf - -Library - -Library - Library - -Link - Link - Link - List - List Circle - -List Circle - -List Circle - -List - -List - -Locate - Locate - -Locate - Location - -Location - -Location - -Lock Closed - -Lock Closed - -Lock Closed - -Lock Open - -Lock Open - -Lock Open - -Log In - -Log In - -Log In - -Log Out - -Log Out - Log Out - -Logo Alipay - -Logo Amazon - -Logo Amplify - Logo Android - -Logo Angular - -Logo Apple - -Logo Apple Appstore - -Logo Apple Ar - -Logo Behance - Logo Bitbucket - -Logo Bitcoin - -Logo Buffer - -Logo Capacitor - -Logo Chrome - -Logo Closed Captioning - -Logo Codepen - -Logo Css3 - -Logo Designernews - -Logo Deviantart - -Logo Discord - -Logo Docker - -Logo Dribbble - -Logo Dropbox - -Logo Edge - -Logo Electron - -Logo Euro - -Logo Facebook - Logo Figma - Logo Firebase - -Logo Firefox - -Logo Flickr - -Logo Foursquare - -Logo Github - -Logo Gitlab - -Logo Google - -Logo Google Playstore - -Logo Hackernews - -Logo Html5 - -Logo Instagram - -Logo Ionic - -Logo Ionitron - -Logo Javascript - -Logo Laravel - -Logo Linkedin - -Logo Markdown - -Logo Mastodon - -Logo Medium - -Logo Microsoft - -Logo No Smoking - -Logo Nodejs - -Logo Npm - -Logo Octocat - -Logo Paypal - -Logo Pinterest - -Logo Playstation - -Logo Pwa - -Logo Python - -Logo React - Logo Reddit - -Logo Rss - -Logo Sass - -Logo Skype - -Logo Slack - -Logo Snapchat - -Logo Soundcloud - -Logo Stackoverflow - -Logo Steam - -Logo Stencil - -Logo Tableau - -Logo Tiktok - -Logo Tumblr - -Logo Tux - -Logo Twitch - Logo Twitter - -Logo Usd - -Logo Venmo - -Logo Vercel - Logo Vimeo - -Logo Vk - Logo Vue - -Logo Web Component - Logo Wechat - -Logo Whatsapp - Logo Windows - -Logo Wordpress - -Logo Xbox - -Logo Xing - -Logo Yahoo - -Logo Yen - -Logo Youtube - -Magnet - -Magnet - Magnet - -Mail - -Mail Open - -Mail Open - Mail Open - -Mail - -Mail - -Mail Unread - -Mail Unread - -Mail Unread - -Male - -Male Female - -Male Female - -Male Female - -Male - -Male - -Man - -Man - -Man - -Map - -Map - Map - -Medal - -Medal - Medal - Medical - -Medical - Medical - -Medkit - -Medkit - Medkit - -Megaphone - -Megaphone - Megaphone - -Menu - Menu - -Menu - Mic - -Mic Circle - -Mic Circle - -Mic Circle - -Mic Off - -Mic Off Circle - -Mic Off Circle - -Mic Off Circle - -Mic Off - -Mic Off - Mic - Mic - -Moon - -Moon - Moon - -Move - Move - Move - Musical Note - -Musical Note - Musical Note - -Musical Notes - -Musical Notes - Musical Notes - -Navigate - -Navigate Circle - -Navigate Circle - Navigate Circle - -Navigate - -Navigate - Newspaper - -Newspaper - -Newspaper - -Notifications - -Notifications Circle - -Notifications Circle - -Notifications Circle - -Notifications Off - -Notifications Off Circle - -Notifications Off Circle - -Notifications Off Circle - -Notifications Off - -Notifications Off - -Notifications - Notifications - -Nuclear - -Nuclear - Nuclear - -Nutrition - -Nutrition - Nutrition - -Open - -Open - Open - -Options - -Options - -Options - -Paper Plane - -Paper Plane - Paper Plane - Partly Sunny - -Partly Sunny - Partly Sunny - -Pause - -Pause Circle - -Pause Circle - Pause Circle - -Pause - -Pause - Paw - -Paw - Paw - Pencil - Pencil - Pencil - -People - -People Circle - -People Circle - -People Circle - -People - People - Person - -Person Add - -Person Add - Person Add - Person Circle - -Person Circle - -Person Circle - -Person - Person Remove - -Person Remove - Person Remove - -Person - -Phone Landscape - -Phone Landscape - Phone Landscape - -Phone Portrait - -Phone Portrait - Phone Portrait - -Pie Chart - -Pie Chart - Pie Chart - -Pin - -Pin - Pin - -Pint - -Pint - Pint - -Pizza - -Pizza - Pizza - -Planet - -Planet - Planet - -Play - -Play Back - -Play Back Circle - -Play Back Circle - -Play Back Circle - -Play Back - Play Back - Play Circle - -Play Circle - -Play Circle - -Play Forward - -Play Forward Circle - -Play Forward Circle - -Play Forward Circle - -Play Forward - Play Forward - Play - Play - Play Skip Back - -Play Skip Back Circle - -Play Skip Back Circle - -Play Skip Back Circle - -Play Skip Back - Play Skip Back - Play Skip Forward - -Play Skip Forward Circle - -Play Skip Forward Circle - -Play Skip Forward Circle - -Play Skip Forward - Play Skip Forward - Podium - -Podium - Podium - Power - Power - Power - Pricetag - -Pricetag - -Pricetag - -Pricetags - -Pricetags - -Pricetags - -Print - -Print - -Print - -Prism - -Prism - Prism - Pulse - -Pulse - -Pulse - -Push - -Push - -Push - -Qr Code - -Qr Code - Qr Code - Radio - -Radio Button Off - Radio Button Off - Radio Button Off - Radio Button On - -Radio Button On - -Radio Button On - -Radio - Radio - -Rainy - -Rainy - -Rainy - -Reader - -Reader - -Reader - -Receipt - -Receipt - Receipt - -Recording - -Recording - -Recording - -Refresh - Refresh Circle - -Refresh Circle - Refresh Circle - -Refresh - Refresh - Reload - -Reload Circle - -Reload Circle - -Reload Circle - -Reload - -Reload - -Remove - -Remove Circle - -Remove Circle - Remove Circle - -Remove - -Remove - -Reorder Four - Reorder Four - Reorder Four - Reorder Three - Reorder Three - -Reorder Three - Reorder Two - -Reorder Two - -Reorder Two - -Repeat - Repeat - Repeat - -Resize - Resize - Resize - Restaurant - -Restaurant - Restaurant - -Return Down Back - -Return Down Back - -Return Down Back - -Return Down Forward - -Return Down Forward - -Return Down Forward - -Return Up Back - -Return Up Back - -Return Up Back - -Return Up Forward - -Return Up Forward - -Return Up Forward - -Ribbon - -Ribbon - -Ribbon - -Rocket - -Rocket - Rocket - -Rose - -Rose - Rose - -Sad - -Sad - -Sad - -Save - Save - Save - -Scale - -Scale - Scale - -Scan - Scan Circle - -Scan Circle - Scan Circle - -Scan - Scan - -School - -School - -School - -Search - -Search Circle - Search Circle - -Search Circle - Search - Search - -Send - -Send - Send - Server - -Server - Server - -Settings - -Settings - Settings - -Shapes - -Shapes - -Shapes - -Share - -Share - Share - -Share Social - -Share Social - -Share Social - -Shield - -Shield Checkmark - -Shield Checkmark - Shield Checkmark - -Shield Half - -Shield Half - -Shield Half - -Shield - Shield - -Shirt - -Shirt - Shirt - -Shuffle - Shuffle - Shuffle - Skull - -Skull - -Skull - -Snow - -Snow - Snow - -Sparkles - -Sparkles - Sparkles - -Speedometer - -Speedometer - Speedometer - -Square - -Square - Square - Star - -Star Half - -Star Half - -Star Half - -Star - Star - -Stats Chart - -Stats Chart - -Stats Chart - -Stop - -Stop Circle - -Stop Circle - -Stop Circle - -Stop - -Stop - Stopwatch - -Stopwatch - -Stopwatch - -Storefront - -Storefront - Storefront - -Subway - -Subway - -Subway - -Sunny - -Sunny - Sunny - -Swap Horizontal - Swap Horizontal - Swap Horizontal - Swap Vertical - Swap Vertical - Swap Vertical - Sync - -Sync Circle - -Sync Circle - Sync Circle - -Sync - -Sync - -Tablet Landscape - -Tablet Landscape - Tablet Landscape - -Tablet Portrait - -Tablet Portrait - -Tablet Portrait - -Telescope - -Telescope - Telescope - -Tennisball - -Tennisball - Tennisball - -Terminal - -Terminal - -Terminal - -Text - -Text - Text - -Thermometer - -Thermometer - Thermometer - -Thumbs Down - -Thumbs Down - Thumbs Down - -Thumbs Up - -Thumbs Up - Thumbs Up - -Thunderstorm - -Thunderstorm - Thunderstorm - -Ticket - -Ticket - Ticket - -Time - -Time - Time - -Timer - -Timer - -Timer - -Today - -Today - -Today - -Toggle - -Toggle - -Toggle - -Trail Sign - -Trail Sign - Trail Sign - -Train - -Train - Train - -Transgender - -Transgender - Transgender - -Trash - -Trash Bin - -Trash Bin - -Trash Bin - Trash - Trash - -Trending Down - Trending Down - Trending Down - -Trending Up - Trending Up - Trending Up - -Triangle - -Triangle - -Triangle - Trophy - -Trophy - Trophy - -Tv - Tv - Tv - Umbrella - -Umbrella - Umbrella - -Unlink - Unlink - Unlink - Videocam - -Videocam Off - -Videocam Off - Videocam Off - -Videocam - Videocam - -Volume High - -Volume High - Volume High - -Volume Low - -Volume Low - Volume Low - -Volume Medium - -Volume Medium - Volume Medium - Volume Mute - -Volume Mute - -Volume Mute - -Volume Off - -Volume Off - Volume Off - Walk - Walk - -Walk - -Wallet - -Wallet - Wallet - -Warning - -Warning - -Warning - -Watch - -Watch - Watch - -Water - -Water - Water - -Wifi - Wifi - -Wifi - -Wine - -Wine - -Wine - -Woman - -Woman - -Woman - - - - \ No newline at end of file + > Accessibility Accessibility Accessibility Add Add Circle Add Circle Add Circle Add Add Airplane Airplane Airplane Alarm Alarm Alarm Albums Albums Albums Alert Alert Circle Alert Circle Alert Circle Alert Alert American Football American Football American Football Analytics Analytics Analytics Aperture Aperture Aperture Apps Apps Apps Archive Archive Archive Arrow Back Arrow Back Circle Arrow Back Circle Arrow Back Circle Arrow Back Arrow Back Arrow Down Arrow Down Circle Arrow Down Circle Arrow Down Circle Arrow Down Arrow Down Arrow Forward Arrow Forward Circle Arrow Forward Circle Arrow Forward Circle Arrow Forward Arrow Forward Arrow Redo Arrow Redo Circle Arrow Redo Circle Arrow Redo Circle Arrow Redo Arrow Redo Arrow Undo Arrow Undo Circle Arrow Undo Circle Arrow Undo Circle Arrow Undo Arrow Undo Arrow Up Arrow Up Circle Arrow Up Circle Arrow Up Circle Arrow Up Arrow Up At At Circle At Circle At Circle At At Attach Attach Attach Backspace Backspace Backspace Bag Bag Add Bag Add Bag Add Bag Check Bag Check Bag Check Bag Handle Bag Handle Bag Handle Bag Bag Remove Bag Remove Bag Remove Bag Balloon Balloon Balloon Ban Ban Ban Bandage Bandage Bandage Bar Chart Bar Chart Bar Chart Barbell Barbell Barbell Barcode Barcode Barcode Baseball Baseball Baseball Basket Basket Basket Basketball Basketball Basketball Battery Charging Battery Charging Battery Charging Battery Dead Battery Dead Battery Dead Battery Full Battery Full Battery Full Battery Half Battery Half Battery Half Beaker Beaker Beaker Bed Bed Bed Beer Beer Beer Bicycle Bicycle Bicycle Bluetooth Bluetooth Bluetooth Boat Boat Boat Body Body Body Bonfire Bonfire Bonfire Book Book Book Bookmark Bookmark Bookmark Bookmarks Bookmarks Bookmarks Bowling Ball Bowling Ball Bowling Ball Briefcase Briefcase Briefcase Browsers Browsers Browsers Brush Brush Brush Bug Bug Bug Build Build Build Bulb Bulb Bulb Bus Bus Bus Business Business Business Cafe Cafe Cafe Calculator Calculator Calculator Calendar Calendar Clear Calendar Clear Calendar Clear Calendar Number Calendar Number Calendar Number Calendar Calendar Call Call Call Camera Camera Camera Reverse Camera Reverse Camera Reverse Camera Car Car Car Car Sport Car Sport Car Sport Card Card Card Caret Back Caret Back Circle Caret Back Circle Caret Back Circle Caret Back Caret Back Caret Down Caret Down Circle Caret Down Circle Caret Down Circle Caret Down Caret Down Caret Forward Caret Forward Circle Caret Forward Circle Caret Forward Circle Caret Forward Caret Forward Caret Up Caret Up Circle Caret Up Circle Caret Up Circle Caret Up Caret Up Cart Cart Cart Cash Cash Cash Cellular Cellular Cellular Chatbox Chatbox Ellipses Chatbox Ellipses Chatbox Ellipses Chatbox Chatbox Chatbubble Chatbubble Ellipses Chatbubble Ellipses Chatbubble Ellipses Chatbubble Chatbubble Chatbubbles Chatbubbles Chatbubbles Checkbox Checkbox Checkbox Checkmark Checkmark Circle Checkmark Circle Checkmark Circle Checkmark Done Checkmark Done Circle Checkmark Done Circle Checkmark Done Circle Checkmark Done Checkmark Done Checkmark Checkmark Chevron Back Chevron Back Circle Chevron Back Circle Chevron Back Circle Chevron Back Chevron Back Chevron Down Chevron Down Circle Chevron Down Circle Chevron Down Circle Chevron Down Chevron Down Chevron Forward Chevron Forward Circle Chevron Forward Circle Chevron Forward Circle Chevron Forward Chevron Forward Chevron Up Chevron Up Circle Chevron Up Circle Chevron Up Circle Chevron Up Chevron Up Clipboard Clipboard Clipboard Close Close Circle Close Circle Close Circle Close Close Cloud Cloud Circle Cloud Circle Cloud Circle Cloud Done Cloud Done Cloud Done Cloud Download Cloud Download Cloud Download Cloud Offline Cloud Offline Cloud Offline Cloud Cloud Cloud Upload Cloud Upload Cloud Upload Cloudy Cloudy Night Cloudy Night Cloudy Night Cloudy Cloudy Code Code Download Code Download Code Download Code Code Code Slash Code Slash Code Slash Code Working Code Working Code Working Cog Cog Cog Color Fill Color Fill Color Fill Color Filter Color Filter Color Filter Color Palette Color Palette Color Palette Color Wand Color Wand Color Wand Compass Compass Compass Construct Construct Construct Contract Contract Contract Contrast Contrast Contrast Copy Copy Copy Create Create Create Crop Crop Crop Cube Cube Cube Cut Cut Cut Desktop Desktop Desktop Diamond Diamond Diamond Dice Dice Dice Disc Disc Disc Document Document Attach Document Attach Document Attach Document Lock Document Lock Document Lock Document Document Document Text Document Text Document Text Documents Documents Documents Download Download Download Duplicate Duplicate Duplicate Ear Ear Ear Earth Earth Earth Easel Easel Easel Egg Egg Egg Ellipse Ellipse Ellipse Ellipsis Horizontal Ellipsis Horizontal Circle Ellipsis Horizontal Circle Ellipsis Horizontal Circle Ellipsis Horizontal Ellipsis Horizontal Ellipsis Vertical Ellipsis Vertical Circle Ellipsis Vertical Circle Ellipsis Vertical Circle Ellipsis Vertical Ellipsis Vertical Enter Enter Enter Exit Exit Exit Expand Expand Expand Extension Puzzle Extension Puzzle Extension Puzzle Eye Eye Off Eye Off Eye Off Eye Eye Eyedrop Eyedrop Eyedrop Fast Food Fast Food Fast Food Female Female Female File Tray File Tray Full File Tray Full File Tray Full File Tray File Tray File Tray Stacked File Tray Stacked File Tray Stacked Film Film Film Filter Filter Circle Filter Circle Filter Circle Filter Filter Finger Print Finger Print Finger Print Fish Fish Fish Fitness Fitness Fitness Flag Flag Flag Flame Flame Flame Flash Flash Off Flash Off Flash Off Flash Flash Flashlight Flashlight Flashlight Flask Flask Flask Flower Flower Flower Folder Folder Open Folder Open Folder Open Folder Folder Football Football Football Footsteps Footsteps Footsteps Funnel Funnel Funnel Game Controller Game Controller Game Controller Gift Gift Gift Git Branch Git Branch Git Branch Git Commit Git Commit Git Commit Git Compare Git Compare Git Compare Git Merge Git Merge Git Merge Git Network Git Network Git Network Git Pull Request Git Pull Request Git Pull Request Glasses Glasses Glasses Globe Globe Globe Golf Golf Golf Grid Grid Grid Hammer Hammer Hammer Hand Left Hand Left Hand Left Hand Right Hand Right Hand Right Happy Happy Happy Hardware Chip Hardware Chip Hardware Chip Headset Headset Headset Heart Heart Circle Heart Circle Heart Circle Heart Dislike Heart Dislike Circle Heart Dislike Circle Heart Dislike Circle Heart Dislike Heart Dislike Heart Half Heart Half Heart Half Heart Heart Help Help Buoy Help Buoy Help Buoy Help Circle Help Circle Help Circle Help Help Home Home Home Hourglass Hourglass Hourglass Ice Cream Ice Cream Ice Cream Id Card Id Card Id Card Image Image Image Images Images Images Infinite Infinite Infinite Information Information Circle Information Circle Information Circle Information Information Invert Mode Invert Mode Invert Mode Journal Journal Journal Key Key Key Keypad Keypad Keypad Language Language Language Laptop Laptop Laptop Layers Layers Layers Leaf Leaf Leaf Library Library Library Link Link Link List List Circle List Circle List Circle List List Locate Locate Locate Location Location Location Lock Closed Lock Closed Lock Closed Lock Open Lock Open Lock Open Log In Log In Log In Log Out Log Out Log Out Logo Alipay Logo Amazon Logo Amplify Logo Android Logo Angular Logo Apple Logo Apple Appstore Logo Apple Ar Logo Behance Logo Bitbucket Logo Bitcoin Logo Buffer Logo Capacitor Logo Chrome Logo Closed Captioning Logo Codepen Logo Css3 Logo Designernews Logo Deviantart Logo Discord Logo Docker Logo Dribbble Logo Dropbox Logo Edge Logo Electron Logo Euro Logo Facebook Logo Figma Logo Firebase Logo Firefox Logo Flickr Logo Foursquare Logo Github Logo Gitlab Logo Google Logo Google Playstore Logo Hackernews Logo Html5 Logo Instagram Logo Ionic Logo Ionitron Logo Javascript Logo Laravel Logo Linkedin Logo Markdown Logo Mastodon Logo Medium Logo Microsoft Logo No Smoking Logo Nodejs Logo Npm Logo Octocat Logo Paypal Logo Pinterest Logo Playstation Logo Pwa Logo Python Logo React Logo Reddit Logo Rss Logo Sass Logo Skype Logo Slack Logo Snapchat Logo Soundcloud Logo Stackoverflow Logo Steam Logo Stencil Logo Tableau Logo Tiktok Logo Tumblr Logo Tux Logo Twitch Logo Twitter Logo Usd Logo Venmo Logo Vercel Logo Vimeo Logo Vk Logo Vue Logo Web Component Logo Wechat Logo Whatsapp Logo Windows Logo Wordpress Logo Xbox Logo Xing Logo Yahoo Logo Yen Logo Youtube Magnet Magnet Magnet Mail Mail Open Mail Open Mail Open Mail Mail Mail Unread Mail Unread Mail Unread Male Male Female Male Female Male Female Male Male Man Man Man Map Map Map Medal Medal Medal Medical Medical Medical Medkit Medkit Medkit Megaphone Megaphone Megaphone Menu Menu Menu Mic Mic Circle Mic Circle Mic Circle Mic Off Mic Off Circle Mic Off Circle Mic Off Circle Mic Off Mic Off Mic Mic Moon Moon Moon Move Move Move Musical Note Musical Note Musical Note Musical Notes Musical Notes Musical Notes Navigate Navigate Circle Navigate Circle Navigate Circle Navigate Navigate Newspaper Newspaper Newspaper Notifications Notifications Circle Notifications Circle Notifications Circle Notifications Off Notifications Off Circle Notifications Off Circle Notifications Off Circle Notifications Off Notifications Off Notifications Notifications Nuclear Nuclear Nuclear Nutrition Nutrition Nutrition Open Open Open Options Options Options Paper Plane Paper Plane Paper Plane Partly Sunny Partly Sunny Partly Sunny Pause Pause Circle Pause Circle Pause Circle Pause Pause Paw Paw Paw Pencil Pencil Pencil People People Circle People Circle People Circle People People Person Person Add Person Add Person Add Person Circle Person Circle Person Circle Person Person Remove Person Remove Person Remove Person Phone Landscape Phone Landscape Phone Landscape Phone Portrait Phone Portrait Phone Portrait Pie Chart Pie Chart Pie Chart Pin Pin Pin Pint Pint Pint Pizza Pizza Pizza Planet Planet Planet Play Play Back Play Back Circle Play Back Circle Play Back Circle Play Back Play Back Play Circle Play Circle Play Circle Play Forward Play Forward Circle Play Forward Circle Play Forward Circle Play Forward Play Forward Play Play Play Skip Back Play Skip Back Circle Play Skip Back Circle Play Skip Back Circle Play Skip Back Play Skip Back Play Skip Forward Play Skip Forward Circle Play Skip Forward Circle Play Skip Forward Circle Play Skip Forward Play Skip Forward Podium Podium Podium Power Power Power Pricetag Pricetag Pricetag Pricetags Pricetags Pricetags Print Print Print Prism Prism Prism Pulse Pulse Pulse Push Push Push Qr Code Qr Code Qr Code Radio Radio Button Off Radio Button Off Radio Button Off Radio Button On Radio Button On Radio Button On Radio Radio Rainy Rainy Rainy Reader Reader Reader Receipt Receipt Receipt Recording Recording Recording Refresh Refresh Circle Refresh Circle Refresh Circle Refresh Refresh Reload Reload Circle Reload Circle Reload Circle Reload Reload Remove Remove Circle Remove Circle Remove Circle Remove Remove Reorder Four Reorder Four Reorder Four Reorder Three Reorder Three Reorder Three Reorder Two Reorder Two Reorder Two Repeat Repeat Repeat Resize Resize Resize Restaurant Restaurant Restaurant Return Down Back Return Down Back Return Down Back Return Down Forward Return Down Forward Return Down Forward Return Up Back Return Up Back Return Up Back Return Up Forward Return Up Forward Return Up Forward Ribbon Ribbon Ribbon Rocket Rocket Rocket Rose Rose Rose Sad Sad Sad Save Save Save Scale Scale Scale Scan Scan Circle Scan Circle Scan Circle Scan Scan School School School Search Search Circle Search Circle Search Circle Search Search Send Send Send Server Server Server Settings Settings Settings Shapes Shapes Shapes Share Share Share Share Social Share Social Share Social Shield Shield Checkmark Shield Checkmark Shield Checkmark Shield Half Shield Half Shield Half Shield Shield Shirt Shirt Shirt Shuffle Shuffle Shuffle Skull Skull Skull Snow Snow Snow Sparkles Sparkles Sparkles Speedometer Speedometer Speedometer Square Square Square Star Star Half Star Half Star Half Star Star Stats Chart Stats Chart Stats Chart Stop Stop Circle Stop Circle Stop Circle Stop Stop Stopwatch Stopwatch Stopwatch Storefront Storefront Storefront Subway Subway Subway Sunny Sunny Sunny Swap Horizontal Swap Horizontal Swap Horizontal Swap Vertical Swap Vertical Swap Vertical Sync Sync Circle Sync Circle Sync Circle Sync Sync Tablet Landscape Tablet Landscape Tablet Landscape Tablet Portrait Tablet Portrait Tablet Portrait Telescope Telescope Telescope Tennisball Tennisball Tennisball Terminal Terminal Terminal Text Text Text Thermometer Thermometer Thermometer Thumbs Down Thumbs Down Thumbs Down Thumbs Up Thumbs Up Thumbs Up Thunderstorm Thunderstorm Thunderstorm Ticket Ticket Ticket Time Time Time Timer Timer Timer Today Today Today Toggle Toggle Toggle Trail Sign Trail Sign Trail Sign Train Train Train Transgender Transgender Transgender Trash Trash Bin Trash Bin Trash Bin Trash Trash Trending Down Trending Down Trending Down Trending Up Trending Up Trending Up Triangle Triangle Triangle Trophy Trophy Trophy Tv Tv Tv Umbrella Umbrella Umbrella Unlink Unlink Unlink Videocam Videocam Off Videocam Off Videocam Off Videocam Videocam Volume High Volume High Volume High Volume Low Volume Low Volume Low Volume Medium Volume Medium Volume Medium Volume Mute Volume Mute Volume Mute Volume Off Volume Off Volume Off Walk Walk Walk Wallet Wallet Wallet Warning Warning Warning Watch Watch Watch Water Water Water Wifi Wifi Wifi Wine Wine Wine Woman Woman Woman \ No newline at end of file diff --git a/docs/ionicons.designerpack.zip b/docs/ionicons.designerpack.zip deleted file mode 100644 index 6669bef3dbc27b82e5d1cec647b1098db8e902cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 588886 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 z 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 {Q^Ze6J^C3G4-D9Nh_nq8^e!d}!Ue}o{D=95 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�KohE*w4=n+0OcHtke3I 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%0DP0anOlFqFQP zlVu_IqhxlpAlNZohQo`Nm*BWf<`2SPtRFAYm)gy`jTv{^)(>y=62i+ZZZ|-!$^D}R zzuw};rbhqK;@lC}1LT$fUV{Ud+z7J0rIb6>_>E(gZJ%K*4=98J$WF4nr1O+koidn5 zhWDc9{BZ>G(qieeQzGLiBazhftdO|`Os5@EW-v4A z$l5RvmX8|5GtGyu7BXsY)mAA$RSdGqQEW&?1^$HnG8-6yG6E}n>zX}z3gIzAY*As4 z<9QCLE6U)36*uLvZbM~8Z}7+ zXHJTPHjbm5(S*R&%dBa$sw}bvWYHQTPlmsk`!lUU9eH0`TRcuc$>NW=9_;jm>w(ZhNA-UH2I?yz7Fla;`wTNuWf37H5uH2 z4>9yeS{AG&uOxS#;-5IZ3l(U{rN6jY^ffb#7udmz+SboLKD~I?S*hv0ZamJmrgiC& zM#kyN>EX2#5YocP=yLS4O@2AYdOe88|GQQpZ{H%1ARh%@0UhV@pwlsJaM#IG^Vp(` zbJ-B&?~}SZEy$=A-H4zXBXH>v#BtOKW9^u%`zNGalvQH=x=muc(G(^Z>o%+G8$s`p zODX(uUCf`|U#TvVi%W`)R6tpNiKo}eZIH;r4d+o0dyvt5hUg$0&&m~a)dKm^oL^F( z80;w13>Rdfil<7gRDBAkO^PheTpBLy%{3ZUDUx0Tu?U_ZYn(w7$(sbe3r2(i3R_bP zg7nR`rk?{?<45{c^7w_nuUYZAWEjmxSFGT-Sq|*7gG!rwlzFEcW7O_pntCpYS7%yW z1^70VI)0a>ovD|Zv4*P5OU8uglA&S23}rIEp>D15Q3}jRZgoxnuviQ3q)#5&nj2%0 zbIjV&ChzO3nF3O;$O9;`#Xm~ywXONh0{*_ZEaiHvUN0^Tsym+(wiqQ@)3)+tE$7dg zD@1a|O5hmUUEqq5((!oLdTVvh8CyIW8@86q?j;`U>y4%yQTmK&`A?ns5h12J6l^T> z+_FC_E21^abc$uR-R~$c!2C#~KA(hjo~F;9=JDJKw{C1H-4Jw&JJQF2q9}kXG9<{ z`$c+Etm=f!_E*yW$YAefCI-tp^LUSUE#WBk{l4NgV?0BP;-H9h^Ty~!DV3<2&uKXW z5)N+jx{4~;1^a3Xuq4kKl2}4`Zj8Sce~@!FA-xp&3nBx_IE^;hGPc&XR!+U%?jpY7 zVs0!TrtkiU>FfA}v8e-%o}I3h{(tbVb;P~35(|3=Ze$(k4%ons33536TwaZtSE=}j zQ;S;Qt<5eH44KJ|3{HE`maN06J!$iFsk^{d$jr@2W1caaMp}D8Ou_1a);MelrKhXMH4+CSQ!huUkfyM8G4$C;Tig34-v8+7~XWL-8bA7CE#NUsR zRBbNmqOR$|Ul+Kg~8s8>BZ zB+ujlL@ry;#ib#d$7l1#n46cSLxnWQ{9(rU>h~Y#=Us!iDrUj+4X_%J$nufx1n0~J z7!&xQSuYJVev_mA=&Yxn*QM*780)UG3 z-yfWR8S1~4>eayp%8f+<%ig~*%ADImGs!aeJ z{=y|!@$L{hdaR|(I((K*i`9^Ql4)F^??k1Rp-@o-^rWSQssQ(~68{mb@Ra^6XsD51 zr(0c1NlsaxH4Ev+nYH(H;rgWH3ar(p-bzkQB_!o8t%bq9^@1lfVVimwh_Qh?Ii(+KD4 z?s{J5+?D8EJRr%DF9^Xvbou6|3-JxquYOLpdwrYZ7gNMoUTPUFJqxVDt z#P_&V70e7nD(5=bQ?^#+V`*Rm-UqJ5(W4f9s+~yhmD*7G$?s=ORd} zY#D3qu(owKd4YMo6pZ?=+lGO<_UCrif9S z@gtfdtGTyvv_j=#apjO3T8v1$6MQRq1>$s;jV=?*uG7m@Q(Ue(@fyD5G*x?Yn~yltS9|%HlnlWb&J+pRRE;(l~6(>C?PJ
F? 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 - - https://ionicons.com/ - https://ionicons.com/usage - \ No newline at end of file diff --git a/docs/usage/index.html b/docs/usage/index.html index 0961c20..0e2afeb 100644 --- a/docs/usage/index.html +++ b/docs/usage/index.html @@ -1,4007 +1,1498 @@ - -Ionicons: The premium icon pack for Ionic Framework - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Usage

Ionicons is a completely open-source icon set with 1,300 icons crafted for web, iOS, Android, and desktop apps. Ionicons was made for -Ionic Framework, a cross-platform hybrid and Progressive Web App framework.

Using the Web Component

The Ionicons Web Component is an easy and performant way to use Ionicons in your app. The component will dynamically load an SVG for each icon, so your app is only requesting the icons that you need.

Also note that only visible icons are loaded, and icons which are "below the fold" and hidden from the user's view do not make fetch requests for the svg resource.

Installation

If you're using Ionic Framework, Ionicons is packaged by default, so no installation is necessary. Want to use Ionicons without Ionic Framework? Place the following -<script> near the end of your page, right before the closing -</body> tag, to enable them.

<script src="https://unpkg.com/ionicons@5.4.0/dist/ionicons.js"></script>

Basic usage

To use a built-in icon from the Ionicons package, populate the name attribute on the ion-icon component:

<ion-icon name="heart"></ion-icon>

Custom icons

To use a custom SVG, provide its url in the src attribute to request the external SVG file. The -src attribute works the same as -<img src="..."> in that the url must be accessible from the webpage that's making a request for the image. Additionally, the external file can only be a valid -svg and does not allow scripts or events within the -svg element.

<ion-icon src="/path/to/external/file.svg"></ion-icon>

Variants

Each app icon in Ionicons has a filled, -outline and sharp variant. These different variants are provided to make your app feel native to a variety of platforms. The filled variant uses the default name without a suffix. Note: Logo icons do not have outline or sharp variants.

<ion-icon name="heart"></ion-icon> <!--filled-->
-<ion-icon name="heart-outline"></ion-icon> <!--outline-->
-<ion-icon name="heart-sharp"></ion-icon> <!--sharp-->

Platform specificity

When using icons in Ionic Framework you can specify different icons per platform. Use the -md and -ios attributes and provide the platform specific icon/variant name.

<ion-icon ios="heart-outline" md="heart-sharp"></ion-icon>

Size

To specify the icon size, you can use the -size attribute for our pre-defined font sizes.

<ion-icon size="small"></ion-icon>
-<ion-icon size="large"></ion-icon>

Or you can set a specific size by applying the -font-size CSS property on the -ion-icon component. It's recommended to use pixel sizes that are a multiple of 8 (8, 16, 32, 64, etc.)

ion-icon {
-  font-size: 64px;
-}

Color

Specify the icon color by applying the color CSS property on the -ion-icon component.

ion-icon {
-  color: blue;
-}

Stroke weight

When using an outline icon variant it is possible to adjust the stroke weight, for improved visual balance relative to the icon's size or relative to the weight of adjacent text. You can set a specific size by applying the ---ionicon-stroke-weight CSS custom property to the -ion-icon component. The default value is -32px

<ion-icon name="heart-outline"></ion-icon>
ion-icon {
-  --ionicon-stroke-width: 16px;
-}

Migrating from v4

See the 5.0 release notes for a list of icon deletions/renames. You can find an archived version of the v4 site -here.

- - Accessibility - -Accessibility - Accessibility - -Add - -Add Circle - -Add Circle - Add Circle - -Add - -Add - -Airplane - -Airplane - Airplane - -Alarm - -Alarm - -Alarm - -Albums - -Albums - -Albums - Alert - -Alert Circle - -Alert Circle - -Alert Circle - -Alert - -Alert - American Football - -American Football - American Football - -Analytics - -Analytics - -Analytics - -Aperture - -Aperture - Aperture - -Apps - -Apps - -Apps - Archive - Archive - -Archive - -Arrow Back - Arrow Back Circle - -Arrow Back Circle - Arrow Back Circle - -Arrow Back - Arrow Back - Arrow Down - Arrow Down Circle - -Arrow Down Circle - Arrow Down Circle - -Arrow Down - Arrow Down - Arrow Forward - Arrow Forward Circle - -Arrow Forward Circle - Arrow Forward Circle - -Arrow Forward - Arrow Forward - Arrow Redo - -Arrow Redo Circle - -Arrow Redo Circle - Arrow Redo Circle - -Arrow Redo - Arrow Redo - -Arrow Undo - -Arrow Undo Circle - -Arrow Undo Circle - Arrow Undo Circle - -Arrow Undo - Arrow Undo - -Arrow Up - Arrow Up Circle - -Arrow Up Circle - Arrow Up Circle - -Arrow Up - Arrow Up - At - At Circle - -At Circle - At Circle - -At - At - -Attach - Attach - Attach - Backspace - -Backspace - Backspace - -Bag - -Bag Add - -Bag Add - Bag Add - -Bag Check - -Bag Check - Bag Check - -Bag Handle - -Bag Handle - Bag Handle - -Bag - Bag Remove - -Bag Remove - Bag Remove - -Bag - -Balloon - -Balloon - -Balloon - -Ban - Ban - -Ban - -Bandage - -Bandage - -Bandage - -Bar Chart - -Bar Chart - -Bar Chart - -Barbell - -Barbell - -Barbell - -Barcode - -Barcode - Barcode - Baseball - -Baseball - Baseball - -Basket - -Basket - Basket - -Basketball - -Basketball - Basketball - -Battery Charging - -Battery Charging - -Battery Charging - -Battery Dead - Battery Dead - Battery Dead - -Battery Full - -Battery Full - -Battery Full - -Battery Half - -Battery Half - -Battery Half - -Beaker - -Beaker - Beaker - -Bed - -Bed - Bed - -Beer - -Beer - Beer - -Bicycle - -Bicycle - -Bicycle - -Bluetooth - -Bluetooth - Bluetooth - -Boat - -Boat - Boat - -Body - -Body - Body - -Bonfire - -Bonfire - Bonfire - -Book - -Book - Book - -Bookmark - -Bookmark - Bookmark - Bookmarks - -Bookmarks - Bookmarks - -Bowling Ball - -Bowling Ball - -Bowling Ball - -Briefcase - -Briefcase - Briefcase - -Browsers - -Browsers - -Browsers - -Brush - -Brush - Brush - -Bug - -Bug - Bug - -Build - -Build - Build - -Bulb - -Bulb - Bulb - -Bus - -Bus - -Bus - -Business - -Business - -Business - Cafe - -Cafe - Cafe - -Calculator - -Calculator - Calculator - -Calendar - -Calendar Clear - -Calendar Clear - -Calendar Clear - -Calendar Number - -Calendar Number - Calendar Number - -Calendar - Calendar - -Call - -Call - Call - -Camera - -Camera - -Camera Reverse - -Camera Reverse - Camera Reverse - -Camera - -Car - -Car - -Car - -Car Sport - -Car Sport - -Car Sport - -Card - -Card - -Card - -Caret Back - -Caret Back Circle - -Caret Back Circle - Caret Back Circle - -Caret Back - -Caret Back - Caret Down - -Caret Down Circle - -Caret Down Circle - Caret Down Circle - -Caret Down - -Caret Down - Caret Forward - -Caret Forward Circle - -Caret Forward Circle - Caret Forward Circle - -Caret Forward - -Caret Forward - Caret Up - -Caret Up Circle - -Caret Up Circle - Caret Up Circle - -Caret Up - -Caret Up - Cart - -Cart - Cart - -Cash - -Cash - Cash - Cellular - -Cellular - -Cellular - -Chatbox - -Chatbox Ellipses - -Chatbox Ellipses - Chatbox Ellipses - -Chatbox - Chatbox - -Chatbubble - -Chatbubble Ellipses - -Chatbubble Ellipses - Chatbubble Ellipses - -Chatbubble - Chatbubble - -Chatbubbles - -Chatbubbles - Chatbubbles - -Checkbox - -Checkbox - -Checkbox - -Checkmark - -Checkmark Circle - -Checkmark Circle - Checkmark Circle - -Checkmark Done - Checkmark Done Circle - -Checkmark Done Circle - -Checkmark Done Circle - -Checkmark Done - Checkmark Done - Checkmark - -Checkmark - -Chevron Back - -Chevron Back Circle - -Chevron Back Circle - Chevron Back Circle - -Chevron Back - -Chevron Back - -Chevron Down - -Chevron Down Circle - -Chevron Down Circle - Chevron Down Circle - -Chevron Down - -Chevron Down - -Chevron Forward - -Chevron Forward Circle - -Chevron Forward Circle - Chevron Forward Circle - -Chevron Forward - -Chevron Forward - -Chevron Up - -Chevron Up Circle - -Chevron Up Circle - Chevron Up Circle - -Chevron Up - -Chevron Up - -Clipboard - -Clipboard - Clipboard - -Close - -Close Circle - -Close Circle - Close Circle - -Close - -Close - -Cloud - -Cloud Circle - -Cloud Circle - Cloud Circle - -Cloud Done - -Cloud Done - -Cloud Done - -Cloud Download - -Cloud Download - Cloud Download - -Cloud Offline - -Cloud Offline - -Cloud Offline - -Cloud - Cloud - -Cloud Upload - -Cloud Upload - -Cloud Upload - -Cloudy - -Cloudy Night - -Cloudy Night - Cloudy Night - -Cloudy - Cloudy - -Code - -Code Download - Code Download - Code Download - Code - Code - -Code Slash - -Code Slash - Code Slash - -Code Working - Code Working - -Code Working - -Cog - -Cog - -Cog - -Color Fill - -Color Fill - Color Fill - -Color Filter - -Color Filter - -Color Filter - -Color Palette - -Color Palette - Color Palette - -Color Wand - -Color Wand - Color Wand - -Compass - -Compass - -Compass - -Construct - -Construct - Construct - -Contract - Contract - Contract - Contrast - -Contrast - Contrast - -Copy - -Copy - Copy - -Create - -Create - -Create - Crop - -Crop - Crop - -Cube - -Cube - -Cube - -Cut - -Cut - Cut - Desktop - -Desktop - -Desktop - -Diamond - -Diamond - Diamond - -Dice - -Dice - Dice - -Disc - -Disc - Disc - -Document - -Document Attach - -Document Attach - Document Attach - -Document Lock - -Document Lock - Document Lock - -Document - Document - -Document Text - -Document Text - Document Text - -Documents - -Documents - Documents - -Download - -Download - -Download - -Duplicate - -Duplicate - Duplicate - -Ear - -Ear - Ear - -Earth - -Earth - -Earth - -Easel - -Easel - -Easel - Egg - -Egg - Egg - -Ellipse - -Ellipse - -Ellipse - -Ellipsis Horizontal - -Ellipsis Horizontal Circle - Ellipsis Horizontal Circle - Ellipsis Horizontal Circle - -Ellipsis Horizontal - -Ellipsis Horizontal - -Ellipsis Vertical - -Ellipsis Vertical Circle - Ellipsis Vertical Circle - Ellipsis Vertical Circle - -Ellipsis Vertical - -Ellipsis Vertical - -Enter - -Enter - -Enter - -Exit - -Exit - Exit - -Expand - Expand - Expand - Extension Puzzle - -Extension Puzzle - Extension Puzzle - -Eye - -Eye Off - -Eye Off - -Eye Off - -Eye - Eye - -Eyedrop - -Eyedrop - Eyedrop - -Fast Food - -Fast Food - -Fast Food - -Female - -Female - -Female - -File Tray - -File Tray Full - -File Tray Full - -File Tray Full - -File Tray - -File Tray - -File Tray Stacked - -File Tray Stacked - -File Tray Stacked - -Film - -Film - -Film - -Filter - -Filter Circle - -Filter Circle - Filter Circle - -Filter - -Filter - Finger Print - -Finger Print - -Finger Print - -Fish - -Fish - -Fish - -Fitness - -Fitness - -Fitness - -Flag - -Flag - Flag - -Flame - -Flame - Flame - -Flash - -Flash Off - -Flash Off - -Flash Off - -Flash - Flash - Flashlight - -Flashlight - -Flashlight - -Flask - -Flask - Flask - -Flower - -Flower - -Flower - -Folder - -Folder Open - -Folder Open - Folder Open - -Folder - Folder - -Football - -Football - Football - -Footsteps - -Footsteps - Footsteps - -Funnel - -Funnel - Funnel - Game Controller - -Game Controller - Game Controller - -Gift - -Gift - Gift - -Git Branch - -Git Branch - -Git Branch - -Git Commit - -Git Commit - -Git Commit - -Git Compare - -Git Compare - Git Compare - -Git Merge - -Git Merge - -Git Merge - -Git Network - -Git Network - Git Network - -Git Pull Request - -Git Pull Request - -Git Pull Request - -Glasses - -Glasses - Glasses - -Globe - -Globe - Globe - Golf - -Golf - Golf - -Grid - -Grid - -Grid - -Hammer - -Hammer - Hammer - -Hand Left - -Hand Left - Hand Left - -Hand Right - -Hand Right - Hand Right - -Happy - -Happy - -Happy - -Hardware Chip - -Hardware Chip - Hardware Chip - -Headset - -Headset - Headset - -Heart - -Heart Circle - -Heart Circle - -Heart Circle - -Heart Dislike - -Heart Dislike Circle - -Heart Dislike Circle - -Heart Dislike Circle - -Heart Dislike - -Heart Dislike - -Heart Half - -Heart Half - -Heart Half - -Heart - Heart - -Help - Help Buoy - -Help Buoy - Help Buoy - -Help Circle - -Help Circle - -Help Circle - -Help - Help - Home - -Home - Home - -Hourglass - -Hourglass - -Hourglass - -Ice Cream - -Ice Cream - Ice Cream - -Id Card - -Id Card - -Id Card - -Image - -Image - Image - -Images - -Images - Images - -Infinite - Infinite - Infinite - -Information - Information Circle - -Information Circle - -Information Circle - -Information - Information - Invert Mode - -Invert Mode - -Invert Mode - Journal - -Journal - Journal - -Key - -Key - Key - -Keypad - -Keypad - -Keypad - -Language - -Language - Language - -Laptop - -Laptop - Laptop - -Layers - -Layers - Layers - Leaf - -Leaf - Leaf - -Library - -Library - Library - -Link - Link - Link - List - List Circle - -List Circle - -List Circle - -List - -List - -Locate - Locate - -Locate - Location - -Location - -Location - -Lock Closed - -Lock Closed - -Lock Closed - -Lock Open - -Lock Open - -Lock Open - -Log In - -Log In - -Log In - -Log Out - -Log Out - Log Out - -Logo Alipay - -Logo Amazon - -Logo Amplify - Logo Android - -Logo Angular - -Logo Apple - -Logo Apple Appstore - -Logo Apple Ar - -Logo Behance - Logo Bitbucket - -Logo Bitcoin - -Logo Buffer - -Logo Capacitor - -Logo Chrome - -Logo Closed Captioning - -Logo Codepen - -Logo Css3 - -Logo Designernews - -Logo Deviantart - -Logo Discord - -Logo Docker - -Logo Dribbble - -Logo Dropbox - -Logo Edge - -Logo Electron - -Logo Euro - -Logo Facebook - Logo Figma - Logo Firebase - -Logo Firefox - -Logo Flickr - -Logo Foursquare - -Logo Github - -Logo Gitlab - -Logo Google - -Logo Google Playstore - -Logo Hackernews - -Logo Html5 - -Logo Instagram - -Logo Ionic - -Logo Ionitron - -Logo Javascript - -Logo Laravel - -Logo Linkedin - -Logo Markdown - -Logo Mastodon - -Logo Medium - -Logo Microsoft - -Logo No Smoking - -Logo Nodejs - -Logo Npm - -Logo Octocat - -Logo Paypal - -Logo Pinterest - -Logo Playstation - -Logo Pwa - -Logo Python - -Logo React - Logo Reddit - -Logo Rss - -Logo Sass - -Logo Skype - -Logo Slack - -Logo Snapchat - -Logo Soundcloud - -Logo Stackoverflow - -Logo Steam - -Logo Stencil - -Logo Tableau - -Logo Tiktok - -Logo Tumblr - -Logo Tux - -Logo Twitch - Logo Twitter - -Logo Usd - -Logo Venmo - -Logo Vercel - Logo Vimeo - -Logo Vk - Logo Vue - -Logo Web Component - Logo Wechat - -Logo Whatsapp - Logo Windows - -Logo Wordpress - -Logo Xbox - -Logo Xing - -Logo Yahoo - -Logo Yen - -Logo Youtube - -Magnet - -Magnet - Magnet - -Mail - -Mail Open - -Mail Open - Mail Open - -Mail - -Mail - -Mail Unread - -Mail Unread - -Mail Unread - -Male - -Male Female - -Male Female - -Male Female - -Male - -Male - -Man - -Man - -Man - -Map - -Map - Map - -Medal - -Medal - Medal - Medical - -Medical - Medical - -Medkit - -Medkit - Medkit - -Megaphone - -Megaphone - Megaphone - -Menu - Menu - -Menu - Mic - -Mic Circle - -Mic Circle - -Mic Circle - -Mic Off - -Mic Off Circle - -Mic Off Circle - -Mic Off Circle - -Mic Off - -Mic Off - Mic - Mic - -Moon - -Moon - Moon - -Move - Move - Move - Musical Note - -Musical Note - Musical Note - -Musical Notes - -Musical Notes - Musical Notes - -Navigate - -Navigate Circle - -Navigate Circle - Navigate Circle - -Navigate - -Navigate - Newspaper - -Newspaper - -Newspaper - -Notifications - -Notifications Circle - -Notifications Circle - -Notifications Circle - -Notifications Off - -Notifications Off Circle - -Notifications Off Circle - -Notifications Off Circle - -Notifications Off - -Notifications Off - -Notifications - Notifications - -Nuclear - -Nuclear - Nuclear - -Nutrition - -Nutrition - Nutrition - -Open - -Open - Open - -Options - -Options - -Options - -Paper Plane - -Paper Plane - Paper Plane - Partly Sunny - -Partly Sunny - Partly Sunny - -Pause - -Pause Circle - -Pause Circle - Pause Circle - -Pause - -Pause - Paw - -Paw - Paw - Pencil - Pencil - Pencil - -People - -People Circle - -People Circle - -People Circle - -People - People - Person - -Person Add - -Person Add - Person Add - Person Circle - -Person Circle - -Person Circle - -Person - Person Remove - -Person Remove - Person Remove - -Person - -Phone Landscape - -Phone Landscape - Phone Landscape - -Phone Portrait - -Phone Portrait - Phone Portrait - -Pie Chart - -Pie Chart - Pie Chart - -Pin - -Pin - Pin - -Pint - -Pint - Pint - -Pizza - -Pizza - Pizza - -Planet - -Planet - Planet - -Play - -Play Back - -Play Back Circle - -Play Back Circle - -Play Back Circle - -Play Back - Play Back - Play Circle - -Play Circle - -Play Circle - -Play Forward - -Play Forward Circle - -Play Forward Circle - -Play Forward Circle - -Play Forward - Play Forward - Play - Play - Play Skip Back - -Play Skip Back Circle - -Play Skip Back Circle - -Play Skip Back Circle - -Play Skip Back - Play Skip Back - Play Skip Forward - -Play Skip Forward Circle - -Play Skip Forward Circle - -Play Skip Forward Circle - -Play Skip Forward - Play Skip Forward - Podium - -Podium - Podium - Power - Power - Power - Pricetag - -Pricetag - -Pricetag - -Pricetags - -Pricetags - -Pricetags - -Print - -Print - -Print - -Prism - -Prism - Prism - Pulse - -Pulse - -Pulse - -Push - -Push - -Push - -Qr Code - -Qr Code - Qr Code - Radio - -Radio Button Off - Radio Button Off - Radio Button Off - Radio Button On - -Radio Button On - -Radio Button On - -Radio - Radio - -Rainy - -Rainy - -Rainy - -Reader - -Reader - -Reader - -Receipt - -Receipt - Receipt - -Recording - -Recording - -Recording - -Refresh - Refresh Circle - -Refresh Circle - Refresh Circle - -Refresh - Refresh - Reload - -Reload Circle - -Reload Circle - -Reload Circle - -Reload - -Reload - -Remove - -Remove Circle - -Remove Circle - Remove Circle - -Remove - -Remove - -Reorder Four - Reorder Four - Reorder Four - Reorder Three - Reorder Three - -Reorder Three - Reorder Two - -Reorder Two - -Reorder Two - -Repeat - Repeat - Repeat - -Resize - Resize - Resize - Restaurant - -Restaurant - Restaurant - -Return Down Back - -Return Down Back - -Return Down Back - -Return Down Forward - -Return Down Forward - -Return Down Forward - -Return Up Back - -Return Up Back - -Return Up Back - -Return Up Forward - -Return Up Forward - -Return Up Forward - -Ribbon - -Ribbon - -Ribbon - -Rocket - -Rocket - Rocket - -Rose - -Rose - Rose - -Sad - -Sad - -Sad - -Save - Save - Save - -Scale - -Scale - Scale - -Scan - Scan Circle - -Scan Circle - Scan Circle - -Scan - Scan - -School - -School - -School - -Search - -Search Circle - Search Circle - -Search Circle - Search - Search - -Send - -Send - Send - Server - -Server - Server - -Settings - -Settings - Settings - -Shapes - -Shapes - -Shapes - -Share - -Share - Share - -Share Social - -Share Social - -Share Social - -Shield - -Shield Checkmark - -Shield Checkmark - Shield Checkmark - -Shield Half - -Shield Half - -Shield Half - -Shield - Shield - -Shirt - -Shirt - Shirt - -Shuffle - Shuffle - Shuffle - Skull - -Skull - -Skull - -Snow - -Snow - Snow - -Sparkles - -Sparkles - Sparkles - -Speedometer - -Speedometer - Speedometer - -Square - -Square - Square - Star - -Star Half - -Star Half - -Star Half - -Star - Star - -Stats Chart - -Stats Chart - -Stats Chart - -Stop - -Stop Circle - -Stop Circle - -Stop Circle - -Stop - -Stop - Stopwatch - -Stopwatch - -Stopwatch - -Storefront - -Storefront - Storefront - -Subway - -Subway - -Subway - -Sunny - -Sunny - Sunny - -Swap Horizontal - Swap Horizontal - Swap Horizontal - Swap Vertical - Swap Vertical - Swap Vertical - Sync - -Sync Circle - -Sync Circle - Sync Circle - -Sync - -Sync - -Tablet Landscape - -Tablet Landscape - Tablet Landscape - -Tablet Portrait - -Tablet Portrait - -Tablet Portrait - -Telescope - -Telescope - Telescope - -Tennisball - -Tennisball - Tennisball - -Terminal - -Terminal - -Terminal - -Text - -Text - Text - -Thermometer - -Thermometer - Thermometer - -Thumbs Down - -Thumbs Down - Thumbs Down - -Thumbs Up - -Thumbs Up - Thumbs Up - -Thunderstorm - -Thunderstorm - Thunderstorm - -Ticket - -Ticket - Ticket - -Time - -Time - Time - -Timer - -Timer - -Timer - -Today - -Today - -Today - -Toggle - -Toggle - -Toggle - -Trail Sign - -Trail Sign - Trail Sign - -Train - -Train - Train - -Transgender - -Transgender - Transgender - -Trash - -Trash Bin - -Trash Bin - -Trash Bin - Trash - Trash - -Trending Down - Trending Down - Trending Down - -Trending Up - Trending Up - Trending Up - -Triangle - -Triangle - -Triangle - Trophy - -Trophy - Trophy - -Tv - Tv - Tv - Umbrella - -Umbrella - Umbrella - -Unlink - Unlink - Unlink - Videocam - -Videocam Off - -Videocam Off - Videocam Off - -Videocam - Videocam - -Volume High - -Volume High - Volume High - -Volume Low - -Volume Low - Volume Low - -Volume Medium - -Volume Medium - Volume Medium - Volume Mute - -Volume Mute - -Volume Mute - -Volume Off - -Volume Off - Volume Off - Walk - Walk - -Walk - -Wallet - -Wallet - Wallet - -Warning - -Warning - -Warning - -Watch - -Watch - Watch - -Water - -Water - Water - -Wifi - Wifi - -Wifi - -Wine - -Wine - -Wine - -Woman - -Woman - -Woman - - - - \ No newline at end of file + > + + + + + + + +Accessibility +Accessibility +Accessibility +Add +Add Circle +Add Circle +Add Circle +Add +Add +Airplane +Airplane +Airplane +Alarm +Alarm +Alarm +Albums +Albums +Albums +Alert +Alert Circle +Alert Circle +Alert Circle +Alert +Alert +American Football +American Football +American Football +Analytics +Analytics +Analytics +Aperture +Aperture +Aperture +Apps +Apps +Apps +Archive +Archive +Archive +Arrow Back +Arrow Back Circle +Arrow Back Circle +Arrow Back Circle +Arrow Back +Arrow Back +Arrow Down +Arrow Down Circle +Arrow Down Circle +Arrow Down Circle +Arrow Down +Arrow Down +Arrow Forward +Arrow Forward Circle +Arrow Forward Circle +Arrow Forward Circle +Arrow Forward +Arrow Forward +Arrow Redo +Arrow Redo Circle +Arrow Redo Circle +Arrow Redo Circle +Arrow Redo +Arrow Redo +Arrow Undo +Arrow Undo Circle +Arrow Undo Circle +Arrow Undo Circle +Arrow Undo +Arrow Undo +Arrow Up +Arrow Up Circle +Arrow Up Circle +Arrow Up Circle +Arrow Up +Arrow Up +At +At Circle +At Circle +At Circle +At +At +Attach +Attach +Attach +Backspace +Backspace +Backspace +Bag +Bag Add +Bag Add +Bag Add +Bag Check +Bag Check +Bag Check +Bag Handle +Bag Handle +Bag Handle +Bag +Bag Remove +Bag Remove +Bag Remove +Bag +Balloon +Balloon +Balloon +Ban +Ban +Ban +Bandage +Bandage +Bandage +Bar Chart +Bar Chart +Bar Chart +Barbell +Barbell +Barbell +Barcode +Barcode +Barcode +Baseball +Baseball +Baseball +Basket +Basket +Basket +Basketball +Basketball +Basketball +Battery Charging +Battery Charging +Battery Charging +Battery Dead +Battery Dead +Battery Dead +Battery Full +Battery Full +Battery Full +Battery Half +Battery Half +Battery Half +Beaker +Beaker +Beaker +Bed +Bed +Bed +Beer +Beer +Beer +Bicycle +Bicycle +Bicycle +Bluetooth +Bluetooth +Bluetooth +Boat +Boat +Boat +Body +Body +Body +Bonfire +Bonfire +Bonfire +Book +Book +Book +Bookmark +Bookmark +Bookmark +Bookmarks +Bookmarks +Bookmarks +Bowling Ball +Bowling Ball +Bowling Ball +Briefcase +Briefcase +Briefcase +Browsers +Browsers +Browsers +Brush +Brush +Brush +Bug +Bug +Bug +Build +Build +Build +Bulb +Bulb +Bulb +Bus +Bus +Bus +Business +Business +Business +Cafe +Cafe +Cafe +Calculator +Calculator +Calculator +Calendar +Calendar Clear +Calendar Clear +Calendar Clear +Calendar Number +Calendar Number +Calendar Number +Calendar +Calendar +Call +Call +Call +Camera +Camera +Camera Reverse +Camera Reverse +Camera Reverse +Camera +Car +Car +Car +Car Sport +Car Sport +Car Sport +Card +Card +Card +Caret Back +Caret Back Circle +Caret Back Circle +Caret Back Circle +Caret Back +Caret Back +Caret Down +Caret Down Circle +Caret Down Circle +Caret Down Circle +Caret Down +Caret Down +Caret Forward +Caret Forward Circle +Caret Forward Circle +Caret Forward Circle +Caret Forward +Caret Forward +Caret Up +Caret Up Circle +Caret Up Circle +Caret Up Circle +Caret Up +Caret Up +Cart +Cart +Cart +Cash +Cash +Cash +Cellular +Cellular +Cellular +Chatbox +Chatbox Ellipses +Chatbox Ellipses +Chatbox Ellipses +Chatbox +Chatbox +Chatbubble +Chatbubble Ellipses +Chatbubble Ellipses +Chatbubble Ellipses +Chatbubble +Chatbubble +Chatbubbles +Chatbubbles +Chatbubbles +Checkbox +Checkbox +Checkbox +Checkmark +Checkmark Circle +Checkmark Circle +Checkmark Circle +Checkmark Done +Checkmark Done Circle +Checkmark Done Circle +Checkmark Done Circle +Checkmark Done +Checkmark Done +Checkmark +Checkmark +Chevron Back +Chevron Back Circle +Chevron Back Circle +Chevron Back Circle +Chevron Back +Chevron Back +Chevron Down +Chevron Down Circle +Chevron Down Circle +Chevron Down Circle +Chevron Down +Chevron Down +Chevron Forward +Chevron Forward Circle +Chevron Forward Circle +Chevron Forward Circle +Chevron Forward +Chevron Forward +Chevron Up +Chevron Up Circle +Chevron Up Circle +Chevron Up Circle +Chevron Up +Chevron Up +Clipboard +Clipboard +Clipboard +Close +Close Circle +Close Circle +Close Circle +Close +Close +Cloud +Cloud Circle +Cloud Circle +Cloud Circle +Cloud Done +Cloud Done +Cloud Done +Cloud Download +Cloud Download +Cloud Download +Cloud Offline +Cloud Offline +Cloud Offline +Cloud +Cloud +Cloud Upload +Cloud Upload +Cloud Upload +Cloudy +Cloudy Night +Cloudy Night +Cloudy Night +Cloudy +Cloudy +Code +Code Download +Code Download +Code Download +Code +Code +Code Slash +Code Slash +Code Slash +Code Working +Code Working +Code Working +Cog +Cog +Cog +Color Fill +Color Fill +Color Fill +Color Filter +Color Filter +Color Filter +Color Palette +Color Palette +Color Palette +Color Wand +Color Wand +Color Wand +Compass +Compass +Compass +Construct +Construct +Construct +Contract +Contract +Contract +Contrast +Contrast +Contrast +Copy +Copy +Copy +Create +Create +Create +Crop +Crop +Crop +Cube +Cube +Cube +Cut +Cut +Cut +Desktop +Desktop +Desktop +Diamond +Diamond +Diamond +Dice +Dice +Dice +Disc +Disc +Disc +Document +Document Attach +Document Attach +Document Attach +Document Lock +Document Lock +Document Lock +Document +Document +Document Text +Document Text +Document Text +Documents +Documents +Documents +Download +Download +Download +Duplicate +Duplicate +Duplicate +Ear +Ear +Ear +Earth +Earth +Earth +Easel +Easel +Easel +Egg +Egg +Egg +Ellipse +Ellipse +Ellipse +Ellipsis Horizontal +Ellipsis Horizontal Circle +Ellipsis Horizontal Circle +Ellipsis Horizontal Circle +Ellipsis Horizontal +Ellipsis Horizontal +Ellipsis Vertical +Ellipsis Vertical Circle +Ellipsis Vertical Circle +Ellipsis Vertical Circle +Ellipsis Vertical +Ellipsis Vertical +Enter +Enter +Enter +Exit +Exit +Exit +Expand +Expand +Expand +Extension Puzzle +Extension Puzzle +Extension Puzzle +Eye +Eye Off +Eye Off +Eye Off +Eye +Eye +Eyedrop +Eyedrop +Eyedrop +Fast Food +Fast Food +Fast Food +Female +Female +Female +File Tray +File Tray Full +File Tray Full +File Tray Full +File Tray +File Tray +File Tray Stacked +File Tray Stacked +File Tray Stacked +Film +Film +Film +Filter +Filter Circle +Filter Circle +Filter Circle +Filter +Filter +Finger Print +Finger Print +Finger Print +Fish +Fish +Fish +Fitness +Fitness +Fitness +Flag +Flag +Flag +Flame +Flame +Flame +Flash +Flash Off +Flash Off +Flash Off +Flash +Flash +Flashlight +Flashlight +Flashlight +Flask +Flask +Flask +Flower +Flower +Flower +Folder +Folder Open +Folder Open +Folder Open +Folder +Folder +Football +Football +Football +Footsteps +Footsteps +Footsteps +Funnel +Funnel +Funnel +Game Controller +Game Controller +Game Controller +Gift +Gift +Gift +Git Branch +Git Branch +Git Branch +Git Commit +Git Commit +Git Commit +Git Compare +Git Compare +Git Compare +Git Merge +Git Merge +Git Merge +Git Network +Git Network +Git Network +Git Pull Request +Git Pull Request +Git Pull Request +Glasses +Glasses +Glasses +Globe +Globe +Globe +Golf +Golf +Golf +Grid +Grid +Grid +Hammer +Hammer +Hammer +Hand Left +Hand Left +Hand Left +Hand Right +Hand Right +Hand Right +Happy +Happy +Happy +Hardware Chip +Hardware Chip +Hardware Chip +Headset +Headset +Headset +Heart +Heart Circle +Heart Circle +Heart Circle +Heart Dislike +Heart Dislike Circle +Heart Dislike Circle +Heart Dislike Circle +Heart Dislike +Heart Dislike +Heart Half +Heart Half +Heart Half +Heart +Heart +Help +Help Buoy +Help Buoy +Help Buoy +Help Circle +Help Circle +Help Circle +Help +Help +Home +Home +Home +Hourglass +Hourglass +Hourglass +Ice Cream +Ice Cream +Ice Cream +Id Card +Id Card +Id Card +Image +Image +Image +Images +Images +Images +Infinite +Infinite +Infinite +Information +Information Circle +Information Circle +Information Circle +Information +Information +Invert Mode +Invert Mode +Invert Mode +Journal +Journal +Journal +Key +Key +Key +Keypad +Keypad +Keypad +Language +Language +Language +Laptop +Laptop +Laptop +Layers +Layers +Layers +Leaf +Leaf +Leaf +Library +Library +Library +Link +Link +Link +List +List Circle +List Circle +List Circle +List +List +Locate +Locate +Locate +Location +Location +Location +Lock Closed +Lock Closed +Lock Closed +Lock Open +Lock Open +Lock Open +Log In +Log In +Log In +Log Out +Log Out +Log Out +Logo Alipay +Logo Amazon +Logo Amplify +Logo Android +Logo Angular +Logo Apple +Logo Apple Appstore +Logo Apple Ar +Logo Behance +Logo Bitbucket +Logo Bitcoin +Logo Buffer +Logo Capacitor +Logo Chrome +Logo Closed Captioning +Logo Codepen +Logo Css3 +Logo Designernews +Logo Deviantart +Logo Discord +Logo Docker +Logo Dribbble +Logo Dropbox +Logo Edge +Logo Electron +Logo Euro +Logo Facebook +Logo Figma +Logo Firebase +Logo Firefox +Logo Flickr +Logo Foursquare +Logo Github +Logo Gitlab +Logo Google +Logo Google Playstore +Logo Hackernews +Logo Html5 +Logo Instagram +Logo Ionic +Logo Ionitron +Logo Javascript +Logo Laravel +Logo Linkedin +Logo Markdown +Logo Mastodon +Logo Medium +Logo Microsoft +Logo No Smoking +Logo Nodejs +Logo Npm +Logo Octocat +Logo Paypal +Logo Pinterest +Logo Playstation +Logo Pwa +Logo Python +Logo React +Logo Reddit +Logo Rss +Logo Sass +Logo Skype +Logo Slack +Logo Snapchat +Logo Soundcloud +Logo Stackoverflow +Logo Steam +Logo Stencil +Logo Tableau +Logo Tiktok +Logo Tumblr +Logo Tux +Logo Twitch +Logo Twitter +Logo Usd +Logo Venmo +Logo Vercel +Logo Vimeo +Logo Vk +Logo Vue +Logo Web Component +Logo Wechat +Logo Whatsapp +Logo Windows +Logo Wordpress +Logo Xbox +Logo Xing +Logo Yahoo +Logo Yen +Logo Youtube +Magnet +Magnet +Magnet +Mail +Mail Open +Mail Open +Mail Open +Mail +Mail +Mail Unread +Mail Unread +Mail Unread +Male +Male Female +Male Female +Male Female +Male +Male +Man +Man +Man +Map +Map +Map +Medal +Medal +Medal +Medical +Medical +Medical +Medkit +Medkit +Medkit +Megaphone +Megaphone +Megaphone +Menu +Menu +Menu +Mic +Mic Circle +Mic Circle +Mic Circle +Mic Off +Mic Off Circle +Mic Off Circle +Mic Off Circle +Mic Off +Mic Off +Mic +Mic +Moon +Moon +Moon +Move +Move +Move +Musical Note +Musical Note +Musical Note +Musical Notes +Musical Notes +Musical Notes +Navigate +Navigate Circle +Navigate Circle +Navigate Circle +Navigate +Navigate +Newspaper +Newspaper +Newspaper +Notifications +Notifications Circle +Notifications Circle +Notifications Circle +Notifications Off +Notifications Off Circle +Notifications Off Circle +Notifications Off Circle +Notifications Off +Notifications Off +Notifications +Notifications +Nuclear +Nuclear +Nuclear +Nutrition +Nutrition +Nutrition +Open +Open +Open +Options +Options +Options +Paper Plane +Paper Plane +Paper Plane +Partly Sunny +Partly Sunny +Partly Sunny +Pause +Pause Circle +Pause Circle +Pause Circle +Pause +Pause +Paw +Paw +Paw +Pencil +Pencil +Pencil +People +People Circle +People Circle +People Circle +People +People +Person +Person Add +Person Add +Person Add +Person Circle +Person Circle +Person Circle +Person +Person Remove +Person Remove +Person Remove +Person +Phone Landscape +Phone Landscape +Phone Landscape +Phone Portrait +Phone Portrait +Phone Portrait +Pie Chart +Pie Chart +Pie Chart +Pin +Pin +Pin +Pint +Pint +Pint +Pizza +Pizza +Pizza +Planet +Planet +Planet +Play +Play Back +Play Back Circle +Play Back Circle +Play Back Circle +Play Back +Play Back +Play Circle +Play Circle +Play Circle +Play Forward +Play Forward Circle +Play Forward Circle +Play Forward Circle +Play Forward +Play Forward +Play +Play +Play Skip Back +Play Skip Back Circle +Play Skip Back Circle +Play Skip Back Circle +Play Skip Back +Play Skip Back +Play Skip Forward +Play Skip Forward Circle +Play Skip Forward Circle +Play Skip Forward Circle +Play Skip Forward +Play Skip Forward +Podium +Podium +Podium +Power +Power +Power +Pricetag +Pricetag +Pricetag +Pricetags +Pricetags +Pricetags +Print +Print +Print +Prism +Prism +Prism +Pulse +Pulse +Pulse +Push +Push +Push +Qr Code +Qr Code +Qr Code +Radio +Radio Button Off +Radio Button Off +Radio Button Off +Radio Button On +Radio Button On +Radio Button On +Radio +Radio +Rainy +Rainy +Rainy +Reader +Reader +Reader +Receipt +Receipt +Receipt +Recording +Recording +Recording +Refresh +Refresh Circle +Refresh Circle +Refresh Circle +Refresh +Refresh +Reload +Reload Circle +Reload Circle +Reload Circle +Reload +Reload +Remove +Remove Circle +Remove Circle +Remove Circle +Remove +Remove +Reorder Four +Reorder Four +Reorder Four +Reorder Three +Reorder Three +Reorder Three +Reorder Two +Reorder Two +Reorder Two +Repeat +Repeat +Repeat +Resize +Resize +Resize +Restaurant +Restaurant +Restaurant +Return Down Back +Return Down Back +Return Down Back +Return Down Forward +Return Down Forward +Return Down Forward +Return Up Back +Return Up Back +Return Up Back +Return Up Forward +Return Up Forward +Return Up Forward +Ribbon +Ribbon +Ribbon +Rocket +Rocket +Rocket +Rose +Rose +Rose +Sad +Sad +Sad +Save +Save +Save +Scale +Scale +Scale +Scan +Scan Circle +Scan Circle +Scan Circle +Scan +Scan +School +School +School +Search +Search Circle +Search Circle +Search Circle +Search +Search +Send +Send +Send +Server +Server +Server +Settings +Settings +Settings +Shapes +Shapes +Shapes +Share +Share +Share +Share Social +Share Social +Share Social +Shield +Shield Checkmark +Shield Checkmark +Shield Checkmark +Shield Half +Shield Half +Shield Half +Shield +Shield +Shirt +Shirt +Shirt +Shuffle +Shuffle +Shuffle +Skull +Skull +Skull +Snow +Snow +Snow +Sparkles +Sparkles +Sparkles +Speedometer +Speedometer +Speedometer +Square +Square +Square +Star +Star Half +Star Half +Star Half +Star +Star +Stats Chart +Stats Chart +Stats Chart +Stop +Stop Circle +Stop Circle +Stop Circle +Stop +Stop +Stopwatch +Stopwatch +Stopwatch +Storefront +Storefront +Storefront +Subway +Subway +Subway +Sunny +Sunny +Sunny +Swap Horizontal +Swap Horizontal +Swap Horizontal +Swap Vertical +Swap Vertical +Swap Vertical +Sync +Sync Circle +Sync Circle +Sync Circle +Sync +Sync +Tablet Landscape +Tablet Landscape +Tablet Landscape +Tablet Portrait +Tablet Portrait +Tablet Portrait +Telescope +Telescope +Telescope +Tennisball +Tennisball +Tennisball +Terminal +Terminal +Terminal +Text +Text +Text +Thermometer +Thermometer +Thermometer +Thumbs Down +Thumbs Down +Thumbs Down +Thumbs Up +Thumbs Up +Thumbs Up +Thunderstorm +Thunderstorm +Thunderstorm +Ticket +Ticket +Ticket +Time +Time +Time +Timer +Timer +Timer +Today +Today +Today +Toggle +Toggle +Toggle +Trail Sign +Trail Sign +Trail Sign +Train +Train +Train +Transgender +Transgender +Transgender +Trash +Trash Bin +Trash Bin +Trash Bin +Trash +Trash +Trending Down +Trending Down +Trending Down +Trending Up +Trending Up +Trending Up +Triangle +Triangle +Triangle +Trophy +Trophy +Trophy +Tv +Tv +Tv +Umbrella +Umbrella +Umbrella +Unlink +Unlink +Unlink +Videocam +Videocam Off +Videocam Off +Videocam Off +Videocam +Videocam +Volume High +Volume High +Volume High +Volume Low +Volume Low +Volume Low +Volume Medium +Volume Medium +Volume Medium +Volume Mute +Volume Mute +Volume Mute +Volume Off +Volume Off +Volume Off +Walk +Walk +Walk +Wallet +Wallet +Wallet +Warning +Warning +Warning +Watch +Watch +Watch +Water +Water +Water +Wifi +Wifi +Wifi +Wine +Wine +Wine +Woman +Woman +Woman + + + + diff --git a/docs/v4/build/p-i2s3rn6x.entry.js b/docs/v4/build/p-i2s3rn6x.entry.js index a3ff42c..3cc77fe 100644 --- a/docs/v4/build/p-i2s3rn6x.entry.js +++ b/docs/v4/build/p-i2s3rn6x.entry.js @@ -1 +1 @@ -import{r as s,c as i,h as t,g as o}from"./p-5f00bf62.js";const a=class{constructor(t){s(this,t),this.hadIconOnce=!1,this.clearToast=i(this,"clearToast",7),this.toggleHeaderSearch=i(this,"toggleHeaderSearch",7)}handleCodeClick(s){const i=this.el.querySelector(".toast-bar__section:first-child"),t=document.createElement("textarea");t.value=``,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),this.showCopiedConfirm&&(window.clearTimeout(this.showCopiedConfirm),this.showCopiedConfirm=0),i.classList.add("copied"),this.showCopiedConfirm=window.setTimeout(()=>{i.classList.remove("copied"),this.showCopiedConfirm=0},1500)}componentDidLoad(){this.el.addEventListener("touchstart",this.handleTouchStart.bind(this),!1),this.el.addEventListener("touchend",this.handleTouchEnd.bind(this),!1)}handleTouchStart(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchStartY=s.changedTouches[0].screenY)}handleTouchEnd(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchEndY=s.changedTouches[0].screenY,this.touchEndY>this.touchStartY&&this.clearToast.emit())}render(){let s,i,o,a=null;return this.selectedIcon&&(this.hadIconOnce||(this.hadIconOnce=!0),o=this.selectedIcon.name,"logo"===(i=this.selectedIcon.icons[0].startsWith("logo-")?"logo":this.selectedIconType)&&(o="logo-"+o),s=8*``.length+32,a=this.selectedIcon.icons.map(s=>{let i;switch(s.substr(0,s.indexOf("-"))){case"ios":i="iOS STYLE";break;case"md":i="MATERIAL STYLE";break;case"logo":i="LOGO"}return t("div",{class:"toast-bar__section"},t("div",{class:"toast-bar__section-header"},t("h6",null,i)),t("div",{class:"btn-group"},t("div",{class:"btn btn--gray btn--small btn--icon"},t("i",{class:"ion ion-"+s})),t("a",{class:"btn btn--gray btn--small",download:`/ionicons/svg/${s}.svg`,href:`/ionicons/svg/${s}.svg`},t("i",{class:"ion ion-md-download"}),"SVG")))})),t("div",{class:`toast-bar ${this.selectedIcon?"isVisible":""} ${!this.selectedIcon&&this.hadIconOnce?"isHidden":""} ${this.hadIconOnce?"":"preload"}`,onClick:s=>s.stopPropagation()},t("div",{class:"container"},t("div",{class:"toast-bar--inner"},this.selectedIcon&&t("h4",null,this.selectedIcon.name),this.selectedIcon&&t("div",{class:"toast-bar__details"},t("div",{class:"toast-bar__section",style:{maxWidth:s+"px"}},t("div",{class:"toast-bar__section-header"},t("div",null,t("h6",null,"Web component code"),t("span",{class:"confirmation"},t("i",{class:"ion ion-md-checkmark"}),"Copied")),t("stencil-route-link",{url:`/usage#${i}-${this.selectedIcon.name}`,onClick:()=>this.toggleHeaderSearch.emit("hide")},"Usage",t("i",{class:"ion ion-ios-arrow-forward"}))),t("code",null,t("span",{class:"hover-highlight",onClick:()=>this.handleCodeClick(o)},"<",t("span",{class:"yellow"},"ion-icon")," ",t("span",{class:"orange"},"name"),"=",t("span",{class:"green"},`"${o}"`),">",""))),a))))}get el(){return o(this)}static get style(){return"toast-bar .toast-bar{position:fixed;padding:12px 0;left:0;bottom:0;width:100%;-webkit-transform:translateY(100%);transform:translateY(100%)}toast-bar .toast-bar.isVisible{-webkit-animation-name:slideIn;animation-name:slideIn;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;opacity:1}\@-webkit-keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}\@keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}toast-bar .toast-bar.isHidden{-webkit-animation-name:slideOut;animation-name:slideOut;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}\@keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}toast-bar .toast-bar.preload{opacity:0}toast-bar .toast-bar--inner{background-color:var(--color-shark);height:80px;border-radius:15px;padding:0 20px 0 30px;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08);box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08)}toast-bar .toast-bar--inner h4{color:#fff;margin:0;white-space:nowrap;margin-right:30px}toast-bar .toast-bar__details{-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}toast-bar .toast-bar__section-header,toast-bar .toast-bar__section-header>div{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}toast-bar .toast-bar__section-header{height:10px;margin-bottom:7px}toast-bar .toast-bar__section-header h6{display:inline-block}toast-bar .toast-bar__section-header a{-webkit-transition:border .3s;transition:border .3s;color:var(--color-melrose);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid transparent}toast-bar .toast-bar__section-header a:hover{border-bottom-color:var(--color-melrose-dark)}toast-bar .toast-bar__section-header i{margin-left:3px}toast-bar .toast-bar__section:not(:first-child){margin-left:20px}toast-bar .toast-bar__section:first-child{position:relative;max-width:none}toast-bar .toast-bar__details code{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:14px;line-height:14px;height:32px;padding:0 12px;cursor:text;overflow:hidden}\@supports (display:grid){toast-bar .toast-bar__section:not(:first-child){-ms-flex:0;flex:0}toast-bar .toast-bar__section:first-child{-ms-flex:1;flex:1}toast-bar .toast-bar__details code{overflow-x:auto}}toast-bar .toast-bar__details code>span{position:absolute;white-space:nowrap}toast-bar .toast-bar__section .confirmation{font-size:11px;font-family:Eina;font-weight:600;color:#aec6ff;display:-ms-flexbox;display:flex;opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px);margin-left:12px}toast-bar .toast-bar__section .confirmation .ion{color:#aec6ff;font-size:14px;margin-right:4px}toast-bar .toast-bar__section.copied .confirmation{-webkit-animation-name:slideInOut;animation-name:slideInOut;-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}\@keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}toast-bar .toast-bar__details code:hover .hover-highlight{background-color:#5882b2}\@media screen and (max-width:768px){toast-bar .toast-bar__section:not(:first-child){display:none}}\@media screen and (max-width:540px){toast-bar .toast-bar--inner{padding:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;height:auto}toast-bar .toast-bar--inner h4{margin:0 0 16px}toast-bar .toast-bar__section{max-width:100%!important}toast-bar .toast-bar__details{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}}"}};export{a as toast_bar}; \ No newline at end of file +import{r as s,c as i,h as t,g as o}from"./p-5f00bf62.js";const a=class{constructor(t){s(this,t),this.hadIconOnce=!1,this.clearToast=i(this,"clearToast",7),this.toggleHeaderSearch=i(this,"toggleHeaderSearch",7)}handleCodeClick(s){const i=this.el.querySelector(".toast-bar__section:first-child"),t=document.createElement("textarea");t.value=``,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),this.showCopiedConfirm&&(window.clearTimeout(this.showCopiedConfirm),this.showCopiedConfirm=0),i.classList.add("copied"),this.showCopiedConfirm=window.setTimeout(()=>{i.classList.remove("copied"),this.showCopiedConfirm=0},1500)}componentDidLoad(){this.el.addEventListener("touchstart",this.handleTouchStart.bind(this),!1),this.el.addEventListener("touchend",this.handleTouchEnd.bind(this),!1)}handleTouchStart(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchStartY=s.changedTouches[0].screenY)}handleTouchEnd(s){s.target.classList.contains("toast-bar--inner")&&(s.preventDefault(),this.touchEndY=s.changedTouches[0].screenY,this.touchEndY>this.touchStartY&&this.clearToast.emit())}render(){let s,i,o,a=null;return this.selectedIcon&&(this.hadIconOnce||(this.hadIconOnce=!0),o=this.selectedIcon.name,"logo"===(i=this.selectedIcon.icons[0].startsWith("logo-")?"logo":this.selectedIconType)&&(o="logo-"+o),s=8*``.length+32,a=this.selectedIcon.icons.map(s=>{let i;switch(s.substr(0,s.indexOf("-"))){case"ios":i="iOS STYLE";break;case"md":i="MATERIAL STYLE";break;case"logo":i="LOGO"}return t("div",{class:"toast-bar__section"},t("div",{class:"toast-bar__section-header"},t("h6",null,i)),t("div",{class:"btn-group"},t("div",{class:"btn btn--gray btn--small btn--icon"},t("i",{class:"ion ion-"+s})),t("a",{class:"btn btn--gray btn--small",download:`/v4/ionicons/svg/${s}.svg`,href:`/v4/ionicons/svg/${s}.svg`},t("i",{class:"ion ion-md-download"}),"SVG")))})),t("div",{class:`toast-bar ${this.selectedIcon?"isVisible":""} ${!this.selectedIcon&&this.hadIconOnce?"isHidden":""} ${this.hadIconOnce?"":"preload"}`,onClick:s=>s.stopPropagation()},t("div",{class:"container"},t("div",{class:"toast-bar--inner"},this.selectedIcon&&t("h4",null,this.selectedIcon.name),this.selectedIcon&&t("div",{class:"toast-bar__details"},t("div",{class:"toast-bar__section",style:{maxWidth:s+"px"}},t("div",{class:"toast-bar__section-header"},t("div",null,t("h6",null,"Web component code"),t("span",{class:"confirmation"},t("i",{class:"ion ion-md-checkmark"}),"Copied")),t("stencil-route-link",{url:`/usage#${i}-${this.selectedIcon.name}`,onClick:()=>this.toggleHeaderSearch.emit("hide")},"Usage",t("i",{class:"ion ion-ios-arrow-forward"}))),t("code",null,t("span",{class:"hover-highlight",onClick:()=>this.handleCodeClick(o)},"<",t("span",{class:"yellow"},"ion-icon")," ",t("span",{class:"orange"},"name"),"=",t("span",{class:"green"},`"${o}"`),">",""))),a))))}get el(){return o(this)}static get style(){return"toast-bar .toast-bar{position:fixed;padding:12px 0;left:0;bottom:0;width:100%;-webkit-transform:translateY(100%);transform:translateY(100%)}toast-bar .toast-bar.isVisible{-webkit-animation-name:slideIn;animation-name:slideIn;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;opacity:1}\@-webkit-keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}\@keyframes slideIn{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}toast-bar .toast-bar.isHidden{-webkit-animation-name:slideOut;animation-name:slideOut;-webkit-animation-duration:.4s;animation-duration:.4s;-webkit-animation-timing-function:var(--easeOutExpo);animation-timing-function:var(--easeOutExpo);-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}\@keyframes slideOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}99%{opacity:1}to{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}}toast-bar .toast-bar.preload{opacity:0}toast-bar .toast-bar--inner{background-color:var(--color-shark);height:80px;border-radius:15px;padding:0 20px 0 30px;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08);box-shadow:0 16px 32px 0 rgba(0,0,0,.1),0 8px 16px 0 rgba(0,0,0,.08)}toast-bar .toast-bar--inner h4{color:#fff;margin:0;white-space:nowrap;margin-right:30px}toast-bar .toast-bar__details{-ms-flex:1 0 auto;flex:1 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}toast-bar .toast-bar__section-header,toast-bar .toast-bar__section-header>div{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}toast-bar .toast-bar__section-header{height:10px;margin-bottom:7px}toast-bar .toast-bar__section-header h6{display:inline-block}toast-bar .toast-bar__section-header a{-webkit-transition:border .3s;transition:border .3s;color:var(--color-melrose);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid transparent}toast-bar .toast-bar__section-header a:hover{border-bottom-color:var(--color-melrose-dark)}toast-bar .toast-bar__section-header i{margin-left:3px}toast-bar .toast-bar__section:not(:first-child){margin-left:20px}toast-bar .toast-bar__section:first-child{position:relative;max-width:none}toast-bar .toast-bar__details code{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:14px;line-height:14px;height:32px;padding:0 12px;cursor:text;overflow:hidden}\@supports (display:grid){toast-bar .toast-bar__section:not(:first-child){-ms-flex:0;flex:0}toast-bar .toast-bar__section:first-child{-ms-flex:1;flex:1}toast-bar .toast-bar__details code{overflow-x:auto}}toast-bar .toast-bar__details code>span{position:absolute;white-space:nowrap}toast-bar .toast-bar__section .confirmation{font-size:11px;font-family:Eina;font-weight:600;color:#aec6ff;display:-ms-flexbox;display:flex;opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px);margin-left:12px}toast-bar .toast-bar__section .confirmation .ion{color:#aec6ff;font-size:14px;margin-right:4px}toast-bar .toast-bar__section.copied .confirmation{-webkit-animation-name:slideInOut;animation-name:slideInOut;-webkit-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}\@-webkit-keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}\@keyframes slideInOut{0%{opacity:0;-webkit-transform:translateY(5px);transform:translateY(5px)}10%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}90%{opacity:.9;-webkit-transform:translateY(0);transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(-5px);transform:translateY(-5px)}}toast-bar .toast-bar__details code:hover .hover-highlight{background-color:#5882b2}\@media screen and (max-width:768px){toast-bar .toast-bar__section:not(:first-child){display:none}}\@media screen and (max-width:540px){toast-bar .toast-bar--inner{padding:16px;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;height:auto}toast-bar .toast-bar--inner h4{margin:0 0 16px}toast-bar .toast-bar__section{max-width:100%!important}toast-bar .toast-bar__details{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}}"}};export{a as toast_bar}; \ No newline at end of file From 1cd90131bc31fe703b6e308da9ee6ff8f3fc7845 Mon Sep 17 00:00:00 2001 From: Arghya Ghosh <71373838+uiuxarghya@users.noreply.github.com> Date: Wed, 21 Apr 2021 18:05:41 +0530 Subject: [PATCH 5/5] Delete .github/workflows directory --- .github/workflows/codeql-analysis.yml | 67 --------------------------- 1 file changed, 67 deletions(-) delete mode 100644 .github/workflows/codeql-analysis.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 4a3d14e..0000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,67 +0,0 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" - -on: - push: - branches: [ master ] - pull_request: - # The branches below must be a subset of the branches above - branches: [ master ] - schedule: - - cron: '27 23 * * 3' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - - strategy: - fail-fast: false - matrix: - language: [ 'javascript' ] - # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] - # Learn more: - # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v1 - - # â„šī¸ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1
See how Ionicons fits into the entire Ionic Ecosystem -->
Ionicons is part of the -Ionic Ecosystem ->