Showing preview only (4,772K chars total). Download the full file or copy to clipboard to get everything.
Repository: PrefectHQ/ui
Branch: master
Commit: 991683a4b050
Files: 1132
Total size: 4.3 MB
Directory structure:
gitextract_a0dbiq0z/
├── .browserslistrc
├── .dockerignore
├── .eslintignore
├── .eslintrc.js
├── .github/
│ ├── CODEOWNERS
│ ├── ISSUE_TEMPLATE/
│ │ ├── bug---.md
│ │ └── general---.md
│ ├── PULL_REQUEST_TEMPLATE.md
│ ├── codeql-config.yml
│ └── workflows/
│ └── codeql-analysis.yml
├── .gitignore
├── .nvmrc
├── .prettierignore
├── .prettierrc.js
├── .salesforce_env_development
├── .salesforce_env_production
├── .stylelintignore
├── Changelog.md
├── Dockerfile
├── LICENSE
├── README.md
├── babel.config.js
├── changelog-template.hbs
├── export.sh
├── file-downloader.js
├── intercept.sh
├── jest.config.js
├── netlify.toml
├── nginx.conf
├── package.json
├── postcss.config.js
├── public/
│ ├── _redirects
│ ├── browserconfig.xml
│ ├── fonts/
│ │ ├── font-awesome/
│ │ │ ├── LICENSE.txt
│ │ │ ├── README.md
│ │ │ ├── css/
│ │ │ │ ├── all.css
│ │ │ │ ├── brands.css
│ │ │ │ ├── duotone.css
│ │ │ │ ├── fontawesome.css
│ │ │ │ ├── regular.css
│ │ │ │ ├── solid.css
│ │ │ │ └── svg-with-js.css
│ │ │ ├── current-ui.yaml
│ │ │ ├── js/
│ │ │ │ ├── all.js
│ │ │ │ ├── brands.js
│ │ │ │ ├── duotone.js
│ │ │ │ ├── fontawesome.js
│ │ │ │ ├── regular.js
│ │ │ │ └── solid.js
│ │ │ ├── js-packages/
│ │ │ │ └── @fortawesome/
│ │ │ │ ├── fontawesome-common-types/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ └── package.json
│ │ │ │ ├── fontawesome-pro/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── css/
│ │ │ │ │ │ ├── all.css
│ │ │ │ │ │ ├── brands.css
│ │ │ │ │ │ ├── duotone.css
│ │ │ │ │ │ ├── fontawesome.css
│ │ │ │ │ │ ├── regular.css
│ │ │ │ │ │ ├── solid.css
│ │ │ │ │ │ └── svg-with-js.css
│ │ │ │ │ ├── js/
│ │ │ │ │ │ ├── all.js
│ │ │ │ │ │ ├── brands.js
│ │ │ │ │ │ ├── duotone.js
│ │ │ │ │ │ ├── fontawesome.js
│ │ │ │ │ │ ├── regular.js
│ │ │ │ │ │ └── solid.js
│ │ │ │ │ ├── less/
│ │ │ │ │ │ ├── _animated.less
│ │ │ │ │ │ ├── _bordered-pulled.less
│ │ │ │ │ │ ├── _core.less
│ │ │ │ │ │ ├── _fixed-width.less
│ │ │ │ │ │ ├── _icons.less
│ │ │ │ │ │ ├── _larger.less
│ │ │ │ │ │ ├── _list.less
│ │ │ │ │ │ ├── _mixins.less
│ │ │ │ │ │ ├── _rotated-flipped.less
│ │ │ │ │ │ ├── _screen-reader.less
│ │ │ │ │ │ ├── _stacked.less
│ │ │ │ │ │ ├── _variables.less
│ │ │ │ │ │ ├── brands.less
│ │ │ │ │ │ ├── duotone.less
│ │ │ │ │ │ ├── fontawesome.less
│ │ │ │ │ │ ├── regular.less
│ │ │ │ │ │ └── solid.less
│ │ │ │ │ ├── metadata/
│ │ │ │ │ │ ├── categories.yml
│ │ │ │ │ │ ├── icons.yml
│ │ │ │ │ │ └── sponsors.yml
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── scss/
│ │ │ │ │ ├── _animated.scss
│ │ │ │ │ ├── _bordered-pulled.scss
│ │ │ │ │ ├── _core.scss
│ │ │ │ │ ├── _fixed-width.scss
│ │ │ │ │ ├── _icons.scss
│ │ │ │ │ ├── _larger.scss
│ │ │ │ │ ├── _list.scss
│ │ │ │ │ ├── _mixins.scss
│ │ │ │ │ ├── _rotated-flipped.scss
│ │ │ │ │ ├── _screen-reader.scss
│ │ │ │ │ ├── _stacked.scss
│ │ │ │ │ ├── _variables.scss
│ │ │ │ │ ├── brands.scss
│ │ │ │ │ ├── duotone.scss
│ │ │ │ │ ├── fontawesome.scss
│ │ │ │ │ ├── regular.scss
│ │ │ │ │ └── solid.scss
│ │ │ │ ├── fontawesome-svg-core/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── index.es.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── styles.css
│ │ │ │ ├── pro-brands-svg-icons/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── faAws.d.ts
│ │ │ │ │ ├── faAws.js
│ │ │ │ │ ├── faCcAmazonPay.d.ts
│ │ │ │ │ ├── faCcAmazonPay.js
│ │ │ │ │ ├── faCcAmex.d.ts
│ │ │ │ │ ├── faCcAmex.js
│ │ │ │ │ ├── faCcApplePay.d.ts
│ │ │ │ │ ├── faCcApplePay.js
│ │ │ │ │ ├── faCcDinersClub.d.ts
│ │ │ │ │ ├── faCcDinersClub.js
│ │ │ │ │ ├── faCcDiscover.d.ts
│ │ │ │ │ ├── faCcDiscover.js
│ │ │ │ │ ├── faCcJcb.d.ts
│ │ │ │ │ ├── faCcJcb.js
│ │ │ │ │ ├── faCcMastercard.d.ts
│ │ │ │ │ ├── faCcMastercard.js
│ │ │ │ │ ├── faCcPaypal.d.ts
│ │ │ │ │ ├── faCcPaypal.js
│ │ │ │ │ ├── faCcStripe.d.ts
│ │ │ │ │ ├── faCcStripe.js
│ │ │ │ │ ├── faCcVisa.d.ts
│ │ │ │ │ ├── faCcVisa.js
│ │ │ │ │ ├── faDiscourse.d.ts
│ │ │ │ │ ├── faDiscourse.js
│ │ │ │ │ ├── faDocker.d.ts
│ │ │ │ │ ├── faDocker.js
│ │ │ │ │ ├── faGithub.d.ts
│ │ │ │ │ ├── faGithub.js
│ │ │ │ │ ├── faInstagram.d.ts
│ │ │ │ │ ├── faInstagram.js
│ │ │ │ │ ├── faMicrosoft.d.ts
│ │ │ │ │ ├── faMicrosoft.js
│ │ │ │ │ ├── faRev.d.ts
│ │ │ │ │ ├── faRev.js
│ │ │ │ │ ├── faSlack.d.ts
│ │ │ │ │ ├── faSlack.js
│ │ │ │ │ ├── faTwitter.d.ts
│ │ │ │ │ ├── faTwitter.js
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── index.es.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── package.json
│ │ │ │ ├── pro-duotone-svg-icons/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── faAbacus.d.ts
│ │ │ │ │ ├── faAbacus.js
│ │ │ │ │ ├── faAlignSlash.d.ts
│ │ │ │ │ ├── faAlignSlash.js
│ │ │ │ │ ├── faAtomAlt.d.ts
│ │ │ │ │ ├── faAtomAlt.js
│ │ │ │ │ ├── faBadgeCheck.d.ts
│ │ │ │ │ ├── faBadgeCheck.js
│ │ │ │ │ ├── faBell.d.ts
│ │ │ │ │ ├── faBell.js
│ │ │ │ │ ├── faBooks.d.ts
│ │ │ │ │ ├── faBooks.js
│ │ │ │ │ ├── faBracketsCurly.d.ts
│ │ │ │ │ ├── faBracketsCurly.js
│ │ │ │ │ ├── faChartNetwork.d.ts
│ │ │ │ │ ├── faChartNetwork.js
│ │ │ │ │ ├── faChartScatter.d.ts
│ │ │ │ │ ├── faChartScatter.js
│ │ │ │ │ ├── faCheck.d.ts
│ │ │ │ │ ├── faCheck.js
│ │ │ │ │ ├── faCircle.d.ts
│ │ │ │ │ ├── faCircle.js
│ │ │ │ │ ├── faClouds.d.ts
│ │ │ │ │ ├── faClouds.js
│ │ │ │ │ ├── faCogs.d.ts
│ │ │ │ │ ├── faCogs.js
│ │ │ │ │ ├── faCommentDots.d.ts
│ │ │ │ │ ├── faCommentDots.js
│ │ │ │ │ ├── faConciergeBell.d.ts
│ │ │ │ │ ├── faConciergeBell.js
│ │ │ │ │ ├── faDotCircle.d.ts
│ │ │ │ │ ├── faDotCircle.js
│ │ │ │ │ ├── faEnvelope.d.ts
│ │ │ │ │ ├── faEnvelope.js
│ │ │ │ │ ├── faExchangeAlt.d.ts
│ │ │ │ │ ├── faExchangeAlt.js
│ │ │ │ │ ├── faFileAlt.d.ts
│ │ │ │ │ ├── faFileAlt.js
│ │ │ │ │ ├── faFileCode.d.ts
│ │ │ │ │ ├── faFileCode.js
│ │ │ │ │ ├── faGlobe.d.ts
│ │ │ │ │ ├── faGlobe.js
│ │ │ │ │ ├── faGlobeAfrica.d.ts
│ │ │ │ │ ├── faGlobeAfrica.js
│ │ │ │ │ ├── faGlobeAmericas.d.ts
│ │ │ │ │ ├── faGlobeAmericas.js
│ │ │ │ │ ├── faGlobeAsia.d.ts
│ │ │ │ │ ├── faGlobeAsia.js
│ │ │ │ │ ├── faGlobeEurope.d.ts
│ │ │ │ │ ├── faGlobeEurope.js
│ │ │ │ │ ├── faGraduationCap.d.ts
│ │ │ │ │ ├── faGraduationCap.js
│ │ │ │ │ ├── faHistory.d.ts
│ │ │ │ │ ├── faHistory.js
│ │ │ │ │ ├── faKey.d.ts
│ │ │ │ │ ├── faKey.js
│ │ │ │ │ ├── faKeySkeleton.d.ts
│ │ │ │ │ ├── faKeySkeleton.js
│ │ │ │ │ ├── faLaptop.d.ts
│ │ │ │ │ ├── faLaptop.js
│ │ │ │ │ ├── faLaptopCode.d.ts
│ │ │ │ │ ├── faLaptopCode.js
│ │ │ │ │ ├── faLaptopHouse.d.ts
│ │ │ │ │ ├── faLaptopHouse.js
│ │ │ │ │ ├── faLifeRing.d.ts
│ │ │ │ │ ├── faLifeRing.js
│ │ │ │ │ ├── faLightbulb.d.ts
│ │ │ │ │ ├── faLightbulb.js
│ │ │ │ │ ├── faListAlt.d.ts
│ │ │ │ │ ├── faListAlt.js
│ │ │ │ │ ├── faListUl.d.ts
│ │ │ │ │ ├── faListUl.js
│ │ │ │ │ ├── faLockAlt.d.ts
│ │ │ │ │ ├── faLockAlt.js
│ │ │ │ │ ├── faMapMarkerAlt.d.ts
│ │ │ │ │ ├── faMapMarkerAlt.js
│ │ │ │ │ ├── faMoonStars.d.ts
│ │ │ │ │ ├── faMoonStars.js
│ │ │ │ │ ├── faNetworkWired.d.ts
│ │ │ │ │ ├── faNetworkWired.js
│ │ │ │ │ ├── faPlanetRinged.d.ts
│ │ │ │ │ ├── faPlanetRinged.js
│ │ │ │ │ ├── faQuestionCircle.d.ts
│ │ │ │ │ ├── faQuestionCircle.js
│ │ │ │ │ ├── faQuoteLeft.d.ts
│ │ │ │ │ ├── faQuoteLeft.js
│ │ │ │ │ ├── faRandom.d.ts
│ │ │ │ │ ├── faRandom.js
│ │ │ │ │ ├── faRocket.d.ts
│ │ │ │ │ ├── faRocket.js
│ │ │ │ │ ├── faSearch.d.ts
│ │ │ │ │ ├── faSearch.js
│ │ │ │ │ ├── faServer.d.ts
│ │ │ │ │ ├── faServer.js
│ │ │ │ │ ├── faSignOut.d.ts
│ │ │ │ │ ├── faSignOut.js
│ │ │ │ │ ├── faSirenOn.d.ts
│ │ │ │ │ ├── faSirenOn.js
│ │ │ │ │ ├── faSmile.d.ts
│ │ │ │ │ ├── faSmile.js
│ │ │ │ │ ├── faSnowman.d.ts
│ │ │ │ │ ├── faSnowman.js
│ │ │ │ │ ├── faSun.d.ts
│ │ │ │ │ ├── faSun.js
│ │ │ │ │ ├── faTasks.d.ts
│ │ │ │ │ ├── faTasks.js
│ │ │ │ │ ├── faUniversity.d.ts
│ │ │ │ │ ├── faUniversity.js
│ │ │ │ │ ├── faUser.d.ts
│ │ │ │ │ ├── faUser.js
│ │ │ │ │ ├── faUserHardHat.d.ts
│ │ │ │ │ ├── faUserHardHat.js
│ │ │ │ │ ├── faUserShield.d.ts
│ │ │ │ │ ├── faUserShield.js
│ │ │ │ │ ├── faUsers.d.ts
│ │ │ │ │ ├── faUsers.js
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── index.es.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── package.json
│ │ │ │ ├── pro-regular-svg-icons/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── attribution.js
│ │ │ │ │ ├── faCheckCircle.d.ts
│ │ │ │ │ ├── faCheckCircle.js
│ │ │ │ │ ├── faDesktop.d.ts
│ │ │ │ │ ├── faDesktop.js
│ │ │ │ │ ├── faEye.d.ts
│ │ │ │ │ ├── faEye.js
│ │ │ │ │ ├── faFileCode.d.ts
│ │ │ │ │ ├── faFileCode.js
│ │ │ │ │ ├── faInfo.d.ts
│ │ │ │ │ ├── faInfo.js
│ │ │ │ │ ├── faInfoCircle.d.ts
│ │ │ │ │ ├── faInfoCircle.js
│ │ │ │ │ ├── faPlus.d.ts
│ │ │ │ │ ├── faPlus.js
│ │ │ │ │ ├── faQuestionCircle.d.ts
│ │ │ │ │ ├── faQuestionCircle.js
│ │ │ │ │ ├── faRocket.d.ts
│ │ │ │ │ ├── faRocket.js
│ │ │ │ │ ├── faSave.d.ts
│ │ │ │ │ ├── faSave.js
│ │ │ │ │ ├── faSlash.d.ts
│ │ │ │ │ ├── faSlash.js
│ │ │ │ │ ├── faTimes.d.ts
│ │ │ │ │ ├── faTimes.js
│ │ │ │ │ ├── faUndo.d.ts
│ │ │ │ │ ├── faUndo.js
│ │ │ │ │ ├── faUndoAlt.d.ts
│ │ │ │ │ ├── faUndoAlt.js
│ │ │ │ │ ├── faUser.d.ts
│ │ │ │ │ ├── faUser.js
│ │ │ │ │ ├── faUserFriends.d.ts
│ │ │ │ │ ├── faUserFriends.js
│ │ │ │ │ ├── faUsers.d.ts
│ │ │ │ │ ├── faUsers.js
│ │ │ │ │ ├── index.d.ts
│ │ │ │ │ ├── index.es.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── package.json
│ │ │ │ └── pro-solid-svg-icons/
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ ├── attribution.js
│ │ │ │ ├── faAlarmExclamation.d.ts
│ │ │ │ ├── faAlarmExclamation.js
│ │ │ │ ├── faAlignLeft.d.ts
│ │ │ │ ├── faAlignLeft.js
│ │ │ │ ├── faBookDead.d.ts
│ │ │ │ ├── faBookDead.js
│ │ │ │ ├── faCheck.d.ts
│ │ │ │ ├── faCheck.js
│ │ │ │ ├── faCircle.d.ts
│ │ │ │ ├── faCircle.js
│ │ │ │ ├── faCloud.d.ts
│ │ │ │ ├── faCloud.js
│ │ │ │ ├── faCreditCard.d.ts
│ │ │ │ ├── faCreditCard.js
│ │ │ │ ├── faDesktop.d.ts
│ │ │ │ ├── faDesktop.js
│ │ │ │ ├── faEnvelope.d.ts
│ │ │ │ ├── faEnvelope.js
│ │ │ │ ├── faEye.d.ts
│ │ │ │ ├── faEye.js
│ │ │ │ ├── faFingerprint.d.ts
│ │ │ │ ├── faFingerprint.js
│ │ │ │ ├── faHistory.d.ts
│ │ │ │ ├── faHistory.js
│ │ │ │ ├── faHome.d.ts
│ │ │ │ ├── faHome.js
│ │ │ │ ├── faPlus.d.ts
│ │ │ │ ├── faPlus.js
│ │ │ │ ├── faRobot.d.ts
│ │ │ │ ├── faRobot.js
│ │ │ │ ├── faRocket.d.ts
│ │ │ │ ├── faRocket.js
│ │ │ │ ├── faSave.d.ts
│ │ │ │ ├── faSave.js
│ │ │ │ ├── faSlash.d.ts
│ │ │ │ ├── faSlash.js
│ │ │ │ ├── faSpinnerThird.d.ts
│ │ │ │ ├── faSpinnerThird.js
│ │ │ │ ├── faSquareFull.d.ts
│ │ │ │ ├── faSquareFull.js
│ │ │ │ ├── faTimes.d.ts
│ │ │ │ ├── faTimes.js
│ │ │ │ ├── faTimesCircle.d.ts
│ │ │ │ ├── faTimesCircle.js
│ │ │ │ ├── faUndo.d.ts
│ │ │ │ ├── faUndo.js
│ │ │ │ ├── faUndoAlt.d.ts
│ │ │ │ ├── faUndoAlt.js
│ │ │ │ ├── faUser.d.ts
│ │ │ │ ├── faUser.js
│ │ │ │ ├── faUsers.d.ts
│ │ │ │ ├── faUsers.js
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.es.js
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ │ ├── less/
│ │ │ │ ├── _animated.less
│ │ │ │ ├── _bordered-pulled.less
│ │ │ │ ├── _core.less
│ │ │ │ ├── _fixed-width.less
│ │ │ │ ├── _icons.less
│ │ │ │ ├── _larger.less
│ │ │ │ ├── _list.less
│ │ │ │ ├── _mixins.less
│ │ │ │ ├── _rotated-flipped.less
│ │ │ │ ├── _screen-reader.less
│ │ │ │ ├── _stacked.less
│ │ │ │ ├── _variables.less
│ │ │ │ ├── brands.less
│ │ │ │ ├── duotone.less
│ │ │ │ ├── fontawesome.less
│ │ │ │ ├── regular.less
│ │ │ │ └── solid.less
│ │ │ ├── metadata/
│ │ │ │ ├── categories.yml
│ │ │ │ ├── icons.json
│ │ │ │ ├── icons.yml
│ │ │ │ └── sponsors.yml
│ │ │ ├── otfs/
│ │ │ │ ├── Font Awesome 5 Brands-Regular-400.otf
│ │ │ │ ├── Font Awesome 5 Duotone-Solid-900.otf
│ │ │ │ ├── Font Awesome 5 Pro-Regular-400.otf
│ │ │ │ ├── Font Awesome 5 Pro-Solid-900.otf
│ │ │ │ └── README.md
│ │ │ └── scss/
│ │ │ ├── _animated.scss
│ │ │ ├── _bordered-pulled.scss
│ │ │ ├── _core.scss
│ │ │ ├── _fixed-width.scss
│ │ │ ├── _icons.scss
│ │ │ ├── _larger.scss
│ │ │ ├── _list.scss
│ │ │ ├── _mixins.scss
│ │ │ ├── _rotated-flipped.scss
│ │ │ ├── _screen-reader.scss
│ │ │ ├── _stacked.scss
│ │ │ ├── _variables.scss
│ │ │ ├── brands.scss
│ │ │ ├── duotone.scss
│ │ │ ├── fontawesome.scss
│ │ │ ├── regular.scss
│ │ │ └── solid.scss
│ │ └── fonts.css
│ ├── index.html
│ ├── settings.json
│ └── site.webmanifest
├── requirements.txt
├── runtime.txt
├── src/
│ ├── App.vue
│ ├── __mocks__/
│ │ └── apollo.js
│ ├── apollo.js
│ ├── app.js
│ ├── assets/
│ │ ├── demo-flow/
│ │ │ └── demo-flow.json
│ │ └── fonts/
│ │ └── prefect-icons/
│ │ ├── style.scss
│ │ └── variables.scss
│ ├── auth/
│ │ ├── authentication.js
│ │ ├── authorization.js
│ │ └── index.js
│ ├── components/
│ │ ├── AcceptConfirmInputRow.vue
│ │ ├── Alert.vue
│ │ ├── Artifacts/
│ │ │ ├── Artifact-NodeTree.vue
│ │ │ ├── Artifact.vue
│ │ │ └── Artifacts.vue
│ │ ├── BreadCrumbs.vue
│ │ ├── CancelButton.vue
│ │ ├── Card-Title.vue
│ │ ├── ChartCard/
│ │ │ ├── ChartCard.vue
│ │ │ ├── ChartCardHeader-Ring.vue
│ │ │ └── ChartCardHeader-Simple.vue
│ │ ├── CloudHookForm.vue
│ │ ├── ConcurrencyInfo.vue
│ │ ├── ConfirmDialog.vue
│ │ ├── CustomInputs/
│ │ │ ├── BaseCodeTextarea.vue
│ │ │ ├── BaseDictInput.vue
│ │ │ ├── CheckboxDictInput.vue
│ │ │ ├── CodeInput.vue
│ │ │ ├── DictInput.vue
│ │ │ ├── DictInput2.vue
│ │ │ ├── Highlight.vue
│ │ │ ├── JsonInput.vue
│ │ │ ├── JsonInput2.vue
│ │ │ ├── KeyValueInput.vue
│ │ │ ├── KeyValueTypeInputs/
│ │ │ │ ├── ArrayInput.vue
│ │ │ │ ├── BooleanInput.vue
│ │ │ │ ├── DateInput.vue
│ │ │ │ ├── JsonParsingInput.vue
│ │ │ │ ├── NullInput.vue
│ │ │ │ ├── NumberInput.vue
│ │ │ │ ├── ObjectInput.vue
│ │ │ │ ├── StringInput.vue
│ │ │ │ └── index.js
│ │ │ ├── ListInput.vue
│ │ │ ├── MultiLineInput.vue
│ │ │ ├── ResettableWrapper.vue
│ │ │ ├── YamlInput.vue
│ │ │ ├── YamlInput2.vue
│ │ │ └── readonlyProps.js
│ │ ├── DateTime.vue
│ │ ├── DeleteFlowButton.vue
│ │ ├── DurationSpan.vue
│ │ ├── EditableTextField.vue
│ │ ├── EmphasizedIcon.vue
│ │ ├── EndOfLifeBanner.vue
│ │ ├── ExternalLink.vue
│ │ ├── Feedback.vue
│ │ ├── Footer.vue
│ │ ├── FullPagination.vue
│ │ ├── Functional/
│ │ │ ├── CronClock.vue
│ │ │ ├── IntervalClock.vue
│ │ │ ├── Transition-Height.js
│ │ │ └── TruncatedSpan.vue
│ │ ├── GetCloud.vue
│ │ ├── GlobalSearchBar/
│ │ │ ├── GlobalSearch.vue
│ │ │ ├── GlobalSearchIcon.vue
│ │ │ ├── GlobalSearchResult.vue
│ │ │ └── MResult.vue
│ │ ├── HavingTrouble.vue
│ │ ├── HeartbeatTimeline.vue
│ │ ├── Icons/
│ │ │ ├── Hashicorp.vue
│ │ │ ├── Nomad.vue
│ │ │ ├── PagerDuty.vue
│ │ │ ├── Prefect.vue
│ │ │ ├── mr.vue
│ │ │ ├── newPagerDuty.vue
│ │ │ └── twilio.vue
│ │ ├── KeyValueTable.vue
│ │ ├── Label.vue
│ │ ├── LabelEdit.vue
│ │ ├── LabelWarning.vue
│ │ ├── LastTenRuns.vue
│ │ ├── License/
│ │ │ ├── ChangePlanDialog.vue
│ │ │ └── UpgradeAlert.vue
│ │ ├── LogsCard/
│ │ │ ├── DownloadMenu.vue
│ │ │ ├── FilterMenu.vue
│ │ │ ├── LogRow.vue
│ │ │ └── LogsCard.vue
│ │ ├── MenuTooltip.vue
│ │ ├── Nav/
│ │ │ ├── ApplicationNav.vue
│ │ │ ├── ChatLauncher.vue
│ │ │ ├── ConnectionMenu.vue
│ │ │ ├── CurrentTime.vue
│ │ │ ├── HelpMenu.vue
│ │ │ ├── Links.vue
│ │ │ ├── MenuLink.vue
│ │ │ ├── NotificationMenu.vue
│ │ │ ├── TeamMenu.vue
│ │ │ ├── TeamSideNav.vue
│ │ │ ├── TeamSideNavButton.vue
│ │ │ ├── TeamSwitcher.vue
│ │ │ └── UserMenu.vue
│ │ ├── NavTabBar.vue
│ │ ├── Parameters.vue
│ │ ├── ParametersForm.vue
│ │ ├── PaymentCard.vue
│ │ ├── PlanCard.vue
│ │ ├── Plans/
│ │ │ ├── CardDetails.vue
│ │ │ ├── Enterprise.vue
│ │ │ ├── PlanSelectionForm.vue
│ │ │ ├── Standard.vue
│ │ │ └── Starter.vue
│ │ ├── PrefectSchedule.vue
│ │ ├── ResumeButton.vue
│ │ ├── RunConfig/
│ │ │ ├── ArgumentHeading.vue
│ │ │ ├── ArgumentInput.vue
│ │ │ ├── ArgumentReference.vue
│ │ │ ├── DateTimeSelector.vue
│ │ │ ├── DockerRunForm.vue
│ │ │ ├── EcsRunForm.vue
│ │ │ ├── KubernetesRunForm.vue
│ │ │ ├── LocalRunForm.vue
│ │ │ ├── RunConfig.vue
│ │ │ ├── RunConfigTypeButton.vue
│ │ │ ├── RunConfigTypeSelect.vue
│ │ │ ├── UniversalRunForm.vue
│ │ │ ├── adjectives.js
│ │ │ └── animals.js
│ │ ├── RunStateTooltip.vue
│ │ ├── ScheduleToggle.vue
│ │ ├── Schematics/
│ │ │ ├── Legend.vue
│ │ │ ├── Preview-Dynamic.vue
│ │ │ ├── Preview-SearchResult.vue
│ │ │ ├── Preview-Static.vue
│ │ │ ├── Preview-Tile.vue
│ │ │ ├── Schematic-Flow.vue
│ │ │ ├── Schematic-Node.vue
│ │ │ └── Tooltip.vue
│ │ ├── SetStateDialog.vue
│ │ ├── Snackbars/
│ │ │ └── Snackbars.vue
│ │ ├── SupportBanner.vue
│ │ ├── SystemActions/
│ │ │ ├── CancelAll.vue
│ │ │ ├── ClearLate.vue
│ │ │ └── WorkQueue.vue
│ │ ├── TaskRunMenu.vue
│ │ ├── TaskRunTooltip.vue
│ │ ├── TeamListItem.vue
│ │ ├── TimelineTooltip.vue
│ │ ├── Tree/
│ │ │ └── Tree.vue
│ │ ├── TutorialBanner.vue
│ │ ├── UpgradeBadge.vue
│ │ ├── Visualizations/
│ │ │ ├── BarChart.vue
│ │ │ ├── RingChart.vue
│ │ │ ├── StackedLineChart.vue
│ │ │ ├── Timeline/
│ │ │ │ └── Bar.js
│ │ │ └── Timeline.vue
│ │ └── WorkQueueBanner.vue
│ ├── directives/
│ │ └── disable-read-only.js
│ ├── filters/
│ │ ├── duration.js
│ │ ├── filterOnePercent.js
│ │ ├── round.js
│ │ └── shorten.js
│ ├── graphql/
│ │ ├── Account/
│ │ │ ├── invitations.gql
│ │ │ └── license-users.gql
│ │ ├── Agent/
│ │ │ ├── FlowRuns.gql
│ │ │ ├── agent-hooks.gql
│ │ │ ├── agents.js
│ │ │ ├── delete-agent.gql
│ │ │ ├── in-progress-flow-runs.gql
│ │ │ ├── recent-runs.gql
│ │ │ ├── table-flow-runs-count.gql
│ │ │ ├── table-flow-runs.gql
│ │ │ └── timeline-flow-runs.gql
│ │ ├── Artifacts/
│ │ │ ├── task-run-artifacts-aggregate.gql
│ │ │ ├── task-run-artifacts.gql
│ │ │ └── task-run-ids.gql
│ │ ├── Automations/
│ │ │ ├── actions.gql
│ │ │ ├── agent-config-by-pk.gql
│ │ │ ├── agent-config.gql
│ │ │ ├── delete-agent-config.gql
│ │ │ ├── flow-config-by-pk.gql
│ │ │ ├── flow-only-hooks.gql
│ │ │ ├── flows.gql
│ │ │ └── hooks.gql
│ │ ├── Calendar/
│ │ │ ├── calendar-day-flow-runs.gql
│ │ │ ├── calendar-day-ongoing-flow-runs.gql
│ │ │ ├── calendar-day-running-flow-runs.gql
│ │ │ ├── calendar-day-scheduled-flow-runs.gql
│ │ │ ├── calendar-flow-groups.gql
│ │ │ ├── calendar-flow-runs.gql
│ │ │ ├── calendar-flows.gql
│ │ │ ├── calendar-ongoing-flow-runs.gql
│ │ │ ├── calendar-running-flow-runs.gql
│ │ │ └── calendar-scheduled-flow-runs.gql
│ │ ├── Dashboard/
│ │ │ ├── committed-usage.gql
│ │ │ ├── failures-count.gql
│ │ │ ├── failures-drawer.gql
│ │ │ ├── flow-count.gql
│ │ │ ├── flow-failures.gql
│ │ │ ├── flow-run-drawer.gql
│ │ │ ├── flow-runs-count.gql
│ │ │ ├── flow-runs.gql
│ │ │ ├── flows.js
│ │ │ ├── heartbeat.gql
│ │ │ ├── in-progress-flow-runs.gql
│ │ │ ├── invoice.gql
│ │ │ ├── last-flow-runs.gql
│ │ │ ├── project-name.gql
│ │ │ ├── project.gql
│ │ │ ├── projects.gql
│ │ │ ├── task-failures.gql
│ │ │ ├── timeline-flow-runs.gql
│ │ │ ├── timeline-flow.gql
│ │ │ ├── timeline-scheduled-flow-runs.gql
│ │ │ ├── upcoming-flow-runs-count.gql
│ │ │ ├── upcoming-flow-runs.gql
│ │ │ └── usage.gql
│ │ ├── FirstRunWorkflow/
│ │ │ ├── flow-run.gql
│ │ │ └── project-names.gql
│ │ ├── Flow/
│ │ │ ├── cloud-hooks.gql
│ │ │ ├── errors.gql
│ │ │ ├── flow-by-pk.gql
│ │ │ ├── flow-drawer.gql
│ │ │ ├── flow-run-by-pk.gql
│ │ │ ├── flow-runs.gql
│ │ │ ├── flow-versions-count.gql
│ │ │ ├── flow-versions-runs.gql
│ │ │ ├── flow-versions.js
│ │ │ ├── flow.js
│ │ │ ├── heartbeat.gql
│ │ │ ├── last-flow-run.gql
│ │ │ ├── past-flow-runs.gql
│ │ │ ├── project-names.gql
│ │ │ ├── table-flow-runs-count.gql
│ │ │ ├── table-flow-runs.gql
│ │ │ ├── table-tasks-count.gql
│ │ │ ├── table-tasks.gql
│ │ │ ├── timeline-flow-runs.gql
│ │ │ ├── upcoming-flow-runs.gql
│ │ │ └── version-group.gql
│ │ ├── FlowLabelLimit/
│ │ │ ├── delete-flow-concurrency-limit.gql
│ │ │ ├── flow-label-limit.gql
│ │ │ └── update-flow-concurrency-limit.gql
│ │ ├── FlowLabelUsage/
│ │ │ └── flow-label-usage.gql
│ │ ├── FlowRun/
│ │ │ ├── cancel-flow-run.gql
│ │ │ ├── failed-task-runs.gql
│ │ │ ├── flow-run.js
│ │ │ ├── gantt-task-runs.gql
│ │ │ ├── heartbeat.gql
│ │ │ ├── states-aggregate.gql
│ │ │ ├── states.gql
│ │ │ ├── table-task-runs-count.gql
│ │ │ ├── table-task-runs.gql
│ │ │ ├── task-run-drawer.gql
│ │ │ ├── task-run-ids.gql
│ │ │ ├── task-runs-aggregate.gql
│ │ │ ├── task-runs.gql
│ │ │ ├── timeline-chart-task-runs.gql
│ │ │ └── timeline-chart-tasks.gql
│ │ ├── FlowRunLogs/
│ │ │ └── flow-run-metadata.gql
│ │ ├── GlobalSearch/
│ │ │ ├── search-by-id.gql
│ │ │ └── search-by-name.gql
│ │ ├── Integrations/
│ │ │ └── PagerDutyActions.gql
│ │ ├── KV/
│ │ │ ├── delete-key-value.gql
│ │ │ ├── get-key-value.gql
│ │ │ └── set-key-value.gql
│ │ ├── License/
│ │ │ ├── create-self-serve-license.gql
│ │ │ ├── create-usage-based-license.gql
│ │ │ ├── license.gql
│ │ │ ├── update-customer.gql
│ │ │ ├── update-self-serve-cloud-license.gql
│ │ │ └── update-stripe-customer.gql
│ │ ├── Logs/
│ │ │ ├── flow-run-logs-scoping.gql
│ │ │ ├── flow-run-logs.gql
│ │ │ ├── retrieve-archived-logs.gql
│ │ │ ├── task-run-logs-scoping.gql
│ │ │ └── task-run-logs.gql
│ │ ├── MappedTasks/
│ │ │ └── mapped-children.gql
│ │ ├── Middleware/
│ │ │ ├── flow-group.gql
│ │ │ └── flow.gql
│ │ ├── Mutations/
│ │ │ ├── add-config-to-flow.gql
│ │ │ ├── cancel-flow-run.gql
│ │ │ ├── create-action.gql
│ │ │ ├── create-agent-config.gql
│ │ │ ├── create-agent-sla-failed-hook.gql
│ │ │ ├── create-cloud-hook.gql
│ │ │ ├── create-custom-role.gql
│ │ │ ├── create-flow-run-state-changed-hook.gql
│ │ │ ├── create-flow-run.gql
│ │ │ ├── create-flow-sla-failed-hook.gql
│ │ │ ├── create-flow-sla.gql
│ │ │ ├── create-project.gql
│ │ │ ├── create-runner-token.gql
│ │ │ ├── create-tenant.gql
│ │ │ ├── create-tutorial-flow-run.gql
│ │ │ ├── delete-cloud-hook.gql
│ │ │ ├── delete-flow-group-schedule.gql
│ │ │ ├── delete-flow-run.gql
│ │ │ ├── delete-hook.gql
│ │ │ ├── delete_action.gql
│ │ │ ├── delete_custom-role.gql
│ │ │ ├── deploy-flow.gql
│ │ │ ├── disable-flow-heartbeat.gql
│ │ │ ├── disable-flow-lazarus-process.gql
│ │ │ ├── disable-flow-version-lock.gql
│ │ │ ├── enable-flow-heartbeat.gql
│ │ │ ├── enable-flow-lazarus-process.gql
│ │ │ ├── enable-flow-version-lock.gql
│ │ │ ├── mark-as-read.gql
│ │ │ ├── pause-tenant-work-queue.gql
│ │ │ ├── resume-tenant-work-queue.gql
│ │ │ ├── set-cloud-hook-active.gql
│ │ │ ├── set-cloud-hook-inactive.gql
│ │ │ ├── set-default-params.gql
│ │ │ ├── set-flow-description.gql
│ │ │ ├── set-flow-group-schedule.gql
│ │ │ ├── set-flow-run-labels.gql
│ │ │ ├── set-flow-run-name.gql
│ │ │ ├── set-labels.gql
│ │ │ ├── set-schedule-active.gql
│ │ │ ├── set-schedule-inactive.gql
│ │ │ ├── set-task-run-name.gql
│ │ │ ├── test-cloud-hook.gql
│ │ │ ├── update-custom-role.gql
│ │ │ ├── update-flow-project.gql
│ │ │ └── update-tenant-settings.gql
│ │ ├── Nav/
│ │ │ ├── flow-runs.gql
│ │ │ ├── flow.gql
│ │ │ ├── flows.gql
│ │ │ ├── projects.gql
│ │ │ ├── task.gql
│ │ │ └── tasks.gql
│ │ ├── Notifications/
│ │ │ ├── all-notifications.gql
│ │ │ ├── membership-invitation.gql
│ │ │ ├── notifications-count-unread.gql
│ │ │ ├── notifications-count.gql
│ │ │ ├── notifications.js
│ │ │ └── teams.gql
│ │ ├── Playground/
│ │ │ └── schema.gql
│ │ ├── Project/
│ │ │ ├── flow-ids.gql
│ │ │ ├── flows-aggregate.gql
│ │ │ ├── flows.gql
│ │ │ └── project.gql
│ │ ├── Projects/
│ │ │ ├── projects-aggregate.gql
│ │ │ └── projects.gql
│ │ ├── Schematics/
│ │ │ ├── flow-list.gql
│ │ │ ├── flow-run.gql
│ │ │ ├── flow.gql
│ │ │ ├── task-run.gql
│ │ │ └── task.gql
│ │ ├── Secrets/
│ │ │ ├── delete-secret.gql
│ │ │ └── set-secret.gql
│ │ ├── Task/
│ │ │ ├── activity.gql
│ │ │ ├── heartbeat.gql
│ │ │ ├── last-task-run.gql
│ │ │ ├── table-task-runs-count.gql
│ │ │ ├── table-task-runs.gql
│ │ │ ├── task-drawer.gql
│ │ │ ├── task-runs-count.gql
│ │ │ ├── task-runs-drawer-count.gql
│ │ │ ├── task-runs-drawer.gql
│ │ │ ├── task-runs.gql
│ │ │ └── task.gql
│ │ ├── TaskRun/
│ │ │ ├── activity.gql
│ │ │ ├── dependencies.gql
│ │ │ ├── heartbeat.gql
│ │ │ ├── set-flow-run-states.gql
│ │ │ ├── set-task-run-states.gql
│ │ │ ├── table-mapped-task-runs-count.gql
│ │ │ ├── table-mapped-task-runs.gql
│ │ │ ├── task-run-states-count.gql
│ │ │ ├── task-run-states.gql
│ │ │ ├── task-run.gql
│ │ │ └── utility_downstream_tasks.gql
│ │ ├── TaskTagLimit/
│ │ │ ├── delete-task-concurrency-limit.gql
│ │ │ ├── task-tag-limit.gql
│ │ │ └── update-task-concurrency-limit.gql
│ │ ├── TaskTagUsage/
│ │ │ └── task-tag-usage.gql
│ │ ├── TeamSettings/
│ │ │ ├── actions.gql
│ │ │ ├── cloud-hooks.gql
│ │ │ ├── data-to-clear.js
│ │ │ ├── delete-action.gql
│ │ │ ├── delete-project.gql
│ │ │ ├── flow-version-groups.js
│ │ │ ├── flows.gql
│ │ │ ├── membership-invitation-roles.gql
│ │ │ ├── membership-roles.gql
│ │ │ ├── memberships.gql
│ │ │ ├── modify-project.gql
│ │ │ ├── permissions.gql
│ │ │ ├── project.gql
│ │ │ ├── projects.gql
│ │ │ ├── roles.gql
│ │ │ ├── test-action.gql
│ │ │ └── usage.gql
│ │ ├── Tenant/
│ │ │ ├── accept-membership-invitation.gql
│ │ │ ├── create-enterprise-tenant.gql
│ │ │ ├── create-membership-invitation.gql
│ │ │ ├── delete-enterprise-tenant.gql
│ │ │ ├── delete-membership-invitation.gql
│ │ │ ├── delete-membership.gql
│ │ │ ├── delete-tenant.gql
│ │ │ ├── membership-invitation.gql
│ │ │ ├── membership.gql
│ │ │ ├── pending-invitations-by-email.gql
│ │ │ ├── pending-invitations.gql
│ │ │ ├── set-membership-role.gql
│ │ │ ├── tenant-by-pk.gql
│ │ │ ├── tenant-by-slug.gql
│ │ │ ├── tenant-id-by-membership-id.gql
│ │ │ ├── tenant-secret-names.gql
│ │ │ ├── tenant-token.gql
│ │ │ ├── tenant-users.gql
│ │ │ ├── tenants.js
│ │ │ └── update-tenant.gql
│ │ ├── Tokens/
│ │ │ ├── api-keys.gql
│ │ │ ├── api-tokens.gql
│ │ │ ├── create-api-key.gql
│ │ │ ├── create-api-token.gql
│ │ │ ├── delete-api-key.gql
│ │ │ ├── delete-token.gql
│ │ │ └── user-tokens.gql
│ │ ├── Update/
│ │ │ └── write-run-logs.gql
│ │ ├── User/
│ │ │ ├── create-service-account.gql
│ │ │ ├── delete-service-account.gql
│ │ │ ├── update-user-details.gql
│ │ │ ├── update-user-settings.gql
│ │ │ └── user.gql
│ │ ├── api.gql
│ │ ├── concurrent-runs.gql
│ │ ├── hello.gql
│ │ ├── log-in.gql
│ │ ├── log-out.gql
│ │ ├── refresh-token.gql
│ │ └── support/
│ │ └── send-feedback.gql
│ ├── layouts/
│ │ ├── AgentLayout.vue
│ │ ├── DashboardLargeActivityLayout.vue
│ │ ├── DashboardLargeChartLayout.vue
│ │ ├── DashboardLayout.vue
│ │ ├── FullPageLayout.vue
│ │ ├── ManagementLayout.vue
│ │ ├── NotificationsLayout.vue
│ │ ├── SubPageNav.vue
│ │ ├── TileLayout-Alternate.vue
│ │ ├── TileLayout-Full.vue
│ │ ├── TileLayout.vue
│ │ └── TutorialLayout.vue
│ ├── main.js
│ ├── middleware/
│ │ ├── flowNavGuard.js
│ │ └── prefectAuth.js
│ ├── mixins/
│ │ ├── authMixin.js
│ │ ├── cancelLateRunsMixin.js
│ │ ├── changeStateMixin.js
│ │ ├── cloudHookMixin.js
│ │ ├── eventsMixin.js
│ │ ├── flowRunHistoryMixin.js
│ │ ├── formatTimeMixin.js
│ │ ├── heartbeatMixin.js
│ │ ├── membershipInvitationMixin.js
│ │ ├── parametersMixin.js
│ │ ├── paymentMixin.js
│ │ ├── polling/
│ │ │ ├── pollsAgentsMixin.js
│ │ │ ├── pollsFlowsMixin.js
│ │ │ ├── pollsProjectsMixin.js
│ │ │ └── pollsTenantsMixin.js
│ │ ├── runFlowNow.js
│ │ └── teamProfileMixin.js
│ ├── pages/
│ │ ├── AccessDenied.vue
│ │ ├── Admin/
│ │ │ ├── Account/
│ │ │ │ ├── Account.vue
│ │ │ │ ├── Billing.vue
│ │ │ │ ├── ClearDataDialog.vue
│ │ │ │ ├── License.vue
│ │ │ │ ├── Profile.vue
│ │ │ │ ├── Usage/
│ │ │ │ │ ├── CurrentUsers.vue
│ │ │ │ │ ├── Usage.vue
│ │ │ │ │ ├── UsageCycle.vue
│ │ │ │ │ ├── UsageTimeline.vue
│ │ │ │ │ └── UsageToday.vue
│ │ │ │ └── Users.vue
│ │ │ ├── Admin.vue
│ │ │ └── Teams/
│ │ │ ├── InviteUsers.vue
│ │ │ ├── NewTeam.vue
│ │ │ ├── TeamForm.vue
│ │ │ ├── Teams.vue
│ │ │ └── TeamsOverview.vue
│ │ ├── Agents/
│ │ │ ├── AgentFlowRunHistory.vue
│ │ │ ├── AgentFlowRunTable-Tile.vue
│ │ │ ├── AgentPage.vue
│ │ │ ├── AgentTile.vue
│ │ │ ├── Agents.vue
│ │ │ └── SubmittableRuns.vue
│ │ ├── Auth/
│ │ │ ├── Auth.vue
│ │ │ ├── ForgotPassword.vue
│ │ │ ├── Logout.vue
│ │ │ ├── SignIn.vue
│ │ │ └── SignUp.vue
│ │ ├── Calendar/
│ │ │ ├── Calendar-Day.vue
│ │ │ ├── Calendar-FlowFilter.vue
│ │ │ ├── Calendar-View.vue
│ │ │ ├── FlowName.vue
│ │ │ └── RunMenu.vue
│ │ ├── Dashboard/
│ │ │ ├── Agents-Tile.vue
│ │ │ ├── ApiHealthCheck-Tile.vue
│ │ │ ├── Automations/
│ │ │ │ ├── AddAction.vue
│ │ │ │ ├── AddAutomationCard.vue
│ │ │ │ ├── AutomationCard.vue
│ │ │ │ ├── Automations.vue
│ │ │ │ ├── CreateAgentConfigForm.vue
│ │ │ │ └── DeleteAgentConfig.vue
│ │ │ ├── Dashboard.vue
│ │ │ ├── FailedFlows-Tile.vue
│ │ │ ├── FailedTasks-Tile.vue
│ │ │ ├── FlowRunHeartbeat-Tile.vue
│ │ │ ├── FlowRunHistory-Tile.vue
│ │ │ ├── FlowTable-Tile.vue
│ │ │ ├── InProgress-Tile.vue
│ │ │ ├── NewProject-Dialog.vue
│ │ │ ├── Notifications-Tile.vue
│ │ │ ├── Project-Selector.vue
│ │ │ ├── Summary-Tile.vue
│ │ │ ├── Task-Item.vue
│ │ │ ├── UpcomingRuns-Tile.vue
│ │ │ └── UsageTiles/
│ │ │ ├── CommittedUsage-Tile.vue
│ │ │ ├── CycleUsage-Tile.vue
│ │ │ └── UpgradeUsage-Tile.vue
│ │ ├── Flow/
│ │ │ ├── Actions.vue
│ │ │ ├── Automations-Tile.vue
│ │ │ ├── Describe.vue
│ │ │ ├── Details-Tile.vue
│ │ │ ├── Errors-Tile.vue
│ │ │ ├── Flow.vue
│ │ │ ├── FlowRunHeartbeat-Tile.vue
│ │ │ ├── FlowRunHistory-Tile.vue
│ │ │ ├── FlowRunTable-Tile.vue
│ │ │ ├── Run.vue
│ │ │ ├── Schematic-Tile.vue
│ │ │ ├── Settings/
│ │ │ │ ├── ClockForm.vue
│ │ │ │ ├── ClockForms/
│ │ │ │ │ ├── Cron.vue
│ │ │ │ │ ├── Interval.vue
│ │ │ │ │ └── Simple.vue
│ │ │ │ ├── CloudHooks.vue
│ │ │ │ ├── DefaultParameters.vue
│ │ │ │ ├── General.vue
│ │ │ │ ├── ScheduleParameters.vue
│ │ │ │ └── Schedules.vue
│ │ │ ├── Settings.vue
│ │ │ ├── Summary-Tile.vue
│ │ │ ├── TasksTable-Tile.vue
│ │ │ ├── UpcomingRuns-Tile.vue
│ │ │ └── Versions-Tile.vue
│ │ ├── FlowRun/
│ │ │ ├── Actions.vue
│ │ │ ├── Details-Tile.vue
│ │ │ ├── FlowRun.vue
│ │ │ ├── Restart-Dialog.vue
│ │ │ ├── Schematic-Tile.vue
│ │ │ ├── TaskRunHeartbeat-Tile.vue
│ │ │ ├── TaskRunTable-Tile.vue
│ │ │ └── Timeline-Tile.vue
│ │ ├── GettingStarted/
│ │ │ ├── ConnectAgent-Section.vue
│ │ │ ├── CreateTenant-Section.vue
│ │ │ ├── GettingStarted.vue
│ │ │ └── StartPrefectServer-Section.vue
│ │ ├── Integrations/
│ │ │ └── PagerDuty.vue
│ │ ├── InteractiveAPI/
│ │ │ └── InteractiveAPI.vue
│ │ ├── NotFoundPage.vue
│ │ ├── Notifications/
│ │ │ ├── NotificationGroup.vue
│ │ │ ├── NotificationTypes/
│ │ │ │ ├── Approval-Notification.vue
│ │ │ │ ├── FlowRun-Notification.vue
│ │ │ │ ├── Membership-Notification.vue
│ │ │ │ ├── Message-Notification.vue
│ │ │ │ └── WhatsNew-Notification.vue
│ │ │ ├── Notifications.vue
│ │ │ └── utils.js
│ │ ├── Onboard/
│ │ │ ├── AcceptInvitationPage.vue
│ │ │ ├── NameTeam.vue
│ │ │ ├── Onboard-Page.vue
│ │ │ ├── Resources.vue
│ │ │ └── Welcome.vue
│ │ ├── Plans.vue
│ │ ├── Schematics/
│ │ │ ├── Schematics.vue
│ │ │ └── View.vue
│ │ ├── Support.vue
│ │ ├── Task/
│ │ │ ├── Dependencies-Tile.vue
│ │ │ ├── Details-Tile.vue
│ │ │ ├── Task.vue
│ │ │ ├── TaskRunHeartbeat-Tile.vue
│ │ │ └── TaskRunTable-Tile.vue
│ │ ├── TaskRun/
│ │ │ ├── Actions.vue
│ │ │ ├── Dependencies-Tile.vue
│ │ │ ├── Details-Tile.vue
│ │ │ ├── MappedTaskRuns-Tile.vue
│ │ │ ├── Restart-Dialog.vue
│ │ │ ├── TaskRun.vue
│ │ │ └── TaskRunHeartbeat-Tile.vue
│ │ ├── TeamSettings/
│ │ │ ├── Actions.vue
│ │ │ ├── CloudHooks.vue
│ │ │ ├── CreateRoleTable.vue
│ │ │ ├── FlowConcurrency.vue
│ │ │ ├── FlowGroups.vue
│ │ │ ├── KV.vue
│ │ │ ├── Members/
│ │ │ │ ├── Invitations-Table.vue
│ │ │ │ └── Members-Table.vue
│ │ │ ├── Members.vue
│ │ │ ├── PlanComparison.vue
│ │ │ ├── Projects.vue
│ │ │ ├── Roles.vue
│ │ │ ├── Secrets.vue
│ │ │ ├── Service-Accounts-Table.vue
│ │ │ ├── Service-Accounts.vue
│ │ │ ├── TaskConcurrency.vue
│ │ │ ├── TeamSettings.vue
│ │ │ └── Tokens.vue
│ │ ├── TeamSwitched.vue
│ │ ├── Tutorials/
│ │ │ ├── FlowRun/
│ │ │ │ ├── CreatePersonalAccessTokenStep.vue
│ │ │ │ ├── CreateProjectStep.vue
│ │ │ │ ├── DeployFlowStep.vue
│ │ │ │ ├── FlowRunTutorial.vue
│ │ │ │ ├── RunAFlowStep.vue
│ │ │ │ └── RunLocalAgentStep.vue
│ │ │ ├── Markdown/
│ │ │ │ └── Universal-Deploy.md
│ │ │ └── Tutorials.vue
│ │ └── UserSettings/
│ │ ├── APIKeys.vue
│ │ ├── Profile.vue
│ │ ├── Teams.vue
│ │ ├── Tokens.vue
│ │ └── UserSettings.vue
│ ├── plugins/
│ │ ├── logrocket.js
│ │ ├── okta.js
│ │ └── vuetify.js
│ ├── router.js
│ ├── store/
│ │ ├── agent/
│ │ │ └── index.js
│ │ ├── alert/
│ │ │ └── index.js
│ │ ├── api/
│ │ │ └── index.js
│ │ ├── auth/
│ │ │ └── index.js
│ │ ├── data/
│ │ │ └── index.js
│ │ ├── index.js
│ │ ├── license/
│ │ │ └── index.js
│ │ ├── polling/
│ │ │ └── index.js
│ │ ├── refresh/
│ │ │ └── index.js
│ │ ├── sideNav/
│ │ │ └── index.js
│ │ ├── tenant/
│ │ │ └── index.js
│ │ └── user/
│ │ └── index.js
│ ├── styles/
│ │ ├── atelier-sulphurpool-light.scss
│ │ ├── global.scss
│ │ ├── json-input-style.scss
│ │ ├── md-style.scss
│ │ ├── playground.scss
│ │ ├── slash.scss
│ │ └── yaml-input-style.scss
│ ├── utils/
│ │ ├── Tree.js
│ │ ├── array.js
│ │ ├── automations.js
│ │ ├── cloudHooks.js
│ │ ├── cron.js
│ │ ├── curveMetro.js
│ │ ├── dateTime.js
│ │ ├── error.js
│ │ ├── features.js
│ │ ├── html.js
│ │ ├── json.js
│ │ ├── markdownParser.js
│ │ ├── moment.js
│ │ ├── ordinal.js
│ │ ├── plans.js
│ │ ├── regEx.js
│ │ ├── roles.js
│ │ ├── states.js
│ │ ├── string.js
│ │ ├── types.js
│ │ └── yaml.js
│ ├── vue-apollo.js
│ └── workers/
│ ├── auth.worker.js
│ ├── cache.worker.js
│ ├── schematic.js
│ ├── timeline.js
│ └── util/
│ └── worker-interface.js
├── start_server.sh
├── stylelint.config.js
├── tests/
│ ├── .eslintrc.js
│ ├── __mocks__/
│ │ ├── @auth0/
│ │ │ ├── auth0-js.js
│ │ │ └── auth0-spa-js.js
│ │ └── @okta/
│ │ └── okta-auth-js.js
│ ├── jestSetup.js
│ └── unit/
│ ├── auth/
│ │ ├── authentication-construction.spec.js
│ │ ├── authentication.spec.js
│ │ ├── authorization.spec.js
│ │ └── index.spec.js
│ ├── main.spec.js
│ ├── middleware/
│ │ └── flowNavGuard.spec.js
│ └── store/
│ ├── agent.spec.js
│ ├── alert.spec.js
│ ├── api.spec.js
│ ├── auth.spec.js
│ ├── data.spec.js
│ ├── license.spec.js
│ ├── mockTokens.js
│ ├── refresh.spec.js
│ ├── sidenav.spec.js
│ ├── tenant.spec.js
│ └── user.spec.js
└── vue.config.js
================================================
FILE CONTENTS
================================================
================================================
FILE: .browserslistrc
================================================
> 1%
last 2 versions
not ie <= 10
================================================
FILE: .dockerignore
================================================
**/node_modules
**/dist
================================================
FILE: .eslintignore
================================================
tests/__coverage__
src/graphql
node_modules
src/workers/auth.worker.js
================================================
FILE: .eslintrc.js
================================================
module.exports = {
root: true,
env: {
node: true
},
extends: [
'plugin:vue/essential',
'plugin:vue/recommended',
'@vue/prettier',
'eslint:recommended'
],
plugins: ['vuetify'],
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'prettier/prettier': [
'warn',
{
singleQuote: true,
semi: false,
trailingComma: 'none',
printWidth: 80,
htmlWhitespaceSensitivity: 'strict'
}
],
quotes: ['warn', 'single', { avoidEscape: true }],
semi: ['warn', 'never'],
'vuetify/grid-unknown-attributes': 'error',
'vuetify/no-deprecated-classes': 'error',
'vue/valid-v-slot': 'off'
},
parserOptions: {
parser: 'babel-eslint'
}
}
================================================
FILE: .github/CODEOWNERS
================================================
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# These owners will be the default owners for everything in the repo.
* @znicholasbrown @zhen0
*.gql @cicdw @jlowin
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
# *.js @octocat @github/js
# You can also use email addresses if you prefer.
# docs/* docs@example.com
================================================
FILE: .github/ISSUE_TEMPLATE/bug---.md
================================================
---
name: "Bug \U0001F41B"
about: Report an issue/bug with existing functionality.
title: '1.0 BUG: '
labels: bug
assignees: ''
---
***If your bug is related to Cloud 2.0 or Prefect 2.0, please submit your issue in the [Prefect Repo](https://github.com/PrefectHQ/prefect)***
**Bug Description**
<!--- Please write a clear description of the behavior you're seeing. Include screenshots in the *notes* section, if relevant.
-->
**Steps To Reproduce**
<!---
Concisely describe steps we can take to reproduce this, using a numbered list
-->
1.
**Browsers Tested:**
* [ ] Chrome
* [ ] Firefox
* [ ] Safari
* [ ] Edge
* [ ] IE
----------
**Notes**
<!---
Provide any additional context that might be helpful for the team to pick up the ticket, including screenshots.
-->
================================================
FILE: .github/ISSUE_TEMPLATE/general---.md
================================================
---
name: "General \U0001F680"
about: Create a ticket for a general feature.
title: ''
labels: enhancement
assignees: ''
---
**Why**
<!--
Describe this ticket: why it's important to users, the system, etc. This should be as non-technical as possible.
-->
**What**
<!--
Create an actionable user story-style checklist that the team can use as the concrete steps towards completing this ticket
-->
* [ ]
**Notes**
<!-- Any additional context, resources, carbon copies, etc. -->
================================================
FILE: .github/PULL_REQUEST_TEMPLATE.md
================================================
## Description
<! -- What is it meant to do? -->
## Linked Issues
<! -- Use a key word (e.g. closes or resolves) to close related issues -->
## Tests and performance
- [ ] Changes to any .js files are covered by existing tests or this PR adds new tests (if not please explain why below)
- [ ] No new packages are added or package size and performance considerations are discussed below
- [ ] PR Title fits our [changelog format](https://github.com/PrefectHQ/ui#readme)
## Releases/Changelog cuts only
- [ ] Completed the [QA Checklist](https://www.notion.so/prefect/Cloud-UI-QA-Checklist-038a5a5d40a249d78232917ad1b923b9) in staging
================================================
FILE: .github/codeql-config.yml
================================================
paths-ignore:
- tests/**/test_*.py
================================================
FILE: .github/workflows/codeql-analysis.yml
================================================
# 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: [ dev, master ]
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
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 }}
config-file: ./.github/codeql-config.yml
queries: security-and-quality
# 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
# ℹ️ 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
================================================
FILE: .gitignore
================================================
.DS_Store
node_modules
/dist
tests/__coverage__
.firebase
# Generated from integration tests
tests/e2e/videos
tests/e2e/screenshots
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw*
# python
.mypy_cache
__pycache__/
*.py[cod]
*$py.class
# external font/JS files downloaded during build
src/styles/graphiql.css
public/fonts/*.ttf
public/fonts/*.otf
public/fonts/*.js
================================================
FILE: .nvmrc
================================================
v14.17.3
================================================
FILE: .prettierignore
================================================
================================================
FILE: .prettierrc.js
================================================
const eslintrc = require('./.eslintrc')
module.exports = eslintrc.rules['prettier/prettier'][1]
================================================
FILE: .salesforce_env_development
================================================
VUE_APP_SF_SFCID=00D7h0000009q6r
VUE_APP_SF_TEAM=Chat_Service_Team
VUE_APP_SF_URL1=https://prefect--partial.sandbox.my.salesforce.com
VUE_APP_SF_URL2=https://prefect--partial.sandbox.my.site.com/partners
VUE_APP_SF_BASE_LIVE_AGENT_CONTENT_URL=https://c.la3-c1cs-ia5.salesforceliveagent.com/content
VUE_APP_SF_DEPLOYMENT_ID=5722E0000000dd5
VUE_APP_SF_BUTTON_ID=5732E0000000eF1
VUE_APP_SF_BASE_LIVE_AGENT_URL=https://d.la3-c1cs-ia5.salesforceliveagent.com/chat
VUE_APP_SF_URL3=https://prefect--partial.sandbox.my.salesforce.com/embeddedservice/5.0/esw.min.js
================================================
FILE: .salesforce_env_production
================================================
VUE_APP_SF_SFCID=00D2E000000o3Ut
VUE_APP_SF_TEAM=Chat_Service_Team
VUE_APP_SF_URL1=https://prefect.my.salesforce.com
VUE_APP_SF_URL2=https://prefect.force.com/partners
VUE_APP_SF_BASE_LIVE_AGENT_CONTENT_URL=https://c.la1-c2-ia2.salesforceliveagent.com/content
VUE_APP_SF_DEPLOYMENT_ID=5722E0000000dd5
VUE_APP_SF_BUTTON_ID=5732E0000000eF1
VUE_APP_SF_BASE_LIVE_AGENT_URL=https://d.la1-c2-ia2.salesforceliveagent.com/chat
VUE_APP_SF_URL3=https://prefect.my.salesforce.com/embeddedservice/5.0/esw.min.js
================================================
FILE: .stylelintignore
================================================
src/styles/playground.scss
src/styles/scss
src/styles/graphiql.css
public/fonts.css
src/workers
================================================
FILE: Changelog.md
================================================
# Changelog
#### [2022-12-15](https://github.com/PrefectHQ/ui/compare/2022-10-03...2022-12-15)
- BugFix: Remove skipped state from the change state mixin [`#1352`](https://github.com/PrefectHQ/ui/pull/1352)
- Enhancement: Switch default to user from admin [`#1355`](https://github.com/PrefectHQ/ui/pull/1355)
- Bump decode-uri-component from 0.2.0 to 0.2.2 [`#1351`](https://github.com/PrefectHQ/ui/pull/1351)
- Bump qs from 6.5.2 to 6.5.3 [`#1353`](https://github.com/PrefectHQ/ui/pull/1353)
- Bump express from 4.17.1 to 4.18.2 [`#1354`](https://github.com/PrefectHQ/ui/pull/1354)
- Bump minimatch from 3.0.4 to 3.0.8 [`#1348`](https://github.com/PrefectHQ/ui/pull/1348)
- Enhancement: Add explicit call to log out API route [`#1344`](https://github.com/PrefectHQ/ui/pull/1344)
#### [2022-10-03](https://github.com/PrefectHQ/ui/compare/2022-09-14...2022-10-03)
- Chore: Update Build image to use Circle2.0 image [`#1342`](https://github.com/PrefectHQ/ui/pull/1342)
- Feature: adapts chatbot to match new SFDC changes [`#1338`](https://github.com/PrefectHQ/ui/pull/1338)
- BugFix: Make z into Z [`#1336`](https://github.com/PrefectHQ/ui/pull/1336)
- Chore: Remove font awesome conflict detection [`#1333`](https://github.com/PrefectHQ/ui/pull/1333)
- Changelog for 2022-09-14 release [`#1332`](https://github.com/PrefectHQ/ui/pull/1332)
#### [2022-09-14](https://github.com/PrefectHQ/ui/compare/2022-06-02...2022-09-14)
- Security: Update vue cli related packages [`#1328`](https://github.com/PrefectHQ/ui/pull/1328)
- BugFix: Add version to graphiql css and re-update fully to node-fetch 2.6.7 [`#1327`](https://github.com/PrefectHQ/ui/pull/1327)
- BugFix: Upgrade from Python 3.7 to 3.8 [`#1331`](https://github.com/PrefectHQ/ui/pull/1331)
- Security: Force EJS update [`#1315`](https://github.com/PrefectHQ/ui/pull/1315)
- Bump terser from 4.8.0 to 4.8.1 [`#1308`](https://github.com/PrefectHQ/ui/pull/1308)
- Security: Remove Font Awesome Conflict Detection [`#1314`](https://github.com/PrefectHQ/ui/pull/1314)
- Bump shell-quote from 1.7.2 to 1.7.3 [`#1292`](https://github.com/PrefectHQ/ui/pull/1292)
- Bump parse-url from 6.0.0 to 6.0.2 [`#1294`](https://github.com/PrefectHQ/ui/pull/1294)
- Bump eventsource from 1.1.0 to 1.1.1 [`#1288`](https://github.com/PrefectHQ/ui/pull/1288)
- Bump dset from 3.1.1 to 3.1.2 [`#1284`](https://github.com/PrefectHQ/ui/pull/1284)
- Bump async from 2.6.3 to 2.6.4 [`#1274`](https://github.com/PrefectHQ/ui/pull/1274)
- Bugfix: Service account roles [`#1313`](https://github.com/PrefectHQ/ui/pull/1313)
#### [2022-06-02](https://github.com/PrefectHQ/ui/compare/2022-05-17...2022-06-02)
- Cut changelog ahead of 2022-06-02 release [`#1289`](https://github.com/PrefectHQ/ui/pull/1289)
- Bugfix: Chat launcher icon added nav bar, previous launch button hidden [`#1287`](https://github.com/PrefectHQ/ui/pull/1287)
- Bugfix: replaces env variables and CSP URLs related to Salesforce partial environment [`#1286`](https://github.com/PrefectHQ/ui/pull/1286)
#### [2022-05-17](https://github.com/PrefectHQ/ui/compare/2022-04-21...2022-05-17)
- 2022-05-17 [`#1283`](https://github.com/PrefectHQ/ui/pull/1283)
- Enable sf chat plugin in Cloud production environments [`#1282`](https://github.com/PrefectHQ/ui/pull/1282)
- Bugfix: adds new Salesforce URL to script-src Content Security Policy [`#1281`](https://github.com/PrefectHQ/ui/pull/1281)
#### [2022-04-21](https://github.com/PrefectHQ/ui/compare/2022-02-17...2022-04-21)
- Cut changelog ahead of 2022-04-21 release [`#1270`](https://github.com/PrefectHQ/ui/pull/1270)
- Improve access-denied checks [`#1266`](https://github.com/PrefectHQ/ui/pull/1266)
- Disable salesforce plugin in production environments [`#1267`](https://github.com/PrefectHQ/ui/pull/1267)
- copies salesforce related URLS to script-src policy [`#1259`](https://github.com/PrefectHQ/ui/pull/1259)
- add override [`#1258`](https://github.com/PrefectHQ/ui/pull/1258)
- remove conflict detection [`#1257`](https://github.com/PrefectHQ/ui/pull/1257)
- Audit fix [`#1256`](https://github.com/PrefectHQ/ui/pull/1256)
- Bump minimist from 1.2.5 to 1.2.6 [`#1255`](https://github.com/PrefectHQ/ui/pull/1255)
- Bump trim-newlines from 3.0.0 to 3.0.1 [`#1254`](https://github.com/PrefectHQ/ui/pull/1254)
- Feature: Adds Salesforce Chat Bot [`#1250`](https://github.com/PrefectHQ/ui/pull/1250)
- Bump url-parse from 1.5.7 to 1.5.10 [`#1246`](https://github.com/PrefectHQ/ui/pull/1246)
- Cut changelog ahead of 2022-02-24 release [`#1245`](https://github.com/PrefectHQ/ui/pull/1245)
- Bump url-parse from 1.5.1 to 1.5.7 [`#1240`](https://github.com/PrefectHQ/ui/pull/1240)
- BugFix: Add error handling to the delete-service-account mutation [`#1243`](https://github.com/PrefectHQ/ui/pull/1243)
- Feature: Expose discourse links [`#1244`](https://github.com/PrefectHQ/ui/pull/1244)
- Changelog: Cut changelog ahead of 2022-02-17 release [`#1237`](https://github.com/PrefectHQ/ui/pull/1237)
#### [2022-02-17](https://github.com/PrefectHQ/ui/compare/2022-02-04...2022-02-17)
#### [2022-02-04](https://github.com/PrefectHQ/ui/compare/2022-01-14...2022-02-04)
- Cut changelog ahead of 2022-02-24 release [`#1245`](https://github.com/PrefectHQ/ui/pull/1245)
- Bump url-parse from 1.5.1 to 1.5.7 [`#1240`](https://github.com/PrefectHQ/ui/pull/1240)
- BugFix: Add error handling to the delete-service-account mutation [`#1243`](https://github.com/PrefectHQ/ui/pull/1243)
- Feature: Expose discourse links [`#1244`](https://github.com/PrefectHQ/ui/pull/1244)
- Changelog: Cut changelog ahead of 2022-02-17 release [`#1237`](https://github.com/PrefectHQ/ui/pull/1237)
- BugFix: Update placeholder text on task search [`#1234`](https://github.com/PrefectHQ/ui/pull/1234)
- BugFix: Fix Skip on SetStateDialog [`#1235`](https://github.com/PrefectHQ/ui/pull/1235)
- Feature: Enable deletion of agent configs in automations [`#1153`](https://github.com/PrefectHQ/ui/pull/1153)
- BugFix: Update link to legal page on website [`#1219`](https://github.com/PrefectHQ/ui/pull/1219)
- BugFix: Improve loading logic for automation tab on Flow Page [`#1223`](https://github.com/PrefectHQ/ui/pull/1223)
- Admin: Remove new and beta badges [`#1230`](https://github.com/PrefectHQ/ui/pull/1230)
- BugFix: Remove v-intersect as it was causing odd behavior [`#1224`](https://github.com/PrefectHQ/ui/pull/1224)
- BugFix: Do not call unsubscribe agents if it is not a function [`#1225`](https://github.com/PrefectHQ/ui/pull/1225)
- Bump follow-redirects from 1.14.7 to 1.14.8 [`#1228`](https://github.com/PrefectHQ/ui/pull/1228)
- Bump node-sass from 5.0.0 to 7.0.0 [`#1226`](https://github.com/PrefectHQ/ui/pull/1226)
- BugFix: Flow Concurrency and Task Concurrency browser refresh [`#1220`](https://github.com/PrefectHQ/ui/pull/1220)
- Update: Change the wording on the teams page to redirect users based on their license [`#1210`](https://github.com/PrefectHQ/ui/pull/1210)
- BugFix: Web hook URL validation [`#1212`](https://github.com/PrefectHQ/ui/pull/1212)
- Bump follow-redirects from 1.14.0 to 1.14.7 [`#1211`](https://github.com/PrefectHQ/ui/pull/1211)
- Bump nanoid from 3.1.23 to 3.2.0 [`#1214`](https://github.com/PrefectHQ/ui/pull/1214)
- Bump markdown-it from 12.2.0 to 12.3.2 [`#1203`](https://github.com/PrefectHQ/ui/pull/1203)
- Feature: Allow dates in the past to be used as parameter values when using date picker [`#1213`](https://github.com/PrefectHQ/ui/pull/1213)
- BugFix: Remove "user content" from each heading in the tutorial menu [`#1209`](https://github.com/PrefectHQ/ui/pull/1209)
- BugFix: Schematic node view issues [`#1204`](https://github.com/PrefectHQ/ui/pull/1204)
- Changelog: Cut changelog ahead of 2022-01-14 release [`#1207`](https://github.com/PrefectHQ/ui/pull/1207)
#### [2022-01-14](https://github.com/PrefectHQ/ui/compare/2021-12-22...2022-01-14)
- BugFix: Enable editing in readme [`#1202`](https://github.com/PrefectHQ/ui/pull/1202)
- BugFix: Remove confusing reference to RBAC on plans page [`#1192`](https://github.com/PrefectHQ/ui/pull/1192)
- BugFix: Hide calendar schedule banner on Server [`#1200`](https://github.com/PrefectHQ/ui/pull/1200)
- BugFix: Update Flow/Task Concurrency header values [`#1201`](https://github.com/PrefectHQ/ui/pull/1201)
- Feature: Add create_flow_run system action to automations [`#1152`](https://github.com/PrefectHQ/ui/pull/1152)
- BugFix: Disable add service account and invite buttons until roles are loaded [`#1195`](https://github.com/PrefectHQ/ui/pull/1195)
- BugFix: Remove automations tab from flow page on Server [`#1199`](https://github.com/PrefectHQ/ui/pull/1199)
- Bugfix: Add loading state to the cloud hooks table [`#1197`](https://github.com/PrefectHQ/ui/pull/1197)
- Bugfix: Go to Project button on dashboard [`#1155`](https://github.com/PrefectHQ/ui/pull/1155)
- Admin: Update PR template [`#1157`](https://github.com/PrefectHQ/ui/pull/1157)
- BugFix: Improve error handling on restart button and refetch state after restart [`#1181`](https://github.com/PrefectHQ/ui/pull/1181)
- BugFix: Ensure label warning updates [`#1188`](https://github.com/PrefectHQ/ui/pull/1188)
- Admin: Add input sanitizer as default for log rocket [`#1186`](https://github.com/PrefectHQ/ui/pull/1186)
- BugFix: Add once to intersect on lastTenRuns [`#1187`](https://github.com/PrefectHQ/ui/pull/1187)
- Admin: adopting auto-changelog [`#1171`](https://github.com/PrefectHQ/ui/pull/1171)
#### [2021-12-22](https://github.com/PrefectHQ/ui/compare/2021-12-15...2021-12-22)
- Changelog: Cut changelog ahead of 2021-12-22 release [`#1184`](https://github.com/PrefectHQ/ui/pull/1184)
- Bugfix: Add log rocket prop [`#1183`](https://github.com/PrefectHQ/ui/pull/1183)
- BugFix: removed unused onIntersect methods [`#1166`](https://github.com/PrefectHQ/ui/pull/1166)
- added http-security-headers to apollo graphql network traffic [`#1173`](https://github.com/PrefectHQ/ui/pull/1173)
- BugFix: Replacing link to docs in task run concurrency page [`#1176`](https://github.com/PrefectHQ/ui/pull/1176)
- Cut Changelog ahead of 2021-12-15 release [`#1175`](https://github.com/PrefectHQ/ui/pull/1175)
#### [2021-12-15](https://github.com/PrefectHQ/ui/compare/2021-12-14a...2021-12-15)
- BugFix: added missing icon for help getting-started [`#1164`](https://github.com/PrefectHQ/ui/pull/1164)
- Bugfix: Check tenant is in route params tenant before calling setCurrentTenant [`#1174`](https://github.com/PrefectHQ/ui/pull/1174)
- Bugfix: Send to sales for more users [`#1172`](https://github.com/PrefectHQ/ui/pull/1172)
#### [2021-12-14a](https://github.com/PrefectHQ/ui/compare/2021-12-14...2021-12-14a)
- Changelog: Cut hotifx changelog [`#1165`](https://github.com/PrefectHQ/ui/pull/1165)
- HOTFIX: Remove intersection observers from Members, Invitations-Table, Members-Table components [`#1162`](https://github.com/PrefectHQ/ui/pull/1162)
- HOTFIX: Remove intersection observer on notifications group component [`#1163`](https://github.com/PrefectHQ/ui/pull/1163)
- rolling back watcher change [`#1158`](https://github.com/PrefectHQ/ui/pull/1158)
#### [2021-12-14](https://github.com/PrefectHQ/ui/compare/2021-11-09...2021-12-14)
- Changelog: Cut changelog ahead of 14-12-2021 release [`#1156`](https://github.com/PrefectHQ/ui/pull/1156)
- Feature: Show project name in the run history flow run pop up box [`#1139`](https://github.com/PrefectHQ/ui/pull/1139)
- Performance: More careful polling of graphql data [`#1125`](https://github.com/PrefectHQ/ui/pull/1125)
- Dependabot: Bump tmpl from 1.0.4 to 1.0.5 [`#1055`](https://github.com/PrefectHQ/ui/pull/1055)
- Feature: Elevate labels in the details tile [`#1151`](https://github.com/PrefectHQ/ui/pull/1151)
- Dependabot: Bump object-path from 0.11.5 to 0.11.8 [`#1054`](https://github.com/PrefectHQ/ui/pull/1054)
- Bump axios from 0.21.1 to 0.21.4 [`#1052`](https://github.com/PrefectHQ/ui/pull/1052)
- resolved high priority codeQL alerts [`#1150`](https://github.com/PrefectHQ/ui/pull/1150)
- Bugfix: Check for skipped state in task run table to fix endless duration [`#1134`](https://github.com/PrefectHQ/ui/pull/1134)
- code review changes for 1120 [`#1148`](https://github.com/PrefectHQ/ui/pull/1148)
- Performance: Add virtual-scroll to dashboard tiles and improve duration calculations [`#1120`](https://github.com/PrefectHQ/ui/pull/1120)
- Performance: Removed watchers and/or increased watchers specificity [`#1143`](https://github.com/PrefectHQ/ui/pull/1143)
- Feature: Add loading state to RestartDialog [`#1144`](https://github.com/PrefectHQ/ui/pull/1144)
- Bugfix: Do not add 'allFlows' if a user has only one flow [`#1129`](https://github.com/PrefectHQ/ui/pull/1129)
- Update free usage task runs count to 20,000 [`#1145`](https://github.com/PrefectHQ/ui/pull/1145)
- Bugfix: Update artifact docs link in the 'beta' badge popover [`#1127`](https://github.com/PrefectHQ/ui/pull/1127)
- Bugfix: Improve agent sorting [`#1137`](https://github.com/PrefectHQ/ui/pull/1137)
- Bugfix: Set min-width in titlebars to account for shorter names [`#1136`](https://github.com/PrefectHQ/ui/pull/1136)
- Performance: Update inputs in flow settings - parameters [`#1103`](https://github.com/PrefectHQ/ui/pull/1103)
- 1095/schedules [`#1104`](https://github.com/PrefectHQ/ui/pull/1104)
- 1095/team settings [`#1101`](https://github.com/PrefectHQ/ui/pull/1101)
- Admin: Add Evan to code owners [`#1135`](https://github.com/PrefectHQ/ui/pull/1135)
- Bugfix: Font-awesome-subsetting [`#1132`](https://github.com/PrefectHQ/ui/pull/1132)
- 1095/automations [`#1102`](https://github.com/PrefectHQ/ui/pull/1102)
- Bugfix: Checks for slashes in Cron regex to set interval schedule via Cron [`#1123`](https://github.com/PrefectHQ/ui/pull/1123)
- Bugfix: Fix broken link to the account page [`#1131`](https://github.com/PrefectHQ/ui/pull/1131)
- Feature: Adjust column width in v-data-table to account for longer names [`#1121`](https://github.com/PrefectHQ/ui/pull/1121)
- fixed incorrect syntax for flex-align [`#1128`](https://github.com/PrefectHQ/ui/pull/1128)
- Bugfix: removed avoidable watchers when side-nav is not open [`#1124`](https://github.com/PrefectHQ/ui/pull/1124)
- Bugfix: Performance - Remove global event listeners from App.vue [`#1119`](https://github.com/PrefectHQ/ui/pull/1119)
- Feature: Expand space in the title bars to account for longer names [`#1098`](https://github.com/PrefectHQ/ui/pull/1098)
- Feature: Enhancements to run page run-config inputs with new dict, json, yaml inputs [`#1095`](https://github.com/PrefectHQ/ui/pull/1095)
- Bugfix: Artifacts docs link correction [`#1126`](https://github.com/PrefectHQ/ui/pull/1126)
- Bugfix: Allow users to search for flows by both flow id and flow group id [`#1089`](https://github.com/PrefectHQ/ui/pull/1089)
#### [2021-11-09](https://github.com/PrefectHQ/ui/compare/2021-11-01...2021-11-09)
- Cut changelog ahead of 2021-11-09 release [`#1122`](https://github.com/PrefectHQ/ui/pull/1122)
- Bump graphiql from 1.4.1 to 1.4.7 [`#1117`](https://github.com/PrefectHQ/ui/pull/1117)
- Bump remark-html from 13.0.1 to 13.0.2 [`#1041`](https://github.com/PrefectHQ/ui/pull/1041)
- performance: improved logic for displaying current time in user-menu [`#1099`](https://github.com/PrefectHQ/ui/pull/1099)
- tree shaking moment dependency [`#1109`](https://github.com/PrefectHQ/ui/pull/1109)
- tree shaking lodash dependency [`#1107`](https://github.com/PrefectHQ/ui/pull/1107)
- tree shaking highlightjs dependency [`#1108`](https://github.com/PrefectHQ/ui/pull/1108)
- when creating/editing schedule, make action button available across tabs [`#1096`](https://github.com/PrefectHQ/ui/pull/1096)
#### [2021-11-01](https://github.com/PrefectHQ/ui/compare/2021-10-06...2021-11-01)
- cut changelog ahead of 11/01/2021 release [`#1106`](https://github.com/PrefectHQ/ui/pull/1106)
- fix ordering of submitted and running [`#1105`](https://github.com/PrefectHQ/ui/pull/1105)
- Update plan definitions to reflect (soon to be) reality [`#1100`](https://github.com/PrefectHQ/ui/pull/1100)
- User settings/teams - removeUser mutation error handling [`#1094`](https://github.com/PrefectHQ/ui/pull/1094)
- Dont expose token to logrocket [`#1091`](https://github.com/PrefectHQ/ui/pull/1091)
- Create codeql-config.yml [`#1037`](https://github.com/PrefectHQ/ui/pull/1037)
- Fix tags in slack orb in CircleCI config [`#1053`](https://github.com/PrefectHQ/ui/pull/1053)
- Warning that users will be locked out if not part of a team [`#1078`](https://github.com/PrefectHQ/ui/pull/1078)
- Disable start run button for late flow runs [`#1087`](https://github.com/PrefectHQ/ui/pull/1087)
- Filter by scheduled runs in the runs tab [`#1079`](https://github.com/PrefectHQ/ui/pull/1079)
- When editing a schedule, update the action button to "Save" [`#1083`](https://github.com/PrefectHQ/ui/pull/1083)
- Fixed-tile-v-tabs [`#1081`](https://github.com/PrefectHQ/ui/pull/1081)
- Pd update [`#1073`](https://github.com/PrefectHQ/ui/pull/1073)
- Update the command on the connect an agent intro section [`#1076`](https://github.com/PrefectHQ/ui/pull/1076)
#### [2021-10-06](https://github.com/PrefectHQ/ui/compare/2021-10-05...2021-10-06)
- Add UniversalRun to possible run config options on flow details apge [`#1074`](https://github.com/PrefectHQ/ui/pull/1074)
#### [2021-10-05](https://github.com/PrefectHQ/ui/compare/2021-09-20...2021-10-05)
- update tabs on tiles [`#1064`](https://github.com/PrefectHQ/ui/pull/1064)
- Remove requirement to add an API Secret for Pager Duty [`#1065`](https://github.com/PrefectHQ/ui/pull/1065)
- member invitation bug - invite a user on the free tier the first time the modal appears [`#1062`](https://github.com/PrefectHQ/ui/pull/1062)
- added nvmrc for project that sets node version to 14-17-3 [`#1058`](https://github.com/PrefectHQ/ui/pull/1058)
#### [2021-09-20](https://github.com/PrefectHQ/ui/compare/2021-09-07...2021-09-20)
- pagerduty integration [`#1038`](https://github.com/PrefectHQ/ui/pull/1038)
- add run config tab in flow run details [`#1047`](https://github.com/PrefectHQ/ui/pull/1047)
- update tutorial [`#1042`](https://github.com/PrefectHQ/ui/pull/1042)
- fix text color in flow details tile [`#1044`](https://github.com/PrefectHQ/ui/pull/1044)
#### [2021-09-07](https://github.com/PrefectHQ/ui/compare/2021-08-18...2021-09-07)
- Cut changelog ahead of 2021-09-07 release [`#1039`](https://github.com/PrefectHQ/ui/pull/1039)
- Add a copy method to task run result locations [`#1033`](https://github.com/PrefectHQ/ui/pull/1033)
- Artifact title overlap fix [`#1032`](https://github.com/PrefectHQ/ui/pull/1032)
- fix webhook url language and remove ref to secret [`#1036`](https://github.com/PrefectHQ/ui/pull/1036)
- Update the dict component to ignore null k/v pairs [`#1029`](https://github.com/PrefectHQ/ui/pull/1029)
- Increase default number of flows shown in the flow table [`#1027`](https://github.com/PrefectHQ/ui/pull/1027)
- Remove global max width [`#1026`](https://github.com/PrefectHQ/ui/pull/1026)
- Remove parent query [`#1025`](https://github.com/PrefectHQ/ui/pull/1025)
- Skipped state duration and end time fix [`#1030`](https://github.com/PrefectHQ/ui/pull/1030)
- Route to task run page on timeline click [`#1024`](https://github.com/PrefectHQ/ui/pull/1024)
- Clean up remaining FA_TOKEN refs [`#1020`](https://github.com/PrefectHQ/ui/pull/1020)
- Fix role reset [`#1019`](https://github.com/PrefectHQ/ui/pull/1019)
- Remove references to certain task attributes [`#1011`](https://github.com/PrefectHQ/ui/pull/1011)
- Remove reliance on private FA npm server [`#1013`](https://github.com/PrefectHQ/ui/pull/1013)
#### [2021-08-18](https://github.com/PrefectHQ/ui/compare/2021-08-17...2021-08-18)
- Cut changelog ahead of 2021-08-18 release [`#1007`](https://github.com/PrefectHQ/ui/pull/1007)
- Check authorization token expiration on initial login flow [`#1006`](https://github.com/PrefectHQ/ui/pull/1006)
- Cut changelog ahead of 2021-08-17 release [`#1003`](https://github.com/PrefectHQ/ui/pull/1003)
#### [2021-08-17](https://github.com/PrefectHQ/ui/compare/2021-08-05...2021-08-17)
- Expose retry for archived runs [`#1002`](https://github.com/PrefectHQ/ui/pull/1002)
- Service account roles [`#1001`](https://github.com/PrefectHQ/ui/pull/1001)
- Add host config to the docker run config [`#988`](https://github.com/PrefectHQ/ui/pull/988)
- Upgrade CircleCI/slack orb, rename variables [`#991`](https://github.com/PrefectHQ/ui/pull/991)
- Auto-populate flow group schedules when editing [`#989`](https://github.com/PrefectHQ/ui/pull/989)
- Separate primary and secondary Apollo client links [`#987`](https://github.com/PrefectHQ/ui/pull/987)
- Update browser visibility handler to use new login logic [`#986`](https://github.com/PrefectHQ/ui/pull/986)
- Add secret name and value routes to limit and offset exceptions [`#955`](https://github.com/PrefectHQ/ui/pull/955)
#### [2021-08-05](https://github.com/PrefectHQ/ui/compare/2021-08-02...2021-08-05)
- Cut changelog ahead of 2021-08-05 release [`#985`](https://github.com/PrefectHQ/ui/pull/985)
- Update the data store retrieval patterns to handle more than 1000 flows [`#984`](https://github.com/PrefectHQ/ui/pull/984)
- Fall back to in-memory token exchange if worker exchange fails or takes too long [`#982`](https://github.com/PrefectHQ/ui/pull/982)
- Fix worker error handling [`#981`](https://github.com/PrefectHQ/ui/pull/981)
- Move logrocket to first executed code [`#980`](https://github.com/PrefectHQ/ui/pull/980)
#### [2021-08-02](https://github.com/PrefectHQ/ui/compare/2021-07-29...2021-08-02)
- Fix start server settings [`#974`](https://github.com/PrefectHQ/ui/pull/974)
#### [2021-07-29](https://github.com/PrefectHQ/ui/compare/2021-07-22...2021-07-29)
- Cut changelog ahead of 2021-07-29 release [`#970`](https://github.com/PrefectHQ/ui/pull/970)
- Allow hash characters in cron form validation [`#966`](https://github.com/PrefectHQ/ui/pull/966)
- Add Automations tile to Flow page [`#941`](https://github.com/PrefectHQ/ui/pull/941)
- Fix Bash syntax error in start_server.sh [`#964`](https://github.com/PrefectHQ/ui/pull/964)
#### [2021-07-22](https://github.com/PrefectHQ/ui/compare/2021-07-21...2021-07-22)
- Cut changelog ahead of 2021-07-22 release [`#961`](https://github.com/PrefectHQ/ui/pull/961)
- Safari hotfix [`#960`](https://github.com/PrefectHQ/ui/pull/960)
#### [2021-07-21](https://github.com/PrefectHQ/ui/compare/2021-07-13...2021-07-21)
- Cut changelog ahead of 2021-07-21 release [`#959`](https://github.com/PrefectHQ/ui/pull/959)
- Auth exceptions [`#957`](https://github.com/PrefectHQ/ui/pull/957)
- remove jq [`#958`](https://github.com/PrefectHQ/ui/pull/958)
- Setup nginx to run on rootless mode [`#946`](https://github.com/PrefectHQ/ui/pull/946)
- add sort to healthy agents to prevent jumping [`#947`](https://github.com/PrefectHQ/ui/pull/947)
#### [2021-07-13](https://github.com/PrefectHQ/ui/compare/2021-06-24...2021-07-13)
- Cut changelog ahead of 2021-07-13 release [`#943`](https://github.com/PrefectHQ/ui/pull/943)
- Parameters and context view legibility fix [`#939`](https://github.com/PrefectHQ/ui/pull/939)
- Move logrocket initialization to its own plugin [`#940`](https://github.com/PrefectHQ/ui/pull/940)
- Account page server fix [`#938`](https://github.com/PrefectHQ/ui/pull/938)
- Improve type handling when passing parameters to create flow run mutation [`#936`](https://github.com/PrefectHQ/ui/pull/936)
- Fix seconds on automation edit [`#937`](https://github.com/PrefectHQ/ui/pull/937)
- Schedule timezone [`#922`](https://github.com/PrefectHQ/ui/pull/922)
- Dark roles [`#925`](https://github.com/PrefectHQ/ui/pull/925)
- Fix missing indentation in doc code snippet [`#932`](https://github.com/PrefectHQ/ui/pull/932)
- Create codeql-analysis.yml [`#919`](https://github.com/PrefectHQ/ui/pull/919)
- Add current tenant name to account header if no account_name is found [`#923`](https://github.com/PrefectHQ/ui/pull/923)
- Cut changelog ahead of 2021-06-24 release [`#921`](https://github.com/PrefectHQ/ui/pull/921)
#### [2021-06-24](https://github.com/PrefectHQ/ui/compare/2021-06-23a...2021-06-24)
- More permissions [`#920`](https://github.com/PrefectHQ/ui/pull/920)
- Use role id instead of name in members page invite mutation [`#918`](https://github.com/PrefectHQ/ui/pull/918)
#### [2021-06-23a](https://github.com/PrefectHQ/ui/compare/2021-06-23...2021-06-23a)
- Cut changelog ahead of 2021-06-23a release [`#917`](https://github.com/PrefectHQ/ui/pull/917)
- schedule toggle [`#916`](https://github.com/PrefectHQ/ui/pull/916)
#### [2021-06-23](https://github.com/PrefectHQ/ui/compare/2021-06-17...2021-06-23)
- Cut changelog ahead of 2021-06-23 release [`#915`](https://github.com/PrefectHQ/ui/pull/915)
- Small fixes [`#914`](https://github.com/PrefectHQ/ui/pull/914)
- Improved account management [`#909`](https://github.com/PrefectHQ/ui/pull/909)
- other permission updates [`#910`](https://github.com/PrefectHQ/ui/pull/910)
- Depressed prop on upgrade badge [`#913`](https://github.com/PrefectHQ/ui/pull/913)
- members and service account permissions and formatting [`#908`](https://github.com/PrefectHQ/ui/pull/908)
- Add a check on all permissions that bypasses the license for Server [`#912`](https://github.com/PrefectHQ/ui/pull/912)
- Roles [`#881`](https://github.com/PrefectHQ/ui/pull/881)
- remove outdated migration date [`#902`](https://github.com/PrefectHQ/ui/pull/902)
- Improve Agents on Server [`#901`](https://github.com/PrefectHQ/ui/pull/901)
#### [2021-06-17](https://github.com/PrefectHQ/ui/compare/2021-06-02...2021-06-17)
- Cut changelog ahead of 2021-06-17 release [`#900`](https://github.com/PrefectHQ/ui/pull/900)
- remove setAgents from app.vue [`#898`](https://github.com/PrefectHQ/ui/pull/898)
- Adds the netlify script to the csp [`#897`](https://github.com/PrefectHQ/ui/pull/897)
- Improve expired auth and id token handling [`#896`](https://github.com/PrefectHQ/ui/pull/896)
- Add agents [`#852`](https://github.com/PrefectHQ/ui/pull/852)
- Add options to the survey on the name team page [`#895`](https://github.com/PrefectHQ/ui/pull/895)
- Templating Task Name [`#863`](https://github.com/PrefectHQ/ui/pull/863)
- Update interactive api allow list [`#891`](https://github.com/PrefectHQ/ui/pull/891)
- Map index [`#890`](https://github.com/PrefectHQ/ui/pull/890)
- KV Copy [`#887`](https://github.com/PrefectHQ/ui/pull/887)
#### [2021-06-02](https://github.com/PrefectHQ/ui/compare/2021-06-01...2021-06-02)
- Cut changelog ahead of 2021-06-02 release [`#880`](https://github.com/PrefectHQ/ui/pull/880)
- KV Store Formatting inserts spacing into some values [`#879`](https://github.com/PrefectHQ/ui/pull/879)
- KV Store [`#804`](https://github.com/PrefectHQ/ui/pull/804)
#### [2021-06-01](https://github.com/PrefectHQ/ui/compare/2021-05-25...2021-06-01)
- Cut changelog ahead of 2021-06-01 release [`#875`](https://github.com/PrefectHQ/ui/pull/875)
- Fix routing from invitation [`#862`](https://github.com/PrefectHQ/ui/pull/862)
- Automations update [`#818`](https://github.com/PrefectHQ/ui/pull/818)
#### [2021-05-25](https://github.com/PrefectHQ/ui/compare/2021-05-24...2021-05-25)
- Cut changelog ahead of 2021-05-25 release [`#859`](https://github.com/PrefectHQ/ui/pull/859)
- Remove fetchpolicy on tenant settings mutation [`#858`](https://github.com/PrefectHQ/ui/pull/858)
#### [2021-05-24](https://github.com/PrefectHQ/ui/compare/2021-05-17...2021-05-24)
- Cut changelog ahead of 2021-05-24 release [`#857`](https://github.com/PrefectHQ/ui/pull/857)
- Improve usability of the quick run button [`#846`](https://github.com/PrefectHQ/ui/pull/846)
- Allow configurable base url and relative public assets path [`#849`](https://github.com/PrefectHQ/ui/pull/849)
- Fix broken api store core version ref [`#847`](https://github.com/PrefectHQ/ui/pull/847)
- Remove options button for server [`#848`](https://github.com/PrefectHQ/ui/pull/848)
- Fix issue with overlapping sidebar/application nav on small screens [`#850`](https://github.com/PrefectHQ/ui/pull/850)
- Remove Server/Cloud switcher [`#844`](https://github.com/PrefectHQ/ui/pull/844)
- Run page improvements/fixes [`#839`](https://github.com/PrefectHQ/ui/pull/839)
- stop disable next for pager duty config [`#835`](https://github.com/PrefectHQ/ui/pull/835)
- Add 3 new tenant-wide actions [`#825`](https://github.com/PrefectHQ/ui/pull/825)
- Separate auth from the primary application [`#811`](https://github.com/PrefectHQ/ui/pull/811)
#### [2021-05-17](https://github.com/PrefectHQ/ui/compare/2021-05-14...2021-05-17)
- Cut changelog ahead of 2021-05-17 release [`#842`](https://github.com/PrefectHQ/ui/pull/842)
- allowed users error [`#841`](https://github.com/PrefectHQ/ui/pull/841)
- Stop json param value flicker [`#837`](https://github.com/PrefectHQ/ui/pull/837)
#### [2021-05-14](https://github.com/PrefectHQ/ui/compare/2021-05-05...2021-05-14)
- Cut changelog ahead of 2021-05-14 release [`#833`](https://github.com/PrefectHQ/ui/pull/833)
- Fix issue setting default tenant in server and bypassing auth [`#828`](https://github.com/PrefectHQ/ui/pull/828)
- Created by field service accounts [`#808`](https://github.com/PrefectHQ/ui/pull/808)
- Show Maintenance Mode Warning [`#815`](https://github.com/PrefectHQ/ui/pull/815)
- Members page doesn't load properly [`#824`](https://github.com/PrefectHQ/ui/pull/824)
- licensing and permissions [`#763`](https://github.com/PrefectHQ/ui/pull/763)
- Add Tooltip to flow run task table [`#814`](https://github.com/PrefectHQ/ui/pull/814)
- Clarify Task Run usage tile [`#816`](https://github.com/PrefectHQ/ui/pull/816)
- Switch token to key on getting started [`#820`](https://github.com/PrefectHQ/ui/pull/820)
#### [2021-05-05](https://github.com/PrefectHQ/ui/compare/2021-05-04...2021-05-05)
- Cut changelog ahead of 2021-05-05 release [`#812`](https://github.com/PrefectHQ/ui/pull/812)
- don't disable context and environment key field [`#810`](https://github.com/PrefectHQ/ui/pull/810)
- allow editing in json editor for checked params [`#787`](https://github.com/PrefectHQ/ui/pull/787)
#### [2021-05-04](https://github.com/PrefectHQ/ui/compare/2021-04-23...2021-05-04)
- Cut changelog ahead of 2021-05-04 release [`#809`](https://github.com/PrefectHQ/ui/pull/809)
- update tutorials [`#806`](https://github.com/PrefectHQ/ui/pull/806)
- Add logging level to run config [`#769`](https://github.com/PrefectHQ/ui/pull/769)
- Gracefully handle null default tenants [`#802`](https://github.com/PrefectHQ/ui/pull/802)
- add animation hint for new automation card [`#784`](https://github.com/PrefectHQ/ui/pull/784)
- take usage tile off dashboard and add to account page [`#782`](https://github.com/PrefectHQ/ui/pull/782)
#### [2021-04-23](https://github.com/PrefectHQ/ui/compare/2021-04-22...2021-04-23)
- More auth [`#791`](https://github.com/PrefectHQ/ui/pull/791)
#### [2021-04-22](https://github.com/PrefectHQ/ui/compare/2021-04-21...2021-04-22)
- Fix issues with Server loading in the latest release. [`#788`](https://github.com/PrefectHQ/ui/pull/788)
- add loading indicator for initial load [`#789`](https://github.com/PrefectHQ/ui/pull/789)
#### [2021-04-21](https://github.com/PrefectHQ/ui/compare/2021-04-15...2021-04-21)
- Cut changelog ahead of 2021-04-21 release [`#785`](https://github.com/PrefectHQ/ui/pull/785)
- Fix auth loop [`#783`](https://github.com/PrefectHQ/ui/pull/783)
- Fix some issues with checking auth when returning to the application [`#774`](https://github.com/PrefectHQ/ui/pull/774)
#### [2021-04-15](https://github.com/PrefectHQ/ui/compare/2021-04-09a...2021-04-15)
- Cut changelog ahead of 2021-04-15 release [`#779`](https://github.com/PrefectHQ/ui/pull/779)
- default parameters [`#773`](https://github.com/PrefectHQ/ui/pull/773)
- update deploy tutorial for API keys [`#770`](https://github.com/PrefectHQ/ui/pull/770)
- update user menu to mention keys instead of tokens [`#778`](https://github.com/PrefectHQ/ui/pull/778)
- don't stringify strings [`#777`](https://github.com/PrefectHQ/ui/pull/777)
- add breadcrumb to flow version, change flow name breadcrumb to overview [`#759`](https://github.com/PrefectHQ/ui/pull/759)
- don't save backend in localstorage [`#772`](https://github.com/PrefectHQ/ui/pull/772)
- Remove precommit hook [`#771`](https://github.com/PrefectHQ/ui/pull/771)
- kinda hacky fix for weird rounding bug [`#768`](https://github.com/PrefectHQ/ui/pull/768)
- make error message easier to read [`#767`](https://github.com/PrefectHQ/ui/pull/767)
- Add loading state to sign out button [`#766`](https://github.com/PrefectHQ/ui/pull/766)
#### [2021-04-09a](https://github.com/PrefectHQ/ui/compare/2021-04-09...2021-04-09a)
- Cut changelog ahead of 2021-04-09a release [`#760`](https://github.com/PrefectHQ/ui/pull/760)
- Add MS teams action [`#751`](https://github.com/PrefectHQ/ui/pull/751)
#### [2021-04-09](https://github.com/PrefectHQ/ui/compare/2021-04-07...2021-04-09)
- Cut changelog ahead of 2021-04-09 release [`#756`](https://github.com/PrefectHQ/ui/pull/756)
- Improve onboarding license creation [`#754`](https://github.com/PrefectHQ/ui/pull/754)
- include tenant when creating personal API keys [`#753`](https://github.com/PrefectHQ/ui/pull/753)
- Display flow version in flow run [`#736`](https://github.com/PrefectHQ/ui/pull/736)
#### [2021-04-07](https://github.com/PrefectHQ/ui/compare/2021-04-06a...2021-04-07)
- Cut changelog ahead of 2021-04-07 release [`#750`](https://github.com/PrefectHQ/ui/pull/750)
- Update all slack invite links to redirect to the prefect.io slack link [`#747`](https://github.com/PrefectHQ/ui/pull/747)
- fix legibility issues with /plans page in dark mode [`#748`](https://github.com/PrefectHQ/ui/pull/748)
- check if flow version is archived for restart button state [`#714`](https://github.com/PrefectHQ/ui/pull/714)
- Make "current" label more legible [`#737`](https://github.com/PrefectHQ/ui/pull/737)
#### [2021-04-06a](https://github.com/PrefectHQ/ui/compare/2021-04-06...2021-04-06a)
- Cut changelog ahead of 2021-04-06a release [`#744`](https://github.com/PrefectHQ/ui/pull/744)
- Check rbac feature on permissions blob instead of plan names [`#743`](https://github.com/PrefectHQ/ui/pull/743)
#### [2021-04-06](https://github.com/PrefectHQ/ui/compare/2021-04-05...2021-04-06)
- Cut changelog ahead of 2021-04-06 release [`#742`](https://github.com/PrefectHQ/ui/pull/742)
- Committed runs on license instead of tenant patch [`#741`](https://github.com/PrefectHQ/ui/pull/741)
- Rbac patch [`#740`](https://github.com/PrefectHQ/ui/pull/740)
#### [2021-04-05](https://github.com/PrefectHQ/ui/compare/2021-03-25...2021-04-05)
- Cut changelog ahead of 2021-04-05 release [`#739`](https://github.com/PrefectHQ/ui/pull/739)
- Fix gutters on pages using the tile layout [`#738`](https://github.com/PrefectHQ/ui/pull/738)
- Add an agent config creation step to the automations agent SLA form [`#708`](https://github.com/PrefectHQ/ui/pull/708)
- Add scheduling error message to toast [`#725`](https://github.com/PrefectHQ/ui/pull/725)
- Usage timeline bugfixes [`#722`](https://github.com/PrefectHQ/ui/pull/722)
- Add the proper permissions to role-based invitations [`#719`](https://github.com/PrefectHQ/ui/pull/719)
- Add the proper permissions to flow and task concurrency pages [`#720`](https://github.com/PrefectHQ/ui/pull/720)
- Small fixes to onboarding [`#721`](https://github.com/PrefectHQ/ui/pull/721)
- Usage displays/updates [`#692`](https://github.com/PrefectHQ/ui/pull/692)
- bugfix to show helpful error message on failed service account creation [`#716`](https://github.com/PrefectHQ/ui/pull/716)
- Log URL [`#712`](https://github.com/PrefectHQ/ui/pull/712)
- Disable the automations tab [`#711`](https://github.com/PrefectHQ/ui/pull/711)
- Fix tenant switching in Safari [`#710`](https://github.com/PrefectHQ/ui/pull/710)
- Add remaining states to the state filter [`#706`](https://github.com/PrefectHQ/ui/pull/706)
- Package updates 2021-03-29 [`#707`](https://github.com/PrefectHQ/ui/pull/707)
- Hooks (AKA Automations) [`#695`](https://github.com/PrefectHQ/ui/pull/695)
- Token redesign [`#678`](https://github.com/PrefectHQ/ui/pull/678)
- Make the duration header not sortable [`#699`](https://github.com/PrefectHQ/ui/pull/699)
- fix artifact colors to be dark mode friendly [`#693`](https://github.com/PrefectHQ/ui/pull/693)
- add loading state to quick run button [`#696`](https://github.com/PrefectHQ/ui/pull/696)
- Add generic message notification type [`#674`](https://github.com/PrefectHQ/ui/pull/674)
#### [2021-03-25](https://github.com/PrefectHQ/ui/compare/2021-03-16...2021-03-25)
- Cut changelog ahead of 2021-03-25 release [`#694`](https://github.com/PrefectHQ/ui/pull/694)
- Schedule default parameters [`#683`](https://github.com/PrefectHQ/ui/pull/683)
- Improve authorization expiration handling [`#690`](https://github.com/PrefectHQ/ui/pull/690)
- delete entire flow group with new mutation [`#689`](https://github.com/PrefectHQ/ui/pull/689)
- More flow run page improvements [`#688`](https://github.com/PrefectHQ/ui/pull/688)
- Update readme with sections on testing, docker, and local development [`#691`](https://github.com/PrefectHQ/ui/pull/691)
- Flow run page and general performance improvements [`#679`](https://github.com/PrefectHQ/ui/pull/679)
- Named routes [`#662`](https://github.com/PrefectHQ/ui/pull/662)
- Randomize survey [`#677`](https://github.com/PrefectHQ/ui/pull/677)
- Missing state in state filter [`#675`](https://github.com/PrefectHQ/ui/pull/675)
#### [2021-03-16](https://github.com/PrefectHQ/ui/compare/2021-03-15a...2021-03-16)
- Cut changelog ahead of 2021-03-16 release [`#676`](https://github.com/PrefectHQ/ui/pull/676)
- License creation/slug error [`#672`](https://github.com/PrefectHQ/ui/pull/672)
- Update links to new page [`#673`](https://github.com/PrefectHQ/ui/pull/673)
- remove popover [`#665`](https://github.com/PrefectHQ/ui/pull/665)
#### [2021-03-15a](https://github.com/PrefectHQ/ui/compare/2021-03-15...2021-03-15a)
- Cut changelog ahead of 2021-03-15a release [`#671`](https://github.com/PrefectHQ/ui/pull/671)
- Remove references to the detail blob from the task run table tile [`#670`](https://github.com/PrefectHQ/ui/pull/670)
#### [2021-03-15](https://github.com/PrefectHQ/ui/compare/2021-03-09...2021-03-15)
- Cut changelog ahead of 2021-03-15 release [`#668`](https://github.com/PrefectHQ/ui/pull/668)
- Dark mode!! [`#656`](https://github.com/PrefectHQ/ui/pull/656)
- Flow group created by [`#657`](https://github.com/PrefectHQ/ui/pull/657)
- Fix a couple bugs from color consolidation [`#652`](https://github.com/PrefectHQ/ui/pull/652)
- Flow run state filter [`#645`](https://github.com/PrefectHQ/ui/pull/645)
- Cancel late [`#653`](https://github.com/PrefectHQ/ui/pull/653)
- Mapped case task runs [`#650`](https://github.com/PrefectHQ/ui/pull/650)
#### [2021-03-09](https://github.com/PrefectHQ/ui/compare/2021-03-02...2021-03-09)
- Cut changelog ahead of 2021-03-09 release [`#651`](https://github.com/PrefectHQ/ui/pull/651)
- clean up agents with NaN secondsSinceLastQuery [`#646`](https://github.com/PrefectHQ/ui/pull/646)
- Color cleanup: change hard-coded colors into variables throughout app [`#640`](https://github.com/PrefectHQ/ui/pull/640)
- State table [`#633`](https://github.com/PrefectHQ/ui/pull/633)
#### [2021-03-02](https://github.com/PrefectHQ/ui/compare/2021-02-23...2021-03-02)
- Cut changelog ahead of 2021-03-02 release [`#638`](https://github.com/PrefectHQ/ui/pull/638)
- Redirect links [`#631`](https://github.com/PrefectHQ/ui/pull/631)
- Interactive api header [`#628`](https://github.com/PrefectHQ/ui/pull/628)
- Fix agent controls z-index [`#617`](https://github.com/PrefectHQ/ui/pull/617)
#### [2021-02-23](https://github.com/PrefectHQ/ui/compare/2021-02-12...2021-02-23)
- Cut changelog ahead of 2021-02-23 release [`#627`](https://github.com/PrefectHQ/ui/pull/627)
- make content a sibling of background so it'll scroll [`#616`](https://github.com/PrefectHQ/ui/pull/616)
- Tenant and user headers [`#621`](https://github.com/PrefectHQ/ui/pull/621)
- "How did you hear about us" dropdown [`#615`](https://github.com/PrefectHQ/ui/pull/615)
- add double check for flow id to avoid race condition between flow nav… [`#590`](https://github.com/PrefectHQ/ui/pull/590)
- Clean up bug [`#591`](https://github.com/PrefectHQ/ui/pull/591)
#### [2021-02-12](https://github.com/PrefectHQ/ui/compare/2021-02-11...2021-02-12)
- VU Hotfix [`#611`](https://github.com/PrefectHQ/ui/pull/611)
- HOTFIX: Runconfig [`#610`](https://github.com/PrefectHQ/ui/pull/610)
#### [2021-02-11](https://github.com/PrefectHQ/ui/compare/2021-02-03...2021-02-11)
- Cut changelog ahead of 2021-02-11 release [`#607`](https://github.com/PrefectHQ/ui/pull/607)
- Runconfig pre release [`#606`](https://github.com/PrefectHQ/ui/pull/606)
- unbreak netlify [`#605`](https://github.com/PrefectHQ/ui/pull/605)
- lets get docker working [`#601`](https://github.com/PrefectHQ/ui/pull/601)
- Run configs and run tab update [`#585`](https://github.com/PrefectHQ/ui/pull/585)
- Add Flow Descriptions [`#563`](https://github.com/PrefectHQ/ui/pull/563)
- dockerrrrrr [`#598`](https://github.com/PrefectHQ/ui/pull/598)
- need to get creds into docker to build prod [`#597`](https://github.com/PrefectHQ/ui/pull/597)
- Airgapping the UI [`#595`](https://github.com/PrefectHQ/ui/pull/595)
- Show label warning on Server [`#593`](https://github.com/PrefectHQ/ui/pull/593)
- don't show tutorial banner on server [`#592`](https://github.com/PrefectHQ/ui/pull/592)
#### [2021-02-03](https://github.com/PrefectHQ/ui/compare/2021-01-28...2021-02-03)
- Cut changelog ahead of 2021-02-03 release [`#589`](https://github.com/PrefectHQ/ui/pull/589)
- Users [`#587`](https://github.com/PrefectHQ/ui/pull/587)
- Update .env file with new auth variables [`#583`](https://github.com/PrefectHQ/ui/pull/583)
- Use role_detail instead of role [`#577`](https://github.com/PrefectHQ/ui/pull/577)
#### [2021-01-28](https://github.com/PrefectHQ/ui/compare/2021-01-25...2021-01-28)
- Cut changelog ahead of 2021-01-28 release [`#580`](https://github.com/PrefectHQ/ui/pull/580)
- Improve auth errors [`#576`](https://github.com/PrefectHQ/ui/pull/576)
- Schedule TZ Details Tile [`#570`](https://github.com/PrefectHQ/ui/pull/570)
- Refresh token improvements [`#574`](https://github.com/PrefectHQ/ui/pull/574)
- Dev => Master [`#556`](https://github.com/PrefectHQ/ui/pull/556)
#### [2021-01-25](https://github.com/PrefectHQ/ui/compare/2021-01-19...2021-01-25)
- Wrap link artifacts in router links to allow relative navigation [`#559`](https://github.com/PrefectHQ/ui/pull/559)
- Flow Group schedule timezones [`#532`](https://github.com/PrefectHQ/ui/pull/532)
- 404 TLC [`#562`](https://github.com/PrefectHQ/ui/pull/562)
- make sure we're on the correct tab when mounting page [`#561`](https://github.com/PrefectHQ/ui/pull/561)
#### [2021-01-19](https://github.com/PrefectHQ/ui/compare/2021-01-07...2021-01-19)
- Cut changelog ahead of 2021-01-19 release [`#560`](https://github.com/PrefectHQ/ui/pull/560)
- Add new date method to prevent over-querying [`#558`](https://github.com/PrefectHQ/ui/pull/558)
- don't show 'none' in details tile if flowgroup has a schedule [`#553`](https://github.com/PrefectHQ/ui/pull/553)
- Update deploy jobs to distinguish between dev and staging [`#538`](https://github.com/PrefectHQ/ui/pull/538)
#### [2021-01-07](https://github.com/PrefectHQ/ui/compare/2021-01-05...2021-01-07)
- Cut changelog ahead of 2021-01-07 release [`#537`](https://github.com/PrefectHQ/ui/pull/537)
- Iapi hotfix [`#533`](https://github.com/PrefectHQ/ui/pull/533)
- Navbar slug fix [`#534`](https://github.com/PrefectHQ/ui/pull/534)
- tutorial banner [`#516`](https://github.com/PrefectHQ/ui/pull/516)
- add support for url-encoded queries [`#529`](https://github.com/PrefectHQ/ui/pull/529)
#### [2021-01-05](https://github.com/PrefectHQ/ui/compare/2020-12-18...2021-01-05)
- Cut changelog ahead of 2021-01-05 release [`#531`](https://github.com/PrefectHQ/ui/pull/531)
- Touchups [`#530`](https://github.com/PrefectHQ/ui/pull/530)
- simplify and improve calendar backend and tenant switch [`#524`](https://github.com/PrefectHQ/ui/pull/524)
- Navigation update (top level flow visibility remix) [`#520`](https://github.com/PrefectHQ/ui/pull/520)
- add beforeDestroy hook to fix blank page on reload [`#526`](https://github.com/PrefectHQ/ui/pull/526)
- Add truncate/tooltip to notification tile [`#527`](https://github.com/PrefectHQ/ui/pull/527)
- Simpler query [`#518`](https://github.com/PrefectHQ/ui/pull/518)
- interactive API: graphiql [`#509`](https://github.com/PrefectHQ/ui/pull/509)
- Calendar view [`#433`](https://github.com/PrefectHQ/ui/pull/433)
#### [2020-12-18](https://github.com/PrefectHQ/ui/compare/2020-12-14...2020-12-18)
- Cut changelog ahead of 2020-12-18 release [`#517`](https://github.com/PrefectHQ/ui/pull/517)
- Remove decrossing from schematic calculations [`#515`](https://github.com/PrefectHQ/ui/pull/515)
- Enable artifacts [`#512`](https://github.com/PrefectHQ/ui/pull/512)
- Flow Run (& Task Run & Task) 404 [`#511`](https://github.com/PrefectHQ/ui/pull/511)
- Assorted visual bugs [`#507`](https://github.com/PrefectHQ/ui/pull/507)
#### [2020-12-14](https://github.com/PrefectHQ/ui/compare/2020-12-07...2020-12-14)
- Cut changelog ahead of 2020-12-14 release [`#506`](https://github.com/PrefectHQ/ui/pull/506)
- Stylesheet/CSS audit [`#495`](https://github.com/PrefectHQ/ui/pull/495)
- Artifact link [`#498`](https://github.com/PrefectHQ/ui/pull/498)
- Add task run name to global search [`#485`](https://github.com/PrefectHQ/ui/pull/485)
#### [2020-12-07](https://github.com/PrefectHQ/ui/compare/2020-11-30...2020-12-07)
- Update Changelog.md [`#493`](https://github.com/PrefectHQ/ui/pull/493)
- Fix z-index on artifacts link [`#491`](https://github.com/PrefectHQ/ui/pull/491)
- Flow run artifacts [`#484`](https://github.com/PrefectHQ/ui/pull/484)
- Tokens [`#488`](https://github.com/PrefectHQ/ui/pull/488)
- Update Universal Deploy tutorial [`#482`](https://github.com/PrefectHQ/ui/pull/482)
- Set State Modal [`#465`](https://github.com/PrefectHQ/ui/pull/465)
- remove tutorial and update link in help text [`#480`](https://github.com/PrefectHQ/ui/pull/480)
- Footer [`#451`](https://github.com/PrefectHQ/ui/pull/451)
- add fixed height to subnav row to fix jumping bug [`#476`](https://github.com/PrefectHQ/ui/pull/476)
- Table Rows [`#475`](https://github.com/PrefectHQ/ui/pull/475)
#### [2020-11-30](https://github.com/PrefectHQ/ui/compare/2020-11-13...2020-11-30)
- Cut changelog [`#474`](https://github.com/PrefectHQ/ui/pull/474)
- [RELEASE-BLOCKING] - Fix positioning of agent controls [`#470`](https://github.com/PrefectHQ/ui/pull/470)
- Team slug wording [`#471`](https://github.com/PrefectHQ/ui/pull/471)
- Fix schematic node finished task run durations [`#468`](https://github.com/PrefectHQ/ui/pull/468)
- Sub page nav [`#441`](https://github.com/PrefectHQ/ui/pull/441)
- tutorials [`#434`](https://github.com/PrefectHQ/ui/pull/434)
- Task run restart bugfix [`#452`](https://github.com/PrefectHQ/ui/pull/452)
- Display the core version in the sidebar [`#431`](https://github.com/PrefectHQ/ui/pull/431)
- Editable task run names [`#449`](https://github.com/PrefectHQ/ui/pull/449)
- Editable flow run names [`#448`](https://github.com/PrefectHQ/ui/pull/448)
- Truncated flow name [`#440`](https://github.com/PrefectHQ/ui/pull/440)
#### [2020-11-13](https://github.com/PrefectHQ/ui/compare/2020-11-12...2020-11-13)
- Update Changelog.md [`#436`](https://github.com/PrefectHQ/ui/pull/436)
- Artifacts description [`#435`](https://github.com/PrefectHQ/ui/pull/435)
#### [2020-11-12](https://github.com/PrefectHQ/ui/compare/2020-11-11...2020-11-12)
- Update Changelog.md [`#432`](https://github.com/PrefectHQ/ui/pull/432)
- Timeline [`#278`](https://github.com/PrefectHQ/ui/pull/278)
- npm update [`#428`](https://github.com/PrefectHQ/ui/pull/428)
#### [2020-11-11](https://github.com/PrefectHQ/ui/compare/2020-11-10...2020-11-11)
- Update Changelog.md [`#429`](https://github.com/PrefectHQ/ui/pull/429)
- Create a "Your Teams" page in the User prefs [`#403`](https://github.com/PrefectHQ/ui/pull/403)
- md parser [`#390`](https://github.com/PrefectHQ/ui/pull/390)
- Allow querying agents from IAPI and bulk clearing agents [`#425`](https://github.com/PrefectHQ/ui/pull/425)
- fetch task runs for mark as dialog [`#411`](https://github.com/PrefectHQ/ui/pull/411)
- Accept invitation [`#417`](https://github.com/PrefectHQ/ui/pull/417)
#### [2020-11-10](https://github.com/PrefectHQ/ui/compare/2020-10-29a...2020-11-10)
- Update Changelog.md [`#416`](https://github.com/PrefectHQ/ui/pull/416)
- Fix issue with notifications tile actions not being aligned to bottom [`#410`](https://github.com/PrefectHQ/ui/pull/410)
- Parameters tab [`#401`](https://github.com/PrefectHQ/ui/pull/401)
- Add more info to flow Run Config details section [`#400`](https://github.com/PrefectHQ/ui/pull/400)
- Adjust state filter [`#402`](https://github.com/PrefectHQ/ui/pull/402)
- Multiple email Cloud Hooks [`#372`](https://github.com/PrefectHQ/ui/pull/372)
- Make agents and upcoming tiles refresh when switch backend [`#395`](https://github.com/PrefectHQ/ui/pull/395)
- Refetch task run states after flow run finishes [`#398`](https://github.com/PrefectHQ/ui/pull/398)
- Add icon for resource manager tasks [`#396`](https://github.com/PrefectHQ/ui/pull/396)
- Scrollbar bug [`#399`](https://github.com/PrefectHQ/ui/pull/399)
#### [2020-10-29a](https://github.com/PrefectHQ/ui/compare/2020-10-29...2020-10-29a)
- Update Changelog.md [`#391`](https://github.com/PrefectHQ/ui/pull/391)
- Run state tab indicators [`#389`](https://github.com/PrefectHQ/ui/pull/389)
- Secrets popover [`#377`](https://github.com/PrefectHQ/ui/pull/377)
- update no agents warning [`#382`](https://github.com/PrefectHQ/ui/pull/382)
- add json and string type choices for secrets and validate json [`#370`](https://github.com/PrefectHQ/ui/pull/370)
#### [2020-10-29](https://github.com/PrefectHQ/ui/compare/2020-10-23...2020-10-29)
- Update Changelog.md [`#388`](https://github.com/PrefectHQ/ui/pull/388)
- Fix authentication check for agents [`#387`](https://github.com/PrefectHQ/ui/pull/387)
- Add more information to the name your tenant screen [`#368`](https://github.com/PrefectHQ/ui/pull/368)
- Late count indicator [`#373`](https://github.com/PrefectHQ/ui/pull/373)
#### [2020-10-23](https://github.com/PrefectHQ/ui/compare/2020-10-21...2020-10-23)
- Update Changelog.md [`#375`](https://github.com/PrefectHQ/ui/pull/375)
- Mapped children [`#364`](https://github.com/PrefectHQ/ui/pull/364)
- Add page titles to major pages (dashboard, project, flow, runs) [`#367`](https://github.com/PrefectHQ/ui/pull/367)
- Accept invitations [`#359`](https://github.com/PrefectHQ/ui/pull/359)
- Cloud Hook Prefix [`#363`](https://github.com/PrefectHQ/ui/pull/363)
- Remove flow join from the flow run history query [`#365`](https://github.com/PrefectHQ/ui/pull/365)
#### [2020-10-21](https://github.com/PrefectHQ/ui/compare/2020-10-13...2020-10-21)
- update changelog [`#362`](https://github.com/PrefectHQ/ui/pull/362)
- Update the API connection menu to include helpful links for Server users [`#355`](https://github.com/PrefectHQ/ui/pull/355)
- Server connection state bugfix [`#360`](https://github.com/PrefectHQ/ui/pull/360)
- Whitescreen bugfix [`#354`](https://github.com/PrefectHQ/ui/pull/354)
- "what's new" notifications marked as read [`#344`](https://github.com/PrefectHQ/ui/pull/344)
- Styling [`#330`](https://github.com/PrefectHQ/ui/pull/330)
#### [2020-10-13](https://github.com/PrefectHQ/ui/compare/2020-10-09...2020-10-13)
- Update Changelog.md [`#326`](https://github.com/PrefectHQ/ui/pull/326)
- impose height in last ten runs div to keep row consistency [`#323`](https://github.com/PrefectHQ/ui/pull/323)
- Loading hooks bug [`#321`](https://github.com/PrefectHQ/ui/pull/321)
- BUGFIX: Prevent dashboard flickering on load, missing team slug [`#313`](https://github.com/PrefectHQ/ui/pull/313)
- October package updates [`#317`](https://github.com/PrefectHQ/ui/pull/317)
- Support labels in `flow.run_config` in label warning [`#312`](https://github.com/PrefectHQ/ui/pull/312)
- authnavguard speed [`#303`](https://github.com/PrefectHQ/ui/pull/303)
- Take labels from `flow.run_config` if present [`#309`](https://github.com/PrefectHQ/ui/pull/309)
#### [2020-10-09](https://github.com/PrefectHQ/ui/compare/2020-10-05...2020-10-09)
- Update Changelog.md [`#310`](https://github.com/PrefectHQ/ui/pull/310)
- Invalid state hotfix [`#308`](https://github.com/PrefectHQ/ui/pull/308)
- Add `Run Config` section to flow details [`#307`](https://github.com/PrefectHQ/ui/pull/307)
- BUGFIX: Fix version display in flow page version dropdown [`#305`](https://github.com/PrefectHQ/ui/pull/305)
- use membership id instead of route query for invitation id [`#306`](https://github.com/PrefectHQ/ui/pull/306)
- Fix race condition with onboard/welcome flow [`#304`](https://github.com/PrefectHQ/ui/pull/304)
- Flow run labels [`#300`](https://github.com/PrefectHQ/ui/pull/300)
- add handler for task runs that don't have names [`#299`](https://github.com/PrefectHQ/ui/pull/299)
- Display task run names on flow run page and task run page [`#302`](https://github.com/PrefectHQ/ui/pull/302)
- Apollo url speed racer [`#295`](https://github.com/PrefectHQ/ui/pull/295)
- Restart [`#285`](https://github.com/PrefectHQ/ui/pull/285)
- Auth nav unit tests [`#266`](https://github.com/PrefectHQ/ui/pull/266)
- Pluralization bug [`#298`](https://github.com/PrefectHQ/ui/pull/298)
- Refactor circleCI to inlude a slack notification for prod approvals [`#294`](https://github.com/PrefectHQ/ui/pull/294)
#### [2020-10-05](https://github.com/PrefectHQ/ui/compare/2020-10-01...2020-10-05)
- Update Changelog.md [`#291`](https://github.com/PrefectHQ/ui/pull/291)
- Expose agent persistence for server users [`#249`](https://github.com/PrefectHQ/ui/pull/249)
- update url regex [`#277`](https://github.com/PrefectHQ/ui/pull/277)
- Remove "A nonexistant user" from flow and flow run details for server instances [`#269`](https://github.com/PrefectHQ/ui/pull/269)
#### [2020-10-01](https://github.com/PrefectHQ/ui/compare/2020-09-29...2020-10-01)
- Cut changelog [`#279`](https://github.com/PrefectHQ/ui/pull/279)
- To the dashboard [`#275`](https://github.com/PrefectHQ/ui/pull/275)
- Invitations [`#274`](https://github.com/PrefectHQ/ui/pull/274)
- Allow label editing on older versions of core and disable empty entries [`#273`](https://github.com/PrefectHQ/ui/pull/273)
- Properly redirect to home when server instance has no tenants [`#270`](https://github.com/PrefectHQ/ui/pull/270)
- Update UI connection info on home view [`#271`](https://github.com/PrefectHQ/ui/pull/271)
#### [2020-09-29](https://github.com/PrefectHQ/ui/compare/2020-09-28a...2020-09-29)
- Update Changelog.md [`#268`](https://github.com/PrefectHQ/ui/pull/268)
- Task run table duration fix [`#267`](https://github.com/PrefectHQ/ui/pull/267)
- add flow nav guard test [`#248`](https://github.com/PrefectHQ/ui/pull/248)
- add isCloud to label warning until agent updates are made in core for… [`#264`](https://github.com/PrefectHQ/ui/pull/264)
#### [2020-09-28a](https://github.com/PrefectHQ/ui/compare/2020-09-28...2020-09-28a)
- Cut changelog [`#262`](https://github.com/PrefectHQ/ui/pull/262)
- remove links to Cloud tutorials in server [`#255`](https://github.com/PrefectHQ/ui/pull/255)
- BUGFIX: User invitations with unlimited accounts [`#260`](https://github.com/PrefectHQ/ui/pull/260)
- User store tests [`#245`](https://github.com/PrefectHQ/ui/pull/245)
#### [2020-09-28](https://github.com/PrefectHQ/ui/compare/2020-09-24...2020-09-28)
- Cut changelog ahead of 2020-09-28 release [`#259`](https://github.com/PrefectHQ/ui/pull/259)
- Show user notifications on the notifications tile [`#258`](https://github.com/PrefectHQ/ui/pull/258)
#### [2020-09-24](https://github.com/PrefectHQ/ui/compare/2020-09-23...2020-09-24)
- Cut changelog [`#254`](https://github.com/PrefectHQ/ui/pull/254)
- Fix delete_agent mutation agentId type [`#253`](https://github.com/PrefectHQ/ui/pull/253)
- Log times [`#247`](https://github.com/PrefectHQ/ui/pull/247)
#### [2020-09-23](https://github.com/PrefectHQ/ui/compare/2020-09-17...2020-09-23)
- Cut changelog [`#246`](https://github.com/PrefectHQ/ui/pull/246)
- Apollo endpoint usability update [`#241`](https://github.com/PrefectHQ/ui/pull/241)
- Show version group [`#236`](https://github.com/PrefectHQ/ui/pull/236)
- Agent tab store [`#238`](https://github.com/PrefectHQ/ui/pull/238)
- Labels with agent store [`#217`](https://github.com/PrefectHQ/ui/pull/217)
- Use cache reset method instead of the manual store reset [`#237`](https://github.com/PrefectHQ/ui/pull/237)
#### [2020-09-17](https://github.com/PrefectHQ/ui/compare/2020-09-15...2020-09-17)
- BUGFIX: task concurrency query [`#235`](https://github.com/PrefectHQ/ui/pull/235)
- Performance work (part...3?) [`#232`](https://github.com/PrefectHQ/ui/pull/232)
- Cut changelog [`#233`](https://github.com/PrefectHQ/ui/pull/233)
- BUGFIX: Flow concurrency usage [`#231`](https://github.com/PrefectHQ/ui/pull/231)
- Unit tests store tenant [`#195`](https://github.com/PrefectHQ/ui/pull/195)
- Clear late runs [`#227`](https://github.com/PrefectHQ/ui/pull/227)
#### [2020-09-15](https://github.com/PrefectHQ/ui/compare/2020-09-08...2020-09-15)
- Changelog cut ahead of 2020-09-15 release [`#228`](https://github.com/PrefectHQ/ui/pull/228)
- Provide a way to modify the default server url. [`#219`](https://github.com/PrefectHQ/ui/pull/219)
- Barchart bugfix VU [`#216`](https://github.com/PrefectHQ/ui/pull/216)
- Notifications tile [`#220`](https://github.com/PrefectHQ/ui/pull/220)
- Remove task runs from the upcoming runs query [`#218`](https://github.com/PrefectHQ/ui/pull/218)
- Performance work part 2 [`#212`](https://github.com/PrefectHQ/ui/pull/212)
#### [2020-09-08](https://github.com/PrefectHQ/ui/compare/2020-09-01...2020-09-08)
- Cut changelog [`#209`](https://github.com/PrefectHQ/ui/pull/209)
- Performance work [`#201`](https://github.com/PrefectHQ/ui/pull/201)
- Show the token name on the agent card instead of the token id [`#200`](https://github.com/PrefectHQ/ui/pull/200)
- Add flow concurrency page [`#199`](https://github.com/PrefectHQ/ui/pull/199)
- Filtering scheduled flows from the heartbeattimeline [`#188`](https://github.com/PrefectHQ/ui/pull/188)
- auth0 Vuex store unit tests [`#162`](https://github.com/PrefectHQ/ui/pull/162)
- Some more GraphQL cleanup [`#193`](https://github.com/PrefectHQ/ui/pull/193)
- improve approve button [`#192`](https://github.com/PrefectHQ/ui/pull/192)
- Membership management tweaks [`#190`](https://github.com/PrefectHQ/ui/pull/190)
#### [2020-09-01](https://github.com/PrefectHQ/ui/compare/2020-08-31a...2020-09-01)
- Cut changelog [`#189`](https://github.com/PrefectHQ/ui/pull/189)
- Fix mapped children restart from failure bug [`#187`](https://github.com/PrefectHQ/ui/pull/187)
- Make some of the flow run restart dialog code clearer [`#186`](https://github.com/PrefectHQ/ui/pull/186)
- Unit tests store api [`#127`](https://github.com/PrefectHQ/ui/pull/127)
- Rename Mark As -> Set State everywhere [`#183`](https://github.com/PrefectHQ/ui/pull/183)
- Add link to task run page from gantt chart [`#185`](https://github.com/PrefectHQ/ui/pull/185)
- Unit tests store license [`#164`](https://github.com/PrefectHQ/ui/pull/164)
- Order params [`#176`](https://github.com/PrefectHQ/ui/pull/176)
#### [2020-08-31a](https://github.com/PrefectHQ/ui/compare/2020-08-31...2020-08-31a)
- Cut changelog [`#181`](https://github.com/PrefectHQ/ui/pull/181)
- August package updates [`#180`](https://github.com/PrefectHQ/ui/pull/180)
- Display # of mapped children (when available) [`#179`](https://github.com/PrefectHQ/ui/pull/179)
#### [2020-08-31](https://github.com/PrefectHQ/ui/compare/2020-08-28...2020-08-31)
- Cut changelog [`#178`](https://github.com/PrefectHQ/ui/pull/178)
- Scrollbars update [`#177`](https://github.com/PrefectHQ/ui/pull/177)
- remove requirement that api token name is more than 2 characters [`#174`](https://github.com/PrefectHQ/ui/pull/174)
#### [2020-08-28](https://github.com/PrefectHQ/ui/compare/2020-08-27...2020-08-28)
- BUGFIX: Flow page details tile [`#171`](https://github.com/PrefectHQ/ui/pull/171)
- Cut changelog [`#170`](https://github.com/PrefectHQ/ui/pull/170)
- Durations [`#169`](https://github.com/PrefectHQ/ui/pull/169)
- Unit tests store refresh [`#165`](https://github.com/PrefectHQ/ui/pull/165)
- State manipulation improvements [`#163`](https://github.com/PrefectHQ/ui/pull/163)
- Fix membership invitation toasts [`#166`](https://github.com/PrefectHQ/ui/pull/166)
#### [2020-08-27](https://github.com/PrefectHQ/ui/compare/2020-08-26...2020-08-27)
- Cut changelog [`#161`](https://github.com/PrefectHQ/ui/pull/161)
- Don't show maintenance mode on load (unless it's true) [`#159`](https://github.com/PrefectHQ/ui/pull/159)
- Remove run count [`#158`](https://github.com/PrefectHQ/ui/pull/158)
#### [2020-08-26](https://github.com/PrefectHQ/ui/compare/2020-08-25...2020-08-26)
- Cut changelog [`#156`](https://github.com/PrefectHQ/ui/pull/156)
- Maintenance mode [`#155`](https://github.com/PrefectHQ/ui/pull/155)
#### [2020-08-25](https://github.com/PrefectHQ/ui/compare/2020-08-24...2020-08-25)
- Cut changelog ahead of release [`#143`](https://github.com/PrefectHQ/ui/pull/143)
- Add Flow ID to the Flow Details tile [`#142`](https://github.com/PrefectHQ/ui/pull/142)
- Include stripe [`#140`](https://github.com/PrefectHQ/ui/pull/140)
#### [2020-08-24](https://github.com/PrefectHQ/ui/compare/2020-08-22...2020-08-24)
- Cut changelog ahead of release [`#138`](https://github.com/PrefectHQ/ui/pull/138)
- Add cancelling state [`#137`](https://github.com/PrefectHQ/ui/pull/137)
#### [2020-08-22](https://github.com/PrefectHQ/ui/compare/2020-08-20...2020-08-22)
- Logs refresh [`#128`](https://github.com/PrefectHQ/ui/pull/128)
- Alert and agent store/vuex unit tests [`#124`](https://github.com/PrefectHQ/ui/pull/124)
#### [2020-08-20](https://github.com/PrefectHQ/ui/compare/2020-08-19...2020-08-20)
- Cut changelog ahead of release [`#125`](https://github.com/PrefectHQ/ui/pull/125)
- Tenant switch [`#123`](https://github.com/PrefectHQ/ui/pull/123)
#### [2020-08-19](https://github.com/PrefectHQ/ui/compare/2020-08-18...2020-08-19)
- Fix inputs on task concurrency limiting mutation [`#122`](https://github.com/PrefectHQ/ui/pull/122)
### 2020-08-18
- Cut changelog [`#121`](https://github.com/PrefectHQ/ui/pull/121)
- Update CircleCI to deploy prod artifacts on tag [`#120`](https://github.com/PrefectHQ/ui/pull/120)
- Hopefully fix permissions for the deployment buckets [`#119`](https://github.com/PrefectHQ/ui/pull/119)
- Update build script to export current timestamp [`#118`](https://github.com/PrefectHQ/ui/pull/118)
- Add auto-deploy to staging job [`#117`](https://github.com/PrefectHQ/ui/pull/117)
- Labels [`#106`](https://github.com/PrefectHQ/ui/pull/106)
- Various Updates [`#116`](https://github.com/PrefectHQ/ui/pull/116)
- Add Cloud alert [`#108`](https://github.com/PrefectHQ/ui/pull/108)
- Update tenant CLI command in CreateTenant section [`#105`](https://github.com/PrefectHQ/ui/pull/105)
- Update the schedule toggle component to use an optimistic response [`#104`](https://github.com/PrefectHQ/ui/pull/104)
- Add Created On column to Flow Table [`#103`](https://github.com/PrefectHQ/ui/pull/103)
- fix variable casing on restart button and name restart mutation [`#98`](https://github.com/PrefectHQ/ui/pull/98)
- Flow run tutorial fix [`#96`](https://github.com/PrefectHQ/ui/pull/96)
- Remove toasted [`#95`](https://github.com/PrefectHQ/ui/pull/95)
- Flow Run Cancellation [`#92`](https://github.com/PrefectHQ/ui/pull/92)
- Fix issue with task failures tile having wrong color [`#89`](https://github.com/PrefectHQ/ui/pull/89)
- Fix admin settings references and Cloud Hooks form [`#86`](https://github.com/PrefectHQ/ui/pull/86)
- Fix issue with updating tenant settings [`#84`](https://github.com/PrefectHQ/ui/pull/84)
- Use template for versions query, add id to query to prevent invariant violations in the apollo cache [`#83`](https://github.com/PrefectHQ/ui/pull/83)
- Add a netlify config [`#82`](https://github.com/PrefectHQ/ui/pull/82)
- Update wording in the license section of the README [`#81`](https://github.com/PrefectHQ/ui/pull/81)
- Schematics update [`#77`](https://github.com/PrefectHQ/ui/pull/77)
- Extend late window by a little [`#76`](https://github.com/PrefectHQ/ui/pull/76)
- Team settings fixes [`#75`](https://github.com/PrefectHQ/ui/pull/75)
- Team fixes [`#72`](https://github.com/PrefectHQ/ui/pull/72)
- Tag images with master instead of alpha [`#73`](https://github.com/PrefectHQ/ui/pull/73)
- Delete fix [`#74`](https://github.com/PrefectHQ/ui/pull/74)
- User profile fix [`#71`](https://github.com/PrefectHQ/ui/pull/71)
- README.md [`#51`](https://github.com/PrefectHQ/ui/pull/51)
- Universal deploy bugfix [`#70`](https://github.com/PrefectHQ/ui/pull/70)
- Flow run tutorial bugfix [`#69`](https://github.com/PrefectHQ/ui/pull/69)
- Typography fix [`#68`](https://github.com/PrefectHQ/ui/pull/68)
- In Progress tile [`#67`](https://github.com/PrefectHQ/ui/pull/67)
- Errors tile change [`#66`](https://github.com/PrefectHQ/ui/pull/66)
- Heights and spacing [`#65`](https://github.com/PrefectHQ/ui/pull/65)
- Use and display state timestamp on the failed flow tile [`#64`](https://github.com/PrefectHQ/ui/pull/64)
- Gantt chart [`#59`](https://github.com/PrefectHQ/ui/pull/59)
- Fix spacing on tenant creation section [`#62`](https://github.com/PrefectHQ/ui/pull/62)
- Update frame-ancestors csp [`#61`](https://github.com/PrefectHQ/ui/pull/61)
- Update padding and height [`#60`](https://github.com/PrefectHQ/ui/pull/60)
- Updates, fixes, and performance improvements [`#58`](https://github.com/PrefectHQ/ui/pull/58)
- Add redirects file to public folder to handle netlify redirects [`#46`](https://github.com/PrefectHQ/ui/pull/46)
- Sidebar removal [`#42`](https://github.com/PrefectHQ/ui/pull/42)
- dont install node in the deploy step [`#57`](https://github.com/PrefectHQ/ui/pull/57)
- npm run build [`#55`](https://github.com/PrefectHQ/ui/pull/55)
- upgrade node [`#56`](https://github.com/PrefectHQ/ui/pull/56)
- deploy from master not dev [`#54`](https://github.com/PrefectHQ/ui/pull/54)
- deploy to dev [`#48`](https://github.com/PrefectHQ/ui/pull/48)
- Disable committing vscode editor settings to the repo [`#53`](https://github.com/PrefectHQ/ui/pull/53)
- Speed up failures tile [`#44`](https://github.com/PrefectHQ/ui/pull/44)
- Speed up task failures tile [`#45`](https://github.com/PrefectHQ/ui/pull/45)
- Fix ordering for last 10 runs (and possible speedup?) [`#50`](https://github.com/PrefectHQ/ui/pull/50)
- Speed up last task run query [`#49`](https://github.com/PrefectHQ/ui/pull/49)
- Remove LogRocket from Server deployments [`#43`](https://github.com/PrefectHQ/ui/pull/43)
- Add Docker related things [`#41`](https://github.com/PrefectHQ/ui/pull/41)
- 9 tenant screen [`#30`](https://github.com/PrefectHQ/ui/pull/30)
- Create LICENSE [`#39`](https://github.com/PrefectHQ/ui/pull/39)
- Remove hasura aggregates from flow failure tile [`#29`](https://github.com/PrefectHQ/ui/pull/29)
- Remove pnpm, update package-lock, fix eslintrc [`#28`](https://github.com/PrefectHQ/ui/pull/28)
- Remove cypress from dependencies [`#27`](https://github.com/PrefectHQ/ui/pull/27)
- Skip and then restart polling for global queries [`#20`](https://github.com/PrefectHQ/ui/pull/20)
- Task error improvement [`#23`](https://github.com/PrefectHQ/ui/pull/23)
- Default params [`#24`](https://github.com/PrefectHQ/ui/pull/24)
- Adds concurrency info component [`#21`](https://github.com/PrefectHQ/ui/pull/21)
- fix update membership mutation [`#25`](https://github.com/PrefectHQ/ui/pull/25)
- Error message tile size [`#13`](https://github.com/PrefectHQ/ui/pull/13)
- Add environment variables for stripe, auth0, and logrocket [`#16`](https://github.com/PrefectHQ/ui/pull/16)
- Don't join to task table when querying for last task run [`#17`](https://github.com/PrefectHQ/ui/pull/17)
- Don't join to flow table when querying for last flow run [`#18`](https://github.com/PrefectHQ/ui/pull/18)
- Update 2 (to be merged after Update) [`#8`](https://github.com/PrefectHQ/ui/pull/8)
- Failed Task Tile [`#6`](https://github.com/PrefectHQ/ui/pull/6)
- Update [`#7`](https://github.com/PrefectHQ/ui/pull/7)
- Allow switching between backends [`#5`](https://github.com/PrefectHQ/ui/pull/5)
- 2 [`#4`](https://github.com/PrefectHQ/ui/pull/4)
- 1 [`#3`](https://github.com/PrefectHQ/ui/pull/3)
- Dev [`#2`](https://github.com/PrefectHQ/ui/pull/2)
- Hello world! [`#1`](https://github.com/PrefectHQ/ui/pull/1)
================================================
FILE: Dockerfile
================================================
# syntax = docker/dockerfile:1.0-experimental
FROM node:14.7.0 as ui
# Set version args from CMD input
ARG PREFECT_VERSION=development
ENV PREFECT_VERSION=$PREFECT_VERSION
# Write the arg into the .env file
RUN echo "VUE_APP_PREFECT_VERSION=${PREFECT_VERSION}" >> .env
# Move application files to the app directory
COPY ./ /app
COPY ./LICENSE LICENSE
# Switch to the app directory
WORKDIR /app
# Install dependencies
RUN npm ci
# Build static files
RUN npm run build
FROM nginx:stable
# Copy the previously built static files to the nginx container
COPY --from=ui /app/dist /var/www
# Replace the default nginx config
# with the one we've defined here
COPY ./nginx.conf /etc/nginx/conf.d/default.conf
# Copy and allow all users to execute both the script to start the server
# and the script that intercepts termination requests
COPY ./start_server.sh /start_server.sh
RUN chmod a+x /start_server.sh
COPY ./intercept.sh /intercept.sh
RUN chmod a+x /intercept.sh
# Allow write access to www to ensure we can set the configuration file.
# This is to enable rootless mode
ARG UID=101
ARG GID=101
RUN sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf \
&& sed -i '/user nginx;/d' /etc/nginx/nginx.conf \
&& sed -i 's,/var/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf \
&& sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf
RUN chown -R $UID:0 /var/cache/nginx \
&& chmod -R g+w /var/cache/nginx \
&& chown -R $UID:0 /etc/nginx \
&& chmod -R g+w /etc/nginx \
&& chown -R $UID:0 /var/www \
&& chmod -R g+w /var/www
USER $UID
STOPSIGNAL SIGINT
CMD ["/intercept.sh"]
================================================
FILE: LICENSE
================================================
Prefect Community License
Version 1.0
A copy of this license may be found at
https://www.prefect.io/legal/prefect-community-license
The Prefect Community License (this “Agreement”) sets forth the terms on which
Prefect Technologies, Inc. (“Prefect”) makes available Prefect source code
through one or more files each within a directory or containing a header stating
the contents are subject to Prefect copyright (the “Software”). BY INSTALLING,
DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY OF THE SOFTWARE, YOU AGREE TO
THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO SUCH TERMS
AND CONDITIONS, YOU MUST NOT USE THE SOFTWARE. IF YOU ARE RECEIVING THE
SOFTWARE ON BEHALF OF A LEGAL ENTITY, YOU REPRESENT AND WARRANT THAT YOU HAVE
THE ACTUAL AUTHORITY TO AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT ON
BEHALF OF SUCH ENTITY. “Licensee” as used herein means you, an individual, or
the entity on behalf of whom you are receiving the Software.
1. LICENSE GRANT AND LIMITATIONS
A. License. Provided that Licensee remains in compliance with the terms and
conditions that are set forth in this Agreement, Prefect grants you the
following limited, revocable, non-exclusive, non-transferrable,
non-sublicensable, worldwide license during the term of this Agreement to (a)
only use the Software internally; (b) prepare modifications and derivative
works of the Software; (c) distribute the Software (including without
limitation in source code or object code form); and (d) reproduce copies of
the Software (the “License”).
B. Limitations on License Grant. In consideration of the rights granted
herein by this Agreement, Licensee’s distribution of the Software is subject
to the following conditions:
i. Licensee is not granted the right to, and Licensee shall not, exercise
the License for an Excluded Purpose. For purposes of this Agreement,
“Excluded Purpose” includes, but is not limited to, using the Software, or
any derivative works thereof, to make available any software-as-a-service,
platform-as-a-service, infrastructure-as-a-service or other similar
service that competes with Prefect products or services.
ii. Licensee must cause any Software modified by Licensee to carry
prominent notices stating that Licensee modified the Software; and
iii. On any copy of the Software distributed by the Licensee, Licensee
shall reproduce and not remove or alter all Prefect or third-party
copyright or other notices contained in the Software, and Licensee must
provide the following notice with any copy:
“This software is made available by Prefect Technologies, Inc.,
under the terms of the Prefect Community License Agreement located
at https://www.prefect.io/legal/prefect-community-license . BY
INSTALLING, DOWNLOADING, ACCESSING, USING OR DISTRIBUTING ANY OF THE
SOFTWARE, YOU AGREE TO THE TERMS OF SUCH LICENSE AGREEMENT.”
C. Modifications. Licensee may add its own copyright notices to
modifications made by Licensee and may provide additional or different
license terms and conditions for use, reproduction, or distribution of
Licensee’s modifications. While redistributing the Software or modifications
thereof, Licensee may choose to offer, for a fee or free of charge, support,
warranty, indemnity, or other obligations. Licensee, and not Prefect, will
be solely responsible for any such obligations.
D. No Sublicense. The License does not include any right to sublicense the
Software. Each recipient to which Licensee provides the Software, however,
may exercise the License so long as such recipient agrees to the terms and
conditions of this Agreement.
2. TERM AND TERMINATION
A. Term. This Agreement will continue unless and until earlier terminated as
set forth herein.
B. Termination. If Licensee breaches any of the conditions or obligations
set forth under this Agreement, this Agreement shall automatically terminate,
and the License rights granted therein shall be automatically and permanently
revoked.
3. INTELLECTUAL PROPERTY
As between the parties, Prefect retains all right, title, and interest in the
Software, and all intellectual property rights contained therein, regardless of
whether such intellectual property rights are registered or unregistered.
Prefect hereby similarly reserves all rights in its trademarks and service
marks, and all goodwill developed therefrom shall inure to the benefit of
Prefect; no licenses therein are granted by way of this Agreement. Prefect
hereby reserves all rights not expressly granted to Licensee by way of this
Agreement.
4. DISCLAIMER OF WARRANTIES
EXCEPT AS SPECIFICALLY PROVIDED FOR HEREIN, THE SOFTWARE AND ANY MATERIALS ARE
PROVIDED “AS IS”. PREFECT AND ANY THIRD-PARTY PROVIDERS SPECIFICALLY DISCLAIM,
WITHOUT LIMITATION, ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED,
INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT OR THOSE WARRANTIES ARISING
FROM A COURSE OF PERFORMANCE, A COURSE OF DEALING OR TRADE USAGE. EXCEPT AS
EXPRESSLY PROVIDED HEREIN, PREFECT MAKES NO REPRESENTATION OR WARRANTY (I) AS TO
THE SOFTWARE; (II) AS TO THE RESULTS TO BE ATTAINED BY LICENSEE OR ANY THIRD
PARTY FROM THE SOFTWARE; (III) AS TO THE LIFE OF ANY URL USED BY THE SOFTWARE;
OR (IV) THAT ALL USES THAT CAN BE MADE OF THE SOFTWARE COMPLY WITH APPLICABLE
LAW; RATHER, IT IS LICENSEE’S RESPONSIBILITY TO CONFORM ITS USE OF THE SOFTWARE
WITH THE LAW. LICENSEE ACKNOWLEDGES THAT CERTAIN SOFTWARE AND EQUIPMENT USED BY
IT MAY NOT BE CAPABLE OF SUPPORTING CERTAIN FEATURES OF THE SOFTWARE. EACH PARTY
HERETO HEREBY ACKNOWLEDGES THAT IT HAS NOT RELIED UPON ANY REPRESENTATIONS OR
WARRANTIES MADE BY THE OTHER EXCEPT AS SPECIFICALLY SET FORTH IN THIS AGREEMENT.
5. LIMITATIONS ON LIABILITY
EXCEPT FOR A BREACH OF SECTION 6 AND REGARDLESS OF THE FORM OF ACTION, IN NO
EVENT WILL EITHER PARTY (OR ITS OFFICERS, DIRECTORS, EMPLOYEES, MEMBERS,
MANAGERS OR AGENTS) BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL, PUNITIVE,
EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, LOST PROFITS,
LOST DATA, BUSINESS INTERRUPTION, LOSS OF REPUTATION OR COSTS OF SUBSTITUTE
SERVICES) THAT THE OTHER PARTY MAY INCUR OR EXPERIENCE ARISING OUT OF OR
RELATING TO THE SOFTWARE, THIS AGREEMENT OR ITS TERMINATION, EVEN IF ADVISED OF
THE POSSIBILITY THEREOF. FURTHER, PREFECT SHALL NOT BE LIABLE (AND ITS OFFICERS,
DIRECTORS, MEMBERS, MANAGERS, EMPLOYEES AND AGENTS, AND AFFILIATES THEREOF) TO
LICENSEE FOR DAMAGES FOR ANY CAUSE WHATSOEVER NOTWITHSTANDING THE FORM OF SUCH
CLAIMS (INCLUDING NEGLIGENCE).
6. MISCELLANEOUS
A. Governing law and venue. This Agreement shall be governed by and construed
in accordance with the laws of the State of Delaware applicable to contracts
to be performed entirely within Delaware. Any action or proceeding to enforce
or arising out of this Agreement shall be commenced in the state and federal
courts located in Delaware. The parties hereto consent to the exclusive
jurisdiction of such courts, agree that venue will be proper in such courts
and waive any objections based upon forum non conveniens. The choice of
forum set forth in this Section 7 will not be deemed to preclude the
enforcement of any judgment obtained in such forum or the taking of any
action under this Agreement to enforce such judgment in any other
jurisdiction.
B. Export Control Restrictions. Licensee warrants that its use of the
Software shall comply with all export control laws of the United States and
Licensee agrees to indemnify, defend and hold Prefect harmless from any
liability, claim, loss or expense suffered or incurred by Prefect as a result
of a breach of this warranty.
C. Assignment. This Agreement shall be binding upon Licensee’s successors and
permitted assigns; neither this Agreement nor any right or obligation arising
under it may be assigned, licensed, sublicensed, sold, mortgaged, pledged or
otherwise disposed of (collectively, a “disposition”) by Licensee without the
prior written consent of Prefect, and any attempted disposition shall be null
and void. Prefect may freely assign its rights under this Agreement to any
third party.
D. Entire Agreement; Modifications; No Waiver. This Agreement constitutes
the entire Agreement of the parties with respect to the subject matter
hereof, supersedes any and all existing agreements relating to the subject
matter hereof, and may not be modified or amended except by a written
instrument signed by both parties. No failure or delay in exercising any
right, power or remedy under the Agreement shall operate as a waiver thereof,
nor shall any single or partial exercise of any right under this Agreement
preclude any other or further exercise thereof or the exercise of any other
right.
E. Severability. If any provision of this Agreement shall be held to be
illegal, invalid or unenforceable, such illegality, invalidity or
unenforceability shall apply only to such provision and shall not in any
manner affect or render illegal, invalid or unenforceable any other provision
of this Agreement, and this Agreement shall be reformed, construed and
enforced to the fullest extent as if any such illegal, invalid or
unenforceable provision were not contained herein.
F. Survival. The obligations under Sections 3 and 6.B, as well as any other
provision that by its nature is intended to survive, shall survive the
termination or expiration of this Agreement.
================================================
FILE: README.md
================================================
<p align="center" >
<img src="https://images.ctfassets.net/gm98wzqotmnx/3Ufcb7yYqcXBDlAhJ30gce/c237bb3254190795b30bf734f3cbc1d4/prefect-logo-full-gradient.svg" width="500" style="max-width: 500px;" alt="Prefect Logo">
</p>
<p align="center">
<a href="https://app.netlify.com/sites/prefect-ui/deploys">
<img src="https://api.netlify.com/api/v1/badges/effeac10-a905-46ee-8e93-b59454ecc8bb/deploy-status" alt="Netlify Build Status" alt="Netlify status badge">
</a>
<a href="https://prefect.io/slack">
<img src="https://prefect-slackin.herokuapp.com/badge.svg" alt="Slack members status badge">
</a>
</p>
<p align="center">
<a href="https://prefect.io">
<img src="https://images.ctfassets.net/gm98wzqotmnx/3mwImS57DEydMQXU1FCGG/6e36e2d49faf78cf4a166f123c2c43ca/image__5_.png" height="27" alt="Powered By Prefect">
</a>
</p>
# Prefect UI
Note: This repo is for Prefect UI development. To run the Prefect UI as part of [Prefect Server](https://github.com/PrefectHQ/server/), install [Prefect](https://github.com/prefecthq/prefect) and run `prefect server start`.
### Installation
Prefect UI requires [Node.js](https://nodejs.org/) v14 and [npm](https://www.npmjs.com/) v6 to run.
You'll also need an API token from a professional Font Awesome account to build the project locally; this token should be placed in a git-ignored `.env` file (e.g. `.env.development.local`) as it's referenced by `.npmrc` for accessing the private FA npm registry.
Before starting the development server, you'll need to install project dependencies:
```sh
$ git clone https://github.com/PrefectHQ/ui.git
$ cd ui
$ npm install
```
Then, you can start the Prefect UI development server:
```sh
$ npm run serve
```
The Prefect UI should be available at [http://localhost:8080](http://localhost:8080); changes to the code in the `src/` directory will result in a hot reload of the application. For more information on hot-reloading or the development server, take a look at the [Webpack](https://webpack.js.org/) and [Vue CLI](https://cli.vuejs.org/) documentation.
### Testing
Prefect UI contains various unit tests for things like the Vuex store and Vue Router middleware; running theses tests locally requires [Jest](https://jestjs.io/). We recommend using a node package executor like [npx](https://www.npmjs.com/package/npx) for this dependency.
Running all unit tests:
```
$ npx jest
```
Running specific tests:
```
$ npx jest auth
# This will run tests found in middleware/authNavGuard.spec.js, store/auth.spec.js, and store/auth0.spec.js
```
### Development
We welcome contributions!
Prefect UI is built on [Vue.js](https://vuejs.org/), a modern front-end JavaScript framework. We generally depend on Google's Material Design guidelines, drawing on and extending the [Vuetify](https://vuetifyjs.com/en/) component library.
#### Building for production
For production builds:
```sh
$ npm run build
```
Compiled and minified code and assets are placed in the `dist/` folder; `dist/index.html` is the built application's entrypoint.
### The Prefect UI Docker image
This repo comes with a Dockerfile for building a UI image; it's generally not recommended to build this yourself but to instead use one of the versioned images found in the [PrefectHQ Dockerhub registry](https://hub.docker.com/r/prefecthq/ui).
#### Serving the built application
The Prefect UI requires a functional Prefect API to operate. For details on starting Prefect Server, visit the [docs](https://docs.prefect.io/api/latest/#ui-and-server).
#### Submitting a PR
PR Titles should include a prefix that sets out the purpose of the PR. Most PRs will begin with the prefix Bugfix or Feature. The title should describe the work and purpose of the PR clearly and succinctly and should be appropriate and safe for the Prefect community.
###### Example
Feature: Add create flow run method to automations
## License
Prefect UI is lovingly made by the team at [Prefect](https://www.prefect.io) and licensed under the [Prefect Community License](https://www.prefect.io/legal/prefect-community-license/). For information on how you can use, extend, and depend on Prefect UI to automate your data, take a look at our [license](https://github.com/PrefectHQ/ui/blob/master/LICENSE) or [contact us](https://www.prefect.io/pricing#contact).
================================================
FILE: babel.config.js
================================================
module.exports = {
presets: [['@vue/app', { useBuiltIns: 'entry' }]],
plugins: [
'@babel/plugin-proposal-nullish-coalescing-operator',
'@babel/plugin-proposal-optional-chaining'
]
}
================================================
FILE: changelog-template.hbs
================================================
# Changelog
{{#each releases}}
{{#if href}}
###{{#unless major}}#{{/unless}} [{{title}}]({{href}})
{{else}}
### {{title}}
{{/if}}
{{#if summary}}
{{summary}}
{{/if}}
{{#each merges}}
- {{#if commit.breaking}}**Breaking change:** {{/if}}{{message}}{{#if href}} [`#{{id}}`]({{href}}){{/if}}
{{/each}}
{{#each fixes}}
- {{#if commit.breaking}}**Breaking change:** {{/if}}{{commit.subject}}{{#each fixes}}{{#if href}} [`#{{id}}`]({{href}}){{/if}}{{/each}}
{{/each}}
{{#each commits}}
- {{#if breaking}}**Breaking change:** {{/if}}{{subject}}{{#if href}} [`{{shorthash}}`]({{href}}){{/if}}
{{/each}}
{{/each}}
================================================
FILE: export.sh
================================================
#!/bin/sh
touch .env
echo "" >> .env
cat ".salesforce_env_${VUE_APP_ENVIRONMENT}" | while read line; do
echo $line >> .env
done
================================================
FILE: file-downloader.js
================================================
const { https } = require('follow-redirects')
const fs = require('fs')
const downloads = [
{
filePath: './src/styles/graphiql.css',
url: 'https://unpkg.com/graphiql@1.4.7/graphiql.min.css'
},
{
filePath: './public/fonts/material-icons.ttf',
url:
'https://fonts.gstatic.com/s/materialicons/v76/flUhRq6tzZclQEJ-Vdg-IuiaDsNZ.ttf'
},
{
filePath: './public/fonts/material-icons-outlined.otf',
url:
'https://fonts.gstatic.com/s/materialiconsoutlined/v44/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcd.otf'
},
{
filePath: './public/fonts/roboto-100.ttf',
url: 'https://fonts.gstatic.com/s/roboto/v20/KFOkCnqEu92Fr1MmgWxP.ttf'
},
{
filePath: './public/fonts/roboto-300.ttf',
url: 'https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmSU5vAw.ttf'
},
{
filePath: './public/fonts/roboto-400.ttf',
url: 'https://fonts.gstatic.com/s/roboto/v20/KFOmCnqEu92Fr1Me5Q.ttf'
},
{
filePath: './public/fonts/roboto-500.ttf',
url: 'https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmEU9vAw.ttf'
},
{
filePath: './public/fonts/roboto-700.ttf',
url: 'https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlvAw.ttf'
}
]
downloads.forEach(loc => {
const file = fs.createWriteStream(loc.filePath)
https.get(loc.url, loc.options, function(res) {
res.pipe(file)
file.on('finish', function() {
file.close()
})
})
})
================================================
FILE: intercept.sh
================================================
#!/usr/bin/env bash
function _intercept {
kill -TERM $child
exit 0
}
trap _intercept SIGTERM
trap _intercept SIGINT
trap _intercept SIGQUIT
trap _intercept EXIT
/start_server.sh & tail -f /dev/null & child=$!
wait "$child"
================================================
FILE: jest.config.js
================================================
// Temporary workaround re: https://github.com/vuejs/vue-cli/issues/1879
process.env.VUE_CLI_BABEL_TARGET_NODE = true
process.env.VUE_CLI_BABEL_TRANSPILE_MODULES = true
process.env.VUE_APP_GRAPHQL_HTTP = 'http://test.io'
module.exports = {
automock: false,
timers: 'fake',
collectCoverageFrom: [
'src/**/*.{js,vue}',
'!**/node_modules/**',
'!**/dist/**',
'!src/main.js',
'!src/router.js'
],
coverageDirectory: 'tests/__coverage__',
moduleFileExtensions: ['js', 'jsx', 'json', 'vue'],
transform: {
'^.+\\.vue$': 'vue-jest',
'.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$':
'jest-transform-stub',
'^.+\\.jsx?$': 'babel-jest'
},
moduleNameMapper: {
'\\.(css|scss|less)$': '<rootDir>/__mocks__/styleMock.js',
'^@/(.*)$': '<rootDir>/src/$1'
},
transformIgnorePatterns: ['<rootDir>/node_modules/'],
roots: ['src', 'tests'],
setupFiles: ['jest-localstorage-mock', 'jest-fetch-mock', 'jest-canvas-mock'],
setupFilesAfterEnv: ['<rootDir>/tests/jestSetup.js'],
snapshotSerializers: ['jest-serializer-vue'],
testMatch: [
'**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)'
],
testURL: 'http://localhost/'
}
================================================
FILE: netlify.toml
================================================
[[redirects]]
from = "/*"
to = "/index.html"
status = 200
[[headers]]
# Define which paths this specific [[headers]] block will cover.
for = "/*"
[headers.values]
# X-Content-Type-Options controls whether browsers attempt to detect
# the content type, rather than relyihng on the Content-Type header.
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options
X-Content-Type-Options = "nosniff"
# Strict-Transport-Security to require HTTPS connections in supported
# browsers. These settings are required to be eligible for inclusion
# in the HSTS Preload list; see: https://hstspreload.org/
Strict-Transport-Security = """\
max-age=31536000; \
includeSubDomains; \
preload \
"""
# Content-Security-Policy to prevent XSS attacks.
Content-Security-Policy = """ \
default-src \
* \
; \
script-src \
'self' \
'unsafe-eval' \
'unsafe-inline' \
https://aleysian-prefect.cs29.force.com \
https://c.la1-c1cs-ph2.salesforceliveagent.com \
https://c.la1-c2-ia2.salesforceliveagent.com \
https://cdn.lr-ingest.io \
https://d.la1-c1cs-ph2.salesforceliveagent.com \
https://d.la1-c2-ia2.salesforceliveagent.com \
https://d.la1-c2-ph2.salesforceliveagent.com \
https://d.la2-c1-ia5.salesforceliveagent.com \
https://d.la3-c1cs-ia2.salesforceliveagent.com
https://d.la3-c1cs-ia5.salesforceliveagent.com \
https://js.stripe.com \
https://partial-prefect.cs1.force.com \
https://prefect--aleysian.my.salesforce.com \
https://prefect--partial.my.salesforce.com \
https://prefect--partial.sandbox.my.salesforce.com \
https://prefect--partial.sandbox.my.site.com \
https://prefect.force.com \
https://prefect.my.salesforce-site.com \
https://prefect.my.salesforce.com \
https://prefect.my.site.com \
https://service.force.com \
https://static.lightning.force.com \
; \
script-src-elem \
'self' \
'unsafe-eval' \
'unsafe-inline' \
https://aleysian-prefect.cs29.force.com \
https://c.la1-c1cs-ph2.salesforceliveagent.com \
https://c.la1-c2-ia2.salesforceliveagent.com \
https://cdn.lr-ingest.io \
https://d.la1-c1cs-ph2.salesforceliveagent.com \
https://d.la1-c2-ia2.salesforceliveagent.com \
https://d.la1-c2-ph2.salesforceliveagent.com \
https://d.la2-c1-ia5.salesforceliveagent.com \
https://d.la3-c1cs-ia2.salesforceliveagent.com
https://d.la3-c1cs-ia5.salesforceliveagent.com \
https://js.stripe.com \
https://partial-prefect.cs1.force.com \
https://prefect--aleysian.my.salesforce.com \
https://prefect--partial.my.salesforce.com \
https://prefect--partial.sandbox.my.salesforce.com \
https://prefect--partial.sandbox.my.site.com \
https://prefect.force.com \
https://prefect.my.salesforce-site.com \
https://prefect.my.salesforce.com \
https://prefect.my.site.com \
https://service.force.com \
https://static.lightning.force.com \
; \
img-src \
* \
data: \
; \
style-src \
'self' \
'unsafe-inline' \
https://aleysian-prefect.cs29.force.com \
https://c.la1-c1cs-ph2.salesforceliveagent.com \
https://c.la1-c2-ia2.salesforceliveagent.com \
https://cdn.lr-ingest.io \
https://d.la1-c1cs-ph2.salesforceliveagent.com \
https://d.la1-c2-ia2.salesforceliveagent.com \
https://d.la1-c2-ph2.salesforceliveagent.com \
https://d.la2-c1-ia5.salesforceliveagent.com \
https://d.la3-c1cs-ia2.salesforceliveagent.com
https://d.la3-c1cs-ia5.salesforceliveagent.com \
https://js.stripe.com \
https://partial-prefect.cs1.force.com \
https://prefect--aleysian.my.salesforce.com \
https://prefect--partial.my.salesforce.com \
https://prefect--partial.sandbox.my.salesforce.com \
https://prefect--partial.sandbox.my.site.com \
https://prefect.force.com \
https://prefect.my.salesforce-site.com \
https://prefect.my.salesforce.com \
https://prefect.my.site.com \
https://service.force.com \
https://static.lightning.force.com \
; \
style-src-elem \
'self' \
'unsafe-inline' \
https://aleysian-prefect.cs29.force.com \
https://c.la1-c1cs-ph2.salesforceliveagent.com \
https://c.la1-c2-ia2.salesforceliveagent.com \
https://cdn.lr-ingest.io \
https://d.la1-c1cs-ph2.salesforceliveagent.com \
https://d.la1-c2-ia2.salesforceliveagent.com \
https://d.la1-c2-ph2.salesforceliveagent.com \
https://d.la2-c1-ia5.salesforceliveagent.com \
https://d.la3-c1cs-ia2.salesforceliveagent.com
https://d.la3-c1cs-ia5.salesforceliveagent.com \
https://js.stripe.com \
https://partial-prefect.cs1.force.com \
https://prefect--aleysian.my.salesforce.com \
https://prefect--partial.my.salesforce.com \
https://prefect--partial.sandbox.my.salesforce.com \
https://prefect--partial.sandbox.my.site.com \
https://prefect.force.com \
https://prefect.my.salesforce-site.com \
https://prefect.my.salesforce.com \
https://prefect.my.site.com \
https://service.force.com \
https://static.lightning.force.com \
; \
font-src \
data: \
'self' \
; \
frame-ancestors \
'self' \
; \
frame-src \
'self' \
https://*.okta.com \
https://*.prefect.io \
https://js.stripe.com \
https://prefect--partial.my.salesforce.com \
https://prefect--partial.sandbox.my.salesforce.com \
https://prefect.auth0.com \
https://prefect.my.salesforce.com \
https://service.force.com \
; \
child-src \
data: \
blob: \
; \
worker-src \
'self' \
data: \
blob: \
; \
"""
# Referrer-Policy controls the Referer header in requests.
#
# same-origin allows analytics tools to understand user journeys.
Referrer-Policy = "same-origin"
# X-Permitted-Cross-Domain-Policies controls whether this site can be
# embedded into Flash applications or PDF documents.
X-Permitted-Cross-Domain-Policies = "none"
# Permissions-Policy controls the features that the site can request.
#
# https://developer.chrome.com/en/docs/privacy-sandbox/permissions-policy/
# https://github.com/w3c/webappsec-permissions-policy/blob/main/features.md
#
# payment
# https://js.stripe.com - supports PaymentRequest
Permissions-Policy = """\
accelerometer=(), \
ambient-light-sensor=(), \
autoplay=(), \
battery=(), \
camera=(), \
cross-origin-isolated=(), \
display-capture=(), \
document-domain=(), \
encrypted-media=(), \
execution-while-not-rendered=(), \
execution-while-out-of-viewport=(), \
fullscreen=(), \
geolocation=(), \
gyroscope=(), \
hid=(), \
idle-detection=(), \
magnetometer=(), \
microphone=(), \
midi=(), \
navigation-override=(), \
payment=(self "https://js.stripe.com"), \
picture-in-picture=(), \
publickey-credentials-get=(), \
screen-wake-lock=(), \
serial=(), \
sync-xhr=(), \
usb=(), \
web-share=(), \
xr-spatial-tracking=() \
"""
================================================
FILE: nginx.conf
================================================
server {
# We'll want to make this dynamic at some point
listen 8080;
root /var/www;
index index.html;
location / {
try_files $uri /index.html;
}
}
================================================
FILE: package.json
================================================
{
"name": "prefect-ui",
"version": "0.12.4",
"private": true,
"scripts": {
"serve": "node file-downloader.js && export VUE_APP_RELEASE_TIMESTAMP=$(date -u +'%Y-%m-%dT%H:%M:%SZ') && vue-cli-service serve --port 8080",
"build": "node file-downloader.js && export VUE_APP_RELEASE_TIMESTAMP=$(date -u +'%Y-%m-%dT%H:%M:%SZ') && vue-cli-service build",
"lint": "vue-cli-service lint",
"lint:ci": "vue-cli-service lint --no-fix",
"preinstall": "npx npm-force-resolutions",
"test:e2e": "vue-cli-service test:e2e",
"test:integration": "vue-cli-service test:e2e --headless --mode development",
"test:snapshots": "vue-cli-service test:unit -u",
"test:unit": "vue-cli-service test:unit",
"test:coverage": "vue-cli-service test:unit --coverage",
"changelog": "auto-changelog --commit-limit 0 --template changelog-template.hbs --tag-pattern [0-9]{4}-[0-9]{2}-[0-9]{2}"
},
"dependencies": {
"@auth0/auth0-spa-js": "^1.14.0",
"@okta/okta-auth-js": "^5.2.2",
"apollo-link-batch-http": "^1.2.14",
"caniuse-lite": "^1.0.30001390",
"codemirror": "^5.60.0",
"cronstrue": "^1.110.0",
"d3": "^6.6.2",
"d3-dag": "0.3.5",
"d3-regression": "^1.3.8",
"d3-zoom": "^2.0.0",
"graphiql": "^1.4.7",
"graphql": "^15.5.0",
"highlight.js": "^10.7.2",
"js-beautify": "^1.13.5",
"jwt-decode": "^3.1.2",
"lodash": "^4.17.21",
"logrocket": "^1.0.14",
"logrocket-vuex": "0.0.3",
"moment": "^2.29.1",
"moment-duration-format": ">=2.3.2",
"moment-timezone": "^0.5.37",
"nth-check": "2.0.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"remark": "^13.0.0",
"remark-autolink-headings": "^6.0.1",
"remark-breaks": "^2.0.2",
"remark-gfm": "^1.0.0",
"remark-html": "^13.0.2",
"remark-slug": "^6.0.0",
"velocity-animate": ">=1.5.2",
"vue": "^2.6.12",
"vue-apollo": "^3.0.7",
"vue-codemirror": ">=4.0.6",
"vue-meta": "^2.4.0",
"vue-router": "^3.5.1",
"vue-router-multiguard": ">=1.0.3",
"vue-scrollto": "^2.20.0",
"vuetify": "^2.4.8",
"vuex": "^3.6.2",
"yaml": "2.0.0-5"
},
"devDependencies": {
"@babel/core": "^7.13.14",
"@babel/plugin-proposal-optional-chaining": "^7.13.12",
"@babel/plugin-transform-runtime": "^7.13.10",
"@babel/runtime": "^7.13.10",
"@vue/cli-plugin-babel": "4.5.14",
"@vue/cli-plugin-eslint": "4.5.14",
"@vue/cli-plugin-unit-jest": "4.5.14",
"@vue/cli-service": "4.5.14",
"@vue/eslint-config-prettier": ">=6.0.0",
"@vue/test-utils": "^1.1.3",
"auto-changelog": "^2.3.0",
"autoprefixer": "^9.8.6",
"babel-eslint": ">=10.0.3",
"babel-jest": "^26.6.3",
"babel-polyfill": "^6.26.0",
"eslint": "^7.23.0",
"eslint-plugin-prettier": "^3.3.1",
"eslint-plugin-vue": "^7.8.0",
"eslint-plugin-vuetify": "^1.0.0-beta.8",
"graphql-tag": ">=2.10.2",
"html-loader": "^1.3.2",
"ignore-loader": ">=0.1.2",
"jest-canvas-mock": "^2.3.1",
"jest-fetch-mock": ">=3.0.1",
"jest-localstorage-mock": "^2.4.8",
"node-sass": "^7.0.0",
"postcss-scss": "^3.0.5",
"sass": "^1.32.8",
"sass-loader": "^10.1.1",
"sinon": "^9.2.4",
"start-server-and-test": "^1.12.1",
"style-loader": "^2.0.0",
"stylelint": "^13.12.0",
"stylelint-a11y": ">=1.2.1",
"stylelint-config-recommended": "^4.0.0",
"stylelint-config-sass-guidelines": "^7.1.0",
"stylelint-order": ">=4.1.0",
"stylelint-scss": "^3.19.0",
"vue-cli-plugin-apollo": "^0.22.2",
"vue-cli-plugin-vuetify": "^2.3.1",
"vue-cli-plugin-webpack-bundle-analyzer": "^2.0.0",
"vue-template-compiler": "^2.6.12",
"vuetify-loader": "^1.7.2",
"worker-plugin": "^5.0.0",
"workerize-loader": ">=1.2.1"
},
"peerDependencies": {
"postcss": "^8.0.0"
},
"resolutions": {
"node-fetch": "2.6.7",
"ejs": "3.1.7"
}
}
================================================
FILE: postcss.config.js
================================================
module.exports = {
parser: 'postcss-scss',
syntax: 'postcss-scss',
plugins: {
autoprefixer: {}
}
}
================================================
FILE: public/_redirects
================================================
/* /index.html 200
================================================
FILE: public/browserconfig.xml
================================================
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="/mstile-150x150.png"/>
<TileColor>#2d89ef</TileColor>
</tile>
</msapplication>
</browserconfig>
================================================
FILE: public/fonts/font-awesome/LICENSE.txt
================================================
Font Awesome Pro License
------------------------
Font Awesome Pro is commercial software that requires a paid license. Full
Font Awesome Pro license: https://fontawesome.com/license.
# Commercial License
The Font Awesome Pro commercial license allows you to pay for FA Pro once, own
it, and use it just about everywhere you'd like.
# Attribution
Attribution is not required by the Font Awesome Pro commercial license.
# Brand Icons
All brand icons are trademarks of their respective owners. The use of these
trademarks does not indicate endorsement of the trademark holder by Font
Awesome, nor vice versa. **Please do not use brand logos for any purpose except
to represent the company, product, or service to which they refer.**
================================================
FILE: public/fonts/font-awesome/README.md
================================================
# Font Awesome 5.15.4
Thanks for downloading Font Awesome! We're so excited you're here.
Our documentation is available online. Just head here:
https://fontawesome.com
================================================
FILE: public/fonts/font-awesome/css/all.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
position: absolute;
text-align: center;
width: 2em;
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
.fa-pull-left {
float: left; }
.fa-pull-right {
float: right; }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-stack {
display: inline-block;
height: 2em;
line-height: 2em;
position: relative;
vertical-align: middle;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
left: 0;
position: absolute;
text-align: center;
width: 100%; }
.fa-stack-1x {
line-height: inherit; }
.fa-stack-2x {
font-size: 2em; }
.fa-inverse {
color: #fff; }
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-abacus:before {
content: "\f640"; }
.fa-alarm-exclamation:before {
content: "\f843"; }
.fa-align-left:before {
content: "\f036"; }
.fa-align-slash:before {
content: "\f846"; }
.fa-atom-alt:before {
content: "\f5d3"; }
.fa-aws:before {
content: "\f375"; }
.fa-badge-check:before {
content: "\f336"; }
.fa-bell:before {
content: "\f0f3"; }
.fa-book-dead:before {
content: "\f6b7"; }
.fa-books:before {
content: "\f5db"; }
.fa-brackets-curly:before {
content: "\f7ea"; }
.fa-cc-amazon-pay:before {
content: "\f42d"; }
.fa-cc-amex:before {
content: "\f1f3"; }
.fa-cc-apple-pay:before {
content: "\f416"; }
.fa-cc-diners-club:before {
content: "\f24c"; }
.fa-cc-discover:before {
content: "\f1f2"; }
.fa-cc-jcb:before {
content: "\f24b"; }
.fa-cc-mastercard:before {
content: "\f1f1"; }
.fa-cc-paypal:before {
content: "\f1f4"; }
.fa-cc-stripe:before {
content: "\f1f5"; }
.fa-cc-visa:before {
content: "\f1f0"; }
.fa-chart-network:before {
content: "\f78a"; }
.fa-chart-scatter:before {
content: "\f7ee"; }
.fa-check:before {
content: "\f00c"; }
.fa-check-circle:before {
content: "\f058"; }
.fa-circle:before {
content: "\f111"; }
.fa-cloud:before {
content: "\f0c2"; }
.fa-clouds:before {
content: "\f744"; }
.fa-cogs:before {
content: "\f085"; }
.fa-comment-dots:before {
content: "\f4ad"; }
.fa-concierge-bell:before {
content: "\f562"; }
.fa-credit-card:before {
content: "\f09d"; }
.fa-desktop:before {
content: "\f108"; }
.fa-discourse:before {
content: "\f393"; }
.fa-docker:before {
content: "\f395"; }
.fa-dot-circle:before {
content: "\f192"; }
.fa-envelope:before {
content: "\f0e0"; }
.fa-exchange-alt:before {
content: "\f362"; }
.fa-eye:before {
content: "\f06e"; }
.fa-file-alt:before {
content: "\f15c"; }
.fa-file-code:before {
content: "\f1c9"; }
.fa-fingerprint:before {
content: "\f577"; }
.fa-github:before {
content: "\f09b"; }
.fa-globe:before {
content: "\f0ac"; }
.fa-globe-africa:before {
content: "\f57c"; }
.fa-globe-americas:before {
content: "\f57d"; }
.fa-globe-asia:before {
content: "\f57e"; }
.fa-globe-europe:before {
content: "\f7a2"; }
.fa-graduation-cap:before {
content: "\f19d"; }
.fa-history:before {
content: "\f1da"; }
.fa-home:before {
content: "\f015"; }
.fa-info:before {
content: "\f129"; }
.fa-info-circle:before {
content: "\f05a"; }
.fa-instagram:before {
content: "\f16d"; }
.fa-key:before {
content: "\f084"; }
.fa-key-skeleton:before {
content: "\f6f3"; }
.fa-laptop:before {
content: "\f109"; }
.fa-laptop-code:before {
content: "\f5fc"; }
.fa-laptop-house:before {
content: "\e066"; }
.fa-life-ring:before {
content: "\f1cd"; }
.fa-lightbulb:before {
content: "\f0eb"; }
.fa-list-alt:before {
content: "\f022"; }
.fa-list-ul:before {
content: "\f0ca"; }
.fa-lock-alt:before {
content: "\f30d"; }
.fa-map-marker-alt:before {
content: "\f3c5"; }
.fa-microsoft:before {
content: "\f3ca"; }
.fa-moon-stars:before {
content: "\f755"; }
.fa-network-wired:before {
content: "\f6ff"; }
.fa-planet-ringed:before {
content: "\e020"; }
.fa-plus:before {
content: "\f067"; }
.fa-question-circle:before {
content: "\f059"; }
.fa-quote-left:before {
content: "\f10d"; }
.fa-random:before {
content: "\f074"; }
.fa-rev:before {
content: "\f5b2"; }
.fa-robot:before {
content: "\f544"; }
.fa-rocket:before {
content: "\f135"; }
.fa-save:before {
content: "\f0c7"; }
.fa-search:before {
content: "\f002"; }
.fa-server:before {
content: "\f233"; }
.fa-sign-out:before {
content: "\f08b"; }
.fa-siren-on:before {
content: "\e02e"; }
.fa-slack:before {
content: "\f198"; }
.fa-slash:before {
content: "\f715"; }
.fa-smile:before {
content: "\f118"; }
.fa-snowman:before {
content: "\f7d0"; }
.fa-spinner-third:before {
content: "\f3f4"; }
.fa-square-full:before {
content: "\f45c"; }
.fa-sun:before {
content: "\f185"; }
.fa-tasks:before {
content: "\f0ae"; }
.fa-times:before {
content: "\f00d"; }
.fa-times-circle:before {
content: "\f057"; }
.fa-twitter:before {
content: "\f099"; }
.fa-undo:before {
content: "\f0e2"; }
.fa-undo-alt:before {
content: "\f2ea"; }
.fa-university:before {
content: "\f19c"; }
.fa-user:before {
content: "\f007"; }
.fa-user-friends:before {
content: "\f500"; }
.fa-user-hard-hat:before {
content: "\f82c"; }
.fa-user-shield:before {
content: "\f505"; }
.fa-users:before {
content: "\f0c0"; }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
@font-face {
font-family: 'Font Awesome 5 Brands';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-brands-400.eot");
src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
.fab {
font-family: 'Font Awesome 5 Brands';
font-weight: 400; }
@font-face {
font-family: 'Font Awesome 5 Duotone';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-duotone-900.eot");
src: url("../webfonts/fa-duotone-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-duotone-900.woff2") format("woff2"), url("../webfonts/fa-duotone-900.woff") format("woff"), url("../webfonts/fa-duotone-900.ttf") format("truetype"), url("../webfonts/fa-duotone-900.svg#fontawesome") format("svg"); }
.fad {
position: relative;
font-family: 'Font Awesome 5 Duotone';
font-weight: 900; }
.fad:before {
position: absolute;
color: var(--fa-primary-color, inherit);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.fad:after {
color: var(--fa-secondary-color, inherit);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.fa-swap-opacity .fad:before,
.fad.fa-swap-opacity:before {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.fa-swap-opacity .fad:after,
.fad.fa-swap-opacity:after {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.fad.fa-inverse {
color: #fff; }
.fad.fa-stack-1x, .fad.fa-stack-2x {
position: absolute; }
.fad.fa-stack-1x:before,
.fad.fa-stack-2x:before,
.fad.fa-fw:before {
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%); }
.fad.fa-abacus:after {
content: "\10f640"; }
.fad.fa-align-slash:after {
content: "\10f846"; }
.fad.fa-atom-alt:after {
content: "\10f5d3"; }
.fad.fa-badge-check:after {
content: "\10f336"; }
.fad.fa-bell:after {
content: "\10f0f3"; }
.fad.fa-books:after {
content: "\10f5db"; }
.fad.fa-brackets-curly:after {
content: "\10f7ea"; }
.fad.fa-chart-network:after {
content: "\10f78a"; }
.fad.fa-chart-scatter:after {
content: "\10f7ee"; }
.fad.fa-check:after {
content: "\10f00c"; }
.fad.fa-circle:after {
content: "\10f111"; }
.fad.fa-clouds:after {
content: "\10f744"; }
.fad.fa-cogs:after {
content: "\10f085"; }
.fad.fa-comment-dots:after {
content: "\10f4ad"; }
.fad.fa-concierge-bell:after {
content: "\10f562"; }
.fad.fa-dot-circle:after {
content: "\10f192"; }
.fad.fa-envelope:after {
content: "\10f0e0"; }
.fad.fa-exchange-alt:after {
content: "\10f362"; }
.fad.fa-file-alt:after {
content: "\10f15c"; }
.fad.fa-file-code:after {
content: "\10f1c9"; }
.fad.fa-globe:after {
content: "\10f0ac"; }
.fad.fa-globe-africa:after {
content: "\10f57c"; }
.fad.fa-globe-americas:after {
content: "\10f57d"; }
.fad.fa-globe-asia:after {
content: "\10f57e"; }
.fad.fa-globe-europe:after {
content: "\10f7a2"; }
.fad.fa-graduation-cap:after {
content: "\10f19d"; }
.fad.fa-history:after {
content: "\10f1da"; }
.fad.fa-key:after {
content: "\10f084"; }
.fad.fa-key-skeleton:after {
content: "\10f6f3"; }
.fad.fa-laptop:after {
content: "\10f109"; }
.fad.fa-laptop-code:after {
content: "\10f5fc"; }
.fad.fa-laptop-house:after {
content: "\10e066"; }
.fad.fa-life-ring:after {
content: "\10f1cd"; }
.fad.fa-lightbulb:after {
content: "\10f0eb"; }
.fad.fa-list-alt:after {
content: "\10f022"; }
.fad.fa-list-ul:after {
content: "\10f0ca"; }
.fad.fa-lock-alt:after {
content: "\10f30d"; }
.fad.fa-map-marker-alt:after {
content: "\10f3c5"; }
.fad.fa-moon-stars:after {
content: "\10f755"; }
.fad.fa-network-wired:after {
content: "\10f6ff"; }
.fad.fa-planet-ringed:after {
content: "\10e020"; }
.fad.fa-question-circle:after {
content: "\10f059"; }
.fad.fa-quote-left:after {
content: "\10f10d"; }
.fad.fa-random:after {
content: "\10f074"; }
.fad.fa-rocket:after {
content: "\10f135"; }
.fad.fa-search:after {
content: "\10f002"; }
.fad.fa-server:after {
content: "\10f233"; }
.fad.fa-sign-out:after {
content: "\10f08b"; }
.fad.fa-siren-on:after {
content: "\10e02e"; }
.fad.fa-smile:after {
content: "\10f118"; }
.fad.fa-snowman:after {
content: "\10f7d0"; }
.fad.fa-sun:after {
content: "\10f185"; }
.fad.fa-tasks:after {
content: "\10f0ae"; }
.fad.fa-university:after {
content: "\10f19c"; }
.fad.fa-user:after {
content: "\10f007"; }
.fad.fa-user-hard-hat:after {
content: "\10f82c"; }
.fad.fa-user-shield:after {
content: "\10f505"; }
.fad.fa-users:after {
content: "\10f0c0"; }
@font-face {
font-family: 'Font Awesome 5 Pro';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.eot");
src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
.far {
font-family: 'Font Awesome 5 Pro';
font-weight: 400; }
@font-face {
font-family: 'Font Awesome 5 Pro';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.eot");
src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
.fa,
.fas {
font-family: 'Font Awesome 5 Pro';
font-weight: 900; }
================================================
FILE: public/fonts/font-awesome/css/brands.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
@font-face {
font-family: 'Font Awesome 5 Brands';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-brands-400.eot");
src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }
.fab {
font-family: 'Font Awesome 5 Brands';
font-weight: 400; }
================================================
FILE: public/fonts/font-awesome/css/duotone.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
@font-face {
font-family: 'Font Awesome 5 Duotone';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-duotone-900.eot");
src: url("../webfonts/fa-duotone-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-duotone-900.woff2") format("woff2"), url("../webfonts/fa-duotone-900.woff") format("woff"), url("../webfonts/fa-duotone-900.ttf") format("truetype"), url("../webfonts/fa-duotone-900.svg#fontawesome") format("svg"); }
.fad {
position: relative;
font-family: 'Font Awesome 5 Duotone';
font-weight: 900; }
.fad:before {
position: absolute;
color: var(--fa-primary-color, inherit);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.fad:after {
color: var(--fa-secondary-color, inherit);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.fa-swap-opacity .fad:before,
.fad.fa-swap-opacity:before {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.fa-swap-opacity .fad:after,
.fad.fa-swap-opacity:after {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.fad.fa-inverse {
color: #fff; }
.fad.fa-stack-1x, .fad.fa-stack-2x {
position: absolute; }
.fad.fa-stack-1x:before,
.fad.fa-stack-2x:before,
.fad.fa-fw:before {
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%); }
.fad.fa-abacus:after {
content: "\10f640"; }
.fad.fa-align-slash:after {
content: "\10f846"; }
.fad.fa-atom-alt:after {
content: "\10f5d3"; }
.fad.fa-badge-check:after {
content: "\10f336"; }
.fad.fa-bell:after {
content: "\10f0f3"; }
.fad.fa-books:after {
content: "\10f5db"; }
.fad.fa-brackets-curly:after {
content: "\10f7ea"; }
.fad.fa-chart-network:after {
content: "\10f78a"; }
.fad.fa-chart-scatter:after {
content: "\10f7ee"; }
.fad.fa-check:after {
content: "\10f00c"; }
.fad.fa-circle:after {
content: "\10f111"; }
.fad.fa-clouds:after {
content: "\10f744"; }
.fad.fa-cogs:after {
content: "\10f085"; }
.fad.fa-comment-dots:after {
content: "\10f4ad"; }
.fad.fa-concierge-bell:after {
content: "\10f562"; }
.fad.fa-dot-circle:after {
content: "\10f192"; }
.fad.fa-envelope:after {
content: "\10f0e0"; }
.fad.fa-exchange-alt:after {
content: "\10f362"; }
.fad.fa-file-alt:after {
content: "\10f15c"; }
.fad.fa-file-code:after {
content: "\10f1c9"; }
.fad.fa-globe:after {
content: "\10f0ac"; }
.fad.fa-globe-africa:after {
content: "\10f57c"; }
.fad.fa-globe-americas:after {
content: "\10f57d"; }
.fad.fa-globe-asia:after {
content: "\10f57e"; }
.fad.fa-globe-europe:after {
content: "\10f7a2"; }
.fad.fa-graduation-cap:after {
content: "\10f19d"; }
.fad.fa-history:after {
content: "\10f1da"; }
.fad.fa-key:after {
content: "\10f084"; }
.fad.fa-key-skeleton:after {
content: "\10f6f3"; }
.fad.fa-laptop:after {
content: "\10f109"; }
.fad.fa-laptop-code:after {
content: "\10f5fc"; }
.fad.fa-laptop-house:after {
content: "\10e066"; }
.fad.fa-life-ring:after {
content: "\10f1cd"; }
.fad.fa-lightbulb:after {
content: "\10f0eb"; }
.fad.fa-list-alt:after {
content: "\10f022"; }
.fad.fa-list-ul:after {
content: "\10f0ca"; }
.fad.fa-lock-alt:after {
content: "\10f30d"; }
.fad.fa-map-marker-alt:after {
content: "\10f3c5"; }
.fad.fa-moon-stars:after {
content: "\10f755"; }
.fad.fa-network-wired:after {
content: "\10f6ff"; }
.fad.fa-planet-ringed:after {
content: "\10e020"; }
.fad.fa-question-circle:after {
content: "\10f059"; }
.fad.fa-quote-left:after {
content: "\10f10d"; }
.fad.fa-random:after {
content: "\10f074"; }
.fad.fa-rocket:after {
content: "\10f135"; }
.fad.fa-search:after {
content: "\10f002"; }
.fad.fa-server:after {
content: "\10f233"; }
.fad.fa-sign-out:after {
content: "\10f08b"; }
.fad.fa-siren-on:after {
content: "\10e02e"; }
.fad.fa-smile:after {
content: "\10f118"; }
.fad.fa-snowman:after {
content: "\10f7d0"; }
.fad.fa-sun:after {
content: "\10f185"; }
.fad.fa-tasks:after {
content: "\10f0ae"; }
.fad.fa-university:after {
content: "\10f19c"; }
.fad.fa-user:after {
content: "\10f007"; }
.fad.fa-user-hard-hat:after {
content: "\10f82c"; }
.fad.fa-user-shield:after {
content: "\10f505"; }
.fad.fa-users:after {
content: "\10f0c0"; }
================================================
FILE: public/fonts/font-awesome/css/fontawesome.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
position: absolute;
text-align: center;
width: 2em;
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
.fa-pull-left {
float: left; }
.fa-pull-right {
float: right; }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-stack {
display: inline-block;
height: 2em;
line-height: 2em;
position: relative;
vertical-align: middle;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
left: 0;
position: absolute;
text-align: center;
width: 100%; }
.fa-stack-1x {
line-height: inherit; }
.fa-stack-2x {
font-size: 2em; }
.fa-inverse {
color: #fff; }
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-abacus:before {
content: "\f640"; }
.fa-alarm-exclamation:before {
content: "\f843"; }
.fa-align-left:before {
content: "\f036"; }
.fa-align-slash:before {
content: "\f846"; }
.fa-atom-alt:before {
content: "\f5d3"; }
.fa-aws:before {
content: "\f375"; }
.fa-badge-check:before {
content: "\f336"; }
.fa-bell:before {
content: "\f0f3"; }
.fa-book-dead:before {
content: "\f6b7"; }
.fa-books:before {
content: "\f5db"; }
.fa-brackets-curly:before {
content: "\f7ea"; }
.fa-cc-amazon-pay:before {
content: "\f42d"; }
.fa-cc-amex:before {
content: "\f1f3"; }
.fa-cc-apple-pay:before {
content: "\f416"; }
.fa-cc-diners-club:before {
content: "\f24c"; }
.fa-cc-discover:before {
content: "\f1f2"; }
.fa-cc-jcb:before {
content: "\f24b"; }
.fa-cc-mastercard:before {
content: "\f1f1"; }
.fa-cc-paypal:before {
content: "\f1f4"; }
.fa-cc-stripe:before {
content: "\f1f5"; }
.fa-cc-visa:before {
content: "\f1f0"; }
.fa-chart-network:before {
content: "\f78a"; }
.fa-chart-scatter:before {
content: "\f7ee"; }
.fa-check:before {
content: "\f00c"; }
.fa-check-circle:before {
content: "\f058"; }
.fa-circle:before {
content: "\f111"; }
.fa-cloud:before {
content: "\f0c2"; }
.fa-clouds:before {
content: "\f744"; }
.fa-cogs:before {
content: "\f085"; }
.fa-comment-dots:before {
content: "\f4ad"; }
.fa-concierge-bell:before {
content: "\f562"; }
.fa-credit-card:before {
content: "\f09d"; }
.fa-desktop:before {
content: "\f108"; }
.fa-discourse:before {
content: "\f393"; }
.fa-docker:before {
content: "\f395"; }
.fa-dot-circle:before {
content: "\f192"; }
.fa-envelope:before {
content: "\f0e0"; }
.fa-exchange-alt:before {
content: "\f362"; }
.fa-eye:before {
content: "\f06e"; }
.fa-file-alt:before {
content: "\f15c"; }
.fa-file-code:before {
content: "\f1c9"; }
.fa-fingerprint:before {
content: "\f577"; }
.fa-github:before {
content: "\f09b"; }
.fa-globe:before {
content: "\f0ac"; }
.fa-globe-africa:before {
content: "\f57c"; }
.fa-globe-americas:before {
content: "\f57d"; }
.fa-globe-asia:before {
content: "\f57e"; }
.fa-globe-europe:before {
content: "\f7a2"; }
.fa-graduation-cap:before {
content: "\f19d"; }
.fa-history:before {
content: "\f1da"; }
.fa-home:before {
content: "\f015"; }
.fa-info:before {
content: "\f129"; }
.fa-info-circle:before {
content: "\f05a"; }
.fa-instagram:before {
content: "\f16d"; }
.fa-key:before {
content: "\f084"; }
.fa-key-skeleton:before {
content: "\f6f3"; }
.fa-laptop:before {
content: "\f109"; }
.fa-laptop-code:before {
content: "\f5fc"; }
.fa-laptop-house:before {
content: "\e066"; }
.fa-life-ring:before {
content: "\f1cd"; }
.fa-lightbulb:before {
content: "\f0eb"; }
.fa-list-alt:before {
content: "\f022"; }
.fa-list-ul:before {
content: "\f0ca"; }
.fa-lock-alt:before {
content: "\f30d"; }
.fa-map-marker-alt:before {
content: "\f3c5"; }
.fa-microsoft:before {
content: "\f3ca"; }
.fa-moon-stars:before {
content: "\f755"; }
.fa-network-wired:before {
content: "\f6ff"; }
.fa-planet-ringed:before {
content: "\e020"; }
.fa-plus:before {
content: "\f067"; }
.fa-question-circle:before {
content: "\f059"; }
.fa-quote-left:before {
content: "\f10d"; }
.fa-random:before {
content: "\f074"; }
.fa-rev:before {
content: "\f5b2"; }
.fa-robot:before {
content: "\f544"; }
.fa-rocket:before {
content: "\f135"; }
.fa-save:before {
content: "\f0c7"; }
.fa-search:before {
content: "\f002"; }
.fa-server:before {
content: "\f233"; }
.fa-sign-out:before {
content: "\f08b"; }
.fa-siren-on:before {
content: "\e02e"; }
.fa-slack:before {
content: "\f198"; }
.fa-slash:before {
content: "\f715"; }
.fa-smile:before {
content: "\f118"; }
.fa-snowman:before {
content: "\f7d0"; }
.fa-spinner-third:before {
content: "\f3f4"; }
.fa-square-full:before {
content: "\f45c"; }
.fa-sun:before {
content: "\f185"; }
.fa-tasks:before {
content: "\f0ae"; }
.fa-times:before {
content: "\f00d"; }
.fa-times-circle:before {
content: "\f057"; }
.fa-twitter:before {
content: "\f099"; }
.fa-undo:before {
content: "\f0e2"; }
.fa-undo-alt:before {
content: "\f2ea"; }
.fa-university:before {
content: "\f19c"; }
.fa-user:before {
content: "\f007"; }
.fa-user-friends:before {
content: "\f500"; }
.fa-user-hard-hat:before {
content: "\f82c"; }
.fa-user-shield:before {
content: "\f505"; }
.fa-users:before {
content: "\f0c0"; }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
================================================
FILE: public/fonts/font-awesome/css/regular.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
@font-face {
font-family: 'Font Awesome 5 Pro';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.eot");
src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }
.far {
font-family: 'Font Awesome 5 Pro';
font-weight: 400; }
================================================
FILE: public/fonts/font-awesome/css/solid.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
@font-face {
font-family: 'Font Awesome 5 Pro';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.eot");
src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }
.fa,
.fas {
font-family: 'Font Awesome 5 Pro';
font-weight: 900; }
================================================
FILE: public/fonts/font-awesome/css/svg-with-js.css
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
svg:not(:root).svg-inline--fa {
overflow: visible; }
.svg-inline--fa {
display: inline-block;
font-size: inherit;
height: 1em;
overflow: visible;
vertical-align: -.125em; }
.svg-inline--fa.fa-lg {
vertical-align: -.225em; }
.svg-inline--fa.fa-w-1 {
width: 0.0625em; }
.svg-inline--fa.fa-w-2 {
width: 0.125em; }
.svg-inline--fa.fa-w-3 {
width: 0.1875em; }
.svg-inline--fa.fa-w-4 {
width: 0.25em; }
.svg-inline--fa.fa-w-5 {
width: 0.3125em; }
.svg-inline--fa.fa-w-6 {
width: 0.375em; }
.svg-inline--fa.fa-w-7 {
width: 0.4375em; }
.svg-inline--fa.fa-w-8 {
width: 0.5em; }
.svg-inline--fa.fa-w-9 {
width: 0.5625em; }
.svg-inline--fa.fa-w-10 {
width: 0.625em; }
.svg-inline--fa.fa-w-11 {
width: 0.6875em; }
.svg-inline--fa.fa-w-12 {
width: 0.75em; }
.svg-inline--fa.fa-w-13 {
width: 0.8125em; }
.svg-inline--fa.fa-w-14 {
width: 0.875em; }
.svg-inline--fa.fa-w-15 {
width: 0.9375em; }
.svg-inline--fa.fa-w-16 {
width: 1em; }
.svg-inline--fa.fa-w-17 {
width: 1.0625em; }
.svg-inline--fa.fa-w-18 {
width: 1.125em; }
.svg-inline--fa.fa-w-19 {
width: 1.1875em; }
.svg-inline--fa.fa-w-20 {
width: 1.25em; }
.svg-inline--fa.fa-pull-left {
margin-right: .3em;
width: auto; }
.svg-inline--fa.fa-pull-right {
margin-left: .3em;
width: auto; }
.svg-inline--fa.fa-border {
height: 1.5em; }
.svg-inline--fa.fa-li {
width: 2em; }
.svg-inline--fa.fa-fw {
width: 1.25em; }
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0; }
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -.125em;
width: 1em; }
.fa-layers svg.svg-inline--fa {
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-text, .fa-layers-counter {
display: inline-block;
position: absolute;
text-align: center; }
.fa-layers-text {
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-counter {
background-color: #ff253a;
border-radius: 1em;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: #fff;
height: 1.5em;
line-height: 1;
max-width: 5em;
min-width: 1.5em;
overflow: hidden;
padding: .25em;
right: 0;
text-overflow: ellipsis;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-bottom-right {
bottom: 0;
right: 0;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom right;
transform-origin: bottom right; }
.fa-layers-bottom-left {
bottom: 0;
left: 0;
right: auto;
top: auto;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: bottom left;
transform-origin: bottom left; }
.fa-layers-top-right {
right: 0;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-top-left {
left: 0;
right: auto;
top: 0;
-webkit-transform: scale(0.25);
transform: scale(0.25);
-webkit-transform-origin: top left;
transform-origin: top left; }
.fa-lg {
font-size: 1.33333em;
line-height: 0.75em;
vertical-align: -.0667em; }
.fa-xs {
font-size: .75em; }
.fa-sm {
font-size: .875em; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: 2.5em;
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: -2em;
position: absolute;
text-align: center;
width: 2em;
line-height: inherit; }
.fa-border {
border: solid 0.08em #eee;
border-radius: .1em;
padding: .2em .25em .15em; }
.fa-pull-left {
float: left; }
.fa-pull-right {
float: right; }
.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
margin-right: .3em; }
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
margin-left: .3em; }
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear; }
.fa-pulse {
-webkit-animation: fa-spin 1s infinite steps(8);
animation: fa-spin 1s infinite steps(8); }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
-webkit-filter: none;
filter: none; }
.fa-stack {
display: inline-block;
height: 2em;
position: relative;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0; }
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em; }
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em; }
.fa-inverse {
color: #fff; }
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus {
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto; }
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: 0.4;
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: 1;
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black; }
.fad.fa-inverse {
color: #fff; }
================================================
FILE: public/fonts/font-awesome/current-ui.yaml
================================================
projectName: current-ui
version: 5.15.4
icons:
- github:
- brands
- slack:
- brands
- twitter:
- brands
- instagram:
- brands
- times:
- solid
- regular
- times-circle:
- solid
- plus:
- regular
- solid
- undo-alt:
- regular
- solid
- info:
- regular
- user:
- solid
- duotone
- regular
- history:
- solid
- duotone
- check-circle:
- regular
- cloud:
- solid
- list-ul:
- duotone
- fingerprint:
- solid
- file-code:
- duotone
- regular
- search:
- duotone
- credit-card:
- solid
- server:
- duotone
- question-circle:
- duotone
- regular
- laptop:
- duotone
- file-alt:
- duotone
- books:
- duotone
- graduation-cap:
- duotone
- life-ring:
- duotone
- circle:
- duotone
- solid
- bell:
- duotone
- exchange-alt:
- duotone
- clouds:
- duotone
- random:
- duotone
- users:
- duotone
- solid
- regular
- key:
- duotone
- key-skeleton:
- duotone
- brackets-curly:
- duotone
- user-hard-hat:
- duotone
- abacus:
- duotone
- envelope:
- solid
- duotone
- cogs:
- duotone
- sun:
- duotone
- moon-stars:
- duotone
- sign-out:
- duotone
- smile:
- duotone
- map-marker-alt:
- duotone
- cc-amazon-pay:
- brands
- cc-amex:
- brands
- cc-apple-pay:
- brands
- cc-diners-club:
- brands
- cc-discover:
- brands
- cc-visa:
- brands
- cc-stripe:
- brands
- cc-paypal:
- brands
- cc-mastercard:
- brands
- cc-jcb:
- brands
- university:
- duotone
- lightbulb:
- duotone
- tasks:
- duotone
- check:
- duotone
- solid
- user-shield:
- duotone
- siren-on:
- duotone
- globe-africa:
- duotone
- globe-asia:
- duotone
- globe-americas:
- duotone
- globe-europe:
- duotone
- planet-ringed:
- duotone
- snowman:
- duotone
- globe:
- duotone
- laptop-house:
- duotone
- docker:
- brands
- aws:
- brands
- align-slash:
- duotone
- alarm-exclamation:
- solid
- slash:
- solid
- regular
- list-alt:
- duotone
- spinner-third:
- solid
- atom-alt:
- duotone
- network-wired:
- duotone
- chart-scatter:
- duotone
- chart-network:
- duotone
- lock-alt:
- duotone
- rocket:
- duotone
- solid
- regular
- home:
- solid
- quote-left:
- duotone
- desktop:
- solid
- regular
- save:
- solid
- regular
- eye:
- solid
- regular
- undo:
- solid
- regular
- book-dead:
- solid
- rev:
- brands
- robot:
- solid
- align-left:
- solid
- user-friends:
- regular
- microsoft:
- brands
- info-circle:
- regular
- square-full:
- solid
- concierge-bell:
- duotone
- badge-check:
- duotone
- dot-circle:
- duotone
- laptop-code:
- duotone
- discourse:
- brands
- comment-dots:
- duotone
================================================
FILE: public/fonts/font-awesome/js/all.js
================================================
/*!
* Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
(function () {
'use strict';
var _WINDOW = {};
var _DOCUMENT = {};
try {
if (typeof window !== 'undefined') _WINDOW = window;
if (typeof document !== 'undefined') _DOCUMENT = document;
} catch (e) {}
var _ref = _WINDOW.navigator || {},
_ref$userAgent = _ref.userAgent,
userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;
var WINDOW = _WINDOW;
var DOCUMENT = _DOCUMENT;
var IS_BROWSER = !!WINDOW.document;
var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';
var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');
var NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';
var PRODUCTION = function () {
try {
return "production" === 'production';
} catch (e) {
return false;
}
}();
function bunker(fn) {
try {
fn();
} catch (e) {
if (!PRODUCTION) {
throw e;
}
}
}
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function _objectSpread2(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
ownKeys(Object(source), true).forEach(function (key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
var w = WINDOW || {};
if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
var namespace = w[NAMESPACE_IDENTIFIER];
function defineIcons(prefix, icons) {
var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var _params$skipHooks = params.skipHooks,
skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;
var normalized = Object.keys(icons).reduce(function (acc, iconName) {
var icon = icons[iconName];
var expanded = !!icon.icon;
if (expanded) {
acc[icon.iconName] = icon.icon;
} else {
acc[iconName] = icon;
}
return acc;
}, {});
if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {
namespace.hooks.addPack(prefix, normalized);
} else {
namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);
}
/**
* Font Awesome 4 used the prefix of `fa` for all icons. With the introduction
* of new styles we needed to differentiate between them. Prefix `fa` is now an alias
* for `fas` so we'll easy the upgrade process for our users by automatically defining
* this as well.
*/
if (prefix === 'fas') {
defineIcons('fa', icons);
}
}
var icons = {
"aws": [640, 512, [], "f375", "M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z"],
"cc-amazon-pay": [576, 512, [], "f42d", "M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z"],
"cc-amex": [576, 512, [], "f1f3", "M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z"],
"cc-apple-pay": [576, 512, [], "f416", "M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z"],
"cc-diners-club": [576, 512, [], "f24c", "M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z"],
"cc-discover": [576, 512, [], "f1f2", "M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z"],
"cc-jcb": [576, 512, [], "f24b", "M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z"],
"cc-mastercard": [576, 512, [], "f1f1", "M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z"],
"cc-paypal": [576, 512, [], "f1f4", "M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z"],
"cc-stripe": [576, 512, [], "f1f5", "M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z"],
"cc-visa": [576, 512, [], "f1f0", "M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"],
"discourse": [448, 512, [], "f393", "M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z"],
"docker": [640, 512, [], "f395", "M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z"],
"github": [496, 512, [], "f09b", "M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"],
"instagram": [448, 512, [], "f16d", "M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"],
"microsoft": [448, 512, [], "f3ca", "M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z"],
"rev": [448, 512, [], "f5b2", "M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z"],
"slack": [448, 512, [], "f198", "M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"],
"twitter": [512, 512, [], "f099", "M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"]
};
bunker(function () {
defineIcons('fab', icons);
});
}());
(function () {
'use strict';
var _WINDOW = {};
var _DOCUMENT = {};
try {
if (typeof window !== 'undefined') _WINDOW = window;
if (typeof document !== 'undefined') _DOCUMENT = document;
} catch (e) {}
var _ref = _WINDOW.navigator || {},
_ref$userAgent = _ref.userAgent,
userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;
var WINDOW = _WINDOW;
var DOCUMENT = _DOCUMENT;
var IS_BROWSER = !!WINDOW.document;
var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';
var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');
var NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';
var PRODUCTION = function () {
try {
return "production" === 'production';
} catch (e) {
return false;
}
}();
function bunker(fn) {
try {
fn();
} catch (e) {
if (!PRODUCTION) {
throw e;
}
}
}
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function _objectSpread2(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
ownKeys(Object(source), true).forEach(function (key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
var w = WINDOW || {};
if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
var namespace = w[NAMESPACE_IDENTIFIER];
function defineIcons(prefix, icons) {
var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var _params$skipHooks = params.skipHooks,
skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;
var normalized = Object.keys(icons).reduce(function (acc, iconName) {
var icon = icons[iconName];
var expanded = !!icon.icon;
if (expanded) {
acc[icon.iconName] = icon.icon;
} else {
acc[iconName] = icon;
}
return acc;
}, {});
if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {
namespace.hooks.addPack(prefix, normalized);
} else {
namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);
}
/**
* Font Awesome 4 used the prefix of `fa` for all icons. With the introduction
* of new styles we needed to differentiate between them. Prefix `fa` is now an alias
* for `fas` so we'll easy the upgrade process for our users by automatically defining
* this as well.
*/
if (prefix === 'fas') {
defineIcons('fa', icons);
}
}
var icons = {
"abacus": [576, 512, [], "f640", ["M192 440h-32v-48h32zM160 72v48h32V72zm96 160v48h32v-48zm-96 0v48h32v-48zm96 208h160v-48H256zm96-160h128v-48H352zM544 0a32 32 0 0 0-32 32v464a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V32a32 32 0 0 0-32-32zM416 72H256v48h160zM32 0A32 32 0 0 0 0 32v464a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V32A32 32 0 0 0 32 0z", "M144 32h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm-96 160h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm192 0h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm-96 0h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zM464 32h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM144 352h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16zm224 0h-32a16 16 0 0 0-16 16v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-96a16 16 0 0 0-16-16z"]],
"align-slash": [640, 512, [], "f846", ["M528 352h-31.46l-82.81-64H528a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16zM96 304v32a16 16 0 0 0 16 16h175.21l-82.8-64H112a16 16 0 0 0-16 16zM528 96a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H112a15.82 15.82 0 0 0-15 11.18L165.31 96zM112 416a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h340.83L370 416zm416-256H248.12l82.81 64H528a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z", "M633.82 458.1L45.46 3.38A16 16 0 0 0 23 6.19L3.37 31.46a16 16 0 0 0 2.81 22.45l588.36 454.72a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45z"]],
"atom-alt": [448, 512, [], "f5d3", ["M424.37305,55.69141C408.294,39.61914,385.50879,32,358.58252,32,319.82764,32,272.43359,48.127,224,77.14453a493.86641,493.86641,0,0,0-58.042,41.03711C140.58252,138.875,114.57666,162.5918,85.75635,197.916a374.25237,374.25237,0,0,0,35.70263,58.082A505.23427,505.23427,0,0,1,224,153.65625a377.23937,377.23937,0,0,1,58.042-35.47266c70.01221-34.334,95.22461-19.07421,97.0625-17.23632,9.54248,9.543,7.67432,46.94531-16.86084,96.96875A492.27615,492.27615,0,0,1,403.06543,256C452.27637,173.91992,463.59277,94.90039,424.37305,55.69141ZM224,358.3418a377.44678,377.44678,0,0,1-58.042,35.47461c-70.01221,34.334-95.22461,19.07421-97.0625,17.23632-9.54248-9.543-7.67432-46.94335,16.86084-96.96875A492.27615,492.27615,0,0,1,44.93457,256C-4.27637,338.08008-15.59277,417.09961,23.627,456.30664,39.70605,472.38086,62.49121,480,89.41748,480c38.75488,0,86.14893-16.127,134.58252-45.14453a493.86641,493.86641,0,0,0,58.042-41.03711c25.38965-20.70508,51.42285-44.45606,80.20166-79.73438A373.962,373.962,0,0,0,326.541,256,505.23427,505.23427,0,0,1,224,358.3418Z", "M224,287.98828a31.99414,31.99414,0,1,0-32-31.99414A31.98908,31.98908,0,0,0,224,287.98828ZM121.46094,255.99805A374.13921,374.13921,0,0,1,85.7583,197.916c-24.53906-50.02344-26.40625-87.42579-16.86328-96.9668,1.83984-1.83789,27.05078-17.10156,97.062,17.23242A494.241,494.241,0,0,1,224,77.14453C175.5625,48.13086,128.16406,32,89.41846,32c-26.9336,0-49.707,7.61523-65.793,23.69141C-15.59326,94.90039-4.27686,173.91992,44.93408,256A492.0174,492.0174,0,0,0,85.7583,314.084c28.79639,35.30274,54.85889,59.07227,80.19873,79.73243A377.429,377.429,0,0,0,224,358.3418,505.131,505.131,0,0,1,121.46094,255.99805ZM403.06592,256a492.0174,492.0174,0,0,0-40.82422-58.084c-28.84326-35.35547-54.89795-59.10352-80.19873-79.73243A377.4073,377.4073,0,0,0,224,153.65625,505.20556,505.20556,0,0,1,326.53906,256a373.849,373.849,0,0,1,35.70264,58.084c24.53906,50.02149,26.40625,87.42383,16.86328,96.9668-1.83984,1.83789-27.05078,17.10156-97.062-17.23242A494.241,494.241,0,0,1,224,434.85547C272.4375,463.86914,319.83594,480,358.58154,480c26.9336,0,49.707-7.61523,65.793-23.69336C463.59326,417.09961,452.27686,338.08008,403.06592,256Z"]],
"badge-check": [512, 512, [], "f336", ["M512 256a88 88 0 0 0-57.1-82.4A88 88 0 0 0 338.4 57.1a88 88 0 0 0-164.8 0A88 88 0 0 0 57.1 173.6a88 88 0 0 0 0 164.8 88 88 0 0 0 116.5 116.5 88 88 0 0 0 164.8 0 88 88 0 0 0 116.5-116.5A88 88 0 0 0 512 256zm-144.8-44.25l-131 130a11 11 0 0 1-15.55-.06l-75.72-76.33a11 11 0 0 1 .06-15.56L171 224a11 11 0 0 1 15.56.06l42.15 42.49 97.2-96.42a11 11 0 0 1 15.55.06l25.82 26a11 11 0 0 1-.08 15.56z", "M367.2 211.75l-131 130a11 11 0 0 1-15.55-.06l-75.72-76.33a11 11 0 0 1 .06-15.56L171 224a11 11 0 0 1 15.56.06l42.15 42.49 97.2-96.42a11 11 0 0 1 15.55.06l25.82 26a11 11 0 0 1-.06 15.56z"]],
"bell": [448, 512, [], "f0f3", ["M448 384c-.1 16.4-13 32-32.1 32H32.08C13 416 .09 400.4 0 384a31.25 31.25 0 0 1 8.61-21.71c19.32-20.76 55.47-52 55.47-154.29 0-77.7 54.48-139.9 127.94-155.16V32a32 32 0 1 1 64 0v20.84C329.42 68.1 383.9 130.3 383.9 208c0 102.3 36.15 133.53 55.47 154.29A31.27 31.27 0 0 1 448 384z", "M160 448h128a64 64 0 0 1-128 0z"]],
"books": [576, 512, [], "f5db", ["M96 0H32A32 32 0 0 0 0 32v64h128V32A32 32 0 0 0 96 0zM0 384h128V128H0zm0 96a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-64H0zm513.62-17.78L401.08 42.71l-60.26 16.14 112.35 418.8c.11.39.2.79.29 1.18l60.29-16.15c-.04-.15-.09-.3-.13-.46zM160 480a32 32 0 0 0 32 32h64a32 32 0 0 0 32-32v-64H160zM256 0h-64a32 32 0 0 0-32 32v64h124.79l-8-29.65a23.94 23.94 0 0 1 11.17-27V32A32 32 0 0 0 256 0zm-96 384h128V128H160z", "M0 416h128v-32H0zm0-288h128V96H0zm575.17 317.65L460.39 17.78a23.89 23.89 0 0 0-29.18-17h-.09L415.73 5a24 24 0 0 0-16.9 29.36l114.79 427.86a23.89 23.89 0 0 0 29.18 17h.09l15.38-4.22a24 24 0 0 0 16.9-29.35zM160 416h128v-32H160zM338.39 49.78a23.89 23.89 0 0 0-29.18-17h-.09L293.73 37a24 24 0 0 0-16.9 29.36l8 29.65H160v32h128V108l103.62 386.22a23.89 23.89 0 0 0 29.18 17h.09l15.38-4.22a24 24 0 0 0 16.9-29.33z"]],
"brackets-curly": [576, 512, [], "f7ea", ["M566.64 233.37a32 32 0 0 1 0 45.25l-45.25 45.25a32 32 0 0 0-9.39 22.64V384a96 96 0 0 1-96 96h-48a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h48a32 32 0 0 0 32-32v-37.48a96 96 0 0 1 28.13-67.89L498.76 256l-22.62-22.62A96 96 0 0 1 448 165.47V128a32 32 0 0 0-32-32h-48a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h48a96 96 0 0 1 96 96v37.48a32 32 0 0 0 9.38 22.65l45.25 45.24z", "M208 32h-48a96 96 0 0 0-96 96v37.48a32.12 32.12 0 0 1-9.38 22.65L9.38 233.37a32 32 0 0 0 0 45.25l45.25 45.25A32.05 32.05 0 0 1 64 346.51V384a96 96 0 0 0 96 96h48a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-48a32 32 0 0 1-32-32v-37.48a96 96 0 0 0-28.13-67.89L77.26 256l22.63-22.63A96 96 0 0 0 128 165.48V128a32 32 0 0 1 32-32h48a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"]],
"chart-network": [640, 512, [], "f78a", ["M64 240a64 64 0 1 0 64 64 64.06 64.06 0 0 0-64-64zm88 80h48v-32h-48zm294.4-106.8l19.2 25.6 48-36-19.2-25.6zM576 64a64 64 0 1 0 64 64 64.06 64.06 0 0 0-64-64z", "M576 384a63.84 63.84 0 0 0-38.3 13l-96-57.6a109.91 109.91 0 0 0 6.3-35.5 111.94 111.94 0 0 0-112-112 108.64 108.64 0 0 0-24.4 2.9l-40.8-87.4A63.84 63.84 0 1 0 224 128c1.1 0 2.1-.3 3.2-.3l41 87.8C241.5 235.9 224 267.8 224 304a111.71 111.71 0 0 0 193.2 76.7l95.8 57.5a63.87 63.87 0 1 0 63-54.2zm-240-32a48 48 0 1 1 48-48 48 48 0 0 1-48 48z"]],
"chart-scatter": [512, 512, [], "f7ee", ["M512 400v32a16 16 0 0 1-16 16H32a32 32 0 0 1-32-32V80a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16v304h432a16 16 0 0 1 16 16z", "M160 256a32 32 0 1 0 32 32 32 32 0 0 0-32-32zM416 96a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm-224 0a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm192 160a32 32 0 1 0 32 32 32 32 0 0 0-32-32zm-96-64a32 32 0 1 0 32 32 32 32 0 0 0-32-32z"]],
"check": [512, 512, [], "f00c", ["M504.5 144.42L264.75 385.5 192 312.59l240.11-241a25.49 25.49 0 0 1 36.06-.14l.14.14L504.5 108a25.86 25.86 0 0 1 0 36.42z", "M264.67 385.59l-54.57 54.87a25.5 25.5 0 0 1-36.06.14l-.14-.14L7.5 273.1a25.84 25.84 0 0 1 0-36.41l36.2-36.41a25.49 25.49 0 0 1 36-.17l.16.17z"]],
"circle": [512, 512, [], "f111", ["M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 424c-97.06 0-176-79-176-176S158.94 80 256 80s176 79 176 176-78.94 176-176 176z", "M256 432c-97.06 0-176-79-176-176S158.94 80 256 80s176 79 176 176-78.94 176-176 176z"]],
"clouds": [640, 512, [], "f744", ["M161.6 288H96a96 96 0 0 1 0-192c.6 0 1.1.2 1.6.2C105.3 41.9 151.6 0 208 0a111.61 111.61 0 0 1 104.5 72.7A95.07 95.07 0 0 1 352 64a96 96 0 0 1 96 96 93 93 0 0 1-7 34.7 110.5 110.5 0 0 0-31.6 11.8A142.54 142.54 0 0 0 304 160c-73.9 0-134.3 56.2-142.4 128z", "M640 416a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96c0-42.5 27.8-78.2 66.1-90.8A113.72 113.72 0 0 1 192 304a111.94 111.94 0 0 1 112-112c43.2 0 80.4 24.9 99 60.8 14.7-17.5 36.4-28.8 61-28.8a80 80 0 0 1 80 80 78.09 78.09 0 0 1-1.6 16.2c.5 0 1-.2 1.6-.2a96 96 0 0 1 96 96z"]],
"cogs": [640, 512, [], "f085", ["M638.41 387a12.34 12.34 0 0 0-12.2-10.3h-16.5a86.33 86.33 0 0 0-15.9-27.4L602 335a12.42 12.42 0 0 0-2.8-15.7 110.5 110.5 0 0 0-32.1-18.6 12.36 12.36 0 0 0-15.1 5.4l-8.2 14.3a88.86 88.86 0 0 0-31.7 0l-8.2-14.3a12.36 12.36 0 0 0-15.1-5.4 111.83 111.83 0 0 0-32.1 18.6 12.3 12.3 0 0 0-2.8 15.7l8.2 14.3a86.33 86.33 0 0 0-15.9 27.4h-16.5a12.43 12.43 0 0 0-12.2 10.4 112.66 112.66 0 0 0 0 37.1 12.34 12.34 0 0 0 12.2 10.3h16.5a86.33 86.33 0 0 0 15.9 27.4l-8.2 14.3a12.42 12.42 0 0 0 2.8 15.7 110.5 110.5 0 0 0 32.1 18.6 12.36 12.36 0 0 0 15.1-5.4l8.2-14.3a88.86 88.86 0 0 0 31.7 0l8.2 14.3a12.36 12.36 0 0 0 15.1 5.4 111.83 111.83 0 0 0 32.1-18.6 12.3 12.3 0 0 0 2.8-15.7l-8.2-14.3a86.33 86.33 0 0 0 15.9-27.4h16.5a12.43 12.43 0 0 0 12.2-10.4 112.66 112.66 0 0 0 .01-37.1zm-136.8 44.9c-29.6-38.5 14.3-82.4 52.8-52.8 29.59 38.49-14.3 82.39-52.8 52.79zm136.8-343.8a12.34 12.34 0 0 0-12.2-10.3h-16.5a86.33 86.33 0 0 0-15.9-27.4l8.2-14.3a12.42 12.42 0 0 0-2.8-15.7 110.5 110.5 0 0 0-32.1-18.6A12.36 12.36 0 0 0 552 7.19l-8.2 14.3a88.86 88.86 0 0 0-31.7 0l-8.2-14.3a12.36 12.36 0 0 0-15.1-5.4 111.83 111.83 0 0 0-32.1 18.6 12.3 12.3 0 0 0-2.8 15.7l8.2 14.3a86.33 86.33 0 0 0-15.9 27.4h-16.5a12.43 12.43 0 0 0-12.2 10.4 112.66 112.6
gitextract_a0dbiq0z/ ├── .browserslistrc ├── .dockerignore ├── .eslintignore ├── .eslintrc.js ├── .github/ │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE/ │ │ ├── bug---.md │ │ └── general---.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── codeql-config.yml │ └── workflows/ │ └── codeql-analysis.yml ├── .gitignore ├── .nvmrc ├── .prettierignore ├── .prettierrc.js ├── .salesforce_env_development ├── .salesforce_env_production ├── .stylelintignore ├── Changelog.md ├── Dockerfile ├── LICENSE ├── README.md ├── babel.config.js ├── changelog-template.hbs ├── export.sh ├── file-downloader.js ├── intercept.sh ├── jest.config.js ├── netlify.toml ├── nginx.conf ├── package.json ├── postcss.config.js ├── public/ │ ├── _redirects │ ├── browserconfig.xml │ ├── fonts/ │ │ ├── font-awesome/ │ │ │ ├── LICENSE.txt │ │ │ ├── README.md │ │ │ ├── css/ │ │ │ │ ├── all.css │ │ │ │ ├── brands.css │ │ │ │ ├── duotone.css │ │ │ │ ├── fontawesome.css │ │ │ │ ├── regular.css │ │ │ │ ├── solid.css │ │ │ │ └── svg-with-js.css │ │ │ ├── current-ui.yaml │ │ │ ├── js/ │ │ │ │ ├── all.js │ │ │ │ ├── brands.js │ │ │ │ ├── duotone.js │ │ │ │ ├── fontawesome.js │ │ │ │ ├── regular.js │ │ │ │ └── solid.js │ │ │ ├── js-packages/ │ │ │ │ └── @fortawesome/ │ │ │ │ ├── fontawesome-common-types/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── README.md │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ └── package.json │ │ │ │ ├── fontawesome-pro/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── css/ │ │ │ │ │ │ ├── all.css │ │ │ │ │ │ ├── brands.css │ │ │ │ │ │ ├── duotone.css │ │ │ │ │ │ ├── fontawesome.css │ │ │ │ │ │ ├── regular.css │ │ │ │ │ │ ├── solid.css │ │ │ │ │ │ └── svg-with-js.css │ │ │ │ │ ├── js/ │ │ │ │ │ │ ├── all.js │ │ │ │ │ │ ├── brands.js │ │ │ │ │ │ ├── duotone.js │ │ │ │ │ │ ├── fontawesome.js │ │ │ │ │ │ ├── regular.js │ │ │ │ │ │ └── solid.js │ │ │ │ │ ├── less/ │ │ │ │ │ │ ├── _animated.less │ │ │ │ │ │ ├── _bordered-pulled.less │ │ │ │ │ │ ├── _core.less │ │ │ │ │ │ ├── _fixed-width.less │ │ │ │ │ │ ├── _icons.less │ │ │ │ │ │ ├── _larger.less │ │ │ │ │ │ ├── _list.less │ │ │ │ │ │ ├── _mixins.less │ │ │ │ │ │ ├── _rotated-flipped.less │ │ │ │ │ │ ├── _screen-reader.less │ │ │ │ │ │ ├── _stacked.less │ │ │ │ │ │ ├── _variables.less │ │ │ │ │ │ ├── brands.less │ │ │ │ │ │ ├── duotone.less │ │ │ │ │ │ ├── fontawesome.less │ │ │ │ │ │ ├── regular.less │ │ │ │ │ │ └── solid.less │ │ │ │ │ ├── metadata/ │ │ │ │ │ │ ├── categories.yml │ │ │ │ │ │ ├── icons.yml │ │ │ │ │ │ └── sponsors.yml │ │ │ │ │ ├── package.json │ │ │ │ │ └── scss/ │ │ │ │ │ ├── _animated.scss │ │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ │ ├── _core.scss │ │ │ │ │ ├── _fixed-width.scss │ │ │ │ │ ├── _icons.scss │ │ │ │ │ ├── _larger.scss │ │ │ │ │ ├── _list.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ │ ├── _screen-reader.scss │ │ │ │ │ ├── _stacked.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ ├── brands.scss │ │ │ │ │ ├── duotone.scss │ │ │ │ │ ├── fontawesome.scss │ │ │ │ │ ├── regular.scss │ │ │ │ │ └── solid.scss │ │ │ │ ├── fontawesome-svg-core/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── README.md │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.es.js │ │ │ │ │ ├── index.js │ │ │ │ │ ├── package.json │ │ │ │ │ └── styles.css │ │ │ │ ├── pro-brands-svg-icons/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── faAws.d.ts │ │ │ │ │ ├── faAws.js │ │ │ │ │ ├── faCcAmazonPay.d.ts │ │ │ │ │ ├── faCcAmazonPay.js │ │ │ │ │ ├── faCcAmex.d.ts │ │ │ │ │ ├── faCcAmex.js │ │ │ │ │ ├── faCcApplePay.d.ts │ │ │ │ │ ├── faCcApplePay.js │ │ │ │ │ ├── faCcDinersClub.d.ts │ │ │ │ │ ├── faCcDinersClub.js │ │ │ │ │ ├── faCcDiscover.d.ts │ │ │ │ │ ├── faCcDiscover.js │ │ │ │ │ ├── faCcJcb.d.ts │ │ │ │ │ ├── faCcJcb.js │ │ │ │ │ ├── faCcMastercard.d.ts │ │ │ │ │ ├── faCcMastercard.js │ │ │ │ │ ├── faCcPaypal.d.ts │ │ │ │ │ ├── faCcPaypal.js │ │ │ │ │ ├── faCcStripe.d.ts │ │ │ │ │ ├── faCcStripe.js │ │ │ │ │ ├── faCcVisa.d.ts │ │ │ │ │ ├── faCcVisa.js │ │ │ │ │ ├── faDiscourse.d.ts │ │ │ │ │ ├── faDiscourse.js │ │ │ │ │ ├── faDocker.d.ts │ │ │ │ │ ├── faDocker.js │ │ │ │ │ ├── faGithub.d.ts │ │ │ │ │ ├── faGithub.js │ │ │ │ │ ├── faInstagram.d.ts │ │ │ │ │ ├── faInstagram.js │ │ │ │ │ ├── faMicrosoft.d.ts │ │ │ │ │ ├── faMicrosoft.js │ │ │ │ │ ├── faRev.d.ts │ │ │ │ │ ├── faRev.js │ │ │ │ │ ├── faSlack.d.ts │ │ │ │ │ ├── faSlack.js │ │ │ │ │ ├── faTwitter.d.ts │ │ │ │ │ ├── faTwitter.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.es.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ ├── pro-duotone-svg-icons/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── README.md │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── faAbacus.d.ts │ │ │ │ │ ├── faAbacus.js │ │ │ │ │ ├── faAlignSlash.d.ts │ │ │ │ │ ├── faAlignSlash.js │ │ │ │ │ ├── faAtomAlt.d.ts │ │ │ │ │ ├── faAtomAlt.js │ │ │ │ │ ├── faBadgeCheck.d.ts │ │ │ │ │ ├── faBadgeCheck.js │ │ │ │ │ ├── faBell.d.ts │ │ │ │ │ ├── faBell.js │ │ │ │ │ ├── faBooks.d.ts │ │ │ │ │ ├── faBooks.js │ │ │ │ │ ├── faBracketsCurly.d.ts │ │ │ │ │ ├── faBracketsCurly.js │ │ │ │ │ ├── faChartNetwork.d.ts │ │ │ │ │ ├── faChartNetwork.js │ │ │ │ │ ├── faChartScatter.d.ts │ │ │ │ │ ├── faChartScatter.js │ │ │ │ │ ├── faCheck.d.ts │ │ │ │ │ ├── faCheck.js │ │ │ │ │ ├── faCircle.d.ts │ │ │ │ │ ├── faCircle.js │ │ │ │ │ ├── faClouds.d.ts │ │ │ │ │ ├── faClouds.js │ │ │ │ │ ├── faCogs.d.ts │ │ │ │ │ ├── faCogs.js │ │ │ │ │ ├── faCommentDots.d.ts │ │ │ │ │ ├── faCommentDots.js │ │ │ │ │ ├── faConciergeBell.d.ts │ │ │ │ │ ├── faConciergeBell.js │ │ │ │ │ ├── faDotCircle.d.ts │ │ │ │ │ ├── faDotCircle.js │ │ │ │ │ ├── faEnvelope.d.ts │ │ │ │ │ ├── faEnvelope.js │ │ │ │ │ ├── faExchangeAlt.d.ts │ │ │ │ │ ├── faExchangeAlt.js │ │ │ │ │ ├── faFileAlt.d.ts │ │ │ │ │ ├── faFileAlt.js │ │ │ │ │ ├── faFileCode.d.ts │ │ │ │ │ ├── faFileCode.js │ │ │ │ │ ├── faGlobe.d.ts │ │ │ │ │ ├── faGlobe.js │ │ │ │ │ ├── faGlobeAfrica.d.ts │ │ │ │ │ ├── faGlobeAfrica.js │ │ │ │ │ ├── faGlobeAmericas.d.ts │ │ │ │ │ ├── faGlobeAmericas.js │ │ │ │ │ ├── faGlobeAsia.d.ts │ │ │ │ │ ├── faGlobeAsia.js │ │ │ │ │ ├── faGlobeEurope.d.ts │ │ │ │ │ ├── faGlobeEurope.js │ │ │ │ │ ├── faGraduationCap.d.ts │ │ │ │ │ ├── faGraduationCap.js │ │ │ │ │ ├── faHistory.d.ts │ │ │ │ │ ├── faHistory.js │ │ │ │ │ ├── faKey.d.ts │ │ │ │ │ ├── faKey.js │ │ │ │ │ ├── faKeySkeleton.d.ts │ │ │ │ │ ├── faKeySkeleton.js │ │ │ │ │ ├── faLaptop.d.ts │ │ │ │ │ ├── faLaptop.js │ │ │ │ │ ├── faLaptopCode.d.ts │ │ │ │ │ ├── faLaptopCode.js │ │ │ │ │ ├── faLaptopHouse.d.ts │ │ │ │ │ ├── faLaptopHouse.js │ │ │ │ │ ├── faLifeRing.d.ts │ │ │ │ │ ├── faLifeRing.js │ │ │ │ │ ├── faLightbulb.d.ts │ │ │ │ │ ├── faLightbulb.js │ │ │ │ │ ├── faListAlt.d.ts │ │ │ │ │ ├── faListAlt.js │ │ │ │ │ ├── faListUl.d.ts │ │ │ │ │ ├── faListUl.js │ │ │ │ │ ├── faLockAlt.d.ts │ │ │ │ │ ├── faLockAlt.js │ │ │ │ │ ├── faMapMarkerAlt.d.ts │ │ │ │ │ ├── faMapMarkerAlt.js │ │ │ │ │ ├── faMoonStars.d.ts │ │ │ │ │ ├── faMoonStars.js │ │ │ │ │ ├── faNetworkWired.d.ts │ │ │ │ │ ├── faNetworkWired.js │ │ │ │ │ ├── faPlanetRinged.d.ts │ │ │ │ │ ├── faPlanetRinged.js │ │ │ │ │ ├── faQuestionCircle.d.ts │ │ │ │ │ ├── faQuestionCircle.js │ │ │ │ │ ├── faQuoteLeft.d.ts │ │ │ │ │ ├── faQuoteLeft.js │ │ │ │ │ ├── faRandom.d.ts │ │ │ │ │ ├── faRandom.js │ │ │ │ │ ├── faRocket.d.ts │ │ │ │ │ ├── faRocket.js │ │ │ │ │ ├── faSearch.d.ts │ │ │ │ │ ├── faSearch.js │ │ │ │ │ ├── faServer.d.ts │ │ │ │ │ ├── faServer.js │ │ │ │ │ ├── faSignOut.d.ts │ │ │ │ │ ├── faSignOut.js │ │ │ │ │ ├── faSirenOn.d.ts │ │ │ │ │ ├── faSirenOn.js │ │ │ │ │ ├── faSmile.d.ts │ │ │ │ │ ├── faSmile.js │ │ │ │ │ ├── faSnowman.d.ts │ │ │ │ │ ├── faSnowman.js │ │ │ │ │ ├── faSun.d.ts │ │ │ │ │ ├── faSun.js │ │ │ │ │ ├── faTasks.d.ts │ │ │ │ │ ├── faTasks.js │ │ │ │ │ ├── faUniversity.d.ts │ │ │ │ │ ├── faUniversity.js │ │ │ │ │ ├── faUser.d.ts │ │ │ │ │ ├── faUser.js │ │ │ │ │ ├── faUserHardHat.d.ts │ │ │ │ │ ├── faUserHardHat.js │ │ │ │ │ ├── faUserShield.d.ts │ │ │ │ │ ├── faUserShield.js │ │ │ │ │ ├── faUsers.d.ts │ │ │ │ │ ├── faUsers.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.es.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ ├── pro-regular-svg-icons/ │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── README.md │ │ │ │ │ ├── attribution.js │ │ │ │ │ ├── faCheckCircle.d.ts │ │ │ │ │ ├── faCheckCircle.js │ │ │ │ │ ├── faDesktop.d.ts │ │ │ │ │ ├── faDesktop.js │ │ │ │ │ ├── faEye.d.ts │ │ │ │ │ ├── faEye.js │ │ │ │ │ ├── faFileCode.d.ts │ │ │ │ │ ├── faFileCode.js │ │ │ │ │ ├── faInfo.d.ts │ │ │ │ │ ├── faInfo.js │ │ │ │ │ ├── faInfoCircle.d.ts │ │ │ │ │ ├── faInfoCircle.js │ │ │ │ │ ├── faPlus.d.ts │ │ │ │ │ ├── faPlus.js │ │ │ │ │ ├── faQuestionCircle.d.ts │ │ │ │ │ ├── faQuestionCircle.js │ │ │ │ │ ├── faRocket.d.ts │ │ │ │ │ ├── faRocket.js │ │ │ │ │ ├── faSave.d.ts │ │ │ │ │ ├── faSave.js │ │ │ │ │ ├── faSlash.d.ts │ │ │ │ │ ├── faSlash.js │ │ │ │ │ ├── faTimes.d.ts │ │ │ │ │ ├── faTimes.js │ │ │ │ │ ├── faUndo.d.ts │ │ │ │ │ ├── faUndo.js │ │ │ │ │ ├── faUndoAlt.d.ts │ │ │ │ │ ├── faUndoAlt.js │ │ │ │ │ ├── faUser.d.ts │ │ │ │ │ ├── faUser.js │ │ │ │ │ ├── faUserFriends.d.ts │ │ │ │ │ ├── faUserFriends.js │ │ │ │ │ ├── faUsers.d.ts │ │ │ │ │ ├── faUsers.js │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.es.js │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ └── pro-solid-svg-icons/ │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── README.md │ │ │ │ ├── attribution.js │ │ │ │ ├── faAlarmExclamation.d.ts │ │ │ │ ├── faAlarmExclamation.js │ │ │ │ ├── faAlignLeft.d.ts │ │ │ │ ├── faAlignLeft.js │ │ │ │ ├── faBookDead.d.ts │ │ │ │ ├── faBookDead.js │ │ │ │ ├── faCheck.d.ts │ │ │ │ ├── faCheck.js │ │ │ │ ├── faCircle.d.ts │ │ │ │ ├── faCircle.js │ │ │ │ ├── faCloud.d.ts │ │ │ │ ├── faCloud.js │ │ │ │ ├── faCreditCard.d.ts │ │ │ │ ├── faCreditCard.js │ │ │ │ ├── faDesktop.d.ts │ │ │ │ ├── faDesktop.js │ │ │ │ ├── faEnvelope.d.ts │ │ │ │ ├── faEnvelope.js │ │ │ │ ├── faEye.d.ts │ │ │ │ ├── faEye.js │ │ │ │ ├── faFingerprint.d.ts │ │ │ │ ├── faFingerprint.js │ │ │ │ ├── faHistory.d.ts │ │ │ │ ├── faHistory.js │ │ │ │ ├── faHome.d.ts │ │ │ │ ├── faHome.js │ │ │ │ ├── faPlus.d.ts │ │ │ │ ├── faPlus.js │ │ │ │ ├── faRobot.d.ts │ │ │ │ ├── faRobot.js │ │ │ │ ├── faRocket.d.ts │ │ │ │ ├── faRocket.js │ │ │ │ ├── faSave.d.ts │ │ │ │ ├── faSave.js │ │ │ │ ├── faSlash.d.ts │ │ │ │ ├── faSlash.js │ │ │ │ ├── faSpinnerThird.d.ts │ │ │ │ ├── faSpinnerThird.js │ │ │ │ ├── faSquareFull.d.ts │ │ │ │ ├── faSquareFull.js │ │ │ │ ├── faTimes.d.ts │ │ │ │ ├── faTimes.js │ │ │ │ ├── faTimesCircle.d.ts │ │ │ │ ├── faTimesCircle.js │ │ │ │ ├── faUndo.d.ts │ │ │ │ ├── faUndo.js │ │ │ │ ├── faUndoAlt.d.ts │ │ │ │ ├── faUndoAlt.js │ │ │ │ ├── faUser.d.ts │ │ │ │ ├── faUser.js │ │ │ │ ├── faUsers.d.ts │ │ │ │ ├── faUsers.js │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.es.js │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ ├── less/ │ │ │ │ ├── _animated.less │ │ │ │ ├── _bordered-pulled.less │ │ │ │ ├── _core.less │ │ │ │ ├── _fixed-width.less │ │ │ │ ├── _icons.less │ │ │ │ ├── _larger.less │ │ │ │ ├── _list.less │ │ │ │ ├── _mixins.less │ │ │ │ ├── _rotated-flipped.less │ │ │ │ ├── _screen-reader.less │ │ │ │ ├── _stacked.less │ │ │ │ ├── _variables.less │ │ │ │ ├── brands.less │ │ │ │ ├── duotone.less │ │ │ │ ├── fontawesome.less │ │ │ │ ├── regular.less │ │ │ │ └── solid.less │ │ │ ├── metadata/ │ │ │ │ ├── categories.yml │ │ │ │ ├── icons.json │ │ │ │ ├── icons.yml │ │ │ │ └── sponsors.yml │ │ │ ├── otfs/ │ │ │ │ ├── Font Awesome 5 Brands-Regular-400.otf │ │ │ │ ├── Font Awesome 5 Duotone-Solid-900.otf │ │ │ │ ├── Font Awesome 5 Pro-Regular-400.otf │ │ │ │ ├── Font Awesome 5 Pro-Solid-900.otf │ │ │ │ └── README.md │ │ │ └── scss/ │ │ │ ├── _animated.scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _stacked.scss │ │ │ ├── _variables.scss │ │ │ ├── brands.scss │ │ │ ├── duotone.scss │ │ │ ├── fontawesome.scss │ │ │ ├── regular.scss │ │ │ └── solid.scss │ │ └── fonts.css │ ├── index.html │ ├── settings.json │ └── site.webmanifest ├── requirements.txt ├── runtime.txt ├── src/ │ ├── App.vue │ ├── __mocks__/ │ │ └── apollo.js │ ├── apollo.js │ ├── app.js │ ├── assets/ │ │ ├── demo-flow/ │ │ │ └── demo-flow.json │ │ └── fonts/ │ │ └── prefect-icons/ │ │ ├── style.scss │ │ └── variables.scss │ ├── auth/ │ │ ├── authentication.js │ │ ├── authorization.js │ │ └── index.js │ ├── components/ │ │ ├── AcceptConfirmInputRow.vue │ │ ├── Alert.vue │ │ ├── Artifacts/ │ │ │ ├── Artifact-NodeTree.vue │ │ │ ├── Artifact.vue │ │ │ └── Artifacts.vue │ │ ├── BreadCrumbs.vue │ │ ├── CancelButton.vue │ │ ├── Card-Title.vue │ │ ├── ChartCard/ │ │ │ ├── ChartCard.vue │ │ │ ├── ChartCardHeader-Ring.vue │ │ │ └── ChartCardHeader-Simple.vue │ │ ├── CloudHookForm.vue │ │ ├── ConcurrencyInfo.vue │ │ ├── ConfirmDialog.vue │ │ ├── CustomInputs/ │ │ │ ├── BaseCodeTextarea.vue │ │ │ ├── BaseDictInput.vue │ │ │ ├── CheckboxDictInput.vue │ │ │ ├── CodeInput.vue │ │ │ ├── DictInput.vue │ │ │ ├── DictInput2.vue │ │ │ ├── Highlight.vue │ │ │ ├── JsonInput.vue │ │ │ ├── JsonInput2.vue │ │ │ ├── KeyValueInput.vue │ │ │ ├── KeyValueTypeInputs/ │ │ │ │ ├── ArrayInput.vue │ │ │ │ ├── BooleanInput.vue │ │ │ │ ├── DateInput.vue │ │ │ │ ├── JsonParsingInput.vue │ │ │ │ ├── NullInput.vue │ │ │ │ ├── NumberInput.vue │ │ │ │ ├── ObjectInput.vue │ │ │ │ ├── StringInput.vue │ │ │ │ └── index.js │ │ │ ├── ListInput.vue │ │ │ ├── MultiLineInput.vue │ │ │ ├── ResettableWrapper.vue │ │ │ ├── YamlInput.vue │ │ │ ├── YamlInput2.vue │ │ │ └── readonlyProps.js │ │ ├── DateTime.vue │ │ ├── DeleteFlowButton.vue │ │ ├── DurationSpan.vue │ │ ├── EditableTextField.vue │ │ ├── EmphasizedIcon.vue │ │ ├── EndOfLifeBanner.vue │ │ ├── ExternalLink.vue │ │ ├── Feedback.vue │ │ ├── Footer.vue │ │ ├── FullPagination.vue │ │ ├── Functional/ │ │ │ ├── CronClock.vue │ │ │ ├── IntervalClock.vue │ │ │ ├── Transition-Height.js │ │ │ └── TruncatedSpan.vue │ │ ├── GetCloud.vue │ │ ├── GlobalSearchBar/ │ │ │ ├── GlobalSearch.vue │ │ │ ├── GlobalSearchIcon.vue │ │ │ ├── GlobalSearchResult.vue │ │ │ └── MResult.vue │ │ ├── HavingTrouble.vue │ │ ├── HeartbeatTimeline.vue │ │ ├── Icons/ │ │ │ ├── Hashicorp.vue │ │ │ ├── Nomad.vue │ │ │ ├── PagerDuty.vue │ │ │ ├── Prefect.vue │ │ │ ├── mr.vue │ │ │ ├── newPagerDuty.vue │ │ │ └── twilio.vue │ │ ├── KeyValueTable.vue │ │ ├── Label.vue │ │ ├── LabelEdit.vue │ │ ├── LabelWarning.vue │ │ ├── LastTenRuns.vue │ │ ├── License/ │ │ │ ├── ChangePlanDialog.vue │ │ │ └── UpgradeAlert.vue │ │ ├── LogsCard/ │ │ │ ├── DownloadMenu.vue │ │ │ ├── FilterMenu.vue │ │ │ ├── LogRow.vue │ │ │ └── LogsCard.vue │ │ ├── MenuTooltip.vue │ │ ├── Nav/ │ │ │ ├── ApplicationNav.vue │ │ │ ├── ChatLauncher.vue │ │ │ ├── ConnectionMenu.vue │ │ │ ├── CurrentTime.vue │ │ │ ├── HelpMenu.vue │ │ │ ├── Links.vue │ │ │ ├── MenuLink.vue │ │ │ ├── NotificationMenu.vue │ │ │ ├── TeamMenu.vue │ │ │ ├── TeamSideNav.vue │ │ │ ├── TeamSideNavButton.vue │ │ │ ├── TeamSwitcher.vue │ │ │ └── UserMenu.vue │ │ ├── NavTabBar.vue │ │ ├── Parameters.vue │ │ ├── ParametersForm.vue │ │ ├── PaymentCard.vue │ │ ├── PlanCard.vue │ │ ├── Plans/ │ │ │ ├── CardDetails.vue │ │ │ ├── Enterprise.vue │ │ │ ├── PlanSelectionForm.vue │ │ │ ├── Standard.vue │ │ │ └── Starter.vue │ │ ├── PrefectSchedule.vue │ │ ├── ResumeButton.vue │ │ ├── RunConfig/ │ │ │ ├── ArgumentHeading.vue │ │ │ ├── ArgumentInput.vue │ │ │ ├── ArgumentReference.vue │ │ │ ├── DateTimeSelector.vue │ │ │ ├── DockerRunForm.vue │ │ │ ├── EcsRunForm.vue │ │ │ ├── KubernetesRunForm.vue │ │ │ ├── LocalRunForm.vue │ │ │ ├── RunConfig.vue │ │ │ ├── RunConfigTypeButton.vue │ │ │ ├── RunConfigTypeSelect.vue │ │ │ ├── UniversalRunForm.vue │ │ │ ├── adjectives.js │ │ │ └── animals.js │ │ ├── RunStateTooltip.vue │ │ ├── ScheduleToggle.vue │ │ ├── Schematics/ │ │ │ ├── Legend.vue │ │ │ ├── Preview-Dynamic.vue │ │ │ ├── Preview-SearchResult.vue │ │ │ ├── Preview-Static.vue │ │ │ ├── Preview-Tile.vue │ │ │ ├── Schematic-Flow.vue │ │ │ ├── Schematic-Node.vue │ │ │ └── Tooltip.vue │ │ ├── SetStateDialog.vue │ │ ├── Snackbars/ │ │ │ └── Snackbars.vue │ │ ├── SupportBanner.vue │ │ ├── SystemActions/ │ │ │ ├── CancelAll.vue │ │ │ ├── ClearLate.vue │ │ │ └── WorkQueue.vue │ │ ├── TaskRunMenu.vue │ │ ├── TaskRunTooltip.vue │ │ ├── TeamListItem.vue │ │ ├── TimelineTooltip.vue │ │ ├── Tree/ │ │ │ └── Tree.vue │ │ ├── TutorialBanner.vue │ │ ├── UpgradeBadge.vue │ │ ├── Visualizations/ │ │ │ ├── BarChart.vue │ │ │ ├── RingChart.vue │ │ │ ├── StackedLineChart.vue │ │ │ ├── Timeline/ │ │ │ │ └── Bar.js │ │ │ └── Timeline.vue │ │ └── WorkQueueBanner.vue │ ├── directives/ │ │ └── disable-read-only.js │ ├── filters/ │ │ ├── duration.js │ │ ├── filterOnePercent.js │ │ ├── round.js │ │ └── shorten.js │ ├── graphql/ │ │ ├── Account/ │ │ │ ├── invitations.gql │ │ │ └── license-users.gql │ │ ├── Agent/ │ │ │ ├── FlowRuns.gql │ │ │ ├── agent-hooks.gql │ │ │ ├── agents.js │ │ │ ├── delete-agent.gql │ │ │ ├── in-progress-flow-runs.gql │ │ │ ├── recent-runs.gql │ │ │ ├── table-flow-runs-count.gql │ │ │ ├── table-flow-runs.gql │ │ │ └── timeline-flow-runs.gql │ │ ├── Artifacts/ │ │ │ ├── task-run-artifacts-aggregate.gql │ │ │ ├── task-run-artifacts.gql │ │ │ └── task-run-ids.gql │ │ ├── Automations/ │ │ │ ├── actions.gql │ │ │ ├── agent-config-by-pk.gql │ │ │ ├── agent-config.gql │ │ │ ├── delete-agent-config.gql │ │ │ ├── flow-config-by-pk.gql │ │ │ ├── flow-only-hooks.gql │ │ │ ├── flows.gql │ │ │ └── hooks.gql │ │ ├── Calendar/ │ │ │ ├── calendar-day-flow-runs.gql │ │ │ ├── calendar-day-ongoing-flow-runs.gql │ │ │ ├── calendar-day-running-flow-runs.gql │ │ │ ├── calendar-day-scheduled-flow-runs.gql │ │ │ ├── calendar-flow-groups.gql │ │ │ ├── calendar-flow-runs.gql │ │ │ ├── calendar-flows.gql │ │ │ ├── calendar-ongoing-flow-runs.gql │ │ │ ├── calendar-running-flow-runs.gql │ │ │ └── calendar-scheduled-flow-runs.gql │ │ ├── Dashboard/ │ │ │ ├── committed-usage.gql │ │ │ ├── failures-count.gql │ │ │ ├── failures-drawer.gql │ │ │ ├── flow-count.gql │ │ │ ├── flow-failures.gql │ │ │ ├── flow-run-drawer.gql │ │ │ ├── flow-runs-count.gql │ │ │ ├── flow-runs.gql │ │ │ ├── flows.js │ │ │ ├── heartbeat.gql │ │ │ ├── in-progress-flow-runs.gql │ │ │ ├── invoice.gql │ │ │ ├── last-flow-runs.gql │ │ │ ├── project-name.gql │ │ │ ├── project.gql │ │ │ ├── projects.gql │ │ │ ├── task-failures.gql │ │ │ ├── timeline-flow-runs.gql │ │ │ ├── timeline-flow.gql │ │ │ ├── timeline-scheduled-flow-runs.gql │ │ │ ├── upcoming-flow-runs-count.gql │ │ │ ├── upcoming-flow-runs.gql │ │ │ └── usage.gql │ │ ├── FirstRunWorkflow/ │ │ │ ├── flow-run.gql │ │ │ └── project-names.gql │ │ ├── Flow/ │ │ │ ├── cloud-hooks.gql │ │ │ ├── errors.gql │ │ │ ├── flow-by-pk.gql │ │ │ ├── flow-drawer.gql │ │ │ ├── flow-run-by-pk.gql │ │ │ ├── flow-runs.gql │ │ │ ├── flow-versions-count.gql │ │ │ ├── flow-versions-runs.gql │ │ │ ├── flow-versions.js │ │ │ ├── flow.js │ │ │ ├── heartbeat.gql │ │ │ ├── last-flow-run.gql │ │ │ ├── past-flow-runs.gql │ │ │ ├── project-names.gql │ │ │ ├── table-flow-runs-count.gql │ │ │ ├── table-flow-runs.gql │ │ │ ├── table-tasks-count.gql │ │ │ ├── table-tasks.gql │ │ │ ├── timeline-flow-runs.gql │ │ │ ├── upcoming-flow-runs.gql │ │ │ └── version-group.gql │ │ ├── FlowLabelLimit/ │ │ │ ├── delete-flow-concurrency-limit.gql │ │ │ ├── flow-label-limit.gql │ │ │ └── update-flow-concurrency-limit.gql │ │ ├── FlowLabelUsage/ │ │ │ └── flow-label-usage.gql │ │ ├── FlowRun/ │ │ │ ├── cancel-flow-run.gql │ │ │ ├── failed-task-runs.gql │ │ │ ├── flow-run.js │ │ │ ├── gantt-task-runs.gql │ │ │ ├── heartbeat.gql │ │ │ ├── states-aggregate.gql │ │ │ ├── states.gql │ │ │ ├── table-task-runs-count.gql │ │ │ ├── table-task-runs.gql │ │ │ ├── task-run-drawer.gql │ │ │ ├── task-run-ids.gql │ │ │ ├── task-runs-aggregate.gql │ │ │ ├── task-runs.gql │ │ │ ├── timeline-chart-task-runs.gql │ │ │ └── timeline-chart-tasks.gql │ │ ├── FlowRunLogs/ │ │ │ └── flow-run-metadata.gql │ │ ├── GlobalSearch/ │ │ │ ├── search-by-id.gql │ │ │ └── search-by-name.gql │ │ ├── Integrations/ │ │ │ └── PagerDutyActions.gql │ │ ├── KV/ │ │ │ ├── delete-key-value.gql │ │ │ ├── get-key-value.gql │ │ │ └── set-key-value.gql │ │ ├── License/ │ │ │ ├── create-self-serve-license.gql │ │ │ ├── create-usage-based-license.gql │ │ │ ├── license.gql │ │ │ ├── update-customer.gql │ │ │ ├── update-self-serve-cloud-license.gql │ │ │ └── update-stripe-customer.gql │ │ ├── Logs/ │ │ │ ├── flow-run-logs-scoping.gql │ │ │ ├── flow-run-logs.gql │ │ │ ├── retrieve-archived-logs.gql │ │ │ ├── task-run-logs-scoping.gql │ │ │ └── task-run-logs.gql │ │ ├── MappedTasks/ │ │ │ └── mapped-children.gql │ │ ├── Middleware/ │ │ │ ├── flow-group.gql │ │ │ └── flow.gql │ │ ├── Mutations/ │ │ │ ├── add-config-to-flow.gql │ │ │ ├── cancel-flow-run.gql │ │ │ ├── create-action.gql │ │ │ ├── create-agent-config.gql │ │ │ ├── create-agent-sla-failed-hook.gql │ │ │ ├── create-cloud-hook.gql │ │ │ ├── create-custom-role.gql │ │ │ ├── create-flow-run-state-changed-hook.gql │ │ │ ├── create-flow-run.gql │ │ │ ├── create-flow-sla-failed-hook.gql │ │ │ ├── create-flow-sla.gql │ │ │ ├── create-project.gql │ │ │ ├── create-runner-token.gql │ │ │ ├── create-tenant.gql │ │ │ ├── create-tutorial-flow-run.gql │ │ │ ├── delete-cloud-hook.gql │ │ │ ├── delete-flow-group-schedule.gql │ │ │ ├── delete-flow-run.gql │ │ │ ├── delete-hook.gql │ │ │ ├── delete_action.gql │ │ │ ├── delete_custom-role.gql │ │ │ ├── deploy-flow.gql │ │ │ ├── disable-flow-heartbeat.gql │ │ │ ├── disable-flow-lazarus-process.gql │ │ │ ├── disable-flow-version-lock.gql │ │ │ ├── enable-flow-heartbeat.gql │ │ │ ├── enable-flow-lazarus-process.gql │ │ │ ├── enable-flow-version-lock.gql │ │ │ ├── mark-as-read.gql │ │ │ ├── pause-tenant-work-queue.gql │ │ │ ├── resume-tenant-work-queue.gql │ │ │ ├── set-cloud-hook-active.gql │ │ │ ├── set-cloud-hook-inactive.gql │ │ │ ├── set-default-params.gql │ │ │ ├── set-flow-description.gql │ │ │ ├── set-flow-group-schedule.gql │ │ │ ├── set-flow-run-labels.gql │ │ │ ├── set-flow-run-name.gql │ │ │ ├── set-labels.gql │ │ │ ├── set-schedule-active.gql │ │ │ ├── set-schedule-inactive.gql │ │ │ ├── set-task-run-name.gql │ │ │ ├── test-cloud-hook.gql │ │ │ ├── update-custom-role.gql │ │ │ ├── update-flow-project.gql │ │ │ └── update-tenant-settings.gql │ │ ├── Nav/ │ │ │ ├── flow-runs.gql │ │ │ ├── flow.gql │ │ │ ├── flows.gql │ │ │ ├── projects.gql │ │ │ ├── task.gql │ │ │ └── tasks.gql │ │ ├── Notifications/ │ │ │ ├── all-notifications.gql │ │ │ ├── membership-invitation.gql │ │ │ ├── notifications-count-unread.gql │ │ │ ├── notifications-count.gql │ │ │ ├── notifications.js │ │ │ └── teams.gql │ │ ├── Playground/ │ │ │ └── schema.gql │ │ ├── Project/ │ │ │ ├── flow-ids.gql │ │ │ ├── flows-aggregate.gql │ │ │ ├── flows.gql │ │ │ └── project.gql │ │ ├── Projects/ │ │ │ ├── projects-aggregate.gql │ │ │ └── projects.gql │ │ ├── Schematics/ │ │ │ ├── flow-list.gql │ │ │ ├── flow-run.gql │ │ │ ├── flow.gql │ │ │ ├── task-run.gql │ │ │ └── task.gql │ │ ├── Secrets/ │ │ │ ├── delete-secret.gql │ │ │ └── set-secret.gql │ │ ├── Task/ │ │ │ ├── activity.gql │ │ │ ├── heartbeat.gql │ │ │ ├── last-task-run.gql │ │ │ ├── table-task-runs-count.gql │ │ │ ├── table-task-runs.gql │ │ │ ├── task-drawer.gql │ │ │ ├── task-runs-count.gql │ │ │ ├── task-runs-drawer-count.gql │ │ │ ├── task-runs-drawer.gql │ │ │ ├── task-runs.gql │ │ │ └── task.gql │ │ ├── TaskRun/ │ │ │ ├── activity.gql │ │ │ ├── dependencies.gql │ │ │ ├── heartbeat.gql │ │ │ ├── set-flow-run-states.gql │ │ │ ├── set-task-run-states.gql │ │ │ ├── table-mapped-task-runs-count.gql │ │ │ ├── table-mapped-task-runs.gql │ │ │ ├── task-run-states-count.gql │ │ │ ├── task-run-states.gql │ │ │ ├── task-run.gql │ │ │ └── utility_downstream_tasks.gql │ │ ├── TaskTagLimit/ │ │ │ ├── delete-task-concurrency-limit.gql │ │ │ ├── task-tag-limit.gql │ │ │ └── update-task-concurrency-limit.gql │ │ ├── TaskTagUsage/ │ │ │ └── task-tag-usage.gql │ │ ├── TeamSettings/ │ │ │ ├── actions.gql │ │ │ ├── cloud-hooks.gql │ │ │ ├── data-to-clear.js │ │ │ ├── delete-action.gql │ │ │ ├── delete-project.gql │ │ │ ├── flow-version-groups.js │ │ │ ├── flows.gql │ │ │ ├── membership-invitation-roles.gql │ │ │ ├── membership-roles.gql │ │ │ ├── memberships.gql │ │ │ ├── modify-project.gql │ │ │ ├── permissions.gql │ │ │ ├── project.gql │ │ │ ├── projects.gql │ │ │ ├── roles.gql │ │ │ ├── test-action.gql │ │ │ └── usage.gql │ │ ├── Tenant/ │ │ │ ├── accept-membership-invitation.gql │ │ │ ├── create-enterprise-tenant.gql │ │ │ ├── create-membership-invitation.gql │ │ │ ├── delete-enterprise-tenant.gql │ │ │ ├── delete-membership-invitation.gql │ │ │ ├── delete-membership.gql │ │ │ ├── delete-tenant.gql │ │ │ ├── membership-invitation.gql │ │ │ ├── membership.gql │ │ │ ├── pending-invitations-by-email.gql │ │ │ ├── pending-invitations.gql │ │ │ ├── set-membership-role.gql │ │ │ ├── tenant-by-pk.gql │ │ │ ├── tenant-by-slug.gql │ │ │ ├── tenant-id-by-membership-id.gql │ │ │ ├── tenant-secret-names.gql │ │ │ ├── tenant-token.gql │ │ │ ├── tenant-users.gql │ │ │ ├── tenants.js │ │ │ └── update-tenant.gql │ │ ├── Tokens/ │ │ │ ├── api-keys.gql │ │ │ ├── api-tokens.gql │ │ │ ├── create-api-key.gql │ │ │ ├── create-api-token.gql │ │ │ ├── delete-api-key.gql │ │ │ ├── delete-token.gql │ │ │ └── user-tokens.gql │ │ ├── Update/ │ │ │ └── write-run-logs.gql │ │ ├── User/ │ │ │ ├── create-service-account.gql │ │ │ ├── delete-service-account.gql │ │ │ ├── update-user-details.gql │ │ │ ├── update-user-settings.gql │ │ │ └── user.gql │ │ ├── api.gql │ │ ├── concurrent-runs.gql │ │ ├── hello.gql │ │ ├── log-in.gql │ │ ├── log-out.gql │ │ ├── refresh-token.gql │ │ └── support/ │ │ └── send-feedback.gql │ ├── layouts/ │ │ ├── AgentLayout.vue │ │ ├── DashboardLargeActivityLayout.vue │ │ ├── DashboardLargeChartLayout.vue │ │ ├── DashboardLayout.vue │ │ ├── FullPageLayout.vue │ │ ├── ManagementLayout.vue │ │ ├── NotificationsLayout.vue │ │ ├── SubPageNav.vue │ │ ├── TileLayout-Alternate.vue │ │ ├── TileLayout-Full.vue │ │ ├── TileLayout.vue │ │ └── TutorialLayout.vue │ ├── main.js │ ├── middleware/ │ │ ├── flowNavGuard.js │ │ └── prefectAuth.js │ ├── mixins/ │ │ ├── authMixin.js │ │ ├── cancelLateRunsMixin.js │ │ ├── changeStateMixin.js │ │ ├── cloudHookMixin.js │ │ ├── eventsMixin.js │ │ ├── flowRunHistoryMixin.js │ │ ├── formatTimeMixin.js │ │ ├── heartbeatMixin.js │ │ ├── membershipInvitationMixin.js │ │ ├── parametersMixin.js │ │ ├── paymentMixin.js │ │ ├── polling/ │ │ │ ├── pollsAgentsMixin.js │ │ │ ├── pollsFlowsMixin.js │ │ │ ├── pollsProjectsMixin.js │ │ │ └── pollsTenantsMixin.js │ │ ├── runFlowNow.js │ │ └── teamProfileMixin.js │ ├── pages/ │ │ ├── AccessDenied.vue │ │ ├── Admin/ │ │ │ ├── Account/ │ │ │ │ ├── Account.vue │ │ │ │ ├── Billing.vue │ │ │ │ ├── ClearDataDialog.vue │ │ │ │ ├── License.vue │ │ │ │ ├── Profile.vue │ │ │ │ ├── Usage/ │ │ │ │ │ ├── CurrentUsers.vue │ │ │ │ │ ├── Usage.vue │ │ │ │ │ ├── UsageCycle.vue │ │ │ │ │ ├── UsageTimeline.vue │ │ │ │ │ └── UsageToday.vue │ │ │ │ └── Users.vue │ │ │ ├── Admin.vue │ │ │ └── Teams/ │ │ │ ├── InviteUsers.vue │ │ │ ├── NewTeam.vue │ │ │ ├── TeamForm.vue │ │ │ ├── Teams.vue │ │ │ └── TeamsOverview.vue │ │ ├── Agents/ │ │ │ ├── AgentFlowRunHistory.vue │ │ │ ├── AgentFlowRunTable-Tile.vue │ │ │ ├── AgentPage.vue │ │ │ ├── AgentTile.vue │ │ │ ├── Agents.vue │ │ │ └── SubmittableRuns.vue │ │ ├── Auth/ │ │ │ ├── Auth.vue │ │ │ ├── ForgotPassword.vue │ │ │ ├── Logout.vue │ │ │ ├── SignIn.vue │ │ │ └── SignUp.vue │ │ ├── Calendar/ │ │ │ ├── Calendar-Day.vue │ │ │ ├── Calendar-FlowFilter.vue │ │ │ ├── Calendar-View.vue │ │ │ ├── FlowName.vue │ │ │ └── RunMenu.vue │ │ ├── Dashboard/ │ │ │ ├── Agents-Tile.vue │ │ │ ├── ApiHealthCheck-Tile.vue │ │ │ ├── Automations/ │ │ │ │ ├── AddAction.vue │ │ │ │ ├── AddAutomationCard.vue │ │ │ │ ├── AutomationCard.vue │ │ │ │ ├── Automations.vue │ │ │ │ ├── CreateAgentConfigForm.vue │ │ │ │ └── DeleteAgentConfig.vue │ │ │ ├── Dashboard.vue │ │ │ ├── FailedFlows-Tile.vue │ │ │ ├── FailedTasks-Tile.vue │ │ │ ├── FlowRunHeartbeat-Tile.vue │ │ │ ├── FlowRunHistory-Tile.vue │ │ │ ├── FlowTable-Tile.vue │ │ │ ├── InProgress-Tile.vue │ │ │ ├── NewProject-Dialog.vue │ │ │ ├── Notifications-Tile.vue │ │ │ ├── Project-Selector.vue │ │ │ ├── Summary-Tile.vue │ │ │ ├── Task-Item.vue │ │ │ ├── UpcomingRuns-Tile.vue │ │ │ └── UsageTiles/ │ │ │ ├── CommittedUsage-Tile.vue │ │ │ ├── CycleUsage-Tile.vue │ │ │ └── UpgradeUsage-Tile.vue │ │ ├── Flow/ │ │ │ ├── Actions.vue │ │ │ ├── Automations-Tile.vue │ │ │ ├── Describe.vue │ │ │ ├── Details-Tile.vue │ │ │ ├── Errors-Tile.vue │ │ │ ├── Flow.vue │ │ │ ├── FlowRunHeartbeat-Tile.vue │ │ │ ├── FlowRunHistory-Tile.vue │ │ │ ├── FlowRunTable-Tile.vue │ │ │ ├── Run.vue │ │ │ ├── Schematic-Tile.vue │ │ │ ├── Settings/ │ │ │ │ ├── ClockForm.vue │ │ │ │ ├── ClockForms/ │ │ │ │ │ ├── Cron.vue │ │ │ │ │ ├── Interval.vue │ │ │ │ │ └── Simple.vue │ │ │ │ ├── CloudHooks.vue │ │ │ │ ├── DefaultParameters.vue │ │ │ │ ├── General.vue │ │ │ │ ├── ScheduleParameters.vue │ │ │ │ └── Schedules.vue │ │ │ ├── Settings.vue │ │ │ ├── Summary-Tile.vue │ │ │ ├── TasksTable-Tile.vue │ │ │ ├── UpcomingRuns-Tile.vue │ │ │ └── Versions-Tile.vue │ │ ├── FlowRun/ │ │ │ ├── Actions.vue │ │ │ ├── Details-Tile.vue │ │ │ ├── FlowRun.vue │ │ │ ├── Restart-Dialog.vue │ │ │ ├── Schematic-Tile.vue │ │ │ ├── TaskRunHeartbeat-Tile.vue │ │ │ ├── TaskRunTable-Tile.vue │ │ │ └── Timeline-Tile.vue │ │ ├── GettingStarted/ │ │ │ ├── ConnectAgent-Section.vue │ │ │ ├── CreateTenant-Section.vue │ │ │ ├── GettingStarted.vue │ │ │ └── StartPrefectServer-Section.vue │ │ ├── Integrations/ │ │ │ └── PagerDuty.vue │ │ ├── InteractiveAPI/ │ │ │ └── InteractiveAPI.vue │ │ ├── NotFoundPage.vue │ │ ├── Notifications/ │ │ │ ├── NotificationGroup.vue │ │ │ ├── NotificationTypes/ │ │ │ │ ├── Approval-Notification.vue │ │ │ │ ├── FlowRun-Notification.vue │ │ │ │ ├── Membership-Notification.vue │ │ │ │ ├── Message-Notification.vue │ │ │ │ └── WhatsNew-Notification.vue │ │ │ ├── Notifications.vue │ │ │ └── utils.js │ │ ├── Onboard/ │ │ │ ├── AcceptInvitationPage.vue │ │ │ ├── NameTeam.vue │ │ │ ├── Onboard-Page.vue │ │ │ ├── Resources.vue │ │ │ └── Welcome.vue │ │ ├── Plans.vue │ │ ├── Schematics/ │ │ │ ├── Schematics.vue │ │ │ └── View.vue │ │ ├── Support.vue │ │ ├── Task/ │ │ │ ├── Dependencies-Tile.vue │ │ │ ├── Details-Tile.vue │ │ │ ├── Task.vue │ │ │ ├── TaskRunHeartbeat-Tile.vue │ │ │ └── TaskRunTable-Tile.vue │ │ ├── TaskRun/ │ │ │ ├── Actions.vue │ │ │ ├── Dependencies-Tile.vue │ │ │ ├── Details-Tile.vue │ │ │ ├── MappedTaskRuns-Tile.vue │ │ │ ├── Restart-Dialog.vue │ │ │ ├── TaskRun.vue │ │ │ └── TaskRunHeartbeat-Tile.vue │ │ ├── TeamSettings/ │ │ │ ├── Actions.vue │ │ │ ├── CloudHooks.vue │ │ │ ├── CreateRoleTable.vue │ │ │ ├── FlowConcurrency.vue │ │ │ ├── FlowGroups.vue │ │ │ ├── KV.vue │ │ │ ├── Members/ │ │ │ │ ├── Invitations-Table.vue │ │ │ │ └── Members-Table.vue │ │ │ ├── Members.vue │ │ │ ├── PlanComparison.vue │ │ │ ├── Projects.vue │ │ │ ├── Roles.vue │ │ │ ├── Secrets.vue │ │ │ ├── Service-Accounts-Table.vue │ │ │ ├── Service-Accounts.vue │ │ │ ├── TaskConcurrency.vue │ │ │ ├── TeamSettings.vue │ │ │ └── Tokens.vue │ │ ├── TeamSwitched.vue │ │ ├── Tutorials/ │ │ │ ├── FlowRun/ │ │ │ │ ├── CreatePersonalAccessTokenStep.vue │ │ │ │ ├── CreateProjectStep.vue │ │ │ │ ├── DeployFlowStep.vue │ │ │ │ ├── FlowRunTutorial.vue │ │ │ │ ├── RunAFlowStep.vue │ │ │ │ └── RunLocalAgentStep.vue │ │ │ ├── Markdown/ │ │ │ │ └── Universal-Deploy.md │ │ │ └── Tutorials.vue │ │ └── UserSettings/ │ │ ├── APIKeys.vue │ │ ├── Profile.vue │ │ ├── Teams.vue │ │ ├── Tokens.vue │ │ └── UserSettings.vue │ ├── plugins/ │ │ ├── logrocket.js │ │ ├── okta.js │ │ └── vuetify.js │ ├── router.js │ ├── store/ │ │ ├── agent/ │ │ │ └── index.js │ │ ├── alert/ │ │ │ └── index.js │ │ ├── api/ │ │ │ └── index.js │ │ ├── auth/ │ │ │ └── index.js │ │ ├── data/ │ │ │ └── index.js │ │ ├── index.js │ │ ├── license/ │ │ │ └── index.js │ │ ├── polling/ │ │ │ └── index.js │ │ ├── refresh/ │ │ │ └── index.js │ │ ├── sideNav/ │ │ │ └── index.js │ │ ├── tenant/ │ │ │ └── index.js │ │ └── user/ │ │ └── index.js │ ├── styles/ │ │ ├── atelier-sulphurpool-light.scss │ │ ├── global.scss │ │ ├── json-input-style.scss │ │ ├── md-style.scss │ │ ├── playground.scss │ │ ├── slash.scss │ │ └── yaml-input-style.scss │ ├── utils/ │ │ ├── Tree.js │ │ ├── array.js │ │ ├── automations.js │ │ ├── cloudHooks.js │ │ ├── cron.js │ │ ├── curveMetro.js │ │ ├── dateTime.js │ │ ├── error.js │ │ ├── features.js │ │ ├── html.js │ │ ├── json.js │ │ ├── markdownParser.js │ │ ├── moment.js │ │ ├── ordinal.js │ │ ├── plans.js │ │ ├── regEx.js │ │ ├── roles.js │ │ ├── states.js │ │ ├── string.js │ │ ├── types.js │ │ └── yaml.js │ ├── vue-apollo.js │ └── workers/ │ ├── auth.worker.js │ ├── cache.worker.js │ ├── schematic.js │ ├── timeline.js │ └── util/ │ └── worker-interface.js ├── start_server.sh ├── stylelint.config.js ├── tests/ │ ├── .eslintrc.js │ ├── __mocks__/ │ │ ├── @auth0/ │ │ │ ├── auth0-js.js │ │ │ └── auth0-spa-js.js │ │ └── @okta/ │ │ └── okta-auth-js.js │ ├── jestSetup.js │ └── unit/ │ ├── auth/ │ │ ├── authentication-construction.spec.js │ │ ├── authentication.spec.js │ │ ├── authorization.spec.js │ │ └── index.spec.js │ ├── main.spec.js │ ├── middleware/ │ │ └── flowNavGuard.spec.js │ └── store/ │ ├── agent.spec.js │ ├── alert.spec.js │ ├── api.spec.js │ ├── auth.spec.js │ ├── data.spec.js │ ├── license.spec.js │ ├── mockTokens.js │ ├── refresh.spec.js │ ├── sidenav.spec.js │ ├── tenant.spec.js │ └── user.spec.js └── vue.config.js
SYMBOL INDEX (1139 symbols across 75 files)
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/index.d.ts
type IconPrefix (line 1) | type IconPrefix = "fas" | "fab" | "far" | "fal" | "fad";
type IconPathData (line 2) | type IconPathData = string | string[]
type IconLookup (line 4) | interface IconLookup {
type IconDefinition (line 10) | interface IconDefinition extends IconLookup {
type IconPack (line 20) | interface IconPack {
type IconName (line 24) | type IconName = 'aws' |
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/all.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
function bunker (line 197) | function bunker(fn) {
function ownKeys (line 207) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 225) | function _objectSpread2(target) {
function _defineProperty (line 245) | function _defineProperty(obj, key, value) {
function defineIcons (line 267) | function defineIcons(prefix, icons) {
function bunker (line 398) | function bunker(fn) {
function ownKeys (line 408) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 426) | function _objectSpread2(target) {
function _defineProperty (line 446) | function _defineProperty(obj, key, value) {
function defineIcons (line 468) | function defineIcons(prefix, icons) {
function bunker (line 558) | function bunker(fn) {
function ownKeys (line 568) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 586) | function _objectSpread2(target) {
function _defineProperty (line 606) | function _defineProperty(obj, key, value) {
function defineIcons (line 628) | function defineIcons(prefix, icons) {
function ownKeys (line 700) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 718) | function _objectSpread2(target) {
function _typeof (line 738) | function _typeof(obj) {
function _classCallCheck (line 754) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 760) | function _defineProperties(target, props) {
function _createClass (line 770) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 776) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 791) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 795) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 799) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 803) | function _arrayWithHoles(arr) {
function _iterableToArray (line 807) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 811) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 841) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 850) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 858) | function _nonIterableSpread() {
function _nonIterableRest (line 862) | function _nonIterableRest() {
function getAttrConfig (line 957) | function getAttrConfig(attr) {
function coerce (line 965) | function coerce(val) {
function domready (line 1036) | function domready (fn) {
function asyncFlush (line 1053) | function asyncFlush() {
function asyncCall (line 1064) | function asyncCall(callback, arg) {
function invokeResolver (line 1073) | function invokeResolver(resolver, promise) {
function invokeCallback (line 1089) | function invokeCallback(subscriber) {
function handleThenable (line 1117) | function handleThenable(promise, value) {
function resolve (line 1160) | function resolve(promise, value) {
function fulfill (line 1166) | function fulfill(promise, value) {
function reject (line 1174) | function reject(promise, reason) {
function publish (line 1182) | function publish(promise) {
function publishFulfillment (line 1186) | function publishFulfillment(promise) {
function publishRejection (line 1191) | function publishRejection(promise) {
function notifyRejectionHandled (line 1200) | function notifyRejectionHandled(promise) {
function P (line 1208) | function P(resolver) {
function resolver (line 1267) | function resolver(index) {
function isReserved (line 1340) | function isReserved(name) {
function bunker (line 1344) | function bunker(fn) {
function insertCss (line 1353) | function insertCss(css) {
function nextUniqueId (line 1377) | function nextUniqueId() {
function toArray (line 1387) | function toArray(obj) {
function classArray (line 1396) | function classArray(node) {
function getIconName (line 1405) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 1416) | function htmlEscape(str) {
function joinAttributes (line 1419) | function joinAttributes(attributes) {
function joinStyles (line 1424) | function joinStyles(styles) {
function transformIsMeaningful (line 1429) | function transformIsMeaningful(transform) {
function transformForSvg (line 1432) | function transformForSvg(_ref) {
function transformForCss (line 1454) | function transformForCss(_ref2) {
function fillBlack (line 1484) | function fillBlack(abstract) {
function deGroup (line 1494) | function deGroup(abstract) {
function makeIconMasking (line 1502) | function makeIconMasking (_ref) {
function makeIconStandard (line 1575) | function makeIconStandard (_ref) {
function asIcon (line 1616) | function asIcon (_ref) {
function asSymbol (line 1643) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 1665) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1742) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1799) | function makeLayersCounterAbstract(params) {
function toHex (line 1909) | function toHex(unicode) {
function defineIcons (line 1920) | function defineIcons(prefix, icons) {
function byUnicode (line 2001) | function byUnicode(prefix, unicode) {
function byLigature (line 2004) | function byLigature(prefix, ligature) {
function byOldName (line 2007) | function byOldName(name) {
function getCanonicalIcon (line 2022) | function getCanonicalIcon(values) {
function iconFromMapping (line 2041) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 2051) | function toHtml(abstractNodes) {
function isWatched (line 2067) | function isWatched(node) {
function getMutator (line 2072) | function getMutator() {
function performOperationSync (line 2131) | function performOperationSync(op) {
function perform (line 2135) | function perform(mutations, callback) {
function disableObservation (line 2157) | function disableObservation() {
function enableObservation (line 2160) | function enableObservation() {
function observe (line 2164) | function observe(options) {
function disconnect (line 2215) | function disconnect() {
function styleParser (line 2220) | function styleParser (node) {
function classParser (line 2241) | function classParser (node) {
function transformParser (line 2329) | function transformParser (node) {
function symbolParser (line 2333) | function symbolParser (node) {
function attributesParser (line 2338) | function attributesParser (node) {
function maskParser (line 2361) | function maskParser (node) {
function blankMeta (line 2373) | function blankMeta() {
function parseMeta (line 2390) | function parseMeta(node) {
function MissingIcon (line 2418) | function MissingIcon(error) {
function asFoundIcon (line 2497) | function asFoundIcon(icon) {
function findIcon (line 2546) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 2570) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 2606) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 2635) | function generateMutation(node) {
function onTree (line 2645) | function onTree(root) {
function onNode (line 2715) | function onNode(node) {
function replaceForPosition (line 2724) | function replaceForPosition(node, position) {
function replace (line 2801) | function replace(node) {
function processable (line 2805) | function processable(node) {
function searchPseudoElements (line 2809) | function searchPseudoElements (root) {
function css (line 2829) | function css () {
function Library (line 2847) | function Library() {
function ensureCss (line 2895) | function ensureCss() {
function apiObject (line 2903) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2925) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2933) | function resolveIcons(next) {
function bootstrap (line 3176) | function bootstrap() {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/brands.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/duotone.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/fontawesome.js
function ownKeys (line 8) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 26) | function _objectSpread2(target) {
function _typeof (line 46) | function _typeof(obj) {
function _classCallCheck (line 62) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 68) | function _defineProperties(target, props) {
function _createClass (line 78) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 84) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 99) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 103) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 107) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 111) | function _arrayWithHoles(arr) {
function _iterableToArray (line 115) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 119) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 149) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 158) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 166) | function _nonIterableSpread() {
function _nonIterableRest (line 170) | function _nonIterableRest() {
function getAttrConfig (line 265) | function getAttrConfig(attr) {
function coerce (line 273) | function coerce(val) {
function domready (line 344) | function domready (fn) {
function asyncFlush (line 361) | function asyncFlush() {
function asyncCall (line 372) | function asyncCall(callback, arg) {
function invokeResolver (line 381) | function invokeResolver(resolver, promise) {
function invokeCallback (line 397) | function invokeCallback(subscriber) {
function handleThenable (line 425) | function handleThenable(promise, value) {
function resolve (line 468) | function resolve(promise, value) {
function fulfill (line 474) | function fulfill(promise, value) {
function reject (line 482) | function reject(promise, reason) {
function publish (line 490) | function publish(promise) {
function publishFulfillment (line 494) | function publishFulfillment(promise) {
function publishRejection (line 499) | function publishRejection(promise) {
function notifyRejectionHandled (line 508) | function notifyRejectionHandled(promise) {
function P (line 516) | function P(resolver) {
function resolver (line 575) | function resolver(index) {
function isReserved (line 648) | function isReserved(name) {
function bunker (line 652) | function bunker(fn) {
function insertCss (line 661) | function insertCss(css) {
function nextUniqueId (line 685) | function nextUniqueId() {
function toArray (line 695) | function toArray(obj) {
function classArray (line 704) | function classArray(node) {
function getIconName (line 713) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 724) | function htmlEscape(str) {
function joinAttributes (line 727) | function joinAttributes(attributes) {
function joinStyles (line 732) | function joinStyles(styles) {
function transformIsMeaningful (line 737) | function transformIsMeaningful(transform) {
function transformForSvg (line 740) | function transformForSvg(_ref) {
function transformForCss (line 762) | function transformForCss(_ref2) {
function fillBlack (line 792) | function fillBlack(abstract) {
function deGroup (line 802) | function deGroup(abstract) {
function makeIconMasking (line 810) | function makeIconMasking (_ref) {
function makeIconStandard (line 883) | function makeIconStandard (_ref) {
function asIcon (line 924) | function asIcon (_ref) {
function asSymbol (line 951) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 973) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1050) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1107) | function makeLayersCounterAbstract(params) {
function toHex (line 1217) | function toHex(unicode) {
function defineIcons (line 1228) | function defineIcons(prefix, icons) {
function byUnicode (line 1309) | function byUnicode(prefix, unicode) {
function byLigature (line 1312) | function byLigature(prefix, ligature) {
function byOldName (line 1315) | function byOldName(name) {
function getCanonicalIcon (line 1330) | function getCanonicalIcon(values) {
function iconFromMapping (line 1349) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 1359) | function toHtml(abstractNodes) {
function isWatched (line 1375) | function isWatched(node) {
function getMutator (line 1380) | function getMutator() {
function performOperationSync (line 1439) | function performOperationSync(op) {
function perform (line 1443) | function perform(mutations, callback) {
function disableObservation (line 1465) | function disableObservation() {
function enableObservation (line 1468) | function enableObservation() {
function observe (line 1472) | function observe(options) {
function disconnect (line 1523) | function disconnect() {
function styleParser (line 1528) | function styleParser (node) {
function classParser (line 1549) | function classParser (node) {
function transformParser (line 1637) | function transformParser (node) {
function symbolParser (line 1641) | function symbolParser (node) {
function attributesParser (line 1646) | function attributesParser (node) {
function maskParser (line 1669) | function maskParser (node) {
function blankMeta (line 1681) | function blankMeta() {
function parseMeta (line 1698) | function parseMeta(node) {
function MissingIcon (line 1726) | function MissingIcon(error) {
function asFoundIcon (line 1805) | function asFoundIcon(icon) {
function findIcon (line 1854) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 1878) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 1914) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 1943) | function generateMutation(node) {
function onTree (line 1953) | function onTree(root) {
function onNode (line 2023) | function onNode(node) {
function replaceForPosition (line 2032) | function replaceForPosition(node, position) {
function replace (line 2109) | function replace(node) {
function processable (line 2113) | function processable(node) {
function searchPseudoElements (line 2117) | function searchPseudoElements (root) {
function css (line 2137) | function css () {
function Library (line 2155) | function Library() {
function ensureCss (line 2203) | function ensureCss() {
function apiObject (line 2211) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2233) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2241) | function resolveIcons(next) {
function bootstrap (line 2484) | function bootstrap() {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/regular.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/solid.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.d.ts
type IconProp (line 20) | type IconProp = IconName | [IconPrefix, IconName] | IconLookup;
type FlipProp (line 21) | type FlipProp = "horizontal" | "vertical" | "both";
type SizeProp (line 22) | type SizeProp =
type PullProp (line 36) | type PullProp = "left" | "right";
type RotateProp (line 37) | type RotateProp = 90 | 180 | 270;
type FaSymbol (line 38) | type FaSymbol = string | boolean;
type Config (line 39) | interface Config {
type AbstractElement (line 51) | interface AbstractElement {
type FontawesomeObject (line 56) | interface FontawesomeObject {
type Icon (line 61) | interface Icon extends FontawesomeObject, IconDefinition {
type Text (line 64) | interface Text extends FontawesomeObject {
type Counter (line 67) | interface Counter extends FontawesomeObject {
type Layer (line 70) | interface Layer extends FontawesomeObject {
type IconOrText (line 73) | type IconOrText = Icon | Text;
type Attributes (line 74) | interface Attributes {
type Styles (line 77) | interface Styles {
type Transform (line 80) | interface Transform {
type Params (line 88) | interface Params {
type CounterParams (line 95) | interface CounterParams extends Params {
type LayerParams (line 97) | interface LayerParams {
type TextParams (line 100) | interface TextParams extends Params {
type IconParams (line 103) | interface IconParams extends Params {
type DOM (line 109) | interface DOM {
type IconDefinitionOrPack (line 115) | type IconDefinitionOrPack = IconDefinition | IconPack;
type Library (line 116) | interface Library {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.es.js
function ownKeys (line 5) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 23) | function _objectSpread2(target) {
function _typeof (line 43) | function _typeof(obj) {
function _classCallCheck (line 59) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 65) | function _defineProperties(target, props) {
function _createClass (line 75) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 81) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 96) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 100) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 104) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 108) | function _arrayWithHoles(arr) {
function _iterableToArray (line 112) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 116) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 146) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 155) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 163) | function _nonIterableSpread() {
function _nonIterableRest (line 167) | function _nonIterableRest() {
function getAttrConfig (line 262) | function getAttrConfig(attr) {
function coerce (line 270) | function coerce(val) {
function domready (line 341) | function domready (fn) {
function asyncFlush (line 358) | function asyncFlush() {
function asyncCall (line 369) | function asyncCall(callback, arg) {
function invokeResolver (line 378) | function invokeResolver(resolver, promise) {
function invokeCallback (line 394) | function invokeCallback(subscriber) {
function handleThenable (line 422) | function handleThenable(promise, value) {
function resolve (line 465) | function resolve(promise, value) {
function fulfill (line 471) | function fulfill(promise, value) {
function reject (line 479) | function reject(promise, reason) {
function publish (line 487) | function publish(promise) {
function publishFulfillment (line 491) | function publishFulfillment(promise) {
function publishRejection (line 496) | function publishRejection(promise) {
function notifyRejectionHandled (line 505) | function notifyRejectionHandled(promise) {
function P (line 513) | function P(resolver) {
function resolver (line 572) | function resolver(index) {
function isReserved (line 645) | function isReserved(name) {
function insertCss (line 648) | function insertCss(css) {
function nextUniqueId (line 672) | function nextUniqueId() {
function toArray (line 682) | function toArray(obj) {
function classArray (line 691) | function classArray(node) {
function getIconName (line 700) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 711) | function htmlEscape(str) {
function joinAttributes (line 714) | function joinAttributes(attributes) {
function joinStyles (line 719) | function joinStyles(styles) {
function transformIsMeaningful (line 724) | function transformIsMeaningful(transform) {
function transformForSvg (line 727) | function transformForSvg(_ref) {
function transformForCss (line 749) | function transformForCss(_ref2) {
function fillBlack (line 779) | function fillBlack(abstract) {
function deGroup (line 789) | function deGroup(abstract) {
function makeIconMasking (line 797) | function makeIconMasking (_ref) {
function makeIconStandard (line 870) | function makeIconStandard (_ref) {
function asIcon (line 911) | function asIcon (_ref) {
function asSymbol (line 938) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 960) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1037) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1094) | function makeLayersCounterAbstract(params) {
function toHex (line 1204) | function toHex(unicode) {
function defineIcons (line 1215) | function defineIcons(prefix, icons) {
function byUnicode (line 1296) | function byUnicode(prefix, unicode) {
function byLigature (line 1299) | function byLigature(prefix, ligature) {
function byOldName (line 1302) | function byOldName(name) {
function getCanonicalIcon (line 1317) | function getCanonicalIcon(values) {
function iconFromMapping (line 1336) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 1346) | function toHtml(abstractNodes) {
function isWatched (line 1362) | function isWatched(node) {
function getMutator (line 1367) | function getMutator() {
function performOperationSync (line 1426) | function performOperationSync(op) {
function perform (line 1430) | function perform(mutations, callback) {
function disableObservation (line 1452) | function disableObservation() {
function enableObservation (line 1455) | function enableObservation() {
function observe (line 1459) | function observe(options) {
function disconnect (line 1510) | function disconnect() {
function styleParser (line 1515) | function styleParser (node) {
function classParser (line 1536) | function classParser (node) {
function transformParser (line 1624) | function transformParser (node) {
function symbolParser (line 1628) | function symbolParser (node) {
function attributesParser (line 1633) | function attributesParser (node) {
function maskParser (line 1656) | function maskParser (node) {
function blankMeta (line 1668) | function blankMeta() {
function parseMeta (line 1685) | function parseMeta(node) {
function MissingIcon (line 1713) | function MissingIcon(error) {
function asFoundIcon (line 1792) | function asFoundIcon(icon) {
function findIcon (line 1841) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 1865) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 1901) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 1930) | function generateMutation(node) {
function onTree (line 1940) | function onTree(root) {
function onNode (line 2010) | function onNode(node) {
function replaceForPosition (line 2019) | function replaceForPosition(node, position) {
function replace (line 2096) | function replace(node) {
function processable (line 2100) | function processable(node) {
function searchPseudoElements (line 2104) | function searchPseudoElements (root) {
function css (line 2124) | function css () {
function Library (line 2142) | function Library() {
function ensureCss (line 2190) | function ensureCss() {
function apiObject (line 2198) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2220) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2228) | function resolveIcons(next) {
FILE: public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.js
function ownKeys (line 11) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 29) | function _objectSpread2(target) {
function _typeof (line 49) | function _typeof(obj) {
function _classCallCheck (line 65) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 71) | function _defineProperties(target, props) {
function _createClass (line 81) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 87) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 102) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 106) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 110) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 114) | function _arrayWithHoles(arr) {
function _iterableToArray (line 118) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 122) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 152) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 161) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 169) | function _nonIterableSpread() {
function _nonIterableRest (line 173) | function _nonIterableRest() {
function getAttrConfig (line 268) | function getAttrConfig(attr) {
function coerce (line 276) | function coerce(val) {
function domready (line 347) | function domready (fn) {
function asyncFlush (line 364) | function asyncFlush() {
function asyncCall (line 375) | function asyncCall(callback, arg) {
function invokeResolver (line 384) | function invokeResolver(resolver, promise) {
function invokeCallback (line 400) | function invokeCallback(subscriber) {
function handleThenable (line 428) | function handleThenable(promise, value) {
function resolve (line 471) | function resolve(promise, value) {
function fulfill (line 477) | function fulfill(promise, value) {
function reject (line 485) | function reject(promise, reason) {
function publish (line 493) | function publish(promise) {
function publishFulfillment (line 497) | function publishFulfillment(promise) {
function publishRejection (line 502) | function publishRejection(promise) {
function notifyRejectionHandled (line 511) | function notifyRejectionHandled(promise) {
function P (line 519) | function P(resolver) {
function resolver (line 578) | function resolver(index) {
function isReserved (line 651) | function isReserved(name) {
function insertCss (line 654) | function insertCss(css) {
function nextUniqueId (line 678) | function nextUniqueId() {
function toArray (line 688) | function toArray(obj) {
function classArray (line 697) | function classArray(node) {
function getIconName (line 706) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 717) | function htmlEscape(str) {
function joinAttributes (line 720) | function joinAttributes(attributes) {
function joinStyles (line 725) | function joinStyles(styles) {
function transformIsMeaningful (line 730) | function transformIsMeaningful(transform) {
function transformForSvg (line 733) | function transformForSvg(_ref) {
function transformForCss (line 755) | function transformForCss(_ref2) {
function fillBlack (line 785) | function fillBlack(abstract) {
function deGroup (line 795) | function deGroup(abstract) {
function makeIconMasking (line 803) | function makeIconMasking (_ref) {
function makeIconStandard (line 876) | function makeIconStandard (_ref) {
function asIcon (line 917) | function asIcon (_ref) {
function asSymbol (line 944) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 966) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1043) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1100) | function makeLayersCounterAbstract(params) {
function toHex (line 1210) | function toHex(unicode) {
function defineIcons (line 1221) | function defineIcons(prefix, icons) {
function byUnicode (line 1302) | function byUnicode(prefix, unicode) {
function byLigature (line 1305) | function byLigature(prefix, ligature) {
function byOldName (line 1308) | function byOldName(name) {
function getCanonicalIcon (line 1323) | function getCanonicalIcon(values) {
function iconFromMapping (line 1342) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 1352) | function toHtml(abstractNodes) {
function isWatched (line 1368) | function isWatched(node) {
function getMutator (line 1373) | function getMutator() {
function performOperationSync (line 1432) | function performOperationSync(op) {
function perform (line 1436) | function perform(mutations, callback) {
function disableObservation (line 1458) | function disableObservation() {
function enableObservation (line 1461) | function enableObservation() {
function observe (line 1465) | function observe(options) {
function disconnect (line 1516) | function disconnect() {
function styleParser (line 1521) | function styleParser (node) {
function classParser (line 1542) | function classParser (node) {
function transformParser (line 1630) | function transformParser (node) {
function symbolParser (line 1634) | function symbolParser (node) {
function attributesParser (line 1639) | function attributesParser (node) {
function maskParser (line 1662) | function maskParser (node) {
function blankMeta (line 1674) | function blankMeta() {
function parseMeta (line 1691) | function parseMeta(node) {
function MissingIcon (line 1719) | function MissingIcon(error) {
function asFoundIcon (line 1798) | function asFoundIcon(icon) {
function findIcon (line 1847) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 1871) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 1907) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 1936) | function generateMutation(node) {
function onTree (line 1946) | function onTree(root) {
function onNode (line 2016) | function onNode(node) {
function replaceForPosition (line 2025) | function replaceForPosition(node, position) {
function replace (line 2102) | function replace(node) {
function processable (line 2106) | function processable(node) {
function searchPseudoElements (line 2110) | function searchPseudoElements (root) {
function css (line 2130) | function css () {
function Library (line 2148) | function Library() {
function ensureCss (line 2196) | function ensureCss() {
function apiObject (line 2204) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2226) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2234) | function resolveIcons(next) {
FILE: public/fonts/font-awesome/js/all.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
function bunker (line 197) | function bunker(fn) {
function ownKeys (line 207) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 225) | function _objectSpread2(target) {
function _defineProperty (line 245) | function _defineProperty(obj, key, value) {
function defineIcons (line 267) | function defineIcons(prefix, icons) {
function bunker (line 398) | function bunker(fn) {
function ownKeys (line 408) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 426) | function _objectSpread2(target) {
function _defineProperty (line 446) | function _defineProperty(obj, key, value) {
function defineIcons (line 468) | function defineIcons(prefix, icons) {
function bunker (line 558) | function bunker(fn) {
function ownKeys (line 568) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 586) | function _objectSpread2(target) {
function _defineProperty (line 606) | function _defineProperty(obj, key, value) {
function defineIcons (line 628) | function defineIcons(prefix, icons) {
function ownKeys (line 700) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 718) | function _objectSpread2(target) {
function _typeof (line 738) | function _typeof(obj) {
function _classCallCheck (line 754) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 760) | function _defineProperties(target, props) {
function _createClass (line 770) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 776) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 791) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 795) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 799) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 803) | function _arrayWithHoles(arr) {
function _iterableToArray (line 807) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 811) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 841) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 850) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 858) | function _nonIterableSpread() {
function _nonIterableRest (line 862) | function _nonIterableRest() {
function getAttrConfig (line 957) | function getAttrConfig(attr) {
function coerce (line 965) | function coerce(val) {
function domready (line 1036) | function domready (fn) {
function asyncFlush (line 1053) | function asyncFlush() {
function asyncCall (line 1064) | function asyncCall(callback, arg) {
function invokeResolver (line 1073) | function invokeResolver(resolver, promise) {
function invokeCallback (line 1089) | function invokeCallback(subscriber) {
function handleThenable (line 1117) | function handleThenable(promise, value) {
function resolve (line 1160) | function resolve(promise, value) {
function fulfill (line 1166) | function fulfill(promise, value) {
function reject (line 1174) | function reject(promise, reason) {
function publish (line 1182) | function publish(promise) {
function publishFulfillment (line 1186) | function publishFulfillment(promise) {
function publishRejection (line 1191) | function publishRejection(promise) {
function notifyRejectionHandled (line 1200) | function notifyRejectionHandled(promise) {
function P (line 1208) | function P(resolver) {
function resolver (line 1267) | function resolver(index) {
function isReserved (line 1340) | function isReserved(name) {
function bunker (line 1344) | function bunker(fn) {
function insertCss (line 1353) | function insertCss(css) {
function nextUniqueId (line 1377) | function nextUniqueId() {
function toArray (line 1387) | function toArray(obj) {
function classArray (line 1396) | function classArray(node) {
function getIconName (line 1405) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 1416) | function htmlEscape(str) {
function joinAttributes (line 1419) | function joinAttributes(attributes) {
function joinStyles (line 1424) | function joinStyles(styles) {
function transformIsMeaningful (line 1429) | function transformIsMeaningful(transform) {
function transformForSvg (line 1432) | function transformForSvg(_ref) {
function transformForCss (line 1454) | function transformForCss(_ref2) {
function fillBlack (line 1484) | function fillBlack(abstract) {
function deGroup (line 1494) | function deGroup(abstract) {
function makeIconMasking (line 1502) | function makeIconMasking (_ref) {
function makeIconStandard (line 1575) | function makeIconStandard (_ref) {
function asIcon (line 1616) | function asIcon (_ref) {
function asSymbol (line 1643) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 1665) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1742) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1799) | function makeLayersCounterAbstract(params) {
function toHex (line 1909) | function toHex(unicode) {
function defineIcons (line 1920) | function defineIcons(prefix, icons) {
function byUnicode (line 2001) | function byUnicode(prefix, unicode) {
function byLigature (line 2004) | function byLigature(prefix, ligature) {
function byOldName (line 2007) | function byOldName(name) {
function getCanonicalIcon (line 2022) | function getCanonicalIcon(values) {
function iconFromMapping (line 2041) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 2051) | function toHtml(abstractNodes) {
function isWatched (line 2067) | function isWatched(node) {
function getMutator (line 2072) | function getMutator() {
function performOperationSync (line 2131) | function performOperationSync(op) {
function perform (line 2135) | function perform(mutations, callback) {
function disableObservation (line 2157) | function disableObservation() {
function enableObservation (line 2160) | function enableObservation() {
function observe (line 2164) | function observe(options) {
function disconnect (line 2215) | function disconnect() {
function styleParser (line 2220) | function styleParser (node) {
function classParser (line 2241) | function classParser (node) {
function transformParser (line 2329) | function transformParser (node) {
function symbolParser (line 2333) | function symbolParser (node) {
function attributesParser (line 2338) | function attributesParser (node) {
function maskParser (line 2361) | function maskParser (node) {
function blankMeta (line 2373) | function blankMeta() {
function parseMeta (line 2390) | function parseMeta(node) {
function MissingIcon (line 2418) | function MissingIcon(error) {
function asFoundIcon (line 2497) | function asFoundIcon(icon) {
function findIcon (line 2546) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 2570) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 2606) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 2635) | function generateMutation(node) {
function onTree (line 2645) | function onTree(root) {
function onNode (line 2715) | function onNode(node) {
function replaceForPosition (line 2724) | function replaceForPosition(node, position) {
function replace (line 2801) | function replace(node) {
function processable (line 2805) | function processable(node) {
function searchPseudoElements (line 2809) | function searchPseudoElements (root) {
function css (line 2829) | function css () {
function Library (line 2847) | function Library() {
function ensureCss (line 2895) | function ensureCss() {
function apiObject (line 2903) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2925) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2933) | function resolveIcons(next) {
function bootstrap (line 3176) | function bootstrap() {
FILE: public/fonts/font-awesome/js/brands.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js/duotone.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js/fontawesome.js
function ownKeys (line 8) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 26) | function _objectSpread2(target) {
function _typeof (line 46) | function _typeof(obj) {
function _classCallCheck (line 62) | function _classCallCheck(instance, Constructor) {
function _defineProperties (line 68) | function _defineProperties(target, props) {
function _createClass (line 78) | function _createClass(Constructor, protoProps, staticProps) {
function _defineProperty (line 84) | function _defineProperty(obj, key, value) {
function _slicedToArray (line 99) | function _slicedToArray(arr, i) {
function _toConsumableArray (line 103) | function _toConsumableArray(arr) {
function _arrayWithoutHoles (line 107) | function _arrayWithoutHoles(arr) {
function _arrayWithHoles (line 111) | function _arrayWithHoles(arr) {
function _iterableToArray (line 115) | function _iterableToArray(iter) {
function _iterableToArrayLimit (line 119) | function _iterableToArrayLimit(arr, i) {
function _unsupportedIterableToArray (line 149) | function _unsupportedIterableToArray(o, minLen) {
function _arrayLikeToArray (line 158) | function _arrayLikeToArray(arr, len) {
function _nonIterableSpread (line 166) | function _nonIterableSpread() {
function _nonIterableRest (line 170) | function _nonIterableRest() {
function getAttrConfig (line 265) | function getAttrConfig(attr) {
function coerce (line 273) | function coerce(val) {
function domready (line 344) | function domready (fn) {
function asyncFlush (line 361) | function asyncFlush() {
function asyncCall (line 372) | function asyncCall(callback, arg) {
function invokeResolver (line 381) | function invokeResolver(resolver, promise) {
function invokeCallback (line 397) | function invokeCallback(subscriber) {
function handleThenable (line 425) | function handleThenable(promise, value) {
function resolve (line 468) | function resolve(promise, value) {
function fulfill (line 474) | function fulfill(promise, value) {
function reject (line 482) | function reject(promise, reason) {
function publish (line 490) | function publish(promise) {
function publishFulfillment (line 494) | function publishFulfillment(promise) {
function publishRejection (line 499) | function publishRejection(promise) {
function notifyRejectionHandled (line 508) | function notifyRejectionHandled(promise) {
function P (line 516) | function P(resolver) {
function resolver (line 575) | function resolver(index) {
function isReserved (line 648) | function isReserved(name) {
function bunker (line 652) | function bunker(fn) {
function insertCss (line 661) | function insertCss(css) {
function nextUniqueId (line 685) | function nextUniqueId() {
function toArray (line 695) | function toArray(obj) {
function classArray (line 704) | function classArray(node) {
function getIconName (line 713) | function getIconName(familyPrefix, cls) {
function htmlEscape (line 724) | function htmlEscape(str) {
function joinAttributes (line 727) | function joinAttributes(attributes) {
function joinStyles (line 732) | function joinStyles(styles) {
function transformIsMeaningful (line 737) | function transformIsMeaningful(transform) {
function transformForSvg (line 740) | function transformForSvg(_ref) {
function transformForCss (line 762) | function transformForCss(_ref2) {
function fillBlack (line 792) | function fillBlack(abstract) {
function deGroup (line 802) | function deGroup(abstract) {
function makeIconMasking (line 810) | function makeIconMasking (_ref) {
function makeIconStandard (line 883) | function makeIconStandard (_ref) {
function asIcon (line 924) | function asIcon (_ref) {
function asSymbol (line 951) | function asSymbol (_ref) {
function makeInlineSvgAbstract (line 973) | function makeInlineSvgAbstract(params) {
function makeLayersTextAbstract (line 1050) | function makeLayersTextAbstract(params) {
function makeLayersCounterAbstract (line 1107) | function makeLayersCounterAbstract(params) {
function toHex (line 1217) | function toHex(unicode) {
function defineIcons (line 1228) | function defineIcons(prefix, icons) {
function byUnicode (line 1309) | function byUnicode(prefix, unicode) {
function byLigature (line 1312) | function byLigature(prefix, ligature) {
function byOldName (line 1315) | function byOldName(name) {
function getCanonicalIcon (line 1330) | function getCanonicalIcon(values) {
function iconFromMapping (line 1349) | function iconFromMapping(mapping, prefix, iconName) {
function toHtml (line 1359) | function toHtml(abstractNodes) {
function isWatched (line 1375) | function isWatched(node) {
function getMutator (line 1380) | function getMutator() {
function performOperationSync (line 1439) | function performOperationSync(op) {
function perform (line 1443) | function perform(mutations, callback) {
function disableObservation (line 1465) | function disableObservation() {
function enableObservation (line 1468) | function enableObservation() {
function observe (line 1472) | function observe(options) {
function disconnect (line 1523) | function disconnect() {
function styleParser (line 1528) | function styleParser (node) {
function classParser (line 1549) | function classParser (node) {
function transformParser (line 1637) | function transformParser (node) {
function symbolParser (line 1641) | function symbolParser (node) {
function attributesParser (line 1646) | function attributesParser (node) {
function maskParser (line 1669) | function maskParser (node) {
function blankMeta (line 1681) | function blankMeta() {
function parseMeta (line 1698) | function parseMeta(node) {
function MissingIcon (line 1726) | function MissingIcon(error) {
function asFoundIcon (line 1805) | function asFoundIcon(icon) {
function findIcon (line 1854) | function findIcon(iconName, prefix) {
function generateSvgReplacementMutation (line 1878) | function generateSvgReplacementMutation(node, nodeMeta) {
function generateLayersText (line 1914) | function generateLayersText(node, nodeMeta) {
function generateMutation (line 1943) | function generateMutation(node) {
function onTree (line 1953) | function onTree(root) {
function onNode (line 2023) | function onNode(node) {
function replaceForPosition (line 2032) | function replaceForPosition(node, position) {
function replace (line 2109) | function replace(node) {
function processable (line 2113) | function processable(node) {
function searchPseudoElements (line 2117) | function searchPseudoElements (root) {
function css (line 2137) | function css () {
function Library (line 2155) | function Library() {
function ensureCss (line 2203) | function ensureCss() {
function apiObject (line 2211) | function apiObject(val, abstractCreator) {
function findIconDefinition (line 2233) | function findIconDefinition(iconLookup) {
function resolveIcons (line 2241) | function resolveIcons(next) {
function bootstrap (line 2484) | function bootstrap() {
FILE: public/fonts/font-awesome/js/regular.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: public/fonts/font-awesome/js/solid.js
function bunker (line 35) | function bunker(fn) {
function ownKeys (line 45) | function ownKeys(object, enumerableOnly) {
function _objectSpread2 (line 63) | function _objectSpread2(target) {
function _defineProperty (line 83) | function _defineProperty(obj, key, value) {
function defineIcons (line 105) | function defineIcons(prefix, icons) {
FILE: src/app.js
method destroyed (line 140) | destroyed() {
FILE: src/filters/round.js
function roundWhole (line 3) | function roundWhole(x) {
function roundTenths (line 15) | function roundTenths(x) {
function roundHundredths (line 27) | function roundHundredths(x) {
function roundThousandths (line 39) | function roundThousandths(x) {
function roundTens (line 51) | function roundTens(x) {
function roundHundreds (line 63) | function roundHundreds(x) {
function roundThousands (line 75) | function roundThousands(x) {
FILE: src/mixins/authMixin.js
method data (line 17) | data() {
method checkSession (line 26) | async checkSession() {
method getSession (line 29) | async getSession() {
method getTokens (line 36) | async getTokens(sessionToken) {
method login (line 44) | async login() {
method loginWithGitHub (line 54) | loginWithGitHub() {}
method loginWithGoogle (line 55) | loginWithGoogle() {}
FILE: src/mixins/cancelLateRunsMixin.js
method data (line 5) | data() {
method lateRuns (line 16) | lateRuns() {
method handleOpenDialog (line 24) | handleOpenDialog() {
method IdCheck (line 28) | IdCheck() {
method runMutation (line 37) | async runMutation(mutationType) {
method clearLateRuns (line 45) | async clearLateRuns() {
FILE: src/mixins/changeStateMixin.js
method data (line 20) | data() {
method activeButton (line 69) | activeButton() {
method isFinished (line 72) | isFinished() {
method isFinishing (line 75) | isFinishing() {
method filteredStates (line 81) | filteredStates() {
method checkVersion (line 88) | checkVersion() {
method runLogMessage (line 100) | runLogMessage() {
method writeLogs (line 112) | async writeLogs() {
method resumeRun (line 124) | resumeRun() {
method cancelFlowRun (line 131) | async cancelFlowRun() {
method changeState (line 163) | async changeState() {
method setAllTaskRuns (line 262) | async setAllTaskRuns(type) {
method checkContinue (line 299) | checkContinue() {
method reset (line 304) | reset() {
FILE: src/mixins/cloudHookMixin.js
method data (line 11) | data() {
method cloudHookTypes (line 24) | cloudHookTypes() {
method _handleSetCloudHookStatusChange (line 31) | async _handleSetCloudHookStatusChange(val, item) {
method stateGroup (line 81) | stateGroup(states) {
method stateGroupAll (line 88) | stateGroupAll(states) {
method stateGroupFailed (line 91) | stateGroupFailed(states) {
method stateGroupFinished (line 94) | stateGroupFinished(states) {
method stateGroupSuccess (line 97) | stateGroupSuccess(states) {
method stateGroupColor (line 100) | stateGroupColor(group) {
method typeIcon (line 103) | typeIcon(type) {
method typeTitle (line 108) | typeTitle(type) {
method cloudHookStateGroup (line 113) | cloudHookStateGroup(group, states) {
FILE: src/mixins/eventsMixin.js
method data (line 15) | data() {
method created (line 20) | created() {
method beforeDestroy (line 23) | beforeDestroy() {
method checkSequence (line 27) | checkSequence() {
method handleEvent (line 41) | handleEvent(e) {
method handleSequenceSuccess (line 45) | handleSequenceSuccess() {
FILE: src/mixins/flowRunHistoryMixin.js
method data (line 5) | data() {
method breaklines (line 17) | breaklines() {
method canShowTooltip (line 79) | canShowTooltip() {
method reversedRuns (line 85) | reversedRuns() {
method _barMouseout (line 169) | _barMouseout() {
method _barMouseover (line 173) | async _barMouseover(tooltipData) {
method _barClick (line 206) | _barClick(d) {
method formatTime (line 215) | formatTime(timestamp) {
method getTimeDiff (line 231) | getTimeDiff(time) {
method getTimeFrom (line 244) | getTimeFrom(time) {
method sortTime (line 256) | sortTime(ref, secondaryRef) {
method statusStyle (line 264) | statusStyle(state) {
method setTooltip (line 273) | setTooltip(tooltip) {
method validateTooltipIdStillPresent (line 287) | validateTooltipIdStillPresent() {
method checkFormatTime (line 294) | checkFormatTime(tooltipData, property) {
FILE: src/mixins/formatTimeMixin.js
method data (line 5) | data() {
method dateDiff (line 26) | dateDiff(date1, date2) {
method datePartHour (line 31) | datePartHour(timestamp) {
method datePartMinute (line 36) | datePartMinute(timestamp) {
method datePartMeridian (line 43) | datePartMeridian(timestamp) {
method dateParts (line 48) | dateParts(timestamp) {
method formatTimeRelative (line 61) | formatTimeRelative(timestamp) {
method formatDate (line 65) | formatDate(timestamp) {
method formatCalendarDate (line 74) | formatCalendarDate(timestamp) {
method getHour (line 84) | getHour(timestamp) {
method formatCalendarTime (line 88) | formatCalendarTime(timestamp) {
method convertCalendarStartTime (line 95) | convertCalendarStartTime(timestamp) {
method addTime (line 100) | addTime(timestamp, amount, unit) {
method addTimeNoTz (line 105) | addTimeNoTz(timestamp, amount, unit) {
method getMonth (line 110) | getMonth(timestamp) {
method addDay (line 113) | addDay(timestamp, amount) {
method subtractDay (line 121) | subtractDay(timestamp, amount) {
method shortTime (line 130) | shortTime(timestamp) {
method formDate (line 146) | formDate(timestamp) {
method formTimeNoTimeZone (line 155) | formTimeNoTimeZone(timestamp) {
method formTime (line 159) | formTime(timestamp) {
method tzOffset (line 166) | tzOffset(date) {
method calEventTime (line 172) | calEventTime(timestamp, date) {
method logTime (line 188) | logTime(timestamp) {
method logTimeExtended (line 197) | logTimeExtended(timestamp) {
method logDate (line 206) | logDate(timestamp) {
method formatTime (line 215) | formatTime(timestamp) {
method formatTimeGranular (line 224) | formatTimeGranular(timestamp) {
method formatDateTime (line 233) | formatDateTime(timestamp) {
method formatLongDate (line 249) | formatLongDate(timestamp) {
method formatDateTimeFromUTC (line 261) | formatDateTimeFromUTC(timestamp, timezone) {
FILE: src/mixins/heartbeatMixin.js
method data (line 4) | data() {
method checkedState (line 8) | checkedState() {
method states (line 13) | states() {
FILE: src/mixins/membershipInvitationMixin.js
method acceptMembershipInvitation (line 3) | async acceptMembershipInvitation(id) {
method declineMembershipInvitation (line 12) | async declineMembershipInvitation(id) {
FILE: src/mixins/parametersMixin.js
method data (line 12) | data() {
method get (line 25) | get() {
method set (line 28) | set(val) {
method requiredParameters (line 32) | requiredParameters() {
method permissionsCheck (line 38) | permissionsCheck() {
method selectedFlow (line 41) | selectedFlow() {
method flowGroupParameters (line 44) | flowGroupParameters() {
method selectedFlowParameters (line 53) | selectedFlowParameters() {
method diffBetweenFlowGroupAndFlow (line 59) | diffBetweenFlowGroupAndFlow() {
method defaultParameters (line 68) | defaultParameters() {
method setParameterInput (line 95) | setParameterInput() {
method validateParameters (line 98) | validateParameters() {
method saveDefaultParams (line 165) | async saveDefaultParams() {
method setDefaultParams (line 197) | async setDefaultParams() {
method showAlert (line 209) | async showAlert(alertMessage, alertType) {
FILE: src/mixins/paymentMixin.js
method data (line 5) | data() {
method get (line 19) | get() {
method set (line 22) | set(x) {
method get (line 27) | get() {
method set (line 31) | set(x) {
method get (line 36) | get() {
method set (line 43) | set(x) {
FILE: src/mixins/polling/pollsAgentsMixin.js
method data (line 2) | data() {
method created (line 7) | async created() {
method beforeDestroy (line 10) | beforeDestroy() {
FILE: src/mixins/polling/pollsFlowsMixin.js
method data (line 2) | data() {
method created (line 7) | async created() {
method beforeDestroy (line 10) | beforeDestroy() {
FILE: src/mixins/polling/pollsProjectsMixin.js
method data (line 2) | data() {
method created (line 7) | async created() {
method beforeDestroy (line 13) | beforeDestroy() {
FILE: src/mixins/polling/pollsTenantsMixin.js
method data (line 2) | data() {
method created (line 7) | async created() {
method beforeDestroy (line 13) | beforeDestroy() {
FILE: src/mixins/runFlowNow.js
method data (line 2) | data() {
method runFlowNow (line 13) | async runFlowNow(flowRunId, version, name) {
FILE: src/mixins/teamProfileMixin.js
method data (line 4) | data() {
method permissionsCheck (line 38) | permissionsCheck() {
method isUpdatable (line 41) | isUpdatable() {
method get (line 61) | get() {
method set (line 64) | set(val) {
method get (line 69) | get() {
method set (line 72) | set(val) {
method showNameCheck (line 76) | showNameCheck() {
method showNameClear (line 83) | showNameClear() {
method showSlugCheck (line 89) | showSlugCheck() {
method showSlugClear (line 96) | showSlugClear() {
method tenant (line 104) | tenant(val) {
method created (line 109) | created() {
method checkName (line 121) | checkName(name) {
method checkSlug (line 142) | checkSlug(slug) {
method checkNameAsync (line 181) | checkNameAsync() {
method checkSlugAsync (line 198) | checkSlugAsync() {
method resetNameMetadata (line 230) | resetNameMetadata() {
method resetSlugMetadata (line 235) | resetSlugMetadata() {
method handleError (line 240) | handleError(alert) {
method handleSuccess (line 249) | handleSuccess() {
method updateTenant (line 261) | async updateTenant() {
FILE: src/plugins/vuetify.js
constant THEME_COLORS (line 14) | const THEME_COLORS = {
constant THEME_COLORS_ALT (line 50) | const THEME_COLORS_ALT = {
constant CUSTOM_ICONS (line 62) | const CUSTOM_ICONS = {
FILE: src/router.js
method beforeEnter (line 262) | beforeEnter(to, from, next) {
function getElementPosition (line 471) | function getElementPosition(el) {
function scrollToHash (line 481) | function scrollToHash(to) {
method scrollBehavior (line 505) | scrollBehavior(to) {
FILE: src/store/agent/index.js
method staleThreshold (line 38) | staleThreshold(state) {
method unhealthyThreshold (line 41) | unhealthyThreshold(state) {
method agents (line 44) | agents(state) {
method sortedAgents (line 47) | sortedAgents(state) {
method sorting (line 56) | sorting(state) {
method setSortedAgents (line 62) | setSortedAgents(state, agents) {
FILE: src/store/alert/index.js
method getAlert (line 17) | getAlert(state) {
method notifications (line 20) | notifications(state) {
method notificationTimeouts (line 23) | notificationTimeouts(state) {
method setAl (line 29) | setAl(state, alert) {
method setEmpty (line 32) | setEmpty(state) {
method setNotifications (line 42) | setNotifications(state, notifications = []) {
method setNotificationTimeout (line 45) | setNotificationTimeout(state, { id, timeoutId }) {
method setAlert (line 52) | setAlert({ commit }, alert, timeout = 6000) {
method addNotification (line 56) | addNotification({ getters, commit, dispatch }, notification) {
method dismissNotification (line 73) | dismissNotification({ getters, commit }, { id }) {
method updateNotification (line 83) | updateNotification({ getters, commit, dispatch }, { id, notification }) {
FILE: src/store/api/index.js
constant SERVER_KEY (line 4) | const SERVER_KEY = `${process.env.VUE_APP_RELEASE_TIMESTAMP}_server_url`
method backend (line 26) | backend(state) {
method apiMode (line 29) | apiMode(state) {
method connected (line 32) | connected(state) {
method connecting (line 35) | connecting(state) {
method connectionMessage (line 38) | connectionMessage(state) {
method connectionTimeout (line 41) | connectionTimeout(state) {
method isCloud (line 44) | isCloud(state) {
method isServer (line 47) | isServer(state) {
method releaseTimestamp (line 50) | releaseTimestamp(state) {
method cloudUrl (line 53) | cloudUrl(state) {
method retries (line 56) | retries(state) {
method serverUrl (line 59) | serverUrl(state) {
method url (line 62) | url(state) {
method version (line 72) | version(state) {
method coreVersion (line 75) | coreVersion(state) {
method setBackend (line 81) | setBackend(state, backend) {
method unsetBackend (line 87) | unsetBackend(state) {
method setConnected (line 90) | setConnected(state, connected) {
method setConnectionMessage (line 96) | setConnectionMessage(state, message) {
method unsetConnectionMessage (line 99) | unsetConnectionMessage(state) {
method setConnectionTimeout (line 102) | setConnectionTimeout(state, timeout) {
method unsetConnectionTimeout (line 105) | unsetConnectionTimeout(state) {
method setReleaseTimestamp (line 109) | setReleaseTimestamp(state, timestamp) {
method setApiMode (line 112) | setApiMode(state, apiMode) {
method unsetReleaseTimetamp (line 118) | unsetReleaseTimetamp(state) {
method setRetries (line 121) | setRetries(state, retries) {
method setServerUrl (line 124) | setServerUrl(state, url) {
method unsetServerUrl (line 128) | unsetServerUrl(state) {
method setVersion (line 132) | setVersion(state, version) {
method unsetVersion (line 135) | unsetVersion(state) {
method setCoreVersion (line 138) | setCoreVersion(state, version) {
method unsetCoreVersion (line 141) | unsetCoreVersion(state) {
method getApi (line 147) | async getApi({ commit, dispatch }) {
method monitorConnection (line 174) | async monitorConnection({ getters, commit }) {
method setServerUrl (line 215) | async setServerUrl({ commit }, url) {
method switchBackend (line 218) | async switchBackend({ commit, dispatch, rootGetters }, backend) {
FILE: src/store/auth/index.js
method isAuthenticated (line 14) | isAuthenticated(state) {
method isAuthorized (line 17) | isAuthorized(state) {
method user (line 23) | user(state) {
method idToken (line 26) | idToken(state) {
method idTokenExpiry (line 29) | idTokenExpiry(state) {
method refreshToken (line 32) | refreshToken(state) {
method refreshTokenExpiry (line 35) | refreshTokenExpiry(state) {
method authorizationToken (line 38) | authorizationToken(state) {
method authorizationTokenExpiry (line 41) | authorizationTokenExpiry(state) {
method error (line 47) | error(state, error) {
method user (line 50) | user(state, user) {
method unsetUser (line 56) | unsetUser(state) {
method accessToken (line 59) | accessToken(state, accessToken) {
method idToken (line 70) | idToken(state, idToken) {
method unsetIdToken (line 81) | unsetIdToken(state) {
method idTokenExpiry (line 84) | idTokenExpiry(state, idTokenExpiry) {
method unsetIdTokenExpiry (line 92) | unsetIdTokenExpiry(state) {
method authorizationToken (line 95) | authorizationToken(state, authorizationToken) {
method unsetAuthorizationToken (line 105) | unsetAuthorizationToken(state) {
method refreshToken (line 108) | refreshToken(state, refreshToken) {
method unsetRefreshToken (line 118) | unsetRefreshToken(state) {
method authorizationTokenExpiry (line 121) | authorizationTokenExpiry(state, authorizationTokenExpiry) {
method unsetAuthorizationTokenExpiry (line 132) | unsetAuthorizationTokenExpiry(state) {
method refreshTokenExpiry (line 135) | refreshTokenExpiry(state, refreshTokenExpiry) {
method unsetRefreshTokenExpiry (line 143) | unsetRefreshTokenExpiry(state) {
FILE: src/store/data/index.js
method activeFlow (line 13) | activeFlow(state) {
method activeFlowId (line 16) | activeFlowId(state) {
method activeProject (line 19) | activeProject(state) {
method activeProjectId (line 22) | activeProjectId(state) {
method activeTask (line 25) | activeTask(state) {
method activeTaskId (line 28) | activeTaskId(state) {
method flows (line 31) | flows(state) {
method projects (line 34) | projects(state) {
method tasks (line 37) | tasks(state) {
method setActiveProject (line 43) | setActiveProject(state, project) {
method unsetActiveProject (line 57) | unsetActiveProject(state) {
method setActiveFlow (line 60) | setActiveFlow(state, flow) {
method unsetActiveFlow (line 73) | unsetActiveFlow(state) {
method setActiveTask (line 76) | setActiveTask(state, task) {
method unsetActiveTask (line 89) | unsetActiveTask(state) {
method addTasks (line 92) | addTasks(state, tasks) {
method setTasks (line 110) | setTasks(state, tasks) {
method unsetTasks (line 116) | unsetTasks(state) {
method setFlows (line 119) | setFlows(state, flows) {
method unsetFlows (line 125) | unsetFlows(state) {
method setProjects (line 128) | setProjects(state, projects) {
method unsetProjects (line 136) | unsetProjects(state) {
method activateFlow (line 142) | async activateFlow({ commit, getters, dispatch }, id) {
method activateProject (line 169) | async activateProject({ commit, getters }, id) {
method activateTask (line 186) | async activateTask({ commit, getters, dispatch }, id) {
method resetActiveData (line 207) | resetActiveData({ commit }) {
method resetData (line 212) | resetData({ commit }) {
FILE: src/store/license/index.js
method hasLicense (line 12) | hasLicense(state) {
method license (line 15) | license(state) {
method permissions (line 18) | permissions(state) {
method tempLicenseType (line 21) | tempLicenseType(state) {
method role (line 40) | role(state) {
method setLicense (line 46) | setLicense(state, license) {
method setRole (line 50) | setRole(state, role) {
method setTempLicenseType (line 53) | setTempLicenseType(state, type) {
method unsetLicense (line 56) | unsetLicense(state) {
method setPermissions (line 59) | setPermissions(state, permissions) {
method unsetPermissions (line 62) | unsetPermissions(state) {
method getLicense (line 68) | async getLicense({ commit }) {
FILE: src/store/polling/index.js
method shouldPollTenants (line 10) | shouldPollTenants(state) {
method shouldPollAgents (line 13) | shouldPollAgents(state) {
method shouldPollProjects (line 16) | shouldPollProjects(state) {
method shouldPollFlows (line 19) | shouldPollFlows(state) {
method incrementUniqueId (line 25) | incrementUniqueId(state) {
method addSubscriber (line 28) | addSubscriber(state, { stream, uniqueId }) {
method removeSubscriber (line 33) | removeSubscriber(state, { stream, uniqueId }) {
method getUniqueId (line 41) | getUniqueId({ commit, state }) {
method subscribe (line 46) | async subscribe({ commit, dispatch }, streams) {
method unsubscribe (line 59) | unsubscribe({ commit }, { uniqueId, streams }) {
FILE: src/store/refresh/index.js
method componentKey (line 6) | componentKey(state) {
method add (line 12) | add(state) {
FILE: src/store/sideNav/index.js
method isOpen (line 6) | isOpen(state) {
method close (line 12) | close(state) {
method open (line 15) | open(state) {
method toggle (line 18) | toggle(state) {
FILE: src/store/tenant/index.js
method defaultTenant (line 24) | defaultTenant(state) {
method isLoadingTenant (line 27) | isLoadingTenant(state) {
method role (line 30) | role(state) {
method tenant (line 33) | tenant(state) {
method tenantIsSet (line 36) | tenantIsSet(state) {
method tenants (line 39) | tenants(state) {
method setDefaultTenant (line 45) | setDefaultTenant(state, tenant) {
method setIsLoadingTenant (line 56) | setIsLoadingTenant(state, value) {
method setTenant (line 65) | setTenant(state, tenant) {
method setTenants (line 76) | setTenants(state, tenants) {
method unsetTenant (line 82) | unsetTenant(state) {
method unsetTenants (line 95) | unsetTenants(state) {
method updateTenantSettings (line 98) | updateTenantSettings(state, settings) {
method getTenants (line 107) | async getTenants({ commit, getters, rootGetters }) {
method setCurrentTenant (line 129) | async setCurrentTenant({ commit, dispatch, getters, rootGetters }, slug) {
method updateTenantSettings (line 182) | async updateTenantSettings({ dispatch }, settings) {
FILE: src/store/user/index.js
method user (line 27) | user(state) {
method username (line 30) | username(state) {
method oktaUser (line 33) | oktaUser(state) {
method defaultMembershipId (line 36) | defaultMembershipId(state) {
method memberships (line 39) | memberships(state) {
method userIsSet (line 42) | userIsSet(state) {
method timezone (line 45) | timezone(state) {
method isDark (line 48) | isDark(state) {
method settings (line 51) | settings(state) {
method firstName (line 54) | firstName(state) {
method lastName (line 57) | lastName(state) {
method invitations (line 60) | invitations(state) {
method user (line 66) | user(state, user) {
method setOktaUser (line 70) | setOktaUser(state, oktaUser) {
method setUserSettings (line 77) | setUserSettings(state, settings) {
method unsetUser (line 82) | unsetUser(state) {
method unsetOktaUser (line 95) | unsetOktaUser(state) {
method setUserDefaultMembershipId (line 102) | setUserDefaultMembershipId(state, membershipId) {
method setInvitations (line 105) | setInvitations(state, invitations) {
method unsetInvitations (line 108) | unsetInvitations(state) {
method setDefaultTenant (line 114) | async setDefaultTenant({ commit, getters, rootGetters }) {
method getUser (line 128) | async getUser({ commit, getters, dispatch, rootGetters }) {
FILE: src/utils/Tree.js
function Tree (line 1) | function Tree(tree) {
FILE: src/utils/array.js
function shuffle (line 2) | function shuffle(inputArray) {
FILE: src/utils/automations.js
constant AUTOMATIONSTATES (line 131) | const AUTOMATIONSTATES = {
FILE: src/utils/cloudHooks.js
constant GROUP_COLORS (line 95) | const GROUP_COLORS = {
constant STATES (line 103) | const STATES = {
FILE: src/utils/cron.js
method JAN (line 14) | get JAN() {
method FEB (line 17) | get FEB() {
method MAR (line 20) | get MAR() {
method APR (line 23) | get APR() {
method MAY (line 26) | get MAY() {
method JUN (line 29) | get JUN() {
method JUL (line 32) | get JUL() {
method AUG (line 35) | get AUG() {
method SEP (line 38) | get SEP() {
method OCT (line 41) | get OCT() {
method NOV (line 44) | get NOV() {
method DEC (line 47) | get DEC() {
method SUN (line 60) | get SUN() {
method MON (line 63) | get MON() {
method TUE (line 66) | get TUE() {
method WED (line 69) | get WED() {
method THU (line 72) | get THU() {
method FRI (line 75) | get FRI() {
method SAT (line 78) | get SAT() {
FILE: src/utils/curveMetro.js
function Turn (line 1) | function Turn(context) {
function isDiagonal (line 5) | function isDiagonal(x1, y1, x2, y2) {
function makeQuadraticBezierPoints (line 9) | function makeQuadraticBezierPoints(x1, y1, x2, y2) {
FILE: src/utils/dateTime.js
constant MS_PER_SECOND (line 5) | const MS_PER_SECOND = 1000
constant MS_PER_MINUTE (line 6) | const MS_PER_MINUTE = MS_PER_SECOND * 60
constant MS_PER_HOUR (line 7) | const MS_PER_HOUR = MS_PER_MINUTE * 60
constant MS_PER_DAY (line 8) | const MS_PER_DAY = MS_PER_HOUR * 24
function isIsoDateString (line 132) | function isIsoDateString(value) {
function getMillisecondsUntilNextSecond (line 136) | function getMillisecondsUntilNextSecond() {
function getMillisecondsUntilNextMinute (line 141) | function getMillisecondsUntilNextMinute() {
function getMillisecondsUntilNextHour (line 146) | function getMillisecondsUntilNextHour() {
function durationDifference (line 151) | function durationDifference(start, end) {
function toDurationDifferenceString (line 161) | function toDurationDifferenceString(durationDifference) {
FILE: src/utils/error.js
constant ERROR_MESSAGE (line 1) | const ERROR_MESSAGE =
FILE: src/utils/html.js
function escapeHTML (line 1) | function escapeHTML(value) {
FILE: src/utils/json.js
function tryFormatJson (line 3) | function tryFormatJson(value) {
function tryFormatSingleLineJson (line 15) | function tryFormatSingleLineJson(value) {
function formatJson (line 27) | function formatJson(value) {
function formatSingleLineJson (line 35) | function formatSingleLineJson(value) {
function tryParseJson (line 45) | function tryParseJson(value) {
function parseJson (line 53) | function parseJson(value) {
function isValidJson (line 57) | function isValidJson(value) {
FILE: src/utils/markdownParser.js
function parser (line 12) | function parser(md) {
function artifact_parser (line 38) | function artifact_parser(md) {
function getRoutes (line 120) | function getRoutes() {
FILE: src/utils/plans.js
constant PLANS_2021 (line 1) | const PLANS_2021 = {
FILE: src/utils/regEx.js
constant EMAIL_REGEX (line 1) | const EMAIL_REGEX = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)...
constant PARSED_SCHEDULE_REGEX (line 2) | const PARSED_SCHEDULE_REGEX = /([0-9]{1,2}:?[0-9]{0,2})|(?:am|pm|days|da...
constant CRON_MINUTE_REGEX (line 10) | const CRON_MINUTE_REGEX = /(^\*{1})$|(^(\*\/)?[1-5]?[0-9](?:[,-/][1-5]?[...
constant CRON_HOUR_REGEX (line 14) | const CRON_HOUR_REGEX = /^(^\*{1})$|(^(\*\/)?(2[0-3]|1[0-9]|[0-9])(?:[,-...
constant CRON_DAY_MONTH_REGEX (line 18) | const CRON_DAY_MONTH_REGEX = /^(\*{1})$|(^(\*\/)?(3[01]|[12][0-9]|[1-9])...
constant CRON_MONTH_REGEX (line 22) | const CRON_MONTH_REGEX = /^(\*{1})$|(^(\*\/)?(1[0-2]|[1-9])(?:[,-/](1[0-...
constant CRON_DAY_WEEK_REGEX (line 26) | const CRON_DAY_WEEK_REGEX = /^(\*{1})$|(^(\*\/)?([0-6])(?:[,-/#]([0-6]))...
FILE: src/utils/roles.js
constant ROLE_MAP (line 1) | const ROLE_MAP = {
constant ROLE_COLOR_MAP (line 9) | const ROLE_COLOR_MAP = {
FILE: src/utils/states.js
constant STATE_COLORS (line 1) | const STATE_COLORS = {
constant STATE_TYPES (line 26) | const STATE_TYPES = {
constant STATE_NAMES (line 49) | const STATE_NAMES = [
constant STATE_PAST_TENSE (line 72) | const STATE_PAST_TENSE = {
constant FINISHED_STATES (line 95) | const FINISHED_STATES = [
function calculateDuration (line 109) | function calculateDuration(startTime, endTime, state) {
FILE: src/utils/string.js
function toPluralString (line 1) | function toPluralString(word, count) {
FILE: src/utils/types.js
function isValidType (line 11) | function isValidType(type) {
FILE: src/utils/yaml.js
function formatYaml (line 3) | function formatYaml(value) {
function tryParseYaml (line 15) | function tryParseYaml(value) {
function parseYaml (line 23) | function parseYaml(value) {
function isValidYaml (line 27) | function isValidYaml(value) {
FILE: src/vue-apollo.js
constant AUTH_TOKEN (line 22) | const AUTH_TOKEN = 'authorization_token'
function isExpired (line 24) | function isExpired(expiry) {
function notExpired (line 28) | function notExpired(expiry) {
function apolloOnLogin (line 304) | async function apolloOnLogin(apolloClient) {
function apolloOnLogout (line 309) | async function apolloOnLogout(apolloClient) {
FILE: src/workers/schematic.js
function GenerateTree (line 16) | function GenerateTree(data) {
function Stratify (line 21) | function Stratify(data) {
function GenerateLayout (line 27) | function GenerateLayout(data) {
FILE: src/workers/timeline.js
function GenerateRows (line 1) | function GenerateRows(items) {
FILE: tests/__mocks__/@auth0/auth0-js.js
class WebAuth (line 19) | class WebAuth {
method constructor (line 20) | constructor() {
FILE: tests/__mocks__/@auth0/auth0-spa-js.js
class Auth0Client (line 9) | class Auth0Client {
method constructor (line 10) | constructor() {
function createAuth0Client (line 22) | function createAuth0Client() {
FILE: tests/__mocks__/@okta/okta-auth-js.js
constant MOCK_TOKEN_PAYLOAD (line 66) | const MOCK_TOKEN_PAYLOAD = {
class OktaAuth (line 88) | class OktaAuth {
method constructor (line 93) | constructor() {
FILE: tests/unit/auth/index.spec.js
class SharedWorker (line 33) | class SharedWorker {
method constructor (line 36) | constructor(url, name, options = {}) {
method port (line 42) | get port() {
FILE: tests/unit/store/api.spec.js
constant SERVER_KEY (line 6) | const SERVER_KEY = `${process.env.VUE_APP_RELEASE_TIMESTAMP}_server_url`
FILE: tests/unit/store/mockTokens.js
constant MOCK_AUTHORIZATION_TOKEN (line 1) | const MOCK_AUTHORIZATION_TOKEN =
constant MOCK_ID_TOKEN (line 4) | const MOCK_ID_TOKEN =
constant MOCK_ID_TOKEN_2 (line 7) | const MOCK_ID_TOKEN_2 =
constant MOCK_REFRESH_TOKEN (line 10) | const MOCK_REFRESH_TOKEN =
constant MOCK_PREFECT_AUTH_PAYLOAD (line 13) | const MOCK_PREFECT_AUTH_PAYLOAD = {
Condensed preview — 1132 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (4,810K chars).
[
{
"path": ".browserslistrc",
"chars": 34,
"preview": "> 1%\nlast 2 versions\nnot ie <= 10\n"
},
{
"path": ".dockerignore",
"chars": 23,
"preview": "**/node_modules\n**/dist"
},
{
"path": ".eslintignore",
"chars": 70,
"preview": "tests/__coverage__\nsrc/graphql\nnode_modules\nsrc/workers/auth.worker.js"
},
{
"path": ".eslintrc.js",
"chars": 846,
"preview": "module.exports = {\n root: true,\n env: {\n node: true\n },\n extends: [\n 'plugin:vue/essential',\n 'plugin:vue/r"
},
{
"path": ".github/CODEOWNERS",
"chars": 504,
"preview": "# Lines starting with '#' are comments.\n# Each line is a file pattern followed by one or more owners.\n\n# These owners wi"
},
{
"path": ".github/ISSUE_TEMPLATE/bug---.md",
"chars": 775,
"preview": "---\nname: \"Bug \\U0001F41B\"\nabout: Report an issue/bug with existing functionality.\ntitle: '1.0 BUG: '\nlabels: bug\nassign"
},
{
"path": ".github/ISSUE_TEMPLATE/general---.md",
"chars": 481,
"preview": "---\nname: \"General \\U0001F680\"\nabout: Create a ticket for a general feature.\ntitle: ''\nlabels: enhancement\nassignees: ''"
},
{
"path": ".github/PULL_REQUEST_TEMPLATE.md",
"chars": 645,
"preview": "## Description\n<! -- What is it meant to do? -->\n\n\n## Linked Issues\n<! -- Use a key word (e.g. closes or resolves) to cl"
},
{
"path": ".github/codeql-config.yml",
"chars": 37,
"preview": "paths-ignore:\n - tests/**/test_*.py\n"
},
{
"path": ".github/workflows/codeql-analysis.yml",
"chars": 2150,
"preview": "# For most projects, this workflow file will not need changing; you simply need\n# to commit it to your repository.\n#\n# Y"
},
{
"path": ".gitignore",
"chars": 505,
"preview": ".DS_Store\nnode_modules\n/dist\ntests/__coverage__\n.firebase\n\n# Generated from integration tests\ntests/e2e/videos\ntests/e2e"
},
{
"path": ".nvmrc",
"chars": 8,
"preview": "v14.17.3"
},
{
"path": ".prettierignore",
"chars": 0,
"preview": ""
},
{
"path": ".prettierrc.js",
"chars": 97,
"preview": "const eslintrc = require('./.eslintrc')\n\nmodule.exports = eslintrc.rules['prettier/prettier'][1]\n"
},
{
"path": ".salesforce_env_development",
"chars": 557,
"preview": "VUE_APP_SF_SFCID=00D7h0000009q6r\nVUE_APP_SF_TEAM=Chat_Service_Team\nVUE_APP_SF_URL1=https://prefect--partial.sandbox.my.s"
},
{
"path": ".salesforce_env_production",
"chars": 500,
"preview": "VUE_APP_SF_SFCID=00D2E000000o3Ut\nVUE_APP_SF_TEAM=Chat_Service_Team\nVUE_APP_SF_URL1=https://prefect.my.salesforce.com\nVUE"
},
{
"path": ".stylelintignore",
"chars": 95,
"preview": "src/styles/playground.scss\nsrc/styles/scss\nsrc/styles/graphiql.css\npublic/fonts.css\nsrc/workers"
},
{
"path": "Changelog.md",
"chars": 69032,
"preview": "# Changelog\n\n#### [2022-12-15](https://github.com/PrefectHQ/ui/compare/2022-10-03...2022-12-15)\n\n- BugFix: Remove skippe"
},
{
"path": "Dockerfile",
"chars": 1839,
"preview": "# syntax = docker/dockerfile:1.0-experimental\nFROM node:14.7.0 as ui\n\n# Set version args from CMD input\nARG PREFECT_VERS"
},
{
"path": "LICENSE",
"chars": 9923,
"preview": " Prefect Community License\n Version 1.0\n\nA copy of t"
},
{
"path": "README.md",
"chars": 4344,
"preview": "<p align=\"center\" >\n <img src=\"https://images.ctfassets.net/gm98wzqotmnx/3Ufcb7yYqcXBDlAhJ30gce/c237bb3254190795b30bf7"
},
{
"path": "babel.config.js",
"chars": 196,
"preview": "module.exports = {\n presets: [['@vue/app', { useBuiltIns: 'entry' }]],\n plugins: [\n '@babel/plugin-proposal-nullish"
},
{
"path": "changelog-template.hbs",
"chars": 654,
"preview": "# Changelog\n\n{{#each releases}}\n {{#if href}}\n ###{{#unless major}}#{{/unless}} [{{title}}]({{href}})\n {{else}}\n "
},
{
"path": "export.sh",
"chars": 133,
"preview": "#!/bin/sh\n\ntouch .env\necho \"\" >> .env\n\ncat \".salesforce_env_${VUE_APP_ENVIRONMENT}\" | while read line; do\n echo $line"
},
{
"path": "file-downloader.js",
"chars": 1422,
"preview": "const { https } = require('follow-redirects')\nconst fs = require('fs')\n\nconst downloads = [\n {\n filePath: './src/sty"
},
{
"path": "intercept.sh",
"chars": 234,
"preview": "#!/usr/bin/env bash\n\nfunction _intercept {\n kill -TERM $child\n exit 0\n}\n\ntrap _intercept SIGTERM\ntrap _intercept S"
},
{
"path": "jest.config.js",
"chars": 1217,
"preview": "// Temporary workaround re: https://github.com/vuejs/vue-cli/issues/1879\nprocess.env.VUE_CLI_BABEL_TARGET_NODE = true\npr"
},
{
"path": "netlify.toml",
"chars": 8217,
"preview": "[[redirects]]\nfrom = \"/*\"\nto = \"/index.html\"\nstatus = 200\n\n\n[[headers]]\n# Define which paths this specific [[headers]] b"
},
{
"path": "nginx.conf",
"chars": 168,
"preview": "server {\n # We'll want to make this dynamic at some point \n listen 8080;\n\n root /var/www;\n index index.html;\n \n lo"
},
{
"path": "package.json",
"chars": 3913,
"preview": "{\n \"name\": \"prefect-ui\",\n \"version\": \"0.12.4\",\n \"private\": true,\n \"scripts\": {\n \"serve\": \"node file-downloader.js"
},
{
"path": "postcss.config.js",
"chars": 111,
"preview": "module.exports = {\n parser: 'postcss-scss',\n syntax: 'postcss-scss',\n plugins: {\n autoprefixer: {}\n }\n}\n"
},
{
"path": "public/_redirects",
"chars": 24,
"preview": "/* /index.html 200\n"
},
{
"path": "public/browserconfig.xml",
"chars": 246,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<browserconfig>\n <msapplication>\n <tile>\n <square150x150logo"
},
{
"path": "public/fonts/font-awesome/LICENSE.txt",
"chars": 735,
"preview": "Font Awesome Pro License\n------------------------\n\nFont Awesome Pro is commercial software that requires a paid license."
},
{
"path": "public/fonts/font-awesome/README.md",
"chars": 171,
"preview": "# Font Awesome 5.15.4\n\nThanks for downloading Font Awesome! We're so excited you're here.\n\nOur documentation is availabl"
},
{
"path": "public/fonts/font-awesome/css/all.css",
"chars": 14685,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/brands.css",
"chars": 689,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/duotone.css",
"chars": 4432,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/fontawesome.css",
"chars": 8765,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/regular.css",
"chars": 689,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/solid.css",
"chars": 682,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/css/svg-with-js.css",
"chars": 8034,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/current-ui.yaml",
"chars": 3357,
"preview": "projectName: current-ui\nversion: 5.15.4\nicons:\n - github:\n - brands\n - slack:\n - brands\n - twitter:\n -"
},
{
"path": "public/fonts/font-awesome/js/all.js",
"chars": 199384,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js/brands.js",
"chars": 29237,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js/duotone.js",
"chars": 56654,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js/fontawesome.js",
"chars": 81454,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js/regular.js",
"chars": 15087,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js/solid.js",
"chars": 17524,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/LICENSE.txt",
"chars": 1548,
"preview": "Font Awesome Free License\n-------------------------\n\nFont Awesome Free is free, open source, and GPL friendly. You can u"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/README.md",
"chars": 983,
"preview": "# @fortawesome/fontawesome-common-types - SVG with JavaScript\n\n> \"I came here to chew bubblegum and install Font Awesome"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/attribution.js",
"chars": 187,
"preview": "console.log(`Font Awesome Free 0.2.36 by @fontawesome - https://fontawesome.com\nLicense - https://fontawesome.com/licens"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/index.d.ts",
"chars": 2509,
"preview": "export type IconPrefix = \"fas\" | \"fab\" | \"far\" | \"fal\" | \"fad\";\nexport type IconPathData = string | string[]\n\nexport int"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-common-types/package.json",
"chars": 1216,
"preview": "{\n \"description\": \"The iconic font, CSS, and SVG framework\",\n \"keywords\": [\n \"font\",\n \"awesome\",\n \"fontawesom"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/LICENSE.txt",
"chars": 735,
"preview": "Font Awesome Pro License\n------------------------\n\nFont Awesome Pro is commercial software that requires a paid license."
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/attribution.js",
"chars": 144,
"preview": "console.log(`Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\nLicense - https://fontawesome.com/license"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/all.css",
"chars": 14685,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/brands.css",
"chars": 689,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/duotone.css",
"chars": 4432,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/fontawesome.css",
"chars": 8765,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/regular.css",
"chars": 689,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/solid.css",
"chars": 682,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/css/svg-with-js.css",
"chars": 8034,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/all.js",
"chars": 199384,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/brands.js",
"chars": 29237,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/duotone.js",
"chars": 56654,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/fontawesome.js",
"chars": 81454,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/regular.js",
"chars": 15087,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/js/solid.js",
"chars": 17524,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_animated.less",
"chars": 297,
"preview": "// Animated Icons\n// --------------------------\n\n.@{fa-css-prefix}-spin {\n animation: fa-spin 2s infinite linear;\n}\n\n.@"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_bordered-pulled.less",
"chars": 422,
"preview": "// Bordered & Pulled\n// -------------------------\n\n.@{fa-css-prefix}-border {\n border-radius: .1em;\n border: solid .08"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_core.less",
"chars": 297,
"preview": "// Base Class Definition\n// -------------------------\n\n.@{fa-css-prefix}, .fas, .far, .fal, .fad, .fab {\n -moz-osx-font"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_fixed-width.less",
"chars": 119,
"preview": "// Fixed Width Icons\n// -------------------------\n.@{fa-css-prefix}-fw {\n text-align: center;\n width: (20em / 16);\n}\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_icons.less",
"chars": 6765,
"preview": "/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen\n readers do not read off random characters th"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_larger.less",
"chars": 454,
"preview": "// Icon Sizes\n// -------------------------\n\n.larger(@factor) when (@factor > 0) {\n .larger((@factor - 1));\n\n .@{fa-css"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_list.less",
"chars": 322,
"preview": "// List Icons\n// -------------------------\n\n.@{fa-css-prefix}-ul {\n list-style-type: none;\n margin-left: (@fa-li-width"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_mixins.less",
"chars": 1237,
"preview": "// Mixins\n// --------------------------\n\n.fa-icon() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: an"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_rotated-flipped.less",
"chars": 771,
"preview": "// Rotated & Flipped Icons\n// -------------------------\n\n.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }\n.@"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_screen-reader.less",
"chars": 118,
"preview": "// Screen Readers\n// -------------------------\n\n.sr-only { .sr-only(); }\n.sr-only-focusable { .sr-only-focusable(); }\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_stacked.less",
"chars": 478,
"preview": "// Stacked Icons\n// -------------------------\n\n.@{fa-css-prefix}-stack {\n display: inline-block;\n height: 2em;\n line-"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/_variables.less",
"chars": 3128,
"preview": "// Variables\n// --------------------------\n\n@fa-font-path: \"../webfonts\";\n@fa-font-size-base: 16px;\n@fa-font-"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/brands.less",
"chars": 625,
"preview": "@import \"_variables.less\";\n\n@font-face {\n font-family: 'Font Awesome 5 Brands';\n font-style: normal;\n font-weight: 40"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/duotone.less",
"chars": 5361,
"preview": "@import \"_variables.less\";\n\n@font-face {\n font-family: 'Font Awesome 5 Duotone';\n font-style: normal;\n font-weight: 9"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/fontawesome.less",
"chars": 319,
"preview": "@import \"_variables.less\";\n@import \"_mixins.less\";\n@import \"_core.less\";\n@import \"_larger.less\";\n@import \"_fixed-width.l"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/regular.less",
"chars": 625,
"preview": "@import \"_variables.less\";\n\n@font-face {\n font-family: 'Font Awesome 5 Pro';\n font-style: normal;\n font-weight: 400;\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/less/solid.less",
"chars": 618,
"preview": "@import \"_variables.less\";\n\n@font-face {\n font-family: 'Font Awesome 5 Pro';\n font-style: normal;\n font-weight: 900;\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/metadata/categories.yml",
"chars": 6299,
"preview": "accessibility:\n icons:\n - question-circle\n label: Accessibility\nalert:\n icons:\n - alarm-exclamation\n - bell\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/metadata/icons.yml",
"chars": 23704,
"preview": "abacus:\n changes:\n - 5.3.0\n label: Abacus\n search:\n terms:\n - addition\n - ancient\n - arithmetic\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/metadata/sponsors.yml",
"chars": 777,
"preview": "amazon-web-services:\n icons:\n - aws\n label: Amazon Web Services\n url: 'https://aws.amazon.com'\ndiscourse:\n icons:"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/package.json",
"chars": 1252,
"preview": "{\n \"description\": \"The iconic font, CSS, and SVG framework\",\n \"keywords\": [\n \"font\",\n \"awesome\",\n \"fontawesom"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_animated.scss",
"chars": 300,
"preview": "// Animated Icons\n// --------------------------\n\n.#{$fa-css-prefix}-spin {\n animation: fa-spin 2s infinite linear;\n}\n\n."
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_bordered-pulled.scss",
"chars": 428,
"preview": "// Bordered & Pulled\n// -------------------------\n\n.#{$fa-css-prefix}-border {\n border: solid .08em $fa-border-color;\n "
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_core.scss",
"chars": 332,
"preview": "// Base Class Definition\n// -------------------------\n\n.#{$fa-css-prefix},\n.fas,\n.far,\n.fal,\n.fad,\n.fab {\n -moz-osx-fon"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_fixed-width.scss",
"chars": 121,
"preview": "// Fixed Width Icons\n// -------------------------\n.#{$fa-css-prefix}-fw {\n text-align: center;\n width: $fa-fw-width;\n}"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_icons.scss",
"chars": 8062,
"preview": "/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen\nreaders do not read off random characters that "
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_larger.scss",
"chars": 393,
"preview": "// Icon Sizes\n// -------------------------\n\n// makes the font 33% larger relative to the icon container\n.#{$fa-css-prefi"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_list.scss",
"chars": 322,
"preview": "// List Icons\n// -------------------------\n\n.#{$fa-css-prefix}-ul {\n list-style-type: none;\n margin-left: $fa-li-width"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_mixins.scss",
"chars": 1266,
"preview": "// Mixins\n// --------------------------\n\n@mixin fa-icon {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothi"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_rotated-flipped.scss",
"chars": 833,
"preview": "// Rotated & Flipped Icons\n// -------------------------\n\n.#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, "
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_screen-reader.scss",
"chars": 130,
"preview": "// Screen Readers\n// -------------------------\n\n.sr-only { @include sr-only; }\n.sr-only-focusable { @include sr-only-foc"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_stacked.scss",
"chars": 505,
"preview": "// Stacked Icons\n// -------------------------\n\n.#{$fa-css-prefix}-stack {\n display: inline-block;\n height: 2em;\n line"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/_variables.scss",
"chars": 3155,
"preview": "// Variables\n// --------------------------\n\n$fa-font-path: \"../webfonts\" !default;\n$fa-font-size-base: 16px !"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/brands.scss",
"chars": 617,
"preview": "@import 'variables';\n\n@font-face {\n font-family: 'Font Awesome 5 Brands';\n font-style: normal;\n font-weight: 400;\n f"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/duotone.scss",
"chars": 5993,
"preview": "@import 'variables';\n\n@font-face {\n font-family: 'Font Awesome 5 Duotone';\n font-style: normal;\n font-weight: 900;\n "
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/fontawesome.scss",
"chars": 247,
"preview": "@import 'variables';\n@import 'mixins';\n@import 'core';\n@import 'larger';\n@import 'fixed-width';\n@import 'list';\n@import "
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/regular.scss",
"chars": 617,
"preview": "@import 'variables';\n\n@font-face {\n font-family: 'Font Awesome 5 Pro';\n font-style: normal;\n font-weight: 400;\n font"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-pro/scss/solid.scss",
"chars": 610,
"preview": "@import 'variables';\n\n@font-face {\n font-family: 'Font Awesome 5 Pro';\n font-style: normal;\n font-weight: 900;\n font"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/LICENSE.txt",
"chars": 1548,
"preview": "Font Awesome Free License\n-------------------------\n\nFont Awesome Free is free, open source, and GPL friendly. You can u"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/README.md",
"chars": 917,
"preview": "# @fortawesome/fontawesome-svg-core - SVG with JavaScript version\n\n> \"I came here to chew bubblegum and install Font Awe"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/attribution.js",
"chars": 187,
"preview": "console.log(`Font Awesome Free 1.2.36 by @fontawesome - https://fontawesome.com\nLicense - https://fontawesome.com/licens"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.d.ts",
"chars": 3349,
"preview": "import {IconDefinition, IconLookup, IconName, IconPrefix, IconPathData, IconPack } from '@fortawesome/fontawesome-common"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.es.js",
"chars": 78710,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/index.js",
"chars": 83573,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/package.json",
"chars": 1376,
"preview": "{\n \"description\": \"The iconic font, CSS, and SVG framework\",\n \"keywords\": [\n \"font\",\n \"awesome\",\n \"fontawesom"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/fontawesome-svg-core/styles.css",
"chars": 7891,
"preview": "svg:not(:root).svg-inline--fa {\n overflow: visible; }\n\n.svg-inline--fa {\n display: inline-block;\n font-size: inherit;"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/LICENSE.txt",
"chars": 735,
"preview": "Font Awesome Pro License\n------------------------\n\nFont Awesome Pro is commercial software that requires a paid license."
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/attribution.js",
"chars": 147,
"preview": "console.log(`Font Awesome Pro undefined by @fontawesome - https://fontawesome.com\nLicense - https://fontawesome.com/lice"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faAws.d.ts",
"chars": 391,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faAws.js",
"chars": 2826,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'aws';\nv"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcAmazonPay.d.ts",
"chars": 399,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcAmazonPay.js",
"chars": 3962,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-amaz"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcAmex.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcAmex.js",
"chars": 3720,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-amex"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcApplePay.d.ts",
"chars": 398,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcApplePay.js",
"chars": 1817,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-appl"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcDinersClub.d.ts",
"chars": 400,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcDinersClub.js",
"chars": 1136,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-dine"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcDiscover.d.ts",
"chars": 398,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcDiscover.js",
"chars": 1768,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-disc"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcJcb.d.ts",
"chars": 393,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcJcb.js",
"chars": 1300,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-jcb'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcMastercard.d.ts",
"chars": 400,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcMastercard.js",
"chars": 3555,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-mast"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcPaypal.d.ts",
"chars": 396,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcPaypal.js",
"chars": 2289,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-payp"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcStripe.d.ts",
"chars": 396,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcStripe.js",
"chars": 1815,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-stri"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcVisa.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faCcVisa.js",
"chars": 1457,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'cc-visa"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faDiscourse.d.ts",
"chars": 397,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faDiscourse.js",
"chars": 871,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'discour"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faDocker.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faDocker.js",
"chars": 1185,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'docker'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faGithub.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faGithub.js",
"chars": 1906,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'github'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faInstagram.d.ts",
"chars": 397,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faInstagram.js",
"chars": 1530,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'instagr"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faMicrosoft.d.ts",
"chars": 397,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faMicrosoft.js",
"chars": 715,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'microso"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faRev.d.ts",
"chars": 391,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faRev.js",
"chars": 959,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'rev';\nv"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faSlack.d.ts",
"chars": 393,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faSlack.js",
"chars": 1589,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'slack';"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faTwitter.d.ts",
"chars": 395,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/faTwitter.js",
"chars": 1395,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fab';\nvar iconName = 'twitter"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/index.d.ts",
"chars": 1064,
"preview": "export const faAws: IconDefinition;\nexport const faCcAmazonPay: IconDefinition;\nexport const faCcAmex: IconDefinition;\ne"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/index.es.js",
"chars": 27069,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/index.js",
"chars": 28112,
"preview": "/*!\n * Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license (C"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-brands-svg-icons/package.json",
"chars": 1359,
"preview": "{\n \"description\": \"The iconic font, CSS, and SVG framework\",\n \"keywords\": [\n \"font\",\n \"awesome\",\n \"fontawesom"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/LICENSE.txt",
"chars": 735,
"preview": "Font Awesome Pro License\n------------------------\n\nFont Awesome Pro is commercial software that requires a paid license."
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/README.md",
"chars": 927,
"preview": "# @fortawesome/free-duotone-svg-icons - SVG with JavaScript version\n\n> \"I came here to chew bubblegum and install Font A"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/attribution.js",
"chars": 144,
"preview": "console.log(`Font Awesome Pro 5.15.4 by @fontawesome - https://fontawesome.com\nLicense - https://fontawesome.com/license"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAbacus.d.ts",
"chars": 396,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAbacus.js",
"chars": 1752,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'abacus'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAlignSlash.d.ts",
"chars": 400,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAlignSlash.js",
"chars": 1124,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'align-s"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAtomAlt.d.ts",
"chars": 397,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faAtomAlt.js",
"chars": 2750,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'atom-al"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBadgeCheck.d.ts",
"chars": 400,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBadgeCheck.js",
"chars": 1190,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'badge-c"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBell.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBell.js",
"chars": 912,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'bell';\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBooks.d.ts",
"chars": 395,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBooks.js",
"chars": 1415,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'books';"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBracketsCurly.d.ts",
"chars": 403,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faBracketsCurly.js",
"chars": 1350,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'bracket"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faChartNetwork.d.ts",
"chars": 402,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faChartNetwork.js",
"chars": 1115,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'chart-n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faChartScatter.d.ts",
"chars": 402,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faChartScatter.js",
"chars": 962,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'chart-s"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCheck.d.ts",
"chars": 395,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCheck.js",
"chars": 867,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'check';"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCircle.d.ts",
"chars": 396,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCircle.js",
"chars": 841,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'circle'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faClouds.d.ts",
"chars": 396,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faClouds.js",
"chars": 1125,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'clouds'"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCogs.d.ts",
"chars": 394,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCogs.js",
"chars": 3130,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'cogs';\n"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCommentDots.d.ts",
"chars": 401,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faCommentDots.js",
"chars": 1095,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'comment"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faConciergeBell.d.ts",
"chars": 403,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faConciergeBell.js",
"chars": 909,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'concier"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faDotCircle.d.ts",
"chars": 399,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faDotCircle.js",
"chars": 805,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'dot-cir"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faEnvelope.d.ts",
"chars": 398,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faEnvelope.js",
"chars": 1400,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'envelop"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faExchangeAlt.d.ts",
"chars": 401,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faExchangeAlt.js",
"chars": 901,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'exchang"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faFileAlt.d.ts",
"chars": 397,
"preview": "import { IconDefinition, IconPrefix, IconName } from \"@fortawesome/fontawesome-common-types\";\nexport const definition: I"
},
{
"path": "public/fonts/font-awesome/js-packages/@fortawesome/pro-duotone-svg-icons/faFileAlt.js",
"chars": 1377,
"preview": "'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fad';\nvar iconName = 'file-al"
}
]
// ... and 932 more files (download for full content)
About this extraction
This page contains the full source code of the PrefectHQ/ui GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1132 files (4.3 MB), approximately 1.2M tokens, and a symbol index with 1139 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.